From 48d1a0167e95ad7783462704691268f70e8d96fb Mon Sep 17 00:00:00 2001 From: berkeley Date: Mon, 24 Jun 2024 01:27:43 +0000 Subject: [PATCH] Upload files to ".config/mpv/scripts/shaders" --- .../shaders/Anime4K_Deblur_Original.glsl | 287 ++ .../shaders/Anime4K_Upscale_CNN_x2_VL.glsl | 969 ++++ .config/mpv/scripts/shaders/ArtCNN_C4F16.glsl | 1336 +++++ .config/mpv/scripts/shaders/ArtCNN_C4F32.glsl | 4356 +++++++++++++++++ .../mpv/scripts/shaders/adaptive-sharpen.glsl | 233 + 5 files changed, 7181 insertions(+) create mode 100644 .config/mpv/scripts/shaders/Anime4K_Deblur_Original.glsl create mode 100644 .config/mpv/scripts/shaders/Anime4K_Upscale_CNN_x2_VL.glsl create mode 100644 .config/mpv/scripts/shaders/ArtCNN_C4F16.glsl create mode 100644 .config/mpv/scripts/shaders/ArtCNN_C4F32.glsl create mode 100644 .config/mpv/scripts/shaders/adaptive-sharpen.glsl diff --git a/.config/mpv/scripts/shaders/Anime4K_Deblur_Original.glsl b/.config/mpv/scripts/shaders/Anime4K_Deblur_Original.glsl new file mode 100644 index 0000000..ff8f70f --- /dev/null +++ b/.config/mpv/scripts/shaders/Anime4K_Deblur_Original.glsl @@ -0,0 +1,287 @@ +// MIT License + +// Copyright (c) 2019-2021 bloc97 +// All rights reserved. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +//!DESC Anime4K-v3.2-Deblur-Original-Luma +//!HOOK MAIN +//!BIND HOOKED +//!SAVE LINELUMA +//!COMPONENTS 1 + +float get_luma(vec4 rgba) { + return dot(vec4(0.299, 0.587, 0.114, 0.0), rgba); +} + +vec4 hook() { + return vec4(get_luma(HOOKED_tex(HOOKED_pos)), 0.0, 0.0, 0.0); +} + +//!DESC Anime4K-v3.2-Deblur-Original-Kernel-X +//!HOOK MAIN +//!BIND HOOKED +//!BIND LINELUMA +//!SAVE LUMAD +//!WIDTH MAIN.w 2 * +//!HEIGHT MAIN.h 2 * +//!COMPONENTS 2 + +vec4 hook() { + vec2 d = HOOKED_pt; + + //[tl t tr] + //[ l c r] + //[bl b br] + float l = LINELUMA_tex(HOOKED_pos + vec2(-d.x, 0.0)).x; + float c = LINELUMA_tex(HOOKED_pos).x; + float r = LINELUMA_tex(HOOKED_pos + vec2(d.x, 0.0)).x; + + + //Horizontal Gradient + //[-1 0 1] + //[-2 0 2] + //[-1 0 1] + float xgrad = (-l + r); + + //Vertical Gradient + //[-1 -2 -1] + //[ 0 0 0] + //[ 1 2 1] + float ygrad = (l + c + c + r); + + //Computes the luminance's gradient + return vec4(xgrad, ygrad, 0.0, 0.0); +} + + +//!DESC Anime4K-v3.2-Deblur-Original-Kernel-Y +//!HOOK MAIN +//!BIND HOOKED +//!BIND LUMAD +//!SAVE LUMAD +//!WIDTH MAIN.w 2 * +//!HEIGHT MAIN.h 2 * +//!COMPONENTS 2 + + +/* --------------------- SETTINGS --------------------- */ + +//Strength of edge refinement, good values are between 0.2 and 4 +#define REFINE_STRENGTH 1.0 + + +/* --- MODIFY THESE SETTINGS BELOW AT YOUR OWN RISK --- */ + +//Bias of the refinement function, good values are between 0 and 1 +#define REFINE_BIAS 0.0 + +//Polynomial fit obtained by minimizing MSE error on image +#define P5 ( 11.68129591) +#define P4 (-42.46906057) +#define P3 ( 60.28286266) +#define P2 (-41.84451327) +#define P1 ( 14.05517353) +#define P0 (-1.081521930) + +/* ----------------- END OF SETTINGS ----------------- */ + +float power_function(float x) { + float x2 = x * x; + float x3 = x2 * x; + float x4 = x2 * x2; + float x5 = x2 * x3; + + return P5*x5 + P4*x4 + P3*x3 + P2*x2 + P1*x + P0; +} + +vec4 hook() { + vec2 d = HOOKED_pt; + + //[tl t tr] + //[ l cc r] + //[bl b br] + float tx = LUMAD_tex(HOOKED_pos + vec2(0.0, -d.y)).x; + float cx = LUMAD_tex(HOOKED_pos).x; + float bx = LUMAD_tex(HOOKED_pos + vec2(0.0, d.y)).x; + + + float ty = LUMAD_tex(HOOKED_pos + vec2(0.0, -d.y)).y; + //float cy = LUMAD_tex(HOOKED_pos).y; + float by = LUMAD_tex(HOOKED_pos + vec2(0.0, d.y)).y; + + + //Horizontal Gradient + //[-1 0 1] + //[-2 0 2] + //[-1 0 1] + float xgrad = (tx + cx + cx + bx); + + //Vertical Gradient + //[-1 -2 -1] + //[ 0 0 0] + //[ 1 2 1] + float ygrad = (-ty + by); + + //Computes the luminance's gradient + float sobel_norm = clamp(sqrt(xgrad * xgrad + ygrad * ygrad), 0.0, 1.0); + + float dval = clamp(power_function(clamp(sobel_norm, 0.0, 1.0)) * REFINE_STRENGTH + REFINE_BIAS, 0.0, 1.0); + + return vec4(sobel_norm, dval, 0.0, 0.0); +} + +//!DESC Anime4K-v3.2-Deblur-Original-Kernel-X +//!HOOK MAIN +//!BIND HOOKED +//!BIND LUMAD +//!SAVE LUMAMM +//!WIDTH MAIN.w 2 * +//!HEIGHT MAIN.h 2 * +//!COMPONENTS 2 + + +vec4 hook() { + vec2 d = HOOKED_pt; + + if (LUMAD_tex(HOOKED_pos).y < 0.1) { + return vec4(0.0); + } + + //[tl t tr] + //[ l c r] + //[bl b br] + float l = LUMAD_tex(HOOKED_pos + vec2(-d.x, 0.0)).x; + float c = LUMAD_tex(HOOKED_pos).x; + float r = LUMAD_tex(HOOKED_pos + vec2(d.x, 0.0)).x; + + //Horizontal Gradient + //[-1 0 1] + //[-2 0 2] + //[-1 0 1] + float xgrad = (-l + r); + + //Vertical Gradient + //[-1 -2 -1] + //[ 0 0 0] + //[ 1 2 1] + float ygrad = (l + c + c + r); + + + return vec4(xgrad, ygrad, 0.0, 0.0); +} + + +//!DESC Anime4K-v3.2-Deblur-Original-Kernel-Y +//!HOOK MAIN +//!BIND HOOKED +//!BIND LUMAD +//!BIND LUMAMM +//!SAVE LUMAMM +//!WIDTH MAIN.w 2 * +//!HEIGHT MAIN.h 2 * +//!COMPONENTS 2 + +vec4 hook() { + vec2 d = HOOKED_pt; + + if (LUMAD_tex(HOOKED_pos).y < 0.1) { + return vec4(0.0); + } + + //[tl t tr] + //[ l cc r] + //[bl b br] + float tx = LUMAMM_tex(HOOKED_pos + vec2(0.0, -d.y)).x; + float cx = LUMAMM_tex(HOOKED_pos).x; + float bx = LUMAMM_tex(HOOKED_pos + vec2(0.0, d.y)).x; + + float ty = LUMAMM_tex(HOOKED_pos + vec2(0.0, -d.y)).y; + //float cy = LUMAMM_tex(HOOKED_pos).y; + float by = LUMAMM_tex(HOOKED_pos + vec2(0.0, d.y)).y; + + //Horizontal Gradient + //[-1 0 1] + //[-2 0 2] + //[-1 0 1] + float xgrad = (tx + cx + cx + bx); + + //Vertical Gradient + //[-1 -2 -1] + //[ 0 0 0] + //[ 1 2 1] + float ygrad = (-ty + by); + + float norm = sqrt(xgrad * xgrad + ygrad * ygrad); + if (norm <= 0.001) { + xgrad = 0.0; + ygrad = 0.0; + norm = 1.0; + } + + return vec4(xgrad/norm, ygrad/norm, 0.0, 0.0); +} + + +//!DESC Anime4K-v3.2-Deblur-Original-Apply +//!HOOK MAIN +//!BIND HOOKED +//!BIND LUMAD +//!BIND LUMAMM +//!WIDTH MAIN.w 2 * +//!HEIGHT MAIN.h 2 * +//!SAVE RESAMPLED + + +vec4 hook() { + vec2 d = HOOKED_pt; + + float dval = LUMAD_tex(HOOKED_pos).y; + if (dval < 0.1) { + return HOOKED_tex(HOOKED_pos); + } + + vec4 dc = LUMAMM_tex(HOOKED_pos); + if (abs(dc.x + dc.y) <= 0.0001) { + return HOOKED_tex(HOOKED_pos); + } + + float xpos = -sign(dc.x); + float ypos = -sign(dc.y); + + vec4 xval = HOOKED_tex(HOOKED_pos + vec2(d.x * xpos, 0.0)); + vec4 yval = HOOKED_tex(HOOKED_pos + vec2(0.0, d.y * ypos)); + + float xyratio = abs(dc.x) / (abs(dc.x) + abs(dc.y)); + + vec4 avg = xyratio * xval + (1.0 - xyratio) * yval; + + return avg * dval + HOOKED_tex(HOOKED_pos) * (1.0 - dval); + +} + +//!DESC Anime4K-v3.2-Deblur-Original-Resample +//!HOOK MAIN +//!BIND HOOKED +//!BIND RESAMPLED + +vec4 hook() { + return RESAMPLED_tex(HOOKED_pos); +} \ No newline at end of file diff --git a/.config/mpv/scripts/shaders/Anime4K_Upscale_CNN_x2_VL.glsl b/.config/mpv/scripts/shaders/Anime4K_Upscale_CNN_x2_VL.glsl new file mode 100644 index 0000000..c562e6e --- /dev/null +++ b/.config/mpv/scripts/shaders/Anime4K_Upscale_CNN_x2_VL.glsl @@ -0,0 +1,969 @@ +// MIT License + +// Copyright (c) 2019-2021 bloc97 +// All rights reserved. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x3 +//!HOOK MAIN +//!BIND MAIN +//!SAVE conv2d_tf +//!WIDTH MAIN.w +//!HEIGHT MAIN.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (MAIN_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.3053028, -0.037464816, 0.113983095, 0.12537485, -0.18630321, 0.084269725, -0.01351514, -0.20190673, -0.12298384, -0.037622184, -0.070214555, -0.19367279, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, -1.0); + result += mat4(-0.41849324, 0.099702746, -0.04276645, -0.047299717, 0.20074473, 0.14217933, 0.15571699, 0.19553481, 0.21868695, -0.053848714, 0.016413521, 0.14117444, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, 0.0); + result += mat4(0.030540446, -0.052293833, 0.0715466, -0.31160545, 0.07808315, -0.16860045, 0.032828577, -0.2955024, -0.110374965, 0.04043687, -0.014024628, 0.058699366, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, 1.0); + result += mat4(-0.10727635, 0.054200135, 0.20853694, 0.21086875, 0.122690216, -0.091823794, 0.310609, -0.01738923, -0.0013488946, 0.10835534, -0.077265196, 0.086751856, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, -1.0); + result += mat4(-0.77150255, 0.40530515, -0.41257596, -0.14367618, 0.46888494, 0.2650122, -0.934199, 0.40476102, 0.32293493, 0.20251967, 0.19891106, -0.29698747, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, 0.0); + result += mat4(-0.12505147, -0.41904053, -0.065798186, 0.34075752, 0.026240354, -0.2977496, 0.032647505, -0.003566783, 0.10290523, -0.23417123, -0.06014203, 0.094735645, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, 1.0); + result += mat4(0.11207838, -0.04062474, 0.023897955, 0.08605987, -0.020888371, 0.045541205, -0.07231824, -0.25884083, -0.11796847, -0.002691391, 0.0050435597, 0.02756291, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, -1.0); + result += mat4(0.4615728, 0.041790638, 0.08971143, 0.20213957, -0.38537467, 0.19938901, 0.08594364, -0.08621994, -0.08163473, -0.133266, -0.09561729, -0.014209637, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, 0.0); + result += mat4(0.0787417, -0.0483673, 0.07621572, -0.060169693, -0.013465177, -0.17152289, 0.02515561, 0.17675288, -0.05173998, 0.10768042, -0.029858522, -0.013957215, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, 1.0); + result += vec4(0.0072128535, -0.05658625, 0.052939568, -0.1760861); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x3 +//!HOOK MAIN +//!BIND MAIN +//!SAVE conv2d_tf1 +//!WIDTH MAIN.w +//!HEIGHT MAIN.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (MAIN_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.112743355, 0.0422517, 0.21350034, -0.0967133, 0.16265953, 0.0022497, 0.015078242, 0.08204187, 0.035236806, -0.0468228, -0.09464228, -0.001864949, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, -1.0); + result += mat4(0.25631642, -0.41485596, -0.16662048, 0.13201024, 0.057921384, 0.2240005, -0.30038536, -0.08305622, 0.2228756, 0.32263795, 0.10608189, -0.18616734, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, 0.0); + result += mat4(0.08997524, 0.11516871, 0.19212262, -0.035154644, 0.11612274, -0.04056247, 0.14974374, 0.029173585, -0.07629641, -0.14353512, 0.041081246, 0.20230265, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, 1.0); + result += mat4(0.2262286, 0.055954933, -0.14499907, 0.17314723, 0.16590612, -0.06688698, -0.11118816, -0.012938116, -0.043101817, 0.026133137, 0.2958395, 0.06543993, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, -1.0); + result += mat4(-0.07311521, -0.3041244, -0.47978505, -0.6350967, -0.17432262, 0.34965977, 0.25399777, -0.16590433, -0.49957857, 0.0549526, -0.40869385, -0.08780993, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, 0.0); + result += mat4(-0.3014447, -0.00021343959, -0.14953177, 0.028001398, -0.14931908, -0.14910097, -0.13287953, -0.45026535, 0.17378895, 0.024704922, -0.027308129, -0.10292025, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, 1.0); + result += mat4(-0.06732655, -0.13119644, 0.066014715, 0.081011154, -0.15154321, 0.2407805, 0.07733481, 0.12312706, 0.1741804, 0.008495716, -0.14125362, -0.043644864, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, -1.0); + result += mat4(0.11465958, 0.42001364, 0.011069392, 0.3203028, -0.058801666, -0.37830314, -0.030540617, 0.2245139, -0.11310525, -0.14845212, 0.19957744, 0.25789997, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, 0.0); + result += mat4(-0.16037206, 0.21326372, 0.020099448, 0.018666709, 0.122083254, -0.16033986, -0.10725163, 0.2556128, 0.1650688, -0.10475823, 0.048623525, -0.103755645, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, 1.0); + result += vec4(0.007717166, -0.027800834, 0.0795002, 0.0053199283); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!SAVE conv2d_1_tf +//!WIDTH conv2d_tf.w +//!HEIGHT conv2d_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(-0.0056740534, -0.21186607, -0.18014967, 0.118979976, -0.0015611284, -0.07708486, 0.060131397, 0.11653345, 0.027150517, 0.10837246, 0.08583816, -0.14032431, 0.017552888, 0.0035846964, 0.03980114, 0.064649396) * go_0(-1.0, -1.0); + result += mat4(-0.03289318, -0.12004539, 0.26514888, -0.15079662, 0.04214227, -0.027273783, -0.027950313, 0.19614808, 0.18510003, -0.10346252, -0.029836183, 0.09174428, -0.0088710375, -0.18273513, 0.06601674, 0.009983851) * go_0(-1.0, 0.0); + result += mat4(0.08476211, 0.043996535, 0.056711517, 0.009976895, 0.07039107, -0.024862664, -0.059921104, 0.046850603, 0.04983447, 0.04863198, 0.21777405, -0.0576961, 0.045321796, -0.0060038245, 0.096396215, -0.10842004) * go_0(-1.0, 1.0); + result += mat4(-0.15746164, 0.041757874, 0.035169285, -0.1734288, -0.24219254, -0.13318908, 0.2272079, -0.02902605, 0.07750601, -0.1467191, -0.12296749, -0.07533314, -0.07073083, 0.17909113, 0.04789308, 0.17245363) * go_0(0.0, -1.0); + result += mat4(0.057547905, 0.1464685, -0.33115456, -0.26956198, -0.26298407, -0.059824817, 0.022509675, -0.09251868, 0.36277944, -0.2072429, 0.21095088, -0.45492023, 0.07428653, 0.1593302, -0.2945834, 0.12825087) * go_0(0.0, 0.0); + result += mat4(-0.1318458, 0.27804148, 0.037600737, 0.12047866, 0.0065036337, 0.0017241207, 0.060497303, -0.14786585, -0.15149063, 0.02731698, 0.048886403, -0.0025970868, -0.026979815, 0.07348884, 0.015636757, -0.107966796) * go_0(0.0, 1.0); + result += mat4(-0.079988025, -0.01626299, 0.06517438, 0.086406484, -0.1484504, 0.070595, 0.20620634, 0.09713373, -0.13620836, 0.012067949, -0.00068703433, -0.038030174, 0.22300471, -0.0012400965, -0.014827909, -0.08927486) * go_0(1.0, -1.0); + result += mat4(0.15634936, 0.052028038, 0.038081627, 0.12720168, 0.07342066, -0.04318368, -0.0065998454, 0.12109317, -0.45398173, 0.03666754, -0.17773737, 0.038516667, -0.13009632, -0.007457001, -0.013938809, 0.09776142) * go_0(1.0, 0.0); + result += mat4(0.029636936, 0.12864171, 0.11347291, -0.11812842, -0.0870342, 0.035678383, 0.050338242, 0.045754932, -0.07072752, 0.010447726, 0.039642975, -0.08795004, -0.1191525, 0.00967509, 0.13485421, -0.053204738) * go_0(1.0, 1.0); + result += mat4(-0.011072695, -0.09613245, -0.09094804, 0.028029291, -0.04031162, 0.15690295, 0.25094184, -0.21776834, 0.06524669, 0.06412185, -0.052852992, -0.08097702, -0.039127756, 0.036357917, 0.104585476, 0.25095442) * go_1(-1.0, -1.0); + result += mat4(-0.08328618, -0.006246033, 0.099708706, -0.014916097, 0.17727195, 0.4369228, 0.14760216, 0.06707674, 0.025167737, -0.022487842, -0.038962565, 0.15380669, 0.08125089, 0.09844594, 0.33538374, -0.003161368) * go_1(-1.0, 0.0); + result += mat4(-0.0128195705, -0.05475118, -0.037705053, -0.0012077648, -0.17425515, 0.091487505, -0.12909423, 0.0074876705, 0.13438368, 5.778033e-05, 0.04563314, -0.12185897, -0.053612474, -0.049824294, -0.12851205, 0.12856449) * go_1(-1.0, 1.0); + result += mat4(-0.025741795, 0.01867236, -0.00027440622, 0.10502768, 0.27042285, -0.14947751, 0.11143123, 0.2575913, -0.07414089, -0.33919522, -0.13194235, -0.20088726, 0.23121537, -0.08197353, 0.06693911, 0.015411386) * go_1(0.0, -1.0); + result += mat4(0.09143717, 0.22842278, 0.06501074, -0.20009698, -0.042117566, -0.23452093, -0.074082755, -0.10612558, 0.077631965, 0.08343657, -0.07657599, -0.43297377, 0.7092466, -0.16272525, 0.17222248, -0.056038965) * go_1(0.0, 0.0); + result += mat4(0.081200436, 0.046752565, 0.028254949, 0.18820632, 0.096592255, 0.05896745, 0.14845169, 0.034777895, 0.07195204, -0.1908046, -0.015341971, 0.02606145, -0.010377239, 0.0755547, -0.15285216, 0.047916733) * go_1(0.0, 1.0); + result += mat4(-0.06825636, -0.049540907, -0.024328846, 0.03506251, 0.2060094, 0.054119263, -0.06671269, 0.052428722, 0.055792283, -0.14336903, -0.03180757, 0.013760968, -0.037398104, -0.06880077, -0.023608573, 0.0360965) * go_1(1.0, -1.0); + result += mat4(-0.16937497, -0.30156836, 0.0021435453, 0.025772978, -0.17990975, 0.046133514, -0.32447076, -0.083382785, -0.081322014, -0.022132374, -0.05319431, 0.11794733, 0.08943906, 0.12927428, 0.105764806, -0.051034793) * go_1(1.0, 0.0); + result += mat4(-0.011012306, 0.047636557, 0.050260928, 0.051847618, 0.010985655, -0.13752967, 0.023869954, 0.07011459, -0.18244945, 0.07239806, -0.013638856, -0.026982805, 0.11395993, -0.031304818, -0.08714153, 0.077115685) * go_1(1.0, 1.0); + result += mat4(0.08707592, 0.2265186, 0.13363098, -0.039588258, -0.029561255, 0.019238092, 0.024606103, -0.0019022018, -0.062285982, -0.0629511, -0.03753033, 0.109805316, 0.016018672, -0.08284564, -0.04092752, -0.030386891) * go_2(-1.0, -1.0); + result += mat4(0.0016500859, 0.01616536, -0.099148355, 0.24161765, 0.028064307, -0.028680569, 0.054400917, -0.1978921, -0.08584302, -0.096797146, -0.06546965, -0.09342837, 0.030265866, 0.07057579, -0.02080932, 0.053178705) * go_2(-1.0, 0.0); + result += mat4(-0.030304352, 0.047440585, -0.04248429, 0.08568772, -0.051317703, 0.036739342, 0.00865767, -0.018183297, -0.07335176, 0.025001721, -0.068509035, 0.1814819, -0.09756565, -0.024179723, -0.05959287, 0.0352454) * go_2(-1.0, 1.0); + result += mat4(0.023015196, -0.022870664, -0.12028372, -0.111095205, 0.11065281, -0.19900022, -0.24012049, -0.017028643, -0.13484617, 0.050107025, 0.10741765, 0.037951697, 0.013090438, -0.0010045726, -0.029447839, -0.1859787) * go_2(0.0, -1.0); + result += mat4(0.17922719, -0.24138594, -0.44595388, -0.032014426, 0.06897096, 0.07125395, 0.1944457, -0.035794795, -0.24022278, -0.13230884, -0.1277025, 0.21229011, -0.12249393, 0.06141907, 0.2687936, -0.26896995) * go_2(0.0, 0.0); + result += mat4(0.0397242, -0.30710965, 0.28815824, -0.06642567, -0.07588877, -0.019552408, 0.0057806037, 0.11465521, 0.03560534, -0.10640553, 0.023589289, -0.16667193, 0.02066607, -0.01026633, -0.02655378, 0.082493655) * go_2(0.0, 1.0); + result += mat4(-0.007902949, -0.08501038, -0.029395591, -0.07072227, -0.01800967, -0.14564751, -0.08372804, -0.049974415, 0.1756957, -0.02042449, -0.04413007, -0.016873527, -0.2385717, -0.001741017, 0.08298281, -0.019873247) * go_2(1.0, -1.0); + result += mat4(-0.01803727, 0.0642893, 0.21513617, 0.066888265, -0.042107955, -0.123470366, 0.045296013, -0.11958806, 0.48208967, -0.027188249, 0.12136116, 0.05246265, 0.13522038, -0.016297493, 0.028486907, -0.059840377) * go_2(1.0, 0.0); + result += mat4(-0.1373251, -0.11281026, -0.06418318, 0.08444032, 0.062874556, -0.009133875, -0.049571835, -0.042995855, 0.12483249, -0.025967957, -0.11202483, 0.09862257, 0.099986054, 0.009230306, -0.09042664, 0.046612263) * go_2(1.0, 1.0); + result += mat4(0.03203309, 0.106030256, 0.045741174, -0.020529225, -0.028610658, -0.055219248, -0.21404657, 0.07746393, -0.059359375, 0.0033258004, -0.0054513607, 0.06856653, 0.18043655, -0.119936846, -0.05639265, -0.10240379) * go_3(-1.0, -1.0); + result += mat4(-0.0004331875, 0.10426754, -0.008130048, 0.012795991, -0.14372933, -0.40797862, 0.105197415, -0.0041354536, -0.079792455, 0.0914027, 0.012418237, -0.11449173, 0.020261409, -0.14681602, -0.13355242, 0.18290488) * go_3(-1.0, 0.0); + result += mat4(0.052306626, 0.010864275, -0.072627716, -0.009773121, 0.09484167, -0.09631301, 0.14896165, -0.21220942, -0.11994051, -0.002957136, -0.118194886, 0.08661347, 0.10005298, -0.029620873, 0.101668894, 0.0242806) * go_3(-1.0, 1.0); + result += mat4(-0.055188183, -0.06322889, 0.12994595, 0.03140751, -0.092755616, 0.04239107, 0.18460171, 0.08471877, 0.014203371, 0.13608724, 0.035351243, -0.07883493, -0.10067456, 0.14417742, 0.0054235114, 0.100745104) * go_3(0.0, -1.0); + result += mat4(-0.043811034, -0.16055201, -0.11927185, 0.20517266, 0.16734722, 0.27720267, 0.1205665, 0.045803893, -0.07874647, 0.06764307, -0.11157022, 0.080770165, -0.044105835, -0.03276538, -0.10945451, 0.100562036) * go_3(0.0, 0.0); + result += mat4(-0.044731796, -0.12854387, -0.061937924, -0.21604767, -0.036132332, -0.024353411, -0.16718283, 0.14903957, -0.11620588, 0.14563644, 0.23363836, 0.08400659, 0.15248756, -0.1424437, 0.112882614, -0.04096889) * go_3(0.0, 1.0); + result += mat4(-0.0486021, -0.05714939, 0.042517707, -0.06106919, -0.12970918, -0.071898215, -0.044727243, -0.026308542, 0.05687118, -0.0394057, -0.109454155, -0.0021216893, 0.018588595, 0.08061093, 0.0500373, -0.0034918839) * go_3(1.0, -1.0); + result += mat4(0.11269324, -0.17924047, -0.12965205, -0.07287767, -0.015830642, -0.044497102, 0.20014328, -0.14054494, 0.1232692, 0.2395109, 0.14093149, 0.03518561, -0.14088139, -0.09045081, -0.07283352, 0.053434785) * go_3(1.0, 0.0); + result += mat4(0.020512339, 0.026349569, -0.06666101, 0.05554806, -0.03044066, 0.26656216, 0.019155584, -0.12118906, 0.087923005, -0.1716557, 0.050843164, 0.037432503, -0.030232614, 0.030457936, 0.04232163, -0.066400655) * go_3(1.0, 1.0); + result += vec4(-0.0216415, 0.09015036, -0.030761974, -0.26541537); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!SAVE conv2d_1_tf1 +//!WIDTH conv2d_tf.w +//!HEIGHT conv2d_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.04688368, 0.13853125, 0.1714716, -0.03034447, -0.08090605, 0.1225867, 0.17535992, 0.012508419, -0.0010665918, -0.07481546, -0.15541986, 0.0671128, -0.029307734, -0.076674186, 0.03925896, -0.07140553) * go_0(-1.0, -1.0); + result += mat4(-0.13273083, 0.062933214, 0.04200143, -0.0080243945, -0.120439716, -0.090192355, -0.022639645, 0.00020024918, -0.11211478, -0.12949537, 0.025783822, 0.009155746, 0.01004339, -0.0661901, 0.10630156, 0.053137038) * go_0(-1.0, 0.0); + result += mat4(0.07113487, -0.16011865, -0.10838903, -0.0034704183, 0.110606894, -0.14915739, 0.036511585, -0.003103608, -0.0551775, -0.13140677, 0.05270299, 0.12139221, 0.02226174, 0.008415268, -0.06647426, 0.118130066) * go_0(-1.0, 1.0); + result += mat4(-0.045172617, -0.0020388453, -0.27287582, 0.002428232, -0.2833772, 0.13788106, 0.073339015, 0.10666715, 0.08455194, 0.16499293, 0.089058325, 0.008815447, 0.034657538, -0.109856166, -0.11499077, -0.02918854) * go_0(0.0, -1.0); + result += mat4(0.07910854, -0.26334837, -0.3246593, -0.08246522, 0.09211476, 0.40793833, -0.09658794, -0.14430091, -0.50632644, 0.087234974, 0.26298127, 0.3687086, 0.06492316, 0.23082961, 0.18233871, -0.09283792) * go_0(0.0, 0.0); + result += mat4(-0.022744032, 0.21690565, 0.2694824, -0.12230013, -0.07969618, 0.21595429, -0.034979805, 0.008938489, 0.21289209, -0.446482, -0.042927746, -0.13587558, -0.032581557, -0.07182814, -0.054092336, -0.009542036) * go_0(0.0, 1.0); + result += mat4(-0.0034912943, -0.080354184, -0.08577375, -0.1521193, 0.09809233, 0.034529503, -0.100664355, 0.008191219, -0.014303411, -0.02862216, -0.18669915, -0.12384598, 0.046499267, 0.093707144, 0.10661308, 0.15079576) * go_0(1.0, -1.0); + result += mat4(-0.031025652, -0.0384342, 0.14258307, 0.25531343, 0.0075049917, -0.03966595, 0.062381975, 0.19593526, -0.2868182, 0.03162008, -0.4391041, -0.524017, -0.034463473, -0.0066741486, -0.24586639, 0.10521736) * go_0(1.0, 0.0); + result += mat4(-0.07452321, -0.0227877, -0.025402244, 0.115727395, -0.039511252, -0.07785703, -0.013689458, 0.0066024344, -0.052957747, 0.011206241, -0.0021671024, 0.077190824, -0.11709912, 0.046635598, 0.123751156, -0.03712064) * go_0(1.0, 1.0); + result += mat4(0.055411004, -0.0020031065, 0.06685547, -0.018829947, -0.06378933, -0.18389674, -0.0023551763, 0.0670314, 0.13038594, 0.0601923, -0.03035789, -0.019537423, -0.014483204, -0.056800704, 0.08663347, -0.106859975) * go_1(-1.0, -1.0); + result += mat4(-0.06603686, 0.07360526, -0.0072026253, -0.06778907, -0.039178446, 0.012397263, -0.13482279, 0.05745685, -0.055182382, -0.10545766, 0.003857615, 0.041947857, -0.15239377, 0.041826613, 0.058879383, -0.0042669442) * go_1(-1.0, 0.0); + result += mat4(-0.0697229, -0.010702144, -0.032265816, 0.013317131, 0.105028264, 0.21032134, 0.06845646, -0.018358687, 0.064568676, 0.08437135, -0.000723181, 0.1324007, 0.05527932, -0.049871888, -0.10125047, -0.005040889) * go_1(-1.0, 1.0); + result += mat4(-0.006467578, -0.05120533, -0.011780779, -0.011742203, -0.34242442, -0.020819988, 0.17381702, -0.059836414, -0.028882682, 0.23210457, 0.16579404, -0.03708216, -0.23541835, -0.03290251, 0.029319672, 0.26189178) * go_1(0.0, -1.0); + result += mat4(-0.30955994, -0.06408282, -0.16872866, 0.10767772, -0.041430887, 0.051697977, 0.12523535, -0.060389146, 0.026289431, 0.06359533, 0.13526368, 0.2479901, -0.3263977, 0.10216362, -0.0030894123, 0.046437826) * go_1(0.0, 0.0); + result += mat4(0.10061438, -0.17047118, -0.21593021, -0.023389054, -0.17507865, -0.30822313, -0.22044766, 0.16078933, 0.07099252, -0.11573018, 0.24712858, -0.0659458, -0.037504572, -0.12297423, 0.03342632, -0.058119852) * go_1(0.0, 1.0); + result += mat4(-0.020957774, -0.0224927, 0.04069268, -0.07911167, 0.074009344, 0.065916434, 0.008222278, 0.11625076, -0.25299504, 0.03357169, -0.021988, 0.015821831, -0.0021187372, -0.030700417, -0.004374924, 0.027358979) * go_1(1.0, -1.0); + result += mat4(0.06549052, -0.048067164, 0.05489091, -0.28851983, 0.13378961, 0.026875904, -0.09877994, -0.19947459, -0.1274035, -0.022928834, -0.26344195, -0.025870804, 0.022505255, 0.0070861108, 0.121051334, -0.025964163) * go_1(1.0, 0.0); + result += mat4(0.059426542, -0.0327433, 0.2313695, -0.07046268, 0.20479666, 0.027021704, 0.2564928, -0.11689885, -0.07407976, -0.019611249, 0.093463086, -0.121553615, 0.035009407, -0.008135333, -0.075931996, 0.047803063) * go_1(1.0, 1.0); + result += mat4(-0.059434246, -0.1652242, -0.124611154, 0.04743711, 0.10530296, -0.13869187, -0.036534663, -0.035206333, 0.06067593, 0.06126907, 0.120151915, -0.06722673, 0.008103894, 0.037225723, -0.007520425, 0.065720856) * go_2(-1.0, -1.0); + result += mat4(-3.6759695e-05, -0.036789574, 0.013370567, -0.037871476, -0.013454664, 0.15086569, 0.10164699, 0.057703357, -0.12871023, 0.12827681, -0.055057358, -0.040753044, -0.0142621, 0.08563361, -0.04615499, -0.03130452) * go_2(-1.0, 0.0); + result += mat4(-0.117965914, 0.09056485, 0.07272314, 0.009695964, -0.11331058, 0.07467256, -0.08291521, 0.00937355, -0.04097737, 0.07752905, -0.017335521, -0.12539999, 0.039462104, -0.0007037007, 0.06034812, -0.09497377) * go_2(-1.0, 1.0); + result += mat4(0.20828065, 0.0400099, 0.047638226, -0.046423353, -0.026133502, 0.098207295, 0.056742374, 0.017029466, -0.058164768, -0.046973787, -0.17328712, -0.0012984811, 0.050085854, 0.11296557, 0.12639083, 0.058543045) * go_2(0.0, -1.0); + result += mat4(-0.098907426, 0.22031747, 0.101559944, 0.06616554, 0.026110496, 0.56487054, 0.23754556, -0.07540935, 0.31768414, -0.47653618, 0.015073956, -0.33731326, 0.087285936, -0.24593173, -0.26141426, 0.15003823) * go_2(0.0, 0.0); + result += mat4(0.046026446, -0.13767281, 0.064847544, 0.07717139, 0.08544123, -0.11092969, 0.072325274, 0.010849038, -0.3055905, 0.66436774, 0.1434729, 0.0494463, 0.07115603, 0.083811216, 0.020431712, 0.06537088) * go_2(0.0, 1.0); + result += mat4(-0.15532711, 0.030139687, 0.040853374, 0.11089222, -0.08150315, -0.015851755, -0.06787692, 0.096075505, -0.011956207, -0.0017758606, 0.1277494, 0.16156575, -0.038588695, -0.0626418, -0.041797023, -0.19467135) * go_2(1.0, -1.0); + result += mat4(0.12917455, 0.017410474, -0.20125067, -0.08040003, -0.13494664, 0.17789102, -0.19909395, 0.08441434, 0.078570575, -0.06330619, 0.23767303, 0.5442659, -0.009227878, -0.021818208, 0.14318731, -0.09042824) * go_2(1.0, 0.0); + result += mat4(0.097801, 0.09345441, 0.17846581, -0.14773296, 0.06536365, 0.07642184, -0.011880635, 0.02086135, 0.013336972, -0.053295113, -0.13410404, 0.027241753, 0.087728985, -0.044033397, -0.13098569, 0.009423933) * go_2(1.0, 1.0); + result += mat4(-0.02488427, 0.0134966355, -0.0075000813, 0.07272353, 0.015842725, 0.13765687, 0.028079558, -0.08384948, -0.06666623, -0.023220664, 0.025091043, -0.055167805, -0.18826278, 0.04423603, 0.13499942, 0.059128854) * go_3(-1.0, -1.0); + result += mat4(0.01935146, -0.030980906, -0.031569187, -0.0036869382, 0.036753897, 0.118464164, 0.15871695, -0.09842428, 0.023324292, 0.071796335, -0.07869346, -0.10751301, -0.2588698, 0.064011686, 0.17386378, -0.039197855) * go_3(-1.0, 0.0); + result += mat4(0.08590827, 0.005497696, -0.026512025, 0.015661815, 0.1102415, -0.08268483, -0.0032903247, 0.10049029, -0.008157236, -0.035823178, -0.017570151, -0.081716835, -0.3531045, 0.010005245, 0.017141227, -0.016376914) * go_3(-1.0, 1.0); + result += mat4(-0.16617337, -0.007689783, 0.00954665, 0.07117733, -0.001669262, -0.012331606, 0.051613946, 0.062780835, 0.06123557, -0.20243123, -0.19181818, 0.032895602, 0.19760677, 0.004464939, 0.12754539, -0.27360034) * go_3(0.0, -1.0); + result += mat4(0.15006685, -0.083587274, -0.03215495, -0.16992462, -0.011944293, 0.058361508, -0.088097006, 0.023880545, -0.04168166, -0.06960282, -0.092672385, -0.057278465, 0.23540072, -0.1721208, -0.018213503, -0.23494521) * go_3(0.0, 0.0); + result += mat4(-0.124885194, 0.1905868, 0.11108704, 0.03163991, 0.11383064, 0.101223364, 0.069428995, -0.14298953, -0.07609092, 0.13704266, -0.07749446, -0.0005389336, -0.04617235, 0.18011934, 0.08350316, 0.09416366) * go_3(0.0, 1.0); + result += mat4(0.073356606, 0.067966126, -0.21285574, 0.0782625, -0.0034364646, -0.032581426, -0.05538558, -0.1317288, 0.14552782, -0.1132393, 0.13063973, -0.00833602, 0.0026844777, 0.028135289, -0.02536825, -0.028372496) * go_3(1.0, -1.0); + result += mat4(-0.318728, 0.07862527, -0.12176221, 0.35010242, -0.029198067, 0.016302662, 0.17667587, 0.12605923, 0.1556697, -0.06061443, 0.05843511, 0.10891248, 0.01267106, -0.018492714, -0.15945031, -0.050723754) * go_3(1.0, 0.0); + result += mat4(-0.21555941, -0.016813517, -0.084676236, -0.07545412, -0.14518794, -0.014592766, -0.2446481, 0.0530632, 0.0847341, 0.12342537, -0.028644923, 0.083479315, -0.04179012, 0.0025225023, 0.16006976, -0.026940256) * go_3(1.0, 1.0); + result += vec4(-0.060742114, -0.037577342, 0.055704296, 0.03134311); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!SAVE conv2d_2_tf +//!WIDTH conv2d_1_tf.w +//!HEIGHT conv2d_1_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_1_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_1_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_1_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_1_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.13129333, -0.022117995, -0.009753253, 0.020439912, 0.044090994, -0.0916335, 0.0036765633, -0.11719207, -0.06413809, 0.04079378, -0.00085516454, -0.06306388, -0.12660664, -0.054126263, -0.005513979, 0.06364538) * go_0(-1.0, -1.0); + result += mat4(-0.028422508, 0.23270117, -0.28674677, -0.10820166, 0.024321957, -0.0811145, -0.07290707, -0.02125165, -0.064260505, 0.052076746, -0.009654081, 0.08363882, -0.02037171, 0.15006389, 0.121593125, -0.011237004) * go_0(-1.0, 0.0); + result += mat4(-0.14672333, 0.015381624, 0.1028172, -0.041823238, 0.0072677187, -0.042953942, 0.06426537, -0.0938381, -0.05990813, -0.04599802, -0.11264726, -0.027826328, -0.058160868, 0.10747306, -0.07327458, 0.07998872) * go_0(-1.0, 1.0); + result += mat4(-0.08702181, -0.03750975, -0.045659006, 0.04488332, 0.09102003, 0.066556975, -0.04353586, 0.08994567, -0.13561495, -0.10653702, 0.006989605, 0.028230097, 0.07177144, 0.2938447, -0.00943923, 0.022120917) * go_0(0.0, -1.0); + result += mat4(-0.1801194, -0.11119162, 0.1977298, -0.247902, -0.16654298, -0.07423158, 0.114130594, 0.0014401592, 0.006954727, -0.09810646, -0.051310766, 0.19487657, 0.2545855, -0.06328558, -0.04617056, 0.09444692) * go_0(0.0, 0.0); + result += mat4(0.011378825, 0.16044368, 0.017211074, 0.14472178, 0.032992378, -0.008925819, 0.035120245, -0.012409223, 0.074333005, 0.1178002, -0.128956, -0.13624239, -0.2791275, 0.21457297, -0.1476131, 0.04874687) * go_0(0.0, 1.0); + result += mat4(-0.03491764, -0.061763793, 0.05779039, 0.0054837577, -0.023937583, 0.08281698, 0.032306053, -0.014566218, 0.12738499, -0.0132100545, -0.051833414, 0.0057818824, 0.012158851, -0.20231532, -0.0043795826, 0.10285843) * go_0(1.0, -1.0); + result += mat4(-0.22269921, -0.15135509, -0.039143335, 0.033390045, 0.06770212, -0.14538582, -0.08011057, 0.03796648, -0.025913516, 0.13925864, 0.18309896, 0.012709204, -0.24912506, 0.3217706, 0.0394195, 0.017977878) * go_0(1.0, 0.0); + result += mat4(0.00080196525, 0.059145816, 0.05720508, 0.0056548906, 0.005168018, 0.09938438, 0.0200503, -0.05516137, 0.061309986, -0.019621318, -0.1541441, 0.019540716, 0.030571707, -0.09054893, 0.032851614, -0.27210873) * go_0(1.0, 1.0); + result += mat4(0.27061436, -0.114008114, -0.0020118617, -0.1656827, 0.09770587, 0.029897455, -0.03307522, -0.04661818, 0.033011347, 0.18498488, -0.05162084, 0.087471776, -0.24665618, -0.12538423, -0.08123797, -0.010210389) * go_1(-1.0, -1.0); + result += mat4(0.075188264, 0.0020608555, 0.18558815, 0.041179713, 0.11232638, 0.05507779, -0.19599183, 0.027942855, 0.06199144, 0.22141005, -0.06121163, 0.014993597, 0.24105869, -0.019737717, -0.112485714, 0.0157406) * go_1(-1.0, 0.0); + result += mat4(0.09425698, 0.0207658, 0.12074599, 0.009430481, 0.11889248, -0.025782838, 0.0034711843, 0.05113582, 0.012531833, -0.0018606635, -0.09137569, 0.018120576, 0.4051155, 0.02222076, -0.16001017, 0.10981527) * go_1(-1.0, 1.0); + result += mat4(-0.03582557, 0.014994796, -6.4688604e-05, 0.24618183, -0.11697727, 0.24388117, 0.038502026, -0.3511993, 0.101741396, -0.10748137, 0.035059888, -0.017535849, 0.09450039, 0.06541661, 0.12149035, 0.28798738) * go_1(0.0, -1.0); + result += mat4(-0.27143848, 0.017990451, -0.69144464, 0.037944376, -0.04551905, 0.09263134, 0.4259611, -0.14107811, -0.10641847, 0.23065196, 0.040813655, -0.07789163, 0.3087666, 0.08190437, 0.16409059, -0.06455426) * go_1(0.0, 0.0); + result += mat4(-0.08290655, -0.35286915, -0.18082355, -0.32229406, 0.1608227, 0.030915622, 0.09207708, 0.02655054, 0.039464593, 0.026095424, 0.052584656, 0.033881903, -0.01751319, -0.0011676399, 0.04002607, 0.1630013) * go_1(0.0, 1.0); + result += mat4(-0.012021132, 0.12163766, -0.07410629, -0.06879096, 0.017859738, -0.039261997, -0.028677614, -0.23610398, -0.15963873, -0.0006119958, 0.11275506, 0.0082659265, 0.05677582, 0.08676638, -0.08669759, -0.10475464) * go_1(1.0, -1.0); + result += mat4(0.12792721, 0.06888765, 0.31803077, 0.26002547, -0.067599155, -0.011822328, -0.2589909, -0.30024147, 0.11076704, 0.15200609, -0.018180368, -0.19146141, 0.22298847, 0.059484895, 0.034478076, 0.15610938) * go_1(1.0, 0.0); + result += mat4(0.0870121, -0.016420847, -0.011579898, 0.097182855, -0.120095566, -0.06843338, -0.043460473, -0.060684606, -0.027540063, -0.008499213, 0.033570655, -0.06866259, 0.01429712, -0.07424434, 0.0009466247, 0.09142678) * go_1(1.0, 1.0); + result += mat4(-0.03781424, 0.04587032, 0.03744051, 0.02712279, -0.051038064, 0.0669144, -0.02640278, 0.12384894, -0.0022533627, -0.010022036, 0.07536463, -0.030489929, 0.09418577, 0.155089, -0.011290433, -0.02102941) * go_2(-1.0, -1.0); + result += mat4(-0.0053278613, -0.07160643, 0.039028414, 0.04123311, -0.10693177, -0.1170874, 0.07230816, -0.033255517, -0.119176835, 0.0786526, -0.11880206, -0.11354601, -0.037539184, 0.14404313, 0.069760695, 0.024738638) * go_2(-1.0, 0.0); + result += mat4(0.03413808, -0.006487654, 0.10006853, 0.22228058, -0.13796462, -0.14042488, 0.04017443, -0.031790894, -0.06673143, 0.009888688, 0.08831443, -0.0045771743, -0.028375361, -0.04704813, 0.07128581, -0.07012518) * go_2(-1.0, 1.0); + result += mat4(-0.06954315, -0.23728988, -0.14192343, -0.08236467, -0.2552115, 0.04102959, -0.06355397, -0.08340241, 0.17617856, 0.20281969, -0.16249381, 0.10843737, -0.04392261, -0.08587206, 0.053069845, -0.15482199) * go_2(0.0, -1.0); + result += mat4(0.124981806, 0.12828638, -0.061472785, -0.20108232, -0.14905351, -0.40766275, -0.35427195, -0.13183996, 0.09307428, -0.07697028, 0.06702549, -0.22656697, 0.019868268, -0.19361132, 0.08784669, 0.20249842) * go_2(0.0, 0.0); + result += mat4(-0.004661343, -0.09333453, -0.24876262, -0.07906779, 0.110697776, -0.37069768, -0.042212646, -0.0046135853, -0.2254257, -0.023392014, 0.031476703, -0.045574382, -0.12675518, -0.076056994, -0.08228006, -0.040303517) * go_2(0.0, 1.0); + result += mat4(0.16182694, 0.0512523, 0.051189836, 0.048962783, -0.05156489, -0.17987493, -0.012037288, 0.06953726, -0.09458492, 0.1610021, -0.004063283, -0.032922342, 0.08995396, 0.1939926, -0.018710036, -0.08153231) * go_2(1.0, -1.0); + result += mat4(-0.064830944, 0.06121252, -0.18886387, -0.12976822, -0.031117212, 0.12219633, 0.19070715, 0.12495262, -0.11994464, -0.24687837, -0.08425294, -0.016920334, -0.13286817, -0.3260188, -0.11776061, 0.1651019) * go_2(1.0, 0.0); + result += mat4(-0.17652592, 0.002499805, -0.030541016, -0.01393431, 0.031418208, 0.08209422, 0.12430871, 0.4387016, -0.108871914, -0.09041422, 0.031226631, -0.1638517, 0.20756467, 0.014476537, -0.012701195, -0.03440563) * go_2(1.0, 1.0); + result += mat4(0.005320072, -0.0032291536, -0.017209187, 0.031944863, -0.2479921, -0.24433962, -0.13832912, 0.07835928, -0.17707248, 0.028202811, -0.19121435, 0.164587, 0.123152815, 0.0050288937, 0.084104605, -0.0380019) * go_3(-1.0, -1.0); + result += mat4(0.16008669, -0.018608516, -0.013778938, 0.033447385, -0.01242472, -0.070916265, 0.026909694, -0.07318777, 0.15158044, 0.12047607, -0.1709358, 0.2031767, 0.0025611701, -0.21457459, 0.2791286, 0.10159932) * go_3(-1.0, 0.0); + result += mat4(0.14320926, 0.020023825, -0.0484187, 0.011563084, -0.2640472, -0.013056275, 0.004234292, -0.095376395, 0.28363484, -0.0058227647, -0.0777649, 0.05238444, 0.41757923, -0.07081097, 0.012567031, -0.13029522) * go_3(-1.0, 1.0); + result += mat4(0.07266207, 0.042793367, -0.08212271, -0.23401663, -0.19457819, 0.4191269, -0.03095442, 0.15339781, -0.28451788, 0.09316364, 0.10231693, -0.22844811, 0.111623526, 0.120017685, 0.18777381, 0.014420896) * go_3(0.0, -1.0); + result += mat4(0.15037206, -0.29763284, 0.2601235, 0.0193363, 0.13686465, 0.009907918, -0.37781665, 0.04916627, 0.14114739, 0.5043813, 0.0447959, -0.029427614, 0.041768756, 0.27211213, 0.14163221, 0.086162075) * go_3(0.0, 0.0); + result += mat4(0.19159287, 0.21363218, 0.15053211, 0.08992885, 0.100828275, 0.09379921, 0.030783929, 0.11664482, -0.059145752, -0.19400764, -0.09351283, -0.016430443, -0.12910964, -0.067078374, 0.11760082, 0.121194765) * go_3(0.0, 1.0); + result += mat4(-0.055059325, 0.09299572, 0.06848913, 0.06334532, -0.1476285, 0.111801244, -0.033960916, 0.06474366, -0.04952303, 0.27885208, -0.052447475, 0.09226763, -0.15024844, -0.0033919013, 0.013498364, 0.09135676) * go_3(1.0, -1.0); + result += mat4(-0.017010042, -0.122343406, -0.19097193, -0.27957183, -0.18206005, 0.102321096, 0.22794476, 0.0439245, -0.23710132, -0.08070259, 0.17377135, 0.23811814, 0.17799385, 0.049567625, 0.1470908, 0.07329385) * go_3(1.0, 0.0); + result += mat4(0.0038071256, 0.19454515, -0.01222965, -0.07390379, -0.0532754, 0.03942833, 0.123840906, 0.023459576, -0.0658742, -0.023957543, -0.14682837, 0.1221027, -0.010986398, -0.066184506, 0.03026491, -0.0638446) * go_3(1.0, 1.0); + result += vec4(-0.06427697, -0.00039365015, 0.011889719, 0.060232002); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!SAVE conv2d_2_tf1 +//!WIDTH conv2d_1_tf.w +//!HEIGHT conv2d_1_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_1_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_1_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_1_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_1_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(-0.012110923, 0.07818654, 0.07964548, 0.11885079, -0.07694473, -0.01378252, 0.006632789, -0.12876098, 0.0069211307, 0.022278586, 0.069553085, 0.16569804, -0.11123615, 0.06125189, -0.11232848, 0.1559266) * go_0(-1.0, -1.0); + result += mat4(-0.3261174, -0.25586754, 0.21129315, 0.3135101, 0.1509055, 0.0044283345, 0.024674175, -0.08000473, 0.01213029, 0.09093019, 0.04942677, 0.09806723, -0.16454464, -0.14433062, -0.058094524, -0.060819894) * go_0(-1.0, 0.0); + result += mat4(0.023174008, 0.02858724, 0.07685972, 0.036857616, -0.10415571, 0.10241035, -0.01893166, 0.02065923, 0.058356714, 0.096426114, -0.03772327, -0.1529002, 0.13740575, -0.048291504, -0.06152548, -0.15199897) * go_0(-1.0, 1.0); + result += mat4(0.029300174, -0.13222043, 0.0139825605, -0.02274408, 0.062944874, 0.028447356, 0.05960515, 0.034447193, 0.03133432, -0.019283533, -0.024591971, -0.0043914663, 0.15245225, 0.006851478, -0.051783554, 0.17453748) * go_0(0.0, -1.0); + result += mat4(-0.09125915, 0.081739366, 0.01196335, 0.23130219, -0.22557035, -0.13537665, 0.0022028848, -0.043430023, 0.22759882, 0.07920754, -0.027986467, -0.14051494, -0.19557038, -0.03585936, -0.4258294, -0.03856216) * go_0(0.0, 0.0); + result += mat4(0.18511422, -0.09368415, 0.1551229, 0.04322566, -0.023400841, -0.02261204, 0.15129441, -0.007954805, -0.10739125, 0.019459398, 0.013128325, 0.018073296, 0.20886365, -0.20662378, -0.03814699, -0.09272838) * go_0(0.0, 1.0); + result += mat4(-0.027352437, -0.039882626, 0.12598103, -0.093930446, 0.030846786, -0.09325075, -0.009084744, -0.024584265, 0.07159868, 0.14162529, 0.19019091, 0.058855128, -0.09880401, -0.01843218, 0.14753596, -0.2449532) * go_0(1.0, -1.0); + result += mat4(0.06565521, 0.09150168, -0.08654865, 0.0829788, -0.07596146, -0.01815166, -0.08786775, -0.03477514, 0.20538878, -0.012766377, 0.020719538, 0.088188395, -0.034300096, 0.29972988, -0.20005241, 0.018425167) * go_0(1.0, 0.0); + result += mat4(0.11713916, 0.024167519, 0.05167596, -0.0027117804, -0.016994188, 0.048177514, -0.012556207, 0.010979094, 0.09098878, 0.028514355, 0.06063336, -0.06624107, 0.012754856, 0.013208708, -0.061374772, -0.0025992664) * go_0(1.0, 1.0); + result += mat4(-0.09053513, 0.03183455, 0.017340872, 0.12934409, -0.022161964, -0.0015361432, -0.049972344, -0.12763855, 0.12779881, -0.04697911, 0.018968226, -0.119873665, 0.05462772, -0.13919477, -0.10226718, -0.2540179) * go_1(-1.0, -1.0); + result += mat4(-0.29912186, -0.09291771, 0.050926663, 0.49361777, 0.21372582, 0.076717265, -0.058968987, -0.1572678, 0.3194591, -0.120582424, 0.03942037, 0.023128232, 0.24321598, 0.07046334, -0.21204855, -0.648296) * go_1(-1.0, 0.0); + result += mat4(0.05366883, -0.020366706, 0.020979457, -0.06893884, 0.04837168, 0.017253762, 0.008874203, -0.020785445, -0.20425391, 0.060179923, 0.046167206, 0.09863377, -0.14381303, 0.038928367, -0.06590863, -0.18408588) * go_1(-1.0, 1.0); + result += mat4(0.07099762, 0.2029403, -0.033945918, 0.15202214, 0.0901113, -0.27336198, -0.17693861, -0.16206753, -0.17642029, 0.09400492, -0.11165698, -0.07863893, -0.16306102, -0.056210615, 0.22173557, 0.013508989) * go_1(0.0, -1.0); + result += mat4(0.08541511, -0.27093616, -0.35273993, -0.48919773, 0.038383547, -0.16013749, 0.012996215, -0.03434873, 0.07024113, -0.28971404, 0.10623425, -0.0019642068, -0.062374946, 0.3291145, 0.22468035, -0.42971882) * go_1(0.0, 0.0); + result += mat4(0.020427933, 0.15062793, 0.08308975, -0.025095072, 0.030093266, -0.09649862, -0.03382388, -0.0016017791, 0.105402954, 0.020693144, -0.051065, 0.07704679, 0.02864139, -0.00135146, 0.03762216, 0.029277142) * go_1(0.0, 1.0); + result += mat4(0.01700994, 0.12214317, 0.06749582, 0.07354159, -0.093085855, -0.065021954, 0.010773045, -0.00095128635, -0.045384295, -0.072611265, -0.043900184, 0.049471326, 0.029131187, 0.03180158, -0.13313527, 0.05280797) * go_1(1.0, -1.0); + result += mat4(0.14751251, -0.15087761, 0.09932281, -0.099232934, -0.062390897, 0.112391844, -0.09159478, 0.15856399, 0.034708973, 0.01819943, -0.02730164, -0.13562973, -0.05687333, -0.0114601655, 0.07025971, 0.02496533) * go_1(1.0, 0.0); + result += mat4(-0.0117268525, -0.026162883, 0.07481553, 0.13420302, 0.029870516, 0.07405776, -0.06379041, 0.09631234, -0.07754842, 0.035888605, 0.0034764851, -0.040771756, -0.092022054, -0.034230903, -0.02281844, -0.0028173258) * go_1(1.0, 1.0); + result += mat4(-0.059846643, 0.016772347, -0.02287152, 0.07036337, -0.024946844, 0.09826078, -0.068491876, 0.20852126, 0.073890835, -0.058288682, 0.013093785, -0.05776076, 0.0516503, 0.052794468, 0.10837015, 0.038539834) * go_2(-1.0, -1.0); + result += mat4(-0.16391893, -0.008062687, -0.35022175, 0.2510062, -0.15820411, 0.048403125, 0.024878092, 0.037888516, -0.035924178, -0.068953894, -0.025386479, 0.24405715, -0.018495679, -0.051277515, 0.14754932, -0.031538483) * go_2(-1.0, 0.0); + result += mat4(-0.038429607, -0.047140498, -0.018157095, -0.029318782, -0.04094171, -0.11870087, 0.11214255, 0.07142628, 0.021007229, -0.005681072, 0.1662777, 0.10829575, 0.112268396, 0.03567479, -0.06738845, 0.0032037434) * go_2(-1.0, 1.0); + result += mat4(-0.032217573, 0.2102397, -0.20617546, -0.07920811, 0.12918773, 0.054486286, -0.13656865, 0.05806265, 0.01963165, 0.049910642, 0.15538268, 0.10724465, -0.09697837, -0.03070673, -0.0071386313, -0.11899626) * go_2(0.0, -1.0); + result += mat4(0.130827, 0.0051715383, -0.07212691, 0.45726067, 0.2773031, 0.2973666, 0.3951691, 0.01333662, -0.14561643, 0.04508669, 0.121690124, 0.13326228, -0.22579186, 0.058161184, 0.09281702, -0.00079749606) * go_2(0.0, 0.0); + result += mat4(-0.00771113, 0.09912341, -0.41895548, -0.06705759, 0.029148718, 0.052991726, 0.18665347, -0.031787418, 0.23053595, 0.09444956, 0.10691037, -0.06325714, -0.05335701, 0.1917427, -0.0065284846, 0.032622546) * go_2(0.0, 1.0); + result += mat4(-0.056801565, -0.019131258, -0.0939022, -0.08130343, -0.11051993, 0.0035269214, -0.047361933, -0.0543875, 0.10854369, 0.06445185, 0.016828364, -0.022595318, 0.1450623, 0.033027507, -0.020425137, 0.16169788) * go_2(1.0, -1.0); + result += mat4(-0.08747717, 0.07770065, 0.018155783, 0.07160794, 0.09860347, -0.04329888, -0.0043579484, -0.2014418, -0.060260013, 0.0036374568, -0.17566042, -0.2268221, 0.001273691, -0.2609373, -0.19417606, -0.04102927) * go_2(1.0, 0.0); + result += mat4(-0.086845055, -0.114253804, -0.13433142, -0.025941795, -0.0155711295, -0.13578776, 0.12059696, -0.08760523, -0.0057348222, 0.12164273, 0.07270617, -0.06352636, 0.08894258, 0.04140841, 0.1230304, -0.030357126) * go_2(1.0, 1.0); + result += mat4(0.03320213, 0.015911903, -0.06288296, -0.121976145, 0.2713457, 0.13913193, -0.092420585, 0.105714336, 0.10294281, -0.04591945, -0.11767934, 0.032249406, -0.06506192, -0.04639334, 0.08137017, -0.031746846) * go_3(-1.0, -1.0); + result += mat4(0.13717805, 0.0071242675, -0.077256985, -0.14974317, -0.08467893, -0.20126395, -0.06240603, 0.09554399, -0.075844854, 0.28380412, 0.046030026, 0.053188596, 0.50943077, 0.1179795, 0.32203588, -0.06712207) * go_3(-1.0, 0.0); + result += mat4(-0.18528835, 0.0016975187, -0.0041140947, 0.11234392, -0.34049067, -0.056880493, -0.04325441, 0.09905571, 0.10978758, 0.009608353, -0.10801905, -0.04071131, -0.09096832, -0.12350487, 0.011801418, 0.22521795) * go_3(-1.0, 1.0); + result += mat4(0.040283076, -0.034117915, -0.026142653, -0.06058959, 0.12511659, 0.4131219, 0.59190845, 0.39758852, 0.16032091, -0.5975032, -0.14516282, 0.115154505, 0.03874097, 0.18462797, 0.22934213, 0.05285643) * go_3(0.0, -1.0); + result += mat4(-0.17804009, 0.33769128, -0.14572927, -0.029545018, 0.3897, -0.055615567, 0.15232995, 0.48788264, -0.21422523, 0.03397293, 0.0337794, -0.19830915, -0.022457365, -0.35096076, 0.42616987, -0.19268763) * go_3(0.0, 0.0); + result += mat4(-0.13191561, -0.18337126, 0.017879983, -0.070472844, -0.09409196, -0.025770849, -0.060219247, 0.10869267, -0.17341033, -0.09199785, -0.0667796, -0.093538545, -0.21300837, 0.030474098, -0.04540468, 0.041321553) * go_3(0.0, 1.0); + result += mat4(-0.0998177, -0.08669185, -0.0090886615, 0.0021083376, 0.08900095, 0.5062186, 0.45537788, 0.029077586, -0.1001008, -0.0077697043, -0.0096318, 0.11706454, 0.07401959, -0.00650215, 0.06092762, 0.037442297) * go_3(1.0, -1.0); + result += mat4(-0.18500404, 0.0024998419, -0.11761331, -0.026825588, 0.27255726, 0.093010515, 0.3281413, -0.051473666, -0.050259475, -0.17258662, -0.23394547, 0.104795866, 0.035074063, -0.061560635, 0.05975411, -0.094255395) * go_3(1.0, 0.0); + result += mat4(-0.023440497, -0.021479638, 0.0036277648, 0.004972212, 0.02416659, -0.09856867, -0.03971455, -0.27094853, 0.026615402, -0.0047890246, -0.13755885, 0.16591635, -0.0016293586, 0.133207, 0.047790572, 0.029041538) * go_3(1.0, 1.0); + result += vec4(-0.0063728676, -0.029053684, -0.052831043, 0.006475641); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!SAVE conv2d_3_tf +//!WIDTH conv2d_2_tf.w +//!HEIGHT conv2d_2_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_2_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_2_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_2_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_2_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(-0.0431447, 0.047972627, 0.09522898, 0.19048582, 0.0015511789, 0.1182684, -0.065335006, 0.061233886, -0.02451869, 0.065670215, -0.015341636, 0.06836347, 0.10215459, 0.17516296, 0.0857072, 0.072732896) * go_0(-1.0, -1.0); + result += mat4(0.10117189, 0.049022958, -0.016017418, -0.12119866, 0.089112304, 0.016286526, -0.025251161, 0.03239003, -0.0783818, -0.086096615, -0.13673106, -0.15934734, -0.51308054, -0.061430074, -0.16208844, 0.2227776) * go_0(-1.0, 0.0); + result += mat4(-0.011567444, 0.025550444, -0.018439503, -0.015003767, 0.11606929, -0.11613111, -0.040906087, -0.015202219, 0.03932618, -0.1106059, 0.03703376, 0.018548314, -0.12761284, -0.038109995, -0.23577367, 0.20272344) * go_0(-1.0, 1.0); + result += mat4(0.025444161, -0.075270735, 0.10999789, 0.16305386, 0.016178958, -0.074034974, 0.1177035, -0.077481024, -0.047774278, -0.029782977, 0.23137823, -0.2389453, 0.033015423, -0.10381626, -0.16437943, 0.20906886) * go_0(0.0, -1.0); + result += mat4(-0.098473966, 0.11013442, -0.18486807, 0.1907086, -0.17564997, -0.08509439, -0.42472756, -0.17446618, 0.3440862, 0.12719585, -0.12213955, -0.02246555, 0.18982963, 0.20809166, -0.36067408, 0.51116616) * go_0(0.0, 0.0); + result += mat4(-0.019805575, 0.07812505, 0.061653323, -0.08379226, 0.026396899, 0.009063019, -0.10845824, 0.0827647, 0.045301896, -0.07748021, -0.07435832, 0.14860612, -0.077515624, 0.010588131, -0.22704287, 0.26849246) * go_0(0.0, 1.0); + result += mat4(-0.02884339, -0.09512523, -0.038564682, 0.08862835, 0.041666254, -0.10532901, 0.040582962, -0.10063983, -0.15736029, -0.03644334, -0.005061672, 0.04302295, -0.046482194, -0.05262547, 0.05110866, 0.03204655) * go_0(1.0, -1.0); + result += mat4(-0.005932702, 0.033263832, 0.0044865874, -0.02328917, 0.056534443, -0.14084046, 0.022353357, 0.015087431, -0.2734596, -0.026544483, 0.06297078, 0.11277746, 0.06127936, 0.02466357, -0.04970561, 0.02098484) * go_0(1.0, 0.0); + result += mat4(0.013603583, 0.036264602, 0.10985147, 0.01532773, -0.09012781, 0.1132652, -0.17016481, 0.025332611, -0.077462606, 0.02990799, -0.10627784, -0.006231141, -0.089164406, -0.051507175, -0.043900985, 0.09049239) * go_0(1.0, 1.0); + result += mat4(-0.15391691, 0.1915742, 0.014101639, -0.022153432, 0.06291936, -0.017871676, -0.016763045, -0.14741553, -0.011252563, -0.20720159, -0.030648025, -0.0142307645, 0.010291614, -0.09243969, -0.052940153, 0.0061574522) * go_1(-1.0, -1.0); + result += mat4(0.032283742, 0.030768922, 0.1070225, -0.027818602, 0.10032608, 0.0061178426, -0.03561339, -0.26687133, 0.14369439, -0.11362691, -0.08980895, 0.066520914, 0.33414948, 0.006998835, 0.09193012, -0.2857383) * go_1(-1.0, 0.0); + result += mat4(-0.059588976, -0.02046844, -0.042585023, 0.031939838, 0.12796514, -0.06155685, 0.03540324, 0.009929082, -0.0039611827, 0.10790477, 0.049435645, -0.083034374, 0.23874004, -0.07460337, -0.020173345, -0.2006587) * go_1(-1.0, 1.0); + result += mat4(-0.13217632, 0.052319963, -0.026713084, -0.0051368694, -0.10380872, -0.28659084, 0.0044393227, 0.005174543, -0.05092618, -0.07092548, -0.027397033, -0.01609789, 0.13699281, -0.14706929, 0.17737861, -0.23746766) * go_1(0.0, -1.0); + result += mat4(0.19268502, 0.14133929, -0.1305119, -0.4034132, 0.057504695, -0.24550998, -0.081932545, 0.45489246, -0.29331785, 0.19625074, 0.063166246, 0.15158689, 0.6715147, -0.4610189, 0.08921431, 0.17761138) * go_1(0.0, 0.0); + result += mat4(0.044718128, -0.011809122, 0.024131307, -0.30093196, -0.05607289, 0.047759805, 0.004210022, 0.098192796, 0.030430846, 0.008207501, 0.12266905, -0.10549182, 0.11584339, -0.091016166, -0.08635591, -0.13889709) * go_1(0.0, 1.0); + result += mat4(-0.19226642, 0.07147627, -0.14759602, 0.4041079, 0.0744628, -0.19612685, 0.1498252, -0.06273549, 0.017959936, 0.10858338, -0.14985329, 0.062042814, -0.13240446, -0.24362786, 0.113626175, -0.15332204) * go_1(1.0, -1.0); + result += mat4(0.08383099, -0.13935047, -0.25981048, 0.16491203, 0.07513876, -0.28346774, 0.19722275, -0.044425573, 0.020889329, -0.22140723, 0.025403097, -0.09183192, 0.014202567, -0.18666178, 0.062913105, -0.047674105) * go_1(1.0, 0.0); + result += mat4(-0.1862771, 0.25878942, -0.043018065, 0.22144824, 0.016088247, 0.12113542, -0.11965952, -0.01587184, 0.07830932, -0.16069177, 0.13421321, 0.018718706, 0.09548377, 0.018543294, 0.013614677, -0.1054485) * go_1(1.0, 1.0); + result += mat4(-0.2121733, -0.015635416, 0.027564054, -0.085904464, 0.064805664, -0.070543915, 0.08966146, -0.06359783, 0.01131311, 0.046913184, -0.09809833, -0.092063695, -0.087217696, 0.012411829, 0.0045399712, 0.027389864) * go_2(-1.0, -1.0); + result += mat4(-0.19307798, 0.09449126, 0.084036835, 0.30262446, 0.011706106, 0.029800637, 0.04612629, 0.006186647, 0.11228541, 0.055147965, 0.17659879, -0.023410015, 0.19965266, -0.06684007, -0.081968054, -0.052410994) * go_2(-1.0, 0.0); + result += mat4(-0.058564443, 0.08252549, 0.058217794, 0.0864448, -0.25663558, 0.080260284, -0.0010294432, 0.05830051, -0.07684524, 0.1820709, 0.04438993, 0.019178499, -0.12425012, -0.04596089, -0.010032888, -0.0012803525) * go_2(-1.0, 1.0); + result += mat4(-0.43352658, 0.15262963, 0.25620222, 0.22428556, 0.09667152, 0.0037820593, -0.07951691, -0.11553085, 0.12982155, 0.17988266, -0.14283511, 0.074744284, 0.03604327, 0.00452661, -0.12865154, -0.020020623) * go_2(0.0, -1.0); + result += mat4(0.06850602, -0.18057181, 0.2093389, -0.07333886, 0.28406742, -0.048766967, 0.18114483, 0.47292945, -0.2340266, -0.06862712, 0.28263155, 0.3150323, -0.054724697, -0.16958356, 0.27928987, -0.19666018) * go_2(0.0, 0.0); + result += mat4(0.03281329, 0.0038649621, -0.07108877, 0.10791149, 0.15235375, -0.3083721, 0.168294, 0.10379698, 0.029038485, 0.16282903, 0.04483725, -0.018684763, 0.108186625, 0.027885616, -0.019351846, 0.1623065) * go_2(0.0, 1.0); + result += mat4(-0.110499054, 0.31347123, 0.030852, 0.01631416, -0.1466389, 0.080429435, -0.18689284, 0.10667815, 0.20645237, -0.18004708, -0.10570413, -0.15435064, -0.019000605, -3.126077e-06, 0.037761535, -0.015040956) * go_2(1.0, -1.0); + result += mat4(-0.023364332, -0.023399066, 0.2712722, 0.049637552, -0.10222765, -0.2698945, 0.20991959, 0.04921932, 0.21510898, -0.0751939, -0.19781734, -0.28162366, -0.041881047, 0.0065111094, -0.04102195, 0.0982682) * go_2(1.0, 0.0); + result += mat4(-0.032176614, 0.019144032, -0.08985387, 0.091637276, 0.1012352, 0.0003583357, 0.07897295, -0.09531175, -0.001155058, 0.074372366, -0.026186578, 0.07283374, 0.06052053, 0.009307753, -0.03874333, -0.06228009) * go_2(1.0, 1.0); + result += mat4(-0.022224072, -0.15717922, -0.1406057, -0.05941157, -0.028769474, -0.21226564, -0.036570027, 0.22266355, 0.14120889, 0.014577123, 0.10216447, 0.018429281, 0.056729726, -0.055834044, 0.058146577, -0.11999068) * go_3(-1.0, -1.0); + result += mat4(0.009995364, -0.020045493, -0.0057422677, 0.0643022, 0.016475432, -0.030856136, 0.042140726, 0.15077904, -0.32955253, 0.0694449, 0.17931722, 0.3439302, -0.12484157, -0.10958869, -0.15755124, -0.09755644) * go_3(-1.0, 0.0); + result += mat4(-0.008314924, 0.07704758, 0.043228816, -0.08110893, 0.099286236, -0.053224478, 0.22877018, -0.189486, -0.00798416, 0.018341504, 0.10734141, 0.0752633, -0.042524844, -0.086395286, 0.14299925, 0.026488977) * go_3(-1.0, 1.0); + result += mat4(-0.052531082, 0.19139186, 0.12205995, -0.2573172, 0.15157184, 0.0073150825, 0.089774385, 0.06604469, -0.16528498, -0.002511137, 0.14287429, -0.07819732, 0.025014274, 0.15338829, 0.0761692, -0.02803716) * go_3(0.0, -1.0); + result += mat4(-0.21000335, 0.15277153, 0.08546171, 0.2816124, -0.16559112, -0.11068559, 0.47053605, -0.009787771, -0.0013089112, -0.06985127, 0.44743782, 0.25142467, -0.32670796, 0.044035822, -0.12545367, -0.2996084) * go_3(0.0, 0.0); + result += mat4(-0.11526387, 0.15654811, 0.099616654, 0.15473685, 0.21278231, 0.046207245, 0.117993094, -0.26825273, -0.12539764, 0.14013724, 0.17357737, -0.05387817, 0.076738276, -0.13339446, 0.15005626, -0.2108176) * go_3(0.0, 1.0); + result += mat4(-0.0008846504, -0.05998622, -0.028892396, 0.04784136, 0.0104263965, 0.10899508, -0.073364735, 0.077516064, -0.074248806, -0.21749993, -0.26203, 0.041161157, 0.09366407, -0.026498007, 0.0122177545, 0.03892727) * go_3(1.0, -1.0); + result += mat4(0.04349908, 0.13671173, 0.2242545, -0.028021423, -0.03802222, 0.0052366396, -0.010709643, 0.031290106, 0.06291333, -0.024909683, -0.15439379, -0.04502091, 0.2062182, -0.5983536, -0.09670497, -0.38446042) * go_3(1.0, 0.0); + result += mat4(-0.008962513, 0.13044207, 0.04964221, 0.012250417, 0.012129821, 0.019985713, -0.06421885, 0.009168735, -0.044516414, 0.071368866, -0.006634213, 0.06497366, 0.08578495, -0.10586125, 0.06628038, -0.14006054) * go_3(1.0, 1.0); + result += vec4(0.056541316, 0.041788545, -0.036094554, -0.021763096); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!SAVE conv2d_3_tf1 +//!WIDTH conv2d_2_tf.w +//!HEIGHT conv2d_2_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_2_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_2_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_2_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_2_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.0647927, 0.053666476, -0.14723225, 0.027874574, -0.0003166473, 0.07337155, -0.061972085, -0.012667777, -0.17071614, 0.091927536, -0.051160213, 0.21336353, 0.13854574, 0.09582817, 0.032316446, 0.13838023) * go_0(-1.0, -1.0); + result += mat4(-0.0398984, 0.108049214, 0.093780346, -0.022015186, -0.15188989, -0.1381083, 0.2998843, 0.21623154, -0.08862326, 0.025862623, 0.06895634, 0.13529755, 0.06957801, -0.0011681129, 0.105972745, -0.04722446) * go_0(-1.0, 0.0); + result += mat4(-0.026321493, -0.04828038, -0.012545767, -0.005490858, -0.054038163, 0.075943105, -0.11526662, 0.022242405, -0.03543104, -0.12451852, -0.14911178, 0.013503498, 0.08773292, 0.09695139, -0.013498657, -0.27424073) * go_0(-1.0, 1.0); + result += mat4(0.018575635, -0.11321618, -0.07853153, 0.04104883, 0.0018416744, 0.11579002, 0.03685964, -0.031546146, -0.1755398, 0.23517849, -0.08095411, 0.031999595, -0.18542038, -0.26171613, -0.20567231, -0.05683613) * go_0(0.0, -1.0); + result += mat4(0.1538556, 0.21723682, 0.12131733, -0.15308167, 0.103326, -0.006956118, 0.043583486, -0.23811384, -0.103285454, 0.05543916, -0.37894246, 0.32072112, 0.22651967, 0.03516268, 0.34612176, 0.23688535) * go_0(0.0, 0.0); + result += mat4(0.040021293, 0.0029912095, 0.04885362, 0.061496444, 0.016926387, -0.118446946, 0.038948335, -0.0934512, -0.25194243, -0.054018084, -0.07149527, 0.017903058, 0.0845516, 0.33802906, 0.11953944, -0.081294954) * go_0(0.0, 1.0); + result += mat4(-0.09558082, -0.36974236, -0.07524102, 0.11131445, 0.047626104, 0.12854609, -0.10264962, -0.044669047, -0.05572307, 0.34475142, -0.16806377, -0.0037204176, 0.03400533, -0.04047774, 0.024379745, 0.09056291) * go_0(1.0, -1.0); + result += mat4(-0.039392482, 0.2553437, 0.11705501, 0.03219211, 0.073977776, -0.16610906, -0.032796364, -0.054669864, -0.07123178, 0.00079619256, -0.36920992, -0.029054813, 0.12830003, 0.004987549, 0.08724278, -0.029499404) * go_0(1.0, 0.0); + result += mat4(0.021272454, -0.063295126, 0.011779576, 0.103093, -0.011095461, 0.027948728, -0.014605259, -0.04723974, -0.05334346, -0.044831257, -0.07296399, -0.03314197, -0.01687865, -0.09261895, -0.06128567, 0.092708185) * go_0(1.0, 1.0); + result += mat4(0.0077418387, 0.00871427, 0.060824487, 0.1093608, -0.021077013, -0.057341542, -0.04769576, -0.08144089, 0.0212823, -0.06731425, -0.04134463, -0.0016761447, -0.03402026, 0.036424547, 0.11689576, -0.14946719) * go_1(-1.0, -1.0); + result += mat4(0.18536687, 0.020073935, 0.17041959, 0.024790209, 0.08397728, -0.13884324, 0.013950321, -0.055075396, -0.09317963, -0.05723721, -0.060491834, 0.0017911601, -0.109154835, 0.010338362, -0.1982491, -0.21752335) * go_1(-1.0, 0.0); + result += mat4(0.031852514, 0.031424347, 0.07817056, 0.07770759, 0.019805199, -0.091223724, 0.11914662, 0.1673029, -0.018734453, 0.16275099, 0.23245652, 0.36139074, -0.1396047, -0.14774057, 0.13756078, -0.123794965) * go_1(-1.0, 1.0); + result += mat4(-0.034937833, 0.20777488, 0.10104809, -0.035140667, 0.2536575, 0.010970045, 0.16896339, -0.081219964, -0.062478427, -0.0010431948, -0.027980985, 0.11446318, -0.127309, 0.21002083, 0.044436257, -0.16986957) * go_1(0.0, -1.0); + result += mat4(0.06309646, -0.042341243, 0.36642808, 0.18653205, 0.06973023, 0.06315932, -0.323688, 0.25672218, 0.042820994, 0.13792914, -0.12892757, -0.09220378, -0.18939693, 0.03862022, -0.17376114, -0.24673308) * go_1(0.0, 0.0); + result += mat4(-0.02130602, -0.35428852, -0.011634983, -3.9823462e-05, 0.110818714, -0.2981158, 0.060209107, 0.012538829, -0.0744833, -0.050204318, -0.12676497, -0.031484153, -0.28799182, 0.22338839, -0.070876874, -0.02102363) * go_1(0.0, 1.0); + result += mat4(-0.07929991, 0.014598492, 0.23034762, 0.024872296, 0.07480494, -0.17139243, -0.014421178, 0.056448363, -0.028626937, -0.022152562, 0.044871796, -0.048653606, 0.009350802, 0.019022083, -0.08554845, -0.0922645) * go_1(1.0, -1.0); + result += mat4(-0.027405115, 0.1831188, 0.28516722, 0.19882526, 0.27299204, -0.06910511, 0.03244419, -0.0031333128, 0.061055277, -0.114398144, 0.03729459, -0.07840815, -0.37776002, -0.24129418, -0.54815483, -0.2702045) * go_1(1.0, 0.0); + result += mat4(0.053723935, 0.13472083, 0.09563273, 0.19009806, -0.18722993, -0.25939655, -0.016197463, -0.067061596, 0.1647598, 0.061905228, 0.06191816, -0.018582113, -0.07218153, 0.11278394, 0.05478068, -0.104871586) * go_1(1.0, 1.0); + result += mat4(0.0036616288, -0.045782693, -0.226954, -0.05043515, -0.078096785, -0.036197383, 0.09269631, 0.016823346, -0.0060579977, -0.041455746, 0.09032774, -0.09217121, 0.058089796, 0.060311552, 0.033079024, 0.022586476) * go_2(-1.0, -1.0); + result += mat4(0.0436363, -0.079482526, 0.0027447809, 0.039558932, 0.13275702, 6.898711e-05, -0.21961488, -0.11315821, 0.0076181027, -0.025279062, -0.15829584, -0.063141204, 0.062049046, 0.13117202, -0.02435016, 0.109555416) * go_2(-1.0, 0.0); + result += mat4(-0.010148116, 0.056620967, -0.015910713, -0.07370375, 0.1529919, 0.005792597, 0.02771225, -0.17027487, 0.096740395, 0.063347995, 0.17823112, 0.054105148, 0.04995114, -0.28613812, 0.06369567, 0.15978208) * go_2(-1.0, 1.0); + result += mat4(-0.13688345, 0.16967694, -0.061759472, 0.013682004, -0.1290496, 0.07167547, -0.065592445, -0.17897636, 0.057080988, 0.035630587, 0.09140394, -0.08695068, 0.16807681, 0.014749346, 0.07875138, 0.034913708) * go_2(0.0, -1.0); + result += mat4(-0.098915346, -0.31459075, -0.10892429, 0.1557498, -0.19764107, -0.26881596, -0.03589311, 0.45288458, -0.34171388, 0.12675741, 0.18415868, -0.19770056, 0.29025507, -0.15812592, 0.09685835, 0.0027761247) * go_2(0.0, 0.0); + result += mat4(0.06425249, -0.01169722, 0.06379363, 0.053835012, -0.07356561, -0.06367294, 0.108630784, -0.14137438, 0.08536725, -0.03209748, 0.07250959, -0.014214082, 0.07170588, -0.25647813, 0.1092683, 0.18791042) * go_2(0.0, 1.0); + result += mat4(-0.023783233, 0.14261739, 0.102011986, -0.03633555, -0.05032627, 0.09378387, 0.11764051, 0.1353335, 0.032817088, -0.1352964, -0.00667997, -0.13388929, 0.022861317, 0.0037358075, 0.018605746, -0.0009892831) * go_2(1.0, -1.0); + result += mat4(0.22419162, -0.23105696, -0.09900454, -0.15831396, 0.12398773, 0.097933106, -0.13189293, 0.1330756, -0.19673057, -0.037342317, -0.13462654, -0.08974021, 0.030326528, -0.0815862, -0.118352115, 0.009187904) * go_2(1.0, 0.0); + result += mat4(-0.012130391, -0.06408448, 0.13710785, -0.06678414, -0.09970725, -0.14895032, -0.02366641, 0.029581001, -0.07101809, 0.09414698, 0.018300869, 0.009139046, -0.0027311493, -0.2359952, -0.011602826, -0.007582444) * go_2(1.0, 1.0); + result += mat4(-0.15473361, -0.06868751, -0.030721204, -0.08650113, 0.071349874, -0.08177769, 0.1611948, 0.18305337, -0.0144878505, 0.10975452, -0.026968453, -0.04909913, -0.059665974, 0.056036238, -0.11623168, -0.10584912) * go_3(-1.0, -1.0); + result += mat4(-0.096973225, 0.054132458, -0.010600018, 0.089397885, -0.0031138035, 0.037452973, 0.041115325, 0.1924831, 0.14759748, 0.032560788, -0.082884625, 0.0324635, -0.083511285, -0.050381303, 0.025589975, -0.0981257) * go_3(-1.0, 0.0); + result += mat4(-0.09183111, 0.034952193, -0.048511654, 0.020719057, 0.1863456, 0.01902738, 0.14455654, -0.008500172, 0.16385981, -0.07806569, -0.031216217, -0.17002788, -0.08882952, 0.07335293, -0.2223089, 0.01706056) * go_3(-1.0, 1.0); + result += mat4(-0.08361569, 0.046698716, -0.016646344, 0.09351987, 0.0054158634, -0.13641126, -0.12396605, 0.011380122, 0.040951792, -0.11222528, -0.0031548145, -0.0022303525, 0.0350846, -0.03280425, -0.09972476, -0.113325305) * go_3(0.0, -1.0); + result += mat4(-0.19961461, -0.27561286, -0.12783135, -0.062596925, 0.005870981, -0.24796526, 0.18717633, -0.16945636, -0.076396205, -0.08411448, 0.13751988, 0.21014418, -0.008655945, -0.09848541, -0.14536901, -0.2132181) * go_3(0.0, 0.0); + result += mat4(0.14118621, 0.20831147, -0.020545695, 0.008340737, 0.016840864, -0.16912372, -0.121718146, 0.15108089, -0.19803092, -0.07827729, -0.047639225, -0.12277847, 0.04974115, -0.09349339, -0.2756667, -0.19581003) * go_3(0.0, 1.0); + result += mat4(-0.0036992705, 0.16539848, 0.022026122, 0.07740234, -0.035687633, -0.004568715, 0.017408118, -0.09757294, -0.094941914, -0.3381112, -0.12724453, 0.025583982, -0.18571027, 0.047607586, -0.0704089, -0.055323426) * go_3(1.0, -1.0); + result += mat4(0.13821335, 0.028168043, 0.09990671, -0.032266147, -0.067236245, 0.11512147, -0.112986445, -0.10818019, -0.10062181, 0.21276556, 0.01681818, 0.069806606, 0.09628121, 0.06456379, 0.10394843, -0.02343886) * go_3(1.0, 0.0); + result += mat4(0.041937463, 0.072631165, 0.045366894, -0.0046993676, 0.03946691, 0.121010706, -0.030089365, -0.007266469, 0.0092267515, 0.14853416, -0.033248078, -0.027284347, -0.10031526, 0.15864117, -0.16782752, -0.18466589) * go_3(1.0, 1.0); + result += vec4(0.07722432, -0.025165567, 0.034291282, -0.09902708); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!SAVE conv2d_4_tf +//!WIDTH conv2d_3_tf.w +//!HEIGHT conv2d_3_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_3_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_3_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_3_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_3_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(-0.004729794, -0.0124398535, -0.08538641, -0.058604605, 0.008671952, 0.25604513, 0.020800482, 0.24144122, -0.028920606, -0.04705229, 0.030192787, 0.0010597534, 0.017666103, 0.0041322373, 0.20027764, 0.08919112) * go_0(-1.0, -1.0); + result += mat4(0.0001626656, 0.05816014, -0.0060765734, 0.08811165, 0.35835367, -0.016291425, -0.56892496, 0.083845764, 0.15026698, -0.15916558, 0.08069463, -0.3931291, -0.0123534845, -0.111639686, -0.14637001, -0.08171439) * go_0(-1.0, 0.0); + result += mat4(-0.114976816, 0.023376396, 0.13855027, 0.07438716, -0.069991484, 0.20377779, 0.23929878, -0.040769435, 0.018832395, 0.005638609, -0.091848075, 0.027843866, 0.023744943, -0.06620523, -0.11678267, 0.0844119) * go_0(-1.0, 1.0); + result += mat4(0.0035854098, -0.08432094, -0.17799544, -0.10041983, 0.25605857, 0.021009786, 0.030499447, -0.09928291, 0.052178737, -0.08286175, -0.057888374, 0.024606042, 0.046342995, 0.13875343, 0.11279266, 0.19826262) * go_0(0.0, -1.0); + result += mat4(-0.016232021, -0.21539623, 0.0936961, 0.021143785, 0.094262615, 0.049040064, 0.40978724, 0.15347758, 0.08884813, -0.24887115, -0.14756748, -0.5020875, 0.112477, 0.1466549, -0.33418837, 0.5769466) * go_0(0.0, 0.0); + result += mat4(-0.16832942, -0.07354198, -0.12081261, -0.055348314, 0.39716053, 0.25583258, 0.09870877, 0.2151021, -0.025700683, -0.1801462, -0.04616654, -0.02782245, -0.054461803, -0.00042802413, -0.00163228, -0.004240747) * go_0(0.0, 1.0); + result += mat4(-0.05193433, -0.0018198475, -0.17647028, -0.19462106, 0.1538165, 0.054894235, 0.12183955, 0.07340974, -0.0019901982, 0.0357373, -0.07597063, -0.06681543, -0.00090057997, -0.053894397, -0.010301875, -0.16553953) * go_0(1.0, -1.0); + result += mat4(-0.30873474, -0.2836045, 0.057037193, -0.5016378, 0.11952749, 0.102353275, 0.2351629, -0.14635189, -0.019398788, -0.08776502, 0.021669978, -0.089918956, -0.2187901, -0.1180891, -0.049789533, -0.16109149) * go_0(1.0, 0.0); + result += mat4(-0.078335494, -0.08867304, 0.03349591, -0.1000293, -0.20235832, 0.22917585, -0.09905303, 0.08381748, 0.014350217, -0.14478815, -0.027479894, -0.026432173, -0.10309177, -0.09860884, -0.019177807, -0.06963025) * go_0(1.0, 1.0); + result += mat4(0.008169383, 0.12532842, -0.23369955, 0.077973194, 0.09076616, -0.021277165, 0.1721421, -0.26914293, -0.014729218, -0.023279984, -0.057670787, 0.003598546, -0.015225789, -0.0115396585, -0.26196182, -0.10724508) * go_1(-1.0, -1.0); + result += mat4(0.16542235, 0.06589374, 0.07410237, 0.26753154, -0.3356288, 0.3096256, 0.07112498, -0.0992165, 0.15020338, -0.11021673, 0.18803611, 0.12918204, 0.109007336, -0.031968266, 0.057093572, 0.035949256) * go_1(-1.0, 0.0); + result += mat4(0.065006174, 0.031055925, 0.0390232, -0.01678507, -0.21553491, 0.14171642, -0.19541772, -0.033691674, -0.06241631, 0.07497651, 0.024557155, 0.056778047, -0.060191352, -0.0261998, 0.07493729, -0.0699132) * go_1(-1.0, 1.0); + result += mat4(-0.008541382, 0.020270415, -0.027760057, -0.040962905, -0.26732433, 0.34379438, -0.23012447, 0.0051356517, -0.04059567, 0.0972959, 0.039965224, -0.14796777, -0.0016924662, -0.116963714, -0.026353523, -0.29799464) * go_1(0.0, -1.0); + result += mat4(0.03329303, -0.12663862, -0.0004959157, -0.11162377, 0.26238343, 0.43260252, -0.16504994, 0.10727678, -0.22505566, 0.43474057, 0.43304008, 0.05143919, 0.40494493, 0.08689636, -0.035733614, 0.25727916) * go_1(0.0, 0.0); + result += mat4(0.12175736, -0.014467151, -0.17461288, -0.18480565, -0.26439998, 0.307935, -0.058916792, -0.014292711, -0.0569471, 0.10751278, -0.04134206, 0.1847734, -0.07519831, -0.033909313, -0.05001451, -0.136606) * go_1(0.0, 1.0); + result += mat4(0.1424893, -0.026820501, 0.19645774, -0.0011315406, -0.14680974, 0.07662838, 0.21108222, 0.13260938, 0.17923595, -0.085527614, 0.08217639, 0.06579479, 0.05985784, -0.09016323, 0.11172888, 0.111903176) * go_1(1.0, -1.0); + result += mat4(0.19842595, 0.0093640275, 0.10433465, 0.13341904, -0.082806975, 0.22555825, -0.1315717, 0.11907785, 0.24012424, 0.47776055, 0.1835734, 0.17483878, 0.079803735, 0.01155073, -0.21146573, -0.16484722) * go_1(1.0, 0.0); + result += mat4(0.15064004, 0.021381427, 0.18301587, 0.21225913, 0.054995645, 0.03212186, 0.052798916, -0.048424408, 0.03609021, 0.0964704, -0.059469886, -0.05133066, -0.08157349, 0.051145166, -0.09107608, -0.1362262) * go_1(1.0, 1.0); + result += mat4(0.090521574, -0.014747857, -0.081675015, -0.118686825, 0.04848682, -0.033071827, 0.008534588, 0.023765508, 0.16849907, -0.21797262, -0.17049783, -0.07824179, -0.033794608, 0.052612655, 0.095820345, -0.07262317) * go_2(-1.0, -1.0); + result += mat4(0.22816367, -0.13772108, -0.036353834, -0.47638395, -0.0530902, 0.14089061, 0.076203234, 0.18006112, 0.121814854, -0.20750527, 0.08266107, -0.28634354, 0.14301859, -0.13458411, 0.00501663, -0.039783802) * go_2(-1.0, 0.0); + result += mat4(-0.103384845, -0.14389835, 0.08275834, -0.068423435, 0.22643796, -0.02966374, -0.2847584, 0.037081387, 0.02349005, -0.19353923, -0.00095957273, -0.13623689, -0.073120415, 0.03941467, 0.21864155, -0.014019576) * go_2(-1.0, 1.0); + result += mat4(-0.082576886, 0.17085212, 0.08971252, -0.04213377, -0.032548156, 0.022137715, 0.08399252, -0.0011743539, -0.09410863, -0.41728264, -0.20709297, -0.18933547, 0.027059928, 0.09743364, 0.2504647, -0.041173562) * go_2(0.0, -1.0); + result += mat4(-0.20924084, 0.291118, 0.029851688, 0.16953468, 0.02936709, 0.12213576, 0.22944322, 0.108747594, 0.0001881129, -0.27398208, -0.009702691, 0.15449248, -0.9472944, -0.26114875, -0.28161275, -0.3495961) * go_2(0.0, 0.0); + result += mat4(-0.12994622, -0.2758638, -0.1091727, -0.0968308, -0.14323105, 0.035175014, -0.08023811, 0.006023802, -0.031529594, -0.1486306, -0.3398172, -0.23240276, -0.29163983, 0.173475, 0.18809283, 0.22197202) * go_2(0.0, 1.0); + result += mat4(0.048254848, -0.083444916, -0.014334202, 0.060992356, -0.023099286, -0.09492961, 0.05592045, 0.0026059286, 0.08998117, -0.108810075, -0.053304546, 0.045926623, 0.068255246, 0.099023566, 0.01595483, 0.1336309) * go_2(1.0, -1.0); + result += mat4(0.21916585, 0.2837387, 0.14624594, 0.18843961, -0.06747584, 0.054924384, -0.082568415, 0.05011459, 0.014297759, -0.3884833, -0.054417178, -0.18970548, 0.088336475, -0.030646667, -0.2980552, -0.030035203) * go_2(1.0, 0.0); + result += mat4(-0.02748568, -0.011897529, -0.2370837, -0.016740574, -0.0282112, 0.050353892, -0.10761107, -0.00036999505, 0.037646662, -0.17742962, 0.06489219, -0.158852, -0.08016933, 0.07808515, -0.105895035, 0.079869986) * go_2(1.0, 1.0); + result += mat4(-0.0058994526, -0.037170693, 0.2574696, 0.06199102, -0.04497728, -0.10667442, -0.15183865, 0.0212881, -0.030842574, 0.073473394, 0.010764398, -0.00084518327, -0.03893014, -0.009649613, 0.07443129, 0.15108284) * go_3(-1.0, -1.0); + result += mat4(0.11325495, -0.096435815, -0.097331434, -0.049700152, -0.17231967, 0.047090057, -0.019111065, 0.104790315, -0.15004838, 0.13950798, 0.055996202, -0.070548095, 0.047154237, -0.007650949, -0.053611025, -0.012242293) * go_3(-1.0, 0.0); + result += mat4(0.12787002, -0.04958212, 0.053988468, 0.0017896162, 0.049493514, -0.009475431, -0.0022641935, 0.03933694, -0.005174597, 0.043754533, -0.1432976, 0.037084177, -0.04601288, -0.032077815, -0.059897035, 0.12584484) * go_3(-1.0, 1.0); + result += mat4(0.019409029, 0.10492923, 0.268368, 0.12597778, -0.17733063, -0.0085961, -0.27136415, -0.049664587, 0.012515404, -0.21444482, -0.39275557, -0.12297177, 0.06800057, 0.19228315, 0.06245887, 0.35772634) * go_3(0.0, -1.0); + result += mat4(-0.16317715, 0.2288402, -0.23235172, 0.22230752, -0.1646375, 0.13366091, 0.16681044, -0.17399235, 0.33997267, -0.3179832, -0.34756508, 0.39843196, -0.10748536, 0.322923, 0.23339489, 0.08684083) * go_3(0.0, 0.0); + result += mat4(0.02835275, 0.12314228, 0.24030593, 0.30856124, 0.055735108, -0.044914473, 0.0031432225, 0.07469899, 0.1778018, 0.107083894, -0.023706734, -0.15501897, 0.0943098, -0.034707237, -0.18622099, 0.05257965) * go_3(0.0, 1.0); + result += mat4(0.042839274, 0.12597966, 0.08979042, -0.0647561, -0.050434645, 0.049438696, -0.20008127, -0.05572608, 0.046238814, 0.12622325, -0.019017145, -0.13960391, -0.040050175, 0.14298008, -0.20270552, 0.13391526) * go_3(1.0, -1.0); + result += mat4(-0.0073277587, 0.10606624, -0.08940439, -0.09656414, 0.12387374, -0.0013147948, 0.23607181, -0.00037969893, 0.050353236, -0.17266603, 0.27796733, -0.09877832, 0.02711225, 0.096394345, 0.07457944, 0.21541388) * go_3(1.0, 0.0); + result += mat4(-0.18612787, -0.00027517386, -0.17136407, -0.06413671, 0.025629476, -0.04570916, 0.0008431566, -0.03419168, 0.08123608, 0.09465922, 0.11975521, 0.1269741, 0.08413221, 0.12125001, 0.04727287, 0.072378494) * go_3(1.0, 1.0); + result += vec4(0.04244928, -0.014280219, 0.017129054, -0.08807801); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!SAVE conv2d_4_tf1 +//!WIDTH conv2d_3_tf.w +//!HEIGHT conv2d_3_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_3_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_3_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_3_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_3_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.01973856, -0.05053795, 0.015545361, 0.10867395, 0.33441806, 0.14731607, 0.6793983, -0.21394718, -0.00846322, 0.09146322, -0.07427475, -0.078477465, -0.090998545, 0.133366, 0.105515696, -0.13784988) * go_0(-1.0, -1.0); + result += mat4(-0.05404873, 0.09784018, -0.1337389, -0.18082313, 0.13461179, -0.3816801, 0.12209786, 0.08176651, 0.10461896, -0.43315184, 0.017470734, 0.20423968, -0.03941875, -0.101959296, -0.09440259, 0.09154717) * go_0(-1.0, 0.0); + result += mat4(0.17229515, -0.06907825, -0.008382803, -0.16671611, -0.01576541, 0.03985307, 0.08209482, -0.11707446, -0.11793074, 0.13702396, -0.02013158, 0.07302033, -0.022301994, -0.11464677, 0.036753565, -0.093276784) * go_0(-1.0, 1.0); + result += mat4(-0.017650167, 0.009475923, -0.17856382, 0.15925962, 0.06434641, -0.15568036, 0.038135886, 0.18855911, -0.04427734, 0.1878215, 0.10856261, 0.0041275816, -0.12046199, 0.13610138, 0.3741596, -0.12934728) * go_0(0.0, -1.0); + result += mat4(-0.24631616, 0.0169485, -0.035534818, 0.37795424, -0.08546174, 0.07817259, 0.42897213, -0.47965595, -0.0146556785, -0.20510523, -0.18889453, 0.06476019, 0.1021008, -0.35398817, -0.031071864, -0.21416448) * go_0(0.0, 0.0); + result += mat4(0.32810766, 0.050585747, -0.17658374, -0.13881154, 0.16417882, -0.21286008, -0.106835455, -0.1722344, -0.14151084, 0.08962986, 0.057395387, -0.01623662, 0.02570415, 0.15626897, -0.12687978, 0.080729105) * go_0(0.0, 1.0); + result += mat4(-0.050597478, -0.018753758, -0.036346875, -0.017908493, 0.058593344, 0.008303028, 0.05254987, -0.06635018, -0.022532012, 0.029511122, 0.026682215, -0.054647952, 0.069466785, -0.08892492, 0.025351115, -0.023130694) * go_0(1.0, -1.0); + result += mat4(0.2412473, -0.16138165, -0.15117447, 0.11851003, -0.096868426, 0.082690425, 0.27923304, 0.11590443, 0.19363573, -0.15770023, -0.066793665, 0.011681678, 0.14037277, -0.112065665, -0.048159517, 0.009453693) * go_0(1.0, 0.0); + result += mat4(0.1580054, -0.0060506654, 0.05267837, -0.09178131, -0.09107123, 0.23191126, 0.21108283, -0.070422985, 0.024321035, 0.06131459, 0.066626504, 0.032481454, 0.044402298, 0.1390604, -0.14432502, 0.040869843) * go_0(1.0, 1.0); + result += mat4(0.10264861, 0.013504324, 0.012482852, -0.1781206, -0.12799414, -0.27026084, -0.123830505, 0.098105, -0.039127555, 0.09367889, 0.122323096, 0.1416734, 0.044763107, -0.21801683, -0.14018978, 0.17646866) * go_1(-1.0, -1.0); + result += mat4(0.017453065, 0.11498537, -0.10998983, -0.3116098, -0.3099762, 0.5024706, 0.051817298, 0.03170681, -0.18937826, 0.07946567, -0.11978771, -0.09523745, -0.0033551592, -0.11768945, 0.08932359, -0.06689581) * go_1(-1.0, 0.0); + result += mat4(0.1507582, -0.013266159, -0.073085934, -0.07252967, -0.06301927, -0.13218755, 0.12984878, -0.13678701, 0.023422396, 0.082123175, 0.006906731, -0.004018426, -0.15813835, 0.13711788, 0.016018609, 0.13443229) * go_1(-1.0, 1.0); + result += mat4(-0.06960673, 0.16156524, -0.1374069, -0.05803206, -0.077960715, -0.10676749, 0.26282015, 0.03521529, 0.058099385, -0.014738148, 0.0011174522, 0.24279532, -0.023991548, -0.108812414, -0.08886019, 0.20584475) * go_1(0.0, -1.0); + result += mat4(-0.08043308, 0.063343, 0.055290066, -0.15991378, -0.08096304, -0.23888679, 0.019161629, 0.38381267, 0.3672934, -0.119608454, -0.43623593, -0.46014485, -0.5323366, 0.1318621, 0.087373205, -0.05535459) * go_1(0.0, 0.0); + result += mat4(0.20640239, -0.1369444, -0.21677823, 0.08202178, 0.10515278, 0.06810837, 0.073207974, 0.23623931, 0.102422275, -0.05016664, -0.0039228587, -0.1810343, -0.2235563, -0.1246854, 0.1428113, -0.10609135) * go_1(0.0, 1.0); + result += mat4(-0.031941894, -0.08905056, 0.21501167, 0.11244667, -0.011811734, 0.21630247, 0.07589472, -0.040489636, -0.11824066, -0.11520391, -0.10075633, -0.035642453, 0.062144946, 0.0073282206, 0.14119269, -0.060479023) * go_1(1.0, -1.0); + result += mat4(-0.29382935, -0.056808118, 0.051812876, -0.061358813, -0.08344258, 0.124203674, 0.037964176, -0.01961274, -0.000951725, 0.50005037, -0.24176972, 0.06487161, -0.15469861, 0.04336187, 0.17826353, 0.040010225) * go_1(1.0, 0.0); + result += mat4(0.02044482, -0.0879271, -0.01053958, -0.31148303, 0.07497373, -0.11548258, -0.1666126, 0.02369657, -0.058044076, 0.010801491, -0.005933901, -0.08910467, 0.007953008, 0.03761974, -0.029501524, 0.16816042) * go_1(1.0, 1.0); + result += mat4(0.1779597, -0.10213089, 0.29942423, -0.016642543, -0.015537001, -0.04676146, 0.09585872, -0.0055750017, -0.014361908, -0.20667697, -0.11348746, 0.13081487, -0.10437329, 0.14328459, 0.11648822, -0.09163837) * go_2(-1.0, -1.0); + result += mat4(0.019033967, -0.12420627, -0.07748253, 0.43203858, -0.109799065, 0.07605535, 0.060791396, -0.24517195, -0.15674245, 0.21267459, 0.10665515, -0.073150024, -0.1358355, 0.0054066703, -0.16434059, -0.06031853) * go_2(-1.0, 0.0); + result += mat4(-0.18834068, 0.26840356, -0.12937617, 0.16103932, -0.0062331813, -0.13630053, -0.013911821, 0.022389365, -0.044232946, -0.056454606, 0.022426741, 0.18010215, 0.041900013, 0.03375041, -0.11376866, -0.010313381) * go_2(-1.0, 1.0); + result += mat4(0.12497669, -0.31161824, 0.097568035, 0.19443443, -0.05056519, -0.0031457904, 0.1055554, -0.083650924, 0.07630523, -0.34177595, -0.093093194, 0.20701368, -0.030962149, -0.054470222, -0.23853977, 0.004326528) * go_2(0.0, -1.0); + result += mat4(0.34370202, 0.085750066, -0.16071722, -0.54335934, -0.35595295, -0.050744478, -0.17405547, 0.008628697, -0.007086256, 0.23164117, 0.340156, 0.5475976, -0.15292351, 0.28019544, 0.038059216, 0.0044727) * go_2(0.0, 0.0); + result += mat4(-0.08231968, -0.0052294536, 0.07451547, 0.22278999, -0.3305531, 0.0017458396, 0.10818422, -0.21325395, -0.08807993, -0.110342845, 0.10082142, -0.051594347, 0.24192205, -0.18042035, -0.0095462985, -0.08757798) * go_2(0.0, 1.0); + result += mat4(0.096379586, 0.021887815, -0.05097233, -0.06797989, -0.026171045, 0.022944937, -0.015915364, 0.037667938, 0.17216732, -0.014889412, 0.07343887, 0.028236505, 0.0015047621, 0.1355103, -0.09918284, -0.07673695) * go_2(1.0, -1.0); + result += mat4(-0.25385055, 0.15163356, 0.0030003798, 0.18464413, 0.05611221, 0.099498056, -0.07128191, 0.042955168, 0.027493173, 0.07440157, 0.07814497, 0.096160784, 0.13571084, 0.056412842, -0.031997006, -0.16073681) * go_2(1.0, 0.0); + result += mat4(-0.21634746, 0.025153082, -0.064477116, 0.0005679147, -0.0029436245, 0.12794618, 0.024849026, 0.03018052, 0.11723976, 0.059955597, -0.013594654, 0.09091745, 0.04775348, 0.21260159, -0.07463213, -0.06727042) * go_2(1.0, 1.0); + result += mat4(-0.12166018, 0.024545137, 0.08611618, -0.17627168, 0.09042604, -0.14157623, -0.22147785, 0.09100581, 0.11078359, 0.031410985, -0.17170976, 0.09532806, -0.059569277, 0.09392676, 0.11784347, -0.21471368) * go_3(-1.0, -1.0); + result += mat4(0.1483187, -0.2217563, 0.12032977, 0.14932398, 0.27428308, -0.04568031, 0.12670338, 0.09586169, 0.06700745, 0.005126449, 0.0027694793, -0.033667028, 0.06447861, -0.08585174, -0.05509812, -0.11358761) * go_3(-1.0, 0.0); + result += mat4(-0.22750492, 0.032906335, -0.029479047, 0.11580199, -0.05812372, -0.032269973, 0.05219915, 0.041658226, 0.010897959, 0.065550454, 0.0076911976, -0.045743827, 0.11614996, -0.10393113, -0.0012606392, -0.034367524) * go_3(-1.0, 1.0); + result += mat4(0.09350742, 0.09561609, 0.3735968, 0.031685118, -0.042026598, 0.17006761, -0.3910107, 0.16984761, 0.25679177, 0.036610503, -0.13772772, 0.11101589, -0.1137049, 0.07211461, 0.18065079, -0.12324793) * go_3(0.0, -1.0); + result += mat4(-0.020749722, 0.14413361, -0.061903823, -0.21550268, 0.31306142, -0.11532895, 0.029482557, 0.03282164, -0.09800627, -0.20765196, 0.33030233, 0.075725295, 0.49252015, 0.042455837, -0.07264194, -0.10401895) * go_3(0.0, 0.0); + result += mat4(-0.22697076, -0.15738785, 0.09740376, -0.072098814, -0.06638972, 0.12336611, 0.0073687397, 0.048267826, 0.06717852, -0.027047804, -0.123397194, 0.17829034, 0.04215185, 0.066311836, -0.061742183, -0.046373066) * go_3(0.0, 1.0); + result += mat4(0.041311592, 0.2813485, 0.055084586, -0.01823069, 0.08105147, -0.087944716, -0.10135052, -0.02653456, 0.063169874, -0.1351186, 0.06722432, -0.016406318, 0.08666922, 0.0555909, 0.12086502, -0.17224412) * go_3(1.0, -1.0); + result += mat4(0.26026788, -0.18303715, 0.029279215, -0.12858874, 0.027197823, 0.0919464, 0.00849638, 0.10547888, -0.12952055, -0.14414985, 0.1903315, 0.05004528, -0.12657289, 0.038008716, -0.036606666, -0.054025438) * go_3(1.0, 0.0); + result += mat4(0.069167465, 0.2699947, -0.11137602, -0.05888806, -0.107324794, -0.07598601, 0.06042177, 0.0064530694, -0.039780665, -0.076666445, -0.00846108, -0.06165907, -0.06978219, -0.19108103, -0.040026028, -0.120319635) * go_3(1.0, 1.0); + result += vec4(-0.14375664, -0.0056876075, 0.052177623, 0.07152566); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!SAVE conv2d_5_tf +//!WIDTH conv2d_4_tf.w +//!HEIGHT conv2d_4_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_4_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_4_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_4_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_4_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(-0.15667982, -0.31441393, 0.29112124, -0.15737213, 0.022372838, 0.10690639, -0.12019085, -0.051941186, -0.30367845, 0.02612279, 0.2372532, 0.2021648, -0.20481086, -0.003770439, 0.14981231, 0.066780254) * go_0(-1.0, -1.0); + result += mat4(0.03270688, -0.42270073, 0.044317324, 0.15907793, 0.14681059, -0.2934784, 0.24933252, -0.067273855, 0.07752533, -0.23194817, 0.0686707, 0.08999225, 0.121678345, -0.12916678, 0.012397381, 0.012315053) * go_0(-1.0, 0.0); + result += mat4(-0.10090412, -0.20792678, 0.11076032, -0.02938975, -0.1944187, -0.2003259, 0.04438032, 0.36946484, -0.019868722, -0.15830222, 0.042811528, 0.015641417, 0.113098525, 0.080257006, 0.011135628, -0.2877629) * go_0(-1.0, 1.0); + result += mat4(0.15482685, 0.06579119, 0.28301102, 0.23729764, 0.15990537, 0.4529694, 0.107880585, 0.10668121, -0.42430598, -0.2631025, 0.10513542, -0.036242936, -0.09827965, -0.0069260495, -0.11689201, -0.041436482) * go_0(0.0, -1.0); + result += mat4(0.08472191, -0.13051608, 0.047930017, 0.36831668, 0.1164478, 0.21384816, 0.22062506, 0.2094167, 0.48668453, 0.32302913, 0.36268055, -0.091801375, -0.079141125, -0.26613805, -0.16608004, 0.03810683) * go_0(0.0, 0.0); + result += mat4(-0.13474251, -0.04824603, 0.23303726, -0.116136365, 0.0056330245, 0.15829784, 0.0012259148, 0.12648389, 0.038680512, 0.05131116, 0.024099711, 0.4555406, 0.0035716395, 0.11633299, 0.094744846, -0.2457627) * go_0(0.0, 1.0); + result += mat4(-0.0576871, -0.04037522, 0.16857862, 0.0031084458, -0.027274646, -0.18154246, 0.13337846, 0.035422433, -0.0030749738, -0.17288287, 0.019983152, -0.31871706, -0.03280405, 0.06825421, -0.1563798, 0.05031885) * go_0(1.0, -1.0); + result += mat4(-0.066631876, 0.012560506, 0.1690693, -0.018248236, 0.0450104, 0.016296914, -0.14910112, -0.16191053, 0.5078224, -0.017615631, 0.15226597, -0.13373777, 0.20148668, 0.060258996, 0.13215344, 0.18430072) * go_0(1.0, 0.0); + result += mat4(0.12976126, -0.072738245, 0.053067926, 0.09752956, -0.04716214, 0.04136464, 0.014162617, -0.06621296, -0.09617736, 0.057469178, 0.01280261, -0.042976785, -0.12570308, 0.006027807, 0.031038594, 0.06569918) * go_0(1.0, 1.0); + result += mat4(-0.12655424, -0.41563693, -0.030971345, -0.06357555, -0.14121394, -0.15667427, 0.14398985, 0.05995984, 0.0821605, 0.12462943, 0.007492498, -0.0030187522, -0.22804567, -0.10487421, 0.13180672, -0.13978589) * go_1(-1.0, -1.0); + result += mat4(-0.075991526, 0.12352044, -0.17844258, 0.010614991, -0.18293494, 0.25009897, -0.080779895, 0.21548378, 0.22215544, 0.048670914, -0.057372037, 0.078176, 0.17490411, 0.004919551, 0.059619516, 0.12660357) * go_1(-1.0, 0.0); + result += mat4(-0.06282951, 0.10929357, 0.026720649, -0.15939257, 0.17107709, -0.04334904, -0.03047162, -0.101681694, 0.03118431, 0.19994627, 0.025729552, 0.035035726, -0.0012207883, -0.08618888, 0.061205562, 0.009940555) * go_1(-1.0, 1.0); + result += mat4(-0.23581573, 0.08002133, -0.15170844, 0.08872338, -0.25767094, -0.09273545, 0.18153891, 0.2544269, -0.084598936, -0.089766875, -0.14610913, 0.002247754, 0.1802837, -0.019625561, 0.30239686, -0.032793984) * go_1(0.0, -1.0); + result += mat4(0.5223286, 0.10347663, 0.4000593, 0.25440502, -0.07646958, -0.31940606, 0.053407036, -0.09356492, 0.2738851, 0.23945184, -0.2907089, -0.45822915, 0.13415676, 0.17187089, 0.08731114, -0.27670014) * go_1(0.0, 0.0); + result += mat4(0.059273496, -0.107137166, 0.12087539, 0.179237, -0.021209063, -0.02548005, 0.061256204, 0.033822674, 0.54491127, -0.2475085, 0.08055858, -0.4071213, -0.045093834, 0.07161349, 0.08219979, -0.31735933) * go_1(0.0, 1.0); + result += mat4(-0.29527053, 0.021469543, 0.07202354, -0.07103959, 0.03990857, 0.2490762, -0.19419849, -0.13916986, -0.05325315, 0.12922864, -0.041463424, -0.031249814, 0.073991664, -0.09723187, 0.35132217, 0.024760868) * go_1(1.0, -1.0); + result += mat4(0.09606787, -0.0951808, -0.0059865676, -0.052033573, -0.3118038, 0.4432636, -0.12943317, 0.09484738, 0.10621756, -0.10550469, 0.11264014, 0.1402276, -0.012679125, -0.08809835, 0.029994955, -0.15121669) * go_1(1.0, 0.0); + result += mat4(0.123397775, 0.048338536, -0.00975707, -0.103767075, -0.041053303, -0.07228534, 0.046792876, 0.0668788, 0.29554394, 0.012451002, 0.19568972, 0.112091154, 0.10882395, -0.0995439, 0.051324263, 0.24967718) * go_1(1.0, 1.0); + result += mat4(0.2699648, 0.17300771, -0.16056584, 0.1099392, 0.11674778, -0.19811755, 0.111880325, -0.06075038, -0.095849104, -0.04510651, -0.04180761, -0.0052786698, 0.11037549, -0.24115366, 0.018509468, -0.07819484) * go_2(-1.0, -1.0); + result += mat4(0.10981622, 0.044488225, 0.050722387, -0.3146652, -0.0013019707, -0.24084032, -0.10475088, 0.026944289, 0.1592903, 0.33087498, 0.061839584, -0.043863457, -0.06904603, -0.08635262, 0.088630445, -0.15485142) * go_2(-1.0, 0.0); + result += mat4(-0.06810522, 0.19927117, -0.08130387, 0.11612667, -0.015104349, -7.738651e-05, -0.06419643, -0.14813533, 0.026650215, 0.015038833, 0.08161237, 0.058321163, 0.015005185, -0.16189656, 0.024501886, 0.1927279) * go_2(-1.0, 1.0); + result += mat4(0.31858218, 0.11962043, -0.20560326, -0.13190113, 0.02138715, -0.057066392, -0.085771754, -0.124566585, 0.044749223, 0.13687828, 0.1195792, 0.14021616, 0.26204133, 0.05119197, -0.13980037, 0.050747477) * go_2(0.0, -1.0); + result += mat4(-0.21238558, -0.0734057, -0.2036023, -0.34308743, -0.29370925, 0.2393742, -0.37877437, 0.036869828, -0.17053255, -0.26900926, -0.23330869, 0.32902205, -0.4882585, 0.27430108, -0.033711653, 0.15501487) * go_2(0.0, 0.0); + result += mat4(0.23487025, 0.085289046, -0.14281847, 0.12543266, 0.15871634, -0.13858907, 0.14810285, -0.0239261, 0.1286852, 0.07754033, 0.01072327, -0.14313328, 0.05480442, -0.12195059, 0.11341822, 0.08224607) * go_2(0.0, 1.0); + result += mat4(0.19490337, 0.023521842, -0.24548791, 0.0035114093, -0.07937166, -0.07674376, 0.08365873, -0.003286068, 0.023862893, 0.009626835, 0.032829892, 0.0078141205, 0.053484406, -0.08297165, 0.09303188, 0.004273738) * go_2(1.0, -1.0); + result += mat4(-0.0032906602, 0.13636959, 0.027821168, 0.06270053, 0.024775786, -0.077529594, 0.03799126, 0.030000908, 0.031749167, 0.04360487, 0.004448846, -0.17835903, -0.30834544, 0.013150946, -0.13758293, -0.03296242) * go_2(1.0, 0.0); + result += mat4(-0.14166978, 0.034131095, 0.049779188, 0.09453289, -0.011406557, -0.07020709, -0.0031981543, -0.03443845, -0.00010218944, 0.0855161, -0.10951453, 0.042758763, 0.1718446, -0.1577923, 0.0410027, -0.04992991) * go_2(1.0, 1.0); + result += mat4(0.1219178, 0.105126485, -0.041097324, -0.08110963, -0.04857337, -0.11544925, -0.14572923, 0.092435546, 0.091857366, 0.15425235, -0.020324683, -0.05764375, -0.020458939, -0.10527823, -0.085554086, 0.16358297) * go_3(-1.0, -1.0); + result += mat4(-0.12372687, -0.009976829, 0.14252265, -0.1321053, -0.05965866, -0.1393898, -0.017603246, -0.02714342, -0.16824952, -0.23083204, -0.012299022, -0.06689838, -0.015830487, 0.21299921, -0.11637202, 0.0074968333) * go_3(-1.0, 0.0); + result += mat4(-0.01979935, -0.182785, -0.015397454, 0.14175794, -0.011465284, 0.11285164, -0.036115747, 0.07150463, -0.083641894, -0.10221778, -0.13871445, 0.099696055, 0.04603662, -0.06463785, -0.007984529, -0.0032940735) * go_3(-1.0, 1.0); + result += mat4(0.072830334, -0.057334073, 0.09086239, 0.13039105, 0.06350303, 0.17130788, -0.2181585, -0.09137403, -0.31397742, -0.019071499, -0.017274613, 0.13762084, 0.10195637, -0.021455176, 0.04011394, -0.08029658) * go_3(0.0, -1.0); + result += mat4(-0.26982597, -0.40265098, -0.4151411, 0.038557775, -0.095602125, 0.3503172, -0.029988842, -0.03484708, 0.095536314, -0.0030311556, 0.31589827, 0.52763534, -0.12629713, -0.24356791, 0.0059487303, 0.42298427) * go_3(0.0, 0.0); + result += mat4(0.054166105, 0.18827972, -0.081673265, -0.06720384, 0.09375001, 0.22173035, -0.14050071, 0.108400136, -0.15553835, -0.08716729, -0.037366748, 0.10971073, -0.02560103, -0.26702073, -0.05201882, 0.2432563) * go_3(0.0, 1.0); + result += mat4(0.16196893, 0.0889265, -0.09887943, -0.042956755, -0.054403376, -0.123823255, 0.045847844, 0.017027669, 0.00539936, -0.112265736, 0.050549984, -0.104931094, -0.06883012, -0.25745714, 0.11155538, -0.15363649) * go_3(1.0, -1.0); + result += mat4(-0.22157209, 0.18200903, -0.13290548, 0.026721261, -0.06066069, -0.18150693, 0.08768983, 0.037362453, -0.1073367, -0.070236765, -0.41223463, -0.168915, -0.15517351, -0.13949952, -0.13307643, -0.15935421) * go_3(1.0, 0.0); + result += mat4(-0.026589906, 0.0930502, 0.05195435, 0.06301585, -0.01107014, -0.019382332, 0.027223695, -0.004045145, -0.15238355, -0.0345132, 0.06355168, 0.0011230056, 0.16690113, 0.0017829507, -0.0023939044, -0.09471834) * go_3(1.0, 1.0); + result += vec4(0.024455175, 0.01669877, -0.066231176, 0.036848705); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!SAVE conv2d_5_tf1 +//!WIDTH conv2d_4_tf.w +//!HEIGHT conv2d_4_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_4_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_4_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_4_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_4_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.01763509, -0.17156707, -0.06841296, -0.026132878, -0.10600523, 0.11245994, 0.121395074, -0.09331501, 0.12764473, 0.0428028, -0.11837395, 0.2092563, -0.04357652, -0.0490096, 0.024701532, 0.10518723) * go_0(-1.0, -1.0); + result += mat4(-0.17130826, -0.31987694, -0.07639005, 0.21362033, 0.058639023, 0.066175915, -0.25344703, -0.07923442, -0.14766373, 0.040518284, -0.031103026, -0.040075514, -0.051108997, -0.28214613, -0.18504949, 0.27544948) * go_0(-1.0, 0.0); + result += mat4(0.030991005, -0.011353306, 0.15237464, 0.15458584, 0.1250524, 0.19959912, 0.14049476, 0.38410887, 0.07378578, -0.017728366, 0.0963528, -0.043756213, -0.039577194, -0.11800575, -0.08392266, -0.07599512) * go_0(-1.0, 1.0); + result += mat4(0.022089608, -0.027317125, 0.051330008, -0.0075439885, 0.021650828, -0.0009390209, -0.12043464, 0.049332134, -0.055557396, -0.053297505, -0.0918705, -0.13089466, -0.10994107, 0.072746456, 0.11496739, -0.05225977) * go_0(0.0, -1.0); + result += mat4(0.29730305, 0.26317745, 0.052159555, -0.32006654, 0.48288685, -0.049926184, -0.08091092, -0.13825637, -0.1485706, -0.288657, -0.41443697, 0.06856032, -0.23809211, -0.12953928, 0.4783034, -0.47557938) * go_0(0.0, 0.0); + result += mat4(0.026139118, -0.23031352, 0.04861487, 0.033556074, 0.2702056, 0.22802536, -0.15385233, 0.1664119, 0.18749923, 0.36927548, -0.011473684, -0.11771165, -0.16859052, -0.4513202, 0.12863952, 0.02482837) * go_0(0.0, 1.0); + result += mat4(0.0073229345, -0.061915245, 0.06710329, 0.0062416573, -0.00555983, 0.14592186, 0.11201052, -0.123630054, 0.32611257, -0.11279885, -0.059449438, 0.2891043, -0.10519016, 0.040108994, -0.012468261, 0.02083298) * go_0(1.0, -1.0); + result += mat4(-0.057483062, 0.08454755, -0.15529329, -0.12572923, 0.2600099, -0.02319978, -0.04037675, 0.11496361, 0.07728194, -0.12908956, -0.025529336, 0.112581626, 0.02971823, 0.11659056, -0.01298622, 0.017061908) * go_0(1.0, 0.0); + result += mat4(0.22417091, -0.00222947, 0.04980858, 0.12260437, -0.025507605, 0.042577885, 0.120813504, -0.048522256, -0.038494784, -0.0072195013, -0.23012944, -0.020850847, -0.078296244, -0.014830018, 0.19759563, -0.10000253) * go_0(1.0, 1.0); + result += mat4(-0.032090195, 0.023757193, -0.08989734, 0.14419042, 0.0112194475, -0.093776144, -0.020197887, 0.29295877, 0.06872183, 0.09511462, -0.03245769, -0.06504889, 0.05132126, 0.00399527, 0.075911656, 0.250893) * go_1(-1.0, -1.0); + result += mat4(-0.3418496, 0.25525784, 0.0018161442, 0.028484365, -0.17573346, -0.12457501, 0.18466166, 0.20209278, 0.10282706, 0.16353399, 0.025052028, -0.059714165, -0.055806916, -0.28651386, 0.112798095, 0.11624314) * go_1(-1.0, 0.0); + result += mat4(-0.018793896, 0.07500149, -0.01728254, -0.1726998, -0.13333, 0.09590344, -0.036537904, -0.11522523, 0.19445558, 0.22680458, 0.12061006, -0.06225618, 0.1127748, 0.28380096, -0.07099846, -0.007440302) * go_1(-1.0, 1.0); + result += mat4(-0.43887648, -0.10018577, -0.29267642, 0.12149727, -0.14333835, 0.04161915, 0.19442867, 0.16506511, 0.09655387, -0.0014398015, 0.13189743, -0.14068556, 0.049408, 0.0829072, 0.2950336, 0.36965907) * go_1(0.0, -1.0); + result += mat4(0.41486958, -0.023498302, -0.37900022, -0.31752598, 0.13758768, -0.18782206, -0.31358528, 0.3330786, -0.4039293, -0.06539036, 0.032599606, 0.10663507, -0.26369813, -0.17365438, 0.20723309, 0.1801556) * go_1(0.0, 0.0); + result += mat4(0.004117444, -0.14894462, 0.14915143, -0.047375835, -0.2609916, -0.10172324, -0.14925237, -0.33830285, 0.12131607, -0.18156646, -0.42382464, -0.052582145, 0.2329045, -0.4576963, 0.13756892, 0.055571318) * go_1(0.0, 1.0); + result += mat4(-0.31689477, 0.017058033, -0.01904924, -0.016893756, -0.011479519, 0.07316262, -0.07086077, 0.08923511, -0.08190091, -0.025866933, -0.06909204, -0.028601022, 0.023224542, 0.03082087, 0.2230426, -0.16713654) * go_1(1.0, -1.0); + result += mat4(0.13457374, 0.110913865, -0.1130815, -0.031438913, -0.55201167, 0.04831016, 0.25107765, -0.014003224, 0.19532952, 0.02062346, 0.04839241, 0.088673405, 0.30325848, -0.20222804, -0.085780576, 0.22512968) * go_1(1.0, 0.0); + result += mat4(0.076354, 0.021940092, -0.16170324, 0.0025543426, -0.0032400405, -0.0046705627, 0.06241069, -0.031247333, 0.098353796, 0.03723474, 0.22971998, -0.017877292, 0.119858086, 0.008041448, 0.2140585, 0.10343376) * go_1(1.0, 1.0); + result += mat4(0.08627595, 0.04532834, 0.027579082, -0.16222088, 0.15583228, -0.14371829, -0.07243855, -0.111895435, -0.14438897, -0.10250594, 0.0034202964, -0.066547595, -0.034390844, -0.021545287, 0.014540157, -0.10215731) * go_2(-1.0, -1.0); + result += mat4(0.19720152, 0.21534947, 0.1130938, -0.011730973, 0.013247983, -0.10344174, -0.1906514, -0.015767017, -0.020093633, -0.26487067, -0.005960781, -0.057149183, 0.030110173, 0.047692046, -0.19308545, -0.25292158) * go_2(-1.0, 0.0); + result += mat4(0.039498243, 0.053682897, -0.01844695, -0.017540915, 0.039454967, -0.27696076, 0.09503274, -0.038958035, 0.17321438, -0.036311295, 0.03123055, 0.02310311, 0.040591653, 0.0054627894, -0.03520426, -0.026101988) * go_2(-1.0, 1.0); + result += mat4(0.055991564, 0.06512919, -0.12532505, 0.024075158, -0.04926237, -0.11701171, 0.026792146, 0.013033238, -0.052847516, -0.01550091, -0.008442071, -0.077945165, -0.033220004, -0.13678443, -0.07040586, 0.121846326) * go_2(0.0, -1.0); + result += mat4(-0.19537796, -0.016634773, 0.10707109, -0.024361614, -0.16002733, -0.44066608, 0.16488662, 0.013152995, 0.22407806, 0.12854017, 0.19028598, -0.08379244, -0.05594235, -0.15909895, 0.511962, 0.39027596) * go_2(0.0, 0.0); + result += mat4(-0.032652248, 0.06004893, 0.011166194, 0.102761306, -0.035113614, -0.29961765, -0.013817978, 0.20938557, 0.08488225, -0.1118558, -0.0375328, -0.035511103, 0.0046933405, 0.20203683, -0.13552529, -0.12685429) * go_2(0.0, 1.0); + result += mat4(0.03054923, 0.08224908, -0.059128158, -0.02583655, -0.02133876, 0.0048713544, 0.10848829, 0.06324404, 0.028332822, -0.011002306, -0.027557913, -0.06072362, 0.1019048, -0.02587316, 0.08563405, -0.08119947) * go_2(1.0, -1.0); + result += mat4(-0.10568117, 0.1075248, 0.19379964, -0.14337265, 0.019374132, -0.0907804, -0.13827625, -0.03628561, 0.014735499, -0.026882607, -0.25948793, 0.034926686, -0.05988073, -0.22735636, 0.053511668, 0.04765336) * go_2(1.0, 0.0); + result += mat4(-0.029848114, 0.09183966, 0.084713496, 0.09422864, 0.069713995, -0.10584984, -0.020899031, 0.059645247, -0.075805016, -0.01828552, 0.06689195, -0.13804196, -0.023465823, -0.034038994, -0.12946706, 0.058709413) * go_2(1.0, 1.0); + result += mat4(0.061918218, 0.038984764, 0.013660938, -0.19340219, -0.014949839, 0.12946278, 0.12725051, 0.13429146, 0.05993008, -0.015394284, 0.011232483, 0.0344157, 0.022161875, -0.023923954, 0.061736204, 0.025963215) * go_3(-1.0, -1.0); + result += mat4(0.048136763, 0.03162042, -0.01967249, 0.06374493, 0.034645267, 0.22403605, 0.036197048, -0.06903216, -0.1024706, -0.0005459356, 0.049185563, 0.16309108, 0.07394778, 0.10351343, 0.28430694, -0.13531347) * go_3(-1.0, 0.0); + result += mat4(-0.14705071, -0.09458433, 0.03063114, 0.07901115, -0.11911086, -0.06428132, -0.013549552, -0.041342866, -0.20770676, -0.15104479, 0.054365363, -0.11652907, 0.05639815, 0.070518605, 0.0017846811, -0.00056205114) * go_3(-1.0, 1.0); + result += mat4(0.27148908, 0.07358356, 0.13644488, -0.13824654, 0.0112991175, -0.021521023, -0.10197379, 0.007816017, -0.13314332, 0.12318473, -0.043214846, -0.15759036, -0.19744353, -0.10267182, -0.28249928, 0.11233295) * go_3(0.0, -1.0); + result += mat4(-0.096474804, 0.17893109, 0.014679829, -0.21218887, -0.24170275, 0.10603527, 0.05375366, -0.059315052, 0.17087384, 0.13633691, -0.37958893, 0.43264794, 0.17829923, 0.06485103, -0.37551817, -0.22082718) * go_3(0.0, 0.0); + result += mat4(-0.30536333, -0.033212308, -0.25232, 0.11730442, -0.11176368, 0.26223183, -0.049025323, -0.01375941, -0.29028055, 0.16842811, -0.035684332, -0.4180911, -0.1611732, 0.07683385, -0.14263596, 0.17508087) * go_3(0.0, 1.0); + result += mat4(0.23580009, 0.025621435, -0.15757325, 0.008123166, -0.021905439, -0.02162503, -0.059497356, -0.01636353, 0.047654126, -0.084423855, -0.033733923, 0.0127116265, -0.059593942, -0.053935718, -0.050729543, 0.013887048) * go_3(1.0, -1.0); + result += mat4(-0.19232626, 0.07915767, -0.05909752, 0.007695347, 0.058876406, 0.057521783, -0.080253534, 0.2011056, -0.27965516, -0.08033169, -0.13025513, 0.12854645, 0.053400308, -0.18445957, -0.18463044, 0.27920377) * go_3(1.0, 0.0); + result += mat4(-0.061806213, -0.020037206, 0.003183183, -0.029844081, -0.039553937, 0.028905323, -0.11367984, -0.097321615, -0.10112643, 0.0039709485, -0.06020118, -0.23871279, -0.077974856, 0.05806996, -0.21440302, 0.11898043) * go_3(1.0, 1.0); + result += vec4(-0.023832673, 0.03702965, -0.04749135, -0.10982549); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_5_tf +//!BIND conv2d_5_tf1 +//!SAVE conv2d_6_tf +//!WIDTH conv2d_5_tf.w +//!HEIGHT conv2d_5_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_5_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_5_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_5_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_5_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.030931145, 0.013683292, -0.0650242, -0.028732346, 0.120067924, -0.029404473, 0.0038229884, -0.14631765, 0.041900825, -0.076596744, -0.11096378, -0.27100095, 0.0052598766, -0.05929686, -0.06816563, -0.086864315) * go_0(-1.0, -1.0); + result += mat4(-0.043620087, -0.16360405, 0.006527374, 0.15706524, 0.08338088, -0.19027525, 0.22595987, -0.054963548, 0.01825031, -0.03149212, 0.025471251, 0.06429379, -0.011633275, -0.079389006, -0.0030728737, 0.17345747) * go_0(-1.0, 0.0); + result += mat4(-0.011275288, -0.10668036, 0.05718997, 0.010336089, 0.33393976, -0.2029354, 0.075444475, -0.092244044, 0.07605498, 0.20125951, 0.10493973, -0.12306946, 0.03658231, 0.08233366, -0.12205888, -0.116969004) * go_0(-1.0, 1.0); + result += mat4(-0.0070305974, 0.105127215, 0.006041873, 0.26743913, 0.028119443, 0.14823505, -0.28344348, 0.12362866, -0.1215781, 0.08104382, 0.102011785, 0.085380934, 0.061244503, -0.06230063, -0.05353345, 0.1166729) * go_0(0.0, -1.0); + result += mat4(0.08945733, 0.4101902, -0.06404005, 0.040728435, 0.13076581, -0.20805469, -0.10897316, -0.14924604, 0.10090762, 0.015475414, 0.26346552, 0.12096677, -0.20199244, 0.2780031, 0.18515368, 0.35105625) * go_0(0.0, 0.0); + result += mat4(0.07463155, 0.26932517, -0.06768551, 0.10470878, -0.1423996, 0.013550665, -0.06167201, -0.1022994, -0.3107166, -0.15609552, 0.1695213, -0.1277181, 0.12582655, -0.1596128, 0.015612055, -0.19826376) * go_0(0.0, 1.0); + result += mat4(0.011745468, 0.006471601, 0.008110513, 0.025831396, 0.1272883, -0.221959, 0.11993834, -0.007903633, 0.009993582, -0.10170755, 0.026594637, -0.027883623, 0.030666083, -0.036415886, 0.007469573, 0.0674783) * go_0(1.0, -1.0); + result += mat4(-0.022760388, -0.10911659, -0.012589904, -0.046462692, 0.36987287, 0.71668935, -0.04466556, 0.12082762, 0.0026539841, 0.07070946, -0.00020439121, -0.13925348, 0.08672072, 0.20075354, -0.066352285, 0.14655356) * go_0(1.0, 0.0); + result += mat4(-0.081081845, -0.21956222, 0.06781787, -0.106362104, -0.03016425, -0.010460211, -0.009725996, -0.009805538, 0.07037355, 0.19254607, 0.038890257, 0.29580075, -0.10355764, 0.12613009, 0.02485986, -0.031927988) * go_0(1.0, 1.0); + result += mat4(-0.13882205, 0.21770848, 0.015392157, 0.010310204, 0.008225721, 0.07457836, 0.09984027, -0.25452816, 0.2193511, -0.22262146, -0.12950355, 0.026151875, 0.022114651, -0.030566849, 0.034688126, 0.03047327) * go_1(-1.0, -1.0); + result += mat4(0.0363441, 0.19290726, -0.1143055, 0.30871987, -0.05780708, 0.082128406, -0.115280904, 0.07636388, 0.48947453, -0.29715258, 0.146737, -0.3275992, -0.055972476, -0.09991753, 0.17435446, 0.10917291) * go_1(-1.0, 0.0); + result += mat4(0.026389305, 0.054523308, -0.028950177, 0.06913328, -0.18626037, 0.08829993, 0.10407121, 0.001246911, 0.103938825, -0.3117343, -0.045564886, 0.07316613, 0.0027089121, 0.099437356, -0.046500806, -0.0927284) * go_1(-1.0, 1.0); + result += mat4(0.051037624, -0.2068234, 0.061572235, -0.3345198, 0.16960172, -0.30289862, -0.002583443, 0.39312238, 0.08246557, 0.16374862, -0.31902805, -0.13205275, -0.032050006, 0.01670186, 0.13852347, 0.120012194) * go_1(0.0, -1.0); + result += mat4(-0.67096996, -0.06274476, 0.18575665, 0.80282855, 0.23201196, -0.0054729837, 0.050396994, -0.42014772, 0.34904522, 0.26281372, 0.24697208, 0.55475426, 0.49850988, -0.06581312, -0.0068906257, -0.15741143) * go_1(0.0, 0.0); + result += mat4(-0.04252036, -0.28224963, 0.009723064, 0.116357096, 0.2992567, -0.26702902, -0.05648925, 0.12729199, -0.37574205, 0.54211813, -0.25248805, -0.13023548, 0.18903324, -0.5182459, 0.0141203115, -0.19444294) * go_1(0.0, 1.0); + result += mat4(-0.0017735233, -0.010132458, -0.040924776, -0.13767008, 0.20757031, -0.06509882, -0.09756446, 0.018974079, 0.090851985, -0.010158765, -0.03999607, -0.12055641, 0.03629025, -0.018645551, -0.05506811, -0.014202848) * go_1(1.0, -1.0); + result += mat4(0.16203491, 0.011118734, -0.18486023, -0.024290733, -0.3673846, -0.20295864, 0.23055002, -0.1555852, -0.02706522, 0.03262891, 0.008724611, -0.03760652, -0.20946771, -0.01951837, 0.16955496, 0.11690098) * go_1(1.0, 0.0); + result += mat4(0.0783421, 0.22656651, -0.15715368, -0.024174158, 0.020260733, 0.032390315, -0.029133298, 0.086601086, 0.13871798, -0.12525433, 0.16097449, 0.058946393, 0.029865682, 0.08508385, 0.040569812, -0.09402932) * go_1(1.0, 1.0); + result += mat4(-0.05063873, 0.11269313, -0.057484943, -0.13579641, 0.047973365, -0.07103839, -0.07838756, -0.0028928046, -0.019466015, 0.018428024, 0.010016324, -0.057396665, -0.19495595, 0.034307264, -0.022888038, 0.08112259) * go_2(-1.0, -1.0); + result += mat4(-0.09790086, 0.10613111, 0.06611674, 0.19356097, -0.00073371036, -0.019078335, 0.076719105, -0.016212497, -0.3283475, -0.07547389, -0.08140701, 0.3185625, -0.25060275, 0.16820994, -0.123497784, 0.43272668) * go_2(-1.0, 0.0); + result += mat4(-0.06365342, 0.11186735, -0.17493224, -0.04207358, 0.0003117533, 0.034089327, -3.067692e-05, -0.03422754, 0.16267666, 0.054771993, 0.048384454, -0.041866794, 0.0036008756, 0.0021496525, 0.20258942, -0.06297619) * go_2(-1.0, 1.0); + result += mat4(0.03578836, 0.08763908, -0.22370125, -0.32465744, 0.019142643, 0.011316954, 0.17920344, 0.031633645, 0.03766343, -0.116487674, -0.05281752, -0.018965483, 0.049297336, -0.34511214, 0.42598158, 0.051361635) * go_2(0.0, -1.0); + result += mat4(0.26638633, -0.33628765, 0.04437907, 0.09616201, -0.020049393, 0.2560829, -0.027108455, 0.255752, 0.3666511, 0.052277412, -0.46667686, 0.48482272, 0.51302284, -0.06941614, -0.17967525, -0.07889891) * go_2(0.0, 0.0); + result += mat4(0.18503937, 0.088710256, 0.2083147, -0.20758459, -0.036416974, 0.018303726, 0.03729963, -0.035969947, -0.2685231, -0.42169708, -0.039593916, -0.02642618, 0.29050872, -0.25723743, -0.111259766, 0.15001127) * go_2(0.0, 1.0); + result += mat4(-0.026473878, -0.07241443, 0.022400148, -0.03214132, 0.0859297, -0.0036677981, -0.07039137, 0.03703108, 0.042322673, -0.01222808, -0.08151938, 0.033109214, -0.048737407, 0.25929528, -0.40535828, -0.123594694) * go_2(1.0, -1.0); + result += mat4(0.10233285, 0.22455986, -0.13368733, 0.033236265, -0.052114893, -0.11709317, 0.009709581, 0.19201641, -0.02973698, 0.032114245, -0.09771862, 0.085680574, 0.15827927, -0.15042172, 0.21833214, -0.13262676) * go_2(1.0, 0.0); + result += mat4(-0.08460587, -0.09473209, 0.019323658, -0.057233352, 0.0019434267, -0.14437936, 0.034232683, 0.0030602294, -0.023598112, 0.10692026, -0.09960999, 0.005887181, 0.014738836, -0.32473162, -0.10886747, -0.08365826) * go_2(1.0, 1.0); + result += mat4(0.10900178, 0.00080280803, -0.14009437, -0.053074867, -0.07811151, -0.03456029, -0.104943685, 0.016918905, -0.11335709, 0.079421654, 0.13481963, 0.037818357, -0.027339859, 0.05856774, -0.044562265, 0.03908084) * go_3(-1.0, -1.0); + result += mat4(0.07628258, -0.23815769, 0.2840278, -0.3541637, -0.044292126, -0.09310441, -0.1335055, -0.031899665, -0.11981227, 0.24012394, -0.041896038, -0.10168982, 0.20248915, -0.10036763, -0.044115108, 0.08520525) * go_3(-1.0, 0.0); + result += mat4(0.07234102, -0.119480744, -0.01401321, -0.025182616, -0.031284854, -0.050089385, 0.014808948, 0.038662236, -0.18539418, 0.017342187, 0.023812262, 0.13428104, 0.020824855, -0.07433546, 0.054307282, 0.08511016) * go_3(-1.0, 1.0); + result += mat4(-0.11046813, -0.04663274, 0.33497185, 0.023273284, -0.24681108, 0.116665915, 0.12045893, 0.13306482, -0.039098527, 0.04747061, 0.042796664, 0.053514794, 0.011861975, -0.048702, 0.008408589, -0.09497112) * go_3(0.0, -1.0); + result += mat4(0.34634927, 0.37973458, -0.79267627, -0.7362719, 0.35489878, -0.07635863, 0.24082923, -0.27480397, -0.3236968, -0.25523046, 0.05118527, -0.040529836, -0.6000509, 0.39020586, 0.27632973, 0.5141453) * go_3(0.0, 0.0); + result += mat4(0.16761221, -0.033125393, 0.00561569, 0.083019435, -0.101278506, 0.07810264, 0.12060661, 0.16048536, 0.14257826, -0.15996903, 0.018831912, -0.094429865, -0.22227801, 0.426937, -0.054677445, 0.05067348) * go_3(0.0, 1.0); + result += mat4(0.02233958, 0.02608942, -0.045318656, 0.06509929, 0.035911568, 0.025316885, 0.0840986, 0.08326237, 0.048455603, -0.13630742, 0.07230253, -0.047261715, -0.092630014, 0.04786565, 0.10354939, -0.07094341) * go_3(1.0, -1.0); + result += mat4(-0.1463382, -0.14900577, 0.2835977, -0.106733374, -0.11554754, -0.168429, -0.1411373, -0.20654152, -0.06388508, 0.039648015, 0.08543832, -0.13253337, 0.017264463, -0.06346233, -0.10823598, 0.067361064) * go_3(1.0, 0.0); + result += mat4(0.04419582, 0.039152585, 0.06222691, 0.05757103, 0.012084537, 0.051425997, -0.061130576, 0.16752882, 0.07497411, 0.13495837, -0.15585983, -0.02050144, -0.08555421, -0.09147339, 0.025115604, 0.05948922) * go_3(1.0, 1.0); + result += vec4(0.00590038, 0.03082865, 0.002111702, -0.03330112); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x3x3x16 +//!HOOK MAIN +//!BIND conv2d_5_tf +//!BIND conv2d_5_tf1 +//!SAVE conv2d_6_tf1 +//!WIDTH conv2d_5_tf.w +//!HEIGHT conv2d_5_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define go_0(x_off, y_off) (max((conv2d_5_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_1(x_off, y_off) (max((conv2d_5_tf1_texOff(vec2(x_off, y_off))), 0.0)) +#define go_2(x_off, y_off) (max(-(conv2d_5_tf_texOff(vec2(x_off, y_off))), 0.0)) +#define go_3(x_off, y_off) (max(-(conv2d_5_tf1_texOff(vec2(x_off, y_off))), 0.0)) +vec4 hook() { + vec4 result = mat4(0.009029573, 0.029218858, 0.029705316, -0.019268971, -0.0023235187, -0.072589695, 0.1424836, 0.09049359, 0.04342995, 0.18134294, 0.018145641, 0.14789368, 0.050923645, 0.06524081, 0.036812488, 0.11108108) * go_0(-1.0, -1.0); + result += mat4(-0.026506428, 0.016968496, 0.015961196, 0.010030791, -0.3141888, -0.06769598, -0.23920257, -0.031002127, -0.07351358, -0.19290134, -0.24282931, -0.18831016, -0.0928966, 0.075177215, -0.19699521, -0.05810917) * go_0(-1.0, 0.0); + result += mat4(-0.017991852, -0.079427645, 0.035970494, -0.017095685, -0.27197137, -0.20046075, 0.2616644, 0.021876303, -0.077394076, -0.04978692, 0.20363241, -0.013741705, -0.032103598, 0.14403099, 0.01442474, 0.048115995) * go_0(-1.0, 1.0); + result += mat4(-0.16939245, -0.001777, 0.026244136, -0.14122388, -0.056853324, 0.54357284, -0.19769607, -0.03187079, 0.04559263, -0.16048127, 0.12830622, 0.1442168, 0.006611398, -0.01618195, 0.012860053, -0.16539487) * go_0(0.0, -1.0); + result += mat4(0.13116026, -0.006161343, 0.7209969, 0.18338475, 0.3099777, 0.6500026, 0.3883795, -0.021434233, 0.31667513, 0.008917659, 0.14124091, -0.22335114, 0.12198921, -0.16449445, 0.08773425, 0.30054978) * go_0(0.0, 0.0); + result += mat4(-0.10413989, -0.10316161, 0.04342709, -0.021252686, 0.120892406, 0.37798002, -0.35963747, 0.021069285, 0.37587845, -0.08159587, 0.011139747, 0.2501104, -0.094568014, 0.037900843, -0.025109999, -0.030106556) * go_0(0.0, 1.0); + result += mat4(0.09680291, -0.040868275, 0.051731605, 0.089064725, -0.56098557, -0.38148618, -0.017037416, 0.08508287, -0.019247344, 0.019857002, -0.03512887, 0.031057188, -0.09648583, -0.04474188, 0.028748507, -0.11880965) * go_0(1.0, -1.0); + result += mat4(-0.010236943, 0.04257042, -0.08202597, -0.004203426, -0.26801527, -0.11716526, -0.017402772, -0.05819106, -0.13394608, 0.0234606, -0.15404865, -0.06801164, -0.0047627664, -0.1975249, 0.09420144, 0.23249897) * go_0(1.0, 0.0); + result += mat4(0.107361935, 0.07373787, 0.06242962, 0.05236332, -0.028867323, 0.025924044, -0.042526353, -0.0015729597, -0.1323144, -0.4040712, 0.023919407, -0.09535502, 0.049100045, 0.081110805, 0.08946112, 0.058505684) * go_0(1.0, 1.0); + result += mat4(0.13236825, -0.04468476, -0.04426802, 0.031087106, -0.09093992, -0.07470971, -0.01591504, 0.05924266, -0.21910913, 0.065537, -0.18358919, -0.02533145, -0.1512009, -0.04953928, 0.015540006, -0.0043442883) * go_1(-1.0, -1.0); + result += mat4(-0.14016777, -0.1086958, 0.16316028, 0.050777458, 0.23148167, 0.04944809, -0.10599886, -0.10447021, -0.40729257, -0.10926556, 0.069055155, 0.110635415, 0.108922414, -0.1716362, 0.10743909, -0.102534756) * go_1(-1.0, 0.0); + result += mat4(0.017795928, -0.066930935, 0.09396082, 0.092585504, 0.14223933, 0.059458215, 0.072033696, -0.04507726, -0.19956456, 0.1251282, -0.31733638, -0.10465904, 0.08546377, 0.048638333, 0.031372465, -0.08720661) * go_1(-1.0, 1.0); + result += mat4(0.108719654, -0.092161916, -0.014724377, 0.20068261, -0.24350016, 0.2113636, -0.07483714, -0.45665312, -0.25134233, 0.2753893, -0.11324696, -0.04472, 0.1576102, -0.045395147, 0.06013951, -0.12507361) * go_1(0.0, -1.0); + result += mat4(0.546225, -0.281897, 0.19477816, -0.116612464, -0.3145171, -0.41660902, 0.333625, 0.35902345, 0.48333502, 0.4662005, 0.10222491, -0.15314859, -0.3036888, 0.22849742, 0.20740797, 0.41399437) * go_1(0.0, 0.0); + result += mat4(0.007284074, 0.0393942, -0.31192186, -0.15687793, -0.289214, -0.015956698, -0.24718472, -0.1637855, -0.00765037, 0.26677555, 0.20215511, 0.37790874, -0.22096673, 0.25287116, -0.2446764, -0.13610223) * go_1(0.0, 1.0); + result += mat4(-0.16734968, 0.16721225, -0.053508647, -0.041097626, 0.062356673, 0.07812319, -0.263546, -0.39739034, 0.003389846, 0.12676363, -0.13175991, -0.19019242, -0.011847587, -0.007580052, -0.023946386, 0.046034034) * go_1(1.0, -1.0); + result += mat4(-0.17047611, 0.13298693, -0.07506747, -0.045542978, 0.33571973, 0.20192616, 0.30674616, 0.25668672, -0.24134545, 0.031693842, -0.009647641, 0.040534843, 0.03159419, -0.1100516, 0.11371316, 0.06098735) * go_1(1.0, 0.0); + result += mat4(-0.05518961, 0.19402988, -0.09646874, -0.059196774, -0.0073436056, -0.1381309, 0.06868669, 0.061328378, -0.1480867, -0.15774113, -0.022572191, 0.122521356, -0.04067007, -0.10145177, 0.13006335, -0.099452734) * go_1(1.0, 1.0); + result += mat4(0.06962972, 0.07768411, 0.021085173, 0.108355984, -0.03132525, 0.10220273, -0.11626593, -0.14104277, 0.018778645, -0.024237925, 0.048783034, 0.09074447, 0.4120426, -0.01948466, 0.073218934, 0.055681944) * go_2(-1.0, -1.0); + result += mat4(-0.22553118, -0.12923603, -0.22068842, -0.35037905, 0.005709937, -0.09528472, 0.08718399, 0.13200706, 0.17220478, 0.096844435, -0.30439013, -0.14122063, 0.15733318, -0.1014675, 0.33836862, 0.042193163) * go_2(-1.0, 0.0); + result += mat4(0.15826897, -0.034870047, 0.09295099, -0.17674965, -0.042326324, 0.06680338, -0.074267656, -0.0631393, -0.11267909, -0.19795708, 0.22005288, 0.35703793, 0.033995766, -0.12663686, -0.02449896, -0.123250045) * go_2(-1.0, 1.0); + result += mat4(0.021434195, 0.058398597, 0.04828315, -0.0016824572, -0.04291545, -0.0744907, -0.07698706, -0.15937585, -0.18852457, -0.17966963, 0.023800725, 0.025979731, -0.51412296, -0.018316887, -0.23076254, -0.12298674) * go_2(0.0, -1.0); + result += mat4(0.16054317, -0.0002730893, -0.54173076, -0.62443435, 0.04300197, -0.08529622, 0.15392275, 0.15742144, 0.025834514, -0.2800517, -0.17600477, 0.0020806703, -0.3010582, 0.45233512, 0.25595665, 0.103661336) * go_2(0.0, 0.0); + result += mat4(-0.024034392, -0.43800178, 0.28606912, -0.20908915, 0.078471914, -0.030501373, -0.059055753, 0.050494444, 0.063274644, -0.025071034, 0.17561312, -0.100698635, -0.25631955, 0.039981876, -0.18506624, 0.08366402) * go_2(0.0, 1.0); + result += mat4(-0.1413656, 0.03589635, -0.020917566, 0.017598262, 0.020156413, -0.018854238, 0.027228508, -0.03806087, -0.021715842, 0.071974196, -0.040065665, 0.08459291, -0.23530225, 0.16599682, -0.2772327, 0.10041177) * go_2(1.0, -1.0); + result += mat4(-0.055056706, 0.1286236, -0.11890451, -0.1790546, 0.16517544, -0.040448934, 0.12548013, 0.017075695, 0.07185459, -0.13236302, 0.19354409, 0.12767012, 0.31120765, 0.16378082, -0.036915366, -0.19724306) * go_2(1.0, 0.0); + result += mat4(-0.02225051, 0.033263147, 0.003279449, 0.08826271, -0.047833472, 6.574577e-05, 0.13721916, 0.04801998, -0.014958419, 0.08791209, -0.08076282, 0.024002168, -0.18028922, 0.23835851, -0.23309888, -0.119310364) * go_2(1.0, 1.0); + result += mat4(0.044960875, 0.18821983, 0.027640678, 0.013462449, 0.19011214, 0.21559924, -0.03329638, 0.07234414, 0.030880248, -0.11273214, 0.102028474, 0.12203351, 0.035855662, 0.008828778, 0.007218363, -0.012421797) * go_3(-1.0, -1.0); + result += mat4(-0.09450626, 0.025191775, -0.10738468, 0.16237053, 0.073676676, 0.12488881, -0.048748355, 0.007877263, 0.3572506, -0.07911043, 0.14684045, 0.0015310893, -0.33411503, -0.1151223, 0.004201752, 0.017775744) * go_3(-1.0, 0.0); + result += mat4(-0.10607509, -0.008143826, -0.08448629, -0.27557802, 0.0046665915, 0.008158659, 0.030826218, 0.020516023, 0.2333065, -0.017463414, -0.041772116, -0.03027809, -0.028166672, -0.080471426, 0.048199337, 0.08341059) * go_3(-1.0, 1.0); + result += mat4(-0.14640257, -0.18334304, -0.061674733, 0.0008892598, -0.2374775, -0.2721524, -0.040371176, 0.26362613, 0.19872928, -0.11246391, 0.0842288, 0.11188515, 0.0045209546, -0.04250933, -0.0738212, -0.069005966) * go_3(0.0, -1.0); + result += mat4(-0.08760266, 0.4816288, -0.21241407, 0.22734411, -0.1783721, -0.26842996, 0.099888, -0.2867675, 0.085521065, -0.3780281, -0.018543908, -0.039699722, 0.75688565, -0.5333645, 0.47567275, 0.09518891) * go_3(0.0, 0.0); + result += mat4(-0.04072665, 0.05998423, -0.48314768, -0.29495844, 0.10358383, -0.09816629, 0.028586809, -0.047708735, 0.008320228, 0.04089551, -0.18359782, -0.27615002, 0.12414414, -0.072417594, 0.25932562, 0.30268723) * go_3(0.0, 1.0); + result += mat4(0.14481631, 0.06484443, -0.09898657, -0.06553556, 0.25750044, -0.07265585, 0.12903488, -0.022347894, -0.04693863, -0.000107379274, 0.030295763, -0.0325354, 0.086214684, -0.021326948, 0.039682828, -0.034843277) * go_3(1.0, -1.0); + result += mat4(-0.031971477, -0.25145087, 0.03931631, 0.14262606, -0.06044626, 0.22820354, -0.10506207, 0.18064679, 0.0069641788, 0.01477993, -0.003626875, 0.118767865, 0.109416224, -0.002998205, 0.035680585, 0.07843882) * go_3(1.0, 0.0); + result += mat4(0.03375426, -0.059815384, 0.11632834, -0.12411481, 0.022583738, 0.02544465, -0.054889992, -0.07031964, -0.10140042, 0.16750422, -0.1448294, -0.09316004, 0.035582513, -0.026138382, -0.031955894, 0.040148776) * go_3(1.0, 1.0); + result += vec4(-0.03573331, 0.032919675, 0.011109369, 0.008329268); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x1x1x112 +//!HOOK MAIN +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_5_tf +//!BIND conv2d_5_tf1 +//!BIND conv2d_6_tf +//!BIND conv2d_6_tf1 +//!SAVE conv2d_last_tf +//!WIDTH conv2d_tf.w +//!HEIGHT conv2d_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define g_0 (max((conv2d_tf_tex(conv2d_tf_pos)), 0.0)) +#define g_1 (max((conv2d_tf1_tex(conv2d_tf1_pos)), 0.0)) +#define g_2 (max(-(conv2d_tf_tex(conv2d_tf_pos)), 0.0)) +#define g_3 (max(-(conv2d_tf1_tex(conv2d_tf1_pos)), 0.0)) +#define g_4 (max((conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0)) +#define g_5 (max((conv2d_1_tf1_tex(conv2d_1_tf1_pos)), 0.0)) +#define g_6 (max(-(conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0)) +#define g_7 (max(-(conv2d_1_tf1_tex(conv2d_1_tf1_pos)), 0.0)) +#define g_8 (max((conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0)) +#define g_9 (max((conv2d_2_tf1_tex(conv2d_2_tf1_pos)), 0.0)) +#define g_10 (max(-(conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0)) +#define g_11 (max(-(conv2d_2_tf1_tex(conv2d_2_tf1_pos)), 0.0)) +#define g_12 (max((conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0)) +#define g_13 (max((conv2d_3_tf1_tex(conv2d_3_tf1_pos)), 0.0)) +#define g_14 (max(-(conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0)) +#define g_15 (max(-(conv2d_3_tf1_tex(conv2d_3_tf1_pos)), 0.0)) +#define g_16 (max((conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0)) +#define g_17 (max((conv2d_4_tf1_tex(conv2d_4_tf1_pos)), 0.0)) +#define g_18 (max(-(conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0)) +#define g_19 (max(-(conv2d_4_tf1_tex(conv2d_4_tf1_pos)), 0.0)) +#define g_20 (max((conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0)) +#define g_21 (max((conv2d_5_tf1_tex(conv2d_5_tf1_pos)), 0.0)) +#define g_22 (max(-(conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0)) +#define g_23 (max(-(conv2d_5_tf1_tex(conv2d_5_tf1_pos)), 0.0)) +#define g_24 (max((conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0)) +#define g_25 (max((conv2d_6_tf1_tex(conv2d_6_tf1_pos)), 0.0)) +#define g_26 (max(-(conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0)) +#define g_27 (max(-(conv2d_6_tf1_tex(conv2d_6_tf1_pos)), 0.0)) +vec4 hook() { + vec4 result = mat4(-0.11498094, -0.053904895, -0.11520678, -0.05479549, 0.028396055, 0.032767884, 0.052479446, 0.05257866, -0.25706592, -0.3454966, -0.24713765, -0.2854201, -0.10287636, 0.0023146886, -0.09190338, -0.011193905) * g_0; + result += mat4(-0.05461422, 0.008780496, -0.07738697, -0.032230727, -0.047554165, -0.025061952, -0.051897213, -0.009545297, -0.14548294, -0.15184018, -0.01313442, -0.015299784, -0.0007883845, -0.12866738, -0.15260352, -0.27081275) * g_1; + result += mat4(0.11007706, 0.035344437, 0.11020841, 0.0425353, 0.1613199, 0.18417408, 0.09274313, 0.11943135, 0.106862, 0.079875536, 0.0937752, 0.068030775, 0.029093558, -0.06441164, 0.06467169, -0.021989612) * g_2; + result += mat4(0.049548414, -0.012455486, 0.07185561, 0.021865537, 0.020969186, -0.03374196, -0.024260623, -0.07739141, 0.07164591, 0.12741035, 0.0379913, 0.076403245, 0.07049977, 0.0744538, 0.0062989634, 0.01818882) * g_3; + result += mat4(-0.12511204, -0.010836819, 0.13709816, 0.22472954, 0.21280868, -0.006484726, 0.17554289, -0.009977173, 0.078398876, 0.20698707, 0.13432744, 0.29740283, -0.24750128, -0.32757792, -0.19807857, -0.2537023) * g_4; + result += mat4(-0.27207088, -0.1385644, -0.2166476, -0.07687419, -0.20300622, -0.29678395, -0.13135734, -0.20851587, 0.0361364, 0.011243289, -0.06845459, -0.11796941, 0.11575868, 0.070215136, -0.10295678, -0.12281369) * g_5; + result += mat4(0.13619795, -0.0019436983, -0.12701888, -0.25933513, -0.20134166, 0.00062823144, -0.076756015, 0.11002947, 0.0059049693, -0.18756741, -0.0718802, -0.2589954, 0.23413423, 0.30107784, 0.14445266, 0.18920745) * g_6; + result += mat4(0.1494216, 0.0587532, 0.05478662, -0.039123338, 0.23322394, 0.29950607, 0.24384268, 0.27843767, -0.16094431, -0.04705998, -0.016345032, 0.028868208, -0.102872886, -0.04659664, 0.104105346, 0.14305067) * g_7; + result += mat4(-0.001037014, 0.010001526, -0.0052278573, 0.024779709, 0.06857274, 0.067640975, 0.085439384, 0.09242789, -0.066597246, -0.055928994, 0.0015658981, 0.016131008, -0.03524695, -0.018364554, -0.047754433, -0.014295886) * g_8; + result += mat4(-0.042207, 0.02835915, -0.1404656, -0.08563323, -0.030979915, -0.0673764, 0.10733943, 0.057902794, 0.00022424995, -0.0023634837, -0.10778953, -0.10202357, -0.020368295, -0.019088887, -0.06875738, -0.08504131) * g_9; + result += mat4(-0.00043458896, 0.00045652856, -0.02016843, -0.020062413, -0.08740103, -0.042085808, -0.10644177, -0.09226477, 0.11212161, -0.00048174805, 0.021872435, -0.05868698, 0.0333954, 0.058184672, 0.05532576, 0.07621587) * g_10; + result += mat4(0.054245148, 0.001020329, 0.09106849, 0.05303779, 0.009889632, 0.01309413, -0.09187347, -0.08618193, -0.011621187, 0.016222361, 0.061095525, 0.060885344, 0.078050986, 0.0111776795, 0.08829944, 0.032022282) * g_11; + result += mat4(0.01643529, 0.02285545, -0.03498564, 0.00769657, -0.0042474116, 0.015836312, -0.025771018, -0.0016368, -0.008897948, -0.012588166, -0.01416411, -0.003578984, 0.025991246, 0.021237152, 0.017450012, 0.025172485) * g_12; + result += mat4(0.014568868, 0.017796224, -0.036679734, -0.03138748, 0.019457601, -0.027607411, -0.004529679, -0.038048342, -0.054055385, -0.03876025, 0.041948095, 0.005869784, 0.02439633, 0.05177997, 0.016000897, 0.0057169925) * g_13; + result += mat4(-0.03021866, 0.017678728, -0.01371109, 0.013548159, -0.0038099394, -0.014066414, 0.028093752, 0.0027308422, -0.010615999, 0.012673458, -0.03028171, -0.016818244, -0.06530097, -0.018845048, -0.0072947564, -0.0038243714) * g_14; + result += mat4(-0.019006258, -0.007847591, 0.03690709, 0.06714211, 0.0073993434, -0.009766907, -0.0021441753, -0.01308625, 0.06658726, 0.06701995, -0.027305668, -0.016032105, -0.028976806, -0.0036668575, -0.0027825525, 0.0105632655) * g_15; + result += mat4(0.028945107, -0.0014701135, 0.048950657, -0.01923516, -0.0014054152, 0.002650635, -0.005300331, 0.004860559, 0.011158468, 0.005940625, -0.012095051, 0.0041518128, -0.020433836, -0.025870577, -0.0007547932, -0.026509356) * g_16; + result += mat4(-0.004545374, 0.04264545, 0.021741537, 0.029115127, 0.04225599, -0.0055392785, 0.026570829, -0.031795148, -0.008307126, 0.020176455, 0.010904648, 0.017765503, -0.10806103, -0.01776947, 0.00070428237, -0.06356262) * g_17; + result += mat4(-0.05663172, 0.05908046, -0.03837452, 0.06636983, -0.007960516, -0.06384041, 0.023125881, -0.030108837, 0.0038054318, -0.023263922, 0.020264054, -0.0062937695, 0.031630237, 0.020909082, 0.03594235, 0.035879835) * g_18; + result += mat4(-0.0050448794, 0.033650696, -0.002830413, 0.035174295, -0.024521282, 0.013054315, -0.020833842, 0.037953895, 0.08249671, 0.024239466, -0.012758333, -0.027316988, 0.051040914, 0.0005025873, 0.039778862, 0.0024668393) * g_19; + result += mat4(0.017232442, 0.022482058, 0.020233413, 0.024337437, 0.07986929, 0.06234036, 0.12662584, -0.05271183, -0.009718745, -0.0046989853, -0.0030333172, -0.04034237, -0.0113442, 0.022746231, -0.035293855, -0.009433693) * g_20; + result += mat4(0.015766997, 0.013647276, -0.029327558, 0.039106004, -0.010398323, -0.032851525, 0.02908329, -0.003789618, 0.12963496, 0.010851003, 0.1126276, -0.049255487, 0.06867432, 0.07970792, 0.017840397, -0.026481882) * g_21; + result += mat4(-0.058729574, -0.07886952, 0.033267397, 0.02755372, -0.0172006, 0.012404398, -0.0230168, -0.015059758, -0.09239916, -0.029533267, -0.043251917, 0.0035152994, 0.022931995, 0.101714484, -0.044946067, 0.094993) * g_22; + result += mat4(-0.04708704, -0.032475296, -0.03228093, -0.08810475, 0.013745045, 0.027828002, -0.031922746, 0.022986397, -0.061620213, -0.03694645, -0.055026993, 0.0031291894, -0.028799903, -0.0025357977, -0.03441407, 0.0028600092) * g_23; + result += mat4(0.058981724, -0.10447273, -0.088705614, 0.16546178, -0.023549391, -0.008831522, -0.018411588, 0.029640056, -0.068086684, -0.05414636, -0.029401174, 0.036180343, -0.031988926, -0.047249753, 0.008162177, 0.00548062) * g_24; + result += mat4(0.05287462, -0.030657746, 0.02821435, 0.037005343, 0.03534311, -0.15614955, 0.07085459, -0.11997641, -0.009156166, -0.021968868, -0.054147746, -0.07307657, -0.006428544, -0.017528288, 0.012614676, 0.037840024) * g_25; + result += mat4(-0.021977803, 0.047799855, 0.02660416, -0.07292106, 0.045195807, -0.0056674764, 0.10824326, -0.112114795, 0.1447127, -0.0119616175, 0.0011661504, -0.04553905, 0.13048342, 0.14574122, -0.105522245, -0.102792375) * g_26; + result += mat4(-0.16397473, 0.15785863, -0.06666504, -0.01682913, 0.06070918, 0.070222184, 0.037701584, 0.026657054, -0.0835267, -0.009457008, 0.13232987, 0.13508691, -0.056414206, -0.06818828, 0.079076104, 0.032249212) * g_27; + result += vec4(-0.10795144, -0.09953324, -0.055413827, -0.03875493); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x1x1x112 +//!HOOK MAIN +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_5_tf +//!BIND conv2d_5_tf1 +//!BIND conv2d_6_tf +//!BIND conv2d_6_tf1 +//!SAVE conv2d_last_tf1 +//!WIDTH conv2d_tf.w +//!HEIGHT conv2d_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define g_0 (max((conv2d_tf_tex(conv2d_tf_pos)), 0.0)) +#define g_1 (max((conv2d_tf1_tex(conv2d_tf1_pos)), 0.0)) +#define g_2 (max(-(conv2d_tf_tex(conv2d_tf_pos)), 0.0)) +#define g_3 (max(-(conv2d_tf1_tex(conv2d_tf1_pos)), 0.0)) +#define g_4 (max((conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0)) +#define g_5 (max((conv2d_1_tf1_tex(conv2d_1_tf1_pos)), 0.0)) +#define g_6 (max(-(conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0)) +#define g_7 (max(-(conv2d_1_tf1_tex(conv2d_1_tf1_pos)), 0.0)) +#define g_8 (max((conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0)) +#define g_9 (max((conv2d_2_tf1_tex(conv2d_2_tf1_pos)), 0.0)) +#define g_10 (max(-(conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0)) +#define g_11 (max(-(conv2d_2_tf1_tex(conv2d_2_tf1_pos)), 0.0)) +#define g_12 (max((conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0)) +#define g_13 (max((conv2d_3_tf1_tex(conv2d_3_tf1_pos)), 0.0)) +#define g_14 (max(-(conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0)) +#define g_15 (max(-(conv2d_3_tf1_tex(conv2d_3_tf1_pos)), 0.0)) +#define g_16 (max((conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0)) +#define g_17 (max((conv2d_4_tf1_tex(conv2d_4_tf1_pos)), 0.0)) +#define g_18 (max(-(conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0)) +#define g_19 (max(-(conv2d_4_tf1_tex(conv2d_4_tf1_pos)), 0.0)) +#define g_20 (max((conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0)) +#define g_21 (max((conv2d_5_tf1_tex(conv2d_5_tf1_pos)), 0.0)) +#define g_22 (max(-(conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0)) +#define g_23 (max(-(conv2d_5_tf1_tex(conv2d_5_tf1_pos)), 0.0)) +#define g_24 (max((conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0)) +#define g_25 (max((conv2d_6_tf1_tex(conv2d_6_tf1_pos)), 0.0)) +#define g_26 (max(-(conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0)) +#define g_27 (max(-(conv2d_6_tf1_tex(conv2d_6_tf1_pos)), 0.0)) +vec4 hook() { + vec4 result = mat4(0.024905335, -0.0020974763, 0.02695263, 0.00016802056, -0.024053082, -0.02133723, -0.031614035, -0.031826317, 0.120421864, 0.10555479, 0.08609448, 0.116875134, 0.046175968, 0.04224941, 0.059216674, 0.035143953) * g_0; + result += mat4(0.059397914, 0.016519934, 0.07189327, 0.047407165, 0.04808963, 0.02792908, 0.057017103, 0.034324065, 0.14228246, 0.11275426, 0.088058695, 0.059600517, 0.02063494, 0.052596953, 0.047207687, 0.08789091) * g_1; + result += mat4(-0.013453174, 0.008474715, -0.017593835, 0.009218917, 0.070580654, 0.040542338, 0.08812338, 0.074653216, -0.016356857, 0.015809007, -0.008739107, 0.0097674895, -0.018381525, -0.007775341, -0.040571664, -0.011188163) * g_2; + result += mat4(-0.026196122, -0.034825727, -0.042998232, -0.033436514, -0.01678153, -0.004592797, -0.010311677, 0.0008815291, -0.08899181, -0.10274026, -0.066960976, -0.082430154, -0.057137426, -0.07554528, -0.030993424, -0.050372377) * g_3; + result += mat4(0.022921838, -0.010479244, -0.050794605, -0.073633075, -0.053708922, 0.009594084, -0.071259, -0.01054356, 0.005165821, -0.08024963, -0.049251772, -0.09581235, 0.17995799, 0.09743011, 0.13533138, 0.11643848) * g_4; + result += mat4(0.09727046, 0.07292666, 0.06820908, 0.041535784, -0.0049705, 0.0048759184, -0.035702795, -0.015944308, -0.010730028, 0.018847652, 0.06466244, 0.086318985, -0.05661574, -0.040698618, 0.010839972, 0.0027009705) * g_5; + result += mat4(-0.04628466, 0.010060396, 0.02609333, 0.08664702, 0.057045907, 0.033591177, 0.02186063, -0.024303377, 0.006569828, 0.08025825, 0.016128821, 0.10180713, -0.12228169, -0.112990454, -0.078443415, -0.09126021) * g_6; + result += mat4(-0.12733299, -0.087755, -0.07374111, -0.044979006, -0.025347412, -0.004083168, 0.023782173, 0.02900392, -0.017815407, -0.041119996, -0.057978686, -0.13521095, 0.08364004, 0.06950181, 0.023554614, 0.008043734) * g_7; + result += mat4(0.009062775, -0.003570175, -0.007378757, -0.0018487388, 0.01145638, 0.05217187, -0.008250244, 0.008433307, -0.056756936, -0.044681005, -0.08096105, -0.08033185, -0.023784965, -0.01859799, 0.013042476, 0.021188647) * g_8; + result += mat4(-0.0071619656, -0.012498299, -0.05144986, -0.078112476, -0.034992415, -0.017038302, -0.04464615, -0.044504963, 0.024249, -0.004297534, 0.03674578, 0.03090718, 0.04698553, 0.008344952, 0.057619847, -0.0338724) * g_9; + result += mat4(-0.011845145, -0.0045043705, -1.6646482e-06, -0.0038495932, -0.01992515, 0.004827126, 0.019493148, 0.00862289, 0.10151322, 0.0021909082, 0.09940764, 0.03728846, 0.027824005, 0.04358071, 0.014909185, 0.036326095) * g_10; + result += mat4(0.022513246, 0.028257169, 0.0102195935, 0.03301329, 0.052253865, -0.0021944977, 0.08247392, 0.03256867, -0.040685873, -0.0052207555, -0.0451257, -0.054165114, 0.01647699, 0.0028809097, -0.015233776, -0.0008741886) * g_11; + result += mat4(0.017371105, 0.01597189, -0.052552313, -0.008554715, -0.0023150423, 0.006076517, -0.012868931, 0.0039361073, -0.007524978, -0.004284313, -0.021520883, -0.010327569, 0.02543678, 0.008725823, -0.0073885336, 0.005528395) * g_12; + result += mat4(0.019192757, 0.016561812, 0.0027538154, 0.0013078215, 0.007916496, -0.042525183, -0.013173432, -0.05265476, -0.062195376, -0.011255499, 0.020898128, 0.021532273, -0.001524097, 0.034835674, -0.004051403, -0.0292426) * g_13; + result += mat4(-0.049191684, -9.43322e-06, -0.009106849, 0.012845289, -0.019482708, -0.011163468, 0.0034011535, -0.007062845, -0.006469714, 0.03177786, -0.033006195, -0.0006813464, -0.053963087, 0.00085209147, 0.02734121, 0.034086403) * g_14; + result += mat4(-0.03232248, -0.004037002, -0.010319106, 0.030889064, 0.019604538, 0.0020888883, 0.010277864, 0.000661223, 0.057915937, 0.030683514, 0.00042533095, -0.013019287, -0.015896408, 0.0038484468, -0.0042103594, 0.02174542) * g_15; + result += mat4(0.032975145, 0.0011456647, 0.04913679, -0.017063798, 0.0117176045, 0.007440557, 0.0020480808, 0.009415731, 0.027573857, 0.015140836, -0.01679426, -0.006124731, -0.03206279, -0.029842237, -0.010428016, -0.028513178) * g_16; + result += mat4(-0.00506859, 0.055869613, 0.010164368, 0.027031485, 0.042289548, -0.0054258504, 0.032214936, -0.029970925, -0.0058315448, 0.022889478, 0.01681123, 0.02985076, -0.111186065, -0.02202099, 0.0030994313, -0.062343158) * g_17; + result += mat4(-0.060951103, 0.06079555, -0.0396464, 0.070911355, -0.011480358, -0.06803282, 0.01637355, -0.043100975, -0.00423709, -0.028337711, 0.021635853, 0.0014857082, 0.030084312, 0.018155476, 0.043694943, 0.038795974) * g_18; + result += mat4(-0.0060662925, 0.029721662, -0.008117774, 0.034551267, -0.024477571, 0.018841071, -0.027095588, 0.034495078, 0.082398005, 0.008998768, -0.016399248, -0.043801688, 0.05936684, 0.006066549, 0.045399766, 3.5319943e-05) * g_19; + result += mat4(0.019259382, 0.02494012, 0.029301709, 0.028329274, 0.09122267, 0.06900443, 0.1412115, -0.043169618, -0.01627418, -0.004989528, -0.0042651827, -0.04556752, -0.023623291, 0.013007996, -0.04483056, -0.015727345) * g_20; + result += mat4(0.016332543, 0.016384754, -0.030676385, 0.045312885, -0.0100853555, -0.032632045, 0.031514473, -0.0070776115, 0.13642761, 0.0023589598, 0.12214136, -0.062155515, 0.08240989, 0.08894205, 0.03325406, -0.016589595) * g_21; + result += mat4(-0.06494277, -0.08158925, 0.030425413, 0.019835634, -0.012624623, 0.013942616, -0.030527417, -0.021668324, -0.09444672, -0.033064254, -0.044167448, 0.0011024752, 0.03210801, 0.12662941, -0.03912534, 0.1112649) * g_22; + result += mat4(-0.04716062, -0.03751481, -0.031030515, -0.09067383, 0.0077815712, 0.02169541, -0.035285182, 0.02290573, -0.0704085, -0.03916127, -0.058103334, 0.004915147, -0.0333844, -0.011548617, -0.031151932, -0.00043817286) * g_23; + result += mat4(0.05976319, -0.107285, -0.097245865, 0.17706421, -0.021453341, -0.0047738464, -0.017621001, 0.033400454, -0.07225561, -0.05599672, -0.027600193, 0.038664024, -0.03762786, -0.052429967, 0.0104017975, 0.007116869) * g_24; + result += mat4(0.06014114, -0.029824806, 0.03209269, 0.04392036, 0.031300627, -0.16249833, 0.06878509, -0.12658615, -0.012383169, -0.025043553, -0.06527381, -0.08149099, -0.014006842, -0.018669648, 0.014510818, 0.042045828) * g_25; + result += mat4(-0.023342922, 0.047104675, 0.029629575, -0.082307704, 0.04035797, -0.0013049254, 0.11085582, -0.11031226, 0.14778149, -0.016699014, -0.00634342, -0.055320874, 0.14306462, 0.15896587, -0.110229075, -0.1069649) * g_26; + result += mat4(-0.17449625, 0.15787153, -0.06711028, -0.023110518, 0.06862914, 0.074063435, 0.042682912, 0.029800726, -0.08768606, -0.009814701, 0.14180017, 0.14780663, -0.05672417, -0.074305914, 0.07873489, 0.028458012) * g_27; + result += vec4(0.06026231, 0.040204916, 0.037672628, 0.023496555); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Conv-4x1x1x112 +//!HOOK MAIN +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_5_tf +//!BIND conv2d_5_tf1 +//!BIND conv2d_6_tf +//!BIND conv2d_6_tf1 +//!SAVE conv2d_last_tf2 +//!WIDTH conv2d_tf.w +//!HEIGHT conv2d_tf.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +#define g_0 (max((conv2d_tf_tex(conv2d_tf_pos)), 0.0)) +#define g_1 (max((conv2d_tf1_tex(conv2d_tf1_pos)), 0.0)) +#define g_2 (max(-(conv2d_tf_tex(conv2d_tf_pos)), 0.0)) +#define g_3 (max(-(conv2d_tf1_tex(conv2d_tf1_pos)), 0.0)) +#define g_4 (max((conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0)) +#define g_5 (max((conv2d_1_tf1_tex(conv2d_1_tf1_pos)), 0.0)) +#define g_6 (max(-(conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0)) +#define g_7 (max(-(conv2d_1_tf1_tex(conv2d_1_tf1_pos)), 0.0)) +#define g_8 (max((conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0)) +#define g_9 (max((conv2d_2_tf1_tex(conv2d_2_tf1_pos)), 0.0)) +#define g_10 (max(-(conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0)) +#define g_11 (max(-(conv2d_2_tf1_tex(conv2d_2_tf1_pos)), 0.0)) +#define g_12 (max((conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0)) +#define g_13 (max((conv2d_3_tf1_tex(conv2d_3_tf1_pos)), 0.0)) +#define g_14 (max(-(conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0)) +#define g_15 (max(-(conv2d_3_tf1_tex(conv2d_3_tf1_pos)), 0.0)) +#define g_16 (max((conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0)) +#define g_17 (max((conv2d_4_tf1_tex(conv2d_4_tf1_pos)), 0.0)) +#define g_18 (max(-(conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0)) +#define g_19 (max(-(conv2d_4_tf1_tex(conv2d_4_tf1_pos)), 0.0)) +#define g_20 (max((conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0)) +#define g_21 (max((conv2d_5_tf1_tex(conv2d_5_tf1_pos)), 0.0)) +#define g_22 (max(-(conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0)) +#define g_23 (max(-(conv2d_5_tf1_tex(conv2d_5_tf1_pos)), 0.0)) +#define g_24 (max((conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0)) +#define g_25 (max((conv2d_6_tf1_tex(conv2d_6_tf1_pos)), 0.0)) +#define g_26 (max(-(conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0)) +#define g_27 (max(-(conv2d_6_tf1_tex(conv2d_6_tf1_pos)), 0.0)) +vec4 hook() { + vec4 result = mat4(0.1765669, 0.14268716, 0.19186598, 0.15799578, 0.016374417, 0.018578433, 0.0039475, 0.0046772263, 0.39840183, 0.36909792, 0.35409746, 0.37422222, -0.108508386, -0.1331279, -0.10336035, -0.14776541) * g_0; + result += mat4(-0.057757027, -0.14071062, -0.025283009, -0.09397916, -0.09031894, -0.14219165, -0.08299535, -0.13970287, -0.12259208, -0.14382727, -0.22002274, -0.25016093, -0.048906635, 0.06620249, 0.016965045, 0.1295978) * g_1; + result += mat4(-0.16748372, -0.13718611, -0.18565705, -0.15029612, -0.080749065, -0.09955825, 0.032431383, 0.023855643, -0.2748885, -0.23232168, -0.29121292, -0.26405892, 0.16556135, 0.18657646, 0.1424068, 0.18855052) * g_2; + result += mat4(0.10960496, 0.10851629, 0.095003806, 0.11053746, 0.09885307, 0.14437789, 0.13191165, 0.17365928, 0.16558935, 0.15473324, 0.21136154, 0.19976667, -0.07267957, -0.11469687, -0.029134216, -0.06817615) * g_3; + result += mat4(0.10202856, 0.04216857, -0.03959349, -0.09849683, -0.1576996, -0.049997438, -0.1579918, -0.058789205, 0.029792828, -0.07311781, -0.045432188, -0.11312683, 0.24257647, 0.16204113, 0.17869382, 0.16024388) * g_4; + result += mat4(0.17193612, 0.12692013, 0.13177487, 0.0796725, 0.0797928, 0.08952722, -0.012468046, 0.011071511, -0.068559825, -0.024852324, 0.0526428, 0.07917346, -0.085534215, -0.09591339, 0.04615827, 0.024577664) * g_5; + result += mat4(-0.14653449, -0.067267366, -0.002524394, 0.086243175, 0.13660401, 0.08039592, 0.09179008, 0.022573143, -0.024744196, 0.09120211, 0.017654825, 0.14114714, -0.16093308, -0.14538004, -0.09950235, -0.111152865) * g_6; + result += mat4(-0.188637, -0.12968326, -0.1200479, -0.06537649, -0.12589337, -0.106242515, -0.02788782, -0.025949068, 0.04948153, 0.02222735, -0.025291357, -0.12379292, 0.11074645, 0.11902375, -0.00056989543, -0.0024386419) * g_7; + result += mat4(0.018286629, 0.0072215167, 0.00037828335, 0.0047001047, 0.011478272, 0.041745186, -0.015742473, -0.002282524, -0.03440817, -0.02196847, -0.07838253, -0.07993771, -0.010155526, -0.017590692, 0.027141469, 0.029741213) * g_8; + result += mat4(0.016512005, 0.004950637, -0.0238836, -0.05587327, -0.03164328, -0.009499985, -0.059880238, -0.061794154, 0.023154303, -0.013266373, 0.04701534, 0.0415862, 0.06357814, 0.033057794, 0.08389772, 0.00035060212) * g_9; + result += mat4(-0.016403968, -0.012538788, -0.0015746636, -0.004771009, -0.021361275, -0.009695242, 0.020548422, -0.0024130535, 0.07796766, -0.01516671, 0.09961382, 0.042754963, 0.017363647, 0.03729065, -0.004795824, 0.01550197) * g_10; + result += mat4(-0.0028093113, 0.011869523, -0.02216933, 0.011177349, 0.033342455, -0.021146454, 0.07830085, 0.032490104, -0.03281833, 0.0060484232, -0.04081057, -0.04945058, -0.0056189033, -0.010636801, -0.041949317, -0.025739705) * g_11; + result += mat4(0.012979897, 0.016758928, -0.049062215, -0.0035748442, 0.0085972, 0.0036381132, -0.0055621094, 0.0041307937, -0.0008907763, -0.0034079372, -0.025680453, -0.015531803, 0.012816766, 0.009977763, -0.016416566, 0.0034859509) * g_12; + result += mat4(0.021753248, 0.016452711, 0.009833835, 0.0065052663, 0.0014061348, -0.046160888, -0.0132271005, -0.05051269, -0.05746351, -0.0012690664, 0.017191738, 0.018192926, -0.008879476, 0.026354216, -0.012801991, -0.029587373) * g_13; + result += mat4(-0.04220692, -0.0015560482, -0.0019648245, 0.013402305, -0.018259782, -0.0036008905, 0.0035650074, -0.0019178417, 0.00051580026, 0.027355857, -0.017914988, 0.004937948, -0.046335887, 0.00013612259, 0.030293299, 0.030688645) * g_14; + result += mat4(-0.036683388, -0.0031274238, -0.026074665, 0.021684237, 0.022639066, 0.0022493738, 0.011508554, -0.0006385944, 0.04890418, 0.020119468, 0.004167364, -0.008356099, -0.008598796, 0.0089028, -0.0029575853, 0.016687104) * g_15; + result += mat4(0.027207986, 0.0011099194, 0.042383645, -0.015179333, 0.014744431, 0.006148344, 0.005165422, 0.0070196544, 0.030286826, 0.016620956, -0.01611366, -0.00667594, -0.029524863, -0.024751091, -0.013321004, -0.025199674) * g_16; + result += mat4(0.0027477827, 0.054622147, 0.010154094, 0.025437292, 0.031773083, -0.01055473, 0.022864206, -0.029010754, -0.0029999653, 0.025018329, 0.015316208, 0.027188798, -0.10096525, -0.017268656, 0.0012529213, -0.062078856) * g_17; + result += mat4(-0.053670805, 0.057336535, -0.037418038, 0.06443577, -0.016027879, -0.058168363, 0.007034215, -0.03390141, -0.0019346164, -0.027947908, 0.021723913, -0.0018286633, 0.030507812, 0.018293543, 0.042917266, 0.033528328) * g_18; + result += mat4(-0.004559579, 0.029667616, -0.001870353, 0.0378995, -0.017147437, 0.020192018, -0.021574946, 0.031568103, 0.07487145, 0.0032376775, -0.018893708, -0.041981626, 0.054478757, 0.0061423797, 0.041280247, 0.000878061) * g_19; + result += mat4(0.017076394, 0.023647636, 0.029403262, 0.029923365, 0.08866472, 0.060613394, 0.1314274, -0.04490231, -0.016304834, -0.0062647443, -0.0031828512, -0.03989252, -0.024330825, 0.00741213, -0.04075287, -0.01615817) * g_20; + result += mat4(0.017866978, 0.017720113, -0.02846163, 0.040761847, -0.0063438355, -0.02347501, 0.029564403, -0.0029562064, 0.12505588, -0.0073986333, 0.11250363, -0.06179967, 0.07854423, 0.08546533, 0.034743227, -0.010757377) * g_21; + result += mat4(-0.06416677, -0.08344284, 0.030138884, 0.017635904, -0.012087523, 0.014205202, -0.03221233, -0.023834767, -0.091186255, -0.028958676, -0.04724334, 0.00013161585, 0.027391518, 0.1249978, -0.045047652, 0.10737729) * g_22; + result += mat4(-0.04326348, -0.03543181, -0.029558217, -0.08582413, 0.007812453, 0.014296562, -0.028779754, 0.018517692, -0.063755795, -0.036619596, -0.050809663, 0.005431336, -0.029205568, -0.011827915, -0.031110523, -0.005648626) * g_23; + result += mat4(0.05499293, -0.10000709, -0.0943537, 0.16143042, -0.019952895, -0.0039807972, -0.014841254, 0.0320363, -0.065173544, -0.049425576, -0.023904482, 0.03759679, -0.03207411, -0.047782745, 0.01352581, 0.008140566) * g_24; + result += mat4(0.055923894, -0.025134467, 0.029583648, 0.04096879, 0.027551858, -0.14995384, 0.06467113, -0.11633077, -0.01563784, -0.026909819, -0.06292879, -0.078409635, -0.009081105, -0.015533088, 0.019585673, 0.04334208) * g_25; + result += mat4(-0.021717606, 0.042464726, 0.02743202, -0.07388838, 0.03460472, 0.0038285658, 0.099842004, -0.098247, 0.13276267, -0.020793032, -0.008603039, -0.051913783, 0.12959045, 0.14735717, -0.10888226, -0.10263746) * g_26; + result += mat4(-0.16819532, 0.141579, -0.062480718, -0.021918943, 0.06348125, 0.06849444, 0.03888676, 0.027375204, -0.08194279, -0.012574497, 0.13523251, 0.13739482, -0.047547445, -0.058767617, 0.07009549, 0.028136581) * g_27; + result += vec4(0.069033325, 0.040207114, 0.027286075, 0.0065334598); + return result; +} +//!DESC Anime4K-v3.2-Upscale-CNN-x2-(VL)-Depth-to-Space +//!HOOK MAIN +//!BIND MAIN +//!BIND conv2d_last_tf +//!BIND conv2d_last_tf1 +//!BIND conv2d_last_tf2 +//!SAVE MAIN +//!WIDTH conv2d_last_tf.w 2 * +//!HEIGHT conv2d_last_tf.h 2 * +//!WHEN OUTPUT.w MAIN.w / 1.200 > OUTPUT.h MAIN.h / 1.200 > * +vec4 hook() { + vec2 f0 = fract(conv2d_last_tf_pos * conv2d_last_tf_size); + ivec2 i0 = ivec2(f0 * vec2(2.0)); + float c0 = conv2d_last_tf_tex((vec2(0.5) - f0) * conv2d_last_tf_pt + conv2d_last_tf_pos)[i0.y * 2 + i0.x]; + vec2 f1 = fract(conv2d_last_tf1_pos * conv2d_last_tf1_size); + ivec2 i1 = ivec2(f1 * vec2(2.0)); + float c1 = conv2d_last_tf1_tex((vec2(0.5) - f1) * conv2d_last_tf1_pt + conv2d_last_tf1_pos)[i1.y * 2 + i1.x]; + vec2 f2 = fract(conv2d_last_tf2_pos * conv2d_last_tf2_size); + ivec2 i2 = ivec2(f2 * vec2(2.0)); + float c2 = conv2d_last_tf2_tex((vec2(0.5) - f2) * conv2d_last_tf2_pt + conv2d_last_tf2_pos)[i2.y * 2 + i2.x]; + float c3 = c2; + return vec4(c0, c1, c2, c3) + MAIN_tex(MAIN_pos); +} diff --git a/.config/mpv/scripts/shaders/ArtCNN_C4F16.glsl b/.config/mpv/scripts/shaders/ArtCNN_C4F16.glsl new file mode 100644 index 0000000..848d44b --- /dev/null +++ b/.config/mpv/scripts/shaders/ArtCNN_C4F16.glsl @@ -0,0 +1,1336 @@ +// Revised 02/02/24 +// https://github.com/Artoriuz/ArtCNN + +// MIT License + +// Copyright (c) 2024 Joao Chrisostomo + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +//!DESC ArtCNN C4F16 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.0344318, -0.18078314, 0.015049368, 0.004280265, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(0.026365899, 0.094916604, 0.010920062, 0.17550132, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.015443156, 0.1940094, -0.055331036, 0.10077051, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(0.008600319, 0.18487647, 0.17361028, 0.13435346, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.046105247, -0.07612645, -0.38553324, 0.3334207, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.06354227, -0.17214447, 0.2824285, -0.05709272, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.0027095554, 0.07522423, -0.12748435, 0.0560561, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(-0.24130277, -0.12270764, 0.11759724, 0.115722485, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(0.22084256, 0.035910502, -0.030909348, 0.10805552, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(-0.00788432, -0.015982246, 0.0014580011, -0.0787582); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.07630089, -0.109104894, -0.056332972, 0.048516314, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.05873391, 0.096255705, 0.028540753, -0.044371724, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.061662868, 0.028661782, 0.033012826, 0.0034995994, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(-0.11077748, -0.027771331, -0.020878842, -0.22079797, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(0.14797594, -0.207446, 0.12863205, 0.18078731, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.10867847, -0.24690239, -0.11676006, 0.030556457, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.079862714, 0.12113046, 0.08282269, 0.17149088, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(-0.12760092, 0.27198592, -0.16575593, -0.13514367, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(-0.07669048, 0.08440439, 0.09040478, -0.030830164, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(-0.05846052, -0.00836867, 0.0009703153, 0.000678133); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.03361707, 0.115808256, -0.18414906, -0.096526586, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.1810052, 0.3616793, 0.36699176, 0.14841634, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.099875614, 0.10717938, -0.19971868, -0.06466119, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(0.14633138, -0.033763472, 0.18019238, 0.03754667, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.3734624, -0.85920167, -0.33048797, -0.10320476, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.2711651, 0.17318748, 0.16604401, 0.08777103, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.06484845, -0.025148371, 0.010894599, 0.07569198, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.18577154, 0.20522597, -0.04021007, -0.029188823, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(-0.2502008, -0.01265762, 0.025856482, -0.053587556, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.042431127, 0.000666922, 0.00095471984, -0.0021739434); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.08175446, -0.13054441, 0.25625625, -0.12896311, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(0.048582144, -0.029526427, 0.07224649, -0.26419488, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(-0.098395094, 0.109146126, -0.058907688, -0.12307214, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(-0.20392899, 0.23330805, 0.42225167, 0.21529657, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(0.024363339, -0.11804162, -0.51805145, -0.009638481, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.12068929, -0.06757527, -0.16617517, -0.018518953, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.018397592, -0.06955144, 0.062205806, 0.023738263, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.06427145, 0.12990694, -0.16881876, 0.24747896, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(-0.03426582, -0.06298401, 0.046074223, 0.17177333, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(-0.012588948, 0.002721366, 0.013738457, -0.06171063); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!SAVE conv2d_1_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.23102085, 0.3667256, 0.062422123, -0.016479326, 0.11174099, 0.019678904, 0.053763542, -0.058722608, -0.71625376, 0.4019529, 0.0071369307, -0.0063044336, -0.2939305, -0.072275266, -0.19426529, 0.02468981) * input_0(-1.0, -1.0); + result += mat4(0.041480258, 0.020361068, 0.10379375, -0.17584099, -0.16123912, 0.19353612, 0.36551127, -0.18223771, 0.1816088, 0.2632076, 0.093869954, 0.041368578, 0.005886762, 0.12487783, -0.032530963, 0.011466818) * input_0(-1.0, 0.0); + result += mat4(0.06509767, 0.05004678, 0.0061875465, 0.24540287, -0.14180182, -0.22787207, 0.013387778, 0.33469334, 0.43722034, -0.29166433, -0.02132765, -0.041630436, -0.06029735, -0.09206117, -0.15710546, -0.023683863) * input_0(-1.0, 1.0); + result += mat4(-0.36304572, -0.127257, -0.019651702, 0.123599045, 0.9094681, 0.15687141, 0.021611053, 0.12035437, -0.8532541, -0.57352793, -0.030019095, -0.041869868, -0.91230506, 0.14779048, 0.03801047, 0.11780561) * input_0(0.0, -1.0); + result += mat4(-0.07599307, -0.16115505, -0.038359426, -0.09258247, -0.63750285, 0.45837379, -0.036910906, -0.018864991, -0.52065617, 0.9701053, 0.11160399, -0.45986903, -0.035932202, 0.044519756, 0.13171983, 0.13134283) * input_0(0.0, 0.0); + result += mat4(-0.025638364, -0.012952783, -0.0054089846, -0.07651621, 0.033888396, 0.026220191, -0.21533121, 0.4445904, 0.45314306, -0.2217389, -0.14757285, 0.9094385, -0.06517983, -0.08435639, -0.08006348, 0.028452639) * input_0(0.0, 1.0); + result += mat4(0.46368814, -0.07920139, 0.12376586, -0.046466436, 0.15384373, -0.00023572896, 0.105949156, -0.0892452, -0.6066053, -0.13000803, -0.12450223, 0.10507338, -0.46564347, -0.025439844, -0.17601565, -0.110528514) * input_0(1.0, -1.0); + result += mat4(-0.4831862, 0.04631266, -0.053037617, -0.07904607, -0.39301175, -0.054040115, -0.11590825, 0.055631615, 0.102882765, 0.3147772, 0.14307843, -0.17017566, -0.18420552, 0.091830835, 0.08456496, 0.014237895) * input_0(1.0, 0.0); + result += mat4(-0.27090788, 0.025150781, -0.056142338, -0.080115154, 0.24416752, -0.12941013, -0.18607505, -0.093451396, 0.06570437, -0.14147446, 0.08938883, -0.056229685, 0.060511056, -0.1288837, 0.04521636, -0.10070962) * input_0(1.0, 1.0); + result += mat4(0.958001, -0.11917081, 0.02948834, 0.13068093, -0.38614428, -0.03702043, 0.20287102, -0.018953318, -0.775785, 0.5333968, -0.14986658, -0.041062184, -0.53345966, 0.263917, -0.14115791, -0.062699996) * input_1(-1.0, -1.0); + result += mat4(-0.27031106, -0.14903031, 0.05201787, -0.055536985, -0.27323085, 0.1335721, -0.29237422, -0.000159528, 0.065754995, -0.16168645, 0.14074549, 0.32271343, -0.27186635, 0.31436163, -0.081247866, 0.22290573) * input_1(-1.0, 0.0); + result += mat4(0.047747154, 0.087880105, -0.080229975, 0.01694664, 0.19118759, -0.06429459, 0.107921325, 0.08601122, 0.35068178, -0.014905597, -0.1936079, -0.017416304, -0.06023213, 0.06050189, 0.4498534, 0.052081086) * input_1(-1.0, 1.0); + result += mat4(-0.45672786, 0.32178056, 0.22262652, -0.002164721, 0.591333, -0.44196433, 0.052751113, -0.2700018, 1.0429035, -0.42649457, -0.20800413, -0.045273375, -0.22278692, -0.027024172, -0.17420666, 0.087286375) * input_1(0.0, -1.0); + result += mat4(0.2052261, -0.37836382, -0.0022982792, 0.1376647, -0.14170541, 0.4165179, 0.07634652, 0.061207596, -0.23148991, 0.13457325, 0.0788838, -0.23896386, 0.7808012, -1.0306547, -0.3494335, 0.31092286) * input_1(0.0, 0.0); + result += mat4(0.06387279, -0.055801682, 0.19141574, -0.23525518, 0.033907752, 0.06290166, -0.07854284, 0.33186775, -0.20524701, 0.11877506, -0.10527987, 0.33476698, -0.2729123, 0.2873864, 0.28428382, -0.6392432) * input_1(0.0, 1.0); + result += mat4(0.4818009, 0.38414353, -0.13813363, 0.0852642, 0.19977632, -0.0015558511, 0.08996572, 0.094142534, -0.7237521, -0.0014716417, 0.18851145, 0.2494337, 0.08499397, 0.02087723, -0.19918197, -0.074144684) * input_1(1.0, -1.0); + result += mat4(-0.30396387, 0.13956264, -0.23534441, -0.12367283, -0.29889992, -0.07328495, -0.19461557, 0.107140854, 0.0829154, -0.10420854, 0.04751198, -0.398132, 0.5071173, 0.1916854, -0.044436153, 0.12490022) * input_1(1.0, 0.0); + result += mat4(-0.05446919, 0.021743823, -0.33803183, 0.115073204, 0.24486868, 0.106978565, -0.009897207, -0.19002652, 0.2710077, -0.12194952, 0.175326, -0.17932464, -0.16501276, -0.33747825, 0.2525886, -0.28647333) * input_1(1.0, 1.0); + result += mat4(-0.03293153, -0.27736676, -0.0065127527, -0.03210839, -0.180015, 0.11778944, 0.039235506, -0.14770687, 0.29679877, 0.3181709, 0.16960411, -0.033722393, 0.8702213, -0.046333417, 0.10572627, -0.06321542) * input_2(-1.0, -1.0); + result += mat4(0.028635444, 0.35468572, 0.060956202, -0.046301186, 0.2691854, 0.08746016, -0.20409156, 0.013783987, 0.087102674, 0.08896387, 0.27014574, -0.020094272, -0.31487665, 0.12511939, 0.23501572, -0.02844609) * input_2(-1.0, 0.0); + result += mat4(0.14211841, 0.011456142, -0.07192511, 0.09781762, 0.12500869, 0.06985939, 0.07297525, -0.0668327, 0.05172649, -0.21555439, -0.11303633, 0.05155522, -0.14502986, 0.06042028, 0.045378447, 0.29547817) * input_2(-1.0, 1.0); + result += mat4(-0.49439806, -0.31370687, -0.07659236, 0.048723605, -0.03588605, -0.5940245, 0.106432326, -0.06614232, 0.2018615, -0.26474404, 0.053761464, 0.031998083, -1.0498749, 0.042053115, 0.16592905, 0.1404836) * input_2(0.0, -1.0); + result += mat4(-0.12831159, 0.71914333, 0.36071703, -0.34845918, -0.014322779, 0.2964962, 0.3969452, -0.7275337, -0.15734918, 0.84333384, 0.24039768, -0.20675051, 0.24033651, 0.18810317, -0.16342512, -0.21884578) * input_2(0.0, 0.0); + result += mat4(-0.2741385, 0.09838329, -0.27343825, 0.73882455, -0.28087577, 0.21540697, 0.13134158, 0.43787634, 0.34616482, -0.042676847, -0.28186828, 0.41095456, 0.3249814, -0.2985662, -0.031087456, 0.050230794) * input_2(0.0, 1.0); + result += mat4(0.02329128, 0.022861544, 0.15675643, -0.040367924, -0.46041727, -0.077296935, 0.049844887, -0.040123027, -1.7933652, -0.4880457, -0.23319495, -0.016469236, 0.013575881, 0.045874745, -0.017661527, -0.0596432) * input_2(1.0, -1.0); + result += mat4(-0.13937223, 0.3543, 0.20918648, 0.008811114, 0.07770109, -0.19499834, -0.1602611, -0.10361026, -0.034328584, -0.29267007, -0.11037403, 0.09655642, 0.009992693, -0.032436945, -0.109210216, -0.09064179) * input_2(1.0, 0.0); + result += mat4(-0.036751393, -0.040958054, 0.005831792, -0.18270929, -0.09946563, 0.07493419, 0.057131864, 0.2124298, 0.54686797, 0.05877136, 0.051176965, -0.18503857, -0.007367192, -0.05757058, -0.17066543, 0.016413597) * input_2(1.0, 1.0); + result += mat4(0.50434315, -0.11232266, 0.10636233, -0.10051886, 0.44439095, -0.45936745, 0.0827637, -0.02172231, 0.26759505, 0.0735054, 0.1301486, 0.013272378, -0.024616808, 0.2670065, -0.06378425, -0.01622901) * input_3(-1.0, -1.0); + result += mat4(-0.08785128, -0.2014086, -0.13705926, -0.023214042, 0.16039383, 0.009258228, -0.057540312, -0.094715185, -0.3246516, 0.31711632, 0.048174135, -0.044890266, 0.032310724, -0.03906917, -0.051073033, -0.12655851) * input_3(-1.0, 0.0); + result += mat4(-0.05284137, 0.15386364, -0.07908928, 0.03141916, -0.254807, 0.07350008, -0.0457829, 0.025454534, -0.18154582, -0.2021139, -0.03278127, 0.2952378, -0.083563104, 0.085908614, -0.035415407, 0.097205915) * input_3(-1.0, 1.0); + result += mat4(-0.47781548, -0.0039848564, 0.02890776, 0.020055734, -0.38334626, 0.26213354, 0.21009701, 0.020571876, 0.4162781, -0.068654105, -0.06375123, -0.029091457, -0.1144479, -0.1434175, -0.021664366, -0.024213271) * input_3(0.0, -1.0); + result += mat4(0.23831245, -0.23759198, 0.11139435, -0.0284253, -0.43435907, 0.5324811, 0.15932456, 0.051532976, -0.60140985, 0.81355417, 0.08318733, 0.0074902456, -0.2294655, 0.18985763, 0.02570988, 0.06185301) * input_3(0.0, 0.0); + result += mat4(0.047501266, 0.14135382, 0.13926902, -0.32995674, 0.15426145, -0.21769613, -0.056508873, 0.41739115, 0.4481696, -0.044667814, -0.22878727, 1.6120688, -0.068510436, 0.12816137, -0.087967746, 0.43456796) * input_3(0.0, 1.0); + result += mat4(0.045051854, -0.102203526, 0.014370132, -0.13558042, 0.6196902, 0.029837543, 0.09536526, -0.0960145, -0.008864092, 0.058682065, 0.018813694, -0.008384937, 0.50527394, -0.058582716, 0.024183787, -0.04252287) * input_3(1.0, -1.0); + result += mat4(0.046409126, -0.22342418, -0.23079188, -0.028213685, -0.3009733, 0.011288669, -0.21724658, -0.14358976, -0.2197082, 0.26434383, -0.024798447, 0.19448462, -0.13574658, 0.26962122, 0.09754527, 0.0033913897) * input_3(1.0, 0.0); + result += mat4(0.02019961, -0.13027382, -0.016620006, -0.1436932, 0.14364856, 0.02281683, -0.14592478, 0.09874495, -0.42183912, -0.046069555, -0.15400597, 0.35972577, 0.021659106, 0.06872093, -0.14871477, 0.25272465) * input_3(1.0, 1.0); + result += vec4(-0.04442445, 0.01224734, 0.3024753, 0.0012290358); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!SAVE conv2d_1_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.1813186, 0.14457881, -0.03285202, 0.10625247, -0.034537904, -0.09423509, 0.04032319, -0.0106237, 0.13617463, -0.056402784, -0.04132209, -0.038927894, 0.107420675, -0.074489474, -0.066603504, -0.15293011) * input_0(-1.0, -1.0); + result += mat4(0.04436455, 0.29687274, -0.06578418, 0.4569071, -0.0422027, 0.1141881, 0.13917413, 0.29896125, -0.006433028, 0.2603894, -0.06812439, -0.046775877, 0.08083408, -0.08875001, -0.054784674, -0.12844416) * input_0(-1.0, 0.0); + result += mat4(0.10113041, 0.11781055, 0.04797878, -0.18506636, 0.29967615, -0.58315396, -0.20992145, -0.19029093, 0.18608339, -0.06591385, -0.02324382, 0.21947722, -0.03412774, -0.03591434, 0.14981544, -0.0685279) * input_0(-1.0, 1.0); + result += mat4(0.10971085, -0.18300888, 0.14021935, -0.07268088, -0.3098056, 0.32267585, 0.22765242, 0.10786026, -0.06417881, -0.07611155, 0.015535563, 0.04273541, 0.1905248, -0.04656157, -0.094165124, -0.044614315) * input_0(0.0, -1.0); + result += mat4(0.15575494, -0.2870104, 0.12578495, -0.081686825, 0.1296782, -0.27232724, -0.00593195, -0.07884531, -0.06783681, 0.17994238, 0.8565036, -0.18181132, 0.23259215, 0.11447691, -0.11206914, -0.09683646) * input_0(0.0, 0.0); + result += mat4(-0.022358704, -0.15281272, -0.038962066, -0.0982614, 0.014937527, 0.046811845, -0.4599468, -0.1074946, 0.0068869228, -0.47092807, -0.59383893, -0.27260137, 0.11099441, 0.12222666, 0.11724718, 0.1124359) * input_0(0.0, 1.0); + result += mat4(-0.06878871, -0.06303179, 0.13031062, -0.09786611, -0.04976242, 0.21200065, 0.02219528, 0.056177232, 0.020114714, 0.21965441, -0.1644566, 0.19205166, -0.096762374, -0.051187064, -0.051847383, 0.1848608) * input_0(1.0, -1.0); + result += mat4(0.13214068, -0.15299338, -0.15010658, -0.16501431, 0.15889268, -0.21976121, 0.12237275, -0.08688595, 0.36257437, -0.13780302, 0.023816485, 0.086948514, -0.20479077, 0.11568382, -0.04229531, 0.018304596) * input_0(1.0, 0.0); + result += mat4(0.030958802, -0.014990242, 0.024548898, -0.0069568516, 0.066588424, 0.1794617, -0.11846301, -0.13533135, -0.018243484, -0.14508843, 0.0046493434, -0.072399355, -0.07689172, -0.12122376, 0.08659305, 0.12821996) * input_0(1.0, 1.0); + result += mat4(-0.4479181, -0.10487715, 0.11975699, -0.05036385, 0.26571256, 0.37924394, 0.06349244, 0.113233395, 0.33422673, 0.0912217, 0.036976732, -0.34377855, 0.110512234, 0.11475259, -0.22205257, -0.16497158) * input_1(-1.0, -1.0); + result += mat4(0.030030416, -0.58875006, -0.09375569, -0.28157952, 0.25307465, 0.23814103, 0.112507656, 0.3533498, -0.049066994, -0.06744866, -0.06512752, 0.23032121, -0.22702114, -0.4695838, -0.2465906, -0.14562622) * input_1(-1.0, 0.0); + result += mat4(-0.23549087, -0.46666875, -0.084069096, -0.54684913, 0.4932739, 0.32364902, -0.13301225, 0.88889474, -0.13769823, -0.039481394, -0.21883868, 0.29473147, 0.2711934, 0.21930045, -0.06803664, 0.099918514) * input_1(-1.0, 1.0); + result += mat4(0.08801093, 0.17804238, 0.03268937, -0.030014636, -0.24234685, 0.196082, 0.23016404, -0.16035768, 0.13880461, -0.00063575205, 0.14366803, 0.22639237, 0.07099834, -0.14343525, -0.044175845, -0.07226683) * input_1(0.0, -1.0); + result += mat4(0.36728323, 0.020997424, -0.18107092, 0.1762701, -0.281822, 0.024427796, -0.14229095, -0.39137533, -0.10393041, -0.22737439, -0.1760147, -0.285932, -0.0039243395, -0.04677041, -0.2217912, 0.12592377) * input_1(0.0, 0.0); + result += mat4(0.09045431, -0.020697087, 0.20803417, 0.14318052, -0.09799255, -0.058998402, -0.43568677, -0.03815049, -0.027888397, -0.04014361, 0.0064566275, -0.20425172, -0.20419954, 0.3615939, 0.763889, 0.0946408) * input_1(0.0, 1.0); + result += mat4(0.07069572, 0.03320023, 0.097170815, -0.053142495, 0.023290932, -0.101554304, 0.17851919, 0.030247288, -0.24490716, 0.34123218, -0.17821132, 0.104314856, 0.1282894, -0.031525392, -0.17258845, 0.025555274) * input_1(1.0, -1.0); + result += mat4(0.23303832, -0.13619566, 0.039310884, 0.04909438, -0.037246097, 0.015947154, 0.038354576, -0.19057538, 0.18679161, -0.26626557, 0.30705976, 0.10118448, 0.0029388464, -0.047836877, -0.13585375, -0.008158594) * input_1(1.0, 0.0); + result += mat4(0.32623914, -0.11744128, -0.21590304, -0.111534834, -0.1805817, 0.194799, -0.044037204, 0.0341725, -0.13791451, 0.17585805, 0.12182644, -0.0922833, -0.46181536, -0.16611756, 0.30335626, -0.03178384) * input_1(1.0, 1.0); + result += mat4(-0.045547694, -0.20415258, -0.15327035, -0.17310466, 0.263064, 0.36860424, 0.070836075, 0.13231003, -0.036017537, 0.36375234, 0.17537032, 0.066128, -0.27736133, 0.18543728, -0.054863777, 0.22075063) * input_2(-1.0, -1.0); + result += mat4(0.10546282, 0.22355258, 0.016002625, -0.2584522, 0.36249876, 0.20419033, -0.09647912, -0.25172108, -0.040911824, 0.0038743764, 0.016936503, 0.49274015, 0.037965454, -0.0022090308, 0.039035827, -0.20052963) * input_2(-1.0, 0.0); + result += mat4(0.3441342, -0.33506644, -0.11548419, 0.4602568, 0.11114756, 0.59828925, -0.1187811, 0.7865575, -0.03292712, -0.28330672, -0.16887254, 0.22769487, 0.13687603, -1.107309, -0.24131888, -0.17052723) * input_2(-1.0, 1.0); + result += mat4(-0.07876665, 0.17423095, -0.017934987, -0.0040133395, 0.15144774, 0.18570523, 0.23345162, -0.08259106, 0.029981062, -0.4027886, -0.06878253, -0.016724499, 0.06640895, 0.22623202, -0.094052434, -0.03892834) * input_2(0.0, -1.0); + result += mat4(-0.036437847, 0.562169, 0.88877124, -0.18232746, -0.08167595, -0.1342039, 1.0728049, -0.060068645, 0.051848155, 0.19406258, 0.0966441, -0.5190044, 0.012974724, 0.07771439, 0.46060973, 0.4213409) * input_2(0.0, 0.0); + result += mat4(-0.07392522, -0.331731, -0.52234054, -0.031839207, 0.2060309, -0.1154244, -0.5515788, -0.22183655, 0.5480396, -0.07748982, -0.35009676, -0.3046856, 0.042630613, 0.24506344, -0.19711658, -0.2621474) * input_2(0.0, 1.0); + result += mat4(-0.026529666, 0.077366754, -0.080463335, 0.03023021, 0.030847125, 0.18215261, -0.04596669, -0.037858404, -0.027413473, -0.07888417, 0.08800039, 0.060167592, 0.04862595, 0.19000472, 0.07022449, -0.052843615) * input_2(1.0, -1.0); + result += mat4(0.327826, 0.04583394, 0.07136629, 0.14427899, -0.23227592, -0.08114751, 0.12561196, -0.11497248, -0.42198977, 0.4687457, 0.38640603, 0.098157786, -0.2184617, 0.08357801, -0.06254379, 0.033690605) * input_2(1.0, 0.0); + result += mat4(0.075618215, -0.23334752, 0.00014328441, 0.05277411, -0.16813819, -0.1362569, -0.18503465, 0.094070874, -0.049053937, -0.40931728, -0.20206599, -0.015511155, 0.18948627, 0.08573332, 0.07980269, 0.09224847) * input_2(1.0, 1.0); + result += mat4(0.013549432, 0.08680989, 0.14009196, 0.083052166, -0.2757057, -0.3327928, 0.1921283, 0.14789608, -0.10803752, 0.26457715, 0.18166469, 0.10639019, 0.07496346, 0.16226974, 0.007701461, -0.06344391) * input_3(-1.0, -1.0); + result += mat4(-0.04845206, -0.010247987, -0.08136308, -0.044885762, 0.20626646, 0.15327181, 0.12005523, -0.564302, -0.28364387, 0.14351434, -0.012093124, 0.44706145, 0.22048931, 0.49626544, -0.034098323, 0.5098964) * input_3(-1.0, 0.0); + result += mat4(0.28979775, 0.19156924, 0.014443995, 0.01333447, -0.00625716, -0.0833051, -0.15233295, 0.37694246, -0.004653063, -0.80046195, -0.29824793, 0.24874036, 0.28144377, 0.15606311, -0.14871532, 0.4524993) * input_3(-1.0, 1.0); + result += mat4(-0.20121616, -0.013231958, -0.16990755, -0.00022619285, 0.08309952, 0.3257315, 0.04885429, 0.14338695, -0.014487696, -0.29758847, -0.11490041, -0.04389072, -0.2929464, -0.0855669, 0.069230594, 0.06196785) * input_3(0.0, -1.0); + result += mat4(-0.016927443, 0.0837688, -0.031203976, 0.08929343, 0.0221584, 0.061230343, 0.08802941, 0.13083339, -0.055889938, -0.107266665, -0.19096231, -0.23338324, -0.3276672, -0.022817403, 0.017047841, 0.005757793) * input_3(0.0, 0.0); + result += mat4(0.016535832, 0.14710982, 0.28396747, -0.093596555, -0.018213097, 0.083955206, -0.2533867, -0.103416905, 0.65413314, -0.61768776, -1.219503, -0.3292369, -0.2972223, -0.15927196, -0.12123384, 0.031794164) * input_3(0.0, 1.0); + result += mat4(-0.20547222, 0.038327247, 0.03583533, -0.06678343, -0.19666772, -0.12938274, 0.10443514, -0.088976994, 0.10385504, -0.04428264, 0.020901375, -0.04429233, 0.18029046, 0.0285291, -0.16100433, -0.08752411) * input_3(1.0, -1.0); + result += mat4(0.04147833, -0.08591577, 0.04830908, -0.07717542, 0.22325857, -0.18352616, -0.11003704, 0.024365963, -0.045350336, -0.109242134, 0.052501697, -0.10596917, 0.48513517, -0.10480992, -0.016565047, -0.0021286167) * input_3(1.0, 0.0); + result += mat4(-0.056964718, -0.08798149, 0.13383573, 0.07015682, 0.18592721, 0.22536194, -0.06466447, -0.010478167, 0.11279483, -0.30505362, -0.3196326, -0.050327707, 0.19592053, -0.1033447, -0.063046105, -0.019274758) * input_3(1.0, 1.0); + result += vec4(0.031955287, -0.018660989, -0.012473404, 0.0064324066); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!SAVE conv2d_1_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.08244544, -0.024511473, -0.1563133, -0.37106726, 0.035367787, 0.015258923, 0.010606762, -0.28748047, -0.14504077, -0.3297632, 0.07066317, -0.34631827, 0.024212427, -0.10365847, 0.041878328, 0.060065243) * input_0(-1.0, -1.0); + result += mat4(-0.054693937, -0.100320734, 0.2064598, -0.30696002, 0.14289075, -0.20270777, 0.24525502, -0.16297935, -0.08474527, -0.13578267, -0.2783534, 0.618479, 0.080877855, 0.121815994, -0.044330068, 0.117439985) * input_0(-1.0, 0.0); + result += mat4(-0.024500048, 0.06255667, -0.13617042, 0.13408296, -0.1064452, 0.01554033, -0.3618911, 0.45431286, 0.15683651, 0.025030097, 0.56963557, -0.124295294, -0.055543788, -0.016861886, -0.0032640512, -0.098132595) * input_0(-1.0, 1.0); + result += mat4(0.049651712, -0.015619624, 0.054220762, 0.08662367, 0.1416123, -0.018055644, -0.18806364, 0.0102259945, 0.08612002, 0.103218846, 0.47759798, -0.8005226, 0.07983904, 0.1584321, -0.0911237, -0.11578392) * input_0(0.0, -1.0); + result += mat4(-0.11337359, 0.04551646, 0.0676283, 0.07354767, -0.13629852, 0.093296655, 0.28424954, 0.13174945, -0.47839135, -0.04699561, 0.107811704, 0.06771121, 0.3021276, 0.10371984, 0.1766255, 0.11282248) * input_0(0.0, 0.0); + result += mat4(0.009718402, -0.11982437, -0.020046042, 0.11613216, 0.4214471, 0.04960368, 0.16880736, 0.046921916, 0.31204516, 0.07247148, -0.27609614, 0.038756073, -0.22726823, 0.15440345, -0.026919154, -0.15770294) * input_0(0.0, 1.0); + result += mat4(0.007133338, 0.2862571, -0.07435452, -0.23686804, -0.13203049, -0.11098623, 0.16818316, -0.70100105, 0.16242686, 0.14064458, -0.41274574, -0.14663015, -0.08304793, -0.21896985, -0.1511625, -0.03319275) * input_0(1.0, -1.0); + result += mat4(-0.20454238, 0.014603208, 0.19353466, -0.096985295, -0.017182147, 0.2571041, -0.071377814, 0.31914496, -0.06068535, 0.3485252, 0.20465992, 0.27082586, 0.12593354, -0.074842185, 0.1248664, 0.17485794) * input_0(1.0, 0.0); + result += mat4(0.04824986, 0.14027345, 0.02176443, -0.10907345, -0.09729938, 0.08221686, -0.16126585, 0.15913716, 0.021785498, -0.10393283, -0.024958936, -0.09150386, -0.06348421, -0.10812967, -0.03189501, -0.093186945) * input_0(1.0, 1.0); + result += mat4(-0.20416902, 0.10171751, 0.5459169, -0.2853912, 0.25266182, 0.17832461, -0.34719777, 0.61624163, -0.23737141, -0.050589032, -0.118288726, 0.13443506, -0.06251747, -0.07992853, 0.34568754, 0.20318447) * input_1(-1.0, -1.0); + result += mat4(-0.22192165, 0.1032586, -0.28965572, -0.42424542, 0.19960277, 0.040230803, -0.07635675, 0.48193726, 0.37478587, -0.24500939, 0.4074014, -0.051773272, -0.24060905, 0.04008451, 0.032335527, -0.016961437) * input_1(-1.0, 0.0); + result += mat4(-0.48478958, -0.18718407, 0.17342088, -0.034595363, 0.12856287, -0.08239986, -0.1068953, 0.46604472, -0.034955077, 0.018517844, -0.74769247, -0.063375674, 0.26858127, -0.29422715, -0.6625976, -0.27853718) * input_1(-1.0, 1.0); + result += mat4(-0.040203325, 0.114351854, 0.1923919, -0.044563875, -0.14501546, -0.23320669, 0.0062956014, -0.10848804, -0.17991242, 0.15562849, -0.20321722, 0.09341384, -0.038049124, -0.05200078, -0.10626301, 0.0562258) * input_1(0.0, -1.0); + result += mat4(0.050332535, 0.25532162, -0.39101952, -0.23868445, -0.12497383, -0.21720417, 0.01786643, 0.036228415, 0.14010297, -0.1432882, 0.4152234, 0.123722896, -0.025320835, 0.19837059, -0.37603804, -0.34942502) * input_1(0.0, 0.0); + result += mat4(0.11480581, 0.0074986815, 0.16723368, 0.23301122, 0.18294051, -0.20866658, 0.06493413, 0.060538806, -0.04781662, 0.011617245, 0.1978214, -0.1625163, -0.101153575, 0.14593159, 0.7529521, -0.4178) * input_1(0.0, 1.0); + result += mat4(-0.05702566, -0.020458022, 0.35411972, -0.14168516, 0.038666874, 0.033238746, 0.17865182, -0.019249154, 0.013367434, -0.0954898, -0.04769208, -0.16808861, 0.004902522, 0.07596095, 0.08766332, 0.5034525) * input_1(1.0, -1.0); + result += mat4(0.08911325, -0.23622228, -0.20580173, -0.07950702, 0.09588141, 0.25699744, 0.09275917, -0.16642517, 0.118355505, 0.23275557, -0.13246097, 0.11250887, -0.17322256, -0.080459625, -0.13146275, -0.012632894) * input_1(1.0, 0.0); + result += mat4(-0.2087898, 0.025893781, -0.0905368, 0.15410224, -0.046160027, -0.10393516, -0.13541365, -0.01572801, -0.10622964, 0.064867765, 0.21116525, -0.015439045, 0.14500257, -0.06758778, 0.12740108, 0.17549445) * input_1(1.0, 1.0); + result += mat4(-0.082465515, -0.09623023, 0.052955322, -0.006422542, 0.0308599, 0.08551292, 0.12179461, -0.24358673, -0.08230477, -0.025360107, 0.3809822, 0.19969243, -0.18972528, -0.065042265, 0.67815125, -0.4067177) * input_2(-1.0, -1.0); + result += mat4(0.019972026, -0.13127193, -0.12984493, 0.56227905, -0.21061918, 0.096702814, -0.21893445, 0.6399303, -0.06338047, 0.09013715, -0.0051230267, 0.17644414, 0.059144586, 0.07345809, -0.32709256, -0.26293942) * input_2(-1.0, 0.0); + result += mat4(0.040317267, -0.09017054, 0.25904247, 0.1721023, 0.13799606, 0.05609334, 0.14582808, 0.36229232, -0.12309598, -0.07191444, 0.58202726, 0.1745007, -0.17146309, 0.06099254, 0.1295576, 0.64363587) * input_2(-1.0, 1.0); + result += mat4(0.32390937, -0.11999322, 0.62372863, -1.0253154, 0.062694594, -0.0051892255, 0.08094208, -0.16240452, 0.11170284, -0.39491904, -0.3031303, -0.111340135, 0.15010029, -0.029209524, -0.31273958, -0.16510811) * input_2(0.0, -1.0); + result += mat4(-0.31467596, -0.13993546, -0.07524009, 0.021389335, -0.5519557, -0.6201507, -0.24475157, -0.17176315, -0.4698218, -0.6548806, -0.06821201, 0.27673328, -0.034359306, 0.078564115, 0.27736443, 0.07427987) * input_2(0.0, 0.0); + result += mat4(0.21157281, 0.054165863, -0.22666854, -0.04029902, 0.11566386, -0.2832392, -0.03680483, 0.09751591, 0.2169813, 0.08247218, -0.7898472, -0.09498089, -0.01239245, -0.2018876, -0.20937493, -0.1068879) * input_2(0.0, 1.0); + result += mat4(0.0013884066, 0.007871056, -0.087309815, -0.019111326, -0.054053016, -0.15759242, -0.271642, 0.026614256, 0.30871394, 0.35640207, -0.619848, -0.4255511, 0.087974146, -0.05774669, -0.17925283, -0.1136073) * input_2(1.0, -1.0); + result += mat4(-0.23074204, 0.03809855, 0.13457838, -0.06947553, 0.04790887, 0.7554334, 0.30442008, -0.002114464, 0.23318128, 1.2193109, 0.7928055, -0.05546594, 0.14024362, 0.009084898, 0.038057413, 0.014467305) * input_2(1.0, 0.0); + result += mat4(-0.0791745, -0.0688806, -0.072081216, -0.08360861, 0.0732819, 0.04125806, -0.303171, 0.0476809, 0.0587979, -0.32740408, -0.021780906, -0.12036498, -0.034540426, 0.26277828, -0.0858364, 0.2772523) * input_2(1.0, 1.0); + result += mat4(0.06910841, 0.1317287, 0.21041434, 0.3000619, 0.14173406, -0.026259035, 0.16492876, -0.012913351, 0.063834175, 0.034849565, -0.16591544, 0.39318815, -0.110567346, 0.071234874, -0.11045241, 0.58924043) * input_3(-1.0, -1.0); + result += mat4(-0.08088805, 0.21751194, -0.32237217, -0.046890866, -0.106608994, 0.35701987, -0.1375207, 0.55965245, 0.16815835, -0.15976176, -0.032419488, -0.13695048, 0.05660048, 0.1763526, -0.026687268, -0.024479035) * input_3(-1.0, 0.0); + result += mat4(-0.07928095, 0.039196093, 0.009511743, 0.35122317, -0.19515862, -0.027353287, 0.23374204, 0.15727128, 0.021661099, -0.036439393, 0.03307122, 0.25763726, 0.06078174, -0.029059589, 0.09575972, 0.16878763) * input_3(-1.0, 1.0); + result += mat4(0.13713466, -0.1918072, 0.195396, -0.17572287, 0.033425383, 0.08072999, -0.04989187, -0.21773233, -0.1575314, -0.08022627, 0.08141576, 0.04752984, -0.08445092, -0.09157276, -0.0808979, 0.02523146) * input_3(0.0, -1.0); + result += mat4(0.040600356, -0.12609279, -0.4485799, -0.33784097, 0.2651006, -0.3083702, 0.16872555, 0.19974138, -0.23732726, 0.08665063, -0.046895515, -0.058773123, 0.22944951, -0.31815407, 0.013978691, 0.1334388) * input_3(0.0, 0.0); + result += mat4(-0.26354432, -0.20643577, -0.12969796, 0.15402338, 0.33878416, -0.019620758, -0.22256988, -0.16216905, 0.42894518, 0.25187063, -0.056097966, 0.15803891, 0.08974538, -0.13130751, 0.21089844, -0.034392267) * input_3(0.0, 1.0); + result += mat4(0.25439686, 0.41911817, -0.05679641, 0.19568442, -0.17511019, -0.374574, 0.51850146, -0.77049005, 0.13670275, 0.1953563, -0.017109131, 0.12305461, 0.05036815, 0.09418666, 0.05680116, -0.07125914) * input_3(1.0, -1.0); + result += mat4(-0.011947396, -0.026536802, 0.001294313, -0.34260994, -0.099801145, 0.045623016, -0.3835918, 0.3592889, 0.11015504, 0.3260415, 0.18281083, -0.13451746, -0.10058661, -0.23935075, -0.1850689, 0.12927532) * input_3(1.0, 0.0); + result += mat4(-0.34652796, -0.0018505534, -0.0044029853, 0.07489237, -0.06711186, 0.25177667, -0.22622205, 0.024541752, 0.16344476, -0.2535651, -0.013137323, -0.055322457, -0.0051630293, 0.07448276, 0.10909277, 0.04308309) * input_3(1.0, 1.0); + result += vec4(-0.01270793, 0.057534076, 0.0020940362, 0.019516828); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!SAVE conv2d_1_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.08864884, 0.13429815, 0.39783752, -0.16515727, 0.06730605, 0.085279755, 0.064728, -0.0018127563, -0.013240651, -0.08183458, -0.14963907, -0.10329563, -0.017241012, -0.106815845, 0.011435032, 0.17498651) * input_0(-1.0, -1.0); + result += mat4(0.13859732, 0.18268886, -0.3772755, 0.09636594, 0.22033255, -0.069077, 0.39237276, 0.21117857, 0.08375692, -0.13406023, -0.16297731, -0.4793157, -0.15056564, -0.28988728, 0.057206478, 0.10027231) * input_0(-1.0, 0.0); + result += mat4(0.097904555, 0.25685108, -0.06966565, -0.056595404, 0.06389566, 0.36399204, 0.15553112, 0.11643679, -0.28673208, 0.22841401, -0.015907371, -0.07112256, -0.09997531, -0.18837854, -0.021144673, 0.04077932) * input_0(-1.0, 1.0); + result += mat4(0.018938731, 0.014290457, -0.22892322, -0.03423295, -0.075299405, 0.15041941, 0.10279539, -0.12278014, 0.23473416, -0.1569497, -0.18674786, 0.16756791, -0.0037691065, -0.013658907, 0.013247363, -0.092984) * input_0(0.0, -1.0); + result += mat4(-0.10441064, -0.055991728, -0.06778766, -0.06803445, -0.4576025, 0.10767134, -0.127595, 0.27102268, 0.4014987, 0.09808458, 0.4825136, 0.22240236, -0.012195791, 0.01380704, -0.06753497, 0.018330028) * input_0(0.0, 0.0); + result += mat4(-0.063100085, -0.2506725, 0.10120431, -0.084447704, -0.0065880637, -0.16504408, -0.5943815, -0.1257539, -0.09702489, 0.8318613, -0.19077452, -0.015835682, 0.010398463, -0.089115165, 0.04577516, -0.014404727) * input_0(0.0, 1.0); + result += mat4(-0.06356469, 0.17846744, -0.0073307496, 0.13853574, 0.016992554, 0.04794324, 0.26229075, 0.09161935, 0.15553688, -0.37616688, 0.058284126, 0.13955349, 0.012305597, 0.041168135, 0.038210504, -0.123352416) * input_0(1.0, -1.0); + result += mat4(0.039834607, 0.065196194, -0.031128427, 0.07043504, -0.20372137, -0.19917497, -0.30924025, 0.03637621, -0.32643318, -0.47167817, 0.09258552, -0.0031152528, 0.19373085, -0.19636384, -0.11261829, -0.050735347) * input_0(1.0, 0.0); + result += mat4(-0.05652169, 0.23427385, -0.018242616, 0.08778385, 0.15016098, -0.059852663, -0.118126154, -0.18938762, -0.04906957, 0.3633075, -0.24396248, 0.003163585, 0.039628472, -0.15899809, 0.02620242, -0.002109501) * input_0(1.0, 1.0); + result += mat4(0.0056256335, 0.123770475, -0.024613189, -0.1121259, 0.015166911, 0.10218912, -0.008671066, -0.044961527, -0.18858896, -0.09103044, 0.24549548, 0.12174496, 0.002065176, -0.29878974, -0.6053191, -0.00855697) * input_1(-1.0, -1.0); + result += mat4(0.027208695, 0.34774578, 0.02495024, 0.30209118, 0.063495636, -0.12274566, 0.26778227, -0.66777354, 0.19788699, 0.069097936, -0.3004319, 0.32385752, -0.13058667, -0.033589393, -0.49472284, 0.5474817) * input_1(-1.0, 0.0); + result += mat4(0.10653183, 0.017912868, -0.06989631, -0.1122518, -0.1864531, -0.14107427, -0.0012789833, -0.03578437, -0.1748403, -0.028081115, 0.26369897, -0.17350774, 0.01079094, 0.11872659, 0.3210604, -0.032179605) * input_1(-1.0, 1.0); + result += mat4(0.065661624, -0.03660219, -0.19637173, 0.035502173, 0.09538228, 0.13489516, -0.008590227, 0.08692802, 0.3643521, 0.1843215, 0.30679455, -0.2591987, 0.15051243, 0.0053539006, -0.21754318, 0.005250999) * input_1(0.0, -1.0); + result += mat4(-0.54810256, -0.13047707, -0.27344722, -0.051214658, 0.52619857, 0.3640541, 0.13385372, 0.33580106, -0.24912524, -0.12296739, -0.022577878, -0.08958877, -0.4274856, -0.04868668, -0.2756714, -0.68271476) * input_1(0.0, 0.0); + result += mat4(-0.08323462, -0.38184908, 0.020747613, -0.13144244, 0.20506795, 0.2563945, -0.32386538, 0.14643608, -0.123003155, 0.1371108, -0.24412604, 0.025057627, 0.21604851, 0.35978305, 0.61837935, 0.33104488) * input_1(0.0, 1.0); + result += mat4(-0.06668907, 0.15453108, -0.16623281, 0.15295939, -0.20394714, -0.020488713, 0.048533678, 0.041048758, 0.09142495, -0.050084345, 0.053626303, -0.03699795, 0.082554035, -0.14991698, 0.24465163, 0.0494539) * input_1(1.0, -1.0); + result += mat4(0.0829152, 0.09830312, 0.26490137, -0.02035522, -0.16940708, 0.03302805, -0.089515716, 0.06504053, 0.1105938, -0.13291359, -0.16435862, 0.080367684, 0.20224632, -0.26706156, 0.43842933, -0.23301119) * input_1(1.0, 0.0); + result += mat4(0.055896323, -0.19891764, 0.21861409, 0.1449208, 0.05847585, -0.04149842, 0.0009521031, -0.06014341, 0.011896823, 0.12857221, -0.060872205, 0.03118813, -0.08845449, 0.5276816, 0.040637713, -0.007374064) * input_1(1.0, 1.0); + result += mat4(0.0324407, -0.1549014, -0.8033959, -0.22115396, 0.00015178249, 0.06595459, -0.40787205, -0.3029617, 0.038492586, -0.023100602, 0.052991193, 0.0023041188, 0.17957658, -0.2030922, -0.1425795, -0.23024401) * input_2(-1.0, -1.0); + result += mat4(-0.015975023, -0.009022016, -0.07128515, -0.9648172, 0.11201802, 0.1042889, -0.073455185, -0.46511877, -0.13317789, -0.16325456, 0.47192484, -0.30260074, -0.14486994, 0.26783115, 0.07028643, 0.47081035) * input_2(-1.0, 0.0); + result += mat4(-0.06942568, -0.040542956, 0.14181846, -0.32465288, 0.06899519, -0.080351524, 0.032700367, -0.22498864, -0.015628533, -0.14717789, 0.1622541, 0.04667101, 0.19373819, -0.1243875, 0.5021106, -0.18649575) * input_2(-1.0, 1.0); + result += mat4(0.19647568, -0.16397713, -0.10313638, 0.20157321, 0.3106438, 0.12881951, -0.14808479, 0.07307226, 0.104322836, -0.010444634, 0.041405626, 0.029525064, -0.08898637, 0.040205482, -0.4471618, 0.10871738) * input_2(0.0, -1.0); + result += mat4(0.5408508, 0.13894892, 0.24706183, 0.18351056, 0.50175315, -0.37464756, 0.5562308, 0.72683567, 0.48813623, 0.12309002, 0.4253691, 0.82183063, -0.3676362, -0.25068066, -0.00039198724, -0.11189374) * input_2(0.0, 0.0); + result += mat4(0.12134678, 0.52810264, 0.19998768, 0.19744186, 0.23878829, 0.72096634, -0.31123167, 0.33895078, -0.15966055, 0.12822986, -0.53392535, -0.3892478, 0.19685687, 0.086107194, -0.058621563, -0.23262689) * input_2(0.0, 1.0); + result += mat4(0.1152349, 0.119555086, 0.13956788, 0.020588666, 0.03868985, 0.052911844, 0.07827627, 0.17949478, -0.17396188, -0.10170469, -0.34352002, -0.0063448288, -0.0051030484, -0.17951299, -0.00053655246, 0.10467772) * input_2(1.0, -1.0); + result += mat4(-0.08292957, -0.27222618, -0.15614702, 0.25888878, -0.6634351, 0.15048642, -0.10993817, -0.15038939, -0.656418, 0.19048116, 0.068445876, -0.046933804, -0.09318807, 0.29410043, -0.021330606, -0.061576195) * input_2(1.0, 0.0); + result += mat4(0.016317723, 0.2538134, -0.16653465, -0.06442609, -0.08154757, -0.096712925, -0.1247941, 0.137881, 0.46836308, 0.004774882, -0.15230556, -0.15950197, 0.139458, 0.026968248, 0.14717624, 0.14230624) * input_2(1.0, 1.0); + result += mat4(0.015807632, -0.0013736484, -0.21555874, 0.082833484, -0.13959222, 0.025690166, -0.105555795, -0.045335397, 0.009247386, -0.048040017, 0.15355478, -0.047244914, -0.015644783, 0.08176033, -0.002535128, -0.12699349) * input_3(-1.0, -1.0); + result += mat4(-0.021930143, 0.24298546, 0.23170288, 0.014862426, 0.029200474, 0.23039514, 0.6078819, -0.20306782, 0.09533743, 0.041796457, -0.026667202, -0.25138575, 0.094901994, 0.2085063, -0.0604569, -0.38190767) * input_3(-1.0, 0.0); + result += mat4(0.028443472, -0.08912895, -0.15167156, -0.16904557, 0.035323195, -0.40503067, -0.06872163, -0.05092241, -0.0064231954, 0.29672408, -0.15114008, -0.09513205, 0.13953564, -0.21764238, -0.23365143, -0.16633424) * input_3(-1.0, 1.0); + result += mat4(0.111420386, -0.11497599, -0.10059006, 0.10732607, -0.294557, -0.16103896, 0.030365994, 0.029142095, -0.09859116, 0.27482522, 0.26454046, 0.07515671, 0.27564687, -0.034884732, -0.064440854, 0.044970643) * input_3(0.0, -1.0); + result += mat4(0.14864795, -0.01346813, -0.0047257766, 0.07158367, 0.52776575, -0.011130927, -0.035596494, 0.074914314, 0.09887375, 0.31417903, 0.28163815, 0.27087986, 0.041566823, 0.052460473, -0.032584354, -0.66429394) * input_3(0.0, 0.0); + result += mat4(0.054368835, -0.4202152, 0.16090946, -0.10909179, -0.08303782, -0.28342992, -0.46728504, -0.07595817, 0.1420095, 0.59713274, -0.43748918, 0.09982746, 0.12522115, -0.24632324, 0.13281842, -0.004089472) * input_3(0.0, 1.0); + result += mat4(-0.0028923163, 0.03889567, -0.08190885, 0.06594016, -0.20354098, 0.22257936, 0.11112567, 0.013242405, -0.06732801, -0.10834411, -0.16062976, 0.01577849, 0.18791485, -0.066161714, -0.15809582, 0.060603812) * input_3(1.0, -1.0); + result += mat4(-0.15795502, 0.17500411, 0.34565103, 0.0075697093, 0.037020836, 0.097722046, -0.13365151, 0.05733126, -0.32457173, 0.04129774, -0.3160622, 0.2214068, 0.0713686, 0.22592343, 0.26362157, 0.00016719435) * input_3(1.0, 0.0); + result += mat4(-0.1289152, -0.12713864, 0.12159512, 0.06439113, 0.11274599, 0.03195468, 0.00030328514, 0.17814633, -0.2747713, -0.09219329, -0.079267256, 0.00016906325, -0.009351746, 0.084883235, -0.040695474, 0.08255578) * input_3(1.0, 1.0); + result += vec4(0.025575044, -0.01549084, -0.0032530257, -0.025025042); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!SAVE conv2d_2_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.070250675, -0.064555325, 0.0055875652, 0.013665419, -0.020371793, -0.07934171, -0.019257557, 0.016145073, -0.1246875, -0.14557518, -0.011456305, -0.082086086, -0.03546758, -0.07111718, 0.10057711, -0.01024379) * input_0(-1.0, -1.0); + result += mat4(0.3253677, 0.14576864, 0.0016586577, -0.2231161, 0.15570162, 0.08773072, -0.07159455, 0.012558793, -0.046078987, 0.19327486, 0.043696582, 0.14553994, 0.06746771, 0.048437856, -0.0268671, 0.05412222) * input_0(-1.0, 0.0); + result += mat4(-1.0006452, 0.78573596, -0.21649204, 0.6392501, 0.15350592, -0.09968317, 0.06068494, -0.09569535, 0.114810355, 0.12845065, -0.102412306, -0.068243235, 0.078136355, -0.10639303, 0.023868052, 0.018613424) * input_0(-1.0, 1.0); + result += mat4(0.038315646, -0.029802019, 0.0063055027, 0.016253728, -0.034852076, 0.019939965, -0.020228608, 0.026298283, 0.052905414, 0.12805091, -0.007353077, 0.06995443, -0.2473881, 0.29983908, 0.2549197, 0.14908777) * input_0(0.0, -1.0); + result += mat4(-0.30863178, -0.21975747, -0.33054247, 0.06368058, 0.17884134, 0.2507598, -0.2935948, 0.07128935, 0.28051922, 0.11669175, 0.14168528, -0.024640948, -0.8031321, 0.28284955, -0.2455082, 0.026518365) * input_0(0.0, 0.0); + result += mat4(0.89338917, 2.0591397, -0.057134435, 1.1472243, 0.3551509, -0.32555154, 0.046141807, -0.07562222, -0.12752691, -0.45627064, 0.08303637, -0.113360256, 0.09834267, -0.08388839, 0.0022953958, -0.06239821) * input_0(0.0, 1.0); + result += mat4(0.060123608, 0.018349156, 0.016806575, -0.057443745, 0.032638267, -0.031058563, -0.0043666223, -0.0121351695, 0.093246676, 0.12042413, 0.017385136, -0.04404228, -0.09690747, -0.0119758975, 0.061767925, 0.04193403) * input_0(1.0, -1.0); + result += mat4(0.035726927, -0.13475476, 0.3633074, 0.061828114, 0.10383674, 0.1099764, -0.06154769, 0.00070273574, -0.08766497, -0.4446943, -0.06968046, -0.021060845, -0.71000195, 0.1657275, -0.051945176, 0.11894423) * input_0(1.0, 0.0); + result += mat4(0.19498728, 0.063738935, -0.21550244, -0.28182957, 0.60004675, -0.18879782, -0.0547671, -0.0075668087, -0.13592349, 0.23701552, 0.026363654, 0.07025558, -0.3008532, 0.011372696, -0.01062149, -0.023431297) * input_0(1.0, 1.0); + result += mat4(-0.13818866, -0.16021085, 0.0371774, 0.028573368, -0.019974831, 0.027060684, 0.043729875, -0.020357143, 0.020167138, -0.059237245, -0.062871255, 0.011148257, 0.07833544, -0.18301637, 0.06992967, -0.03319132) * input_1(-1.0, -1.0); + result += mat4(-0.11560463, -0.04352659, 0.30896842, -0.058587246, -0.19511463, 0.13623622, 0.016589308, 0.05042807, 0.14343764, -0.36771998, 0.021457134, -0.11860027, 0.1338319, -0.19833675, 0.12880151, -0.062234357) * input_1(-1.0, 0.0); + result += mat4(-0.098736204, 0.1464554, 0.19053221, 0.045118276, -0.041139755, 0.092594646, -0.032208636, 0.013218817, -0.0223067, -0.12275442, 0.07909282, 0.02443674, -0.030828219, -0.038879942, 0.07127429, 0.036940694) * input_1(-1.0, 1.0); + result += mat4(0.21035509, -0.12404927, -0.19598685, -0.17256905, -0.1313136, 0.13184868, 0.15963084, 0.06360252, 0.07466142, -0.98865527, -0.17075878, 0.014876257, -0.24563289, 0.301307, -0.0893555, -0.0001625543) * input_1(0.0, -1.0); + result += mat4(0.06307468, 0.044329517, 0.06523954, 0.025638517, -0.3150573, 0.38837615, 0.08093637, 0.0718549, 0.46012887, -0.25434384, 0.5844477, 0.25599754, 0.06767366, -0.5913231, 0.21407242, -0.08154703) * input_1(0.0, 0.0); + result += mat4(-0.0047751325, 0.07297803, -0.1982587, 0.10710411, -0.021468481, 0.06780919, -0.026034081, -0.023932386, 0.17064925, 0.12605703, -0.06603309, 0.011421231, -0.05062889, 0.07819054, -0.017113116, -0.0011045552) * input_1(0.0, 1.0); + result += mat4(0.38511553, -0.036972478, 0.05345709, -0.07609652, -0.31424114, 0.16379282, -0.022209626, 0.0749239, 0.32018268, -0.215108, 0.031676818, -0.05568858, 0.18814774, 0.07613919, 0.33976752, -0.015773732) * input_1(1.0, -1.0); + result += mat4(-0.62141514, -0.081882514, -0.039554022, 0.033698928, -0.6711835, 0.14677347, 0.23083746, 0.114162244, 0.28922102, 0.040432163, -0.044539582, -0.06296361, 0.038879067, -0.2381332, 0.09768098, -0.09360624) * input_1(1.0, 0.0); + result += mat4(0.2618201, 0.011072779, -0.011822413, 0.009057616, -0.10893823, -0.053468082, 0.04975811, 0.03385816, 0.052764334, -0.020308515, -0.034825828, 0.0068398044, 0.04031352, 0.06522815, -0.06129971, -0.026757797) * input_1(1.0, 1.0); + result += mat4(-0.14951834, -0.0015281676, -0.05467369, -0.031829022, -0.26194534, -0.08464111, 0.10765457, -0.0038386618, -0.0039374996, -0.1031834, 0.014478384, 0.020845817, 0.044759877, -0.090479985, -0.019965157, 0.025729889) * input_2(-1.0, -1.0); + result += mat4(-0.24940227, 0.49363124, -0.028503634, 0.14926015, 0.051450763, 0.12187496, -0.3908865, 0.57048327, -0.0658294, -0.034032673, 0.024397794, 0.04630119, 0.06649158, -0.07857396, 0.026147636, -0.03654544) * input_2(-1.0, 0.0); + result += mat4(-0.13143374, 0.30948892, -0.004410545, -0.014899724, 0.26077712, 0.21058208, 0.28160268, -0.26843926, 0.0051304223, -0.018938448, 0.07244772, 0.008488509, 0.07673892, -0.12763472, -0.06632184, 0.032152858) * input_2(-1.0, 1.0); + result += mat4(0.009212626, -0.39023286, -0.07599106, -0.00069876754, 0.0075420747, 0.032170333, -0.029124118, 0.024717819, -0.12665945, -0.12825495, -0.03970484, 0.060654394, 0.01987766, -0.013909685, 0.02896767, 0.0074346354) * input_2(0.0, -1.0); + result += mat4(0.7127939, -0.4213136, 0.26235887, 0.026825964, 0.22816877, 0.09123721, 0.35202488, 0.20627853, 0.094651885, 0.21328028, 0.0057546417, 0.03580707, 0.12018957, -0.29299632, 0.07153637, -0.063620776) * input_2(0.0, 0.0); + result += mat4(-0.23183863, -0.07550788, -0.02153688, 0.098086774, -0.36729613, -0.043207474, -0.062184352, -0.16412784, 0.16119921, -0.040772595, -0.005291008, -0.04544663, 0.084584884, -0.2873868, 0.08411433, 0.1076006) * input_2(0.0, 1.0); + result += mat4(-0.19469552, 0.002846688, -0.03383882, -0.018170105, -0.08534647, 0.013687246, -0.027931761, -0.01618947, 0.14118527, -0.048655737, 0.003016336, 0.0076776682, -0.047241453, -0.05539009, 0.032978974, 0.011918604) * input_2(1.0, -1.0); + result += mat4(0.5955045, -0.30781147, 0.14075774, -0.080783464, -0.0087677, -0.00884359, 0.0042080074, 0.039858554, 0.1316781, 0.038613383, 0.004282624, 0.037862435, 0.3642399, -0.16680942, 0.001416012, 0.0023289789) * input_2(1.0, 0.0); + result += mat4(0.4895727, 0.06608398, -0.023232497, 0.021797689, 0.09574392, 0.071831234, 0.04853318, 0.027234877, -0.114328444, -0.015148545, -0.017762145, 0.013043628, 0.6622313, 0.13486308, 0.14171457, -0.059036396) * input_2(1.0, 1.0); + result += mat4(-0.21986535, 0.00776989, -0.057963863, 0.096132435, -0.028828118, 0.1545809, -0.033215042, 0.03250035, -0.050456032, 0.11275772, 0.0427854, -0.058141816, 0.089708924, -0.11435655, 0.047952462, 0.018452855) * input_3(-1.0, -1.0); + result += mat4(0.2743462, -0.70505196, 0.094819665, -0.39958528, 0.0789628, 0.077989995, -0.038592804, 0.037911665, -0.2706714, 0.28582227, -0.03454576, 0.04935541, -0.09206192, 0.049203407, -0.06847521, -0.064392924) * input_3(-1.0, 0.0); + result += mat4(-0.017011072, 0.22287089, -0.15119283, -0.00867462, 0.06582366, -0.01495119, 0.020513313, -0.111113906, -0.14462131, 0.12064894, -0.00566669, -0.029569913, 0.009787529, 0.046438158, 0.024138907, 0.025498528) * input_3(-1.0, 1.0); + result += mat4(0.19209626, -0.16208121, 0.07590561, 0.08353397, 0.26867896, 0.20443906, 0.010666154, 0.2534602, -0.17121747, 0.25450566, -0.008754005, 0.020042012, 0.25780827, -0.16371068, -0.13263172, 0.04394275) * input_3(0.0, -1.0); + result += mat4(-0.44790557, 0.5187072, -0.19914213, -0.07998445, 0.062326014, -0.018795984, 0.10236671, 0.09462016, -0.33312514, 0.22651239, 0.093198806, 0.08526007, -0.31100726, -0.13556395, 0.20941693, 0.3074936) * input_3(0.0, 0.0); + result += mat4(-0.28213122, 0.219188, -0.3130208, 0.07231383, -0.014399852, -0.08280814, -0.031957984, -0.019643627, -0.20217635, 0.12632455, 0.11428336, 0.05269817, 0.060042955, 0.123938255, -0.20008762, 0.23387507) * input_3(0.0, 1.0); + result += mat4(0.07985595, -0.0043025273, -0.0017595349, 0.029488558, -0.11921414, -0.2758251, 0.053045854, 0.0107014645, -0.28114924, 0.108173855, 0.010216577, 0.0427706, 0.037687033, 0.017704211, -0.0032785998, -0.04741731) * input_3(1.0, -1.0); + result += mat4(0.24186361, 0.036436252, -0.010707549, -0.007009169, -0.06586464, -0.07533323, 0.0036373718, 0.02290492, -0.39962158, 0.12524295, -0.04148519, 0.016839614, -0.030748004, -0.18874036, -0.12793465, 0.03968621) * input_3(1.0, 0.0); + result += mat4(-0.16528109, -0.021465264, -0.01748084, 0.015213102, -0.06939932, -0.056900162, -0.025318267, 0.013503473, -0.25687647, 0.09297276, 0.03076436, 0.04448304, 0.31659758, 0.21828108, 0.040426437, 0.042881463) * input_3(1.0, 1.0); + result += vec4(-0.020631848, 0.05779234, 0.0010567036, 0.04774376); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!SAVE conv2d_2_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.0032418317, -0.00281845, 0.09355873, -0.024295783, -0.06367037, 0.017446801, 0.03231114, 0.14387679, -0.22562215, 0.11822312, -0.13039765, -0.1987292, -0.21944329, -0.0895259, -0.04607487, 0.41073295) * input_0(-1.0, -1.0); + result += mat4(-1.0766065, 0.21408156, -0.29746503, -0.7015492, -0.12756523, 0.25920132, 0.34356612, 0.15150845, 0.01198087, -0.28495735, 0.21088229, 0.036871694, -0.15790656, -0.039942082, 0.013812598, 0.11601882) * input_0(-1.0, 0.0); + result += mat4(0.31024015, -0.2696443, 0.18331341, 1.6139767, 0.056110255, 0.18936342, 0.09762666, 0.31446752, -0.05235961, -0.029698957, -0.034949396, 0.26445726, 0.061127037, 0.070559, 0.08115693, 0.16131893) * input_0(-1.0, 1.0); + result += mat4(-0.0015656165, 0.13085325, -0.040557288, -0.13967055, -0.03193661, -0.17216593, -0.011907505, 0.027492287, 0.021079114, -0.39898136, 0.16838726, 0.15773164, -0.92173773, -1.4150436, -0.080213286, -0.4462429) * input_0(0.0, -1.0); + result += mat4(-0.90852517, 0.26728588, 0.55115455, 0.5415873, -0.4288419, 0.09903167, 0.3735992, 0.6444309, 0.4024263, -0.058784615, -0.9345013, -0.52035, 0.11466488, -0.49863517, -0.012234155, -0.17142402) * input_0(0.0, 0.0); + result += mat4(1.1278188, -0.01965422, -1.4823472, -0.97913736, 0.034382686, 0.09777821, 0.31772834, 0.73121727, 0.20733249, -0.313271, 0.10104627, -0.5723655, -0.055001315, 0.007574654, 0.014853455, -0.16464826) * input_0(0.0, 1.0); + result += mat4(0.044183962, -0.119332716, -0.095162526, 0.1387352, 0.101037905, -0.09494954, 0.018316362, 0.22334825, 0.15947162, 0.48524976, 0.030767452, -0.366869, -0.09920594, -0.6560571, -0.3401922, 0.11465476) * input_0(1.0, -1.0); + result += mat4(-0.68812156, -0.70782506, 0.252562, -0.25377655, 0.123907275, 0.84538573, 0.37554488, 0.37987, -0.32107696, -0.12985495, 0.05096817, 0.05598393, -0.23294725, 0.099453315, -0.04711874, 0.017520407) * input_0(1.0, 0.0); + result += mat4(-0.87061954, 0.43077528, 0.6937386, 0.07236113, 0.21538937, -0.2815185, 0.031700328, -0.28346708, 0.015436165, 0.04262717, -0.061281182, 0.38382068, 0.015369656, 0.014499268, -0.0008541125, 0.18895553) * input_0(1.0, 1.0); + result += mat4(0.06886726, -0.13550553, -0.2460777, -0.30955797, 0.0056309765, 0.017938443, -0.012305138, 0.21143034, 0.054592423, -0.099534884, -0.089678936, -0.5861638, -0.071734734, -0.0450752, -0.1498938, 0.14484903) * input_1(-1.0, -1.0); + result += mat4(-0.029322878, 0.10450356, -0.13979657, -0.013428391, 0.09557894, 0.048527256, 0.07404175, 0.08305832, -0.26188996, -0.06288839, -0.20875691, 0.14718486, 0.00019934203, -0.010475175, -0.08412265, -0.08540938) * input_1(-1.0, 0.0); + result += mat4(0.13610592, -0.1075299, -0.105324626, 0.3348078, 0.05380872, 0.06398808, 0.021310508, 0.056981247, -0.071265176, -0.0025995288, -0.012366852, -0.13604502, 0.014241401, 0.045584686, -0.0018864004, 0.09843744) * input_1(-1.0, 1.0); + result += mat4(-0.032252572, 0.33270177, 0.07956925, -0.39224666, 0.46453315, 0.25809258, -0.13195899, 0.04949939, -0.21033348, -0.955089, 0.23454161, 0.35407177, -0.19022815, -0.27849483, 0.08718101, -0.07270922) * input_1(0.0, -1.0); + result += mat4(0.3107551, -0.5045696, -0.22188987, -0.52426636, 0.23835345, 0.13928273, -0.07865814, -0.39791438, -0.7715955, -0.29919335, 0.66237426, 0.0005386186, 0.25051332, -0.27902642, -0.3420562, -0.22343822) * input_1(0.0, 0.0); + result += mat4(0.025259644, -0.12753583, 0.007588169, -0.0431681, 0.08629881, -0.12850453, 0.010906871, 0.24766417, -0.04026413, 0.08566904, -0.028795354, -0.31396678, 0.0115587115, 0.009978338, -0.03189287, 0.033203743) * input_1(0.0, 1.0); + result += mat4(-0.086983286, -0.44656163, 0.006433615, -0.09622339, 0.35967687, 0.9416047, -0.11794692, 0.06485681, -0.20577492, -1.0380989, 0.061755467, -0.34625283, -0.20514214, -1.3819218, 0.16718706, 0.0078006666) * input_1(1.0, -1.0); + result += mat4(-0.033058852, 0.18619445, -0.10690333, 0.29517832, 0.2259145, 0.70564175, -0.0009205537, 0.557237, 0.04601124, -0.24531358, -0.05826118, -0.4834744, 0.027569221, -0.85532147, -0.5015265, -0.85845566) * input_1(1.0, 0.0); + result += mat4(-0.03760437, 0.16698386, -0.0027971845, -0.13247986, -0.02621725, -0.09816215, 0.07182061, 0.7173764, -0.056115553, 0.08067314, -0.031009741, -0.41968298, 0.012316497, -0.037612073, 0.016410317, -0.15089153) * input_1(1.0, 1.0); + result += mat4(0.11930576, -0.105056755, -0.21176857, -0.10437857, 0.63857514, 0.02063724, 0.11624289, 0.74083203, -0.040834814, 0.20874532, 0.10178323, -0.1438132, 0.028896464, 0.07441687, 0.03823055, -0.18959804) * input_2(-1.0, -1.0); + result += mat4(0.15858725, -0.16875058, 0.060016416, -0.38650483, 0.19379084, 0.44335982, 0.10119985, -0.54430217, -0.0804738, 0.09750854, 0.13848816, 0.40491527, -0.1114565, -0.057725493, 0.10729917, -0.13439661) * input_2(-1.0, 0.0); + result += mat4(0.049936228, -0.08880706, -0.07856456, -0.3438158, -0.32723048, -0.024178717, 0.0924733, 0.1360996, -0.025931815, 0.13301319, 0.102743246, 0.13681285, -0.07925731, 0.10479034, 0.09712417, -0.18522662) * input_2(-1.0, 1.0); + result += mat4(-0.20773003, -0.37879512, 0.24735211, -0.36258343, -0.2977519, 0.12170178, 0.10047027, 1.1193113, -0.2661618, 0.18264809, 0.15162806, -0.04329905, -0.04325619, -0.024972865, -0.005214961, -0.2864696) * input_2(0.0, -1.0); + result += mat4(0.35002282, 0.7271431, -0.39227498, -0.52168417, -0.041568764, -0.2999454, 0.113214865, -0.75611854, 0.07534638, 0.09483176, 0.3060282, 0.33795384, -0.102311045, 0.37781683, 0.03418143, -0.59470314) * input_2(0.0, 0.0); + result += mat4(-0.00018808924, -0.0075254934, -0.05493958, 0.48828408, 0.10667924, 0.31491157, 0.09198391, 0.49204823, -0.04749728, 0.14780743, 0.03658829, -0.15973495, 0.019449852, 0.24918088, 0.20268294, -0.5292132) * input_2(0.0, 1.0); + result += mat4(0.20290099, -0.26941967, 0.09761545, 0.056405928, 0.19977914, 0.09699908, 0.0051088366, 0.18679713, -0.17448671, 0.3379895, 0.15410927, 0.041986722, 0.016882308, 0.23363072, -0.018388221, -0.5699578) * input_2(1.0, -1.0); + result += mat4(-0.1950845, -0.08681598, 0.047809556, 0.72161925, -0.05803967, 0.19885783, 0.041264344, -0.10988862, 0.0744118, 0.23799276, 0.09191112, -0.29449457, -0.14617108, 0.20597872, 0.19203386, -0.63249385) * input_2(1.0, 0.0); + result += mat4(-0.038470183, -0.00018700835, 0.010806657, -0.26444888, 0.031786107, -0.13948701, 0.043842457, -0.12175045, -0.0094440915, 0.25809965, 0.027568689, -0.04877708, 0.11713721, 0.37429926, 0.13103049, -0.78984934) * input_2(1.0, 1.0); + result += mat4(-0.27891314, 0.11715391, 0.16587777, 0.08494328, 0.122880325, -0.043016773, 0.000936336, -0.035826523, -0.053165674, 0.11331368, -0.073407635, 0.22329518, 0.029878104, 0.09026176, 0.04326734, -0.114236854) * input_3(-1.0, -1.0); + result += mat4(0.32378826, -0.18797228, -0.07196155, 0.27878618, -0.045553744, -0.00764739, 0.083094895, -0.14322676, 0.10549502, 0.059752427, 0.04437663, 0.009793787, 0.077268764, 0.002083231, 0.09856524, -0.13051282) * input_3(-1.0, 0.0); + result += mat4(-0.24678248, -0.20220315, -0.025333386, 0.14738284, -0.040433243, 0.081312746, 0.0271736, -0.17826521, 0.009212756, 0.13966317, 0.026818553, -0.039250426, -0.0017009734, -0.0014022918, 0.026952995, 0.100892946) * input_3(-1.0, 1.0); + result += mat4(-0.086581096, -0.4406713, -0.02875564, -0.40684685, -0.21909209, -0.1514063, -0.44540754, -0.301432, 0.02622643, 0.08950116, -0.11255894, -0.15233463, -0.22481476, 0.09743011, -0.3561726, -0.8044944) * input_3(0.0, -1.0); + result += mat4(0.020818314, -0.73993814, 0.32895774, 0.47817877, -0.10755548, -0.17971893, 0.18175483, -0.6607182, 0.37159398, 0.18343213, 0.004194262, -0.15745291, -0.37303105, -0.6155113, 0.49484956, 0.38394094) * input_3(0.0, 0.0); + result += mat4(-0.3311772, 0.46830612, 0.1549903, 0.21548174, -0.057978004, 0.14099161, -0.088874854, 0.26388767, 0.17865022, 0.26672542, 0.09265982, 0.30567315, 0.13145038, 0.4363063, 0.1552734, -0.2062865) * input_3(0.0, 1.0); + result += mat4(-0.06321535, -0.019997166, 0.031983953, -0.10096831, -0.14357273, -0.27046266, -0.041355003, -0.26706928, -0.028463002, 0.28695852, -0.0050459146, 0.3118061, 0.3228208, -0.79137194, -0.26436442, -0.33849612) * input_3(1.0, -1.0); + result += mat4(0.14695117, -0.28402868, -0.021456135, -0.13634984, 0.14185408, -0.16042992, -0.0673965, 0.38385352, 0.20306498, 0.067465745, 0.036354687, 0.500885, 0.07446424, -1.726981, 0.07081159, 0.3101797) * input_3(1.0, 0.0); + result += mat4(-0.07788495, 0.052131526, -0.020398667, -0.025184246, 0.014951706, 0.01782885, -0.014316903, -0.11160989, 0.13326314, 0.13992104, -0.076109454, 0.19876897, 0.05500878, 0.011768918, 0.13755211, -0.6384986) * input_3(1.0, 1.0); + result += vec4(-0.011627553, 0.2941776, 0.15296347, 0.17125928); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!SAVE conv2d_2_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.10550374, -0.11357201, 0.07888178, -0.009454996, 0.029243728, 0.044776008, 0.06117017, -0.0033941732, 0.11475406, -0.00047773556, -0.010560198, -0.082750596, 0.32353073, 0.10755812, -0.06297476, -0.14294274) * input_0(-1.0, -1.0); + result += mat4(0.07537084, -0.048691943, -0.21579227, -0.22620541, -0.31984562, 0.09245543, 0.07503905, 0.41105175, -0.34871918, -0.21163185, -0.234607, -0.1813852, 0.2768104, 0.116012335, -0.051209014, -0.41934308) * input_0(-1.0, 0.0); + result += mat4(0.106116466, -0.19425815, -0.22837971, -0.14025483, -0.34739834, -0.00032619608, -0.21126792, 0.48743576, 0.2779885, 0.17174353, -0.027002458, 0.07306874, 0.020137945, -0.082750596, -0.087257035, -0.17315188) * input_0(-1.0, 1.0); + result += mat4(-0.110023506, -0.031421598, -0.100148745, -0.043778997, -0.04639248, 0.088162325, 0.061915398, 0.0066980026, 0.13395983, -0.11040434, -0.05704891, 0.022581374, 0.3128967, -0.2689307, -0.41545668, 0.07292348) * input_0(0.0, -1.0); + result += mat4(0.1986706, -0.19586797, 0.13557135, -0.18278186, -0.16700716, 0.35033453, 0.29307887, 0.26364493, -0.009355249, 0.058410957, -1.0506444, -0.40182757, 0.31098273, -0.10666301, -2.6548178, -0.84548914) * input_0(0.0, 0.0); + result += mat4(0.6885304, 2.6740043, -1.1639572, 0.3212138, -0.38607416, -0.22761318, -0.34288582, 1.0032585, -0.3754143, -0.277084, 2.2632895, -0.10069846, 0.1706768, -0.17704798, -0.3690754, -0.55623144) * input_0(0.0, 1.0); + result += mat4(-0.0058475747, 0.092239834, 0.03258296, -0.006873515, 0.0055270563, -0.06623486, 0.021254987, 0.010057185, -0.22673327, 0.02831149, -0.08270155, 0.010610379, 0.16480452, -0.07799774, -0.18108465, -0.08041636) * input_0(1.0, -1.0); + result += mat4(-0.3687917, 0.0015192678, 0.26362047, 0.14053847, -0.09660009, 0.22568233, 0.20263867, 0.13928469, 0.13896161, -0.034658827, -0.12544766, 0.15765382, 0.1916885, -0.09351314, 0.17469986, -0.23801863) * input_0(1.0, 0.0); + result += mat4(0.054990374, 0.6731113, -0.79498553, -0.18008845, -0.13066109, 0.006744439, -0.078951105, 0.44002286, 0.122511245, 0.00030432644, -0.08969934, 0.06675112, -0.004104628, 0.05107683, -0.023175346, -0.19301888) * input_0(1.0, 1.0); + result += mat4(-0.10026489, -0.18141319, 0.28367928, -0.32065824, 0.096969925, -0.025516586, 0.09370025, 0.06267722, -0.21437296, 0.015152029, -0.0022978738, -0.027678905, -0.17771055, -0.12993106, -0.07937723, -0.03669109) * input_1(-1.0, -1.0); + result += mat4(0.03983677, -0.17381713, 0.1917902, -0.35414377, 0.23821616, 0.10345124, -0.006042578, -0.14040653, -0.46987906, 0.028904872, 0.23900944, -0.3405824, -0.1249719, -0.29366374, -0.011886979, -0.10576485) * input_1(-1.0, 0.0); + result += mat4(-0.11324996, -0.0040691877, -0.057280954, -0.13331561, 0.16730803, 0.08193078, 0.008491761, -0.11388916, -0.15777789, -0.022868123, -0.09045951, -0.07077411, -0.08416382, -0.014607465, 0.02053901, 0.016474707) * input_1(-1.0, 1.0); + result += mat4(-0.18575658, -0.12995607, -0.107579865, -0.10049691, 0.24668694, -0.5316361, 0.0068146405, 0.10583138, -0.26690453, -0.19832891, 0.01485171, -0.19615255, -0.38808602, -0.31071585, -0.00948727, -0.24661621) * input_1(0.0, -1.0); + result += mat4(0.24906884, -0.10380555, -0.43266407, 0.45181814, 0.6533882, -0.2593012, -0.38899824, -0.6780327, 0.03871626, 0.21516687, 0.45395896, -0.33956707, -0.4921976, -0.0052295616, -0.018502828, 0.09199569) * input_1(0.0, 0.0); + result += mat4(-0.037210345, 0.12695578, 0.8139262, 0.10623822, 0.079375744, -0.05145209, 0.15738356, -0.106218986, -0.02607716, 0.17086633, -1.6931845, 0.034994286, -0.08811003, -0.04408626, -0.071093574, 0.21023814) * input_1(0.0, 1.0); + result += mat4(-0.06261088, -0.1259426, -0.014824326, 0.090662636, 0.12494774, 0.07766109, 0.13789569, -0.007168516, -0.1181953, -0.03137529, 0.0331089, 0.09037104, -0.23512071, -0.05876927, -0.14690368, -0.094113044) * input_1(1.0, -1.0); + result += mat4(0.06465673, -0.051327128, -0.048185863, -0.12279169, 0.16082339, -0.06591974, 0.34204733, -0.010650814, -0.17619836, 0.27045846, -0.034530625, 0.020852929, 0.2346645, 0.42727286, -4.4332733, -0.25491363) * input_1(1.0, 0.0); + result += mat4(-0.039185487, 0.11757238, -0.044797663, -0.08931824, 0.22486374, -0.011932243, -0.7173879, -0.40206847, -0.09916637, 0.042071722, 0.09706156, 0.07707701, -0.040210437, -0.081606284, 0.06445115, 0.26630825) * input_1(1.0, 1.0); + result += mat4(0.11721917, 0.069451794, 0.15904525, -0.36388224, -0.28100982, -0.15428692, 0.158798, -0.072103195, -0.0155322375, 0.16896516, 0.22271194, -0.06142391, -0.0028926188, 0.0749536, -0.096120745, 0.011480361) * input_2(-1.0, -1.0); + result += mat4(0.24732758, -0.1566908, 0.033109933, 0.028149575, -0.1544836, 0.3285281, 0.07156109, 0.2987016, -0.08272131, 0.22117566, 0.13635363, -0.14212343, -0.16792537, 0.102990665, -0.013385898, 0.19609737) * input_2(-1.0, 0.0); + result += mat4(-0.059073802, 0.24315168, 0.17736703, 0.14955598, -0.09276576, -0.08832887, -0.08893188, 0.28026223, 0.0021140373, 0.06291259, 0.22999181, -0.12695849, -0.100244544, 0.120247245, 0.008690474, 0.11451382) * input_2(-1.0, 1.0); + result += mat4(-0.061550517, 0.17739052, 0.28066316, -0.2199194, 0.346721, 0.29904357, 0.10979857, 0.020835191, 0.12165364, 0.2582395, 0.19736022, -0.06917475, -0.031416975, -0.09026073, -0.031493474, 0.09027557) * input_2(0.0, -1.0); + result += mat4(-0.097644374, 0.31185693, 0.2514437, 0.040911343, 0.019634232, -0.60278106, 0.11090485, -0.18912655, -0.0971697, 0.17026265, 0.26222247, -0.21533012, -0.1874704, 0.17056972, 0.0017216684, 0.22697547) * input_2(0.0, 0.0); + result += mat4(-0.23532534, 0.22481272, 0.6483678, 0.4122062, -0.37793967, 0.3714874, -0.440418, -0.18221484, -0.11868537, 0.13543686, 0.09139225, -0.1671763, -0.3605308, 0.13794807, 0.24802916, 0.07587314) * input_2(0.0, 1.0); + result += mat4(-0.14598802, -0.01992267, 0.09651476, -0.022682654, -0.048200414, 0.07139038, 0.0045526684, 0.011973538, 0.08754029, 0.086166345, 0.108765334, -0.027121557, -0.03633989, 0.0735487, -0.047362532, -0.0010878895) * input_2(1.0, -1.0); + result += mat4(0.061255276, -0.1474043, -0.2096865, -0.107057795, 0.048980188, -0.01015316, 0.04263835, -0.04054499, -0.015358464, 0.095012315, 0.27709615, -0.009710667, 0.010034585, 0.22730115, 0.0072672963, -0.0013347507) * input_2(1.0, 0.0); + result += mat4(0.030503936, -0.13295831, -0.0354101, 0.050955754, 0.04219271, 0.039887317, 0.047018275, 0.106013164, 0.041373182, 0.06713298, 0.047747795, -0.17144798, -0.2170039, 0.09796223, -0.007748606, 0.20715609) * input_2(1.0, 1.0); + result += mat4(-0.048806306, 0.019672344, 0.068977624, -0.08191503, 0.09681816, -0.179008, -0.09567522, 0.012263574, 0.03415055, 0.0099034235, 0.13068233, 0.106509015, -0.0728294, -0.08786517, -0.019333074, 0.030700652) * input_3(-1.0, -1.0); + result += mat4(0.31564966, -0.15104221, -0.0024279412, -0.011578325, 0.20037314, -0.14247908, -0.5562782, -0.11083048, 0.061042182, -0.009004217, 0.047792602, -0.11209622, -0.017687157, 0.12686348, 0.052747484, 0.068618566) * input_3(-1.0, 0.0); + result += mat4(0.46351027, -0.32469144, -0.16121142, -0.2916236, 0.096389204, -0.027867593, 0.123439185, -0.06554243, 0.06070318, 0.015006846, 0.13056518, 0.053025745, -0.044289447, -0.0021437278, -0.025217721, 0.13451631) * input_3(-1.0, 1.0); + result += mat4(-0.054940782, -0.11412618, -0.043573245, 0.086213805, 0.2716397, 0.5768788, -0.02239066, -0.031175284, 0.23828429, -0.109657325, 0.07375226, -0.010235546, 0.17213656, 0.115580365, -0.34312066, 0.18388635) * input_3(0.0, -1.0); + result += mat4(0.01707091, 0.2990204, 0.07792275, 0.21241857, -0.2150948, -0.03729286, 1.3200082, 0.39277607, 0.3458824, -0.47904748, 0.17305411, -0.14150707, 0.092167735, -0.30734637, -0.1227123, 0.298594) * input_3(0.0, 0.0); + result += mat4(0.08047529, -0.5537223, -0.013211265, 0.31446353, 0.026941746, 0.049584966, -0.07612921, 0.009145891, 0.0153347375, -0.01635164, 0.1282867, -0.106672846, 0.15963459, 0.103865296, -3.0934982, -0.012764183) * input_3(0.0, 1.0); + result += mat4(0.057316717, 0.004068976, -0.009991628, 0.018255783, 0.017127823, -0.29468337, 0.08387032, -0.031016294, 0.04162933, -0.10439918, 0.112593025, -0.06880861, -0.10102297, -0.24036682, -0.08144947, -0.07253578) * input_3(1.0, -1.0); + result += mat4(-0.056656495, 0.018891655, 0.022379898, 0.08819716, -0.043121625, -0.16581047, -0.38594142, -0.010498503, 0.14442314, -0.06626305, 0.15192088, -0.13532262, -0.0061613866, -0.26219103, -0.063897066, 0.28610343) * input_3(1.0, 0.0); + result += mat4(0.0091306465, -0.038607072, 0.014295919, -0.089914754, 0.0125954505, -0.019543052, 0.18890853, -0.05892927, 0.1191712, -0.14014573, 0.15696165, 0.12862267, 0.117319606, -0.2725742, 0.4468303, 0.00083987927) * input_3(1.0, 1.0); + result += vec4(0.09942654, 0.17647809, -0.23357716, 0.15207362); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!SAVE conv2d_2_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.067739464, 0.0027059154, 0.045670707, 0.020509422, 0.02953874, 0.02180957, -0.038988404, -0.01756666, 0.048566956, 0.0021717283, -0.096184336, 0.080362216, -0.046530686, -0.02404417, -0.120621644, -0.1660682) * input_0(-1.0, -1.0); + result += mat4(0.029015584, -0.039481238, -0.09606819, 0.14278576, 0.07042536, 0.021169947, 0.17910199, 0.12215355, -0.029076498, 0.034717556, -0.03351626, -0.23706649, 0.0020323945, 0.11280138, -0.03511748, -0.09597691) * input_0(-1.0, 0.0); + result += mat4(-0.08722484, -1.2326493, -0.10809882, -0.4832474, -0.14781204, 0.2355961, 0.08951413, 0.0072795395, 0.019944001, -2.9771545, -0.09160745, -0.005327705, 0.005668408, -0.07025448, 0.049534023, 0.057965506) * input_0(-1.0, 1.0); + result += mat4(-0.08216266, -0.11346823, 0.012806841, 0.071437635, 0.07094945, 0.037956208, 0.032686718, -0.01591238, -0.014875455, 0.022008732, 0.019224355, -0.039669428, -0.14594707, -0.018881148, -0.07885135, -0.1227608) * input_0(0.0, -1.0); + result += mat4(0.5479983, -0.035111785, 0.069499284, 0.25283432, 0.0067244517, -0.09061067, 0.16611268, 0.0943576, 0.043323796, -0.07343535, 0.22490929, -0.006480972, 0.086440526, 0.39434922, 0.19401151, -0.171947) * input_0(0.0, 0.0); + result += mat4(-0.21467613, -1.2214702, 1.1222911, 1.4394158, -0.02305277, -0.619216, 0.23527057, 0.04858989, -0.04974739, -3.157367, 0.12800173, 0.028441412, 0.023826249, -0.07434157, -0.055966213, -0.05619391) * input_0(0.0, 1.0); + result += mat4(-0.044177588, 0.009508421, -0.04047933, -0.05853689, 0.12521958, 0.0110212965, 0.023681004, 0.020921888, -0.18744467, -0.032152016, 0.036749817, -0.04315448, 0.1749953, -0.07129545, -0.025162565, -0.037116393) * input_0(1.0, -1.0); + result += mat4(-0.4363973, 0.049752127, 0.26370835, -0.33778724, 0.29309008, 0.25356743, 0.07964115, 0.12768093, 0.2558791, 0.043976013, -0.15514928, 0.20261404, -0.27247292, 0.30584708, 0.10962227, -0.1848668) * input_0(1.0, 0.0); + result += mat4(1.0268433, -0.270622, 0.016543254, 1.1357723, -0.16738483, -0.23547953, 0.06139363, 0.051402543, -0.042256027, -1.8247498, 0.03720584, -0.025378505, -0.0035531109, 0.23077229, -0.03149228, 0.0012972733) * input_0(1.0, 1.0); + result += mat4(-0.034585327, 0.062254965, 0.0014796978, 0.13066417, 0.02817195, -0.004246652, -0.0033744, 0.032713026, -0.057866693, -0.005955477, 0.03754926, 0.05410584, -0.041203726, 0.07098761, -0.009045757, 0.07356443) * input_1(-1.0, -1.0); + result += mat4(0.10431114, -0.8258525, 0.03268785, -0.09126408, -0.047993798, -0.025064142, 0.017462531, -0.06854077, 0.04787914, -0.45720297, -0.008068044, 0.095724806, 0.03778847, -0.024348995, 0.03927608, -0.013326363) * input_1(-1.0, 0.0); + result += mat4(-0.11094069, 0.99817014, 0.019983035, -0.10872309, 0.0022901185, -0.888232, -0.0033115891, 0.04839168, 0.0050655757, 0.9749891, -0.0077763745, -0.05803866, 0.018184017, 0.03728442, 0.043797906, -0.015761456) * input_1(-1.0, 1.0); + result += mat4(0.19187991, 0.10303422, 0.071418665, 0.16885018, 0.12305704, 0.025473969, -0.06434405, -0.107251175, -0.0134891635, 0.08998735, -0.02127025, -0.09854704, -0.11906279, -0.1266874, 0.14351588, 0.07888272) * input_1(0.0, -1.0); + result += mat4(0.5514885, 0.555759, 0.038488757, -0.23715097, -0.00756622, -0.049909916, -0.1279928, -0.10791177, -0.17262994, -0.30031818, -0.16013937, 0.16004044, 0.13373448, 0.612924, 0.042359155, 0.17621052) * input_1(0.0, 0.0); + result += mat4(0.23727892, -1.4445945, -0.059873905, 0.12031908, -0.01459347, -0.8545277, 0.03050521, -0.010392183, 0.011643898, 1.1577172, 0.015770452, 0.04114256, 0.0057659457, -0.9851211, -0.022179918, -0.062343713) * input_1(0.0, 1.0); + result += mat4(-0.84334755, 0.10418579, 0.001138701, 0.018169077, -0.4705142, -0.085094, 0.083179474, 0.19631213, -2.636338, 0.05460574, -0.042804454, -0.26097092, -1.0932889, -0.05230706, 0.21458454, -0.26925626) * input_1(1.0, -1.0); + result += mat4(0.121143535, -0.12113049, 0.00025860054, -0.06588957, 0.16674016, 0.034282334, 0.108497456, 0.07352785, -0.05503895, -0.47280398, -0.15442462, -0.07043764, -0.10883482, -0.53495437, -0.047170017, -0.04228292) * input_1(1.0, 0.0); + result += mat4(-0.18606336, 0.059038725, -0.025718078, -0.04170661, 0.08339069, 0.056081437, -0.012081724, -0.019549258, -0.015528093, -2.8108625, 0.03167536, 0.07075596, -0.012097635, -0.24080202, -0.048143532, 0.011047583) * input_1(1.0, 1.0); + result += mat4(-0.057556324, -0.0041240123, -0.124363296, -0.09020502, -0.11465544, -0.04956608, 0.13891084, -0.11134685, 0.020822667, -0.054151896, 0.060716666, 0.0007391353, 0.033566225, 0.0011971671, 0.024020206, 0.009046991) * input_2(-1.0, -1.0); + result += mat4(0.09700671, 0.21268755, -0.019426173, -0.0066364, 0.31379914, -0.18238954, 0.13425156, 0.3888867, -0.061964467, -0.054789413, 0.045532513, -0.04585025, -0.026202781, 0.009398275, 0.02388083, -0.03854979) * input_2(-1.0, 0.0); + result += mat4(-0.0059061917, -0.19723885, -0.014375415, 0.023015227, -0.15797538, -0.48732564, -0.3192106, -0.031382356, -0.0004972266, 0.45357284, 0.036495592, -0.020902526, -0.015138299, -0.9485471, 0.015136834, 0.07421264) * input_2(-1.0, 1.0); + result += mat4(-0.020380314, 0.2012965, -0.20302327, -0.09897661, 0.14649989, 0.08775424, -0.08441092, 0.13169192, 0.12150639, 0.10510166, 0.067217804, 0.06730403, -0.025086759, -0.042309124, 0.010839681, 0.016844064) * input_2(0.0, -1.0); + result += mat4(0.094443746, 0.22262073, 0.35584304, 0.02990167, 0.23894444, 0.1008289, 0.31466147, -0.2749282, -0.12543873, 0.013210149, 0.12012216, 0.058901228, 0.042775217, -0.023439521, -0.0025481142, 0.048405815) * input_2(0.0, 0.0); + result += mat4(-0.0598501, -0.79461426, 0.064557455, 0.016271438, 0.17290382, 0.22850311, -0.11322352, 0.02494747, 0.085244, 0.5943068, -0.032279726, -0.06699785, 0.023163918, -0.36143672, 0.19113597, 0.059635084) * input_2(0.0, 1.0); + result += mat4(-0.087975144, -0.19417961, -0.00799036, 0.026454458, -0.08341214, -0.009212416, -0.04849944, -0.0505916, 0.10676469, -0.05725598, 0.0068268557, 0.010562822, -0.049340367, -0.0056357533, -0.014285177, 0.0148984445) * input_2(1.0, -1.0); + result += mat4(0.29703292, 0.20045064, -0.093661845, 0.12405044, -0.074945636, 0.08038589, 0.053966664, 0.10201409, -0.17379364, -0.012045927, 0.042001713, -0.03994206, 0.11479336, 0.0028630574, -0.050728705, -0.0010972767) * input_2(1.0, 0.0); + result += mat4(0.02558727, -0.33157972, 0.00038281528, -0.032282583, -0.016395275, -0.21367556, 0.05019589, -0.033307116, 0.09189105, 0.4721281, -0.02957601, 0.008412057, -0.043125976, -0.598167, 0.07234823, 0.2343087) * input_2(1.0, 1.0); + result += mat4(0.009162198, -0.027312744, 0.048758037, -0.043983176, -0.006460136, 0.041034617, -0.016489696, -0.15232925, 0.00037131147, 0.03176477, -0.0048638848, 0.0506047, -0.004328417, 0.040570613, 0.051702786, 0.05605864) * input_3(-1.0, -1.0); + result += mat4(-0.12709533, -0.04773232, 0.35876042, 0.16163702, 0.004747159, -0.61153233, -0.03609678, -0.059261747, 0.029609893, -0.080367625, 0.08530234, -0.016722666, 0.051909745, -0.03355334, -0.020843435, -0.026488796) * input_3(-1.0, 0.0); + result += mat4(-0.030170638, 0.92302775, 0.07801788, -0.19614343, 0.009830339, 0.21927996, -0.02647815, -0.008193135, -0.01932079, 0.14250278, -0.02544482, 0.007135375, -0.057774957, 0.3833391, 0.015643671, 0.019642336) * input_3(-1.0, 1.0); + result += mat4(-0.050147835, 0.076696, -0.024183713, -0.047470324, 0.046041396, -0.05481688, 0.05898662, 0.3583369, 0.010068302, -0.042756177, -0.014871278, 0.059432536, 0.12257442, 0.02437626, -0.10101125, 0.24489224) * input_3(0.0, -1.0); + result += mat4(0.1956195, 0.00011087823, -0.28059885, 0.7199156, -0.059531253, 0.049905967, 0.25357923, 0.15605897, 0.063361794, 0.05286769, 0.07725685, 0.11135747, -0.13634701, 0.029016875, -0.13272844, 0.0040828483) * input_3(0.0, 0.0); + result += mat4(-0.045258604, 1.8520931, -0.01799328, -0.18466973, 0.016824339, -2.0189273, -0.016179508, -0.076441586, -0.04012446, 0.052383106, 0.1307373, 0.09640295, 0.036441494, -0.25817758, 0.17303267, 0.023941569) * input_3(0.0, 1.0); + result += mat4(0.11320436, 0.011102791, -0.02511468, -0.024525892, -0.14659634, -0.06348406, -0.0061215, 0.058561772, -0.060636993, -0.015162144, 0.019557696, 0.07026482, 0.001710844, 0.022721065, 0.0030226433, -0.016129322) * input_3(1.0, -1.0); + result += mat4(-0.41243607, -0.00558194, 0.05159404, -0.16113944, 0.020581646, 0.2724895, -0.0178955, -0.12687217, 0.16615388, 0.022460684, 0.11668086, 0.22976668, -0.6802382, 0.14179753, 0.04529938, -0.56898695) * input_3(1.0, 0.0); + result += mat4(0.078151375, -0.9324457, -0.010844815, -0.05524954, -0.020125253, -0.27159035, 0.012724163, -0.018521506, -0.10530203, 0.11032578, 0.03986082, -0.038589302, -0.0011485526, -0.32736817, 0.064056486, 0.0155353295) * input_3(1.0, 1.0); + result += vec4(-0.038001113, 0.09894204, -0.012140653, 0.02584048); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!SAVE conv2d_3_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.10005344, -0.32207555, 0.35126314, 0.1157903, 0.26477027, -0.05290584, 0.1271771, 0.005631774, -0.104756735, 0.03517258, -0.18784039, 0.06322826, -0.062020183, 0.0796114, 0.006862096, -0.08741231) * input_0(-1.0, -1.0); + result += mat4(-0.1817206, 0.045146037, -0.15284778, -0.057659954, -0.2602545, 0.10653023, -0.18150768, 0.10097909, -0.13364184, -0.10541466, 0.060924724, -0.04642242, -0.22588973, -0.08851332, 0.04266011, 0.14560021) * input_0(-1.0, 0.0); + result += mat4(0.0032481386, -0.18926735, -0.15300016, 0.0857513, -0.08578758, -0.16300698, 0.07526433, 0.12573123, -0.20636095, -0.118553095, -0.056349076, -0.021158122, -0.019917645, 0.08235268, -0.14490892, -0.06870442) * input_0(-1.0, 1.0); + result += mat4(-0.37780854, -0.50557727, 0.07557546, -0.18951185, -0.14675382, -0.2662757, -0.09277402, -0.049793318, 0.09999114, 0.06552192, -0.32047814, 0.11505951, -0.015945775, -0.23541987, -0.08488792, -0.06440552) * input_0(0.0, -1.0); + result += mat4(-0.39847553, 0.21274813, -0.48760575, 0.04385526, 0.16870281, 0.10439473, 0.11349071, -0.08428587, -0.287578, 0.047464687, 0.59213114, -0.11788779, 0.13076583, 0.05967689, 0.44662437, -0.37907887) * input_0(0.0, 0.0); + result += mat4(0.019753922, 0.042512126, -0.07165959, -0.0047424934, 0.21119925, -0.119841084, -0.2341202, -0.04681472, 0.068969995, 0.023005474, -0.11495845, -0.0179218, 0.12795457, -0.027755499, -0.48143327, 0.05125371) * input_0(0.0, 1.0); + result += mat4(-0.0063870144, -0.047510218, 0.019844037, 0.07576946, 0.020709554, -0.029480092, -0.0032222008, 0.017324664, -0.38806224, 0.035335332, -0.11568631, -0.03231084, 0.22331421, 0.11889553, -0.027294774, 0.13538422) * input_0(1.0, -1.0); + result += mat4(0.008772739, -0.09804964, -0.14500636, -0.1157331, 0.050850537, -0.023496503, 0.038079474, -0.15312111, -0.25285754, 0.00052029325, -0.1443496, -0.1671801, 0.07540808, -0.12552321, 0.0631455, 0.37640706) * input_0(1.0, 0.0); + result += mat4(-0.12935835, 0.018936673, -0.09553037, -0.09316034, 0.10492474, 0.06387998, 0.017409515, 0.13057463, 0.11071247, -0.009303742, -0.089010686, -0.010848988, -0.16474979, -0.13459462, 0.056914203, 0.022668835) * input_0(1.0, 1.0); + result += mat4(-0.14621304, 0.01864028, -0.030282829, 0.049829714, 0.07477222, -0.1872293, 0.17928925, 0.003724601, 0.0040514977, 0.061340626, -0.060705088, -0.025780696, -0.12521073, 0.09617583, -0.036205806, 0.12783483) * input_1(-1.0, -1.0); + result += mat4(0.30341515, -0.09279766, 0.14843357, -0.10862685, -0.3255549, -0.19214563, 0.03243078, -0.0182742, -0.008184046, 0.019384146, 0.00029004953, -0.10316721, 0.0652737, 0.25799292, -0.19911249, -0.16992939) * input_1(-1.0, 0.0); + result += mat4(0.063299745, 0.026708495, -0.06392204, 0.07610867, -0.23250143, 0.03345636, -0.2536738, 0.09829606, 0.17195466, 0.010713547, 0.025351806, 0.0047599394, 0.17517756, -0.1321034, 0.07542099, 0.013362477) * input_1(-1.0, 1.0); + result += mat4(0.10102956, -0.08833531, 0.19861828, -0.0010650193, 0.11665083, -0.40380296, 0.11883646, -0.18350168, -0.098331265, 0.20737503, -0.15164767, 0.11307276, 0.28173006, 0.003149449, 0.42975086, -0.22494918) * input_1(0.0, -1.0); + result += mat4(-0.4771832, -0.15811747, -0.45709103, -0.07176478, -0.30882668, -0.25352, -0.034791645, 0.002588313, 0.47145852, -0.0044145975, -0.022884183, 0.09996802, -0.111771114, 0.30426997, -0.12575695, -0.061978243) * input_1(0.0, 0.0); + result += mat4(-0.1531315, 0.3163987, 0.22507644, -0.027430689, -0.23388663, 0.036593564, -0.08423463, -0.0586196, 0.06882286, 0.10087189, 0.4597024, -0.07977854, 0.18581869, -0.09249678, -0.16745181, 0.017967653) * input_1(0.0, 1.0); + result += mat4(0.15073279, 0.07127097, 0.09139186, -0.03577562, -0.020907575, 0.0075366693, 0.05924859, -0.0034668862, 0.15481569, 0.118530266, 0.057319753, 0.07789012, 0.035116773, 0.0015511204, -0.042259343, -0.16820768) * input_1(1.0, -1.0); + result += mat4(0.20652333, -0.15289648, -0.07437688, 0.30553946, -0.11221521, -0.035228983, 0.010570599, -0.25686395, 0.009186546, 0.15350826, 0.0355522, 0.19790703, 0.2337147, -0.06388212, 0.13973634, -0.16774502) * input_1(1.0, 0.0); + result += mat4(0.20208009, 0.0771182, 0.16536233, -0.07923086, 0.1271268, 0.072979346, -0.19524369, -0.17586854, 0.002548912, -0.021097545, 0.1823881, 0.10045942, -0.10289115, 0.14889723, 0.08740096, -0.08629097) * input_1(1.0, 1.0); + result += mat4(7.7435616e-05, -0.040871985, 0.017799757, 0.032599136, -0.17638807, 0.13550474, -0.08869504, 0.13619722, 0.2859516, 0.17450324, 0.22034112, -0.10680228, -0.25221837, -0.083817825, 0.0957775, 0.13626063) * input_2(-1.0, -1.0); + result += mat4(0.08362428, -0.017944053, -0.012213268, -0.07190882, -0.22855976, 0.036642805, 0.028963853, 0.20587751, 0.20032825, 0.012401725, -0.002628476, -0.11774069, 0.13290869, 0.1760192, -0.067341134, -0.05693584) * input_2(-1.0, 0.0); + result += mat4(0.07812585, 0.111100376, -0.0081081055, -0.023001833, -0.047958735, 0.06707684, 0.21812817, -0.06066941, 0.14149858, 0.0002842644, 0.009748469, 0.058159713, -0.052220527, 0.0051686717, 0.020569365, 0.037408933) * input_2(-1.0, 1.0); + result += mat4(0.22330855, 0.056118224, 0.037725, -0.010659906, -0.15518703, -0.048119847, 0.026690556, 0.04792172, -0.6428813, -0.23507941, -0.27001688, 0.036668345, 0.21455136, 0.17293552, 0.049976766, -0.1329376) * input_2(0.0, -1.0); + result += mat4(-0.15915275, 0.04641938, -0.118075706, 0.3037003, -0.3551547, 0.20595412, 0.13396406, -0.013213423, -0.2915794, 0.29002488, -0.112053424, -0.14190868, -0.19691089, -0.08181972, -0.57165426, 0.21673493) * input_2(0.0, 0.0); + result += mat4(-0.1578097, 0.065828785, 0.07167397, -0.00059739564, -0.20415144, 0.11065973, 0.20061344, -0.050190084, 0.2139065, -0.04968372, -0.19523457, 0.12356152, -0.11396468, 0.29205763, -0.0809064, 0.004876132) * input_2(0.0, 1.0); + result += mat4(-0.1212619, -0.109753795, 0.059783444, -0.16629863, -0.07178537, 0.028716804, 0.09824844, -0.16009493, -0.19819757, 0.032385383, -0.36553526, -0.027081028, -0.24935731, 0.02594158, -0.010527322, -0.111616634) * input_2(1.0, -1.0); + result += mat4(-0.07426275, 0.02278162, -0.21938802, -0.2642625, 0.032943033, 0.20028387, -0.09130676, -0.1637574, 0.06961886, 0.13329782, 0.11478851, 0.036917806, -0.0802517, -0.19539803, -0.3822371, 0.08046229) * input_2(1.0, 0.0); + result += mat4(-0.092838, 0.117163844, 0.09485102, -0.06780099, -0.11281563, 0.11850478, -0.05550858, -0.027953297, -0.007133141, -0.014187283, -0.059598908, 0.012341767, 0.0061861775, 0.15141954, -0.14354445, -0.122839615) * input_2(1.0, 1.0); + result += mat4(0.017640347, -0.60886985, 0.28483826, -0.13498601, -0.6344804, -2.0020604, 0.9888003, -0.9928021, 0.13787933, 0.15995555, 0.0044200043, -0.054206688, -0.076262236, -0.26163995, -0.04738554, 0.05014971) * input_3(-1.0, -1.0); + result += mat4(-0.71580493, -0.31830522, 0.19025376, -0.2948351, 0.07361348, 0.0938386, -0.056012325, -0.07084915, 0.044257227, -0.05632749, -0.08677931, 0.105809525, 0.24651411, -0.058334462, 0.082753815, -0.19398265) * input_3(-1.0, 0.0); + result += mat4(-0.028512344, -0.57375467, -1.0795906, 0.4254704, -0.05730311, -0.04821735, 0.115387015, -0.032571744, -0.023543056, 0.04612607, 0.040400274, -0.022598516, 0.2257721, -0.033995304, 0.042029686, 0.023071816) * input_3(-1.0, 1.0); + result += mat4(0.07029798, -0.101656675, -0.01784277, 0.028430276, 0.769139, -1.170258, -0.6988849, 1.0531164, -0.013906791, 0.22907783, 0.14572631, -0.12152369, -0.124370486, -0.46209994, 0.0635222, 0.2025421) * input_3(0.0, -1.0); + result += mat4(-0.05509011, 0.031102538, 0.032166403, 0.3718931, 0.015956195, -0.07257227, 0.23262715, 0.2349654, 0.013082262, -0.20620903, -0.31386694, 0.19253469, -0.3864279, -0.015946489, 0.008420695, 0.1667353) * input_3(0.0, 0.0); + result += mat4(-0.024990464, 0.028989721, -0.005168212, 0.16289686, 0.10033066, -0.030419962, -0.0037721335, 0.09974207, -0.033236753, -0.10838469, -0.072520345, -0.060499493, 0.0638907, -0.033855442, 0.06866675, 0.062107224) * input_3(0.0, 1.0); + result += mat4(0.019155059, -0.07881231, -0.02239322, 0.13464253, 1.0068911, -1.3198824, -0.1824749, 1.4071697, 0.073066205, 0.027794253, 0.015558158, -0.19268398, 0.16127212, -0.24087273, -0.070166774, 0.032574996) * input_3(1.0, -1.0); + result += mat4(-0.020532832, 0.0061756033, -0.03743925, -0.17655736, 0.0020162484, 0.10977565, 0.13450435, -0.15096179, -0.024525343, -0.040415004, -0.03920403, -0.27981153, 0.37269744, -0.08280698, 0.23378566, 0.1856975) * input_3(1.0, 0.0); + result += mat4(0.013647463, 0.03855421, 0.027500056, 0.101926185, 0.10176718, -0.012497632, 0.007443969, -0.014130813, -0.05286115, -0.067571156, -0.057392232, 0.010845191, -0.051060095, -0.011471131, -0.18194978, -0.06419599) * input_3(1.0, 1.0); + result += vec4(0.058198024, -0.026643438, -0.05179569, 0.0047381753); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!SAVE conv2d_3_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.37668392, 0.022321412, -0.09848869, -0.08947069, -0.06567241, 0.0022680988, -0.0021810543, -0.046097793, 0.06441663, 0.016507054, -0.008815802, -0.14205335, -0.031115392, 0.01466934, -0.013261971, 0.14472753) * input_0(-1.0, -1.0); + result += mat4(-0.2892351, 0.03228204, -0.09662611, -0.2563226, -0.046512697, 0.001103855, 0.078831695, 0.20965587, -0.012501807, -0.006801838, 0.0173508, -0.16964102, -0.033557825, -0.047499526, 0.022332191, -0.11694654) * input_0(-1.0, 0.0); + result += mat4(0.03324565, -0.0559204, -0.06731322, 0.23619106, -0.101124, 0.008684916, 0.20376922, -0.12318206, -0.15801272, 0.0062436764, -0.03159525, -0.08360004, 0.12084195, -0.101080455, -0.09028766, -0.12052327) * input_0(-1.0, 1.0); + result += mat4(0.11838765, 0.08013308, -0.025026968, 0.008264717, 0.2288913, -0.032842018, 0.019025382, 0.24563287, -0.12126269, -0.0017205417, 0.02032465, -0.31132016, -0.26051322, 0.017275983, 0.050902933, 0.1364609) * input_0(0.0, -1.0); + result += mat4(-0.1871364, 0.06164209, -0.04991303, -0.3095276, -0.27822492, 0.16756928, -0.030826954, 0.15290676, 0.17141531, 0.24470727, 0.121652775, -0.33600742, -0.12889968, 0.48920652, -0.22356187, -0.6171459) * input_0(0.0, 0.0); + result += mat4(-0.010851267, -0.02995136, -0.032357357, 0.10352239, 0.07746797, 0.04302292, 0.071075104, 0.14673899, -0.09593977, 0.0152815515, 0.10964179, -0.09829137, 0.044272162, -0.060014956, -0.21177526, 0.25907594) * input_0(0.0, 1.0); + result += mat4(0.0446986, -0.031578265, 0.00030930678, -0.048003092, 0.069498114, -0.011654327, 0.0011326907, -0.09598703, 0.029160121, 0.024676234, -0.0011040309, -0.30916393, 0.028429719, -0.013122469, -0.01813476, -0.11629931) * input_0(1.0, -1.0); + result += mat4(-0.03001464, 0.01424991, 0.0935112, -0.05079594, -0.041625984, 0.012075557, -0.04128638, 0.27787012, -0.106993034, 0.050537553, -0.045709208, 0.14167362, 0.35559136, 0.048168737, 0.01773504, -0.1142645) * input_0(1.0, 0.0); + result += mat4(-0.13906445, -0.0012733854, -0.00026927577, 0.035179354, 0.08834059, -0.00065255736, -0.022819351, 0.24454969, 0.028469399, -0.048569355, -0.076566234, 0.14350879, -0.031073555, 0.021901483, 0.07299356, 0.029186727) * input_0(1.0, 1.0); + result += mat4(-0.0026700196, -0.02589267, 0.012657312, 0.27543488, 0.106566526, -0.004571913, -0.033133306, -0.16504768, 0.05150565, 0.012806811, -0.0055326554, 0.056967676, 0.03334752, -0.02800985, -0.00687094, -0.36904332) * input_1(-1.0, -1.0); + result += mat4(0.124169625, 0.0056787934, -0.0166298, 0.18294874, 0.09535123, 0.034738515, -0.0779984, -0.2862684, 0.00050888385, 0.08551227, 0.059644714, -0.033611614, 0.12038382, 0.041185223, -0.12733853, -0.011501873) * input_1(-1.0, 0.0); + result += mat4(-0.042310055, 0.005227756, -0.052472282, 0.13134588, -0.10062746, 0.020597894, -0.06554214, -0.2215338, 0.06846292, 0.021005303, 0.05959255, 0.18454699, -0.0075374134, 0.06550453, 0.06789537, -1.0920124) * input_1(-1.0, 1.0); + result += mat4(-0.096501164, 0.050203405, -0.016485732, -0.23813789, 0.12098535, 0.052764736, 0.012526466, 0.037836183, -0.11890516, 0.01202473, 0.024711123, 0.004886983, -0.096291125, 0.15049341, -0.037407022, -0.4705901) * input_1(0.0, -1.0); + result += mat4(0.03341312, -0.03197617, -0.0024468228, -0.29992864, -0.05679482, 0.11576017, 0.014511306, -0.44156653, -0.2057172, -0.17833398, 0.046896674, 0.21065585, 0.11070263, -0.028876957, 0.046785876, 0.09641972) * input_1(0.0, 0.0); + result += mat4(0.1859803, 0.03572016, -0.05312729, -0.24680057, -0.4272664, 0.07023312, 0.023849158, -0.24301331, 0.33832338, -2.482644e-05, 0.00035688072, 0.28033927, 0.11664848, -0.13189593, -0.07596483, -0.45544305) * input_1(0.0, 1.0); + result += mat4(-0.014462073, -0.0033287758, -0.0011519892, -0.15707609, 0.03702284, -0.017344762, 0.028977703, -0.00550519, -0.0110714035, -0.005343838, 0.006504726, 0.131824, -0.22821668, -0.033011608, 0.02004, -0.96458095) * input_1(1.0, -1.0); + result += mat4(0.14644374, -0.056065675, 0.0140952775, 0.14410296, 0.066962, 0.01631343, -0.023321275, 0.16613398, -0.01283334, 0.03238329, -0.049536727, 0.09256074, 0.08769496, -0.002084639, 0.005797079, -1.1539059) * input_1(1.0, 0.0); + result += mat4(0.0535358, -0.0011869785, 0.096427225, 0.1274363, -0.09410223, 0.018549556, -0.010977678, 0.20947511, 0.04043433, -0.017313614, -0.0039035233, 0.1987063, -0.0046602436, 0.04213765, 0.06400748, -0.49287447) * input_1(1.0, 1.0); + result += mat4(-0.057950232, 0.0063293297, -0.007961186, -0.6915434, 0.10332361, 0.0069584474, 0.026681086, -0.0075141476, 0.02664526, 0.01131315, -0.1421232, -0.9853375, -0.008949865, -0.02205405, 0.02657445, -0.021613227) * input_2(-1.0, -1.0); + result += mat4(-0.010228267, 0.056348268, -0.021145785, -0.2859028, -0.06655447, 0.0024421164, 0.010246898, -0.12572053, -0.22953571, 0.06983189, -0.271593, 0.15182112, -0.1475874, 0.015849823, 0.0007118563, -0.44023573) * input_2(-1.0, 0.0); + result += mat4(0.006562555, 0.008208803, -0.056345962, -0.18872233, 0.099513926, 0.07984358, -0.03750972, -0.3013234, 0.022918804, -0.029899426, 0.013335157, -0.019499404, -0.02821646, 0.030530272, -0.053906426, 0.06609668) * input_2(-1.0, 1.0); + result += mat4(0.06691585, -0.057262976, -0.07651187, -0.56193024, 0.16672401, 0.019542977, 0.0010600733, -0.19398035, 0.1970889, -0.026869718, 0.052188057, -0.59901065, -0.30369818, 0.101028346, -0.010621867, -0.47748268) * input_2(0.0, -1.0); + result += mat4(0.08777078, -0.0640755, -0.04070912, -0.8986175, -0.07951637, 0.032472458, -0.11085687, 0.059978556, -0.45734105, 0.16323492, 0.08510581, -1.005425, -0.38693303, 0.0505913, -0.09311633, 0.2661588) * input_2(0.0, 0.0); + result += mat4(-0.12635571, -0.026806675, -0.09724995, -0.6828237, 6.0629798e-05, 0.059017513, -0.12942384, -0.38635212, 0.1707898, -0.1328056, -0.07350654, 0.19818507, -0.07414469, 0.041172102, 0.033679847, 0.059021734) * input_2(0.0, 1.0); + result += mat4(0.08357788, 0.004237311, 0.01695902, -0.45021528, -0.12621467, 0.039213903, -0.032199677, 0.16693637, 0.06049106, 0.07583155, -0.010712469, 0.1779932, -0.0726308, -0.0014115572, -0.05070207, 0.72110367) * input_2(1.0, -1.0); + result += mat4(-0.23705657, -0.013741559, 0.011612522, -0.69820666, 0.12378926, 0.03926458, 0.025239201, -0.68813556, 0.0024813414, 0.009510928, -0.056151997, 0.35601595, -0.023537721, -0.0006480709, -0.013843968, -0.17708388) * input_2(1.0, 0.0); + result += mat4(0.09397085, 0.015237843, 0.025779633, -0.16284019, 0.14470172, -0.09588817, 0.007718594, -0.12612487, -0.0141429715, -0.07838875, 0.008980705, 0.1716783, 0.06383537, 0.048263643, 0.024558485, -0.19508013) * input_2(1.0, 1.0); + result += mat4(0.16637582, 0.0016103556, -0.019764325, -0.12042696, 0.9254981, -0.05428488, -0.043294176, -4.205726, -0.05688948, -0.009479981, 0.017279383, -0.05881945, 0.012234901, -0.04198862, 0.014858962, 0.18176651) * input_3(-1.0, -1.0); + result += mat4(0.06887244, 0.23797935, -0.22945404, -0.1810379, 0.021400025, 0.01826289, 0.2984331, 0.05937557, 0.13732278, -0.13054597, -0.040299047, 0.21421127, -0.18003388, 0.0999994, 0.06832755, 0.08857182) * input_3(-1.0, 0.0); + result += mat4(-1.1754344, -0.16140878, -0.45517376, 0.23014966, 0.061885163, 0.06735753, 0.13062997, 0.20866688, -0.005762392, 0.0012664573, 0.0027807825, -0.050230186, -0.13788533, 0.073690385, 0.07161442, 0.22520821) * input_3(-1.0, 1.0); + result += mat4(0.04252152, -0.017485619, -0.0075445506, -0.041259985, 0.84735334, -0.34318456, 0.08495482, -2.1590538, -0.2366228, 0.0758547, 0.021443916, 0.2092815, 0.2763309, -0.07878341, -0.003109355, 0.020185303) * input_3(0.0, -1.0); + result += mat4(-9.5145835e-05, 0.14780135, -0.04641317, -0.19726767, -0.053147316, 0.07583808, 0.55548847, 0.41262376, 0.52644044, -0.20602034, 0.2547251, 0.050571278, -0.08876007, 0.16408253, -0.0040867375, -0.09144218) * input_3(0.0, 0.0); + result += mat4(-0.03760117, -0.10404033, 0.006471736, 0.23786806, 0.014747977, -0.046932414, -0.08906326, 0.30984896, -0.098747104, 0.07151571, 0.048737753, -0.17197418, -0.1667674, 0.003510609, -0.05424778, -0.03840981) * input_3(0.0, 1.0); + result += mat4(0.020172143, -0.0050099296, 0.01311187, 0.044156156, 1.2445976, -0.057315044, 0.042840775, -1.997903, -0.1186306, -0.010108962, 0.008939665, 0.09625573, 0.07173171, -0.08127443, 0.013823347, 0.11945817) * input_3(1.0, -1.0); + result += mat4(0.07504713, 0.021615071, -0.022716599, -0.18373887, 0.13035065, -0.048260864, 0.1765001, 0.40636706, -0.24498743, -0.007386689, -0.07406815, -0.13969873, 0.097093605, -0.008936156, 0.055414733, 0.13328667) * input_3(1.0, 0.0); + result += mat4(-0.053563915, -0.025855348, 0.026169157, 0.11884697, 0.014686142, -0.010271804, 0.016056418, 0.009910565, 0.028038658, 0.038842708, -0.017092029, 0.058029845, -0.1079238, 0.03546202, 0.09244762, -0.5192417) * input_3(1.0, 1.0); + result += vec4(-0.045508493, -0.023102637, 0.0044111013, 0.1683499); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!SAVE conv2d_3_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.010255998, 0.02816198, -0.027732015, 0.11094507, 0.016842764, 0.06238472, -0.06895271, -0.039490536, 0.10262636, 0.08639603, 0.08501376, -0.0010781982, -0.05452476, -0.019154051, 0.028562121, -0.04173555) * input_0(-1.0, -1.0); + result += mat4(-0.13828091, 0.41884622, -0.20071627, 0.083937354, 0.101994276, -0.06232588, 0.05269355, -0.1587797, 0.020359002, -0.084354185, 0.050083715, -0.053339347, 0.044181373, -0.15076366, 0.12883565, -0.13614771) * input_0(-1.0, 0.0); + result += mat4(-0.10888228, -0.07970392, -0.03436362, -0.0001593025, 0.10607525, -0.14480537, 0.085707985, -0.055879362, 0.015514337, 0.07628468, -0.046886608, 0.053596757, -0.13140112, 0.042260587, -0.0860283, -0.020295454) * input_0(-1.0, 1.0); + result += mat4(-0.15255119, -0.07963769, 0.150279, 0.10502633, 0.039847806, 0.010362496, -0.0248228, 0.036384434, -0.0089292815, 0.20148604, -0.090423524, -0.035405204, 0.06406645, 0.069668695, -0.015285586, 0.017153902) * input_0(0.0, -1.0); + result += mat4(-0.2807233, -0.028242318, 0.28215763, 0.26934028, -0.24803522, 0.19170626, 0.07272608, 0.0025698117, 0.54977083, -0.17806913, 0.20048463, -0.085237645, -0.019417476, -0.29299235, 0.5195838, 0.33004773) * input_0(0.0, 0.0); + result += mat4(-0.02614591, 0.027689595, -0.050329316, 0.042926878, 0.08083802, 0.13452081, 0.034492128, -0.016419446, -0.06213591, 0.10760184, -0.05717838, 0.021907484, -0.15580557, 0.04917515, -0.008259191, -0.19094224) * input_0(0.0, 1.0); + result += mat4(0.010571644, 0.054230034, -0.087241046, 0.05437055, -0.0022276533, 0.0014729048, -0.0319649, 0.058687128, -0.014890437, 0.006737956, 0.11934218, 0.032807708, 0.08868505, -0.0629473, -0.0071271285, -0.08563011) * input_0(1.0, -1.0); + result += mat4(-0.020525333, 0.057670865, -0.06447336, 0.07197988, 0.008180375, -0.044733312, 0.016035616, -0.094283685, 0.20487425, -0.12871064, 0.119087726, 0.03645367, -0.15913333, 0.28344083, -0.21946979, 0.1654112) * input_0(1.0, 0.0); + result += mat4(0.06931768, 0.004199089, 0.06377743, 0.035399854, 0.010061305, -0.008515705, 0.00037537434, -0.057931982, -0.053425603, -0.08313924, -0.0031267144, -0.02096904, 0.15326677, 0.08344642, 0.08055671, 0.012978262) * input_0(1.0, 1.0); + result += mat4(0.048400123, -0.041552503, -0.0030486968, -0.027702015, 0.009881245, -0.08470396, 0.014616492, -0.07931646, -0.023984408, 0.099828444, -0.030376371, -0.02127794, 0.072288305, -0.0529536, 0.010418907, -0.21185443) * input_1(-1.0, -1.0); + result += mat4(-0.08808205, 0.10662759, -0.08255224, 0.036152992, -0.26981097, 0.20253508, 0.07003805, -0.016221683, -0.10263815, -0.05750683, 0.06313498, 0.11028175, -0.104349405, 0.3318661, -0.054977417, -0.29084006) * input_1(-1.0, 0.0); + result += mat4(-0.07824076, -0.0012759565, -0.030299155, -0.11318926, -0.1794184, 0.18938397, -0.031020276, -0.0043792827, 0.013379458, -0.108512685, 0.091100045, -0.09848509, 0.09235204, -0.046681225, 0.094614506, -0.31111142) * input_1(-1.0, 1.0); + result += mat4(-0.045972016, -0.099601954, 0.013618683, -0.07564813, -0.023767851, -0.07562388, 0.0909893, 0.0018455929, 0.0104489885, 0.03493836, -0.057833053, 0.124758944, -0.00086766714, 0.14961636, -0.07728459, -0.24932048) * input_1(0.0, -1.0); + result += mat4(0.07486705, 0.18875621, -0.066986345, 0.029724801, -0.24597782, 0.10848305, 0.111842, 0.09580127, 0.55531853, 0.016446322, -0.27129796, 0.1856341, 0.26667666, 0.07557978, 0.044925548, -0.48340553) * input_1(0.0, 0.0); + result += mat4(0.17394248, -0.18910448, 0.09923975, 0.1406327, -0.09007701, 0.21009481, 0.029593803, -0.014897732, 0.21675734, -0.13003586, 0.060987487, 0.08942692, -0.124727055, -0.13467133, 0.12260782, -0.51579803) * input_1(0.0, 1.0); + result += mat4(-0.026768602, -0.03571163, -0.048979174, -0.056418225, -0.009850455, -0.022448502, -0.02498713, 0.100013636, 0.029303046, 0.027393004, -0.03398614, 0.061036255, 0.025752014, 0.017622024, -0.028495075, -0.3887683) * input_1(1.0, -1.0); + result += mat4(-0.03901346, -0.015083768, -0.050575882, 0.0031454805, -0.008564892, -0.056598853, 0.018301452, -0.020735059, 0.018189615, 0.008673767, -0.057003103, -0.11551751, -0.069022544, 0.16067557, -0.038614836, -0.38112324) * input_1(1.0, 0.0); + result += mat4(-0.058685996, -0.0022801142, -0.020684317, 0.06646591, -0.022275187, -0.0463002, -0.012172267, 0.0021366095, -0.0067103747, 0.029292842, -0.022380218, 0.07641391, 0.10549523, 0.10041148, -0.008173288, -0.37561938) * input_1(1.0, 1.0); + result += mat4(0.021520605, 0.008614789, 0.042702347, 0.04971154, 0.08249884, 0.017259937, 0.005614173, 0.057688873, -0.106478386, 0.13639839, -0.20130557, 0.10124063, 0.039950754, -0.051512957, 0.05023361, 0.015953176) * input_2(-1.0, -1.0); + result += mat4(-0.012794819, 0.09089686, -0.0058186506, 0.036016118, 0.12937137, 0.17346919, 0.09100354, 0.09745136, 0.08834551, 0.11451057, -0.12423188, -0.15311538, 0.048703115, -0.009625463, 0.03853866, 0.13196802) * input_2(-1.0, 0.0); + result += mat4(0.0045883227, 0.095999956, 0.0053579584, 0.023549795, 0.15041387, -0.043851234, 0.030790599, 0.15208188, -0.0885718, -0.046314966, -0.028567849, 0.07047035, -0.006072791, 0.016913095, -0.01528243, 0.03999292) * input_2(-1.0, 1.0); + result += mat4(0.0858687, -0.0993303, -0.041483916, -0.1327788, -0.055414382, -0.07054595, -0.035018504, 0.17214076, -0.5023966, 0.46210507, 0.19233225, -0.13556622, -0.088889785, 0.06164251, 0.0038730686, -0.19182178) * input_2(0.0, -1.0); + result += mat4(-0.15046345, 0.26557237, -0.07302705, -0.045477938, -0.1803418, -0.08351798, -0.025372786, -0.10969833, 0.030997591, 0.27188665, -0.13473092, 0.23434262, -0.049291782, 0.10292888, 0.025606098, -0.1504946) * input_2(0.0, 0.0); + result += mat4(-0.013594529, -0.00610912, -0.083162144, 0.008487589, 0.04914383, -0.10725169, 0.057632547, 0.09309691, -0.12131767, -0.029940424, 0.0297261, 0.023260051, 0.13295825, -0.0063142497, 0.021757111, 0.072904274) * input_2(0.0, 1.0); + result += mat4(0.022015585, 0.029905202, 0.05403727, -0.025620926, -0.015828537, -0.059929855, 0.0579463, -0.094403595, 0.11042805, -0.070250995, 0.039273005, -0.12827796, 0.0059068524, -0.1321407, 0.12386363, -0.22648448) * input_2(1.0, -1.0); + result += mat4(-0.056241237, -0.1688679, 0.022508455, -0.27928132, 0.043845855, -0.138671, 0.15287298, 0.03215443, 0.037464093, 0.06792044, -0.0498703, 0.18619019, -0.16065063, -0.15899849, 0.012049319, -0.07233884) * input_2(1.0, 0.0); + result += mat4(0.0290861, -0.06729954, 0.035498753, 0.041419495, -0.059487768, -0.03500446, 0.016189115, 0.03202348, -0.02960298, 0.044191003, -0.015834915, -0.038832422, 0.0373304, 0.038551286, -0.025545703, -0.014230044) * input_2(1.0, 1.0); + result += mat4(-0.026436063, -0.1832116, 0.10776336, -0.33608267, -0.2910222, 1.9402469, 0.4017314, -0.14466885, -0.06004394, -0.092247926, -0.05335684, 0.019606836, 0.008336915, 0.008609674, -0.060665015, 0.04265805) * input_3(-1.0, -1.0); + result += mat4(-0.5136257, 0.19984955, 0.3622203, -0.47248283, -0.022896018, -0.0079473825, -0.033104017, -0.06441616, -0.029348588, -0.025618443, -0.00034966014, -0.021921597, 0.12763259, -0.041871697, 0.026177682, 0.09224714) * input_3(-1.0, 0.0); + result += mat4(-0.64969933, 0.25156447, -0.1352972, -0.19746536, 0.09411762, -0.022514358, 0.040381648, 0.033956088, -0.03439181, -0.015175602, -0.011930311, 0.029269004, 0.0132328225, 0.011696345, -0.009640124, 0.05699516) * input_3(-1.0, 1.0); + result += mat4(0.078076825, -0.05592837, -0.03405463, -0.16847, 1.3118366, -0.095606014, 0.62583226, 0.9774838, -0.14447585, -0.1265794, 0.22042447, -0.1954333, 0.10385586, -0.024445854, -0.009878668, 0.027767908) * input_3(0.0, -1.0); + result += mat4(-0.1507465, 0.016008696, 0.037921194, 0.14262725, 0.32978523, -0.06950355, -0.0907766, 0.06674224, -0.1605434, -0.052403893, 0.28685486, 0.027469445, -0.04235299, 0.012306237, 0.10313388, -0.22571322) * input_3(0.0, 0.0); + result += mat4(0.060209, 0.06318882, -0.03967922, -0.006365271, -0.08889718, -0.044064038, -0.028391555, -0.014705443, 0.004610343, 0.049666774, 0.00033310597, 0.009213075, -0.19809735, -0.0515623, -0.011426426, 0.03546714) * input_3(0.0, 1.0); + result += mat4(0.027951889, -0.0010988233, 0.00018168589, 0.06709773, 1.3855343, 0.92896384, -0.68236774, 1.5160458, 0.02729306, 0.05080422, 0.042775944, 0.12813792, 0.04438929, -0.016836382, -0.09160699, -0.12388618) * input_3(1.0, -1.0); + result += mat4(-0.05399, 0.029240835, 0.01940087, -0.03854827, -0.05112493, 0.009825914, 0.095437, 0.10559205, -0.037513416, -0.026100727, -0.07669604, -0.069536224, -0.1530975, 0.18182097, -0.108538836, 0.30240613) * input_3(1.0, 0.0); + result += mat4(0.015976965, -0.026869036, -0.030393267, -0.025896732, 0.019008096, 0.0131175425, 0.014322955, -0.0071712565, 0.057697035, 0.0044559925, 0.02085714, -0.0068467003, 0.048926223, 0.13978532, -0.051659867, 0.0799417) * input_3(1.0, 1.0); + result += vec4(-0.017321989, 0.0027757548, -0.056361977, -0.010138195); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!SAVE conv2d_3_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.10233778, -0.11240712, 0.037221197, -0.0051450497, 0.013606116, 0.010786609, -0.015182915, -0.051037893, 0.013323041, 0.017717091, 0.008195795, 0.0050407015, 0.031121327, -0.013163088, 0.017007248, 0.023569321) * input_0(-1.0, -1.0); + result += mat4(-0.035086688, -0.045617726, 0.046010215, -0.119158454, 0.05207806, 0.080111295, 0.06571999, -0.08696845, 0.009006738, -0.20981497, 0.05211879, 0.033323094, 0.060678527, 0.33963665, 0.040684655, -0.009929246) * input_0(-1.0, 0.0); + result += mat4(0.01794256, 0.12774153, 0.053153254, -0.07493665, 0.014967753, 0.20011827, 0.16945922, -0.0034451834, -0.009140645, -0.078310624, 0.07932347, 0.0011765405, -0.008809653, 0.066629365, -0.005147902, -0.024438266) * input_0(-1.0, 1.0); + result += mat4(0.15529233, 0.082362436, -0.002444483, 0.022095492, 0.0057017943, 0.09980708, 0.016574068, -0.07244132, 0.078539856, -0.13633984, 0.05812139, 0.06300431, 0.042226527, -0.024035389, -0.05450597, 0.090184346) * input_0(0.0, -1.0); + result += mat4(0.051689554, -0.04602342, 0.11021963, 0.019541686, 0.07990181, 0.41895485, 0.016839856, 0.023425052, 0.02032359, -0.12236494, -0.014059605, -0.026587639, 0.014032254, -0.057541654, -0.17928334, 0.10672056) * input_0(0.0, 0.0); + result += mat4(0.016113037, -0.05917135, -0.008193331, -0.025634518, 0.048720792, 0.10643327, 0.009402721, -0.015634075, -0.095071845, 0.04607565, 0.07244342, 0.033326622, 0.06529045, -0.12607315, -0.28967068, 0.018128864) * input_0(0.0, 1.0); + result += mat4(0.0444729, -0.024217686, -0.011318969, 0.12529974, 0.04039481, -0.010452544, -0.034746848, -0.18840212, -0.0091444785, 0.083494484, 0.08534193, -0.85590905, -0.058883224, -0.012793263, 0.0060316985, -0.53758526) * input_0(1.0, -1.0); + result += mat4(0.060698967, -0.022397725, 0.010848118, -0.08862042, -0.08637972, 0.071326755, -0.027778931, -0.0232415, -0.013428834, -0.21555196, 0.055546734, 0.039665792, 0.1457249, 0.04482063, -0.05085235, 0.0023848754) * input_0(1.0, 0.0); + result += mat4(-0.014489855, -0.08239458, -0.034326807, -0.15082966, -0.053857606, 0.066164576, -0.022747023, -0.039397065, 0.0066448054, 0.03671231, -0.068141945, 0.07582018, 0.00508972, -0.1558751, 0.1136882, -0.10605734) * input_0(1.0, 1.0); + result += mat4(-0.016402101, 0.05250836, 0.02842811, 0.024260161, 0.0042379014, 0.05705704, -0.018089944, 0.057403114, -0.0019986986, -0.102267735, -0.0118233785, 0.075390846, -0.028194148, 0.23971558, 0.02417566, -0.027078312) * input_1(-1.0, -1.0); + result += mat4(-0.030424219, -0.15567105, -0.011804827, 0.009473775, -0.00977144, 0.21336143, 0.021164682, 0.008412245, -0.020776201, -0.039235115, 0.06373511, 0.031823393, -0.008041525, -0.14365199, -0.077703215, 0.06654063) * input_1(-1.0, 0.0); + result += mat4(0.0016994709, 0.061329514, 0.020392356, -0.046453126, 0.010263585, 0.29692677, 0.0686127, -0.0941368, 0.006329316, 0.09081488, -0.053574145, 0.06528645, 0.039751276, 0.18082291, 0.11917186, 0.0055659516) * input_1(-1.0, 1.0); + result += mat4(0.030544683, 0.008730067, -0.011127803, 0.041712895, 0.03291294, 0.07699873, -0.014745298, 0.15951417, 0.017337427, -0.07780548, 0.022435792, -0.061370667, 0.095622554, 0.28901643, 0.022090936, -0.048295822) * input_1(0.0, -1.0); + result += mat4(0.01673187, 0.26027796, 0.042566508, 0.032990683, -0.0043854318, 0.18662125, 0.10058774, -0.053404603, -0.11220168, -0.43562064, -0.08929719, -0.0040659048, 0.03975808, -0.054912195, 0.09485116, 0.06975763) * input_1(0.0, 0.0); + result += mat4(-0.032677323, 0.11278608, -0.07632458, 0.047436647, 0.052451137, 0.17769028, 0.115277946, 0.023699507, 0.05491271, -0.15965937, -0.058954068, 0.06462157, 0.034115974, 0.3158149, -0.062103845, -0.018792348) * input_1(0.0, 1.0); + result += mat4(-0.034179293, 0.08109359, 0.00043345374, 0.0035499015, 0.06326482, -0.06612813, -0.028891625, 0.24580917, -0.08462833, -0.026568072, -0.0021157255, -0.39448574, -0.085659645, -0.018423676, -0.026518691, -0.037980527) * input_1(1.0, -1.0); + result += mat4(0.08552797, -0.087564364, -0.03741519, -0.15109004, 0.09821527, 0.03784582, -0.024278786, 0.21004608, -0.038345102, 0.04027813, -0.019632533, -0.23022196, -0.020685798, 0.03573421, -0.0462512, -0.1505066) * input_1(1.0, 0.0); + result += mat4(-0.013570602, 0.018529033, 0.047535136, 0.10979604, 0.052901182, -0.04141113, -0.029233724, 0.12798414, 0.043030705, -0.011308318, 0.048107427, 0.13579775, -0.06473655, 0.0040808497, 0.092207015, 0.00518577) * input_1(1.0, 1.0); + result += mat4(-0.03954788, 0.07002156, 0.04169714, 0.05153196, 0.010426953, -0.0554062, 0.041515175, -0.1216752, -0.052659184, 0.039365653, 0.023350671, 0.034720246, 0.007405126, 0.03509227, -0.0030640522, -0.015659481) * input_2(-1.0, -1.0); + result += mat4(-0.033232566, -0.28307286, -0.08616602, 0.03400361, 0.0015884325, 0.18483801, 0.08070199, -0.0160387, -0.0071831066, -0.25985995, -0.03578115, -0.009789721, -0.07059921, -0.062285997, 0.06471942, 0.019483017) * input_2(-1.0, 0.0); + result += mat4(-0.00990156, -0.0136109805, -0.005733606, 0.022542218, -0.032927662, -0.071946934, 0.059446763, 0.03511, -0.014970223, 0.038056, 0.045701526, -0.004771688, 0.015268866, -0.16995643, -0.023895713, 0.018046504) * input_2(-1.0, 1.0); + result += mat4(-0.067759864, -0.089486286, -0.015603003, -0.06529226, -0.016283939, -0.04528784, 0.050123885, -0.13856454, 0.15689881, 0.49421552, -0.03367032, -0.13969743, -0.021720987, 0.1059489, 0.0024365543, 0.027135985) * input_2(0.0, -1.0); + result += mat4(0.049171925, 0.10066232, 0.15086685, -0.070664875, 0.019708863, 0.55384755, -0.0027092309, 0.0033051246, -0.064233124, -0.15304881, 0.20298742, 0.04739268, 0.032165974, 0.18709393, 0.02768134, -0.090189956) * input_2(0.0, 0.0); + result += mat4(-0.036497623, -0.08222114, 0.04545758, -0.10228813, -0.0035761432, -0.09339046, 0.011330734, 0.020670779, 0.054049857, 0.22024195, -0.044025347, -0.05395759, -0.04566688, -0.1429103, 0.002778986, 0.014166028) * input_2(0.0, 1.0); + result += mat4(0.08308224, -0.11819363, 0.005762244, 0.20189445, 0.025231497, 0.027346468, -0.013694594, -0.004389863, 0.07544979, -0.010892053, -0.007737558, 0.27023938, -0.052236732, 0.14004329, -0.039856266, -0.3238338) * input_2(1.0, -1.0); + result += mat4(0.061995693, -0.04547495, -0.01223139, -0.025179755, 0.11563782, 0.067947604, 0.044099543, -0.1916224, 0.057657193, -0.1705708, -0.025724256, 0.022952719, 0.047682896, -0.036120962, -0.00570438, -0.32240376) * input_2(1.0, 0.0); + result += mat4(0.0048509073, -0.0839213, -0.016591381, 0.0830214, 0.033679172, 0.037051123, -0.009803832, -0.03909739, 0.018142091, -0.018556051, -0.021568406, -0.012718127, -0.0024575365, 0.030199597, -0.0027533767, -0.13232087) * input_2(1.0, 1.0); + result += mat4(-0.04257142, 0.3492261, -0.016319882, 0.14929874, 0.54846126, 0.7404872, 0.49610767, 0.23976989, -0.050416306, -0.028625958, 0.062288348, -0.02093576, 0.03021591, 0.0046613626, -0.086516716, 0.031516436) * input_3(-1.0, -1.0); + result += mat4(-0.08848677, 0.8875564, 0.073550835, -0.5927693, -0.013328875, -0.03663287, 0.2883988, -0.016082263, 0.015794069, 0.03338402, -0.122430466, -0.023296809, -0.069162555, -0.0087176785, 0.060985167, 0.020687195) * input_3(-1.0, 0.0); + result += mat4(-0.0074669113, 0.53166693, 0.19571587, -0.6343396, -0.013349742, 0.0144328745, 0.09036809, 0.020178685, 0.0012928685, 0.0008449557, 0.002884188, -0.0008979325, 0.021869073, 0.008374878, -0.059537694, -0.009645543) * input_3(-1.0, 1.0); + result += mat4(0.21725897, 0.06349043, -0.066055045, 0.11813616, 0.5806666, -0.71039426, -0.307495, 0.58733326, 0.03692696, 0.2421819, 0.008190908, 0.029546589, 0.045150097, -0.019605098, -0.054011066, 0.0007738925) * input_3(0.0, -1.0); + result += mat4(0.3170432, 0.23479705, -0.025125232, 0.45938632, 0.35105196, -0.25340834, 0.46124697, 0.14071028, 0.3345247, 0.26954645, 0.416304, 0.067057066, -0.18913987, 0.12661186, 0.028811967, -0.08711489) * input_3(0.0, 0.0); + result += mat4(0.19407122, -0.26759052, 0.030227704, -0.071503446, 0.10680791, -0.04235792, -0.10934916, 0.08950821, -0.0019637702, -0.12713604, 0.108068295, 0.04631863, -0.06356376, 0.29933858, -0.029663797, -0.051883142) * input_3(0.0, 1.0); + result += mat4(0.021350682, -0.074091405, 0.019383326, 0.15246277, 0.43739778, 0.23218116, -0.27626532, -0.49258155, -0.111986265, -0.06110304, 0.0051064366, 0.50308037, -0.0027714195, -0.018828824, -0.025254516, -0.52556586) * input_3(1.0, -1.0); + result += mat4(0.021625297, 0.040662162, 0.0036796408, -0.1036183, 0.2114454, 0.14131518, -0.03125265, -0.12574929, -0.14393014, 0.23328675, -0.09580233, -0.03849213, -0.08278599, -0.10083802, 0.027698245, -0.17905478) * input_3(1.0, 0.0); + result += mat4(-0.009755281, -0.011980935, -0.00946762, -0.0719599, -0.07324052, 0.024392003, -0.011948779, -0.07248559, -0.034610398, 0.083707824, -0.024624545, -0.07450855, 0.010321532, -0.024349349, 0.07480036, -0.14651679) * input_3(1.0, 1.0); + result += vec4(-0.02446999, -0.12335079, -0.0031021638, 0.041514017); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!SAVE conv2d_4_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.0095967995, 0.014168475, 0.02993115, -0.044815235, -0.012843672, 0.013511264, -0.00037125882, -0.016467316, -0.018807309, 0.009228929, 0.08406158, 0.016688503, -0.0029104212, 0.14695671, -0.041915618, -0.032423045) * input_0(-1.0, -1.0); + result += mat4(0.015480913, 0.014598554, -0.0035460282, 0.057595007, -0.00223877, -0.06231914, 0.009775081, 0.08341824, -0.010180438, -0.21684612, 0.07387095, 0.055433724, 0.0019082376, 0.48531672, 0.0318906, 0.009298757) * input_0(-1.0, 0.0); + result += mat4(-0.042075656, 0.062742166, 0.012726781, 0.047095872, -0.08239381, 0.06429026, 0.06207991, -0.03766683, -0.01471821, -0.01003206, -0.020963766, 0.023605056, 0.09563109, 0.21268491, -0.032050803, 0.015356194) * input_0(-1.0, 1.0); + result += mat4(-0.027229974, 0.072658375, 0.0014441743, 0.054495815, 0.024775356, 0.019528326, 0.045019574, -0.09362191, 0.013872119, 0.01592281, 0.17902984, 0.06990214, -0.0010372987, -0.06574165, -0.07649565, 0.028458782) * input_0(0.0, -1.0); + result += mat4(-0.016827065, 0.17020929, 0.22644436, -0.0047102547, -0.04685905, -0.08195359, -0.12230908, 0.022894539, 0.036647134, 0.105513476, 0.24810755, -0.17059568, 0.056613628, -0.12927838, -0.041931164, -0.049060613) * input_0(0.0, 0.0); + result += mat4(-0.13926776, -0.067928985, -0.013610526, 0.070137106, 0.20753779, -0.086565845, 0.069135845, 0.03970879, 0.074231096, -0.020687811, -0.06321435, 0.11423086, -0.037946306, -0.08237359, -0.03434359, 0.004628794) * input_0(0.0, 1.0); + result += mat4(0.015109929, -0.055546436, -0.010709656, 0.04285459, -0.017226495, 0.01423016, 0.00837346, -0.0098594595, -0.01508753, -0.04021543, 0.02575128, 0.036026802, 0.008949267, -0.039833374, -0.03942339, -0.020385204) * input_0(1.0, -1.0); + result += mat4(0.017651437, -0.034956377, -0.03242722, 0.032069605, 0.030251933, 0.059733003, 0.009880484, 0.07318022, -0.011916936, 0.018802209, -0.044443198, 0.038647115, -0.043566424, 0.07367331, 0.04202771, -0.079729296) * input_0(1.0, 0.0); + result += mat4(-0.030621637, -0.014932417, 0.022611156, -0.047190476, -0.02827313, 0.08046002, -0.007378508, -0.015100457, 0.04169493, -0.008962385, 0.019901365, -0.006639812, 0.04914274, 0.053586528, 0.025516285, 0.051539008) * input_0(1.0, 1.0); + result += mat4(0.013245067, 0.02046891, 0.0012690711, -0.008915714, 0.018796133, 0.15231305, 0.018350737, 0.0126679, -0.054131187, 0.68324524, -0.07108155, 0.025387991, 0.0079874415, 0.068381526, -0.043227747, -0.021551164) * input_1(-1.0, -1.0); + result += mat4(0.02337105, -0.31408575, -0.020662671, 0.05309881, -0.029357016, 0.49180308, -0.06439141, 0.04022762, 0.08047605, 0.36003527, -0.07860682, 0.0796874, -0.04792501, 0.016682146, -0.015820008, -0.08949644) * input_1(-1.0, 0.0); + result += mat4(-0.030303575, -0.04332008, -0.00027891374, -0.03968604, 0.04293097, 0.07969011, 0.021550806, -0.066039294, -0.06524385, 0.17221014, 0.030949248, -0.031283807, 0.07995664, 0.16996767, -0.012062901, -0.016680175) * input_1(-1.0, 1.0); + result += mat4(0.017441247, -0.017462749, 0.08375599, -0.0224114, -0.073381856, 0.00949588, -0.0992295, 0.19048396, -0.0093602985, -0.09357855, 0.090503424, -0.22044468, -0.02853524, 0.02412655, -0.2215248, 0.017840628) * input_1(0.0, -1.0); + result += mat4(-0.03793275, 0.032046515, -0.18321511, -0.07672444, 0.0147348605, -0.24121301, -0.13321146, 0.026265766, 0.13630806, -0.08760475, -0.081401445, 0.025495125, 0.088021904, -0.27223983, -0.03922283, -0.082844645) * input_1(0.0, 0.0); + result += mat4(0.08383158, 0.08539751, 0.030900933, -0.07815838, -0.068090476, -0.056836136, 0.09356088, -0.1982319, 0.24354164, 0.070283204, 0.01938709, -0.1343368, -0.17517473, -0.03619139, -0.029303154, 0.017532654) * input_1(0.0, 1.0); + result += mat4(-0.0022883362, 0.008631078, 0.07476247, -0.015388119, 0.044613685, 0.03092799, -0.027521232, 0.10466864, -0.040801127, 0.03594817, -0.012616632, 0.16433948, 0.02336003, -0.02758876, -0.0005936716, -0.039160192) * input_1(1.0, -1.0); + result += mat4(0.020438159, -0.010668788, -0.04046644, -0.008371596, -0.0043454166, 0.03607861, 0.07605408, -0.0064612133, 0.038730364, 0.21566013, 0.10896628, -0.11264831, -0.019255156, 0.07286302, 0.008700942, -0.18588585) * input_1(1.0, 0.0); + result += mat4(-0.06102224, -0.008118828, 0.0005767393, -0.019318204, -0.056003135, -0.019658415, -0.040835254, 0.0244761, 0.0045846296, -0.08173185, -0.021780984, -0.07111152, 0.0262876, 0.20054728, -0.058107786, -0.050021414) * input_1(1.0, 1.0); + result += mat4(-0.0014188297, 0.2214706, -0.009851943, -0.00021606762, 0.008310563, -0.202674, -0.010690518, -0.014671779, -0.005883727, -0.1650892, -0.00832962, -0.016851326, -0.011019833, -0.06531575, 0.0031503518, -0.006371914) * input_2(-1.0, -1.0); + result += mat4(0.018247899, 0.053421184, -0.012432836, 0.052570023, 0.036002107, -0.78112996, 0.014983314, -0.025678122, -0.026502522, -0.07732917, 0.009652572, -0.039576244, 0.027633224, -0.04518664, -0.055336207, 0.02784973) * input_2(-1.0, 0.0); + result += mat4(0.05342781, 0.06913854, -0.014533017, -0.012500314, 0.04247098, -0.35174787, -0.008164305, 0.04813132, -0.05771069, -0.19804133, 0.009509777, 0.06354472, -0.011495634, 0.037482858, -0.0047279294, 0.012383691) * input_2(-1.0, 1.0); + result += mat4(-0.009446617, -0.09303525, 0.10887601, -0.051432278, -0.0035545581, -0.054839283, 0.013447529, -0.08028883, 0.010256942, -0.13767233, -0.020205406, -0.012892828, 0.018145746, -0.029660942, 0.014856926, -0.084357336) * input_2(0.0, -1.0); + result += mat4(-0.0026494018, -0.09587592, -0.046999477, 0.3728839, -0.0009517168, -0.17894131, -0.0010735244, -0.1460363, 0.051173948, -0.13628344, 0.13114195, -0.32449237, -0.020723326, 0.12009347, -0.05964781, 0.07590946) * input_2(0.0, 0.0); + result += mat4(0.03957844, -0.049011268, -0.026679387, 0.018455278, -0.1876327, -0.01149983, 0.014730393, 0.068325974, -0.38455153, 0.11037466, 0.040128443, 0.103197575, 0.2574788, 0.046281666, -0.0061782654, -0.18563253) * input_2(0.0, 1.0); + result += mat4(-0.0077182082, 0.016183086, 0.018101595, 0.0042104446, 0.01152657, -0.010885389, -0.018146671, 0.0046722153, -0.018620547, 0.057180878, -0.012990804, -0.052536916, -0.00602495, -0.020669281, 0.019160887, -0.04278057) * input_2(1.0, -1.0); + result += mat4(-0.0053147003, -0.021391585, -0.0074315956, -0.021328095, -0.03803527, 0.049110137, 0.032044876, -0.07912107, -0.030328099, 0.05181659, 0.09605106, -0.10134368, -0.0023379147, -0.066124536, -0.026703974, 0.033029333) * input_2(1.0, 0.0); + result += mat4(-0.018183526, -0.005607061, -0.027957326, 0.0042427517, -0.13039578, 0.0023597006, -0.017451355, 0.019285833, -0.04845536, 0.04939856, 0.0029386648, -0.026929224, 0.0076379543, -0.016592333, -0.0054875547, -0.0003502664) * input_2(1.0, 1.0); + result += mat4(0.0064585046, 0.093506835, 0.0050818142, 0.0057656965, -0.006158577, -0.05627697, -0.008139294, 0.013238929, 0.03337124, -0.40732405, 0.041954875, -0.02078191, -0.018220339, 0.24072364, -0.010592302, 0.0045321626) * input_3(-1.0, -1.0); + result += mat4(0.062475506, -0.46160415, 0.069025144, -0.0020563416, 0.024558, -0.17931505, -0.04390077, 0.046828248, -0.064667925, -0.31498113, 0.08417843, -0.115793325, 0.017912019, -0.008247954, -0.020233681, -0.08705123) * input_3(-1.0, 0.0); + result += mat4(0.15354793, -0.4424151, 0.023411551, 0.027884379, -0.093573965, 0.05880995, 0.01648256, -0.030808587, 0.025358068, -0.032246143, -0.033799283, 0.023028636, -1.0682992, 0.10474917, 0.026509631, -0.24121939) * input_3(-1.0, 1.0); + result += mat4(-0.0050511565, 0.104780234, 0.03914041, -0.049604747, 0.015343506, 0.044453938, 0.008417119, -0.032786682, -0.08399216, 0.10944251, -0.03737186, 0.22187959, -0.00055257854, -0.15070423, -0.020839296, 0.08893232) * input_3(0.0, -1.0); + result += mat4(0.106028005, 0.31061235, 0.12818412, -0.1365541, -0.03934979, 0.1765537, -0.08706981, -0.035732638, 0.2283893, 0.079185985, 0.0041627395, 0.04766368, -0.020422222, -0.04433383, 0.01849811, 0.047079064) * input_3(0.0, 0.0); + result += mat4(-0.14798054, 0.09152911, -0.007272675, 0.044591643, 0.21175556, 0.013058791, -0.0018605711, -0.088631734, -0.25470126, 0.08085215, -0.060207434, 0.15532763, 0.03879417, -0.23338035, -0.07378707, 0.08588736) * input_3(0.0, 1.0); + result += mat4(-0.023366991, -0.007611007, 0.015798422, -0.033122003, -0.012992002, -0.04055836, -0.008109665, -0.0434945, 0.027784947, -0.03872673, -0.020277454, 0.002183353, 0.01498159, 0.0673948, 0.013771471, 0.017635904) * input_3(1.0, -1.0); + result += mat4(0.0064137564, -0.13504179, -0.05802497, 0.09177983, 0.012833564, -0.03173082, -0.03832472, -0.013082873, 0.036361676, -0.16388147, -0.16190828, 0.13404411, 0.0065615387, 0.05826413, 0.028390603, -0.024000028) * input_3(1.0, 0.0); + result += mat4(0.000862133, -0.05297163, -0.008919768, 0.034083545, -0.004775925, 0.00076870393, 0.010216165, -0.018153373, -0.025489423, 0.055919904, 0.029459205, 0.044381175, -0.010183179, 0.036058303, -0.0025749232, -0.07427092) * input_3(1.0, 1.0); + result += vec4(-0.018494831, -0.035350163, -0.0013512085, -0.019652398); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!SAVE conv2d_4_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.010324308, -0.017429003, -0.005605015, -0.096945405, -0.0029176814, 0.03017138, 0.013172454, -0.0042952932, -0.019939652, 0.019188602, -0.00914564, 0.086977445, 0.012706651, -0.093651846, 0.024730366, -0.06951438) * input_0(-1.0, -1.0); + result += mat4(0.045695167, 0.04192357, -0.04214913, 0.03489329, 0.034525543, -0.04593765, -0.033067323, 0.034911145, 0.0074747577, 0.13168526, 0.027678313, 0.13878727, 0.044328764, -0.054913856, 0.035992254, 0.1620988) * input_0(-1.0, 0.0); + result += mat4(-0.017302068, 0.020393375, -0.083416, -0.013045015, -0.019449385, 0.09196044, -0.019065414, 0.084072515, -0.014828034, -0.004855444, -0.04733525, -0.0077213505, 0.10181332, 0.11983549, 0.088363744, 0.10025606) * input_0(-1.0, 1.0); + result += mat4(-0.019435668, -0.04790806, 0.0024929806, -0.4101058, 0.04971034, 0.036335383, 0.029787306, 0.33855274, 0.034066126, 0.069399744, 0.002996593, 0.0460224, -0.05919312, -0.0048237657, -0.002463071, -0.15267965) * input_0(0.0, -1.0); + result += mat4(-0.006400042, 0.0359995, 0.022332782, 0.14354612, -0.14057031, -0.051904883, -0.10514635, -0.12948768, -0.0070765037, 0.21340072, -0.017159672, 0.29962593, 0.22377181, -0.06471854, 0.026099684, 0.30806908) * input_0(0.0, 0.0); + result += mat4(-0.04779291, -0.12888977, 0.07427706, -0.15640679, 0.071453385, 0.27044442, 0.00088017783, 0.16930902, -0.043466832, -0.13091055, -0.14304736, 0.030189406, 0.01752515, -0.107798904, -0.113841206, -0.058187116) * input_0(0.0, 1.0); + result += mat4(0.020329837, -0.018361226, 0.0028758734, -0.02550155, -0.032542888, 0.0036495028, 0.011801395, -0.018714169, -0.015444399, -0.016316213, -0.015410782, 0.018332377, -0.036350384, 0.012578222, 0.002409097, 0.016737608) * input_0(1.0, -1.0); + result += mat4(0.034558166, -0.011232979, -0.03788652, -0.03469588, 0.008461162, -0.054629754, 0.01573053, 0.039937153, 0.014469192, 0.061105747, -0.0011596516, 0.20842643, -0.039636414, -0.02514149, 0.039693937, -0.017317424) * input_0(1.0, 0.0); + result += mat4(-0.03139525, -0.026213525, -0.072846904, -0.049295817, -0.016231136, 0.10786758, 0.034310915, 0.16009597, -0.0015225862, 0.069989726, -0.0301103, -0.0027405978, -0.006883243, -0.06688953, 0.043587573, -0.09055495) * input_0(1.0, 1.0); + result += mat4(0.0111504495, 0.0135619985, 0.0025886355, 0.12475811, -0.026976638, -0.0032327985, -0.035133418, -0.1351888, 0.028668948, 0.08534303, -0.014383975, 0.0734931, 0.00070947735, -0.03420394, 0.0064356807, 0.1282847) * input_1(-1.0, -1.0); + result += mat4(-0.0028194904, 0.011539737, 0.0091593675, -0.0050325743, 0.0137041155, 0.048572514, -0.019995127, -0.04966775, 0.07658341, -0.17670566, -0.072804466, -0.06465007, -0.05987425, 0.051308572, 0.038992546, -0.036870413) * input_1(-1.0, 0.0); + result += mat4(-0.018049717, 0.043525334, 0.008242846, -0.020621885, 0.040189926, 0.03413061, 0.12702855, 0.059285715, -0.025524868, 0.0551439, -0.0989861, 0.028273767, 0.0034308163, 0.023829756, 0.028430082, -0.005860225) * input_1(-1.0, 1.0); + result += mat4(0.14406551, -0.097169, 0.007879146, 0.113034695, -0.17743385, -0.1312086, -0.059119247, -0.66290027, -0.10936704, 0.17018972, 0.0022386112, 0.42079368, -0.00993979, -0.10375414, 0.035812996, -0.051261995) * input_1(0.0, -1.0); + result += mat4(-0.11530176, 0.056131978, 0.02285196, -0.22006537, -0.27326953, 0.06726769, 0.14075975, -0.23371112, -0.1462106, -0.2951077, 0.06174811, -0.402271, 0.031418703, 0.020067338, 0.040088773, -0.050494354) * input_1(0.0, 0.0); + result += mat4(0.03250979, 0.38293347, -0.0010077471, 0.050229058, 0.042055447, 0.18072966, 0.18217984, 0.042420242, 0.037262585, 0.20166986, 0.21348543, 0.21703148, -0.0119677875, -0.12107609, -0.016389877, -0.14915806) * input_1(0.0, 1.0); + result += mat4(0.026734859, 0.0016744311, 0.008222706, 0.12574093, 0.022360845, -0.029505854, -0.0259402, 0.10792938, -0.037648708, -0.09398797, -0.030386675, -0.20199655, 0.040298447, -0.011977622, -0.0021575426, -0.117257595) * input_1(1.0, -1.0); + result += mat4(0.016220244, 0.050528493, 0.02090402, -0.0698563, -0.05896723, 0.08549716, -0.0072171763, 0.06989304, 0.046332106, 0.2767262, 0.14563611, 0.25540215, -0.050038483, 0.04484775, -0.03474069, 0.12121609) * input_1(1.0, 0.0); + result += mat4(0.00028605363, 0.021808285, 0.035912246, -0.007818516, -0.033509407, -0.002123189, -0.0067167813, 0.12289214, -0.008282152, -0.18750207, 0.039494663, 0.0037536498, -0.022258632, -0.04126063, 0.04647444, -0.06665224) * input_1(1.0, 1.0); + result += mat4(-0.022439081, 0.015557516, 0.00799348, 0.016456537, -0.0078121065, 0.020896487, -0.007854385, 0.04089123, -0.022959102, 0.004470458, 0.0068389745, 0.12649924, 0.013781818, 0.03508097, 0.01301185, 0.039963827) * input_2(-1.0, -1.0); + result += mat4(-0.011740153, -0.05557211, 0.008514579, -0.07110714, -0.0021641904, -0.065625146, 0.02016707, 0.026446339, -0.09228594, -0.008662336, 0.04526394, -0.023569178, 0.012404953, -0.119242035, -0.023052802, -0.116621) * input_2(-1.0, 0.0); + result += mat4(-0.022118222, 0.10982428, 0.03638259, 0.02172513, -0.00090733473, -0.094554804, -0.013084671, 0.014953303, 0.009493402, -0.07563578, -0.048649386, -0.032934327, 0.013569521, -0.005488591, -0.04443885, 0.033282828) * input_2(-1.0, 1.0); + result += mat4(0.03905585, 0.068128146, 0.021498948, 0.2845726, -0.050067138, 0.04552072, 0.002925175, -0.059858706, 0.05887643, 0.053452007, -0.0046629184, 0.21802673, 0.07140928, 0.076086394, -0.0035500147, 0.17302728) * input_2(0.0, -1.0); + result += mat4(0.18334723, -0.14016491, -0.04710273, 0.14486104, -0.10738225, -0.036313444, -0.017438604, -0.4949435, 0.078144945, -0.02005294, 0.034743905, -0.30284554, -0.057578526, -0.1346643, -0.09820921, -0.28696528) * input_2(0.0, 0.0); + result += mat4(0.004235745, 0.1517313, 0.14252336, -0.052441508, -0.06624416, -0.38674733, -0.090762824, -0.15237123, 0.02100435, -0.32155105, -0.25156292, -0.043337002, 0.011464389, 0.12885165, 0.27587065, 0.18126862) * input_2(0.0, 1.0); + result += mat4(-0.018099688, 0.018028283, 0.020559847, 0.116338775, 0.012900114, -0.008466156, -0.0076251337, 0.013683417, -0.059352852, -0.00071241276, 0.023335332, -0.19380844, -2.6996311e-05, 0.021529771, 0.013664046, -0.028738443) * input_2(1.0, -1.0); + result += mat4(-0.06901598, -0.08239953, -0.038104776, -0.10025568, -0.06542442, -0.018423045, -0.022379361, -0.24258777, 0.053299956, 0.015831167, 0.114506446, -0.012275279, 0.073787525, -0.008659992, 0.0064340495, 0.026584892) * input_2(1.0, 0.0); + result += mat4(-0.015244945, -0.024431204, 0.015881483, -0.072780274, -0.009089516, -0.109901085, 0.0031026127, -0.0073593766, 0.018399363, -0.12006727, 0.048939195, -0.11775668, -0.011999904, -0.0016252717, -0.0626824, 0.065234) * input_2(1.0, 1.0); + result += mat4(0.046417642, -0.027166467, 0.008495429, -0.010995891, -0.002404634, 0.004585766, -0.0075697177, 0.011194277, -0.005637637, -0.036786553, -0.002675591, -0.0940007, -0.07923741, -0.0025103197, -0.010576179, -0.33656964) * input_3(-1.0, -1.0); + result += mat4(0.01613073, -0.015780272, 0.0105878925, 0.10652184, 0.039406963, -0.014619525, -0.015303291, -0.06977952, -0.07161314, 0.12724197, 0.047407385, 0.0694194, 0.042803112, 0.052053977, 0.04630977, 0.19435763) * input_3(-1.0, 0.0); + result += mat4(-0.024839416, 0.03377947, 0.097761266, 0.0013172801, -0.003537957, 0.0139911985, -0.004316394, 0.08247901, 0.010777022, -0.056781687, 0.068123914, 0.0012185408, -0.017629046, -0.5094381, -0.012168132, -1.0783194) * input_3(-1.0, 1.0); + result += mat4(0.14402594, 0.04474039, 0.020912481, 0.2797491, -0.005142085, 0.012354493, 0.0059536556, 0.11216341, 0.20849138, -0.16235548, -0.027104793, -0.4635684, 0.002895218, -0.076730736, -0.04839686, -0.30293515) * input_3(0.0, -1.0); + result += mat4(-0.2926878, 0.011301389, -0.014898797, -0.27372792, -0.059722338, -0.067527495, -0.04065245, -0.21059571, 0.1536258, 0.19572102, -0.03893248, 0.32766566, 0.08744272, 0.054779798, 0.07775782, 0.37327883) * input_3(0.0, 0.0); + result += mat4(-0.1092581, 0.09528391, 0.12154955, -0.0008616062, -0.0095630465, 0.19612886, -0.09807077, 0.12045405, 0.021295525, -0.26660305, -0.22167031, -0.22726573, 0.08920044, -0.03696086, -0.12515067, -0.14438091) * input_3(0.0, 1.0); + result += mat4(0.020461205, 0.02031319, 0.021130256, -0.03053887, -0.012056974, 0.020513987, 0.0015560206, 0.08733963, 0.08140046, 0.036706395, -0.04450855, -0.03676257, 0.0022296747, -0.05898682, 0.009049816, -0.07010387) * input_3(1.0, -1.0); + result += mat4(0.08084717, -0.012068985, -0.03536616, 0.11687455, -0.010884625, -0.06758621, -0.032358844, -0.26059464, 0.11592746, -0.27572474, -0.20987633, -0.08440524, -0.034980226, 0.09916681, -0.03042345, 0.15111566) * input_3(1.0, 0.0); + result += mat4(0.023890635, 0.060076397, -0.07146153, -0.09385919, 0.016994517, 0.022444082, -0.0037551774, 0.12980874, 0.052621774, 0.08110621, -0.15566283, -0.046273038, -0.06852746, -0.06060598, 0.05137193, 0.026673298) * input_3(1.0, 1.0); + result += vec4(0.00051078224, -0.023126302, 0.0020703115, -0.02341397); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!SAVE conv2d_4_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.11461174, -0.020779813, -0.0015978394, 0.059278075, 0.0026168297, 0.074702725, 0.00953187, 0.007246814, -0.05713571, 0.09040747, -0.0051039374, 0.024331702, -0.010659548, -0.045386225, -0.012670959, -0.03088271) * input_0(-1.0, -1.0); + result += mat4(-0.048384253, -0.020391006, 0.0038518312, -0.000419753, 0.08816554, 0.052468177, 0.00069295196, 0.010098722, 0.04737203, -0.03876704, -0.013588011, -0.0017857231, 0.06278254, 0.09283983, -0.0024857977, 0.056681957) * input_0(-1.0, 0.0); + result += mat4(-0.07946567, -0.151427, -0.00447435, 0.02837487, -0.12526013, -0.154415, -0.0076921997, -0.019843102, -0.080015644, 0.074909866, -0.0022708788, 0.020470541, -0.08564545, -0.02615176, 0.009076554, 0.021602487) * input_0(-1.0, 1.0); + result += mat4(-0.11770548, -0.1116428, 0.047540873, -0.0029387653, 0.071941264, -0.16787115, -0.029808708, -0.0050615775, -0.072589986, 0.028132955, 0.06327502, -0.0072779683, -0.1052169, 0.029168786, -0.009284416, -0.05678617) * input_0(0.0, -1.0); + result += mat4(-0.13743214, 0.06315281, -0.07164896, 0.24167773, -0.13198304, 0.0726832, 0.04229719, -0.043288242, -0.07781582, -0.06599032, -0.12160186, -0.008904415, -0.16204563, 0.06485937, 0.16942482, -0.1294101) * input_0(0.0, 0.0); + result += mat4(-0.118498236, 0.026664067, 0.0064071603, 0.034974232, -0.08993207, -0.10994741, -0.031441752, -0.05065077, 0.039769296, -0.021038804, 0.021313913, 0.011226934, 0.034069173, -0.087682836, 0.04357457, -0.03767637) * input_0(0.0, 1.0); + result += mat4(0.07285725, -0.15255523, -0.03707363, 0.049093947, -0.015012453, 0.10288779, 0.029058203, -0.021499654, -0.005837416, -0.029934965, -0.049998406, -0.03201391, 0.03722476, -0.14033088, -0.012620078, 0.045298316) * input_0(1.0, -1.0); + result += mat4(-0.034388896, -0.024225997, -0.22108687, 0.10438805, -0.04777826, -0.07563866, -0.051087033, 0.06873764, -0.108522736, -0.029502103, 0.051407877, 0.0156189725, 0.04483006, -0.111073665, 0.05004732, -0.071030095) * input_0(1.0, 0.0); + result += mat4(-0.13501573, -0.059627995, 0.012943654, -0.021425588, -0.013392913, 0.1055727, -0.014836109, -0.00040687274, 0.014583297, 0.017050862, 0.08663902, 0.025893206, 0.06181988, -0.06266899, 0.06534771, 0.02664393) * input_0(1.0, 1.0); + result += mat4(0.06906809, -0.15242113, -0.0049499236, -0.0108378185, -0.049883805, -0.15937233, -0.02598499, 0.025640558, -0.09471054, 0.035946, -0.006670213, -0.14187616, 0.09720181, 0.03816086, 0.009140902, 0.049304258) * input_1(-1.0, -1.0); + result += mat4(-0.14683993, -0.0010633724, 0.0052395766, 0.045385472, 0.06887427, -0.09489063, 0.02264692, -0.105721086, 0.044437934, -0.119613916, 0.006971417, -0.082312986, -0.12082671, -0.012289196, -0.010360655, -0.0081764385) * input_1(-1.0, 0.0); + result += mat4(0.109083526, -0.054764893, -0.00039666434, -0.027816307, -0.15659948, -0.13193169, -0.016590184, -0.03526938, -0.048088904, -0.13415995, 0.008613078, 0.03751614, -0.10652472, 0.07958264, 0.0021217382, -0.10116789) * input_1(-1.0, 1.0); + result += mat4(0.086169444, -0.040369805, -0.025026055, 0.0561182, -0.014087615, -0.15158929, -0.009849509, -0.216292, -0.13614567, -0.040799577, -0.028233882, 0.3973454, 0.07477717, -0.0084321955, 0.014083657, -0.090399936) * input_1(0.0, -1.0); + result += mat4(-0.08593715, -0.12936617, 0.008036599, -0.22459428, -0.015386057, -0.123301074, 0.016834348, 0.19953291, -0.04425332, 0.062378027, 0.009338085, -0.14067158, 0.04629014, -0.086213775, 0.01252227, -0.1167163) * input_1(0.0, 0.0); + result += mat4(-0.1468053, -0.053019345, 0.0135202315, -0.075151674, 0.055818703, -0.06491363, 0.018185109, -0.08638318, -0.081905454, -0.0706691, -0.021033136, -0.121730566, -0.097227246, 0.041857045, -0.011679815, -0.041925464) * input_1(0.0, 1.0); + result += mat4(-0.06608112, -0.051554818, 0.15179004, -0.0636365, -0.10538134, -0.070735075, -0.1918526, 0.15487075, 0.078773856, 0.10251668, -0.028086713, 0.070078254, -0.12031488, 0.0834388, -0.016602373, 0.0960051) * input_1(1.0, -1.0); + result += mat4(-0.15727462, -0.13739271, 0.052495986, 0.01304524, 0.07279048, -0.16279937, 0.009928884, -0.07987769, 0.008875635, 0.04924244, 0.073610105, -0.087848015, -0.055877704, 0.009167456, -0.00085587346, -0.08173797) * input_1(1.0, 0.0); + result += mat4(-0.14662658, -0.14927004, -0.07593544, -0.013623896, -0.0674551, 0.035034772, -0.064955786, -0.0031610192, -0.10699139, -0.02551001, -0.04671844, -0.06720605, 0.073530674, 0.05977296, -0.04594287, -0.08801462) * input_1(1.0, 1.0); + result += mat4(0.0021261068, -0.14951245, -0.0002999295, -0.02247222, -0.1157895, -0.16714934, 0.0074453927, 0.047612533, -0.11097492, -0.028575111, 0.009123537, 0.03089887, 0.016809497, -0.021035463, -0.009656974, 0.034115463) * input_2(-1.0, -1.0); + result += mat4(0.049783237, -0.0783316, -0.004299536, 0.0522498, -0.05564087, -0.15118662, -0.0017098713, 0.039410554, 0.005921231, -0.10468052, -0.013821104, 0.046870552, -0.084826335, -0.098221704, 0.02007087, -0.09080545) * input_2(-1.0, 0.0); + result += mat4(0.04248988, -0.08089561, 0.0002440697, 0.009582344, -0.03957526, -0.16622373, 0.0052595213, -0.028374476, 0.008329459, -0.15092514, 0.008061614, -0.0016360099, -0.15065709, -0.01928192, -0.0013718675, 0.0147485295) * input_2(-1.0, 1.0); + result += mat4(-0.00060133677, -0.0632753, -0.02095628, 0.011382901, -0.07541246, -0.11824509, -0.011703371, -0.0711176, -0.018602476, -0.11979128, -0.043052584, -0.050837964, -0.0783805, -0.093221515, -0.003796143, 0.047741126) * input_2(0.0, -1.0); + result += mat4(-0.047996953, -0.019944753, 0.035165146, 0.13543086, 0.040861897, 0.09887057, 0.015471711, -0.04308183, 0.04044121, -0.05938187, -0.044846643, -0.10624206, -0.054421164, -0.14806737, 0.058827464, -0.038780015) * input_2(0.0, 0.0); + result += mat4(-0.12424061, -0.17791185, 0.003657328, 0.040839218, -0.019248176, -0.15049484, 0.010527245, -0.01627274, -0.15374278, 0.024519034, -0.03775856, 0.06035265, -0.09959295, 0.015375356, -0.041802768, -0.10420039) * input_2(0.0, 1.0); + result += mat4(-0.11063592, -0.047804296, 0.028868753, 0.071700945, -3.0659823e-05, -0.12682812, -0.12502074, -0.05234319, 0.08607831, -0.07279851, 0.1153271, -0.008432422, -0.09343547, 0.09361427, 0.07738105, -0.0790758) * input_2(1.0, -1.0); + result += mat4(-0.02080086, 0.08471405, 0.06982787, -0.07518164, -0.04320268, -0.023740135, -0.353835, -0.11664986, 0.061406065, -0.12442122, -0.18496315, -0.11910784, -0.004579647, -0.08722505, 0.073995546, 0.0128325485) * input_2(1.0, 0.0); + result += mat4(0.01923829, -0.13699308, -0.041648097, 0.01090033, -0.061230004, -0.13010333, 0.00845309, -0.00520192, -0.08675589, -0.0011898244, -0.01575018, -0.021814877, 0.04433815, -0.008568327, 0.08242423, 0.029069887) * input_2(1.0, 1.0); + result += mat4(-0.11301314, -0.105657354, -0.017291253, -0.07455164, -0.007088713, -0.054290984, 0.00166885, -0.014431778, -0.06002036, -0.027506877, 0.008228151, 0.118823074, -0.00854009, -0.14545833, 0.018759636, -0.069597214) * input_3(-1.0, -1.0); + result += mat4(0.017473442, -0.02237447, 0.01733051, 0.09612832, -0.008527954, -0.16555898, -0.00017694445, 0.010470375, 0.00636407, -0.01929527, -0.0056299097, 0.028533058, -0.0055466224, -0.06742568, -0.025869519, -0.12176671) * input_3(-1.0, 0.0); + result += mat4(-0.087384894, -0.11726098, 0.008575724, 0.007840408, 0.07542892, 0.1096276, -0.005833544, 0.0056623956, 0.022492545, 0.028238663, -0.006876694, -0.018779932, -0.120149404, -0.12599777, 0.0052457396, -0.098022126) * input_3(-1.0, 1.0); + result += mat4(0.047442127, -0.11221658, 0.0036154564, 0.15647966, -0.074313015, 0.060852665, 0.004697337, 0.11751853, -0.15359707, 0.009881661, -0.020971935, -0.30937153, 0.081284665, 0.06628491, -0.07188683, -0.0649882) * input_3(0.0, -1.0); + result += mat4(-0.0989229, -0.07418241, 0.23983201, 0.071228884, -0.022780392, 0.035865758, -0.017548233, -0.10325078, -0.1320145, 0.078616984, 0.001229082, -0.022917466, -0.0026524512, 0.035980508, 0.26958138, -0.16425784) * input_3(0.0, 0.0); + result += mat4(-0.08585192, -0.035305206, 0.024959393, 0.026593944, -0.021287942, -0.06050653, 0.004301799, -0.0086583495, -0.02184744, 0.028836237, -0.0050945687, 0.107756235, 0.0033790611, 0.032801483, 0.05112497, 0.09861054) * input_3(0.0, 1.0); + result += mat4(-0.059257586, -0.103664346, 0.108863614, -0.11186585, 0.026353331, 0.10319025, 0.016666953, -0.017692162, -0.062350336, -0.024954729, 0.040094264, -0.020898506, -0.08192243, -0.049573507, -0.035561692, 0.039138347) * input_3(1.0, -1.0); + result += mat4(-0.1155861, -0.10640814, -0.27621832, 0.116663404, 0.054134525, 0.013864473, 0.028468141, 0.0063567185, -0.010836714, 0.06861808, -0.103132606, 0.14374204, -0.079824775, 0.08834389, 0.027493116, 0.024784803) * input_3(1.0, 0.0); + result += mat4(-0.10582434, 0.004014226, 0.12380318, 0.018818105, 0.027996339, -0.1646421, 0.03330956, 0.016194066, 0.048652653, 0.0012175783, -0.038900886, 0.044891417, -0.044236396, 0.118395224, -0.056061614, -0.09189882) * input_3(1.0, 1.0); + result += vec4(-0.096567154, -0.12122044, -0.006196549, -0.022348957); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!SAVE conv2d_4_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.014466888, -0.038168974, 0.012974196, 0.0067300145, -0.0017415743, 0.055296477, -0.0268205, 0.014363979, -0.004672549, -0.002938258, -0.020578701, -0.06158801, -0.00018910058, 0.30061224, 0.061572053, 0.014828947) * input_0(-1.0, -1.0); + result += mat4(0.06335293, -0.17615192, 0.13177447, 0.10248261, 0.058254957, -0.24629126, 0.006342479, -0.06694009, 0.024458826, -0.2696824, 0.075945914, 0.025770301, -0.038611554, 0.21099389, 0.16624781, 0.1706353) * input_0(-1.0, 0.0); + result += mat4(0.025341252, -0.09955017, 0.07833471, 0.059494074, -0.07173684, -0.0072807968, -0.019693969, 0.032729734, 0.04934726, -0.0027628362, 0.038863424, -0.060392145, 0.043343265, 0.13400088, 0.054198246, 0.14275844) * input_0(-1.0, 1.0); + result += mat4(0.029774731, 0.17518418, -0.027066607, 0.027709566, -0.03759215, 0.06113347, 0.010150664, -0.036376838, 0.07046156, 0.01507554, 0.029190822, -0.018791927, 0.023117777, 0.09664449, 0.07181728, -0.02195346) * input_0(0.0, -1.0); + result += mat4(0.23276673, 0.026117006, -0.014225731, 0.1284034, -0.022595009, 0.094662316, -0.059909217, -0.037695035, 0.09212733, 0.033635207, -0.097199336, 0.022112051, -0.13928342, -0.155063, 0.25814405, -0.16119447) * input_0(0.0, 0.0); + result += mat4(0.009272779, 0.12764923, 0.004543296, -0.0017623167, 0.066059135, 0.01353817, -0.022824977, -0.012190298, -0.048931196, -0.07557819, -0.036109507, -0.015384028, -0.06150374, 0.12392231, 0.046935957, 0.0004030668) * input_0(0.0, 1.0); + result += mat4(0.031402886, -0.06575797, 0.06107082, -0.011954933, 0.008497283, 0.06995787, -0.04519133, 0.013718833, 0.019302431, -0.08810492, -0.024497306, 0.00091006997, -0.026472881, 0.049982306, -0.012550375, -0.0067508193) * input_0(1.0, -1.0); + result += mat4(-0.027732732, -0.06895975, -0.02268689, -0.023579063, 0.013540156, -0.02800843, -0.00032020756, 0.00920161, -0.064203076, -0.009369189, -0.008069127, -0.01182088, 0.004255763, 0.20741981, -0.072609015, 0.04316294) * input_0(1.0, 0.0); + result += mat4(0.0077204714, 0.07860251, -0.00044279362, 0.011799698, -0.042044755, 0.012774, 0.019225929, -0.0016230473, 0.029415244, 0.014055394, -0.009047095, -0.002772023, 0.033755034, 0.03304362, -0.025748994, 0.013140124) * input_0(1.0, 1.0); + result += mat4(0.00020491375, 0.1417706, -0.023081446, 0.002149722, 0.09458565, -0.09337628, 0.07918285, 0.022018261, -0.005295667, -0.33746123, 0.35387856, -0.06751057, -0.05915558, 0.20665336, -0.17904904, 0.09687314) * input_1(-1.0, -1.0); + result += mat4(0.043036867, 0.10333625, -0.0079288, -0.05749001, 0.047438648, 0.049971048, -7.297717e-05, 0.2210737, -0.076454446, -0.14744785, 0.13891423, -0.07901926, 0.0029234234, 0.03088523, -0.055216897, -0.14268363) * input_1(-1.0, 0.0); + result += mat4(-0.02776051, 0.082582854, 0.00048301925, 0.035678495, -0.14585838, -0.05747571, -0.023974368, 0.056778792, -0.033232443, 0.0066315085, 0.021467267, 0.030607643, -0.03043503, -0.035221092, 0.021059433, -0.029717065) * input_1(-1.0, 1.0); + result += mat4(-0.029049527, 0.008770636, 0.018414043, -0.018138153, -0.0075610015, 0.07879738, -0.11503434, 0.09494794, -0.053887427, 0.9984776, -0.071119204, 0.29629582, -0.01446724, -0.17708212, 0.25142896, 0.06774265) * input_1(0.0, -1.0); + result += mat4(-0.018605556, -0.083375946, 0.12666924, 0.0037829755, -0.20373356, -0.24380071, -0.16088267, -0.03534847, 0.004196694, 0.6255092, -0.056216102, 0.0657356, -0.16405024, -0.13609686, 0.09735944, -0.09493904) * input_1(0.0, 0.0); + result += mat4(-0.036252674, -0.016012568, -0.0062809465, -0.042288084, 0.10596685, 0.30356005, 0.050315358, 0.0099353185, -0.0052789915, -0.012870037, 0.031053687, 0.10145325, 0.021809548, 0.042033195, 0.008381446, 0.10223539) * input_1(0.0, 1.0); + result += mat4(0.023218382, -0.046260443, -0.019412667, -0.0040679933, -0.05710694, 0.024801498, 0.17211659, -0.006222111, 0.08477869, 0.8139331, 0.45456576, 0.040495306, -0.016466904, -0.023652457, 0.07357044, 0.008860561) * input_1(1.0, -1.0); + result += mat4(-0.026131067, -0.07326232, -0.008978, -0.007778233, 0.053778168, 0.16273001, 0.1734864, 0.013944705, 0.07147938, 0.36971965, 0.10429156, 0.042157777, -0.0053360243, 0.14585468, -0.13326265, 0.041043703) * input_1(1.0, 0.0); + result += mat4(0.02174601, -0.018456472, -5.8055295e-05, 0.034698367, -0.023199769, -0.021765899, 0.051976413, 0.02287226, -0.061721012, 0.12019486, 0.045030385, 0.014645457, -0.0675144, 0.20386153, 0.06876642, 0.049601845) * input_1(1.0, 1.0); + result += mat4(-0.01500841, 0.12181174, -0.056481503, 0.0087115355, -0.005946115, -0.022215461, -0.003997738, -0.045885213, -0.035100725, 0.07735114, -0.11765731, -0.0766226, -0.028312294, -0.111860454, -0.06402402, 0.0016967907) * input_2(-1.0, -1.0); + result += mat4(0.044272974, 0.12379024, -0.14484034, -0.050465766, -0.005753722, 0.036721244, -0.013306597, -0.06448232, 0.009829852, 0.12197497, 0.023914523, -0.22168069, 0.03988801, -0.20432757, 0.16803655, -0.03812833) * input_2(-1.0, 0.0); + result += mat4(0.011275624, 0.020903256, -0.033183932, 0.055119958, 0.022947077, -0.035662342, 0.0803317, 0.015623594, 0.029372199, 0.050483063, 0.013505711, -0.04810347, -0.101489305, -0.1053308, 0.004939866, 0.0033787438) * input_2(-1.0, 1.0); + result += mat4(-0.007653384, -0.06966631, 0.1671457, 0.010632005, 0.042843737, -0.25727332, 0.037827767, -0.0061691357, 0.11289417, -0.31036747, 0.0928182, -0.057442605, -0.018081049, 0.012686921, -0.04893142, -0.050267287) * input_2(0.0, -1.0); + result += mat4(0.05505659, -0.07672926, 0.14862946, -0.09385061, -0.17020285, -0.41685295, 0.078830786, -0.1596678, -0.2643629, -0.4946357, -0.098960236, -0.10523534, -0.0007343785, 0.27105942, -0.25745994, 0.07206784) * input_2(0.0, 0.0); + result += mat4(-0.016728647, -0.06363348, -0.010844293, -0.040968925, 0.06644874, 0.09680722, -0.011265156, -0.028571827, 0.08257226, 0.014233987, 0.036343053, -0.0044017183, 0.009722218, 0.008100822, -0.014715277, 0.04825649) * input_2(0.0, 1.0); + result += mat4(0.0071656476, 0.047019374, -0.15072723, 0.013829794, -0.03322728, -0.16770297, -0.10998711, 0.0017910755, 0.0020368644, 0.059949923, -0.13340464, 0.022589207, 0.030115807, -0.044558495, -0.036602307, 0.017222231) * input_2(1.0, -1.0); + result += mat4(0.03544888, 0.035617676, -0.12633534, 0.0020180368, 0.05261312, -0.04709813, -0.11540549, 0.013986433, 0.058227703, 0.09231119, -0.035028107, 0.04761779, -0.051257387, -0.13389839, 0.104099944, -0.037126713) * input_2(1.0, 0.0); + result += mat4(-0.02336409, -0.06375413, -0.017452165, -0.023591166, -0.013437715, 0.06376458, -0.005035552, -0.0003077711, -0.011131003, 0.1617929, -0.017501768, 0.00783097, 0.013326072, 0.05311792, 0.049836982, -0.0039981934) * input_2(1.0, 1.0); + result += mat4(-0.03809435, 0.2542609, -0.12292908, 0.010944904, 0.0013032182, -0.08673944, 0.08894608, 0.051028766, -0.0023684201, 0.058771066, -0.17005593, 0.06760555, 0.042438388, 0.002728478, -0.032440845, 0.014582937) * input_3(-1.0, -1.0); + result += mat4(-0.041041303, 0.11419215, -0.18758607, -0.39245203, 0.020342443, -0.032655485, 0.052078195, 0.056838397, 0.041166462, 0.11339401, -0.09912858, -0.08780739, -0.106731504, 0.059694618, -0.10703231, -0.013417858) * input_3(-1.0, 0.0); + result += mat4(0.030525308, -0.11227952, -0.023422547, -0.22463065, -0.060786843, -0.0019399568, -0.006224138, -0.01255025, 0.054496106, -8.0310376e-05, -0.045752987, -0.006343217, -0.31079662, -0.8189575, -0.056063816, -0.017205678) * input_3(-1.0, 1.0); + result += mat4(-0.05519502, -0.05685819, 0.027728241, -0.03815617, -0.07975491, -0.15640327, -0.12822075, -0.029462345, 0.0060629537, -0.50115246, 0.24592158, -0.04568692, 0.028364897, 0.07575902, 0.120251246, 0.008822691) * input_3(0.0, -1.0); + result += mat4(0.07686786, -0.24354202, -0.6003353, 0.20893836, -0.045773055, -0.094128035, -0.16648932, -0.05063594, 0.11701159, -0.39287075, 0.31543788, 0.31536573, 0.03125942, 0.1900152, 0.22793896, 0.008423891) * input_3(0.0, 0.0); + result += mat4(0.05488544, 0.07737692, -0.04080922, 0.016517468, 0.0041073426, -0.061326426, -0.033570927, 0.010342349, -0.027529724, -0.049996708, 0.0067955777, 0.009243018, -0.009073503, -0.041343335, 0.13681024, -0.06207752) * input_3(0.0, 1.0); + result += mat4(0.008086622, -0.05548342, 0.0052534286, -0.003505586, -0.026799208, -0.083306804, -0.00395955, -0.015771467, 0.02661115, -0.3516242, -0.028574193, -0.051511247, -0.005492395, 0.21122414, 0.020783458, 0.012693452) * input_3(1.0, -1.0); + result += mat4(-0.022898447, -0.48862275, 0.06714436, -0.05615191, -0.038087673, -0.08012761, -0.08236831, -0.023960467, -0.1725948, -0.27601177, 0.15159695, -0.073394485, 0.014421595, 0.043061253, -0.10840341, 0.029386424) * input_3(1.0, 0.0); + result += mat4(0.007719308, 0.009446711, 0.013667462, -0.026242947, 0.015947936, 0.007937576, -0.00017079171, -0.0126003865, 0.013624353, -0.11611763, -0.044721995, 0.0010407431, -0.015310841, 0.16336726, 0.065392815, 0.016102359) * input_3(1.0, 1.0); + result += vec4(-0.010114678, -0.026597675, -0.047803834, -0.039767426); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F16 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!SAVE conv2d_5_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.13699144, -0.20593135, -0.17545381, -0.001757145, 0.011924303, 0.13912745, 0.042876117, -0.020548386, -0.030083481, -0.08957939, 0.005428454, 0.020758063, -0.11082133, 0.037298374, 0.03971991, 0.0030163096) * input_0(-1.0, -1.0); + result += mat4(0.042395204, 0.12792379, 0.15819989, 0.13709642, 0.06354669, 0.02845737, 0.037874173, -0.022829227, -0.1251126, -0.02543386, 0.029312959, -0.09860455, 0.025648873, 0.10017139, -0.15412076, 0.11952729) * input_0(-1.0, 0.0); + result += mat4(-0.041685075, 0.02794149, 0.021746416, -0.036614485, 0.02072644, 0.08971983, -0.040741332, 0.0067229946, 0.018323794, -0.019139547, 0.15748027, -0.02639232, -0.06845353, -0.021051498, -0.16216038, 0.034734637) * input_0(-1.0, 1.0); + result += mat4(-0.24174434, -0.7906617, -0.013615636, -0.21733469, 0.0062546427, 0.15263417, -0.12730576, -0.09350385, 0.10870124, -0.185303, -0.12977813, 0.014951458, -0.09487447, 0.28899097, 0.29803753, 0.04463212) * input_0(0.0, -1.0); + result += mat4(0.14902464, 0.14509638, 0.18107122, 0.32466882, 0.25423396, 0.0011439577, 0.7339293, 0.08592843, 0.3301424, -0.67960185, -0.20584096, -0.09391473, -0.58268803, 0.92066693, -0.101210006, 0.08080378) * input_0(0.0, 0.0); + result += mat4(0.16720754, -0.093179286, 0.06824372, 0.08146781, 0.09026393, 0.0468306, -0.032241985, -0.047892634, 0.14370413, 0.02877897, 0.0145287225, 0.019669402, -0.35316607, 0.07796982, -0.29187205, -0.053743586) * input_0(0.0, 1.0); + result += mat4(0.826826, -0.26272047, -0.28757942, -0.31887543, 0.3684859, 0.2581618, -0.14027716, -0.05552805, -0.016568068, -0.1342883, -0.060206056, 0.002811614, 0.12015299, 0.10961157, 0.08609595, -0.029538855) * input_0(1.0, -1.0); + result += mat4(0.17186514, -0.0014782825, -0.053475544, 0.052170232, 0.03081176, 0.3279032, 0.35685027, 0.15414554, 0.014587069, -0.06746703, -0.030709086, 0.1327534, 0.16178843, 0.20909443, 0.042637527, -0.1302595) * input_0(1.0, 0.0); + result += mat4(-0.07050684, 0.07189432, -0.07266137, -0.013020053, -0.00037662266, 0.00421397, 0.01764904, -0.004057619, 0.17295443, -0.044967085, -0.026713995, 0.032782197, -0.2514257, 0.039721802, -0.036087688, -0.07160428) * input_0(1.0, 1.0); + result += mat4(-0.037974793, 0.021983778, 0.06471861, -0.0173265, -0.08545331, 0.084270984, -0.08323274, 0.02619916, -0.058634713, -0.19088192, -0.11828802, 0.012632657, 0.010497601, -0.010742919, -0.05107578, -0.0016373338) * input_1(-1.0, -1.0); + result += mat4(0.022103863, 0.03942628, 0.078863144, -0.011653937, -0.09817431, 0.09170966, -0.14519508, -0.030168084, -0.025432557, -0.02352868, -0.16189812, -0.0335615, 0.04614875, -0.15277946, 0.11431056, -0.1004547) * input_1(-1.0, 0.0); + result += mat4(-0.037757542, 0.121644884, -0.09217994, -0.020178434, -0.032539994, 0.036820635, -0.035711914, 0.011918251, 0.055415653, 0.036945324, 0.016048644, 0.06397905, 0.17556107, -0.14587341, 0.25157568, 2.214349e-05) * input_1(-1.0, 1.0); + result += mat4(0.16597778, -0.027736673, -0.22636636, -0.020221021, -0.10222593, 0.26442608, 0.2547124, -0.04613152, -0.104754135, -0.25509945, 0.17583649, -0.012382927, 0.2026838, -0.18501766, -0.27693188, -0.068904854) * input_1(0.0, -1.0); + result += mat4(0.2862299, 0.23123254, -0.032205235, 0.040476456, 0.26917684, 0.18110122, 0.24853568, 0.06590213, 0.35984823, -0.21528383, 0.35411948, -0.12638631, 0.73018825, -0.43977156, -0.057579253, 0.25233218) * input_1(0.0, 0.0); + result += mat4(0.15205994, -0.05175856, 0.19058344, 0.10648381, 0.08624331, 0.076006375, 0.048334513, 0.10530026, 0.022337785, 0.15903178, 0.048086736, -0.02214016, -0.010882546, -0.29226726, -0.0017847357, -0.12462732) * input_1(0.0, 1.0); + result += mat4(0.016796106, -0.0107102785, 0.06036443, 0.057930782, 0.12628733, 0.19570522, -0.056700334, -0.0023814677, -0.16827466, -0.19056086, -0.12172747, 0.06963973, -0.15423518, -0.11466563, -0.029716264, 0.013005757) * input_1(1.0, -1.0); + result += mat4(-0.008020656, -0.08255006, 0.0014087299, -0.091647804, -0.04927624, 0.20365483, 0.1595683, -0.0904643, -0.058863267, 0.1911852, -0.00067757885, 0.053104438, 0.020814873, -0.06446546, 0.017308708, 0.0045368574) * input_1(1.0, 0.0); + result += mat4(-0.024673965, -0.029654598, -0.008640672, -0.05082047, -0.061138857, 0.019959498, 0.002433467, -0.03958264, -0.033166174, 0.045964558, -0.030284842, -0.0068844035, 0.07042402, -0.029122148, -0.0428049, 0.026324365) * input_1(1.0, 1.0); + result += mat4(-0.13324606, -0.033446807, -0.112909414, 0.07027874, 0.014373669, 0.1334734, -0.13269733, -0.053051304, -0.14472198, -0.058649812, 0.37368444, -0.03659651, 0.04819917, -0.027763734, -0.054269504, 0.019169461) * input_2(-1.0, -1.0); + result += mat4(0.103031866, -0.1103813, -0.033109676, -0.07772794, -0.038271077, -0.016347917, -0.024113327, 0.018909058, -0.7986624, 0.03572236, 0.14990598, -0.4590326, -0.030368613, -0.20974495, 0.111843035, -0.09153426) * input_2(-1.0, 0.0); + result += mat4(0.004524962, -0.048812192, 0.05542461, 0.0734991, 0.0045549334, -0.02259293, 0.11283801, 0.104592785, -0.57395726, -0.028778156, -0.37942833, -0.21894723, -0.07521297, -0.104661725, -0.019035116, 0.049506795) * input_2(-1.0, 1.0); + result += mat4(0.112219915, 0.13167465, 0.09262688, -0.008718717, -0.041592427, -0.012222687, -0.057447452, -0.09209324, -0.17835036, 0.05539225, 0.028523324, 0.24207544, 0.022380646, 0.029243259, -0.16183938, 0.014728253) * input_2(0.0, -1.0); + result += mat4(0.1467023, 0.0143815875, 0.0052571627, 0.12313276, -0.047473945, -0.011159074, 0.032128796, 0.016449373, -0.001547712, 0.18990788, -0.15117007, 0.22657698, -0.092446014, 0.07480804, -0.2142641, 0.0143916) * input_2(0.0, 0.0); + result += mat4(-0.08523618, -0.082943045, 0.005177918, -0.024533909, -0.087084986, 0.059123907, 0.059857767, -0.07549224, 0.15535766, -0.07271496, 0.08865915, 0.19221433, 0.09545128, -0.048648886, 0.07513749, -0.0010660125) * input_2(0.0, 1.0); + result += mat4(0.10143337, -0.06397871, 0.10206847, 0.095585294, -0.068966895, 0.059315838, 0.07574963, 0.11673472, 0.015949871, -0.024368519, -0.05648502, -0.011380777, 0.053556878, 0.07940152, -0.08536346, -0.01926622) * input_2(1.0, -1.0); + result += mat4(0.1305963, 0.11611665, -0.02373274, 0.017020227, 0.0630165, 0.0303326, -0.10986259, 0.012373711, -0.05705737, -0.030343313, 0.06253064, 0.027428111, -0.07196486, 0.14587478, 0.1307031, 0.07282882) * input_2(1.0, 0.0); + result += mat4(-0.08237509, -0.06809056, -0.031511094, -0.022001782, 0.10953571, 0.045134984, -0.025877856, -0.03889897, 0.047186974, -0.013981416, -0.013088895, 0.06202334, 0.22331925, -0.10197979, -0.0030953977, -0.06180075) * input_2(1.0, 1.0); + result += mat4(0.1473393, 0.068073414, -0.00849525, 0.011856704, 0.14913265, -0.14074652, -0.045142166, 0.10191227, -0.02526876, 0.07887591, -0.049507286, -0.049732037, -0.003418563, 0.0100829685, -0.075972915, 0.041150223) * input_3(-1.0, -1.0); + result += mat4(0.11492118, 0.11400181, 0.044958964, -0.04409572, -0.01705192, -0.21601407, -0.11749134, -0.01078356, -0.035516415, 0.16148598, -0.047935735, -0.0038967566, -0.008681939, -0.025825895, 0.03564421, 0.060060818) * input_3(-1.0, 0.0); + result += mat4(0.04630809, 0.097482465, 0.0983307, -0.041268956, -0.06482189, -0.3761496, 0.28984708, 0.097405314, 0.15801673, 0.30867153, -0.20084113, -0.033199985, -0.031870924, -0.059606146, 0.008587568, -0.023827776) * input_3(-1.0, 1.0); + result += mat4(-0.1551276, 0.09719839, 0.17554323, 0.013390713, -0.15466022, -0.14600702, 0.16853645, 0.08821072, 0.09985342, 0.16678153, -0.048611052, -0.0614707, -0.21867286, -0.16723537, 0.23475552, 0.025780156) * input_3(0.0, -1.0); + result += mat4(0.08023947, -0.69400173, 0.30601034, -0.020594774, -0.30658725, -0.7922505, -0.24568322, -0.37919128, 0.3425946, 0.6623516, 0.25376338, 0.26313066, -0.109052844, -0.2993776, -0.3621675, 0.17550938) * input_3(0.0, 0.0); + result += mat4(0.071950994, -0.026562111, 0.0002568412, 0.06541712, -0.2516668, -0.078616634, -0.33585915, 0.0075386763, 0.052653354, 0.19672461, 0.16207367, -0.0776302, -0.10989679, -0.09278028, -0.052797936, 0.09305418) * input_3(0.0, 1.0); + result += mat4(-0.07068745, 0.09446235, 0.010078996, -0.0016798693, -0.020590777, -0.1526741, -0.12566169, -0.08718724, -0.052001327, 0.092551924, 0.042062324, 0.013329289, -0.22045879, -0.28511304, 0.15821631, 0.036087867) * input_3(1.0, -1.0); + result += mat4(-0.3229405, -0.101510115, 0.0024103115, -0.02992146, -0.17554843, -0.049400408, 0.052737318, 0.12779652, 0.25576246, 0.11726127, -0.0252291, -0.051125318, -0.08654572, -0.5174181, -0.32456046, -0.3683765) * input_3(1.0, 0.0); + result += mat4(-0.11464781, 0.06158182, 0.046923183, 0.04975705, 0.038364194, -0.15467784, 0.019909486, 0.06483708, 0.030391747, 0.0884499, 0.070137925, 0.0037668955, -0.17386416, -0.028588526, -0.17951734, -0.050753336) * input_3(1.0, 1.0); + result += vec4(-0.008561534, -0.010736708, -0.0036514427, -0.028345084); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!SAVE conv2d_5_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.11620672, -0.07166609, 0.016798865, 0.08401987, -0.18524526, 0.1084502, -0.08925312, -0.10202873, 0.1177629, 0.023233103, 0.01394666, 0.07836272, 0.0026332173, -0.23849802, 0.18449073, -0.06515253) * input_0(-1.0, -1.0); + result += mat4(0.14370523, -0.0022098261, 0.1851766, 0.06871087, -0.10218498, 0.14527902, 0.024207406, -0.13617748, -0.08945976, -0.068607315, 0.11841024, -0.0062393993, -0.026527124, 0.060801577, -0.15409683, 0.11278634) * input_0(-1.0, 0.0); + result += mat4(-0.066736795, 0.04918463, 0.053987686, 0.030998068, -0.06535727, -0.0011864441, -0.016558861, 0.043760967, -0.050048754, 0.095977105, 0.12773128, -0.021533247, 0.10400867, -0.11285867, 0.022326827, -0.011911449) * input_0(-1.0, 1.0); + result += mat4(-0.11849691, -0.68104404, -0.11852768, 0.97617507, -0.18003926, -0.11384007, 0.35453534, -0.32608548, -0.11792822, -0.09166521, 0.10262236, -0.029014926, -0.021265801, -0.018718062, 0.07043664, 0.13210176) * input_0(0.0, -1.0); + result += mat4(0.22330447, 0.05316329, -0.20317215, -0.26259226, -0.45833525, 0.2454562, 0.029027697, 0.2764134, 0.26590282, 0.06907284, 0.19385473, -0.047886163, -0.19999208, -0.02517195, -0.07484927, 0.22998434) * input_0(0.0, 0.0); + result += mat4(0.13320091, -0.032225918, -0.014095324, -0.01089878, -0.2736936, 0.13794877, -0.23005189, -0.048543684, -0.032071494, -0.11436605, -0.11234472, -0.05957455, -0.00017396435, 0.07757498, -0.17387052, -0.13497026) * input_0(0.0, 1.0); + result += mat4(-1.1408613, -0.8000373, 0.2935792, 0.5857513, -0.46425584, 0.19091494, 0.098817125, -0.070086524, 0.10861455, -0.0384914, -0.02102072, 0.10492839, -0.23424001, -0.048539933, 0.02182538, 0.08010565) * input_0(1.0, -1.0); + result += mat4(0.14387573, -0.2757515, 0.025449699, 0.18604033, -0.5714203, 0.2914155, 0.023735872, 0.12653588, 0.09366982, -0.0046158396, -0.25545183, -0.01420278, -0.020595344, -0.057480432, 0.38762775, 0.25573575) * input_0(1.0, 0.0); + result += mat4(-0.038004167, -0.050437763, -0.05982076, -0.027243301, -0.14567463, 0.0975796, 0.16311973, 0.049900193, -0.13719194, -0.014836006, 0.054110046, 0.15550926, 0.1081008, -0.015565591, -0.12495359, -0.17295879) * input_0(1.0, 1.0); + result += mat4(-0.018405138, 0.05594843, -0.017750861, -0.07872526, 0.12275071, 0.12474919, 0.02999329, 0.13333192, 0.36653888, 0.043739293, 0.0679797, 0.08041973, -0.03425395, 0.14790797, -0.041653004, 0.01867917) * input_1(-1.0, -1.0); + result += mat4(-0.122790694, 0.053692315, 0.09632, 0.28426927, 0.08565574, -0.090392835, -0.07657671, -0.004535826, 0.12811323, -0.21853115, -0.16674866, 0.13581844, -0.102630265, -0.031938255, 0.16908145, 0.09100338) * input_1(-1.0, 0.0); + result += mat4(-0.06821126, -0.0017205048, -0.06403341, -0.08478995, 0.008017445, 0.012503662, -0.017505154, -0.04632007, 0.0565219, 0.015270812, -0.06881336, -0.06355902, 0.05988971, 0.023348816, 0.09464502, 0.24822949) * input_1(-1.0, 1.0); + result += mat4(-0.11416074, 0.09896785, 0.11778823, -0.08890084, -0.060525727, -0.20458055, -0.252127, -0.012400734, 0.034221105, 0.24326842, -0.3542155, -0.107962124, 0.04617192, 0.08805164, 0.14527088, -0.072829515) * input_1(0.0, -1.0); + result += mat4(-0.36583942, -0.11659717, -0.2222592, 0.36047506, -0.03452521, -0.13616572, -0.1159302, 0.10065252, -0.007228186, 0.25099555, 0.42881015, 0.56868917, 0.021251434, 0.28128645, 0.17818673, -0.49401578) * input_1(0.0, 0.0); + result += mat4(0.023798054, 0.034982447, 0.14063333, -0.15382242, 0.14360158, 0.059043404, -0.06127281, -0.110966355, -0.031447463, 0.012576445, -0.018748414, 0.0069989907, -0.19812663, -0.2709568, 0.009371738, 0.19483033) * input_1(0.0, 1.0); + result += mat4(0.018809076, 0.0054023187, -0.039936952, -0.14673415, -0.10656782, 0.24899592, 0.18819377, -0.14612278, 0.24737522, 0.13287938, 0.06375341, -0.08614547, 0.17334378, 0.030006947, -0.042390943, 0.024833731) * input_1(1.0, -1.0); + result += mat4(0.08306147, -0.3194356, -0.02942635, 0.14555529, -0.17013326, 0.11017062, 0.121966094, 0.22148238, -0.0616948, 0.17920256, -0.034203243, -0.042123944, -0.11464506, -0.1199692, -0.36924988, -0.057585776) * input_1(1.0, 0.0); + result += mat4(0.048344802, -0.11851316, 0.04488295, 0.054266974, -0.04520225, -0.037596, 0.06139073, 0.120330885, -0.004778854, 0.042909004, -0.013525455, -0.045597937, -0.012306806, 0.10685644, -0.05520265, -0.16057563) * input_1(1.0, 1.0); + result += mat4(0.105536275, 0.12621576, 0.02584647, 0.015119655, 0.093665816, 0.11627944, 0.024078015, -0.06234521, 0.22099428, 0.0669108, -0.0093148565, -0.48636547, -0.15181567, -0.07822599, 0.024743285, 0.06761235) * input_2(-1.0, -1.0); + result += mat4(0.06506267, 0.055922512, 0.038820665, 0.09900323, 0.0051986417, 0.123581104, 0.0071629854, -0.119981505, 0.24421036, -0.41111565, 0.41847444, -0.56427914, 0.1747026, -0.1698947, 0.12238787, 0.29296106) * input_2(-1.0, 0.0); + result += mat4(0.033412375, -0.11648537, 0.06532859, -0.12930563, 0.05744003, -0.015933828, -0.13820995, 0.013073464, -0.113216534, 0.03805191, -0.08172819, -0.81760204, 0.047267776, 0.009581093, 0.17715345, 0.14502302) * input_2(-1.0, 1.0); + result += mat4(-0.11467407, 0.04120272, 0.06635711, 0.119070716, -0.09202781, 0.009393547, -0.022956574, -0.06135075, 0.07507639, 0.20452999, 0.061662182, 0.1282455, 0.083044186, -0.009667589, 0.087405905, 0.0154515095) * input_2(0.0, -1.0); + result += mat4(-0.11970592, -0.022174682, 0.026858646, 0.038090408, -0.12121364, -0.07789117, 0.011117795, -0.04363783, -0.011668041, 0.2724732, -0.14060675, 0.060313452, 0.27553955, 0.20300175, -0.28137198, 0.83166826) * input_2(0.0, 0.0); + result += mat4(-0.060711503, -0.009081539, -0.09142077, 0.07995079, 0.01567142, -0.09954281, 0.067456305, -0.095214024, 0.0039593307, 0.13956612, 0.08017394, -0.18512501, -0.10788834, 0.20629235, -0.066124454, 0.68727213) * input_2(0.0, 1.0); + result += mat4(0.0029821466, 0.013863622, -0.07215199, -0.019579345, 0.11156738, -0.12797317, -0.041157566, 0.121549495, 0.0057683927, -0.04251135, 0.03961841, 0.1108354, 0.00623857, 0.10440568, 0.063467816, 0.15003876) * input_2(1.0, -1.0); + result += mat4(0.058442198, -0.09687198, 0.10338267, 0.018356383, -0.069184266, -0.13827951, -0.11756042, 0.1119464, -0.002709427, -0.020051656, -0.08329414, 0.11897125, 0.027325338, 0.27524182, 0.00026887126, 0.44342774) * input_2(1.0, 0.0); + result += mat4(0.0865957, -0.11710656, 0.0043588, -0.060874727, -0.06835302, -0.049697027, 0.006917258, -0.057564273, -0.007994377, 0.07839539, 0.041361745, -0.2419306, -0.25169414, -0.07110184, 0.21902202, 0.39311782) * input_2(1.0, 1.0); + result += mat4(0.05995874, 0.26111454, -0.18428615, -0.16038515, 0.14701268, -0.0057207136, -0.13439575, 0.12866907, -0.12487326, 0.07188348, -0.05656155, -0.03303301, 0.07921935, -0.048051324, 0.029552538, 0.15343755) * input_3(-1.0, -1.0); + result += mat4(0.07418703, 0.13386989, -0.23733522, -0.4224567, 0.46631223, -0.21824783, -0.37972137, -0.10416024, -0.3570401, -0.089862265, 0.31087413, -0.24356923, 0.087839246, -0.0575723, 0.030086888, 0.052808672) * input_3(-1.0, 0.0); + result += mat4(-0.124219246, 0.057535615, -0.07534766, 0.021747299, 0.35573968, 0.0625326, 0.48935717, -0.018434867, -0.27310714, -0.09978724, -0.47170755, 0.15432087, 0.04081072, -0.035073306, 0.034327127, -0.0053897426) * input_3(-1.0, 1.0); + result += mat4(-0.005511049, 0.016390583, -0.43140572, -0.14498323, 0.091800496, -0.056679707, -0.19164917, 0.007343154, 0.03145473, 0.07776903, 0.027928004, -0.06307849, 0.49115306, -0.12908004, 0.12990196, 0.22315605) * input_3(0.0, -1.0); + result += mat4(0.009882551, -0.29740945, 0.21795943, -1.1184156, 0.85523105, 0.20578904, 0.46131387, -0.07440825, -0.75795054, -0.11467875, -0.005511393, -0.39389387, 0.55778235, 0.1776355, -0.25288254, -0.10307776) * input_3(0.0, 0.0); + result += mat4(0.13138032, -0.10797582, 0.093361184, -0.5188534, 0.35447845, -0.078562394, -0.31558073, -0.115456544, -0.24717133, -0.0014449308, 0.15146896, 0.26895273, 0.3528613, -0.18125504, 0.22717157, -0.038584117) * input_3(0.0, 1.0); + result += mat4(0.0360428, 0.05310934, -0.07839323, -0.1929596, 0.041828997, -0.17595892, -0.010438185, 0.17401633, 0.02159319, 0.1519447, -0.013968076, -0.075568974, 0.19837867, -0.044670466, 0.038285576, -0.026905341) * input_3(1.0, -1.0); + result += mat4(-0.08895189, 0.04721844, -0.18818091, -0.6699688, 0.04694463, 0.23192744, -0.16578667, -0.2067046, -0.28728023, 0.0003652341, 0.13564838, 0.014000809, 0.8360658, -0.6334118, 0.090585746, 0.18795776) * input_3(1.0, 0.0); + result += mat4(0.18654186, 0.1576009, 0.0576424, -0.20346037, -0.04549446, 0.05240639, 0.107720055, 0.19955778, 0.015320273, 0.0086539965, -0.08495218, -0.03297138, 0.12847276, -0.23686723, -0.27751663, -0.17718613) * input_3(1.0, 1.0); + result += vec4(-0.021050075, 0.0028198971, -0.001477746, -0.0016958545); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!SAVE conv2d_5_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.05524473, -0.0667916, -0.3000911, 0.02167059, 0.0028873049, 0.022900913, 0.0036229386, -0.08464543, -0.014186343, -0.013440237, 0.041881744, 0.0182706, -0.06948529, 0.0642832, -0.088708356, -0.0025486597) * input_0(-1.0, -1.0); + result += mat4(0.0947312, 0.048634354, -0.100629695, 0.09609757, 0.025036784, -0.030778313, 0.0062699276, 0.12808807, -0.02038122, -0.06571226, 0.09805566, 0.07442049, -0.086464755, 0.055390276, -0.110451, -0.09128145) * input_0(-1.0, 0.0); + result += mat4(0.015977515, -0.027449373, 0.019414628, 0.013050486, 0.020162152, -0.0027879283, -0.06776932, -0.038381636, 0.03767735, -0.02421142, 0.019793546, 0.029325916, -0.02345039, -0.021164848, -0.038009364, 0.03785244) * input_0(-1.0, 1.0); + result += mat4(-0.84259033, 0.4131681, -0.71056443, -0.09588365, -0.048146717, -0.042147603, -0.10238791, -0.033213884, -0.18008235, -0.09903034, -0.0459647, -0.11683955, -0.046164155, 0.17665514, 0.21013917, 0.15165651) * input_0(0.0, -1.0); + result += mat4(-0.030031394, -0.019065296, -0.11269828, -0.04241153, -0.008641772, -0.046083555, -0.044769153, 0.1328026, 0.39883274, -0.21164253, -0.23741508, -0.37070394, -0.7161262, 0.2587036, 0.10124371, 0.66096514) * input_0(0.0, 0.0); + result += mat4(0.07837756, 0.1265725, 0.031547125, -0.034877535, -0.17059824, -0.054361667, 0.21026325, -0.0675548, 0.11604191, 0.033859152, 0.1568287, 0.06324872, -0.21110383, -0.1253772, -0.17785104, -0.061070453) * input_0(0.0, 1.0); + result += mat4(-0.94861287, 0.02634229, -0.3868105, -0.4657192, -0.21818411, -0.038770005, 0.30729434, -0.14093232, 0.027960857, -0.017519698, -0.076069705, -0.052961748, -0.16139063, 0.0025874348, -0.02580577, -0.018798918) * input_0(1.0, -1.0); + result += mat4(-0.2502853, 0.04251326, 0.19691297, -0.1582134, -0.11986778, -0.07195275, -0.2973344, -0.15731081, -0.056869987, -0.003900633, 0.0013445631, 0.12527932, -0.049660824, -0.10799597, 0.011769744, -0.1284325) * input_0(1.0, 0.0); + result += mat4(-0.030990627, -0.008264894, -0.05291376, 0.03324887, -0.10359455, -0.00487279, 0.045066934, -0.18632278, -0.21714912, 0.007073333, -0.049049374, -0.12080105, 0.20964453, -0.056006454, 0.057609025, 0.090637565) * input_0(1.0, 1.0); + result += mat4(-0.014734789, -0.0036884148, 0.099473625, -0.017171016, 0.23650359, 0.04769212, -0.0366546, 0.020758348, 0.20002359, -0.072923414, 0.035961885, 0.11578268, -0.0013680827, -0.026566334, 0.045733403, -0.05675111) * input_1(-1.0, -1.0); + result += mat4(0.01935697, 0.052395247, 0.05878551, 0.17796911, 0.09003429, 0.023981722, -0.022076063, 0.16361256, 0.058803424, 0.058327712, 0.089604154, 0.045762774, 0.053222064, -0.04987132, 0.05343684, 0.08233241) * input_1(-1.0, 0.0); + result += mat4(-0.01148851, -0.022736425, -0.006313116, -0.058387443, -0.01957739, -0.0065977303, -0.0022609471, 0.018797193, 0.0024863991, 0.03167508, -0.023996169, 0.038474478, 0.08517649, 0.023568416, 0.046184357, 0.0684637) * input_1(-1.0, 1.0); + result += mat4(0.058782097, -0.10352451, 0.047953423, -0.056325052, -0.08249853, 0.05866386, -0.28232586, 0.18433736, 0.11180381, -0.103037655, -0.1224463, -0.2041405, 0.0934141, -0.16842271, -0.025474627, -0.084549524) * input_1(0.0, -1.0); + result += mat4(0.1883069, -0.061336964, -0.09074995, -0.12679797, 0.002628768, 0.27104017, 0.16964148, 0.028769646, -0.01615524, 0.14440227, -0.20361924, -0.097613215, 0.36576748, -0.15430012, 0.1165951, -0.6712392) * input_1(0.0, 0.0); + result += mat4(-0.04739041, 0.11987302, 0.025757954, -0.11702658, 0.030169941, 0.061426245, -0.052347437, 0.061979927, 0.05300359, -0.082924955, -0.039371613, 0.14032255, 0.06823372, 0.036917325, 0.13913342, -0.3361507) * input_1(0.0, 1.0); + result += mat4(-0.067194596, -0.007773725, -0.01199297, 0.011779647, 0.075996645, 0.015421487, 0.21754883, -0.0073604863, 0.14576024, 0.14825101, 0.0950573, -0.046230204, 0.12083774, -0.011615645, -0.06715824, -0.036269985) * input_1(1.0, -1.0); + result += mat4(-0.1618962, -0.087997384, -0.0005716333, 0.090981856, 0.14101754, -0.003310714, -0.14879407, -0.014678433, 0.034171335, -0.0108575225, 0.030518042, 0.0120707825, -0.042162452, -0.016560499, 0.0051943855, 0.2604947) * input_1(1.0, 0.0); + result += mat4(0.03140575, 0.018510593, -0.029395252, 0.07348009, 0.057082113, -0.0039758272, -0.04227093, 0.0035143853, 0.042441085, 0.0050908695, 0.010615335, 0.016323235, -0.16987045, -0.024013652, 0.01971102, 0.052138958) * input_1(1.0, 1.0); + result += mat4(0.06369238, 0.07899599, 0.026635488, -0.011609335, -0.038466237, 0.0031375866, 0.09313496, -0.012264274, 0.1480553, -0.12687096, 0.37386757, 0.09909889, -0.20447761, 0.009471602, -0.03987589, -0.02045216) * input_2(-1.0, -1.0); + result += mat4(-0.0594791, -0.10166854, 0.11003881, 0.05295516, 0.12280565, -0.04542026, -0.070073076, -0.06733523, 0.029801063, -0.21720155, 0.30599138, 0.101704024, 0.04663348, -0.05168479, 0.08104386, 0.006714815) * input_2(-1.0, 0.0); + result += mat4(-0.01627919, -0.106728695, 0.12376904, 0.06674408, 0.036630426, -0.086311385, 0.0041018836, 0.040587097, -0.21445535, -0.2461732, 0.30646253, 0.10967362, -0.0701094, -0.0111726895, -0.06489085, 0.037748005) * input_2(-1.0, 1.0); + result += mat4(0.029582204, 0.059894823, -0.0048795203, 0.11652986, -0.13527049, -0.07610909, 0.10299331, 0.09916917, 0.047236383, 0.10910026, 0.26350608, -0.14098229, 0.11681667, -0.060931712, -0.24500358, -0.07971718) * input_2(0.0, -1.0); + result += mat4(-0.07526433, 0.08082024, -0.13167612, -0.057485044, 0.08009925, 0.040689036, 0.14244555, 0.12358441, -0.077419974, -0.062015664, -0.37106803, 0.46544093, 0.9467673, 0.10874272, -0.16238369, 0.3102845) * input_2(0.0, 0.0); + result += mat4(0.08327275, 0.011768871, 0.03202972, 0.04153243, -0.08772739, 0.12899557, -0.060504317, 0.06513019, -0.20164938, -0.017682714, 0.11101318, -0.33648723, -0.042457454, 0.03040569, -0.04061924, 0.1378731) * input_2(0.0, 1.0); + result += mat4(0.06970164, 0.008834118, 0.12718791, -0.001975104, -0.037724927, -0.11127517, 0.09421513, 0.13308495, 0.008518448, -0.00084691, -0.05584334, -0.0082096625, 0.033335943, -0.0117445635, 0.050546076, 0.047877077) * input_2(1.0, -1.0); + result += mat4(-0.07696538, 0.06270772, 0.03349213, 0.11683603, -0.046743155, 0.117641464, -0.13395864, -0.12237298, 0.038061343, 0.03972676, -0.047299456, 0.07467395, 0.20574303, -0.004938916, -0.26324528, 0.15945892) * input_2(1.0, 0.0); + result += mat4(-0.105241254, -0.059888296, -0.07640773, -0.10091299, 0.12507796, -0.027954014, 0.061488777, -0.084328875, -0.060236663, 0.015917376, 0.09155815, -0.054003168, -0.11026015, 0.079962924, -0.001815231, -0.395384) * input_2(1.0, 1.0); + result += mat4(0.29209325, -0.04219883, 0.06469501, -0.015804647, -0.06849075, -0.038298123, 0.019017762, 0.08605765, 0.07685325, 0.014458804, -0.05005858, -0.071524024, 0.004612375, 0.025481056, -0.003610404, 0.030063381) * input_3(-1.0, -1.0); + result += mat4(0.10021397, -0.018431772, -0.018852504, -0.052782144, -0.021359582, -0.09910644, 0.14092757, -0.25389844, -0.06636962, 0.119866095, -0.08545922, 0.06766828, -0.03860286, 0.008681647, -0.034920678, -0.049635693) * input_3(-1.0, 0.0); + result += mat4(0.030144034, 0.0033674012, 0.01022901, -0.040631622, -0.033324428, -0.041420434, -0.117296524, 0.2789559, 0.06977705, 0.093143135, 0.0656848, -0.26395866, 0.011936789, 0.017104927, 0.028683754, 0.009772685) * input_3(-1.0, 1.0); + result += mat4(-0.0038137164, 0.06693708, 0.06822864, 0.14117034, -0.15863091, 0.0801519, -0.01449114, -0.044465415, 0.1997454, -0.042976994, 0.022475714, 0.12246432, 0.037659075, 0.10601709, 0.07363279, 0.24976866) * input_3(0.0, -1.0); + result += mat4(-0.555252, -0.0181416, 0.40835926, -0.41538748, 0.31658173, 0.24267572, 0.46846995, 0.113275126, -0.54049635, -0.20767193, -0.18474561, -0.11903197, -0.27565664, 0.03245435, 0.31244245, -0.07869926) * input_3(0.0, 0.0); + result += mat4(0.021330925, 0.06554978, 0.12858088, -0.14124236, 0.010575496, -0.1355255, -0.12746964, 0.2609186, 0.044923622, -0.066820614, -0.0031936893, 0.08364251, 0.19317617, 0.114075005, -0.22013324, 0.100840345) * input_3(0.0, 1.0); + result += mat4(0.120038114, 0.009079228, 0.10427249, 0.11803746, 0.0056122625, 0.022308474, -0.106914066, -0.00044519582, 0.09010509, 0.0033150713, 0.08999481, 0.033849515, 0.14906257, 0.06395106, -0.20337391, -0.28858158) * input_3(1.0, -1.0); + result += mat4(0.13264415, 0.1524477, 0.18256012, -0.037509553, 0.15709375, 0.10466825, 0.1500478, -0.20207055, -0.14051588, -0.08964206, -0.15027244, -0.021869713, 0.11592324, 0.014036955, 0.3572427, 0.097556956) * input_3(1.0, 0.0); + result += mat4(0.07814479, -0.039219707, -0.003275025, 0.36893007, -0.051538408, 0.09383647, 0.02611574, -0.26481035, 0.03172978, -0.06959587, -0.027879184, 0.12591428, 0.058372088, 0.006376661, -0.09917929, 0.12497047) * input_3(1.0, 1.0); + result += vec4(0.016231291, -0.016520541, 0.0015194294, 0.002505709); + return result; +} + +//!DESC ArtCNN C4F16 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!SAVE conv2d_5_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.2771764, 0.6401074, -0.20928246, -0.113468945, -0.15070915, 0.01752573, -0.019200685, -0.028774904, 0.041823074, -0.09956777, 0.057845984, 0.011781144, 0.009519775, -0.1047417, 0.0051616966, 0.08448847) * input_0(-1.0, -1.0); + result += mat4(-0.008735068, -0.038691547, -0.069758885, 0.10533395, 0.048371565, 0.2087821, 0.0019071676, -0.06624372, -0.01736168, -0.07306317, 0.031156693, 0.0019889183, 0.05619178, 0.10534817, -0.02672096, 0.102267385) * input_0(-1.0, 0.0); + result += mat4(-0.04668396, -0.014972603, 0.00727557, 0.0017531166, 0.010286051, 0.005015186, -0.00415501, 0.009570118, -0.031961374, 0.020339994, 0.0022812837, 0.013603937, 0.10375876, 0.008862758, -0.0026624887, 0.020903835) * input_0(-1.0, 1.0); + result += mat4(0.28749743, 0.5493481, -0.042483546, -0.09593276, 0.06428901, -0.14492697, 0.08667672, 0.050388493, 0.33010384, -0.09609445, 0.15633489, 0.04550801, -0.4155936, 0.21773514, -0.09817866, -0.027543988) * input_0(0.0, -1.0); + result += mat4(0.06314971, -0.027788188, -0.33872965, -0.10957314, -0.12108172, 0.50725716, -0.04574458, -0.028694812, 0.6771646, -0.16639072, 0.09916935, 0.10931123, -0.535734, 0.13609628, 0.06855844, -0.07915432) * input_0(0.0, 0.0); + result += mat4(0.1001686, -0.068239145, -0.044523455, 0.049428374, -0.05356298, 0.06976199, 0.046529908, 0.07510917, 0.31258166, -0.14546792, -0.008059539, 0.07785772, -0.109282024, 0.17841709, 0.09155765, -0.096586585) * input_0(0.0, 1.0); + result += mat4(0.24579614, 0.8386661, 0.4027017, 0.14093505, -0.12551308, 0.11846152, -0.0059761154, -0.0461906, 0.150016, -0.0189197, 0.042567085, 0.03438574, -0.15011139, 0.13628843, 0.025758265, -0.03085819) * input_0(1.0, -1.0); + result += mat4(-0.1458051, 0.074560866, 0.026160985, 0.09965958, 0.18261929, 0.2258265, 0.10552282, 0.010616196, 0.1982569, -0.059004165, 0.013974606, 0.113233134, -0.3875601, -0.18731022, 0.13695876, -0.14713162) * input_0(1.0, 0.0); + result += mat4(-0.04415056, 0.06844369, -0.021301994, -0.046109516, 0.091703594, 0.062078893, 0.07849192, 0.113701366, 0.06802915, 0.013437539, 0.09929342, 0.13158733, 0.10158841, 0.03700085, -0.022036629, -0.16224448) * input_0(1.0, 1.0); + result += mat4(-0.116746396, -0.100723214, 0.05149954, -0.0040269727, -0.018534632, -0.0494567, -0.13099751, -0.042665284, 0.13824077, -0.013633935, -0.027629608, -0.030217638, 0.03468211, -0.09247085, 0.043454014, -0.047935136) * input_1(-1.0, -1.0); + result += mat4(0.03006243, 0.13192111, 0.053666584, -0.006484922, -0.1667873, -0.13452955, -0.073102206, -0.04176692, -0.05157196, -0.13562924, -0.13079861, -0.048835453, 0.1316127, -0.20216465, 0.064409524, -0.09217371) * input_1(-1.0, 0.0); + result += mat4(-0.03420241, -0.045786034, 0.0106811235, 0.0031556136, -0.05460036, -0.003927943, -0.016358268, -0.0013315772, -0.07009565, 0.010116049, -0.060428083, 0.007720511, 0.1002914, -0.019306196, 0.012091979, 0.004911897) * input_1(-1.0, 1.0); + result += mat4(0.114089355, 0.074583076, 0.07633647, 0.0028577098, -0.18226856, 0.19407237, -0.11645545, -0.050397813, -0.20310204, 0.34278673, -0.112984575, 0.008046292, 0.29857296, -0.15709884, 0.0499911, -0.06917754) * input_1(0.0, -1.0); + result += mat4(0.56503576, -0.6686401, 0.032851703, -0.06234977, -0.5628307, -0.016276056, -0.35473382, -0.0666202, -0.10591021, -0.06883188, 0.011637987, 0.1411783, 0.5552654, -0.40747088, 0.14620996, -0.04708661) * input_1(0.0, 0.0); + result += mat4(0.09067531, 0.1802798, -0.01265663, -0.070040554, -0.2267937, 0.03905653, -0.13043013, -0.03757149, -0.059339654, 0.104913376, -0.030163135, -0.0685308, 0.6688891, -0.014641432, 0.20879455, 0.2044907) * input_1(0.0, 1.0); + result += mat4(0.005626538, -0.079733156, 0.008605219, 0.06290282, -0.29792875, -0.029654607, -0.10481552, -0.09341213, -0.15990393, -0.039007295, -0.05125914, 0.16256592, 0.14619575, -0.12733208, 0.006698614, 0.023109093) * input_1(1.0, -1.0); + result += mat4(0.32955566, 0.08897637, 0.101841494, -0.07271639, -0.06404645, 0.07224855, -0.045710064, -0.117217906, -0.13030957, 0.047082715, -0.02572864, 0.03757784, 0.30668283, 0.287022, 0.1348219, 0.023929762) * input_1(1.0, 0.0); + result += mat4(-0.17768937, -0.0021393404, -0.037951753, -0.10667868, -0.041929588, 0.048041478, -0.015566488, -0.053441472, -0.05699235, -0.056029927, -0.03291319, 0.0034409438, -0.026813325, -0.15186948, 0.06987102, 0.06767949) * input_1(1.0, 1.0); + result += mat4(-0.06568748, -0.030699072, 0.05911453, 0.027781129, 0.11376293, -0.115474515, -0.02455426, -0.12447182, -0.34912065, -0.2157657, -0.07062104, 0.1667749, 0.17967582, -0.06727094, 0.12942542, 0.06578264) * input_2(-1.0, -1.0); + result += mat4(-0.006379852, 0.01080074, 0.017507028, 0.088004984, -0.11411291, -0.007585197, -0.05100137, 0.10592112, -0.99712056, -0.7520175, 0.11692368, 0.436407, 0.01338728, 0.13522321, 0.057363324, -0.030826919) * input_2(-1.0, 0.0); + result += mat4(-0.012229786, -0.032069378, 0.04825426, -0.016368153, 0.034137294, -0.054830726, -0.081169374, -0.024988107, -0.2441289, 0.021959798, 0.05773637, 0.008372688, 0.09341302, 0.056480955, 0.023777217, 0.0039228415) * input_2(-1.0, 1.0); + result += mat4(0.011157284, 0.1163159, -0.07633912, 0.11250281, 0.12885436, -0.12498048, -0.08960864, 0.062833294, -0.03759189, 0.058244403, -0.07207391, 0.2028772, 0.21173595, -0.16311686, 0.06538891, -0.06596896) * input_2(0.0, -1.0); + result += mat4(-0.10983552, -0.031357527, -0.07435554, -0.09288538, -0.120313585, 0.025225734, 0.071983084, 0.06109791, 0.19378296, -0.046395935, -0.24731283, 0.1682848, 0.25717482, 0.4792651, -0.34149262, -0.0858395) * input_2(0.0, 0.0); + result += mat4(0.034174543, -0.11726608, -0.036577813, 0.04435217, -0.04808461, -0.12669444, -0.1084441, -0.08689361, 0.082073085, -0.07819967, 0.06148174, 0.3769801, -0.24158779, -0.27029583, -0.023391243, 0.011858175) * input_2(0.0, 1.0); + result += mat4(0.07944786, 0.08133809, 0.07997692, 0.13716865, -0.035230607, -0.07473205, 0.1449276, 0.07278681, 0.051808108, 0.004774898, 0.038622692, 0.0030565746, -0.033786774, -0.024021849, -0.0024400672, -0.05477997) * input_2(1.0, -1.0); + result += mat4(-0.10531373, 0.079932265, 0.105547346, 0.061907344, 0.13792123, 0.036353495, -0.015564561, 0.057014592, 0.02016199, 0.040749, -0.031200487, 0.058308415, -0.03428045, -0.11550262, -0.0959929, -0.049727343) * input_2(1.0, 0.0); + result += mat4(-0.012250467, -0.006430215, 0.0044991705, -0.04010103, -0.06622251, -0.109663956, -0.09146069, 0.14804383, -0.058918837, -0.045126755, -0.020355487, 0.07214972, -0.02421704, 0.13030843, 0.115789264, 0.17774087) * input_2(1.0, 1.0); + result += mat4(-0.15696052, 0.22896151, -0.18536723, -0.13793808, 0.1767068, 0.20759526, -0.01539476, 0.040526032, -0.050726496, -0.024617504, 0.0065163337, -0.054659072, 0.059378758, -0.014484258, -0.014139689, 0.036358345) * input_3(-1.0, -1.0); + result += mat4(-0.22846253, 0.03697499, -0.08143382, -0.050350167, -0.24205855, 0.10438131, -0.10372842, 0.022504829, 0.3387988, -0.42456585, 0.061946735, 0.0148130935, 0.009995336, -0.12159903, -0.0043465286, 0.06069849) * input_3(-1.0, 0.0); + result += mat4(-0.11156354, 0.0359487, -0.01065826, -0.027001964, 0.17493093, 0.24007198, -0.014446778, -0.030140882, -0.12998714, -0.26144996, -0.037883665, 0.080802396, 0.0015134297, -0.025207995, 0.01165441, -0.020717598) * input_3(-1.0, 1.0); + result += mat4(-0.21219945, 0.07210587, -0.0438035, 0.14370306, 0.0033962042, -0.090646885, 0.042913415, 0.020295506, -0.1552958, 0.09018859, -0.116042905, -0.08649074, -0.15821663, -0.05697787, -0.17752269, -0.17633747) * input_3(0.0, -1.0); + result += mat4(-0.43349022, 0.117171936, 0.08284707, 0.06555906, -0.27442804, 0.96230936, -0.2980863, 0.12642045, 0.2187943, -0.70179045, 0.32976732, -0.10995673, 0.08515556, -0.036852688, 0.1437618, -0.1286242) * input_3(0.0, 0.0); + result += mat4(-0.109603144, 0.1338518, -0.08342063, 0.11166117, 0.03421246, -0.031388063, 0.024408573, 0.015950687, 0.15197541, 0.030934438, 0.025767457, -0.07091845, 0.09057616, -0.022009216, -0.053991806, -0.12796395) * input_3(0.0, 1.0); + result += mat4(-0.022965962, -0.0025867228, -0.049213175, -0.027364235, 0.13730747, 0.1291872, 0.09342874, 0.01147941, -0.10258537, -0.061183147, -0.09642567, -0.053470515, -0.14485717, -0.16018187, -0.032631766, 0.046890456) * input_3(1.0, -1.0); + result += mat4(0.04582964, 0.26833606, -0.097134784, 0.05783496, -0.14171445, -0.047592215, -0.14597364, 0.12383266, 0.06131636, 0.03308155, 0.10785446, -0.08386822, -0.22406757, -0.24641123, 0.068560176, -0.16798474) * input_3(1.0, 0.0); + result += mat4(-0.22030692, -0.21817328, -0.13282628, -0.09320484, 0.036318667, -0.041267805, 0.014101586, 0.19955556, 0.13402963, 0.0147686405, 0.020386595, -0.070123695, 0.043743577, 0.09068588, -0.035322204, -0.16451395) * input_3(1.0, 1.0); + result += vec4(-0.0058158385, 0.0065551293, 0.04341422, -0.03662805); + return result; +} + +//!DESC ArtCNN C4F16 (Long-Skip-Conv-6) +//!HOOK LUMA +//!BIND conv2d_5_tf +//!BIND conv2d_tf +//!BIND conv2d_5_tf1 +//!BIND conv2d_tf1 +//!BIND conv2d_5_tf2 +//!BIND conv2d_tf2 +//!BIND conv2d_5_tf3 +//!BIND conv2d_tf3 +//!SAVE conv2d_6_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) ((conv2d_5_tf_texOff(vec2(x_off, y_off)))+(conv2d_tf_texOff(vec2(x_off, y_off)))) +#define input_1(x_off, y_off) ((conv2d_5_tf1_texOff(vec2(x_off, y_off)))+(conv2d_tf1_texOff(vec2(x_off, y_off)))) +#define input_2(x_off, y_off) ((conv2d_5_tf2_texOff(vec2(x_off, y_off)))+(conv2d_tf2_texOff(vec2(x_off, y_off)))) +#define input_3(x_off, y_off) ((conv2d_5_tf3_texOff(vec2(x_off, y_off)))+(conv2d_tf3_texOff(vec2(x_off, y_off)))) +vec4 hook() { + vec4 result = mat4(-0.08282132, -0.050212573, -0.006431566, 0.0031790528, -0.03776868, -0.013437083, -0.057741843, -0.04481481, -0.0044315453, 0.034124285, -0.022156695, -0.018602561, 0.20425214, 0.11224462, 0.068278916, 0.08053673) * input_0(-1.0, -1.0); + result += mat4(0.1737423, -0.04230807, -0.013661164, -0.0036762068, 0.06008337, -0.15184057, 0.14660735, -0.109465286, -0.051084023, -0.0059801363, 0.061394773, -0.023285672, 0.20968242, 0.10546822, 0.18708454, 0.11879361) * input_0(-1.0, 0.0); + result += mat4(-0.033685837, 0.01289737, -0.027983379, -0.0055957735, -0.03144902, 0.0044752005, -0.06453463, -0.008021043, 0.035466965, -0.0068737944, 0.023858318, -0.020520926, 0.115860045, -0.0169058, 0.25822514, -0.033295814) * input_0(-1.0, 1.0); + result += mat4(-0.15009366, -0.14018245, 0.07395507, 0.067690514, 0.03459224, -0.0080688605, -0.042481042, 0.03127538, -0.008065604, -0.15744175, 0.0914565, 0.061561264, -0.0070291115, 0.16098608, 0.032738257, -0.04752911) * input_0(0.0, -1.0); + result += mat4(0.13670045, 0.25546923, -0.09107412, -0.11714196, -0.25676984, 0.13249697, -0.10698101, 0.31307876, -0.023955444, 0.06397853, -0.012698382, -0.052452724, 0.22351012, 0.20750614, 0.14437743, 0.27419376) * input_0(0.0, 0.0); + result += mat4(-0.050944123, -0.058321945, 0.04162834, 0.01627469, 0.1313747, 0.11501373, 0.010086614, -0.049469303, 0.05847671, 0.05762879, -0.10180938, 0.02704485, -0.00649745, 0.03943254, 0.0553785, 0.21255617) * input_0(0.0, 1.0); + result += mat4(2.2463453e-05, -0.06334729, 0.0011694673, 0.04354312, -0.033493683, -0.049897637, -0.014223561, -0.0049568773, -0.043216746, 0.015991298, -0.010565269, 0.04337413, 0.103710435, 0.045767233, 0.050358094, 0.011385551) * input_0(1.0, -1.0); + result += mat4(0.01380943, 0.104021706, 0.031120492, -0.033007912, 0.053270113, -0.050233055, 0.072125725, -0.10193151, 0.030048978, -0.0003700513, -0.0150875375, 0.052887183, 0.16137594, 0.2257317, 0.15461081, 0.27663457) * input_0(1.0, 0.0); + result += mat4(-0.008497543, -0.019854866, -0.021894751, 0.03439224, 0.05535017, 0.02039972, 0.059488334, -0.010332649, 0.0041363593, -0.0015563926, -0.0059469384, -0.07390348, 0.027100675, 0.15760505, 0.07618055, 0.14184739) * input_0(1.0, 1.0); + result += mat4(-0.08603623, -0.047642153, -0.053582344, -0.0444515, -0.0655613, -0.042072568, -0.019204779, -0.018738216, -0.019927198, 0.010405698, 0.017948784, 0.011774974, 0.007919431, 0.024741042, 0.0076185255, 0.013932557) * input_1(-1.0, -1.0); + result += mat4(-0.043703865, -0.10790202, -0.0007796875, -0.08448833, -0.12688679, -0.01089143, -0.10747253, -0.023536537, 0.08455817, -0.030737879, -0.046556097, 0.006399341, -0.014527084, -0.022552371, 0.0042789043, -0.025548236) * input_1(-1.0, 0.0); + result += mat4(-0.017126534, 0.0070317043, -0.06699227, 0.017585939, -0.036779076, 0.0039233603, -0.080334, 0.027249992, -0.028460855, -0.011410889, -0.010681172, -0.0058809626, 0.007704066, 0.0042690565, -0.004934647, 0.0023567276) * input_1(-1.0, 1.0); + result += mat4(0.0033617697, -0.10173116, -0.105472825, 0.004582017, 0.12714557, 0.035237685, 0.051081784, -0.05570687, 0.046029497, -0.022194626, 0.017548587, -0.009099121, 0.005619404, -0.03798384, 0.01612155, -0.013392621) * input_1(0.0, -1.0); + result += mat4(0.14385813, 0.044832364, 0.23530087, 0.0781522, 0.037361372, 0.0007815395, 0.0099332575, 0.056152873, -0.03897767, 0.031461842, -0.03588279, 0.015075558, 0.02369635, -0.0013568713, -0.035864167, 0.08911574) * input_1(0.0, 0.0); + result += mat4(0.038586695, 0.109686814, 0.01428738, -0.05225311, 0.038505603, 0.014199985, 0.1532636, -0.0036847093, -0.002786075, -0.0058692717, 0.03571069, -0.028749885, -0.013924306, 0.013924136, 0.013653318, -0.057306714) * input_1(0.0, 1.0); + result += mat4(-0.050206963, -0.013475421, 0.0013554276, -0.002336058, -0.03078795, 0.0447772, 0.004280083, 0.03034155, -0.062265925, 0.059796277, -0.024513677, 0.010041057, 0.008301747, -0.0037727836, 0.0011822516, -0.011271828) * input_1(1.0, -1.0); + result += mat4(0.011543025, 0.0998472, 0.016829127, 0.04086479, 0.02742798, -0.014207445, -0.02224093, -0.08083774, -0.0012286769, -0.02715151, 0.0057010693, 0.024992155, -0.0013688167, 0.0103053935, -0.0014241064, -0.009641806) * input_1(1.0, 0.0); + result += mat4(0.038221855, -0.038919553, 0.0033878502, -0.009140636, 0.008604268, -0.022090565, -0.008482899, 0.06974687, 0.0274221, -0.0033571396, 0.03818755, -0.02057325, -0.011516872, -0.004629597, -0.012851992, 0.03200801) * input_1(1.0, 1.0); + result += mat4(0.038180728, 0.052124877, 0.028602071, 0.017921688, -0.106804095, -0.06451233, -0.0032042079, -0.06249655, 0.029011251, 0.049390733, 0.019068372, -0.021419108, 0.027353842, -0.06985431, 0.010669499, 0.012004969) * input_2(-1.0, -1.0); + result += mat4(0.07048305, 0.13378158, 0.052958295, 0.12006899, -0.2442138, 0.105855346, -0.2404675, 0.0846714, 0.007463271, -0.018021544, -0.038328808, 0.0129634105, -0.0024921277, 0.032704916, 0.021794284, -0.025026945) * input_2(-1.0, 0.0); + result += mat4(0.033256583, 0.0012528894, 0.09516928, 0.02883472, -0.07634173, 0.024952693, -0.17379819, 0.0424996, -0.015280563, -0.016551197, 0.0009836598, -0.004051451, -0.021451997, 0.025161399, -0.027619077, 0.014161351) * input_2(-1.0, 1.0); + result += mat4(-0.13450135, -0.033342496, 0.08598471, 0.06542061, -0.12869398, -0.017269405, 0.15450597, 0.10280524, -0.04683036, -0.03112956, -0.00549868, 0.062059883, -0.06633045, 0.100190625, 0.06778979, -0.06945905) * input_2(0.0, -1.0); + result += mat4(0.03161881, -0.21531355, -0.37171996, -0.24796964, -0.28969556, -0.3403489, -0.2551731, -0.19779174, 0.028901346, -0.008884844, 4.5851906e-05, -0.027517252, 0.008502487, -0.07232236, -0.0012851048, 0.0832686) * input_2(0.0, 0.0); + result += mat4(0.074153185, 0.021588128, 0.15960196, 0.018950539, 0.19091938, 0.0658477, -0.107791945, -0.123369426, 0.003289666, 0.079394005, 0.013380928, -0.060010634, 0.065662496, -0.019735813, -0.057802524, -0.025969924) * input_2(0.0, 1.0); + result += mat4(0.020560034, -0.061484057, -0.01671455, 0.03311405, 0.042929567, 0.014951189, 0.048961636, 0.08954079, 0.024441384, 0.009973243, 0.014502184, -0.019264026, -0.004639607, 0.0335818, -0.015219564, 0.010581947) * input_2(1.0, -1.0); + result += mat4(-0.13108274, 0.01680598, -0.034609407, -0.07321586, 0.51572764, 0.06812453, 0.40426224, 0.026959816, 0.0012631903, -0.06437251, 0.0076033743, 0.018669631, 0.00729181, -0.07380653, -0.014959285, -0.010776669) * input_2(1.0, 0.0); + result += mat4(0.0061294124, 0.08844831, 0.013961146, 0.045071326, 0.10625706, 0.11194465, 0.2045468, 0.06784081, -0.031259723, 0.008844579, -0.0026625046, 0.028619414, -0.016112128, 0.047558032, 0.018712401, 0.01288224) * input_2(1.0, 1.0); + result += mat4(-0.021823335, 0.019722616, -0.03150424, -0.046254978, -0.0072345864, 0.021305645, 0.0037331497, -0.015964765, -0.0044203885, 0.0053305216, -0.003572976, -0.009088418, -0.0968171, -0.031598892, -0.009145334, -0.012266221) * input_3(-1.0, -1.0); + result += mat4(-0.09154096, -0.05375414, 0.030158956, -0.038778644, -0.027448544, -0.00079408084, -0.011063443, 0.03803163, 0.042735137, -0.061409626, 0.04162336, 0.07153434, -0.08329422, 0.07861933, -0.11448406, 0.07923565) * input_3(-1.0, 0.0); + result += mat4(-0.04745412, -0.019669222, -0.06647585, -0.0045029465, -0.007979803, 0.021160234, -0.030546281, 0.009273329, 0.09256682, 0.07382133, 0.10911239, 0.026102742, -0.014792403, 0.03616291, -0.056952864, 0.04743502) * input_3(-1.0, 1.0); + result += mat4(-0.009113205, -0.03460476, 0.08534465, 0.08909347, 0.06037503, 0.008822444, -0.049739916, -0.007825083, -0.031719364, -0.06511747, -0.081047334, -0.058899954, -0.021392876, -0.05890152, 0.04838633, 0.013203479) * input_3(0.0, -1.0); + result += mat4(0.21216123, 0.19974816, -0.13691562, 0.039467793, 0.056616027, -0.2239943, 0.1360794, -0.013913148, -0.6059646, -0.38705826, -0.40261963, -0.36473858, 0.40681398, 0.27267224, 0.3767217, 0.2706809) * input_3(0.0, 0.0); + result += mat4(-0.046089027, -0.03968935, 0.017081982, -0.0024457292, 0.034425203, 0.010322377, 0.017337015, -0.11567465, 0.32653096, 0.24680425, 0.019871414, 0.10949153, 0.1794407, 0.039816856, 0.06882997, -0.057977777) * input_3(0.0, 1.0); + result += mat4(-0.01682135, 0.023119971, 0.0011208794, 0.03303372, -0.03463704, 0.026282402, -0.005799822, 0.016180407, 0.022083962, 0.034750033, 0.039780572, 0.031981036, -0.06814737, -0.09335608, -0.07625231, -0.013693499) * input_3(1.0, -1.0); + result += mat4(0.042120103, -0.02420226, 0.055469062, -0.07569917, -0.064827695, 0.122576594, -0.052083295, 0.067365736, 0.110857755, -0.009736876, 0.09803895, 0.07084237, -0.27751908, -0.24027902, -0.20375757, -0.23848666) * input_3(1.0, 0.0); + result += mat4(-0.0011380053, -0.045419335, 0.016514352, -0.027958523, -0.009867594, 0.014075648, -0.013004083, 0.03305624, 0.10320226, 0.20704691, 0.14488699, 0.10122793, -0.036598325, 0.0014404291, -0.058817852, -0.09686075) * input_3(1.0, 1.0); + result += vec4(0.10844616, 0.1052326, 0.1123853, 0.1073892); + return result; +} + +//!PARAM ar_strength +//!TYPE float +//!MINIMUM 0.0 +//!MAXIMUM 1.0 +0.35 + +//!DESC ArtCNN C4F16 (Pixel-Shuffle) +//!HOOK LUMA +//!BIND LUMA +//!BIND conv2d_6_tf +//!WIDTH LUMA.w 2 * +//!HEIGHT LUMA.h 2 * +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * + +vec4 hook() { + vec4 output_pix = vec4(0.0, 0.0, 0.0, 1.0); + vec2 f0 = fract(conv2d_6_tf_pos * conv2d_6_tf_size); + ivec2 i0 = ivec2(f0 * vec2(2.0)); + output_pix.x = conv2d_6_tf_tex((vec2(0.5) - f0) * conv2d_6_tf_pt + conv2d_6_tf_pos)[i0.y * 2 + i0.x]; + + vec2 pp = LUMA_pos * LUMA_size - vec2(0.5); + vec2 fp = floor(pp); + + vec2 pix_idx[4] = {{0.5, 0.5}, {1.5, 0.5}, + {0.5, 1.5}, {1.5, 1.5}}; + + float luma_pixels[4]; + + for (int i = 0; i < 4; i++) { + luma_pixels[i] = LUMA_tex(vec2((fp + pix_idx[i]) * LUMA_pt)).x; + } + + float luma_min = min(min(min(luma_pixels[0], luma_pixels[1]), luma_pixels[2]), luma_pixels[3]); + float luma_max = max(max(max(luma_pixels[0], luma_pixels[1]), luma_pixels[2]), luma_pixels[3]); + + output_pix.x = mix(output_pix.x, clamp(output_pix.x, luma_min, luma_max), ar_strength); + return clamp(output_pix, 0.0, 1.0); +} diff --git a/.config/mpv/scripts/shaders/ArtCNN_C4F32.glsl b/.config/mpv/scripts/shaders/ArtCNN_C4F32.glsl new file mode 100644 index 0000000..c6ecbc6 --- /dev/null +++ b/.config/mpv/scripts/shaders/ArtCNN_C4F32.glsl @@ -0,0 +1,4356 @@ +// Revised 02/02/24 +// https://github.com/Artoriuz/ArtCNN + +// MIT License + +// Copyright (c) 2024 Joao Chrisostomo + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.009639502, -0.05526941, 0.0076694144, -0.029248899, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(0.009731951, -0.008246433, -0.009525365, -0.22691724, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(-0.0005854366, 0.065954864, 0.0020883693, 0.00015838176, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(0.015862152, 0.13759884, -0.025971945, -0.02030792, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.012353944, -0.02978533, 0.0027799895, 0.13002756, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(-0.001828021, -0.10602933, 0.022152526, 0.0743284, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(-0.005933779, -0.081067316, 0.019265447, 0.014702201, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.003666672, 0.037159447, 0.0053295237, 0.14320883, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(0.0027001034, 0.043104604, -0.0247523, 0.083990104, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.0006507861, -0.001154931, 5.734711e-05, -0.09617435); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.0016019961, -0.0020288154, 0.09276734, 0.0822948, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(0.00836944, 0.004625971, -0.07413194, -0.12772876, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(-0.007918958, -0.0025442862, -0.01635599, 0.052445848, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(0.016655026, -0.014081772, 0.03155391, -0.072909154, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.020238457, 0.02078565, 0.0537509, 0.09736563, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.0033315937, -0.010034719, -0.092440955, -0.03231572, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(-0.015904833, 0.014681388, -0.12820122, -0.009565115, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.011468821, -0.02598129, 0.021335682, 0.029203646, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(0.0041927574, 0.012821033, 0.1091824, -0.022238242, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.0006008337, 0.0003431891, 0.00062078156, 0.00083734724); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.011973161, 0.017244698, 0.07319975, -0.0021811218, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.08366036, -0.23401444, -0.08016088, -0.08314272, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.13256109, -0.0635909, 0.011596565, 0.04743471, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(0.05172332, 0.040811412, -0.13885427, 0.0070942985, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.4081921, 0.6103097, 0.24698982, 0.10761151, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.30588633, -0.036814198, -0.12501189, -0.15194087, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(-0.041069523, 0.00097017933, 0.0651257, -0.043105498, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.012916153, -0.36851403, -0.17395061, 0.08870064, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(0.03910566, 0.026263002, 0.11660884, 0.011192834, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.0043949415, -0.0007156787, 0.0015074975, 0.008114196); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.005684851, 0.008244845, 0.0031854014, -0.013040463, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.011239775, 0.10487598, -0.0017809066, 0.007758303, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.023284985, 0.11681024, -0.0004420441, 0.008856917, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(-0.021906285, 0.21709608, 0.0016432758, 0.01185042, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(0.023956232, 0.28213692, -0.002261684, 0.008122802, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(-0.05838075, -0.0147596365, 0.001756183, -0.020600129, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.024877965, 0.0009375269, -0.004624778, 0.0017363348, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.00045305782, 0.20658639, 0.0048177224, -0.014650341, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(0.02441873, 0.083716795, -0.001017423, 0.013266535, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(-0.00046296156, -0.08802105, -0.0006602163, -0.00056853774); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf4 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.0039574793, 0.02153602, -0.0066451235, -0.0053913607, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(0.005140377, -0.027411187, 0.004422123, 0.005302167, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(-0.002392473, 0.0076147346, 0.004447549, -0.000102951235, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(0.0012578669, -0.017186286, -0.019156383, -0.0044874577, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.0004239658, 0.012499271, 0.028087946, 0.002961933, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(-0.0009810817, 0.0033406967, -0.013525674, 6.653764e-05, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.0016285733, -0.00375692, 0.026386064, 0.009535285, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(-0.0057481085, 0.013497091, -0.033640128, -0.009425557, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(0.003567895, -0.012100115, 0.010151587, 9.1285656e-05, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.00047689342, 0.0010212304, -0.0004944419, -0.00067948626); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf5 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.0036430275, 0.0019924832, -0.0090867095, 0.05214025, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.017667603, -0.0048984927, 0.008687668, -0.076173164, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.026470922, 0.0035651599, -0.0013737628, 0.02777806, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(-0.0055145435, -0.0063864766, 0.019607281, 0.00615713, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(0.015547116, 0.012903458, -0.015502296, -0.020252135, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(-0.010235583, -0.007098464, -0.0022499932, 0.017171396, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.009445389, 0.004082099, -0.011603969, -0.05806582, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.0027019319, -0.0078061586, 0.0067076753, 0.09807817, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(-0.015115525, 0.00411195, 0.0031897656, -0.046791397, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.00039114844, -0.00024988875, -0.0005028633, 0.0005754427); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf6 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.013354662, 0.0065673697, 0.05148858, -0.008819368, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.13552202, -0.0062769237, -0.29564393, -0.013039091, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(0.17034495, -0.00042298491, -0.033858452, 0.020454453, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(-0.038806997, -0.0010038987, 0.30816782, -0.12236107, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(0.16163269, 0.0018627178, -0.43244228, -0.20827985, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(-0.1441722, 0.00019316455, 0.011695638, 0.09860645, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(0.058745485, -0.005561824, 0.12628719, 0.01662888, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(-0.031231983, 0.004814513, 0.23058377, 0.028200941, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(-0.021302393, 1.9964213e-05, -0.04362804, 0.11434901, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(-0.0017684592, 0.0002876655, 0.033570427, 0.052371923); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-0) +//!HOOK LUMA +//!BIND LUMA +//!SAVE conv2d_tf7 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (LUMA_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.0070530577, -0.18785635, 0.0026630182, -0.009863679, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, -1.0); + result += mat4(-0.0055224374, -0.26001713, -0.008919022, 0.013319923, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 0.0); + result += mat4(-0.0017614823, -0.02127025, 0.0015499789, -0.0042269523, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(-1.0, 1.0); + result += mat4(-0.0044697146, -0.24476434, -0.006525323, 0.015080599, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, -1.0); + result += mat4(-0.0042921463, 0.60016656, 0.0073595205, -0.013424032, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 0.0); + result += mat4(0.008864258, 0.08685598, 0.0028832841, -0.0012153988, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(0.0, 1.0); + result += mat4(-0.002165302, -0.03354723, 0.0015442809, -0.005864647, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, -1.0); + result += mat4(0.008396038, 0.100652575, 0.0062785083, 0.00082204276, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 0.0); + result += mat4(-0.007932393, -0.028042205, -0.010408324, 0.005882938, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) * input_0(1.0, 1.0); + result += vec4(0.0010666527, -0.004573858, 0.0020875577, -0.0023191762); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.011474511, 0.14226533, 0.05655976, -0.049861077, 0.023132086, 0.08825377, 0.07970001, 0.009022433, -0.084838726, -0.29589206, -0.0632676, 0.08744058, 0.14042033, 0.23763813, -0.0806219, -0.09847922) * input_0(-1.0, -1.0); + result += mat4(-0.012334518, 0.3010413, -0.02746345, -0.07231334, 0.1155061, 0.20287223, -0.04914343, -0.16111779, -0.08240874, -0.03190983, 0.074900344, 0.08691746, -0.18059836, 0.25690675, 0.09356671, 0.01399806) * input_0(-1.0, 0.0); + result += mat4(-0.036583483, -0.3830137, 0.045079537, 0.15050456, -0.005299164, -0.36576584, 0.066429876, -0.09894592, -0.0053047645, 0.44031927, 0.039273486, -0.08959865, 0.0049933847, 0.25330618, -0.038830403, -0.18831374) * input_0(-1.0, 1.0); + result += mat4(0.05334567, -0.0679912, 0.03316216, -0.028167412, -0.05822079, 0.049084898, -0.016640995, 0.09663271, 0.150738, 0.1505483, -0.015285866, 0.0093553625, 0.047542054, 0.08940321, 0.06291738, 0.06418742) * input_0(0.0, -1.0); + result += mat4(-0.10374341, -0.28071493, -0.029502207, 0.051767424, 0.030745944, -0.21896896, -0.052351695, -0.035599664, 0.051493935, -0.04702286, 0.034734774, -0.007941716, -0.08452456, 0.20233016, -0.119521745, 0.26160598) * input_0(0.0, 0.0); + result += mat4(0.0053481897, 0.32689324, -0.032808494, -0.012022321, -0.21587536, 0.11219791, -0.12761697, -0.0008900835, 0.0032886907, -0.23278733, 0.00945362, 0.05555298, 0.13579424, 0.03579393, 0.13094597, 0.031929668) * input_0(0.0, 1.0); + result += mat4(-0.10037018, -0.064780205, -0.023600854, 0.13931039, 0.05746406, -0.03302503, 0.03890022, 0.018582491, -0.10130513, 0.0831097, 0.036903337, -0.072890095, 0.04751359, -0.09523626, 0.09857338, -0.009467432) * input_0(1.0, -1.0); + result += mat4(0.028316483, 0.038626503, 0.05975107, 0.042042393, 0.058195405, 0.09852366, -0.033145707, 0.024453804, -0.055590194, 0.05222216, -0.05279799, -0.046385948, -0.43690625, -0.09251342, 0.14169186, -0.09694898) * input_0(1.0, 0.0); + result += mat4(0.00071088783, 0.042857736, 0.009345741, -0.06507039, 0.010064912, 0.033431202, 0.083076656, 0.08527359, 0.07309248, -0.07956599, -0.032831624, 0.040599026, 0.034944408, -0.01915508, -0.0763689, -0.03519656) * input_0(1.0, 1.0); + result += mat4(0.10562924, 0.043341916, -0.0025096585, -0.036693297, -0.001594504, 0.19829766, -0.004135322, -0.07358809, 0.114406936, 0.24485132, 0.13091488, -0.15854903, -0.05568409, -0.06960327, -0.019167047, 0.032645166) * input_1(-1.0, -1.0); + result += mat4(-0.066901974, 0.51015353, -0.013886757, 2.4157947e-05, 0.06670279, -0.45379514, 0.032996256, 0.14367281, 0.12129948, -0.039662518, -0.20467296, 0.006283191, -0.003642037, 0.06296441, 0.11743821, -0.06133812) * input_1(-1.0, 0.0); + result += mat4(0.03942298, -0.45063576, 0.06515634, -0.051727585, -0.06331029, 0.18602026, -0.09896232, -0.003970596, 0.28642127, -0.22534762, 0.1137913, -0.0423742, 0.13046756, 0.03451871, -0.009303712, 0.032560747) * input_1(-1.0, 1.0); + result += mat4(-0.025978507, 0.026816875, 0.07698064, -0.02044953, -0.1574738, -0.12994112, -0.031349897, 0.10908463, -0.09407922, -0.008802402, 0.12990609, 0.10071414, -0.045881126, -0.037808117, 0.02526875, 0.019805787) * input_1(0.0, -1.0); + result += mat4(0.0619934, -0.34311783, -0.030245863, -0.07839838, -0.08029757, 0.32339835, -0.06531447, -0.07196544, -0.07896593, 0.090539195, -0.022517217, 0.023468958, -0.028168917, 0.09469887, 0.043031048, 0.19391273) * input_1(0.0, 0.0); + result += mat4(-0.041480716, 0.26609987, -0.1250669, 0.048387814, 0.2168262, -0.08105171, 0.19104888, -0.084338516, -0.1963509, 0.06270728, -0.08047882, 0.026236571, 0.005757007, 0.04829222, 0.055050097, -0.081462644) * input_1(0.0, 1.0); + result += mat4(0.018724322, -0.07237746, -0.03248503, -0.029438838, 0.07012002, -0.03854646, 0.015110269, -0.02195976, 0.009900082, 0.054363318, 0.004193795, -0.05449755, -0.03466874, 0.0050982786, -0.01569875, 0.0033130113) * input_1(1.0, -1.0); + result += mat4(0.02391095, -0.0529903, 0.045035843, 0.10194736, 0.019642446, 0.06806664, -0.019155988, -0.115318105, 0.09731732, -0.05639931, -0.108181946, -0.034092415, 0.03914513, -0.11379415, -0.112601295, -0.08233766) * input_1(1.0, 0.0); + result += mat4(-0.0093469955, 0.07849252, 0.06409102, 0.008025725, -0.1931439, -0.08725709, -0.04523865, 0.060241804, -0.21701314, -0.10169341, 0.030184269, 0.06721993, -0.024465691, -0.0663541, -0.09714727, -0.08030982) * input_1(1.0, 1.0); + result += mat4(-0.015133275, -0.03341902, -0.032438718, -0.22659913, -0.051516164, -0.49787137, -0.055988275, -0.1655173, -0.0128015615, 0.27055544, 0.025652919, 0.09508193, -0.16931023, 0.101847954, -0.028923832, 0.18213521) * input_2(-1.0, -1.0); + result += mat4(-0.04646431, 0.42625186, 0.04512244, -0.12741438, -0.07415116, -1.4610785, 0.25616175, 0.2006012, 0.17176478, -0.9886393, -0.104478806, 0.041308414, 0.13607532, 0.35977405, 0.057721246, -0.18820842) * input_2(-1.0, 0.0); + result += mat4(0.05756745, -0.06740549, 0.038766503, 0.015350451, -0.20722933, -0.14487866, -0.03472461, 0.02060921, 0.071464844, 0.23219566, -0.024074413, 0.12256586, 0.0712566, -0.084552206, -0.06125671, -0.11638866) * input_2(-1.0, 1.0); + result += mat4(0.06122207, -0.16364816, -0.24135943, 0.013981197, -0.070230015, 0.04196643, -0.025388332, -0.0810444, -0.12224078, -0.04454895, 0.117931426, -0.036731392, -0.20217618, -0.09936385, 0.21192224, 0.0065753493) * input_2(0.0, -1.0); + result += mat4(0.10412482, -0.27254358, 0.16316733, -0.18122137, -0.32816216, 0.5541114, -0.14836992, 0.25157127, -0.22374047, 0.6284556, -0.014682458, 0.15806189, 0.012088796, 0.065920375, 0.017778916, 0.1547773) * input_2(0.0, 0.0); + result += mat4(-0.391792, 0.023606429, -0.03575195, -0.10769077, 0.24371307, 0.17502078, -0.039026655, 0.031311296, 0.2278858, 0.009367633, 0.18489175, -0.113359205, 0.0411436, 0.03266571, 0.09565811, 0.016285205) * input_2(0.0, 1.0); + result += mat4(0.06101433, -0.045906253, 0.097141944, 0.014334502, 0.060651727, 0.0125930365, 0.09138437, 0.012168553, -0.044356827, -0.05081861, -0.054829, -0.09908063, -0.110531665, -0.091902375, -0.1379013, 0.15471373) * input_2(1.0, -1.0); + result += mat4(-0.14076361, -0.21009736, -0.016960388, -0.05888741, 0.039417323, 0.05064425, 0.2508779, -0.110705376, -0.037775606, -0.02311816, -0.06986773, -0.18093312, 0.008834546, 0.07065855, 0.08054828, 0.051685113) * input_2(1.0, 0.0); + result += mat4(0.038807936, -0.06670633, -0.033785827, 0.1312371, -0.063479535, 0.08262208, -0.05927673, -0.024465883, -0.07920312, -0.0234348, 0.0006420994, -0.07923544, 0.18419814, -0.0221339, -0.09510764, 0.021910336) * input_2(1.0, 1.0); + result += mat4(-0.19044502, 0.11396593, -0.014263981, 0.14788222, -0.01147881, 0.03280691, 0.036344994, 0.01801228, -0.03459385, 0.047185976, 0.039985854, 0.028064027, -0.018526834, 0.22351028, 0.07708924, -0.12588553) * input_3(-1.0, -1.0); + result += mat4(0.14375892, 0.6815997, -0.105143175, 0.054681838, 0.10267993, -0.038768675, -0.08368099, -0.024514453, -0.046172496, -0.03321343, -0.002873865, -0.03586872, 0.034252252, -0.33161223, -0.112901405, 0.035991047) * input_3(-1.0, 0.0); + result += mat4(0.12594484, 0.21589288, -0.11722764, -0.16624838, -0.03992061, -0.13806136, 0.031566568, 0.06331219, 0.07663479, -0.014560522, -0.00488713, -0.036814224, 0.05383802, -0.004783565, -0.036365505, 0.06895263) * input_3(-1.0, 1.0); + result += mat4(-0.14804807, -0.19827633, 0.25376344, -0.01710322, -0.12307155, -0.095193885, 0.071256734, -0.13167727, -0.025284568, -0.07170249, 0.009639976, -0.12240785, -0.07052868, -0.07592123, -0.03761949, 0.09120808) * input_3(0.0, -1.0); + result += mat4(-0.033851743, -0.3354643, -0.014290362, -0.062799305, -0.108155556, -0.014068375, -0.14192143, 0.070827365, 0.09240353, 0.014886376, 0.02293473, 0.10744686, 0.09866843, 0.15423472, 0.07632778, -0.0097358115) * input_3(0.0, 0.0); + result += mat4(-0.07377758, -0.15864855, 0.16602217, 0.011326499, -0.03019131, -0.053221893, -0.103202105, -0.011394159, -0.071438886, 0.006905903, -0.04281679, -0.010293504, -0.111626655, 0.06627159, 0.008263918, -0.14504278) * input_3(0.0, 1.0); + result += mat4(-0.004485873, -0.036062405, -0.040411737, 0.04774156, 0.024682764, 0.048049953, -0.019794114, 0.0008025524, 0.061786808, 0.0069299308, -0.03745694, 0.027291114, 0.085514545, -0.07697671, -0.014191901, 0.065600306) * input_3(1.0, -1.0); + result += mat4(0.13116986, -0.20786753, -0.107651815, 0.011361516, 0.16073409, 0.12509948, -0.050800472, 0.036541622, -0.0044568353, 0.019570481, 0.028428994, -0.105534755, -0.07073721, 0.14050436, -0.015322865, -0.12164893) * input_3(1.0, 0.0); + result += mat4(0.09402268, 0.026241051, -0.060515024, -0.035053674, 0.05550017, 0.123566195, 0.057492137, 0.07891816, -0.0029539405, -0.050374094, 0.029236414, 0.02124584, -0.023070512, -0.06180096, 0.10354343, 0.075556576) * input_3(1.0, 1.0); + result += mat4(0.04903544, -0.022746572, 0.017768368, -0.016374374, -0.10522206, -0.1723746, -0.0039917547, 0.12531447, 0.11658701, -0.057852846, -0.122065015, 0.034052044, 0.03475292, 0.028440442, 0.028603971, -0.082245566) * input_4(-1.0, -1.0); + result += mat4(0.006163466, 0.08416228, -0.03509525, 0.0084141195, 0.025409348, 0.099877514, 0.057413846, 0.0091659315, 0.07641985, -0.45427752, 0.07135186, 0.15279627, -0.04355831, -0.22192432, -0.038215186, 0.060620893) * input_4(-1.0, 0.0); + result += mat4(-0.013719417, -0.1045059, 0.007701734, 0.006512756, 0.062091786, 0.16706052, -0.025369156, -0.08835091, -0.1830013, 0.42733228, -0.07443604, -0.09629387, -0.055381235, 0.16461095, 0.04587023, 0.014361696) * input_4(-1.0, 1.0); + result += mat4(0.008675992, 0.0013398968, -0.0012063992, 0.028968845, -0.07572677, 0.062182993, -0.005884401, -0.10291672, -0.16312882, 0.06776259, 0.009356978, 0.06861021, -0.08809867, 0.0055770143, -0.034347013, 0.12227957) * input_4(0.0, -1.0); + result += mat4(-0.039016876, -0.020313611, 0.00047285634, -0.051300477, 0.16982092, 0.0048966124, 0.077235594, 0.2278141, -0.005799706, 0.29971272, -0.08551894, -0.12593862, -0.092459105, 0.123605, -0.014516177, -0.20759062) * input_4(0.0, 0.0); + result += mat4(0.05232414, 0.04258671, -0.00077825575, -0.027252626, -0.086408556, -0.11052027, -0.06647872, 0.093739875, 0.14894868, -0.29122636, 0.2202874, 0.011924521, 0.21349044, -0.13114479, 0.076668434, 0.08404483) * input_4(0.0, 1.0); + result += mat4(0.01730709, 0.013440827, 0.0018656021, 0.002880037, 0.1941968, 0.09934847, -0.041178938, -0.04189101, -0.08633269, 0.024886817, 0.08059235, -0.044817705, -0.040969037, -0.017873274, 0.05008966, -0.037072964) * input_4(1.0, -1.0); + result += mat4(0.05833027, -0.064796045, 0.023198677, 0.018140506, -0.20955907, -0.03978526, -0.09704321, -0.07163116, -0.013452349, 0.004328963, -0.045264114, -0.063890256, 0.1344015, 0.04748669, 0.024159573, 0.08474033) * input_4(1.0, 0.0); + result += mat4(-0.06631955, 0.062116534, -0.024577606, -0.023244582, 0.029714933, -0.017029423, 0.032175098, 0.02259535, 0.0007457491, -0.033195715, -0.09340772, 0.07617189, -0.12260997, -0.010490548, -0.045339435, -0.0012595737) * input_4(1.0, 1.0); + result += mat4(-0.15241522, -0.15382302, 0.04707171, 0.13680285, -0.055922482, -0.0071908035, -0.0024364812, 0.06478825, -0.026904903, 0.11222908, 0.031256966, -0.078801095, -0.0833549, -0.042964213, 0.13963063, -0.009477813) * input_5(-1.0, -1.0); + result += mat4(-0.027704477, 0.06279097, -0.014697725, -0.08477374, 0.15808558, -0.2950521, -0.018078845, -0.009260502, -0.038860902, 0.091018386, -0.049809467, -0.029650193, -0.15706767, 0.47156438, 0.023307884, -0.19343662) * input_5(-1.0, 0.0); + result += mat4(0.038366422, 0.050777823, 0.0016166354, -0.07009658, -0.08288329, 0.20420554, 0.014818084, -0.022145336, 0.039980534, -0.17030708, 0.045894187, 0.076108776, 0.25335777, -0.23550843, 0.04868877, 0.07736208) * input_5(-1.0, 1.0); + result += mat4(0.039883077, 0.10425687, -0.088866666, 0.040117517, -0.0405529, -0.0070468923, -0.022780165, -0.10221767, 0.024923058, -0.043812554, -0.0004683996, 0.00603262, 0.15952508, -0.05018748, -0.04962324, -0.11208827) * input_5(0.0, -1.0); + result += mat4(-0.033142477, -0.032848157, 0.14317411, -0.13370861, -0.06566786, 0.24321407, 0.059235834, 0.18610089, -0.0130132, -0.13970767, -0.05464634, -0.015719475, 0.11284221, -0.2780012, 0.1050486, 0.3352269) * input_5(0.0, 0.0); + result += mat4(0.021915825, 0.009452127, -0.07748872, 0.12702847, 0.04820716, -0.14366558, 0.13229276, -0.063959524, -0.07044093, 0.14967984, -0.008212492, -0.0026752388, -0.2819906, 0.15869297, -0.13652243, 0.07087196) * input_5(0.0, 1.0); + result += mat4(0.016193181, -0.021438709, -0.015251905, -0.102816276, 0.06402148, 0.031374466, 0.05395204, 0.032153882, 0.004819848, -0.032767393, 0.0024888695, 0.06707583, 0.06778264, 0.037140403, -0.08092434, 0.03014888) * input_5(1.0, -1.0); + result += mat4(-0.046472788, -0.093388006, -0.084536515, 0.09389807, -0.07207257, 0.0063512335, -0.051063873, -0.17743377, 0.023808604, 0.059529807, 0.13255475, 0.020913322, 0.013605969, 0.030652132, 0.030888746, 0.042153392) * input_5(1.0, 0.0); + result += mat4(0.061234526, 0.0500759, 0.07816268, -0.07648434, -0.012143426, -0.05448116, -0.05951385, 0.11810434, -0.07051715, -0.049629852, -0.05144486, -0.022894844, -0.010592684, -0.047061518, 0.0015769668, -0.18509749) * input_5(1.0, 1.0); + result += mat4(0.06290325, -0.22538185, -0.076415285, 0.11838936, -0.026116744, -0.007046547, 0.06585244, 0.09219051, -0.07304314, 0.15644133, -0.014217456, 0.042247646, 0.06429798, 0.08079391, 0.062440634, 0.11076714) * input_6(-1.0, -1.0); + result += mat4(0.12799695, -0.12553284, 0.045370918, 0.0145201115, -0.003933627, 0.06467383, 0.005348893, -0.030066237, -0.039740454, 0.8956927, -0.14326814, -0.058070116, 0.077906914, 0.47084892, -0.14130674, -0.010173546) * input_6(-1.0, 0.0); + result += mat4(-0.1496728, 0.26642242, -0.052707694, -0.10797786, 0.03583847, -0.068780765, -0.063078396, -0.08432418, -0.11294396, 0.2818934, -0.010599433, -0.05935219, 0.05267046, 0.13767664, -0.00050144334, -0.03977074) * input_6(-1.0, 1.0); + result += mat4(-0.088718414, 0.04885845, -0.011962942, -0.009238977, -0.07431573, -0.023690091, -0.02523959, -0.080742665, -0.008363906, 0.045544308, -0.022401553, 0.11594935, -0.10492397, -0.066277705, -0.11430341, 0.19363792) * input_6(0.0, -1.0); + result += mat4(-0.2101778, -0.12389261, 0.06465303, 0.03623544, 0.11703984, -0.030796116, 0.019045388, 0.09736112, 0.20908487, 0.034456085, 0.10277817, -0.3300226, 0.12655321, -0.2181342, 0.08894707, -0.12207577) * input_6(0.0, 0.0); + result += mat4(0.12685814, 0.04247239, 0.12537362, 0.1368436, -0.110780485, 0.05075729, -0.027910309, 0.02931714, -0.6972618, 0.025421714, -0.16569734, -0.058966268, -0.21236527, -0.05705769, -0.07603409, -0.090173244) * input_6(0.0, 1.0); + result += mat4(0.044366147, -0.016213179, 0.0021994924, 0.062284816, 0.09879175, 0.028673919, -0.058980856, -0.03819417, -0.0234734, 0.023329869, 0.009044475, 0.055694953, 0.1593693, 0.22053266, 0.05392728, -0.12879099) * input_6(1.0, -1.0); + result += mat4(-0.086790316, 0.11224507, -0.099574834, -0.22866464, -0.09260917, 0.006444736, 0.00031690166, 0.010550804, 0.07763106, -0.09564333, 0.12508012, -0.1757247, 0.2907474, -0.07405136, 0.03733854, -0.014620348) * input_6(1.0, 0.0); + result += mat4(0.10403257, 0.01915998, 0.05302312, -0.03633333, 0.043769147, 0.0059101214, 0.05563954, 0.019813646, -0.3527632, 0.046033163, 0.052309655, 0.056390688, 0.13940988, 0.07645101, 0.036961176, -0.057050005) * input_6(1.0, 1.0); + result += mat4(-0.03166782, -0.07857291, 0.054847274, 0.073142976, -0.05178094, 0.0065175146, 0.023960179, -0.008702119, -0.15755497, -0.13098681, 0.0619623, 0.07876907, 0.03780511, -0.011253185, 0.046981424, -0.05426461) * input_7(-1.0, -1.0); + result += mat4(-0.07483838, 0.20729794, 0.067140356, -0.13509208, 0.11273103, -0.064206, 0.030689267, 0.0725767, -0.1610131, -0.15936549, 0.0126139615, -0.02009675, 0.14238803, 0.2969316, -0.10860507, -0.020494306) * input_7(-1.0, 0.0); + result += mat4(0.055938248, -0.0764087, -0.015952507, 0.086504504, 0.29647493, 0.05033292, 0.012153751, 0.08907646, 0.10395085, 0.038725115, 0.032280616, -0.0057302956, -0.107458346, -0.30928832, -0.005827298, -0.0737753) * input_7(-1.0, 1.0); + result += mat4(0.08040467, 0.055309154, 0.02525744, 0.028184464, -0.066289045, 0.055620413, -0.01947789, -0.018919952, 0.118891604, 0.07542836, 0.047653813, -0.1785399, -0.00040424085, -0.017523687, -0.030849079, -0.031749852) * input_7(0.0, -1.0); + result += mat4(-0.04666788, -0.13100687, -0.048475023, 0.0910509, -0.061133448, 0.6082302, -0.070702225, 0.37615848, -0.10847305, 0.30998567, 0.0191998, 0.23804739, -0.007058862, -0.28313375, 0.031297453, -0.14231116) * input_7(0.0, 0.0); + result += mat4(-0.036769394, 0.03249269, -0.030481914, -0.0052863983, 0.48059112, 0.22780804, 0.084276915, 0.0003907214, 0.03726659, -0.19846252, -0.0992841, -0.11400835, 0.10984954, 0.20692737, -0.04401094, 0.019733652) * input_7(0.0, 1.0); + result += mat4(-0.095708296, 0.0023823497, -0.058620255, -0.07259145, -0.03976262, 0.040047295, -0.053257793, 0.09050093, 0.043952923, -0.04731331, -0.07859261, -0.29833215, 0.11092457, -0.016481739, -0.07777466, -0.029218692) * input_7(1.0, -1.0); + result += mat4(0.09255871, -0.025397405, 0.02443999, 0.15398693, 0.0048755473, 0.11798306, 0.20110407, 0.034998413, -0.022528365, -0.069377005, 0.046559636, 0.16643497, -0.0070381463, 0.001680691, 0.044035867, 0.055793345) * input_7(1.0, 0.0); + result += mat4(-0.035092205, 0.028398436, -0.013930211, -0.1020363, 0.19578998, 0.0028898963, 0.012707631, 0.03482373, 0.05586234, 0.0906096, -0.15844476, 0.01837149, 0.044896208, -0.01058013, 0.042686377, -0.03998226) * input_7(1.0, 1.0); + result += vec4(-0.067972615, 0.0055298675, 0.18208961, 0.031375904); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.10866969, -0.0016753983, -0.023416128, -0.0049084052, -0.11520766, -0.17524455, -0.0035286509, 0.103217945, 0.08128111, 0.12645791, -0.13160849, 0.01031504, -0.15535672, 0.2960718, -0.012766875, 0.05063013) * input_0(-1.0, -1.0); + result += mat4(0.27860224, -0.2029895, 0.0075578224, -0.022077208, -0.06673081, -0.002625866, -0.21057151, 0.013787182, 0.118804075, -0.020720897, 0.36850405, -0.011117254, 0.0831553, 0.2711194, 0.00527745, 0.008292537) * input_0(-1.0, 0.0); + result += mat4(-0.15248384, 0.22798513, -0.039493673, 0.030041382, 0.00011895961, 0.14712, -0.017363394, -0.005947247, -0.069471955, -0.22704731, -0.10088391, -0.044349805, -0.0040298654, 0.2541534, 0.00847035, -0.15952381) * input_0(-1.0, 1.0); + result += mat4(-0.041780505, -0.007827071, 0.051946245, 0.07657763, 0.2483128, 0.10892072, 0.20737322, 0.09942352, -0.07279736, 0.0849534, -0.31321663, -0.037394032, -0.017717676, 0.22370055, 0.080539785, -0.015482978) * input_0(0.0, -1.0); + result += mat4(-0.03298572, 0.26166537, 0.02817763, -0.22795919, 0.01814225, 0.13124338, -0.006806682, 0.04888828, -0.078192316, -0.07658886, -0.11238029, 0.13695219, -0.10430291, -0.047208197, 0.07873409, -0.09638423) * input_0(0.0, 0.0); + result += mat4(0.057255283, -0.30967107, 0.021274397, 0.21596591, -0.088969044, -0.25036037, 0.22017689, 0.11570133, 0.05916031, 0.08533528, 0.05572246, -0.12297169, -0.06875058, 0.021285648, -0.1597958, 0.20361003) * input_0(0.0, 1.0); + result += mat4(0.26944453, 0.028220017, -0.009957097, -0.098178595, 0.117884405, 0.05973691, -0.019714888, -0.14513627, -0.15272267, -0.032484595, 0.21360826, 0.06441354, -0.19534655, 0.17112754, -0.18684499, 0.22567001) * input_0(1.0, -1.0); + result += mat4(-0.367602, -0.07982814, -0.12880784, 0.367096, -0.33192107, -0.009000724, -0.166783, 0.26919925, 0.2243431, -0.053128008, -0.04538208, -0.19782068, -0.31361684, 0.055976484, -0.13607441, -0.35841516) * input_0(1.0, 0.0); + result += mat4(0.1606721, 0.039344076, 0.03186023, -0.36023322, 0.2022927, 0.030034987, -0.04557997, -0.526109, -0.104379304, 0.069600195, 0.011441486, 0.20780188, 0.13704588, -0.03607376, 0.09640352, -0.06414581) * input_0(1.0, 1.0); + result += mat4(0.02820605, -0.021267867, -0.046017963, 0.081053585, 0.026125807, -0.06917531, 0.16284753, -0.046842065, 0.0140126, -0.023492992, 0.13029629, -0.04072944, 0.016462691, -0.017672785, 0.025965102, -0.007203416) * input_1(-1.0, -1.0); + result += mat4(-0.0049375403, 0.003245945, -0.0627185, 0.016187979, -0.047153234, 0.014524025, -0.08287188, 0.019813217, -0.24181987, 0.27258143, -0.27684256, 0.08088316, 0.11467639, -0.17927794, 0.24322242, 0.05124429) * input_1(-1.0, 0.0); + result += mat4(-0.041143585, 0.09755794, 0.030964678, -0.080198474, 0.0046871994, 0.06468045, -0.03637951, 0.06741007, 0.056575205, -0.051784117, 0.10290959, -0.005311979, 0.005684597, -0.058444154, 0.038525227, -0.07695952) * input_1(-1.0, 1.0); + result += mat4(-0.13742557, -0.03830136, -0.031180786, -0.028036468, -0.099979155, 0.1227311, -0.04117629, 0.118045844, -0.082848474, -0.13965252, 0.077092804, 0.19717292, 0.18585901, 0.24551383, 0.07915914, 0.031065263) * input_1(0.0, -1.0); + result += mat4(-0.115138255, -0.019993592, 0.041321337, -0.028009245, 0.10441436, -0.1015325, 0.04925743, -0.1920563, 0.09256897, -0.07707834, 0.07102913, -0.1481068, -0.081461884, 0.033193324, -0.25848204, -0.2398588) * input_1(0.0, 0.0); + result += mat4(0.17537147, -0.069959894, 0.056230072, 0.060981013, 0.03579225, 0.02853429, -0.06614662, 0.09361704, 0.18787763, 0.20776342, -0.03398546, 0.053966876, 0.063529626, 0.08803698, -0.1362894, 0.30888957) * input_1(0.0, 1.0); + result += mat4(0.08624855, 0.02368227, -0.06524958, -0.03199988, 0.095861845, -0.09664556, -0.086481236, -0.095104866, -0.13053869, 0.04624857, -0.13359882, -0.07926665, -0.25815773, 0.013143319, 0.014139344, -0.025855184) * input_1(1.0, -1.0); + result += mat4(0.03549989, 0.01121422, 0.1336063, 0.037067294, -0.07320711, 0.08123347, 0.010438486, 0.1746022, 0.2927694, -0.025971126, 0.2037427, -0.28429896, 0.0046507614, -0.13603738, 0.029852455, -0.20538735) * input_1(1.0, 0.0); + result += mat4(-0.12413363, -0.08688592, -0.10414771, 0.0435943, -0.026197905, -0.047787555, 0.046453666, -0.13775826, -0.19717827, -0.14087968, -0.10851074, 0.27048954, -0.05165173, 0.027715182, -0.010776641, 0.12681982) * input_1(1.0, 1.0); + result += mat4(-0.1420327, 0.28947097, -0.09367276, -0.064812616, -0.17164138, -0.22835273, -0.26263765, 0.009175197, -0.03441916, -0.08210246, 0.14435974, -0.00027299262, 0.014189846, -0.29578117, 0.11986415, 0.041536056) * input_2(-1.0, -1.0); + result += mat4(0.10883998, -0.11336151, 0.05981814, -0.14031607, -0.0530067, 0.43949383, -0.10611656, -0.065556854, -0.20323819, 0.12126479, -0.24076201, -0.14609253, -0.11575363, 0.10847176, 0.054182377, 0.14948595) * input_2(-1.0, 0.0); + result += mat4(0.041482184, 0.07956171, 0.022305598, 0.047705274, -0.06416127, -0.122237995, -0.16361523, 0.19661176, 0.033328913, 0.06998745, 0.04738962, 0.093101345, -0.046732374, 0.018388608, 0.17434488, 0.091408126) * input_2(-1.0, 1.0); + result += mat4(-0.910357, 0.42721912, -0.6047935, 0.10669712, 0.066720165, -0.14779207, 0.22613873, 0.052230787, 0.030212255, 0.05549284, 0.19492026, -0.049198546, 0.28684664, -0.18976526, 0.17314498, 0.15559885) * input_2(0.0, -1.0); + result += mat4(0.02980368, -0.24848798, 0.06839663, 0.41842687, 0.3415788, -0.1698824, 0.08375922, 0.030556077, 0.23320459, -0.19220981, 0.18653701, -0.17234649, -0.093567125, -0.11333023, -0.1433729, -0.07892431) * input_2(0.0, 0.0); + result += mat4(0.02470625, 0.09242358, 0.033604477, -0.037377253, 0.051058743, -0.017228175, -0.03777965, 0.101751514, 0.013586463, 0.11190002, -0.3088571, 0.3481486, 0.020718105, 0.060369704, -0.08440089, 0.26925984) * input_2(0.0, 1.0); + result += mat4(-0.71144164, -0.0024167614, -0.23867199, 0.045480657, -0.44628695, 0.00859034, -0.20277269, -0.04364774, 0.05481446, -0.0327945, -0.057600077, 0.003746382, 0.28808987, 0.114223704, -0.07186578, -0.05553169) * input_2(1.0, -1.0); + result += mat4(0.05660011, 0.010399554, -0.18403052, 0.35984096, -0.3693297, 0.06833372, -0.28620434, -0.7377174, 0.027290871, 0.01637027, 0.06547304, -0.3046839, -0.3867168, 0.067603745, -0.22336209, -0.48726365) * input_2(1.0, 0.0); + result += mat4(0.015871944, 0.026998261, 0.104801506, -0.3388853, 0.13412808, 0.10449537, -0.07277259, -0.339329, -0.15002277, -0.0349209, -0.058965076, 0.23927505, 0.1026096, 0.117699556, 0.0681943, -0.20785855) * input_2(1.0, 1.0); + result += mat4(0.025437104, -0.20164318, 0.12542595, -0.022239313, -0.051607214, -0.0023613148, -0.042628814, -0.04550596, -0.029096462, 0.018853372, 0.036945302, -0.019657236, -0.019915706, -0.19438156, 0.061858796, -0.012555024) * input_3(-1.0, -1.0); + result += mat4(-0.12177299, -0.068767674, 0.1500976, -0.10460141, 0.059155624, 0.1644959, 0.017234603, 0.16244306, 0.018988477, -0.020144004, -0.017638436, -0.0112420395, -0.090065636, -0.048827987, -0.13891783, -0.08810675) * input_3(-1.0, 0.0); + result += mat4(-0.024034463, 0.11493142, -0.05425196, -0.047593355, -0.002852843, 0.05363644, 0.04554108, 0.14502698, -0.0031343387, -0.029134031, 0.026269563, 0.020728998, -0.0004896836, 0.19064498, -0.01901448, 0.13193086) * input_3(-1.0, 1.0); + result += mat4(-0.00078590785, -0.09859132, -0.0279901, 0.14796706, -0.094292596, 0.09354026, 0.08666501, -0.22207856, 0.06495153, 0.039325804, 0.043240376, -0.036453996, 0.021510705, 0.1729839, 0.13999233, -0.035299554) * input_3(0.0, -1.0); + result += mat4(-0.16653003, 0.0023305463, -0.030653939, 0.1478564, 0.10658499, 0.15545036, 0.006357807, -0.16854696, -0.09232321, -0.087154895, -0.031288978, 0.09211985, 0.1890888, -0.05991288, 0.07891131, -0.06800393) * input_3(0.0, 0.0); + result += mat4(-0.06099013, 0.015551424, 0.060983606, 0.090665825, -0.09044356, 0.09329697, -0.0011768724, 0.040181834, 0.016172031, 0.08462914, 0.06679372, -0.0632192, -0.2020599, -0.14412084, -0.026825923, 0.18172145) * input_3(0.0, 1.0); + result += mat4(0.2433284, 0.1945921, -0.11353453, -0.120380856, 0.041559413, 0.014208364, -0.019278867, -0.01959827, -0.069880664, -0.070353165, -0.038333435, 0.07534461, 0.07703995, -0.10133558, -0.06945564, 0.0634726) * input_3(1.0, -1.0); + result += mat4(0.12109554, 0.15445225, -0.033714544, -0.0290683, 0.115723304, -0.04257663, -0.0060048355, 0.043925293, 0.061379977, 0.13682912, 0.08516306, -0.11417607, -0.2463047, 0.13395965, -0.16058876, 0.2345707) * input_3(1.0, 0.0); + result += mat4(-0.002354257, 0.020161113, -0.08702626, -0.015006509, -0.08526707, 0.0021691506, -0.014901202, 0.061986327, -0.044230416, -0.037381537, -0.04358243, 0.035442844, 0.20598711, -0.010243009, 0.08316314, -0.40115806) * input_3(1.0, 1.0); + result += mat4(0.029638793, -0.024816316, 0.01543237, -0.005210873, 0.02478194, 0.10203553, -0.0067764777, 0.010286396, 0.007758402, -0.16079415, 0.08792443, -0.004782037, 0.06414854, 0.019637005, -0.03686332, 0.10282513) * input_4(-1.0, -1.0); + result += mat4(0.006673697, 0.010677275, -0.020076662, -0.00957145, -0.123990566, 0.0078069894, -0.027288709, 0.15056299, -0.060841862, 0.118329346, 0.14020078, -0.13715425, -0.07728844, -0.011331847, 0.032758005, -0.1912856) * input_4(-1.0, 0.0); + result += mat4(-0.038835388, -0.018533569, 0.052448843, -0.0046105357, 0.09632572, -0.13221388, 0.11568086, -0.12015669, 0.05220762, -0.010016174, -0.17651983, 0.14305167, 0.022732224, 0.063156866, 0.0042342623, 0.08091082) * input_4(-1.0, 1.0); + result += mat4(-0.08368721, -0.037608393, -0.0015397582, -0.010063854, 0.23919977, 0.112061135, -0.08167994, -0.05825111, -0.10601495, 0.12563072, -0.09297711, 0.19221526, -0.13663495, 0.033512063, -0.041762076, -0.042552244) * input_4(0.0, -1.0); + result += mat4(0.012946252, 0.09497475, 0.009848859, -0.007445075, -0.16462032, -0.25973475, -0.040061425, 0.13543908, 0.1679165, -0.08807067, -0.0062422683, -0.01928688, 0.14113697, 0.011811618, -0.0017983565, 0.098123126) * input_4(0.0, 0.0); + result += mat4(0.0831069, -0.060632415, 0.03514381, 0.03159666, -0.05516811, 0.29282787, 0.040607743, -0.11262972, -0.04081859, 0.0131036695, 0.055722356, -0.14622529, -0.04274652, -0.05065994, -0.010242185, -0.039219923) * input_4(0.0, 1.0); + result += mat4(0.09607051, 0.03763084, 0.020980438, 0.011284158, -0.36890018, -0.03754705, 0.04520614, 0.13169508, 0.15844287, -0.008259377, 0.08178704, -0.24054185, 0.052615415, -0.072377846, 0.09023653, -0.04939668) * input_4(1.0, -1.0); + result += mat4(-0.026006935, -0.1433204, 0.0014945606, 0.030383456, 0.38740364, 0.12709579, 0.15148903, -0.46055204, -0.06294205, -0.04138506, -0.18156986, 0.15979674, -0.039231874, 0.046488542, 0.044957295, 0.12453494) * input_4(1.0, 0.0); + result += mat4(-0.01935388, 0.099348836, -0.032576237, -0.043124083, -0.11177703, -0.117791675, -0.15413684, 0.40387323, -0.06280402, 0.06578967, 0.12957817, 0.005129622, 0.015698992, 0.028506475, -0.031846493, -0.08883505) * input_4(1.0, 1.0); + result += mat4(0.017423972, -0.07897064, -0.019966915, 0.066340975, -0.0953599, -0.08877302, 0.18407261, -0.08289032, -0.04048628, -0.009774159, 0.05989364, -0.03827186, 0.015561878, 0.11827866, -0.12691483, 0.11976833) * input_5(-1.0, -1.0); + result += mat4(-0.11529992, -0.027091388, -0.0034529453, -0.13193095, -0.0565379, 0.07365465, -0.13717248, 0.07751546, 0.084940776, 0.026840648, -0.12060135, -0.043926813, -0.013752697, -0.18231721, -0.10948346, 0.085909896) * input_5(-1.0, 0.0); + result += mat4(0.06823858, -0.08147071, 0.030505942, 0.019701382, 0.04760267, -0.078373045, -0.02788201, 0.030653892, -0.059042048, -0.010836376, -0.0030784686, 0.068669066, 0.06487538, 0.026212716, 0.25962818, -0.17075482) * input_5(-1.0, 1.0); + result += mat4(0.15112898, 0.07018277, -0.049746107, 0.09603958, 0.102436535, 0.090802215, -0.013625871, 0.07819671, 0.042052038, -0.1547439, -0.004025071, 0.02062141, 0.29816, 0.17981143, 0.075857244, -0.05172472) * input_5(0.0, -1.0); + result += mat4(-0.040117044, -0.01364994, -0.12867458, 0.08421965, 0.11131387, -0.20781368, 0.09430837, -0.096752465, -0.08389433, 0.17309666, 0.04632654, 0.007844935, -0.12288669, -0.14537291, -0.08010876, -0.022198701) * input_5(0.0, 0.0); + result += mat4(0.07290215, 0.111252554, 0.25242257, 0.036307942, -0.13034308, 0.19319221, -0.022973109, 0.015370098, 0.021961352, -0.07946694, 0.09360003, 0.0122562675, -0.09067367, 0.09093429, -0.04190574, 0.07252466) * input_5(0.0, 1.0); + result += mat4(-0.18907125, 0.03907483, 0.10834743, -0.12380826, 0.05819229, -0.05129782, -0.058482908, 0.010983395, 0.06976828, 0.1274866, -0.014404728, 0.0034185024, -0.516458, -0.063097544, -0.067856714, 0.06201475) * input_5(1.0, -1.0); + result += mat4(0.021045461, 0.0030510225, -0.06424293, 0.041053694, -0.10324555, 0.06104767, -0.007707394, -0.08603419, -0.061830092, -0.13497409, 0.014789672, 0.1223902, 0.25953057, 0.13071227, 0.21269754, -0.29992974) * input_5(1.0, 0.0); + result += mat4(-0.04774243, 0.04834747, -0.084516995, -0.059488934, 0.015616802, -0.04271723, 0.050970897, 2.1773056e-05, 0.040115055, 0.047383722, -0.040008374, -0.17915174, 0.038069688, -0.16700655, -0.1622587, 0.21856834) * input_5(1.0, 1.0); + result += mat4(-0.022137877, -0.07639453, 0.15614411, 0.09440601, 0.019565646, 0.13122825, 0.048748072, 0.049199242, -0.02130527, -0.08478005, 0.00882482, -0.010832355, -0.11548875, -0.25360644, 0.060206976, -0.05267638) * input_6(-1.0, -1.0); + result += mat4(-0.10781639, -0.12191361, 0.041981533, 0.031988427, -0.14911462, -0.032048386, -0.12533757, 0.11649815, -0.04470026, -0.26018795, 0.11875914, 0.116130695, 0.01466482, -0.34681925, 0.12752496, -0.10864486) * input_6(-1.0, 0.0); + result += mat4(-0.054394506, 0.027251171, -0.13442022, 0.020489411, 0.09685219, -0.11214929, 0.10159741, -0.119098425, 0.049608048, 0.0005343519, 0.10699777, 0.09420546, 0.047346573, -0.38052744, -0.11403541, -0.04281327) * input_6(-1.0, 1.0); + result += mat4(0.5512217, 0.5438794, 0.028994938, 0.24519478, 0.112862326, -0.102829516, 0.05936542, -0.108895995, -0.011065788, -0.13247335, -0.17930777, 0.0029674757, -0.40917486, -0.06183674, -0.3493845, 0.027765017) * input_6(0.0, -1.0); + result += mat4(-0.2451501, -0.39698884, -0.20759112, -0.16713779, -0.0975396, 0.009748914, -0.07642978, 0.04595234, -0.3120459, -0.41006044, 0.24378346, 0.07992252, -0.2021372, -0.1800687, 0.009829813, 0.52053696) * input_6(0.0, 0.0); + result += mat4(-0.0007451974, -0.009315035, 0.07686427, -0.12803532, -0.010440161, 0.11505899, 0.021574488, 0.012507426, -0.016813397, 0.05984196, 0.38223425, -0.568361, -0.033171747, -0.15618888, 0.088516, 0.28804204) * input_6(0.0, 1.0); + result += mat4(-0.078986384, 0.010782879, 0.13912056, -0.122685745, -0.15872192, -0.005975568, -0.12921748, 0.05963785, -0.37035885, -0.10046529, -0.101495326, -0.051479522, -0.31306034, 0.05724374, -0.02922319, -0.13120483) * input_6(1.0, -1.0); + result += mat4(-0.16349594, 0.07792587, -0.112501666, -0.001766329, 0.2456232, 0.0026788097, 0.19828166, -0.19451217, -0.09506081, -0.123002164, -0.11861062, -0.3243034, 0.18494551, -0.009838568, -0.053051654, 0.1045298) * input_6(1.0, 0.0); + result += mat4(0.08697288, 0.004983449, 0.034946494, 0.004630419, -0.09492555, 0.030915232, -0.06726298, 0.15243807, 0.08521461, 0.08565674, 0.049085196, -0.44884658, 0.077022515, 0.074057825, -0.031037485, 0.019772008) * input_6(1.0, 1.0); + result += mat4(0.07275964, 0.024933696, -0.016384307, 0.05604154, 0.08732976, -0.06723705, -0.0478953, -0.051312856, -0.13326025, 0.053297285, 0.06451297, 0.048673287, -0.15443195, -0.11315418, 0.09567739, -0.0812934) * input_7(-1.0, -1.0); + result += mat4(-0.057548933, -0.039228342, 0.00038404594, -0.058260314, 0.13954057, 0.103098825, 0.11471625, 0.026563644, 0.050971933, -0.06433611, -0.07121674, 0.08238832, 0.07759033, 0.110588275, -0.11324913, 0.084367245) * input_7(-1.0, 0.0); + result += mat4(-0.015697427, -0.07969774, 0.04804505, -0.030339243, 0.0128372, -0.18652996, 0.06516714, -0.011281705, 0.0847953, -0.21283492, 0.14465182, -0.26797703, -0.012754074, 0.051453453, 0.02826882, -0.020320673) * input_7(-1.0, 1.0); + result += mat4(0.06990117, -0.018227383, -0.048535924, 0.06422139, -0.062595226, -0.10386721, 0.10879552, -0.019023962, 0.3548252, -0.21474253, 0.11017448, -0.15929669, -0.0869352, -0.12376694, 0.08771144, 0.069007985) * input_7(0.0, -1.0); + result += mat4(-0.111478746, -0.005314574, -0.045090698, -0.020699179, -0.03275906, -0.21539265, -0.14832446, -0.09665091, -0.11923698, 0.18573423, -0.05978981, -0.01904573, -0.017007831, 0.054944083, 0.035472643, -0.07599861) * input_7(0.0, 0.0); + result += mat4(0.05195374, 0.04052206, 0.040813893, -0.068222, 0.051328957, -0.2916917, -0.2991985, 0.5475872, 0.068596885, 0.2318583, -0.04309488, 0.21105437, 0.04121867, -0.06315468, 0.027918963, 0.016372193) * input_7(0.0, 1.0); + result += mat4(-0.15042298, -0.025107028, -0.01045932, -0.11611532, -0.35471275, -0.07059841, -0.26361793, -0.1205649, -0.29637477, 0.08908007, -0.07012917, 0.2220318, 0.29222214, 0.10686604, -0.0024224229, -0.03237742) * input_7(1.0, -1.0); + result += mat4(0.21569827, 0.01363962, 0.145152, 0.030751294, -0.5751665, -0.04581866, -0.30278808, -0.72180647, 0.120316505, -0.12566869, 0.09859791, -0.32455468, -0.29275605, -0.13789028, 0.019366156, 0.1230484) * input_7(1.0, 0.0); + result += mat4(-0.028092397, 0.017607413, -0.09305824, 0.112743214, -0.0492493, 0.0018585626, -0.06489235, -0.44547212, -0.15009232, 0.04782188, -0.03922797, 0.2716127, -0.023044853, 0.048015255, 0.032330506, -0.108001) * input_7(1.0, 1.0); + result += vec4(0.0011939753, -0.53721213, -0.043028865, -0.023680562); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.0489698, 0.09581955, 0.16690306, -0.14178842, 0.069910645, 0.080087654, 0.06385724, 0.048850887, -0.24905045, -0.14719903, -0.15306947, 0.28777805, 0.29777128, 0.07392764, 0.0043182587, -0.18790947) * input_0(-1.0, -1.0); + result += mat4(0.08562581, 0.025547812, -0.12553592, -0.25594735, 0.051011376, 0.17784464, -0.11726976, -0.1534591, 0.14666793, -0.024984084, 0.12406414, 0.05347688, -0.015333589, 0.019203393, 0.05034574, -0.10480099) * input_0(-1.0, 0.0); + result += mat4(-0.14640923, -0.17493562, 0.033437956, 0.40903017, -0.18766105, -0.38289237, -0.08171041, 0.4723647, 0.16861594, 0.35414782, 0.020946251, -0.4530895, 0.34125134, 0.11856972, -0.018800806, -0.23172054) * input_0(-1.0, 1.0); + result += mat4(-0.031442925, -0.036193475, -0.21404749, 0.3289028, -0.038363606, 0.017037552, -0.08046531, 0.19778895, 0.1305483, 0.0052849213, 0.044573963, -0.27176884, -0.17098749, 0.06488041, 0.009296085, -0.033592634) * input_0(0.0, -1.0); + result += mat4(-0.11098983, 0.14476396, 0.26914907, -0.11978741, 0.106110185, 0.09337458, -0.0084136585, -0.34718487, -0.19047081, -0.2166267, -0.023041077, 0.24465239, -0.21722093, -0.051216293, 0.15402621, 0.37103665) * input_0(0.0, 0.0); + result += mat4(0.14777154, -0.008200441, -0.15040374, -0.19716427, 0.00507753, 0.101300836, -0.18049294, -0.06633141, -0.011411524, -0.10319579, 0.21443863, 0.15531884, -0.16425842, 0.007841174, 0.12531817, 0.10327724) * input_0(0.0, 1.0); + result += mat4(0.04045541, -0.091783725, -0.003972302, -0.15678215, -0.074632674, 0.14126532, 0.23861423, -0.24174587, 0.026273465, 0.044087864, -0.07627759, -0.015400454, 0.31273863, -0.04954942, 0.04139655, -0.03130474) * input_0(1.0, -1.0); + result += mat4(-0.1330921, -0.17270514, -0.044171475, 0.33636165, 0.030631345, -0.22023393, 0.0127267055, 0.23466685, 0.06506859, 0.20462336, 0.013552391, -0.17163692, 0.12610218, 0.01964665, 0.47635984, -0.08812409) * input_0(1.0, 0.0); + result += mat4(0.020963741, 0.121636644, 0.09887941, -0.19797643, 0.094197854, -0.03258957, 0.06639534, -0.17364247, -0.10763959, -0.0749539, -0.18350385, 0.18492915, -0.07722175, 0.12948775, -0.056768145, -0.19460829) * input_0(1.0, 1.0); + result += mat4(0.18801284, 0.020129006, 0.10532161, -0.17014462, 0.078039914, 0.048821483, 0.18685593, -0.2999279, 0.36205825, 0.11660104, 0.2458583, -0.3956923, -0.047511235, -0.11572371, -0.15044236, 0.3060542) * input_1(-1.0, -1.0); + result += mat4(-0.09783747, 0.2638522, 0.0010657941, -0.04120014, -0.145165, -0.16854326, -0.083782814, 0.3249429, -0.40144408, 0.07973642, -0.18112819, 0.16897048, 0.2823711, 0.048199818, -0.022822928, -0.18503134) * input_1(-1.0, 0.0); + result += mat4(-0.032496996, -0.27481872, -0.03927488, 0.2760731, 0.0058346773, 0.1093042, -0.027749972, -0.107066385, -0.0050953347, -0.3802342, 0.021886567, 0.46958172, -0.14708616, 0.11065343, -0.05901059, 0.16891308) * input_1(-1.0, 1.0); + result += mat4(0.02019348, -0.07552934, -0.1793895, 0.2633153, -0.19797838, -0.14193816, -0.038786992, 0.28533417, -0.086709164, -0.057535943, -0.10870175, 0.41762537, -0.15143497, -0.06547057, -0.013078573, -0.1868125) * input_1(0.0, -1.0); + result += mat4(-0.064588614, -0.016056348, 0.20546179, -0.22592537, 0.40075132, 0.29730037, 0.059589572, -0.08519504, 0.22000213, 0.021833315, -0.009183362, -0.32921904, 0.09481921, -0.0709448, -0.21996212, 0.39056844) * input_1(0.0, 0.0); + result += mat4(0.009091894, 0.22204551, -0.06070276, -0.0068514394, -0.09941071, -0.13012518, -0.04622649, -0.15657118, -0.14601961, 0.13460197, -0.17625825, -0.081180744, -0.12879293, -0.1767751, 0.054010026, 0.08768582) * input_1(0.0, 1.0); + result += mat4(-0.09440671, 0.048160598, 0.032869954, 0.010776614, 0.036805894, 0.13079081, -0.028384928, -0.004427219, -0.01734873, 0.017154751, 0.13457412, 0.11023635, -0.09345179, -0.09109328, 0.06026019, 0.027602056) * input_1(1.0, -1.0); + result += mat4(-0.0070127067, -0.16759661, -0.106892735, 0.15921341, -0.10966244, -0.1548903, -0.17190175, -0.10730379, 0.259049, 0.030765967, -0.011994926, -0.13783863, 0.32463604, 0.17703615, 0.18656848, -0.2884285) * input_1(1.0, 0.0); + result += mat4(-0.0104109645, -0.047362443, 0.015259784, -0.12482832, 0.014578244, -0.0003960931, 0.16455607, 0.16547768, -0.07105468, 0.098917, 0.15110004, -0.15912338, -0.10111013, 0.23132725, 0.09729163, -0.16187926) * input_1(1.0, 1.0); + result += mat4(0.14797342, -0.04065786, 0.1517808, -0.37287638, -0.2966013, -0.25592887, -0.08520103, -0.06641671, 0.0077761333, 0.17784537, 0.26687673, -0.31520268, 0.05064065, 0.14676656, -0.14749362, -0.06529523) * input_2(-1.0, -1.0); + result += mat4(-0.036516108, -0.11108995, 0.11428481, 0.00045587614, -0.5646746, -0.3852628, -0.2534799, 0.30722722, -0.24714373, -0.3013553, -0.31900638, 0.29058272, 0.017511826, 0.106046885, 0.14001638, -0.1223971) * input_2(-1.0, 0.0); + result += mat4(-0.100957416, -0.10367436, 0.12858808, 0.03711386, -0.40230218, -0.20645796, -0.0782601, 0.190905, 0.041559096, -0.1272649, 0.07838176, 0.006214888, 0.29242933, 0.0026384136, -0.23852895, -0.014269052) * input_2(-1.0, 1.0); + result += mat4(0.061731417, -0.060006868, 0.009081027, -0.20845795, 0.013848385, -0.13723053, -0.14918266, -0.05375958, -0.14436848, -0.14585854, -0.021499962, 0.035976104, -0.18581578, -0.15091059, -0.014018121, -0.0131056635) * input_2(0.0, -1.0); + result += mat4(-0.354787, -0.24067993, -0.0777313, -0.38107666, 0.31070742, 0.37645632, -0.21652497, 0.45593002, 0.45009682, 0.365576, -0.199259, 0.15313464, -0.082842365, 0.1479113, -0.019487133, 0.19514328) * input_2(0.0, 0.0); + result += mat4(-0.04344554, 0.20467411, -0.07662642, 0.05017986, -0.0049216845, -0.077016406, -0.13371646, -0.0104143815, -0.19487353, -0.16709448, -0.09401627, -0.23119085, 0.00014976072, -0.020225555, -0.15503232, 0.089378) * input_2(0.0, 1.0); + result += mat4(0.49665654, -0.05211297, 0.0454976, -0.43590188, 0.031914204, -0.050685957, 0.0817062, -0.16203998, 0.026052473, -0.057523564, 0.20534837, 0.008719614, -0.20513692, -0.053327918, 0.058661133, 0.23603551) * input_2(1.0, -1.0); + result += mat4(0.279576, -0.36637747, -0.055667624, -0.12538587, 0.41124356, -0.032980777, 0.26041678, -0.042250834, 0.18596424, 0.013215083, 0.021639898, -0.03687528, -0.13472022, -0.012092616, 0.3571727, -0.08401769) * input_2(1.0, 0.0); + result += mat4(0.31895652, 0.063380815, -0.17639102, 0.013829773, 0.28140995, -0.0829261, 0.26108533, -0.116196245, -0.15047058, 0.20146303, 0.14010702, 0.13331102, 0.111822456, 0.028995203, 0.27821234, 0.07298454) * input_2(1.0, 1.0); + result += mat4(0.13933912, 0.17378795, 0.16135588, -0.7079496, 0.044144496, -5.6020326e-06, -0.026115188, -0.09971458, 0.02118036, 0.0057010273, -0.005734326, 0.0922029, 0.090433486, 0.105290055, 0.1353859, -0.086634725) * input_3(-1.0, -1.0); + result += mat4(0.16082019, 0.37897444, 0.1546631, -0.21876475, 0.12910616, 0.09978071, 0.04876577, -0.17675155, -0.0236751, 0.016088042, -0.010413778, -0.15524895, -0.11209951, -0.06951302, -0.20529416, -0.026371732) * input_3(-1.0, 0.0); + result += mat4(0.46530294, 0.114710756, -0.042034745, -0.46307302, 0.0148841515, -0.17110153, -0.033597276, -0.07161085, 0.007615828, 0.0015280999, -0.022740304, 0.14326128, -0.088053785, -0.16338226, 0.06181367, 0.2504745) * input_3(-1.0, 1.0); + result += mat4(-0.1307621, -0.08097295, -0.19409378, 0.46873468, -0.022258688, 0.055980463, 0.043682303, 0.013527921, -0.099142134, -0.04610984, 0.0062808106, -0.06348906, -0.09282542, -0.02218603, 0.020700345, 0.24178202) * input_3(0.0, -1.0); + result += mat4(-0.1765519, -0.053653106, 0.026321402, -0.059729606, 0.018693639, 0.2079256, 0.019361202, 0.20063138, 0.09850781, 0.06687737, -0.027254203, 0.17906716, 0.31587622, 0.16870572, 0.051883772, -0.13583487) * input_3(0.0, 0.0); + result += mat4(-0.051374223, 0.017656043, 0.025737392, 0.22246277, 0.0063751526, -0.12313231, 0.04011083, 0.04903002, -0.015600855, -0.0136896195, 0.0034153129, -0.10752503, -0.09377454, 0.029198796, -0.17122634, -0.1639601) * input_3(0.0, 1.0); + result += mat4(-0.28499418, -0.09976808, 0.04615653, 0.28292277, -0.093990766, -0.051726308, -0.08663857, -0.08411356, 0.04830787, 0.03684938, -0.015930347, -0.02910816, -0.022254547, -0.027485464, 0.0038919768, -0.19728081) * input_3(1.0, -1.0); + result += mat4(-0.086197354, -0.064266995, 0.00040783247, -0.005396669, -0.1976148, 0.075589634, -0.019654222, 0.115014166, -0.014094324, -0.026148735, 0.018308334, -0.033458516, -0.175224, -0.12199967, 0.0021512967, 0.27379662) * input_3(1.0, 0.0); + result += mat4(-0.14800176, -0.30656698, -0.10805382, 0.47797677, 0.0020219483, -0.0762854, -0.07566341, -0.042846184, 0.008827419, 0.018994259, -8.6167594e-05, -0.0013629842, 0.13699548, 0.054830454, 0.16414893, -0.082301654) * input_3(1.0, 1.0); + result += mat4(0.05032553, 0.020680029, 0.09643998, -0.19176443, -0.15416007, -0.056539167, -0.19874647, 0.48534754, -0.11212854, -0.0913998, 0.018576756, -0.17834012, -0.02502718, -0.075276405, -0.018363189, -0.11782831) * input_4(-1.0, -1.0); + result += mat4(0.0008805066, 0.050061665, 0.038954195, 0.069273956, 0.10228815, 0.07845128, 0.023774557, -0.37336653, 0.03763225, -0.17273241, 0.069251515, 0.44770387, 0.02073784, -0.023890236, 0.06262583, 0.2564417) * input_4(-1.0, 0.0); + result += mat4(-0.04483108, -0.09514338, -0.07493801, 0.033008825, 0.12525563, 0.07387132, 0.113828026, -0.043117516, -0.008459713, 0.29442266, -0.05874752, -0.55419266, -0.0031391818, 0.12877278, 0.052135553, -0.19170997) * input_4(-1.0, 1.0); + result += mat4(-0.014116763, 0.02070151, -0.0604111, 0.034863256, 0.09160612, 0.018757077, 0.19960956, -0.5516522, -0.06684844, -0.016464522, 0.0774845, 0.12290618, 0.07087702, 0.08386441, 0.043500688, 0.17146766) * input_4(0.0, -1.0); + result += mat4(0.019016184, 0.023262125, 0.06311174, 0.0068877377, -0.17054586, -0.2628793, -0.18271445, 0.48440182, 0.35150325, 0.1541202, -0.09453167, -0.17134283, -0.03275639, 0.020246092, -0.012084979, -0.31373167) * input_4(0.0, 0.0); + result += mat4(0.012988461, 0.05759764, -0.0367256, -0.11346455, 0.014545499, -0.06432291, 0.123747535, 0.1065546, -0.14390582, -0.17319974, 0.10367055, 0.13123538, 0.025365962, -0.07786656, 0.07310649, 0.12624125) * input_4(0.0, 1.0); + result += mat4(-0.014452338, -0.0072475336, 0.0051319594, 0.109600976, -0.044675943, -0.04774475, -0.039407127, 0.098318964, 0.090188675, 0.15664934, 0.048979264, -0.11060084, 0.010451874, 0.019167515, 0.019811343, -0.11457728) * input_4(1.0, -1.0); + result += mat4(-0.0046693482, -0.064671904, -0.11977649, -0.05787036, 0.33851212, 0.2729475, 0.31809205, -0.20642109, -0.22605924, -0.038256284, -0.23635863, -0.09528021, -0.12799543, -0.0054458776, -0.09332458, 0.12771176) * input_4(1.0, 0.0); + result += mat4(0.107937716, 0.03561112, 0.120223336, 0.05401576, -0.22192946, 0.022985313, -0.21931797, -0.044222366, 0.114275634, -0.081614725, 0.09353995, 0.29135138, -0.0015681012, -0.039025534, 0.009514013, 0.045084625) * input_4(1.0, 1.0); + result += mat4(0.0002819126, -0.026867116, -0.10201008, 0.1361828, 0.035582047, -0.043586425, -0.013133613, -0.03907904, 0.1752491, 0.0600964, 0.1282467, -0.18936212, 0.0025774473, -0.08538755, -0.29662538, 0.587269) * input_5(-1.0, -1.0); + result += mat4(-0.050966106, 0.06179201, -0.06988186, -0.06255625, -0.10838069, -0.069432765, -0.063539356, 0.06703443, -0.122188784, -0.019107139, -0.056182437, -0.0124821495, 0.17473073, 0.33259195, -0.070951074, -0.7199781) * input_5(-1.0, 0.0); + result += mat4(0.0149201, 0.052378215, 0.10873935, 0.019037062, 0.05732665, 0.064577304, 0.07339239, -0.035377063, -0.054617073, -0.12006524, 0.0033457458, 0.22025307, 0.0024648625, -0.22715889, 0.062965736, 0.64703435) * input_5(-1.0, 1.0); + result += mat4(-0.03792332, 0.059368018, -0.0222546, -0.003336119, -0.18253702, -0.053751126, 0.11408107, -0.015152294, -0.062262923, -0.053551078, -0.14510182, 0.27022406, -0.053818908, -0.021201326, 0.08637844, -0.1601202) * input_5(0.0, -1.0); + result += mat4(0.03720865, -0.19366306, -0.08483054, 0.038625494, 0.32821319, 0.082570545, -0.14017574, 0.21172978, -0.04811595, 0.10074488, 0.19134025, -0.22980289, -0.23116967, -0.36073232, -0.04111827, 0.3044891) * input_5(0.0, 0.0); + result += mat4(0.039199192, 0.073068835, -0.03604507, 0.0076479884, -0.093699776, -0.05451378, -0.081534356, -0.09797831, 0.12554352, 0.08225622, -0.13640356, -0.05092915, 0.023493813, 0.04652237, 0.006903499, -0.007258014) * input_5(0.0, 1.0); + result += mat4(-0.13940647, -0.0132967355, 0.0200074, -0.13104509, -0.015466113, 0.106275134, -0.032275457, 0.0020729962, -0.06725989, 0.022580748, 0.033427894, -0.04669782, -0.082548685, -0.1103435, -0.058918916, -0.15202704) * input_5(1.0, -1.0); + result += mat4(0.17079489, 0.027290879, 0.11626604, 0.08942799, -0.008029953, -0.012760586, 0.0797279, -0.14161547, -0.013877905, -0.095341004, -0.09086294, 0.20528714, 0.36403745, 0.16095363, 0.4426239, 0.03823054) * input_5(1.0, 0.0); + result += mat4(-0.04377213, -0.039960343, 0.0143724615, -0.033592273, -0.07254312, -0.025080942, 0.034392495, 0.113566324, -0.05933823, -0.0050606714, 0.14590055, -0.15451817, -0.1414867, 0.262373, -0.17036106, -0.43245453) * input_5(1.0, 1.0); + result += mat4(-0.2589824, 0.04952642, -0.2841527, 0.21541674, -0.011955939, -0.020658644, -0.06530491, 0.07491886, -0.034972284, 0.1098528, -0.008680422, 0.01003548, 0.30852544, 0.09503381, 0.07656569, -0.5753448) * input_6(-1.0, -1.0); + result += mat4(0.34418833, 0.031942766, -0.10488689, -0.071978614, 0.12035369, 0.036375854, -0.0017307582, -0.17287958, 0.08236083, 0.2928525, 0.27813214, -0.12255506, 0.17678651, -0.08393704, 0.07164201, -0.01343574) * input_6(-1.0, 0.0); + result += mat4(-0.13872705, 0.08723904, 0.09419067, -0.056992117, -0.06109346, -0.053120196, 0.01875422, 0.09287027, 0.31797543, 0.2847051, 0.09987374, -0.42570472, 0.10849381, 0.11906136, 0.11057033, -0.07569047) * input_6(-1.0, 1.0); + result += mat4(-0.28075048, -0.1055997, 0.13759209, 0.06435005, -0.09171321, -0.088842854, -0.013821913, -0.17830268, -0.1385915, 0.0017949538, 0.057595488, 0.10602808, 0.0055039013, 0.08396729, -0.2297658, -0.020420173) * input_6(0.0, -1.0); + result += mat4(0.19974753, -0.12247642, -0.119679905, 0.31686586, 0.049299084, 0.03017076, 0.038394965, 0.23901233, -0.43894747, -0.1298564, 0.13733692, -0.3699002, -0.19328912, -0.3225574, -0.061589632, -0.19954647) * input_6(0.0, 0.0); + result += mat4(-0.021334952, -0.061139215, 0.08909002, 0.13526453, 0.009544907, 0.0048600086, -0.03437363, -0.064552315, -0.17390923, 0.40713078, -0.09566525, 0.15808581, -0.09064204, -0.018019328, -0.011472934, -0.15351002) * input_6(0.0, 1.0); + result += mat4(-0.120783925, 0.024768, 0.070422105, -0.45148635, 0.05873519, 0.06314654, 0.0924334, 0.10985576, 0.06591463, -0.003773815, 0.08718406, -0.0011529011, -0.024131948, 0.059761036, 0.07803757, -0.07944949) * input_6(1.0, -1.0); + result += mat4(0.3824607, 0.18447112, 0.20151713, -0.010998355, -0.025489546, -0.015068094, -0.019791989, -0.16187276, 0.57802474, -0.11281932, 0.28470883, -0.17770317, 0.08261482, -0.08904111, -0.044564776, -0.008905681) * input_6(1.0, 0.0); + result += mat4(-0.13502516, -0.09899421, -0.028118435, -0.014867483, -0.015887232, 0.014380562, -0.016452212, 0.015831659, 0.405073, 0.13867019, -0.019496417, -0.058620244, -0.14692095, -0.15630859, 0.05570708, 0.1548991) * input_6(1.0, 1.0); + result += mat4(-0.044499807, -0.08953863, -0.1366099, 0.16250671, -0.0010098894, 0.016590541, 0.060715403, 0.09264243, -0.18048277, -0.11375803, -0.034485064, 0.10088292, 0.03836924, 0.10315396, 0.12421059, -0.24962682) * input_7(-1.0, -1.0); + result += mat4(0.24773422, 0.16310203, 0.10492584, -0.238927, 0.10517772, 0.07211577, -0.05406632, 0.09825973, -0.0039302115, -0.207487, 0.050387282, 0.023140728, -0.03701477, 0.059539605, 0.092900574, 0.11723765) * input_7(-1.0, 0.0); + result += mat4(-0.11288664, -0.04100796, -0.039587356, 0.061025396, 0.12466426, -0.124004215, 0.0038879374, -0.040749345, 0.15466571, 0.15771797, 0.016516495, -0.18614669, -0.027637625, -0.10076655, -0.14209832, 0.07014587) * input_7(-1.0, 1.0); + result += mat4(-0.062440626, 0.0799096, 0.07466438, -0.18023317, -0.35990593, -0.022385376, -0.048077386, 0.04058029, -0.10438636, 0.110530816, -0.07782544, -0.32276732, 0.046934478, -0.03517908, -0.17893335, 0.39972293) * input_7(0.0, -1.0); + result += mat4(-0.11377825, -0.21132044, -0.07487251, 0.14771605, -0.18876582, 0.25286514, 0.046247374, 0.41134998, 0.07969574, -0.00044008036, -0.065815195, 0.22755547, -0.072481506, 0.07815297, 0.08694753, -0.21756189) * input_7(0.0, 0.0); + result += mat4(0.06701078, -0.013086583, -0.0015649116, 0.0061385124, -0.18803066, -0.2149202, 0.11710285, 0.16165335, 0.0025559512, -0.12495218, -0.1493437, -0.017887266, 0.05429559, 0.19254263, -0.072960876, -0.06796736) * input_7(0.0, 1.0); + result += mat4(0.050011657, -0.065292686, 0.024830882, 0.09620511, 0.073431835, -0.02840267, 0.11955058, 0.11210379, 0.079453446, -0.03246446, 0.014222617, 0.15479201, 0.014860827, 0.047199797, -0.007188175, -0.12319119) * input_7(1.0, -1.0); + result += mat4(-0.0024194643, 0.053861614, -0.019543355, -0.031988624, 0.08359253, -0.004027249, 0.53517336, 0.08221333, -0.043817326, 0.1987235, 0.099433795, -0.12965867, -0.12605055, -0.037262734, -0.064791255, 0.12184617) * input_7(1.0, 0.0); + result += mat4(-0.008335425, 0.041022263, -0.025815757, -0.07613163, -0.11903438, 0.016444163, 0.19346465, 0.22477233, -0.028427124, 0.042262077, 0.07027058, 0.11940143, 0.09845522, -0.12639488, 0.07024772, 0.041416682) * input_7(1.0, 1.0); + result += vec4(0.000611065, 0.05398721, 0.053072564, 0.043803673); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.06910252, -0.1097012, -0.20422788, 0.059626877, 0.007435803, -0.283094, -0.34628505, -0.015890338, -0.10925799, 0.28504688, 0.22020426, -0.06834025, 0.09613126, -0.03744848, 0.068718575, -0.016009554) * input_0(-1.0, -1.0); + result += mat4(0.16469637, 0.14726196, 0.028414616, 0.10075277, -0.14807968, 0.10934484, 0.12585595, 0.06670779, -0.010410372, -0.12077927, -0.03165795, -0.103779815, -0.013139022, 0.1147486, -0.14192836, -0.060569014) * input_0(-1.0, 0.0); + result += mat4(-0.2133204, -0.10711415, 0.217672, -0.2556041, 0.0001439741, -0.03353283, 0.110807374, -0.31426802, 0.1844311, -0.014002136, -0.23432574, 0.18157086, -0.1345779, -0.049828935, 0.14479361, 0.119233824) * input_0(-1.0, 1.0); + result += mat4(-0.061135907, -0.0028253254, 0.10115583, -0.0026015888, 0.03553038, 0.25724736, 0.041270934, 0.22738665, 0.22320321, -0.25990623, 0.086892344, 0.06469652, 0.08002807, -0.118457146, 0.19633372, 0.102998726) * input_0(0.0, -1.0); + result += mat4(-0.15265797, -0.09556629, -0.28845578, -0.17956032, 0.0095215235, 0.010853828, -0.19329076, -0.11267996, -0.12523726, 0.12622419, 0.10493389, 0.18010703, -0.17056537, -0.035543352, -0.090911895, -0.039763093) * input_0(0.0, 0.0); + result += mat4(0.2719371, 0.04331192, 0.01941085, 0.26655683, 0.3968822, 0.015376593, 0.055716358, 0.17348447, -0.3277862, 0.030675553, -0.107967, 0.0687732, -0.09502964, 0.025145328, 0.108435705, -0.048523363) * input_0(0.0, 1.0); + result += mat4(0.053286187, 0.11041384, 0.22861496, 0.07283555, -0.14783858, -0.09159162, 0.16729909, -0.06339171, -0.08398255, 0.028122023, -0.27201444, -0.13729839, -0.007935307, -0.20500861, 0.0774431, 0.08784072) * input_0(1.0, -1.0); + result += mat4(-0.06022721, -0.06244383, -0.21014832, -0.1651977, 0.05580307, -0.09223375, -0.087179676, -0.012855308, 0.07251286, -0.04445383, 0.1899448, 0.0087821465, -0.20903635, 0.08061573, -0.23603605, -0.063846715) * input_0(1.0, 0.0); + result += mat4(-0.053024672, 0.026570154, -0.014575976, 0.10073646, -0.2365016, 0.06607987, 0.056698117, -0.032801397, 0.12431902, 0.0064135306, 0.020361291, -0.09939075, 0.29358998, 0.045643687, 0.11266844, -0.06511873) * input_0(1.0, 1.0); + result += mat4(0.012062767, -0.08108668, 0.06681955, 0.0848324, 0.06256447, -0.21768197, -0.08779074, -0.147426, -0.0033113528, -0.2596788, -0.00873295, 0.087226294, 0.12426413, 0.15631594, 0.15679944, -0.15120715) * input_1(-1.0, -1.0); + result += mat4(-0.007861136, 0.037718635, 0.1062606, -0.013161694, -0.0955848, 0.13655402, -0.29114148, 0.12857766, -0.029857157, -0.03601411, 0.16118847, -0.14579605, 0.072069176, 0.029879788, 0.26345542, 0.040787756) * input_1(-1.0, 0.0); + result += mat4(-0.06619759, -0.0018288681, 0.07944584, -0.066923395, 0.02801363, -0.003848381, 0.38944238, 0.13201916, -0.17916085, 0.092431456, 0.17272332, 0.14862284, -0.07576936, 0.064161636, -0.28805378, 0.27912098) * input_1(-1.0, 1.0); + result += mat4(-0.0056554275, 0.04318024, -0.029292988, 0.045458056, -0.06639655, 0.1547858, -0.031274606, 0.063598104, -0.13310799, 0.14404976, -0.31763706, -0.11987374, 0.12605965, 0.08253081, -0.123482734, 0.07291622) * input_1(0.0, -1.0); + result += mat4(-0.07002837, -0.08542358, -0.2469542, -0.23845905, 0.2523242, -0.14425038, 0.2801007, 0.05540035, 0.3066567, 0.17573561, 0.11025364, -0.20254895, 0.085843116, -0.053525805, 0.39129657, 0.32633874) * input_1(0.0, 0.0); + result += mat4(0.23888157, -0.05661237, 0.06120375, 0.055212356, -0.21277174, 0.07737909, -0.23366329, -0.15151224, 0.33121642, -0.018195702, 0.0034561646, -0.67249906, -0.24632789, 0.077476956, -0.2730156, -0.74672294) * input_1(0.0, 1.0); + result += mat4(-0.030392209, -0.02299426, 0.07784455, -0.18727243, -0.045971002, 0.059982, 0.039764605, 0.1303481, -0.09318589, -0.024056928, -0.112527445, 0.30074325, -0.14993568, -0.22343126, -0.1638165, 0.22370657) * input_1(1.0, -1.0); + result += mat4(0.12875657, 0.01120127, 0.09185443, 0.12086374, 0.015081669, -0.0011756812, -0.022083294, -0.05469671, -0.050356604, -0.075628065, 0.30154404, 0.3180422, -0.33009, -0.07772273, 0.14074673, 0.19583072) * input_1(1.0, 0.0); + result += mat4(-0.1689017, 0.06726902, -0.11526408, 0.105525635, 0.056903183, -0.056897745, -0.050491363, -0.02991629, -0.13179642, -0.034494612, -0.3820758, 0.25639212, 0.41467214, -0.055586323, -0.12703046, -0.2188363) * input_1(1.0, 1.0); + result += mat4(-0.084560886, -0.40192515, -0.52402884, -0.022007147, 0.06900561, -0.1697154, -0.40362176, 0.035270162, 0.028811043, -0.3158461, 0.015038137, -0.2412749, -0.021911645, 0.018556926, 0.33869386, 0.01782784) * input_2(-1.0, -1.0); + result += mat4(-0.05848681, 0.063185476, 0.12708394, 0.29956344, 0.02642882, -0.07928399, -0.69060063, -0.17827171, 0.07446403, 0.0496882, -0.2425642, 0.15840982, -0.0035227577, -0.22004785, 0.11980609, -0.14535569) * input_2(-1.0, 0.0); + result += mat4(-0.21156521, 0.03484204, -0.13399954, 0.048471842, -0.06092913, -0.06665965, -0.013967869, 0.1844966, 0.08028712, 0.057745364, 0.28109014, 0.32110605, 0.13172767, -0.099182524, 0.4530284, -0.07667621) * input_2(-1.0, 1.0); + result += mat4(0.050548553, -0.96817476, 0.2617183, 0.15619391, 0.18753736, 0.014489969, -0.0035476054, -0.07856245, -0.08445963, 0.41385335, -0.21521132, -0.21921514, -0.0037334263, 0.4835521, -0.17735931, 0.18763061) * input_2(0.0, -1.0); + result += mat4(-0.44188192, 0.15351972, -0.16688326, -0.08434473, 0.47639653, -0.016025381, 0.16209154, 0.24578856, 0.4710568, -0.048887234, 0.39962292, 0.31240237, -0.03622371, -0.060701404, -0.027299555, 0.054183252) * input_2(0.0, 0.0); + result += mat4(0.42097777, -0.031783007, -0.13895552, 0.17492269, -0.38110292, -0.07948547, -0.017365498, -0.005367326, -0.5074955, 0.032016423, 0.055121955, -0.79339373, 0.17157704, 0.1917817, -0.09081089, -0.18804556) * input_2(0.0, 1.0); + result += mat4(-0.028073939, -0.35983384, 0.12879959, -0.043751553, -0.028450578, 0.08028655, -0.0460012, 0.06626751, 0.032636546, -0.15215707, -0.24142626, 0.4520995, -0.053053323, 0.18865108, -0.01641644, 0.13091576) * input_2(1.0, -1.0); + result += mat4(0.33650765, -0.05479069, -0.10771701, 0.1424964, -0.21772584, -0.01834186, 0.054587636, 0.19977416, -0.1683061, 0.028696535, 0.019524619, 0.21786752, -0.35323283, -0.17716314, -0.3792562, 0.062911384) * input_2(1.0, 0.0); + result += mat4(-0.1464005, -0.0011125853, 0.09408369, -0.011218571, 0.09511125, -0.14124884, -0.05576612, 0.07609472, 0.1551972, 0.060023945, -0.13396053, -0.03659976, 0.20022099, -0.24544713, -0.12332503, -0.04178435) * input_2(1.0, 1.0); + result += mat4(0.021665942, -0.010704941, 0.2927443, -0.11795625, 0.05686438, -0.16324522, -0.11838552, -0.049746104, 0.030807544, 0.03204371, -0.05452546, -0.0054111616, 0.029851105, -0.2679574, -0.6136908, -0.057750244) * input_3(-1.0, -1.0); + result += mat4(-0.07480867, -0.031341832, 0.17368081, 0.034439012, -0.01257401, 0.06530697, 0.043248277, -0.019143308, -0.032341518, -0.0015715054, 0.08090565, -0.05893278, -0.0070043113, 0.105988935, 0.09278817, 0.17892306) * input_3(-1.0, 0.0); + result += mat4(0.070839874, 0.059016127, 0.3123015, -0.17252283, 0.03703673, -0.17099665, 0.033789612, 0.030886363, -0.029229023, -0.02799637, -0.0019511647, 0.04950114, -0.059957016, 0.053929813, 0.34692532, -0.18711638) * input_3(-1.0, 1.0); + result += mat4(-0.13317494, 0.14819305, -0.18341112, 0.22094819, -0.104810454, 0.08113769, -0.07137177, -0.07015117, -0.053997796, -0.041861936, 0.009483881, 0.17320067, -0.16425048, 0.20845743, 0.1848981, -0.030175328) * input_3(0.0, -1.0); + result += mat4(-0.054201435, -0.0401659, -0.10192175, 0.047063157, -0.041239854, 0.15809526, 0.12713861, 0.07084212, 0.034851536, 0.079030946, 0.03600329, -0.06838259, 0.1241987, -0.008946598, -0.03490475, -0.046090484) * input_3(0.0, 0.0); + result += mat4(0.1340565, -0.010700414, -0.084272265, -0.2689095, 0.09334025, -0.061800927, -0.084401734, 0.11263672, 0.041613664, -0.043044, -0.023392303, -0.070224315, 0.1449949, -0.10076611, -0.11239515, 0.14951399) * input_3(0.0, 1.0); + result += mat4(0.03889649, 0.13912554, -0.21263678, 0.058068126, 0.08471625, 0.0702006, -0.0629188, 0.00868883, -0.017729366, -0.025754085, -0.010787396, -0.040352512, 0.031082844, -0.0267985, 0.31081438, 0.18133132) * input_3(1.0, -1.0); + result += mat4(0.08179664, -0.14798477, -0.08399663, 0.04786232, -0.04199882, -0.01004275, 0.13513218, -0.020033542, 0.0038685896, -0.03317292, 0.08800982, 0.14342615, 0.02836757, -0.07425736, -0.1993642, -0.17553681) * input_3(1.0, 0.0); + result += mat4(-0.1056705, 0.027977828, -0.16624036, 0.08593691, -0.022542365, -0.0042505856, 0.030029189, -0.011880791, 0.019226244, 0.025836637, -0.05941355, -0.022856066, -0.12005238, 0.0589549, -0.04088348, -0.03162918) * input_3(1.0, 1.0); + result += mat4(0.012589191, -0.07393301, -0.045594737, 0.005241847, -0.044162165, 0.22491188, 0.25151584, -0.018309198, 0.031134697, -0.15929472, 0.028038565, -0.22669137, -0.013502123, 0.06926103, -0.11755272, 0.033839036) * input_4(-1.0, -1.0); + result += mat4(-0.00819553, 0.13775782, -0.060561135, 0.059662268, -0.076808095, -0.12747313, 0.4100085, -0.28103215, -0.24683525, -0.0026039016, -0.3408976, 0.16680878, -0.086055785, -0.045051187, -0.19099641, -0.0025991113) * input_4(-1.0, 0.0); + result += mat4(-0.02191607, -0.046932902, 0.15409608, -0.0845287, 0.1700777, 0.009130951, -0.6870752, 0.35458767, 0.23944238, 0.08516781, 0.3345497, 0.07315294, 0.12447692, -0.048204143, 0.13400951, -0.057688918) * input_4(-1.0, 1.0); + result += mat4(-0.06297599, 0.018462032, 0.039665826, -0.1552491, 0.13145283, 0.08753336, -0.2097677, 0.20908453, 0.099266924, 0.20816399, -0.08230606, 0.0038940732, -0.017734066, -0.08746605, 0.08702357, -0.22951655) * input_4(0.0, -1.0); + result += mat4(-0.016383778, 0.0016800113, 0.017994326, 0.027381686, 0.01939577, 0.019697107, 0.15362382, 0.17068869, 0.2431891, -0.07582055, 0.25743774, 0.06541811, 0.055430193, 0.044920277, 0.0368584, 0.037992634) * input_4(0.0, 0.0); + result += mat4(0.06556405, 0.016293937, -0.057549257, 0.06297049, -0.11657259, -0.043725636, 0.1329288, -0.48003694, -0.4012964, -0.026148686, -0.20583363, 0.11869826, -0.09287815, -0.007516356, 0.0069160773, 0.309993) * input_4(0.0, 1.0); + result += mat4(0.06866154, 0.08324799, 0.0074658697, 0.09605963, -0.08933239, -0.32393077, -0.3405607, -0.28861865, -0.18083683, -0.008861688, -0.009565474, 0.11515776, 0.018489035, 0.07755784, 0.045529135, 0.11301848) * input_4(1.0, -1.0); + result += mat4(0.022514366, -0.103205815, -0.0691797, -0.13587691, 0.06154905, 0.19888158, 0.29042125, 0.35058567, 0.15008026, 0.021044556, -0.051142044, -0.06864199, 0.06753836, -0.06443593, -0.05550171, -0.09157098) * input_4(1.0, 0.0); + result += mat4(-0.02676455, 0.048055965, 0.02707836, 0.060288157, 0.017417416, 0.02207772, -0.048125524, -0.050904986, 0.06493494, -0.037593145, 0.09021098, -0.2514511, -0.05130079, 0.006689979, 0.031800944, -0.119312085) * input_4(1.0, 1.0); + result += mat4(0.081429295, 0.048953857, 0.02167362, -0.01668891, -0.05992752, -0.16127558, -0.0657509, -0.22428842, 0.069210075, -0.04954886, -0.11423861, 0.19444087, -0.06721798, 0.22972222, 0.024259666, 0.08834858) * input_5(-1.0, -1.0); + result += mat4(-0.037524294, -0.018977955, -0.119030125, 0.14691332, 0.027026726, 0.07812047, -0.08744757, 0.07471467, 0.075377166, 0.06672146, -0.051026363, 0.05198013, 0.07753151, -0.07723627, 0.3911822, -0.1832131) * input_5(-1.0, 0.0); + result += mat4(0.10978623, -0.029402085, 0.17893699, -0.004274521, -0.013957171, 0.059878998, 0.14410919, 0.22395886, -0.13764, -0.07133994, 0.17114559, -0.21100746, -0.062930584, 0.07188192, -0.54580283, 0.008167871) * input_5(-1.0, 1.0); + result += mat4(-0.027997216, 0.012963605, 0.097834885, -0.112216994, 0.0039557447, 0.16189058, -0.08683266, 0.14860885, -0.12926292, -0.069762714, 0.08601601, -0.09488108, 0.062855326, -0.12394039, -0.090313725, 0.20422499) * input_5(0.0, -1.0); + result += mat4(-0.12303376, 0.009452715, -0.08850839, 0.1148403, 0.1811609, -0.06951495, 0.24876826, 0.029392762, -0.10626232, -0.032807805, -0.23449174, -0.0801213, -0.25378442, 0.08728232, 0.18345203, -0.0894394) * input_5(0.0, 0.0); + result += mat4(0.06887773, 0.00280273, 0.088223144, 0.18054913, -0.13537456, 0.042641625, -0.19092342, -0.26840767, 0.27120826, 0.04363988, 0.042005908, 0.22853084, 0.30807662, -0.038983952, 0.08363448, -0.25075167) * input_5(0.0, 1.0); + result += mat4(0.08532914, -0.0075488933, -0.17563088, -0.16848731, -0.07394561, -0.0019041079, -0.092683, 0.028779143, 0.06886272, 0.0721454, 0.12494651, -0.01940258, -0.018139768, -0.22635183, -0.14025632, -0.25871983) * input_5(1.0, -1.0); + result += mat4(-0.029783068, -0.07668075, -0.09089144, 0.002417271, -0.06343771, 0.020918988, 0.12054223, 0.075315446, 0.031930413, -0.07380357, 0.0033554283, -0.068069085, -0.09994025, 0.06452116, 0.43575248, 0.30215368) * input_5(1.0, 0.0); + result += mat4(-0.058426395, 0.022816781, 0.06659414, -0.114962734, 0.12056706, -0.09910054, -0.060632594, -0.089573234, -0.15258545, 0.020952983, -0.092544965, 0.16151942, -0.0242699, -0.06552303, -0.3102041, -0.010964843) * input_5(1.0, 1.0); + result += mat4(-0.04155972, -0.12320328, -0.21289866, -0.31234914, -0.08156104, 0.022488361, 0.16768864, 0.04312316, 0.022189412, 0.027009467, -0.06555318, -0.01131164, 0.055925086, -0.3449592, 0.15219311, -0.024268577) * input_6(-1.0, -1.0); + result += mat4(-0.004479104, 0.05918655, 0.3485234, 0.15001512, 0.047710966, 0.011223501, 0.21553671, -0.03096737, -0.06482073, -0.10418176, 0.40315646, 0.084281325, -0.15886293, -0.024382403, 0.16813402, 0.22515304) * input_6(-1.0, 0.0); + result += mat4(0.15500036, 0.05196686, -0.0780061, -0.05006322, -0.0090659335, -0.0019713675, -0.2833645, 0.053034388, 0.11834908, -0.023469495, -0.050547827, -0.22832102, -0.011117925, 0.038793303, 0.3737488, 0.012466793) * input_6(-1.0, 1.0); + result += mat4(0.035997458, 0.5283926, -0.31074452, 0.39382443, -0.012290352, 0.06749762, -0.19800639, 0.10110035, 0.04568335, -0.06551524, 0.16052227, 0.01537737, -0.084778294, -0.34642306, -0.034804784, 0.013547702) * input_6(0.0, -1.0); + result += mat4(0.26336825, -0.18540668, 0.42350015, 0.2044358, 0.036459193, -0.0029788546, 0.04421585, 0.07089341, -0.28409648, 0.014473834, -0.1243949, 0.01118178, -0.0043986314, 0.046494637, -0.017572837, -0.017043099) * input_6(0.0, 0.0); + result += mat4(0.03171619, 0.04495114, -0.32511503, -0.020892888, -0.003164805, -0.057538636, 0.04075281, -0.346158, 0.675373, -0.14019102, 0.059634417, 0.36346194, -0.01997738, -0.033783287, -0.18784223, -0.21845397) * input_6(0.0, 1.0); + result += mat4(-0.0912348, -0.28631294, -0.1892733, -0.15214597, 0.08865375, -0.16003314, -0.12701078, -0.052112393, -0.08819109, 0.07053603, -0.02371743, 0.0012922175, 0.11546569, 0.069369845, -0.056432117, 0.050625924) * input_6(1.0, -1.0); + result += mat4(-0.14477484, -0.105140075, 0.22673798, 0.13889982, -0.102576986, 0.021251382, 0.05483641, 0.05145418, -0.060448278, -0.018448696, 0.057053313, 0.0953081, 0.3662804, -0.009308318, 0.12995149, 0.020935865) * input_6(1.0, 0.0); + result += mat4(-0.21562506, 0.07051978, 0.008477662, -0.21203049, 0.045037143, 0.070309386, 0.022020819, 0.11308679, -0.31756872, -0.017413141, 0.037268374, 0.2761623, -0.062327735, -0.063346356, -0.08518987, -0.07595932) * input_6(1.0, 1.0); + result += mat4(-0.028281556, 0.16516715, 0.105264075, 0.11980057, -0.002348355, -0.0034093792, 0.23094305, 0.025218146, 0.03854418, 0.2008329, 0.50188684, 0.16384551, 0.036436398, -0.26520786, 0.09050414, 0.0619869) * input_7(-1.0, -1.0); + result += mat4(-0.047787536, -0.07054706, 0.24567439, -0.039236773, -0.06952338, 0.104438365, -0.19068481, -0.038179684, 0.07929892, -0.028614359, -0.061376717, -0.12862198, 0.041330192, 0.18552665, -0.03676231, 0.008488763) * input_7(-1.0, 0.0); + result += mat4(0.08105171, -0.08007018, -0.37922743, -0.11370478, 0.039954253, -0.01024496, 0.27808303, 0.09012736, 0.019298127, -0.053707443, -0.29315472, 0.30771387, -0.08784555, -0.011704965, 0.2997058, -0.07467144) * input_7(-1.0, 1.0); + result += mat4(-0.01870222, -0.17358011, -0.07664475, 0.060753115, 0.0642972, 0.086064644, -0.31648025, -0.058315247, 0.10178442, 0.054185055, -0.19627997, -0.3343315, -0.066491984, 0.06266386, -0.03620067, 0.08619585) * input_7(0.0, -1.0); + result += mat4(-0.076793365, 0.06308407, 0.08397913, -0.034873955, 0.03120815, -0.27605757, 0.22247474, 0.20595083, -0.039238356, 0.026831051, 0.19107124, 0.043856993, 0.018169438, -0.12352474, -0.32642418, -0.18796) * input_7(0.0, 0.0); + result += mat4(0.05961813, 0.04511052, 0.13905278, -0.07838024, -0.30312288, -0.024115155, -0.25720873, -0.44496092, -0.30811122, -0.1158613, 0.13139217, -0.37116182, 0.18368877, -0.013586206, 0.10060901, 0.17624736) * input_7(0.0, 1.0); + result += mat4(0.060264066, -0.00012618053, -0.1133861, -0.12952381, -0.07646484, 0.09638247, -0.045036893, -0.074802086, 0.004167429, -0.0066796895, -0.2447573, 0.1813792, 0.05948307, 0.14088646, 0.17948367, -0.08998738) * input_7(1.0, -1.0); + result += mat4(0.023280364, 0.015395892, 0.008829807, 0.041267972, -0.30370933, -0.09200187, -0.023070961, -0.033179298, -0.177454, 0.079922505, -0.06962448, 0.22670977, 0.03280454, -0.16121139, -0.10074554, -0.035926312) * input_7(1.0, 0.0); + result += mat4(-0.07960071, 0.0033623131, -0.0049114153, 0.08701427, 0.7424499, 0.0071778907, -0.099031225, -0.4040293, 0.3270101, -0.1046336, 0.022643387, -0.08116862, -0.110115506, 0.031941373, 0.048548777, 0.18483505) * input_7(1.0, 1.0); + result += vec4(-0.022976195, 0.074414924, -0.03858113, -0.032336008); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf4 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.093764715, 0.050713334, 0.033956796, -0.016189104, 0.04765415, 0.07185558, -0.09195524, 0.024401365, 0.08325747, -0.13665564, -0.05496594, -0.038160633, -0.16851732, 0.22653529, 0.22641318, 0.0030524724) * input_0(-1.0, -1.0); + result += mat4(0.26923776, -0.04184679, -0.13560277, -0.20076843, -0.19319794, -0.058835704, 0.16706873, 0.007831285, -0.15665707, 0.05936252, 0.024467032, 0.103841886, 0.045312896, -0.03424741, -0.13892807, 0.02505981) * input_0(-1.0, 0.0); + result += mat4(-0.35743988, 0.014553778, 0.16447271, 0.20086817, -0.6177149, 0.13473228, 0.20331879, 0.20004196, 0.49911112, -0.04358017, -0.20754883, -0.10628848, 0.11122914, -0.06679465, 0.07141081, -0.11593061) * input_0(-1.0, 1.0); + result += mat4(-0.035450317, 0.06244748, -0.025230618, 0.031095434, 0.2339592, -0.20670602, -0.37498918, 0.06912399, -0.28557277, 0.08928056, 0.24471223, -0.18583927, 0.22680527, -0.16872019, 0.2088172, 0.2524709) * input_0(0.0, -1.0); + result += mat4(-0.16985628, -0.060968976, 0.20525019, 0.23600018, 0.13899292, -0.008539538, 0.14655502, 0.11628443, 0.1288315, -0.021038888, -0.15714906, -0.025181714, -0.1751782, 0.19832721, -0.03212594, 0.3706526) * input_0(0.0, 0.0); + result += mat4(0.4692278, -0.073641956, -0.267635, -0.20827213, 0.71724683, -0.17741914, -0.07971626, -0.038563624, -0.5012401, 0.08115489, 0.14370146, 0.12153387, -0.16158997, -0.017692562, -0.073138334, 0.16561663) * input_0(0.0, 1.0); + result += mat4(0.18565649, -0.13531889, -0.10557117, -0.03185912, -0.027010338, 0.16097078, -0.115382195, -0.07932474, 0.076185115, 0.07408883, 0.02344897, 0.18820629, 0.120513946, 0.15714103, 0.07824601, 0.4940417) * input_0(1.0, -1.0); + result += mat4(-0.1206614, 0.124701284, -0.014711994, -0.024204258, -0.06806688, 0.1134876, 0.1801794, -0.047733653, 0.12195648, -0.08116741, -0.08133543, -0.03957523, -0.034517437, 0.025342576, -0.24126616, 0.713535) * input_0(1.0, 0.0); + result += mat4(-0.105219446, 0.041310526, 0.031019676, 0.05459069, -0.27020538, -0.022502817, -0.09251673, -0.16091774, 0.074582875, 0.0036647902, 0.1062667, -0.060343534, 0.1474028, -0.116844915, 0.027014682, 0.30983764) * input_0(1.0, 1.0); + result += mat4(-0.088118486, 0.001607218, 0.014076103, 0.0014343682, -0.06218688, 0.027395612, 0.13111554, -0.104023896, -0.081187, -0.029177103, -0.0029972128, -0.026372036, 0.030797588, -0.292289, -0.12688608, -0.054329593) * input_1(-1.0, -1.0); + result += mat4(0.19955063, 0.07059888, -0.0058955317, -0.09120974, -0.005764856, 0.043988552, -0.028601594, 0.13768734, 0.11805065, -0.048890263, -0.062961616, 0.12191451, 0.35715663, 0.008091554, -0.08698916, -0.05593846) * input_1(-1.0, 0.0); + result += mat4(-0.33912307, -0.04636811, 0.046666298, 0.047651384, 0.12687442, -0.048119914, -0.06336625, -0.03604097, -0.35814568, 0.05634828, 0.13256158, 0.0343589, 0.084441274, -0.05566541, 0.033551637, 0.090249814) * input_1(-1.0, 1.0); + result += mat4(-0.002754051, 0.1852213, 0.025469711, 0.05336077, 0.28885192, 0.10684235, -0.11309274, 0.2715434, 0.2995314, 0.16253644, -0.26709276, 0.21174131, 0.012249938, -0.038133577, -0.028183816, -0.029696597) * input_1(0.0, -1.0); + result += mat4(-0.0133038545, -0.22260553, 0.022173865, 0.18249628, -0.14452238, -0.06281275, -0.047421124, -0.32565486, -0.17684667, -0.0038735347, 0.11669851, -0.14418952, -0.087833904, 0.21710014, -0.0934037, 0.03922224) * input_1(0.0, 0.0); + result += mat4(0.23593675, 0.074197605, -0.0025997562, -0.15414287, -0.17383303, 0.06381706, 0.1336693, 0.04991791, 0.21556325, -0.061666586, 0.060787924, -0.08566618, -0.53703475, -0.00011929817, -0.00089820113, -0.14223754) * input_1(0.0, 1.0); + result += mat4(0.050854955, -0.14747067, -0.026892768, -0.042576805, -0.17318635, 0.016435847, 0.03380774, -0.13910824, -0.031396884, -0.078188255, 0.027540479, -0.18314862, 0.04291332, 0.21740946, 0.064409144, -0.015669541) * input_1(1.0, -1.0); + result += mat4(-0.09769296, 0.18049233, 0.04653219, -0.06354036, 0.08696545, -0.045393374, 0.13811496, 0.14186473, 0.06327473, 0.03941367, 0.010642314, 0.113682985, -0.014103633, -0.02279731, -0.13151619, 0.3140437) * input_1(1.0, 0.0); + result += mat4(0.018069113, -0.0038748635, -0.011541482, 0.092902154, 0.09999929, -0.005748395, -0.045999717, 0.013624461, -0.0932477, -0.022734126, -0.032358836, -0.011581362, 0.0693256, -0.0028031718, 0.32946494, -0.1571978) * input_1(1.0, 1.0); + result += mat4(-0.31245223, 0.055390876, 0.25477648, -0.07586584, 0.07663177, 0.046933945, -0.008643806, 0.0016005198, 0.066229485, 0.18785553, 0.12918751, 0.054590285, 0.14896038, -0.02194897, -0.11544943, -0.16275416) * input_2(-1.0, -1.0); + result += mat4(0.013450872, -0.009587673, 0.07448009, -0.054590628, -0.06434486, -0.09721189, -0.14964868, -0.019023852, 0.08606865, -0.032609988, -0.22048411, -0.048064545, -0.027910523, -0.05145645, 0.17167321, -0.12588225) * input_2(-1.0, 0.0); + result += mat4(-0.048346482, 0.044076987, -0.014114775, 0.04353552, -0.1846022, 0.048995517, 0.034414444, 0.0011747543, 0.36999518, -0.057350766, 0.046638, -0.024378574, -0.094471335, -0.037777785, 0.27070662, -0.10478558) * input_2(-1.0, 1.0); + result += mat4(-0.5726193, 0.7065411, 0.8775356, 0.044371642, 0.19312418, -0.2985802, -0.08007145, 0.03144885, 0.34900105, -0.19454515, -0.30011094, 0.1622907, 0.34058276, -0.32558563, -0.5421652, -0.08393508) * input_2(0.0, -1.0); + result += mat4(-0.07657236, -0.28873223, -0.18500578, -0.19331032, 0.052453775, 0.25891683, 0.23317571, -0.3725159, -0.22224045, 0.09986679, 0.07544103, -0.3135361, -0.009458813, 0.09966326, 0.15942411, 0.36558494) * input_2(0.0, 0.0); + result += mat4(0.30821678, 0.03667124, 0.07366884, -0.080876306, -0.17828675, 0.022127543, -0.032016445, -0.10873352, -0.61719215, 0.14756632, 0.059581354, 0.038063023, 0.03795097, -0.108817205, -0.015525865, -0.04591812) * input_2(0.0, 1.0); + result += mat4(0.11855966, 0.26698685, 0.40358037, 0.19478333, -0.006499883, 0.083733946, -0.17298202, 0.09373736, -0.021430144, -0.0059043537, 0.0928047, -0.17776036, -0.07234987, 0.112757914, -0.32422182, -0.23844577) * input_2(1.0, -1.0); + result += mat4(0.06478474, -0.045692008, -0.13466708, -0.5095754, 0.21583232, 0.0100378785, -0.14470944, 0.39646932, -0.007848904, -0.04524511, -0.040721595, 0.26748332, -0.10359112, 0.30614084, 0.089003816, 0.48561117) * input_2(1.0, 0.0); + result += mat4(-0.046068575, 0.05706076, -0.15288815, 0.059110105, -0.017713705, 0.13246426, -0.0835944, 0.08455771, 0.1254861, -0.12605335, 0.14355414, 0.046541058, -0.23042676, 0.014263599, 0.09318368, -0.051447418) * input_2(1.0, 1.0); + result += mat4(0.07724293, -0.059491605, 0.021237608, -0.10305286, -0.06459998, 0.005496691, 0.07434684, 0.15738083, 0.082293294, -0.011101099, 0.013380403, -0.040352955, 0.04031784, 0.09281702, 0.08773014, -0.04295406) * input_3(-1.0, -1.0); + result += mat4(-0.18768777, 0.07119379, 0.19211707, 0.12056842, -0.018395696, 0.015189454, -0.0357086, 0.016825696, -0.06843026, -0.010479299, -0.00066744076, -0.028079525, -0.08989268, -0.012922675, -0.08318487, 0.027462743) * input_3(-1.0, 0.0); + result += mat4(0.2474239, -0.084932126, -0.07544218, 0.005728983, -0.056356374, -0.009745524, 0.063676745, -0.07026239, -0.07749005, 0.034661777, -0.0152146, 0.050476708, -0.1536689, 0.044089098, 0.1993969, 0.032419253) * input_3(-1.0, 1.0); + result += mat4(-0.034392484, 0.040873706, -0.23825134, 0.06258418, 0.040543254, -0.12535694, -0.07649431, 0.30837497, 0.056856934, -0.1002077, -0.025903525, 0.01342116, 0.13769212, -0.12603, -0.16531706, 0.17019083) * input_3(0.0, -1.0); + result += mat4(0.028997466, -0.055375632, 0.019606793, 0.1143273, 0.1144138, 0.040407456, -0.08265141, 0.24084927, -0.07989537, 0.121873096, -0.008818001, 0.09239443, -0.041747447, 0.061132845, 0.12778327, -0.11542654) * input_3(0.0, 0.0); + result += mat4(0.067010425, 0.051408794, -0.01673417, 0.102843754, 0.07403953, 0.011537413, 0.07168512, 0.21488312, 0.036620308, -0.018025953, 0.055976562, -0.11009984, 0.35346967, -0.051142283, -0.12852548, -0.032299664) * input_3(0.0, 1.0); + result += mat4(0.012140443, -0.0688524, 0.068580136, -0.19142579, -0.11300893, -0.0044053635, -0.07223068, 0.2508731, -0.161216, 0.12250946, 0.004657391, 0.0012444942, -0.06167323, 0.05337149, 0.018025782, -0.112158425) * input_3(1.0, -1.0); + result += mat4(-0.19411176, 0.13957559, 0.077013254, 0.0060965717, 0.0024566585, -0.02549439, 0.020952318, 0.24465246, 0.11932663, -0.08727734, 0.002104769, -0.078459784, 0.005438336, -0.041773107, 0.1352454, 0.015550662) * input_3(1.0, 0.0); + result += mat4(0.012501003, -0.047420576, -0.02663372, -0.120489806, -0.006213797, 0.043448124, 0.08063614, 0.09143895, -0.012834213, 0.021321794, -0.01466014, 0.077928446, -0.123632245, 0.016570218, -0.12827772, 0.017249394) * input_3(1.0, 1.0); + result += mat4(-0.01695016, -0.044860248, -0.0025447207, -0.0033721894, 0.03794414, -0.03741548, -0.106559664, 0.13244416, 0.009659453, 0.069546744, 0.047286056, -0.042620797, 0.040820464, -0.071149096, -0.07895959, -0.077090934) * input_4(-1.0, -1.0); + result += mat4(0.123273544, 0.045627095, -0.00776342, 0.013358849, -0.22777613, -0.028324299, 0.09908202, -0.093880326, -0.22276685, -0.010813641, 0.058592163, 0.23581989, -0.114025556, 0.045122042, 0.08633687, 0.17834873) * input_4(-1.0, 0.0); + result += mat4(-0.09450861, -0.005889983, 0.04027041, 0.02103451, 0.32919878, -0.014264106, -0.12562394, -0.068246216, 0.38321579, -0.045053024, -0.16085897, -0.14415547, 0.12914816, 0.023874499, -0.058859706, -0.07256495) * input_4(-1.0, 1.0); + result += mat4(-6.369276e-05, 0.122896604, 0.03390538, 0.025482789, 0.22110175, -0.23262766, -0.014616553, -0.22819632, 0.0032694302, 0.010241074, -0.05331402, 0.10173534, -0.21777445, 0.12000071, 0.10656027, 0.02534771) * input_4(0.0, -1.0); + result += mat4(-0.08068292, -0.063205995, 0.012206776, 0.024614315, -0.02479621, 0.16196235, -0.12738264, 0.10013441, 0.16559547, -0.0860675, -0.11220995, -0.42506957, 0.15087533, -0.115971215, -0.10706183, -0.05999414) * input_4(0.0, 0.0); + result += mat4(0.09032027, -0.07546763, -0.06076016, -0.022654606, -0.4567004, 0.08933491, 0.19735153, 0.06564619, -0.2717399, 0.09669576, 0.10750377, 0.2595344, -0.016741216, 0.00850958, 0.061465796, 0.06215567) * input_4(0.0, 1.0); + result += mat4(0.05532097, -0.11704193, -0.060829286, 0.0073420475, -0.3125405, 0.20396765, 0.1937797, 0.066604055, 0.009137134, -0.08870493, 0.004709459, -0.06504974, 0.13589615, -0.07830201, -0.017309677, 0.054595917) * input_4(1.0, -1.0); + result += mat4(-0.0912731, 0.035236273, 0.030376097, -0.044272732, 0.37215456, -0.12563305, -0.17381093, 0.012609883, -0.05932314, -0.0070606824, 0.054845713, 0.12681356, -0.06342367, 0.025911653, 0.08147091, -0.08553698) * input_4(1.0, 0.0); + result += mat4(-0.02358761, 0.06942499, 0.037080377, 0.03718105, 0.0472547, -0.15099253, 0.01937429, -0.06533642, 0.042556174, -0.020418521, -0.007409331, -0.069612525, -0.030778483, 0.031350162, -0.0193607, 0.04492902) * input_4(1.0, 1.0); + result += mat4(0.28047004, -0.24653271, -0.026664972, 0.014257738, -0.02247843, 0.090850465, 0.102313295, -0.07839706, 0.06574061, 0.022516051, 0.01053083, 0.020001432, 0.10458318, -0.04162115, -0.019937731, 0.06710542) * input_5(-1.0, -1.0); + result += mat4(-0.07756068, 0.042769164, 0.021173012, 0.03959646, -0.097968295, -0.15865198, -0.044040985, 0.052729454, 0.121917866, -0.060950443, -0.07873696, -0.049995415, 0.073568426, -0.028240664, -0.04369399, -0.26543266) * input_5(-1.0, 0.0); + result += mat4(0.054963622, 0.030835489, 0.018765671, -0.108741686, 0.15433057, 0.049926154, -0.06435778, -0.03471973, -0.3464282, 0.065557964, 0.19616683, 0.0580641, -0.2776286, 0.008324054, 0.0628188, 0.1217788) * input_5(-1.0, 1.0); + result += mat4(-0.2701078, 0.19506466, -0.08032663, -0.07663112, 0.27574483, -0.26887304, -0.22607304, 0.13877113, -0.117416404, 0.07454135, 0.014771237, 0.0141154155, 0.024610184, -0.24823047, -0.033988703, -0.256011) * input_5(0.0, -1.0); + result += mat4(-0.062493574, -0.03883602, 0.021918718, 0.1097154, -0.11647801, 0.2770398, 0.020851389, -0.22154535, -0.059218947, -0.034516975, 0.19569646, 0.12174018, -0.23992442, 0.2516056, 0.07003184, 0.52348137) * input_5(0.0, 0.0); + result += mat4(-0.021140613, -0.059907418, -0.021508386, 0.025586283, -0.10624573, 0.034781985, 0.15030499, 0.042979054, 0.41044992, -0.09296142, -0.23703049, -0.083565064, 0.18606502, -0.09235984, -0.029007547, -0.22752464) * input_5(0.0, 1.0); + result += mat4(0.09988215, -0.053842302, -0.011039721, 0.054449067, -0.23391278, 0.13810098, 0.13145718, -0.104482666, 0.09822747, -0.09406857, -0.049787015, 0.00029046266, -0.17222121, 0.20103177, 0.08695088, 0.11310003) * input_5(1.0, -1.0); + result += mat4(0.06658675, 0.12043663, 0.060016487, -0.06484437, 0.2132878, -0.1261376, -0.01703472, 0.1091699, -0.08611559, 0.11617047, 0.017180432, -0.06257204, 0.38528243, -0.013585243, -0.20118032, -0.03313583) * input_5(1.0, 0.0); + result += mat4(-0.053221073, -0.023726929, 0.03241072, 0.084926344, -0.0021747807, -0.021329492, -0.069184475, 0.0031915712, -0.0407165, 0.031229144, 0.020875834, 0.037986323, -0.14021342, 0.0107750315, 0.15765476, -0.08300923) * input_5(1.0, 1.0); + result += mat4(0.05374306, -0.16991097, 0.056450605, 0.07484636, -0.014085469, 0.010540535, 0.0053510056, 0.11088677, -0.110241264, -0.14301723, -0.0013991012, -0.04957387, -0.10136386, -0.047457576, -0.07532082, -0.058465835) * input_6(-1.0, -1.0); + result += mat4(-0.13566142, -0.03062453, 0.008534041, -0.037557963, 0.07540567, -0.04361079, -0.0729925, -0.17405686, -0.24929829, -0.12426249, 0.31069332, 0.04644391, -0.04569079, 0.1739852, 0.21218783, 0.023854211) * input_6(-1.0, 0.0); + result += mat4(0.12230793, -0.015091548, -0.069621414, -0.010936645, -0.018800797, 0.007552498, 0.055561144, 0.09085503, 0.10251702, 0.021701721, 0.079920806, 0.008089976, -0.08295283, 0.017217804, -0.1277883, 0.054350343) * input_6(-1.0, 1.0); + result += mat4(0.27075297, -0.1915445, -0.5476593, -0.17671652, 0.12599105, -0.02290531, -0.025108688, -0.04465408, 0.05035619, 0.13784355, -0.07626139, -0.0911801, -0.40361667, 0.4897229, 0.5316902, -0.1836737) * input_6(0.0, -1.0); + result += mat4(-0.16061081, 0.17277357, -0.02564784, 0.16389786, -0.09756764, 0.11652394, 0.07043916, 0.14130098, 0.062161837, -0.30799934, -0.18256389, -0.1333365, -0.22346446, 0.097727366, -0.061844528, -0.21195634) * input_6(0.0, 0.0); + result += mat4(-0.064742595, 0.040229168, 0.16227937, -0.05460539, -0.05272649, -0.06829532, -0.044750355, -0.12637492, 0.5613382, 0.029460032, 0.0944874, 0.10225949, -0.13993444, -0.26471946, 0.19378544, -0.19755915) * input_6(0.0, 1.0); + result += mat4(-0.090184025, 0.22966537, 0.22694287, -0.029921355, -0.0905293, -0.015429052, 0.06604995, -0.06897798, 0.07582127, 0.12578596, -0.041191332, -0.0449238, 0.066105634, -0.025794165, 0.09862683, -0.36677235) * input_6(1.0, -1.0); + result += mat4(0.22745727, 0.0070543704, 0.083417624, 0.06849427, 0.09501999, -0.0757021, -0.06250915, 0.025485784, 0.1742553, -0.11792345, -0.10183217, -0.48360983, 0.101415865, 0.13941072, -0.0056769275, -0.5352187) * input_6(1.0, 0.0); + result += mat4(-0.18247083, -0.07767963, 0.030503508, 0.02659103, 0.074594416, 0.063376, 0.035353523, 0.038654417, 0.018152975, -0.010892081, -0.21429347, -0.069971144, -0.1858341, 0.003723928, 0.059673335, -0.4195044) * input_6(1.0, 1.0); + result += mat4(0.074536376, -0.012170375, -0.027730942, 0.062841326, 0.031382542, -0.08447983, -0.1717351, 0.007524958, 0.14012086, 0.017950391, -0.029409176, 0.07061884, -0.098217085, 0.08403113, 0.060492493, 0.08117441) * input_7(-1.0, -1.0); + result += mat4(0.11111461, -0.0099897105, 0.005807636, -0.12640694, 0.15586333, 0.10432589, -0.055606138, 0.16662154, 0.20665796, -0.04437357, -0.14077483, -0.085028455, 0.004402537, 0.023492372, 0.06678654, -0.08140131) * input_7(-1.0, 0.0); + result += mat4(-0.09473722, -0.07665322, -0.024266783, 0.029115736, 0.0010646507, 0.073178835, 0.016267825, -0.03500172, 0.2350404, -0.097189635, 0.14018731, -0.006332469, -0.17161085, 0.022626538, 0.045467526, 0.037508145) * input_7(-1.0, 1.0); + result += mat4(-0.12843083, 0.047525655, 0.0879841, -0.12666167, 0.07186083, -0.19613156, 0.03645046, 0.07474281, 0.040512905, -0.11446204, 0.016060758, -0.055778317, 0.15078226, 0.11520968, -0.082031965, 0.029841697) * input_7(0.0, -1.0); + result += mat4(-0.027464345, 0.016716408, -0.016969485, 0.22249763, -0.18508829, 0.28917825, 0.11187046, 0.32931662, -0.14189315, 0.28611708, -0.0611887, -0.029754594, -0.04200727, -0.0898197, 0.10523504, 0.057114705) * input_7(0.0, 0.0); + result += mat4(0.02195489, -0.047593076, 0.03916434, -0.09287482, -0.43813753, 0.07057629, 0.058680132, 0.04777381, -0.56641316, -0.071291596, -0.016598307, 0.09169848, 0.20081072, -0.044110622, 0.021261537, -0.045741174) * input_7(0.0, 1.0); + result += mat4(0.0555387, -0.0048289, 0.03872538, 0.0645247, -0.04771113, 0.11974855, -0.1622737, 0.24553423, -0.036272176, -0.114296585, -0.03865162, -0.014590993, -0.06170579, -0.11417342, 0.034851335, -0.066974364) * input_7(1.0, -1.0); + result += mat4(-0.0026296, 0.01233885, -0.07740378, -0.06250523, -0.15154833, 0.0058889305, -0.23909162, 0.78924465, 0.043393463, 0.071871705, -0.030986093, 0.19292858, -0.1141414, 0.09708501, 0.007995472, 0.031714432) * input_7(1.0, 0.0); + result += mat4(0.02807618, 0.046431582, 0.027995085, 0.06661269, -0.21327996, 0.16042055, -0.15302502, -0.097508214, 0.1932718, -0.029442333, 0.19665144, -0.13380413, -0.053128377, 0.047629517, -0.018946514, 0.0060695233) * input_7(1.0, 1.0); + result += vec4(0.03009128, -0.00620691, -0.0031199204, -1.5453606); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf5 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.024378961, 0.07052093, 0.1982561, -0.0068498417, 0.042173084, 0.20174538, 0.0987851, -3.1336007e-05, 0.015399924, -0.19912542, 0.003997665, 0.00737168, 0.0362981, -0.100425966, -0.05387937, 0.0020344253) * input_0(-1.0, -1.0); + result += mat4(0.05878822, -0.25417402, -0.000513415, -0.024560878, -0.08118734, -0.3927771, -0.28632942, 0.043375712, 0.07594874, 0.24072497, 0.19769396, 0.04500858, -0.019162688, 0.051539488, -0.05085399, -0.11793989) * input_0(-1.0, 0.0); + result += mat4(-0.04096541, 0.11300186, -0.089747645, 0.0010819805, 0.01730665, 0.27587974, 0.36795175, -0.023115147, -0.12661959, -0.3893689, -0.21295376, 0.044129577, -0.026810076, -0.014559444, -0.13426568, 0.021113696) * input_0(-1.0, 1.0); + result += mat4(0.0108531425, -0.21715212, 0.0011292705, 0.040911674, 0.0003254568, -0.34792143, -0.1735598, 0.16183768, 0.06282085, 0.5182775, 0.0840032, -0.26905587, -0.13828374, 0.11358068, -0.031194692, -0.07415619) * input_0(0.0, -1.0); + result += mat4(-0.087375775, 0.25184104, 0.14111517, -0.07114833, 0.14443173, -0.02183634, 0.29073992, 0.09149492, -0.08136873, -0.07394235, -0.30941686, 0.033265743, -0.0017839619, 0.08755218, -0.20585558, -0.056923155) * input_0(0.0, 0.0); + result += mat4(0.11505445, -0.22537395, -0.19765046, -0.0078035924, 0.09846644, -0.24031846, -0.42768574, -0.3364356, -0.03160515, 0.40898737, 0.22209997, 0.1663134, -0.15078, 0.085960045, -0.0107666645, 0.1477376) * input_0(0.0, 1.0); + result += mat4(0.015864253, 0.23349363, -0.19798006, 0.003667243, 0.09296491, 0.14032252, -0.09207312, 0.11402923, -0.11151894, -0.3252795, 0.05118731, 0.08167876, 0.08552541, 0.062827215, -0.016929492, -0.0002783136) * input_0(1.0, -1.0); + result += mat4(0.061798815, -0.34939057, -0.07637987, 0.022800827, -0.003347054, -0.39139834, -0.060681283, -0.07651662, -0.08311106, 0.43373007, 0.076312356, -0.0054550353, -0.17105933, -0.048047006, 0.13522099, -0.1782779) * input_0(1.0, 0.0); + result += mat4(-0.13868251, 0.32440206, 0.28643867, -0.05782787, -0.25000924, 0.7854838, 0.20770232, 0.0663419, 0.2559772, -0.62600124, -0.10047068, -0.09623159, 0.08793521, 0.07036574, 0.049102187, 0.047294) * input_0(1.0, 1.0); + result += mat4(-0.00038227072, -0.14393194, 0.038174715, -0.035137642, 0.095337495, 0.1141442, -0.055650983, -0.24536523, 0.10249038, -0.12401594, -0.01796622, -0.06139499, -0.06564273, -0.075565934, -0.039569847, 0.16715701) * input_1(-1.0, -1.0); + result += mat4(0.018779516, -0.124641195, -0.062440567, -0.034448743, -0.103015006, -0.13169423, 0.07965393, 0.18791795, -0.23713298, -0.12882905, -0.28061044, 0.021598594, 0.11047309, 0.11784346, -0.11572974, -0.2662765) * input_1(-1.0, 0.0); + result += mat4(-0.07562751, 0.14779134, 0.104422085, -0.04054135, 0.053358003, 0.46156594, -0.09902974, -0.019420123, 0.085541, 0.62621486, 0.27214554, 0.042493727, -0.0003252501, -0.124050856, 0.09637166, 0.34706917) * input_1(-1.0, 1.0); + result += mat4(0.11724949, 0.08367509, 0.0726307, 0.012523095, -0.0555189, -0.27902514, -0.025064645, 0.26191878, -0.12538823, -0.2876072, 0.018809149, 0.07659047, -0.0043497584, 0.13912398, -0.18879698, -0.09407141) * input_1(0.0, -1.0); + result += mat4(-0.18033652, 0.042759825, 0.06368331, 0.022795526, 0.010907192, -0.043445233, 0.021522094, -0.22526333, 0.22364298, -0.039277136, 0.09913117, 0.122075565, 0.07724111, 0.2571889, -0.06185726, 0.19991747) * input_1(0.0, 0.0); + result += mat4(0.15867208, -0.21598418, -0.18490377, 0.018215625, -0.00090689916, -0.24311823, 0.17419568, 0.04331612, -0.0017616346, -0.79248035, -0.17682491, -0.11121394, -0.10937081, -0.13990273, 0.40028873, 0.042223107) * input_1(0.0, 1.0); + result += mat4(-0.13507062, 0.06399457, -0.028265767, -0.011164512, -0.055297103, 0.16362333, 0.03436077, -0.020429306, -0.05554219, 0.024246413, 0.011075656, 0.098599836, 0.006279712, -0.26309264, 0.16655143, -0.20206128) * input_1(1.0, -1.0); + result += mat4(0.2170036, -0.09316496, 0.028138883, -0.008463124, 0.067529134, 0.07165221, -0.07701752, 0.054381624, 0.094071075, -0.07595707, 0.17817047, -0.060396656, -0.15616697, 0.38215396, -0.056919366, 0.025521457) * input_1(1.0, 0.0); + result += mat4(-0.080954514, 0.22553888, 0.0742773, -0.011886751, -0.015296127, -0.08297082, 0.063279495, -0.06918272, -0.089922346, 0.8206666, -0.10095237, -0.10267015, 0.13973941, -0.30136865, -0.15328056, -0.14514476) * input_1(1.0, 1.0); + result += mat4(0.100705594, 0.14177282, -0.00842807, -0.43834534, 0.09505313, 0.31777126, -0.015328626, -0.16526957, 0.10179345, 0.17977884, -0.21634977, -0.20165616, -0.052079044, -0.023546876, -0.13911273, 0.19640324) * input_2(-1.0, -1.0); + result += mat4(0.048165634, -0.10721335, -0.24359164, 0.24258931, -0.09826576, 0.33471993, 0.45039994, 0.088474646, -0.013795417, 0.40945733, -0.038306683, -0.039554857, 0.06322601, -0.26198706, -0.15045558, -0.23408706) * input_2(-1.0, 0.0); + result += mat4(0.086069345, 0.33291972, 0.018220011, 0.016817175, 0.02176934, 0.22816418, 0.21803883, -0.04893849, 0.121627696, 0.97725344, -0.06278565, 0.027065378, -0.010767734, -0.107054524, 0.06268909, 0.021513777) * input_2(-1.0, 1.0); + result += mat4(0.14788039, 0.15138108, 0.12701952, -0.7169742, 0.06141876, 0.015062747, 0.05321366, -0.035481773, -0.11143297, -0.4320028, -0.22105601, 0.21808396, -0.032912992, -0.32986224, -0.21412112, 0.37078735) * input_2(0.0, -1.0); + result += mat4(-0.24202709, 0.06350925, 0.01888181, -0.07200492, 0.565735, 0.24439119, 0.033181865, -0.1870595, 0.30135635, -0.1463415, 0.047009226, -0.07543188, 0.02338579, 0.05535445, 0.095489554, -0.016110636) * input_2(0.0, 0.0); + result += mat4(-0.08491992, -0.096671626, -0.02686706, -0.14828739, 0.14445281, 0.030786954, -0.17047153, -0.07690922, -0.28300798, -0.5438016, 0.50379, 0.25563645, -0.043595236, -0.08126232, 0.076873876, -0.05655661) * input_2(0.0, 1.0); + result += mat4(-0.08012106, 0.26535925, 0.026395127, -0.10887256, 0.06549954, 0.1083905, -0.076932386, 0.049286276, -0.051151574, -0.19302563, 0.016744476, 0.012596655, -0.06448897, 0.30637985, -0.040895723, 0.09367526) * input_2(1.0, -1.0); + result += mat4(0.21835084, 0.076090395, -0.15054277, 0.0064308187, -0.38106912, -0.27833295, 0.29346845, -0.056551255, -0.16343033, 0.017800037, -0.007744084, -0.1058902, -0.12844847, -0.02332676, 0.11486791, -0.2611117) * input_2(1.0, 0.0); + result += mat4(0.07133381, 0.32360357, -0.025332207, -0.024288805, -0.121127434, 0.24943942, 0.020236451, -0.020955294, 0.08707999, -0.1935145, 0.038267694, -0.044730254, 0.01604247, 0.43550748, 0.10904601, -0.016396636) * input_2(1.0, 1.0); + result += mat4(-0.16801412, -0.046199627, -0.23378094, -0.30083242, -0.038363896, -0.09125508, -0.10690631, -0.11015374, -0.009636735, 0.117350295, 0.07096233, 0.030160064, 0.02974328, 0.18364412, 0.069632396, -0.1442205) * input_3(-1.0, -1.0); + result += mat4(0.10931047, -0.1110651, -0.3118175, 0.105457544, 0.0063644485, -0.017155524, 0.028321268, 0.11508678, -0.028388958, -0.13778853, -0.037895847, -0.031205367, -0.13009055, -0.13710436, -0.05391298, 0.1966867) * input_3(-1.0, 0.0); + result += mat4(-0.08782637, 0.7765535, 0.010296807, 0.05556268, 0.0042530173, -0.01240336, -0.06096154, -0.018021043, 0.030062055, -0.028580658, -0.04443298, 0.072150275, 0.15294474, 0.36900693, -0.023119643, -0.0795031) * input_3(-1.0, 1.0); + result += mat4(-0.0735252, -0.28964195, 0.06372966, 0.18632069, 0.05535742, -0.015780741, 0.12823983, -0.06527888, 0.016999453, 0.0053764326, -0.12898324, 0.020772459, -0.1253207, -0.37731433, -0.060773518, 0.16290863) * input_3(0.0, -1.0); + result += mat4(-0.09592049, -0.114688545, 0.002505734, 0.03454293, 0.18079872, 0.13956593, 0.21264091, 0.02412795, 0.040670116, 0.10325578, 0.0005393801, 0.0865992, 0.1133841, 0.032536924, 0.14310187, 0.0028200918) * input_3(0.0, 0.0); + result += mat4(-0.019391425, -0.17596145, 0.13596605, 0.037588928, 0.08054952, 0.027128657, -0.14097214, -0.16383356, -0.06442969, -0.07702227, 0.07444885, -0.05744716, -0.0030741126, -0.3194215, -0.018068967, -0.07190469) * input_3(0.0, 1.0); + result += mat4(0.01043902, -0.0550896, 0.001701343, 0.029193362, -0.13556387, -0.065857776, -0.08476407, -0.017119618, -0.040828153, -0.048053656, 0.035570778, -0.022735232, 0.17714263, 0.20604382, -0.15877317, 0.09083074) * input_3(1.0, -1.0); + result += mat4(0.23820402, 0.07405034, 0.11078243, -0.1309092, -0.09072741, -0.037191704, 0.06071908, 0.29712254, -0.0056957644, 0.04344092, 0.0055580605, -0.012878862, 0.004164069, -0.33235168, -0.02318148, -0.19929971) * input_3(1.0, 0.0); + result += mat4(0.07310743, 0.014337466, 0.1408294, 0.021679375, -0.084884994, 0.020713117, -0.046598557, -0.1202647, 0.015799383, 0.085582934, -0.07539079, 0.033427224, -0.19961625, 0.3513712, 0.13917837, 0.061648373) * input_3(1.0, 1.0); + result += mat4(-0.015438853, 0.035818364, -0.016920974, -0.05524133, -0.04535581, -0.057492346, 0.12041619, 0.17232774, 0.08669527, 0.057066478, -0.21522291, -0.21231914, 0.04737291, -0.11503983, -0.058192667, -0.10611911) * input_4(-1.0, -1.0); + result += mat4(0.010326091, -0.07197172, 0.033711098, -0.01957491, 0.031075621, 0.20164773, -0.010131379, -0.2481469, -0.017927717, 0.12459768, -0.0059724953, 0.27598897, 0.0007297192, 0.0846508, 0.12602916, 0.19772741) * input_4(-1.0, 0.0); + result += mat4(-0.0067790793, 0.097936615, -0.03162775, 0.049825046, -0.0038164244, -0.3937466, -0.03582858, 0.09306411, 0.011758946, 0.21738213, 0.16164726, -0.12591563, -0.074294195, 0.087316975, -0.13452433, -0.069916695) * input_4(-1.0, 1.0); + result += mat4(-0.0016664193, -0.042246703, 0.033231787, 0.020032287, 0.00917554, 0.32018596, -0.13407195, -0.23524459, -0.013317002, -0.23535722, 0.036715806, 0.26924172, -0.0021653268, 0.027272662, 0.08542942, 0.011324022) * input_4(0.0, -1.0); + result += mat4(-0.025091235, 0.0024483197, -0.008148841, -0.018453117, 0.101045124, -0.16733527, -0.056581832, 0.36393538, 0.01424283, -0.2712778, 0.009006527, -0.29947257, -0.10815975, -0.17808785, 0.020586418, -0.17878225) * input_4(0.0, 0.0); + result += mat4(0.025729392, -0.043632884, -0.033765193, 0.010117724, -0.07556292, 0.2860527, 0.23411441, -0.13483089, -0.069486305, 0.13181864, 0.07342631, 0.11503041, 0.09351119, 0.17291246, -0.0010469032, 0.09827466) * input_4(0.0, 1.0); + result += mat4(0.0358945, -0.022701329, -0.034593657, -0.0013461314, -0.013445025, -0.4006179, 0.18165654, -0.04950347, -0.025008086, 0.08561485, 0.05113182, -0.0859802, -0.006433595, 0.10382885, -0.08185622, 0.060654115) * input_4(1.0, -1.0); + result += mat4(0.0071047517, 0.009535292, -0.049311213, 0.057546075, -0.06286294, 0.4208906, -0.0006369673, -0.15374088, -0.055732913, 0.14713264, -0.035617687, 0.08779827, 0.005465874, 0.08237336, -0.08453651, 0.05463139) * input_4(1.0, 0.0); + result += mat4(-0.0505268, 0.027082305, 0.042327106, -0.018825276, 0.10856551, -0.26363555, -0.14222983, 0.040553518, 0.05397862, -0.2882575, -0.09567969, -0.04645716, 0.00023215656, -0.31844428, 0.110717475, -0.061022248) * input_4(1.0, 1.0); + result += mat4(0.021761462, 0.0846689, 0.026880883, 0.0072012977, 0.028867185, 0.15704116, -0.0360883, -0.15933129, 0.019085243, 0.011946529, 0.059118394, 0.0028496585, -0.09143359, 0.007928539, 0.24628899, 0.2628897) * input_5(-1.0, -1.0); + result += mat4(-0.013194764, -0.052121438, 0.10445739, 0.028575748, -0.054206066, -0.099769704, 0.01070027, 0.17189023, -0.032572266, -0.16159502, -0.10441917, -0.0063956296, -0.003262933, -0.16481134, 0.11288334, -0.2191891) * input_5(-1.0, 0.0); + result += mat4(0.02499389, -0.1985367, -0.09658025, 0.038832895, 0.06525094, 0.28062144, -0.024966499, 0.05529481, -0.0048399814, 0.030442575, 0.14635454, -0.02248338, 0.02172775, -0.6299181, -0.1305395, 0.22179127) * input_5(-1.0, 1.0); + result += mat4(0.052265927, -0.054183614, -0.025657, 0.060459614, -0.051065456, -0.1873289, -0.08807439, 0.2128879, -0.047004644, -0.14813195, -0.015391968, 0.0070418185, -0.07732352, 0.29083848, -0.18113178, -0.17457779) * input_5(0.0, -1.0); + result += mat4(-0.03818528, -0.015962817, -0.09458481, -0.02038501, 0.13890904, -0.09585929, -0.029762737, -0.057006784, -0.006015664, 0.18592696, 0.19085328, -0.0041001095, 0.025030082, 0.28410876, -0.15773813, 0.3772978) * input_5(0.0, 0.0); + result += mat4(-0.034782983, 0.1966687, 0.1448058, 0.02982905, -0.12339208, -0.16715248, 0.23915182, -0.0124082975, 0.10400577, -0.25055543, -0.2259348, 0.011181024, 0.10126026, 0.09192144, 0.07013231, -0.20107388) * input_5(0.0, 1.0); + result += mat4(0.04831314, -0.019185286, -0.076853625, 0.005367737, 0.05026192, 0.057063438, 0.015918856, -0.036516525, 0.05979599, 0.10181522, -0.057970356, 0.031082178, 0.07138378, -0.29448685, 0.13560444, -0.09630383) * input_5(1.0, -1.0); + result += mat4(-0.11545805, 0.07733978, -0.04399478, -0.123544864, -0.09586755, 0.007175453, 0.04871427, -0.06212662, 0.046663325, -0.2874041, -0.006827507, -0.023838311, 0.0018918704, 0.19361866, 0.04799621, -0.19264694) * input_5(1.0, 0.0); + result += mat4(0.0055675316, -0.04041867, 0.02017378, 0.087172784, 0.02937428, 0.022407144, -0.15258929, -0.0197, -0.10519696, 0.36272028, 0.087729566, 0.018477712, -0.0709402, 0.2118706, -0.10161032, 0.062794626) * input_5(1.0, 1.0); + result += mat4(-0.013910155, 0.1838991, 0.050374653, -0.087477796, -0.011209876, -0.020894801, 0.06504429, 0.12788098, 0.021655794, -0.051969152, -0.10683956, 0.067932606, 0.026053555, -0.11368211, -0.25254402, -0.42395723) * input_6(-1.0, -1.0); + result += mat4(0.20949562, 0.048552986, -0.009412273, -0.030468652, -0.037317622, -0.042673796, -0.04536057, -0.20586999, -0.0010405909, -0.19727898, -0.21311876, 0.12085623, -0.012935738, -0.32681328, -0.29360524, 0.36397868) * input_6(-1.0, 0.0); + result += mat4(-0.008331251, 0.11134363, 0.08594058, 0.025283096, 0.012414183, -0.113582045, 0.014880057, 0.06739913, 0.14482465, -0.12260647, -0.45286676, -0.17878991, -0.030719738, 0.4453091, 0.0018528624, 0.019071374) * input_6(-1.0, 1.0); + result += mat4(0.07052604, -0.2354623, -0.36072075, 0.31651786, 0.010215864, 0.17660387, -0.055844557, -0.049293354, -0.120440364, 0.22768204, 0.014940114, -0.07093146, -0.16314904, 0.12046607, 0.16346766, -0.4701207) * input_6(0.0, -1.0); + result += mat4(-0.009572284, -0.19562596, 0.0074755726, 0.07688264, -0.011663954, -0.03413263, 0.017345814, 0.066593915, -0.43352088, 0.18447047, 0.04631236, 0.103300124, -0.20493662, -0.10653893, -0.12979952, 0.038285278) * input_6(0.0, 0.0); + result += mat4(0.022639992, 0.031797428, 0.1721626, 0.06104475, 0.017093038, -0.059815064, -0.007608388, 0.03902386, -0.15271273, 0.14902736, -0.08160727, -0.54536164, -0.09928385, -0.21051404, 0.09483336, 0.0011334751) * input_6(0.0, 1.0); + result += mat4(0.089513935, -0.1827188, -0.06888276, -0.0376991, -0.035575107, -0.32495055, 0.06108984, -0.064921655, 0.050515093, -0.03592306, 0.106731504, 0.067564525, -0.19304432, -0.0826262, -0.07060158, 0.02772065) * input_6(1.0, -1.0); + result += mat4(-0.16281211, 0.10882804, -0.051797323, -0.2970621, 0.10196593, 0.20303707, -0.052118238, 0.13082807, -0.0039520166, 0.033020657, 0.12809606, -0.059709143, 0.13242497, 0.12917703, -0.12121751, 0.06951937) * input_6(1.0, 0.0); + result += mat4(-0.17599659, 0.24246873, 0.18484323, 0.046310864, -0.027673533, 0.058986288, 0.0126218805, -0.09712559, -0.18531168, 0.09261926, -0.11159413, -0.15516135, 0.015373432, -0.20975779, 0.052549846, 0.06417352) * input_6(1.0, 1.0); + result += mat4(-0.026367318, -0.12203931, 0.066225946, 0.1233265, -0.035087924, 0.06202611, -0.0335126, 0.07306395, -0.030175097, -0.15575922, -0.005527465, 0.1597741, 0.011144939, 0.0855888, -0.039430667, -0.08086589) * input_7(-1.0, -1.0); + result += mat4(0.06272225, 0.16024713, 0.006443967, -0.18236427, -0.11015281, -0.12667473, 0.11433224, -0.10605587, -0.015587655, 0.11415003, -0.016920628, -0.12120949, 0.010712469, -0.17483836, -0.12760574, 0.072582796) * input_7(-1.0, 0.0); + result += mat4(-0.059898444, -0.28075892, -0.07165485, 0.06419527, 0.056257986, -0.15887941, 0.09155238, 0.14488262, -0.14256333, -0.2127732, 0.018770501, -0.04443338, -0.06645131, 0.23200059, 0.17430884, 0.022412416) * input_7(-1.0, 1.0); + result += mat4(0.082363866, 0.25501168, -0.028589956, -0.12813969, 0.03463494, 0.07495972, 0.033632547, -0.017175468, 0.07590635, 0.12909797, 0.064009406, -0.06938327, -0.022669552, -0.28955948, -0.031148441, 0.26522115) * input_7(0.0, -1.0); + result += mat4(-0.12852879, 0.010687718, -0.032224722, 0.14671575, 0.13294461, 0.09980069, -0.12094054, -0.0007716195, 0.1812976, 0.05940296, -0.04663143, -0.04428122, -0.062242415, 0.17500389, 0.103581935, -0.10895421) * input_7(0.0, 0.0); + result += mat4(0.07766372, 0.16501822, 0.035515815, -0.11864391, 0.011293299, -0.024692236, -0.0066932146, 0.34621286, -0.1271982, 0.23995386, 0.18737409, 0.124870576, 0.08363588, -0.22823781, -0.22082491, -0.0041540302) * input_7(0.0, 1.0); + result += mat4(-0.111238785, -0.21733056, 0.106904924, -0.061655033, 0.0050429087, -0.029287053, 0.06373585, 0.04926272, -0.15410268, -0.08572044, 0.027095838, -0.06704873, -0.036613636, 0.24638721, -0.0494524, -0.019928148) * input_7(1.0, -1.0); + result += mat4(0.10822015, 0.13084891, -0.02631692, 0.0340439, -0.5459227, -0.15280166, 0.23046052, 0.029968541, -0.039865654, 0.22223918, -0.15770279, 0.10107651, 0.081180155, -0.26225275, -0.07880069, 0.07137521) * input_7(1.0, 0.0); + result += mat4(0.0073960857, -0.105301134, 0.050484303, 0.039463546, -0.18239637, -0.07557198, 0.16858585, 0.11492179, 0.25229305, -0.39018935, -0.016333284, 0.03805905, -0.09578385, 0.21013889, 0.063260436, 0.10094136) * input_7(1.0, 1.0); + result += vec4(0.042521726, 0.026829163, 0.015250358, 0.012023616); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf6 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.041345533, -0.055464953, 0.041443393, -0.12660763, 0.19217597, 0.16655748, 0.18924107, -0.550089, -0.026015887, -0.06316093, -0.18099141, -0.23603073, -0.04827399, 0.084609084, 0.1363579, 0.07384214) * input_0(-1.0, -1.0); + result += mat4(0.18465647, 0.15061182, -0.10452909, 0.012778033, 0.13576844, 0.056699537, 0.029633112, 0.17063026, -0.33614755, -0.0185606, 0.075149395, 0.36930746, 0.03144263, -0.0033380862, 0.004223247, 0.067916) * input_0(-1.0, 0.0); + result += mat4(-0.07851142, -0.0805422, 0.060925566, 0.2246966, -0.14818919, 0.0660099, -0.1959945, 0.028586878, 0.26879627, -0.04364633, 0.10806289, -0.546817, -0.061433952, 0.08095959, -0.09071055, 0.4439007) * input_0(-1.0, 1.0); + result += mat4(-0.14013155, -0.046511382, -0.009751668, -0.04784301, -0.28231508, -0.25643837, -0.10666183, 0.016037786, 0.32593998, 0.20849359, 0.05051902, 0.5212107, -0.09939891, -0.012686587, 0.018469129, -0.100737154) * input_0(0.0, -1.0); + result += mat4(0.010595188, 0.109284446, 0.064169, 0.01347051, 0.0077629783, 0.051126268, 0.08574281, 0.1746014, 0.039983805, -0.0760815, -0.0056210924, -0.17712876, 0.08801097, -0.030536676, 0.14469941, -0.0074328864) * input_0(0.0, 0.0); + result += mat4(0.0030997284, -0.11056746, -0.012307287, -0.103228144, -0.12580171, -0.33980697, 0.00083339016, -0.14371689, 0.04928025, 0.13517566, -0.06678419, 0.2841253, 0.08416894, -0.13036734, -0.04563088, -0.071541935) * input_0(0.0, 1.0); + result += mat4(0.03963502, 0.09334746, -0.0062971916, 0.29407027, 0.34763145, 0.003537422, 0.12150958, 0.030110512, -0.13766488, -0.10772029, 0.06946154, -0.16541857, 0.009343028, -0.1011362, 0.06673205, 0.30919322) * input_0(1.0, -1.0); + result += mat4(0.17776228, -0.26499295, 0.056099504, -0.05851794, -0.07547622, -0.079068206, -0.059231404, 0.182862, 0.048692778, 0.16911566, -0.022005178, 0.023999821, -0.121083416, 0.20116726, -0.07803478, -0.001388196) * input_0(1.0, 0.0); + result += mat4(-0.09862452, 0.252057, -0.07525025, -0.14126006, 0.05049844, 0.38253585, -0.14082879, 0.104908936, -0.1554986, -0.18920846, 0.0041718706, -0.08378554, 0.098667294, -0.0885167, 0.03655682, -0.309554) * input_0(1.0, 1.0); + result += mat4(0.102486536, 0.013626034, 0.11448338, 0.52125055, -0.0396016, 0.2143611, -0.057243977, 0.111458056, 0.26043978, 0.18225932, 0.1064128, 1.3107501, -0.018873028, -0.08229207, -0.08256619, 0.06214457) * input_1(-1.0, -1.0); + result += mat4(0.07476212, 0.010910065, -0.019628156, -0.21486005, -0.12616228, -0.20298322, 0.08733718, -0.10701892, 0.1846352, -0.07328564, 0.116703205, -0.80119175, -0.10373339, 0.18424764, 0.05056809, -0.12779428) * input_1(-1.0, 0.0); + result += mat4(-0.11260617, -0.016205685, -0.112746134, 0.23445736, 0.07251493, 0.0874475, 0.049587063, -0.09784107, -0.12441576, 0.1747652, -0.14610644, 1.0839573, -0.05993222, -0.16983502, 0.0795395, 0.11052572) * input_1(-1.0, 1.0); + result += mat4(-0.09807166, 0.0053537106, 0.0005802601, -0.099707015, -0.018470284, -0.17754777, 0.18535376, -0.049483806, -0.3496296, -0.20840174, 0.048648108, -0.6440516, 0.16636167, 0.11331781, -0.07293016, -0.029978331) * input_1(0.0, -1.0); + result += mat4(-0.03949501, -0.006480126, -0.019221708, -0.049341083, -0.03156807, 0.106036045, -0.22973113, 0.3306129, 0.19557612, -0.053543456, -0.20876324, -0.036337774, -0.06473071, -0.08457429, -0.034996517, -0.054180402) * input_1(0.0, 0.0); + result += mat4(-0.0656245, -0.004227116, 0.06434593, -0.31470394, 0.045324374, -0.07079631, -0.021860974, -0.07456507, -0.082454085, -0.11225642, -0.04974867, -0.8440242, -0.13070583, 0.013055058, -0.0840422, 0.16450551) * input_1(0.0, 1.0); + result += mat4(-0.25452775, 0.0012227935, -0.14718343, 0.01675005, 0.08354679, -0.0282178, -0.106897496, -0.16896586, -0.10283862, 0.04616722, -0.14673562, -0.56524974, 0.21617314, -0.048185334, 0.18406247, -0.19017853) * input_1(1.0, -1.0); + result += mat4(0.29176232, -0.054491337, 0.085552335, -0.26219767, -0.06905759, 0.07363638, 0.10755593, -0.25559887, -0.35803357, 0.18798876, 0.10056048, -0.17536278, -0.12707596, 0.06625438, -0.11077801, -0.09483537) * input_1(1.0, 0.0); + result += mat4(0.028382715, 0.07659, 0.008674615, 0.20173489, 0.046216253, 0.008828969, 0.036048654, 0.363919, 0.26152262, -0.101774216, 0.15943208, 0.72202647, 0.09124303, -0.032738492, 0.14121088, 0.11429802) * input_1(1.0, 1.0); + result += mat4(0.06362551, 0.19507247, 0.0731383, 0.4812366, 0.5326719, 0.010404762, 0.06783145, -0.40716755, -0.030611482, 0.40578806, 0.07560414, 0.36248, -0.21457893, -0.23673764, 0.13985327, -0.30838415) * input_2(-1.0, -1.0); + result += mat4(0.23946144, 0.04339811, 0.07760475, 0.16961272, -0.31527603, 0.019603321, -0.047286954, -0.16587757, -0.21719973, -0.26273432, 0.08624874, -0.6013619, -0.003199095, -0.06940298, -0.0027655833, 0.4885354) * input_2(-1.0, 0.0); + result += mat4(0.021627761, -0.045796994, -0.047523238, 0.05476803, -0.00019088911, -0.078903094, 0.07064276, -0.25440383, 0.087940484, 0.15701395, 0.037590418, 0.40978515, 0.039288554, 0.0072490573, 0.06367471, 0.17200626) * input_2(-1.0, 1.0); + result += mat4(-0.24085245, 0.25844967, 0.0044468693, 0.7278132, -0.26599795, -0.006408927, -0.07118265, -0.18810551, -0.154478, -0.2966115, 0.03801537, -0.5323013, -0.03593836, 0.0216301, -0.04796046, -0.37118402) * input_2(0.0, -1.0); + result += mat4(-0.06892374, -0.16635, -0.20470326, -0.16179635, 0.38769954, 0.14797948, 0.085158855, 0.18024194, 0.05492823, -0.0101349745, -0.2384962, 0.16080809, -0.062070776, -0.039261695, -0.01958837, -0.11806427) * input_2(0.0, 0.0); + result += mat4(-0.042560052, -0.038161714, 0.11743475, -0.23627554, -0.1935788, 0.025635883, 0.027829139, -0.08255728, 0.121338576, -0.0069902525, -0.002246218, 0.10757866, 0.03439759, 0.06673993, -0.030098371, 0.07735893) * input_2(0.0, 1.0); + result += mat4(-0.10398287, -0.013414453, 0.024538215, -0.070152834, 0.4197782, 0.07411569, -0.19477166, -0.10096147, 0.28762087, 0.17187408, 0.027207375, -0.2951528, 0.3271187, -0.040725283, 0.046042457, 0.13273631) * input_2(1.0, -1.0); + result += mat4(-0.061312836, 0.10694653, 0.04563205, -0.08061156, -0.4625649, 0.15236345, -0.10078144, 0.28751463, -0.38914603, 0.059376266, -0.17226395, -0.13844255, 0.12366562, 0.08064068, -0.025330188, -0.05193299) * input_2(1.0, 0.0); + result += mat4(-0.100789204, 0.024980986, -0.00096287223, 0.116841145, -0.11327323, 0.1096801, 0.01567112, 0.16231807, 0.2241793, -0.12536189, 0.25070024, 0.43985495, -0.07818591, 0.06342705, -0.1093036, -0.06832347) * input_2(1.0, 1.0); + result += mat4(-0.53981334, 0.19310492, 0.051579606, 0.23692653, 0.0117421225, -0.018056523, 0.0047826283, 0.0045907465, 0.07796689, 0.03044028, 0.023324843, 0.15390147, 0.008850012, 0.12447972, -0.0010054853, -0.40751794) * input_3(-1.0, -1.0); + result += mat4(0.067387715, -0.21976626, 0.08747351, 0.32852715, 0.1097811, 0.06708062, -0.018442612, 0.11713851, 0.024888646, -0.031128038, -0.03506933, -0.20954944, 0.17276128, -0.035329383, 0.11288953, 0.06028929) * input_3(-1.0, 0.0); + result += mat4(0.3669656, 0.27970794, 0.1684086, -0.2452869, -0.013383243, 0.060538534, 0.05636445, -0.0243601, -0.07099992, -0.013360972, -0.026010731, 0.08943992, -0.09504391, 0.039164294, -0.09842555, 0.020702433) * input_3(-1.0, 1.0); + result += mat4(-0.14726835, 0.004853006, -0.05831267, -0.14432277, -0.043933246, 0.051037032, 0.015897416, -0.12463221, -0.15288018, 0.022317994, -0.03155966, -0.16331518, -0.30189234, -0.19434139, -0.02819661, -0.0015674202) * input_3(0.0, -1.0); + result += mat4(-0.013635949, -0.2101897, -0.082600236, -0.14467663, -0.014644336, 0.046134397, 0.16536999, 0.010750687, 0.12492591, -0.059102423, 0.015784113, 0.13948445, -0.12919958, 0.16167298, -0.02543436, 0.16497035) * input_3(0.0, 0.0); + result += mat4(0.03715536, -0.07194666, -0.13482012, 0.044409435, -0.03232903, 0.045115586, 0.006924568, -0.04737988, 0.023773752, 0.015379136, 0.016831461, -0.11475087, 0.118095465, -0.17657684, 0.088556245, -0.02075023) * input_3(0.0, 1.0); + result += mat4(0.06855258, -0.009943238, -0.0082522165, -0.18459177, 0.05713775, 0.085997574, -0.083705306, -0.02333953, 0.09657873, -0.080784746, 0.00039650925, -0.066837676, 0.46505854, 0.055562608, 0.09163071, -0.02626007) * input_3(1.0, -1.0); + result += mat4(0.09470038, 0.106196724, 0.008087144, -0.1398993, -0.05238413, -0.08617256, 0.033965155, 0.07344164, -0.17585722, 0.08055, 0.0067574396, 0.15365785, -0.28378516, -0.12489056, -0.093082905, 0.18047959) * input_3(1.0, 0.0); + result += mat4(-0.07309325, -0.10460101, -0.04107601, 0.17972063, -0.06538751, 0.07329555, 0.0128743015, 0.06382885, 0.056033667, -0.031580538, 0.026303018, -0.022742873, 0.015268616, 0.23266329, -0.0057700286, 0.008320777) * input_3(1.0, 1.0); + result += mat4(-0.016394243, -0.036702372, 0.0012615235, 0.051003218, 0.07358688, 0.06284399, -0.04513736, 0.20223987, -0.24873306, 0.1354864, -0.027149897, -0.5837706, -0.00043460279, 0.05924218, -0.000987172, -0.14399518) * input_4(-1.0, -1.0); + result += mat4(0.01940222, 0.030977702, 0.015554208, -0.016618405, -0.055653326, -0.1355431, 0.027482385, -0.2969843, -0.19768852, -0.15060495, 0.111211225, 0.66099966, -0.12003539, -0.06407852, -0.02937152, 0.14828858) * input_4(-1.0, 0.0); + result += mat4(-0.051834945, -0.021438997, -0.0073293075, 0.005250716, 0.1133001, 0.011974959, -0.045654047, 0.04875137, 0.26852337, 0.05060329, 0.030296862, -0.59029734, 0.1112862, -0.042944483, 0.04462648, -0.2771231) * input_4(-1.0, 1.0); + result += mat4(-0.015684992, -0.017279817, 0.011283307, -0.062216707, 0.05598004, 0.20069756, -0.059164546, -0.0805726, 0.16611868, -0.1679714, -0.0031656134, 0.23880768, 0.03089406, -0.14853305, 0.031234507, 0.23936066) * input_4(0.0, -1.0); + result += mat4(-0.06923823, -0.013710549, -0.013808913, 0.11698818, 0.11885847, -0.24609903, 0.07534187, -0.08470902, -0.095401056, 0.06813626, -0.2071679, 0.06593197, -0.094212025, 0.14601822, -0.03304364, -0.06554428) * input_4(0.0, 0.0); + result += mat4(0.08825598, -0.0010936137, 0.017031068, -0.032119703, -0.075843155, 0.12741521, -0.09766314, 0.004667056, -0.032978617, -0.020808868, 0.091177255, 0.25255197, 0.089328684, -0.005943127, 0.0052799154, 0.18916275) * input_4(0.0, 1.0); + result += mat4(-0.028650101, 0.032745276, -0.022225566, 0.07952636, 0.13504188, -0.24611682, 0.097502, -0.26694566, 0.07211915, 0.028924854, 0.05935727, -0.14061359, -0.07468586, 0.06406292, -0.017410057, 0.008610811) * input_4(1.0, -1.0); + result += mat4(0.065286145, -0.054186974, 0.0017885417, -0.21725298, -0.2750216, 0.41876978, -0.16614231, 0.31204444, 0.07691052, 0.050965857, 0.06217857, -0.24821576, 0.20756266, -0.1309567, 0.09452876, -0.15079767) * input_4(1.0, 0.0); + result += mat4(-0.08022536, 0.006548623, 0.013265802, 0.082633875, 0.10441513, -0.25778, 0.19364586, 0.02329507, -0.060085174, -0.026105165, -0.1057601, 0.33964327, -0.13298751, 0.07000726, -0.102630295, 0.0013877343) * input_4(1.0, 1.0); + result += mat4(0.10186911, -0.037924156, 0.02694128, -0.25754613, -0.0066765645, 0.12727356, -0.06272884, -0.18075077, 0.04307556, -0.003755067, 0.13829839, 0.012651393, 0.40982738, -0.21867101, -0.058316518, 0.5139487) * input_5(-1.0, -1.0); + result += mat4(-0.05858938, 0.05079863, 0.035710923, 0.14019334, -0.1049244, -0.056861736, 0.19191176, 0.0929902, 0.056158356, 0.007421912, -0.09686233, -0.09334824, 0.067251705, 0.20048748, -0.09210454, -0.65696925) * input_5(-1.0, 0.0); + result += mat4(0.032131765, -0.047118183, 0.010034014, -0.3293052, 0.02003215, 0.03730697, -0.08712248, -0.033296466, -0.01265834, 0.017300079, -0.052300226, 0.21958473, -0.19870599, -0.06718905, -0.028590264, 0.5904188) * input_5(-1.0, 1.0); + result += mat4(-0.05176683, -0.05371837, 0.00054968905, 0.23659621, -0.094646305, -0.04954458, 0.014795163, -0.095506765, -0.12593333, -0.117550485, -0.09204686, -0.07581811, -0.282788, 0.30162776, -0.089526094, -0.049574815) * input_5(0.0, -1.0); + result += mat4(-0.08314008, -0.04508569, 0.046567827, 0.074384846, 0.0026036669, -0.096945055, -0.115853, 0.029179884, 0.10840337, 0.1760245, 0.08436761, 0.09791641, 0.21018164, -0.23145379, 0.24459347, -0.29289815) * input_5(0.0, 0.0); + result += mat4(0.016614152, 0.031215128, 0.026402503, 0.1547058, 0.08357943, -0.015907424, 0.03156429, 0.032158006, -0.029547872, -0.13136719, 0.08106701, -0.21905124, -0.18076232, 0.06961644, -0.15488575, -0.27967107) * input_5(0.0, 1.0); + result += mat4(0.28653482, 0.085142195, 0.0009099875, -0.07081099, 0.29541126, -0.08122861, 0.11263469, -0.11448918, 0.021506904, 0.11655007, -0.031680875, 0.18613766, 0.19403666, -0.1812628, 0.15819298, -0.22073804) * input_5(1.0, -1.0); + result += mat4(-0.087594084, -0.016058756, -0.00048594078, 0.092125386, -0.3394257, 0.16173008, -0.14363407, 0.08980333, 0.06309485, -0.20917787, 0.040549085, -0.103962354, -0.39496115, 0.25686792, -0.16141178, 0.6604385) * input_5(1.0, 0.0); + result += mat4(-0.103061706, 0.022612737, -0.020459333, -0.038347505, 0.104607604, -0.05138222, 0.1131061, 0.073282376, -0.063226126, 0.15344903, -0.059881687, -0.040750135, 0.14012036, -0.16596517, 0.18717442, -0.26723143) * input_5(1.0, 1.0); + result += mat4(0.27679878, 0.1383938, 0.110804975, -1.1908778, 0.07902614, -0.024004836, 0.01736482, 0.50346535, -0.09379502, 0.013505165, -0.035503823, 0.034726497, -0.18960077, 0.117877275, 0.020156248, 0.40649685) * input_6(-1.0, -1.0); + result += mat4(-0.31606215, -0.059235983, 0.11594921, 0.5213943, 0.1350843, 0.06536822, -0.07353484, -0.5425177, 0.07608191, 0.13131846, 0.094738804, 0.69644344, 0.048282918, 0.012762937, 0.07111535, 0.33646324) * input_6(-1.0, 0.0); + result += mat4(0.2353601, 0.0027482489, -0.030827366, -0.8479266, -0.16586253, -0.049133673, 0.03175127, 0.279736, -0.0021018328, 0.080176234, 0.055990182, -0.088696145, 0.15021665, 0.20061822, 0.16343096, -0.011607208) * input_6(-1.0, 1.0); + result += mat4(-0.09183899, -0.025772968, -0.0062037515, 0.38371462, 0.011428257, 0.02751553, 0.044601515, -0.270336, 0.15055408, -0.0577742, 0.013464721, 0.096098706, -0.060366843, 0.061792567, 0.14939004, 0.3067222) * input_6(0.0, -1.0); + result += mat4(-0.14681236, -0.06395696, -0.2272537, 0.03850446, 0.022495164, -0.09075494, 0.031179005, 0.11453909, -0.006890967, -0.22904342, -0.046404492, -0.11597372, -0.033593226, -0.20261368, -0.12864207, -0.032680124) * input_6(0.0, 0.0); + result += mat4(-0.22614536, -0.19403118, 0.02541013, 0.35980472, 0.023980597, 0.09122227, -0.07703111, -0.12200096, 0.019675579, -0.1598781, 0.13422987, -0.22601783, -0.10696919, -0.11589052, -0.015244453, 0.042049076) * input_6(0.0, 1.0); + result += mat4(0.63585263, -0.107825935, 0.1997556, -0.51153356, -0.052012667, 0.010243262, -0.04741128, -0.10686455, 0.017119955, 0.0039846934, -0.13013978, -0.13695236, -0.03941553, 0.0804253, -0.21264645, -0.1500996) * input_6(1.0, -1.0); + result += mat4(-0.44413823, 0.3125574, -0.1544843, 0.6887263, -0.12991771, 0.055544402, 0.008435413, 0.19582368, -0.13790731, 0.07671646, -0.043619655, 0.15255961, -0.019177796, 0.02146386, -0.10867152, -0.027262872) * input_6(1.0, 0.0); + result += mat4(0.14250587, -0.015108585, 0.0016642101, 0.37720078, 0.12352258, -0.051875263, 0.060524058, -0.021637483, -0.13663964, 0.061362717, 0.11942209, 0.28450513, -0.053207673, 0.015366016, -0.13283357, 0.14715716) * input_6(1.0, 1.0); + result += mat4(0.12865677, -0.056659568, 0.07420874, 0.2892463, 0.08874912, -0.08043138, -0.04455147, -0.56447786, -0.15590934, -0.04337794, -0.04649125, 0.2497519, -0.031306602, -0.029278748, 0.07296755, 0.14916398) * input_7(-1.0, -1.0); + result += mat4(-0.030317513, 0.12272913, -0.15381052, -0.2880661, -0.05128858, -0.018731995, 0.03843888, 0.26031274, 0.10765322, 0.021099243, -0.18082193, -0.3118194, 0.15378006, -0.062634215, -0.042486973, 0.07869861) * input_7(-1.0, 0.0); + result += mat4(-0.078431986, -0.09541048, 0.036724783, 0.21964726, 0.04378334, 0.025589922, -0.034365952, 0.10754574, -0.05345149, 0.04321463, 0.10600925, 0.4420164, -0.12129861, 0.116240405, -0.0031322986, 0.07985485) * input_7(-1.0, 1.0); + result += mat4(-0.02161363, 0.027273469, -0.05655635, 0.119022645, -0.09853863, 0.015877217, 0.011215429, 0.175515, 0.43486917, -0.07729316, 0.0054668374, -0.4020926, -0.07960357, -0.08400182, -0.043846864, -0.3163411) * input_7(0.0, -1.0); + result += mat4(0.05640354, -0.055206474, 0.14629029, -0.13196151, 0.16484562, -0.09071059, 0.08769273, 0.19730765, -0.088840365, -0.14774048, 0.067877084, 0.16303234, 0.06644259, 0.10432741, 0.026086735, 0.090552196) * input_7(0.0, 0.0); + result += mat4(0.0033041371, 0.14767249, -0.05163312, -0.035461415, -0.014950219, -0.034113392, -0.12472675, 0.07692402, 0.08041522, 0.10802786, -0.22247039, 0.11821271, -0.11659225, -0.10981318, 0.058626164, -0.08861858) * input_7(0.0, 1.0); + result += mat4(-0.15554355, 0.05906261, -0.02904551, -0.17138585, 0.33913034, 0.015948758, -0.16596667, 0.01596414, -0.27432114, 0.21791846, -0.030878434, 0.32745215, -0.08624721, 0.08786551, -0.03945694, 0.22228219) * input_7(1.0, -1.0); + result += mat4(0.031030236, -0.037023664, 0.019827621, 0.22729856, -0.12942944, 0.10742747, -0.19560897, -0.04262328, 0.027151277, -0.09791914, 0.121187545, -0.19238777, 0.1971302, -0.14126833, 0.038097955, -0.22004887) * input_7(1.0, 0.0); + result += mat4(0.01886753, -0.068547666, 0.031615805, -0.03323853, 0.12584218, 0.1996142, -0.006877489, -0.47788176, -0.11420459, -0.05278332, 0.12409635, -0.42307538, 0.014802284, 0.08623284, -0.064687215, 0.08610025) * input_7(1.0, 1.0); + result += vec4(-0.00082507264, 0.027849935, 0.00914172, -0.045254435); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-1-ReLU) +//!HOOK LUMA +//!BIND conv2d_tf +//!BIND conv2d_tf1 +//!BIND conv2d_tf2 +//!BIND conv2d_tf3 +//!BIND conv2d_tf4 +//!BIND conv2d_tf5 +//!BIND conv2d_tf6 +//!BIND conv2d_tf7 +//!SAVE conv2d_1_tf7 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.018297708, 0.46894577, -0.2588475, -0.13566652, 0.025172392, 0.5003225, -0.020772725, -0.108283766, -0.083573245, -0.51830274, 0.23258187, 0.26434824, -0.08200021, -0.07612996, -0.06256051, -0.03164216) * input_0(-1.0, -1.0); + result += mat4(-0.1006826, -0.4890911, 0.012679456, 0.17090386, -0.022530675, -0.35603294, -0.26620695, 0.216325, 0.099109106, 0.6524321, -0.11270452, -0.4119711, -0.10044098, 0.15866823, -0.086750925, 0.14334123) * input_0(-1.0, 0.0); + result += mat4(0.1342367, 0.12298676, 0.26243177, 0.108184025, -0.12269121, 0.34894103, -0.10694488, 0.17009687, 0.048821006, -0.4850367, -0.27946195, -0.019031687, 0.20426491, 0.1340857, 0.13697866, 0.25380296) * input_0(-1.0, 1.0); + result += mat4(0.08625242, -0.27479008, -0.014271535, 0.16540852, -0.061462913, -0.06869578, -0.04141364, 0.049360715, 0.117881455, 0.11350959, 0.3092712, -0.072762325, 0.20143782, 0.0016910909, -0.1714035, 0.0069750696) * input_0(0.0, -1.0); + result += mat4(-0.092245415, -0.07049664, -0.11312414, -0.14027931, -0.07699571, 0.19423483, -0.17314325, -0.059122927, -0.032859396, -0.090628356, 0.13384007, -0.0016384849, -0.12838267, 0.08697662, 0.086273335, -0.011636582) * input_0(0.0, 0.0); + result += mat4(0.09655237, 0.22421809, -0.07063666, -0.24738325, 0.48803315, -0.0066242614, -0.02196281, -0.50592166, -0.22676276, 0.01482737, 0.14360897, 0.255174, 0.024208978, -0.21309273, -0.17001937, 0.21816081) * input_0(0.0, 1.0); + result += mat4(-0.03192084, -0.050140873, 0.3913686, -0.09731458, -0.043569546, -0.16265646, 0.5113714, 0.07543933, -0.020411532, -0.08338068, -0.5595042, 0.02899598, -0.13996819, 0.043122787, 0.050273668, -0.08683195) * input_0(1.0, -1.0); + result += mat4(0.17855093, 0.3236396, -0.1135777, -0.09462723, 0.03909062, 0.10243979, -0.03790016, -0.12137215, -0.0254845, -0.16984262, 0.03154239, 0.1343955, -0.1789364, -0.15181705, 0.11126201, 0.20583072) * input_0(1.0, 0.0); + result += mat4(-0.15927458, -0.31712767, -0.12966147, 0.15908714, -0.15940686, -0.48250222, 0.18724641, 0.30105442, 0.12391391, 0.4695555, 0.048684523, -0.16884197, 0.29437485, 0.10035541, -0.26143712, -0.019566732) * input_0(1.0, 1.0); + result += mat4(-0.07708557, 0.17590863, 0.029202053, -0.16902708, -0.09361277, 0.22110114, -0.018169355, 0.13108087, -0.018424556, 0.12927729, 0.30829725, -0.3649292, -0.018528393, -0.5785097, 0.3072005, 0.09101805) * input_1(-1.0, -1.0); + result += mat4(0.22803998, -0.19379845, 0.023064015, 0.34603247, -0.06670017, -0.04085546, 0.23503236, -0.063078895, 0.05858287, -0.5697198, -0.033751093, 0.70230377, -0.03146658, -0.034687467, -0.22016546, -0.04643208) * input_1(-1.0, 0.0); + result += mat4(-0.18758328, 0.07456033, 0.053842902, 0.17685004, 0.22027102, -0.3537122, -0.15357023, -0.37882167, -0.32218862, 0.670185, 0.07582003, -0.07888668, 0.036626734, -0.008469439, -0.48501596, -0.1538616) * input_1(-1.0, 1.0); + result += mat4(0.05329811, -0.14122969, -0.118069485, 0.04926548, 0.03428245, -0.18651025, 0.1551037, -0.07032833, -0.11155384, -0.1352916, -0.637399, 0.097832814, 0.03319918, 0.035617236, 0.04433757, -0.1792821) * input_1(0.0, -1.0); + result += mat4(-0.33406603, -0.20885131, 0.143834, -0.20822623, 0.17308903, 0.10455811, -0.1061029, 0.35412312, 0.0024349461, 0.032778606, 0.05969838, 0.018806646, 0.28590134, 0.45913476, -0.092587724, 0.20184845) * input_1(0.0, 0.0); + result += mat4(0.35324672, 0.18206586, -0.26130897, -0.07778082, -0.24083152, 0.2943888, -0.04132649, -0.05045322, 0.20549044, 0.31730095, -0.11806877, 0.02575103, -0.6788855, 0.034747206, 0.5102037, 0.36301777) * input_1(0.0, 1.0); + result += mat4(0.028335974, 0.01320685, 0.08514055, 0.07249773, 0.057420447, 0.0033561029, -0.31177306, -0.08538077, 0.04886278, 0.3828422, 0.29787892, -0.11809022, -0.007704679, -0.07345181, 0.08492488, 0.059630662) * input_1(1.0, -1.0); + result += mat4(0.056832414, 0.12223425, -0.049084414, -0.05035097, -0.095385276, 0.17441145, -0.07875842, -0.2062534, -0.11088406, -0.35722473, -0.11752162, 0.1270483, -0.05248851, -0.10385849, -0.2295272, -0.2269244) * input_1(1.0, 0.0); + result += mat4(-0.08985911, -0.118474305, 0.043848548, -0.103256695, 0.040664207, -0.2768564, 0.30428198, 0.28747824, 0.23604704, -0.29595527, 0.18119633, -0.27682763, 0.39084733, 0.23679763, 0.09457351, -0.10706233) * input_1(1.0, 1.0); + result += mat4(-0.027820727, 0.2898909, 0.17186774, -0.1267007, -0.023573188, -0.116718225, -0.120654434, -0.20778328, -0.010193854, -0.1751204, 0.1489484, -0.08424867, -0.06781565, 0.109158404, -0.22937408, -0.1019795) * input_2(-1.0, -1.0); + result += mat4(-0.18039697, 0.26060414, -0.0924582, 0.2919833, -0.010638657, -0.28537768, 0.06926517, -0.43784422, -0.20720525, -0.20707439, 0.097301565, -0.29569873, 0.09572207, -0.08073074, -0.2015056, 0.287129) * input_2(-1.0, 0.0); + result += mat4(0.07112487, -0.18870835, -0.26760745, 0.1964845, -0.13185668, 0.12888047, 0.55657184, -0.47317395, 0.23628068, -0.0768117, 0.13285094, -0.5990197, -0.28887275, 0.07563767, -0.12771454, 0.31031427) * input_2(-1.0, 1.0); + result += mat4(0.014228094, 0.06637983, 0.06676234, -0.12415743, 0.25481293, 0.13663478, -0.08474886, -0.09999933, -0.047385514, 0.010837854, -0.3563768, 0.082176305, -0.1316895, -0.10738917, 0.02192894, 0.029939055) * input_2(0.0, -1.0); + result += mat4(-0.6514827, -0.31886315, 0.10039762, -0.2531242, 0.22552514, 0.32514244, -0.11659216, 0.2213865, 0.5901125, 0.2364481, -0.08523333, 0.37752047, 0.2506334, 0.40421402, -0.1704091, 0.12660275) * input_2(0.0, 0.0); + result += mat4(0.2930132, 0.21225996, 0.09740265, -0.17314094, -0.0890631, -0.21557717, 0.1090088, -0.26774523, -0.63319725, 0.0270458, 0.24775097, 0.41169363, 0.14775604, -0.23889528, -0.38895267, -0.13822813) * input_2(0.0, 1.0); + result += mat4(-0.1401998, -0.02936413, -0.1484179, 0.083097, -0.015402029, 0.1566274, 0.14834136, -0.04143901, -0.059586056, 0.15105371, -0.21694604, -0.040383294, -0.031510048, 0.019969363, 0.6606997, -0.28153637) * input_2(1.0, -1.0); + result += mat4(-0.18489945, -0.022373196, 0.03133065, 0.01319293, 0.047654584, -0.21735948, -0.045102615, 0.1824517, -0.17522134, -0.053863652, -0.20072928, 0.14376852, 0.13965261, 0.114164874, 0.3483592, -0.19944611) * input_2(1.0, 0.0); + result += mat4(0.22272411, -0.25153986, 0.03960085, -0.046823464, -0.033114582, -0.31066513, 0.0038220775, 0.064410776, 0.28981516, -0.038174868, 0.081273876, 0.034713298, -0.085621506, -0.17873941, 0.06407687, 0.114539936) * input_2(1.0, 1.0); + result += mat4(-0.049659062, -0.030781107, 0.011731355, 0.033466376, -0.021491116, -0.033540778, -0.1439945, -0.07768296, 0.05291816, -0.1662153, 0.026728868, -0.044668425, -0.07262831, 0.4132816, -0.16915053, -0.1447974) * input_3(-1.0, -1.0); + result += mat4(0.04866479, 0.29436952, 0.0051837154, 0.5576117, 0.13899933, -0.023619885, 0.02879244, 0.124040656, -0.034468286, -0.13446209, -0.017768268, 0.066515796, 0.008006431, -0.35402393, 0.06476459, 0.030295651) * input_3(-1.0, 0.0); + result += mat4(0.036033884, -0.652619, -0.33144975, 0.39199078, -0.24911216, 0.04635831, -0.006696678, -0.06439442, -0.05448083, 0.24122389, 0.027407657, -0.0021689646, 0.052865583, 0.17844395, -0.009994414, -0.003542195) * input_3(-1.0, 1.0); + result += mat4(-0.15847337, -0.08822254, 0.101560205, -0.034090504, 0.09911591, 0.007398035, 0.009844726, -0.00069251796, -0.07813301, 0.062058385, -0.13201062, -0.009590498, 0.049634393, -0.14170577, -0.106401384, 0.07569105) * input_3(0.0, -1.0); + result += mat4(0.046930153, 0.20525578, -0.011197395, -0.2250293, 0.2190763, 0.012157677, 0.045961045, 0.070452355, 0.06581041, 0.099792786, 0.063347735, -0.01971416, -0.039178137, 0.22206807, -0.12898983, 0.3029321) * input_3(0.0, 0.0); + result += mat4(0.09632923, 0.13122395, -0.2292009, 0.16969132, -0.19616534, 0.120382644, 0.09158514, -0.09497786, -0.016933586, -0.15152422, 0.046406705, 0.029976277, 0.052315988, -0.032801516, 0.07083179, -0.28308475) * input_3(0.0, 1.0); + result += mat4(0.024734916, -0.13788627, -0.2959542, -0.21938114, 0.050166454, 0.013826276, 0.043875646, -0.020048957, 0.024400903, 0.048411503, 0.1840064, 0.06005905, 0.0076751844, -0.034756947, 0.2782762, -0.01243959) * input_3(1.0, -1.0); + result += mat4(0.015984328, 0.28704506, 0.32364088, -0.21648441, 0.07450816, -0.00499766, 0.04757844, 0.08026723, -0.072271734, -0.09462897, -0.09763123, -0.06561006, 0.019506004, 0.1894774, -0.09311365, -0.18260637) * input_3(1.0, 0.0); + result += mat4(-0.07543072, -0.06753361, 0.19622643, -0.30862242, -0.13381447, -0.15795383, -0.11753076, -0.055363458, 0.052781835, 0.0032815123, -0.01116067, 0.03214715, -0.07189258, -0.44403526, 0.057578053, 0.30474928) * input_3(1.0, 1.0); + result += mat4(0.025510382, 0.11699076, -0.10693744, -0.1360235, 0.095219426, -0.6987224, 0.4311176, 0.22526741, -0.061568048, 0.32070303, 0.06854719, 0.24435586, -0.058521707, 0.19749148, 0.04283546, 0.044807814) * input_4(-1.0, -1.0); + result += mat4(-0.008989778, -0.04074503, 0.02765948, 0.17193326, 0.07847879, 0.24442418, -0.057657465, -0.14592466, -0.08683251, 0.27665192, 0.11768193, -0.40604317, -0.004212073, 0.20893888, 0.048282616, -0.19346142) * input_4(-1.0, 0.0); + result += mat4(-0.016121961, -0.027081592, 0.13504234, -0.064443395, -0.18425322, 0.23392393, -0.46947387, -0.110835746, 0.23278761, -0.68312645, -0.30018064, -0.34806636, 0.07089907, -0.3802909, -0.011102201, 0.056068547) * input_4(-1.0, 1.0); + result += mat4(-0.04930811, -0.055451293, 0.037254192, 0.09498794, -0.13088669, 0.32614717, -0.17232825, -0.3349136, -0.01577541, -0.071565054, 0.4226003, -0.05522077, 0.019015914, -0.13198155, 0.19460736, 0.080232635) * input_4(0.0, -1.0); + result += mat4(0.050378375, 0.02008818, 0.02603408, -0.028262142, 0.22397481, 0.2330516, 0.099202745, -0.017868333, 0.13599949, -0.0073499656, -0.18669468, 0.43401796, -0.07722841, -0.24929127, -0.09436592, 0.02077821) * input_4(0.0, 0.0); + result += mat4(0.00783334, 0.0037297416, -0.12537052, -0.08876496, -0.16592026, -0.31954902, 0.4186615, 0.42705712, -0.17796606, 0.28048941, -0.02384955, 0.019032234, 0.059437234, 0.1936365, -0.07639493, -0.01840512) * input_4(0.0, 1.0); + result += mat4(0.0398625, 0.0016785483, 0.004543682, -0.04746212, 0.037506685, 0.08675039, -0.085313775, 0.16570485, 0.034176372, -0.17111343, -0.6585167, -0.13711654, 0.022595916, -0.14569569, -0.35232732, -0.05532663) * input_4(1.0, -1.0); + result += mat4(-0.049967777, 0.05546629, -0.022943722, -0.07506322, -0.27844194, -0.4407144, -0.07143296, 0.03502931, 0.011703122, 0.19596933, 0.17797583, 0.023335401, 0.07879829, 0.12331624, 0.18232827, 0.20308104) * input_4(1.0, 0.0); + result += mat4(0.0035238774, -0.0058517726, -0.00946604, 0.099251755, 0.3421259, 0.20699295, 0.08864535, -0.20964177, -0.07784156, -0.12788537, 0.37877128, 0.20232554, -0.13810302, 0.06546211, -0.019856554, -0.08521725) * input_4(1.0, 1.0); + result += mat4(0.018956868, -0.053969085, 0.033594716, -0.051677834, -0.020814963, -0.04378899, -0.023613032, 0.09310894, 0.026182754, 0.2892253, -0.20521097, -0.28944468, 0.05687716, -0.7181819, 0.26776358, 0.0838468) * input_5(-1.0, -1.0); + result += mat4(0.068306446, 0.093603015, -0.075373456, -0.11121396, -0.08769296, -0.00246131, 0.055964895, -0.17580435, 0.04107212, -0.28890452, -0.0828497, 0.29609418, 0.10642594, -0.08859801, -0.14300257, 0.2102045) * input_5(-1.0, 0.0); + result += mat4(-0.04151452, -0.15765262, -0.062093414, 0.016550422, 0.10600111, -0.22260658, -0.13225164, -0.17032471, -0.08886816, 0.19151486, 0.33779165, 0.20715548, -0.34325677, 0.72811794, -0.38608193, 0.20683698) * input_5(-1.0, 1.0); + result += mat4(-0.05154703, 0.0024635748, 0.04363781, 0.024945632, -0.019433377, 0.07945199, -0.014206938, -0.0942894, -0.04770725, -0.08916014, -0.023362527, 0.21056344, -0.010720425, 0.2059489, -0.5253679, -0.19101492) * input_5(0.0, -1.0); + result += mat4(-0.007657936, 0.18201259, -0.084897704, 0.06513779, 0.12626965, 0.2285236, -0.071837865, 0.21902871, -0.13969524, -0.06251893, 0.018713174, -0.100160785, 0.008809744, 0.2596828, 0.1806284, -0.34415644) * input_5(0.0, 0.0); + result += mat4(-0.02537419, 0.12778378, 0.057502236, -0.09163055, -0.15877686, 0.10029384, 0.071995474, 0.07419724, 0.24885458, 0.093442954, -0.24330655, -0.28533107, -0.08268152, -0.13538823, 0.31976342, 0.23197202) * input_5(0.0, 1.0); + result += mat4(0.03307784, -0.15174901, -0.0060392926, -0.04631546, 0.039538275, -0.038010094, -0.018380154, -0.03130754, 0.014204294, -0.05686358, 0.2432874, 0.021807712, 0.044131894, 0.14699905, 0.69810146, 0.13865738) * input_5(1.0, -1.0); + result += mat4(0.032146346, 0.09130767, -0.004827133, 0.07139125, -0.035782114, -0.017396273, -0.0418413, 0.058266483, 0.06564744, 0.18414454, 0.020154776, -0.07380191, -0.17182747, -0.45637596, -0.3104471, -0.08718521) * input_5(1.0, 0.0); + result += mat4(-0.06052712, -0.034652855, 0.14312193, 0.13721387, -0.010737882, -0.20050016, 0.14576717, 0.089344725, -0.11173386, -0.15870684, -0.11465236, 0.04668753, 0.36446166, 0.10239595, -0.076431505, -0.25257125) * input_5(1.0, 1.0); + result += mat4(0.040690232, -0.40861672, 0.06689598, 0.18501152, 0.030213514, -0.37844515, 0.04686415, -0.027913537, 0.057334512, -0.026481446, -0.07342344, 0.029673409, 0.0822086, 0.21577635, 0.022891905, -0.019103045) * input_6(-1.0, -1.0); + result += mat4(-0.20442864, 0.22534345, -0.282521, -0.23932868, 0.047883317, -0.06816101, 0.013686157, 0.24932034, 0.14966895, 0.3306834, -0.21860427, 0.5451699, -0.20035507, 0.13255039, 0.0066287424, 0.5432236) * input_6(-1.0, 0.0); + result += mat4(0.2039212, -0.5841518, -1.2139696, -0.26730537, -0.077080525, 0.41055763, -0.09477386, -0.15016921, -0.12777324, -0.041770514, -0.58536917, 0.45835534, -0.07808889, -0.34921443, -0.06760713, 0.0627196) * input_6(-1.0, 1.0); + result += mat4(-0.07889937, 0.274966, 0.25239184, -0.20579523, -0.020260692, 0.1461806, -0.1923242, -0.019385988, -0.06883708, 0.2290486, 0.2784619, -0.14398551, -0.028968552, 0.033888057, -0.035657007, -0.10763752) * input_6(0.0, -1.0); + result += mat4(0.31725553, 0.5286931, -0.02939961, 0.08227747, 0.087868474, 0.20334852, 0.12189245, -0.16118856, -0.35360298, 0.06432406, 0.16337961, -0.20450011, -0.25027362, -0.08802772, -0.01792379, -0.0053329766) * input_6(0.0, 0.0); + result += mat4(-0.23860663, 0.3325474, 0.29579186, 0.04297769, -0.08581675, -0.26887295, 0.109972134, 0.15854771, 1.1504606, 0.028688977, -0.24680589, 0.06823606, -0.42388743, 0.26411915, 0.15534726, -0.08360892) * input_6(0.0, 1.0); + result += mat4(-0.039153725, -0.20087428, 0.068807416, 0.0009495357, -0.015276293, 0.18603066, 0.15051417, 0.036229003, 0.008735288, -0.118927345, 0.024463192, 0.0038989189, 0.11612601, -0.059126314, -0.50322545, 0.091253035) * input_6(1.0, -1.0); + result += mat4(0.027515694, 0.15902682, -0.00093680806, -0.12041529, -0.1269131, -0.19246398, -0.14559509, -0.027110562, -0.10219158, -0.18421139, 0.17986782, 0.2047325, -0.2761941, 0.11869016, -0.062860884, 0.08932727) * input_6(1.0, 0.0); + result += mat4(-0.005390245, -0.5921916, 0.66795504, 0.4571369, 0.16002935, 0.016000023, -0.046679184, 0.0077806106, 0.31630462, -0.09478791, 0.07460144, 0.0044612326, -0.17297405, 0.11786222, 0.23311466, -0.02115105) * input_6(1.0, 1.0); + result += mat4(0.042469926, -0.42039642, 0.092120245, 0.012319226, 0.009033028, 0.013000746, -0.12091141, -0.0067003635, 0.04810013, -0.40858525, 0.022699447, 0.0035510897, 0.028156536, 0.49421734, -0.25057003, -0.1307848) * input_7(-1.0, -1.0); + result += mat4(0.11331991, 0.20759186, 0.027871914, 0.10319892, 0.11412848, -0.14488256, -0.13897529, -0.08423753, 0.0022095402, -0.09889297, -0.019079896, -0.15437993, 0.028930863, -0.3011462, -0.07022051, 0.27073348) * input_7(-1.0, 0.0); + result += mat4(-0.1413835, 0.17612223, -0.080086395, -0.032508027, -0.1376313, 0.07834707, 0.38604474, -0.07402952, 0.03076599, 0.30692428, 0.59661174, -0.22691424, -0.138837, 0.017651062, 0.3974806, 0.1386739) * input_7(-1.0, 1.0); + result += mat4(0.009309457, 0.09885955, -0.10259449, -0.08262549, 0.023784755, -0.09361989, 0.12999317, -0.07674944, 0.16733812, 0.08590033, -0.10540478, -0.066138975, -0.0787372, -0.06931113, 0.0947842, 0.075116396) * input_7(0.0, -1.0); + result += mat4(-0.031128148, -0.050857026, 0.042750336, -0.14942327, 0.18826514, 0.260413, -0.06319658, 0.23887716, 0.064968005, 0.1211838, 0.0005182092, 0.11877151, -0.104855694, -0.06411901, -0.017303225, -0.056365818) * input_7(0.0, 0.0); + result += mat4(0.021222621, -0.0645182, 0.184103, 0.10354807, -1.1662798, -0.24031737, 0.002238057, -0.10636361, -0.3686681, -0.4173485, -0.029381363, 0.38590446, 0.22694808, -0.015120997, -0.3677692, -0.29185382) * input_7(0.0, 1.0); + result += mat4(-0.008381946, 0.19770631, 0.063880615, 0.07126495, 0.036835108, 0.05809352, 0.21402358, -0.084208414, -0.19935253, 0.10874912, -0.05746575, -0.07720165, 0.02980641, -0.10888518, 0.17775209, -0.04980284) * input_7(1.0, -1.0); + result += mat4(-0.06725999, -0.18577255, -0.106892705, -0.060665954, 0.04301294, 0.023495467, 0.13873026, 0.15121478, 0.14579245, -0.21555716, -0.101121925, -0.021755574, 0.029962564, 0.2838109, 0.2103902, -0.0028432754) * input_7(1.0, 0.0); + result += mat4(0.13220076, 0.101856075, -0.052207112, -0.07255827, -0.21211226, 0.023974236, -0.056743182, 0.09907649, 0.16632834, 0.5694103, -0.33268666, -0.046320852, -0.15148589, -0.16899306, -0.10508586, 0.058208667) * input_7(1.0, 1.0); + result += vec4(0.03427676, -0.020817926, -0.010361322, -0.017059714); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.039567094, -0.43316358, 0.20915909, 0.18315712, 0.015535365, -0.004058719, 0.059000865, -0.16307113, 0.13039316, -0.15759301, -0.09636466, 0.06275445, -0.09101448, -0.060277533, 0.17333308, -0.58897585) * input_0(-1.0, -1.0); + result += mat4(0.056190096, 0.23235533, 0.030431041, 0.1558483, -0.057986736, 0.093913056, -0.14213169, -0.047766667, 0.13223542, -0.2066611, 0.08355805, -0.012119502, 0.24123566, -0.63027346, -0.08741764, -0.35786816) * input_0(-1.0, 0.0); + result += mat4(0.05967517, -0.19833638, -0.20466098, 0.00895514, -0.058874097, 0.040110018, 0.05825369, -0.14669065, -0.058051012, -0.13675727, -0.0776849, 0.036186345, 0.015676374, 0.025589388, -0.19963656, -0.25099486) * input_0(-1.0, 1.0); + result += mat4(0.1996593, 0.9433096, 0.882037, 0.7088997, -0.036864094, 0.077579744, -0.49701595, -0.39370036, 0.28795484, 0.17646755, 0.20139262, -0.32180476, -0.033751167, 0.051146552, 0.5294707, 0.24251561) * input_0(0.0, -1.0); + result += mat4(-0.06706463, -0.75767773, -0.028875966, -0.04360051, 0.107579805, 0.035667364, -0.046362408, -0.48148125, -0.041337732, 1.4835188, 0.21237881, 1.3569468, 0.39694571, 0.23055813, -0.15518978, -0.8661828) * input_0(0.0, 0.0); + result += mat4(0.0058900565, -0.17190386, -0.15545288, -0.0023512102, 0.004901611, 0.10175353, 0.022420222, -0.1386302, 0.13983807, 0.18933438, -0.3086677, -0.10392536, -0.11931864, -0.4936888, 0.0090244245, -0.6116127) * input_0(0.0, 1.0); + result += mat4(-0.01182272, 0.025892232, -0.00791368, -0.33227783, -0.08584537, -0.35047132, -0.5550219, -0.1629981, -0.054271016, 0.104201555, -0.007117869, -0.019836944, 0.07004291, 0.17187676, 0.3889604, 0.32782796) * input_0(1.0, -1.0); + result += mat4(0.023287056, -0.37169847, 0.16990404, -0.003944992, 0.02372341, -1.1265074, 0.34422025, 0.67309207, 0.06773403, 0.13174526, -0.13039137, -0.2107985, 0.091445245, 0.1893404, 0.065885216, -0.5429512) * input_0(1.0, 0.0); + result += mat4(0.04779407, 0.042501897, -0.29131716, 0.017149167, -0.10477231, 0.057069026, -0.12949744, 0.0973941, -0.062542446, -0.014713815, 0.10710695, -0.11727153, -0.06941873, 0.5236093, -0.2773098, -0.09916239) * input_0(1.0, 1.0); + result += mat4(-0.080121756, 0.011277088, -0.030683903, 0.02151559, 0.0078036375, -0.099280685, -0.114409275, -0.12918492, 0.024843762, -0.19940023, -0.03943061, 0.15899153, 0.0055334745, 0.049504735, -0.36203966, -0.14327869) * input_1(-1.0, -1.0); + result += mat4(0.20628242, -0.59426045, 0.03572062, 0.43351975, -0.025763243, 0.07894731, -0.12074818, -0.0048805643, -0.025406156, 0.14770465, -0.13829659, 0.19875717, -0.08387234, -2.0374992, 0.074322075, 0.124326) * input_1(-1.0, 0.0); + result += mat4(-0.11757958, 0.81451654, -0.15286578, -0.023154326, 0.014220353, -0.1977295, 0.009836827, -0.06493123, -0.005770649, -0.19055405, -0.056161005, 0.06577795, -0.014020656, 0.11625887, 0.01583064, -0.003228717) * input_1(-1.0, 1.0); + result += mat4(-0.037355475, 0.17592002, -0.09868367, -0.06176407, -0.13941106, -0.06449423, -0.17643408, 0.11102824, 0.028187659, -0.27958187, -0.045316633, 0.28403115, 0.16899656, -0.9247265, -0.4343532, -0.3864194) * input_1(0.0, -1.0); + result += mat4(-0.032376308, 0.2877139, 0.07040794, 0.21678378, 0.012516716, -0.2621196, 0.164444, 0.34233826, -0.28475904, 0.39768678, 0.22755115, -0.089983344, -0.061383698, 0.0600887, 0.11079138, 0.26881877) * input_1(0.0, 0.0); + result += mat4(-0.00799689, -0.45500344, 0.27983975, -0.1551937, 0.051883787, 0.39906442, -0.15890303, -0.057338398, 0.029562661, 0.15540476, -0.10396491, 0.5329681, 0.01395303, 0.08898636, -0.0344595, 0.2420599) * input_1(0.0, 1.0); + result += mat4(-0.05698752, 0.0028982142, -0.14479151, -0.037127033, -0.018837383, -0.29685098, 0.18281494, -0.08114577, -0.025354734, -0.21713044, 0.016941717, 0.2809891, -0.054751396, -0.123362914, 0.0014309221, -0.13178375) * input_1(1.0, -1.0); + result += mat4(-0.070075735, 0.06262544, -0.102137275, -0.037860446, 0.12250037, 0.5203413, -0.07485356, 0.5949346, 0.092898585, 0.017126137, 0.13759333, 0.0591891, 0.039100952, 0.19005206, 0.019619443, -0.24444462) * input_1(1.0, 0.0); + result += mat4(-0.09507767, 0.032644484, -0.12861134, -0.15391311, -0.042821016, -0.3048728, 0.33915162, -0.27734825, 0.09858041, -0.09094039, 0.21176954, 0.33833307, 0.0029126443, -0.0023462758, 0.1389576, 0.032157607) * input_1(1.0, 1.0); + result += mat4(-0.029180499, 0.42934296, 0.28850314, 0.11897645, 0.04104005, -0.049016207, -0.06483006, 0.09672445, 0.13003233, 0.17296046, 0.37821668, -0.08863304, -0.032959465, 0.06600201, -0.05283669, -0.03248512) * input_2(-1.0, -1.0); + result += mat4(0.11315425, -0.1935426, -0.32292032, -0.04635467, 0.06414334, -0.11366518, -0.027364982, -0.1045514, -0.034151316, 0.12813783, -0.3733134, -0.12931809, -0.04900955, -0.059123937, 0.110263675, -0.3548263) * input_2(-1.0, 0.0); + result += mat4(0.0077380035, -0.03662774, -0.30152476, 0.2898939, 0.02471231, 0.05634771, -0.03496526, -0.010256227, -0.011051693, -0.11506318, 0.0011421713, -0.04805659, 0.0582052, -0.08214481, -0.13642246, -0.24050947) * input_2(-1.0, 1.0); + result += mat4(-0.101801954, -0.2394255, 0.31307825, 0.5983494, -0.37040076, -0.02485311, 0.32311806, 0.26439002, -0.03221754, 0.047440656, 0.05043637, 0.15750208, -0.07800105, 0.101052254, -0.12908936, -0.7325313) * input_2(0.0, -1.0); + result += mat4(-0.07613988, -0.25530297, -0.49576005, 1.2001693, 0.19391352, 0.28110665, 0.20305419, -0.6585111, 0.11548125, -0.0698222, -0.3734551, -0.49218094, 0.07786997, -0.113462426, 0.17924067, -0.68454653) * input_2(0.0, 0.0); + result += mat4(0.05402704, -0.2843527, -0.066734225, 0.40689644, -0.022119066, -0.01595625, -0.057194095, -0.11681998, -0.00022428234, 0.013698916, 0.10888485, -0.26213422, 0.05720785, -0.2999177, -0.048991267, 0.18401156) * input_2(0.0, 1.0); + result += mat4(-0.00593733, -0.22095785, 0.089275494, 0.41719994, 0.1989021, 0.47933912, 0.18653381, 0.39822385, 0.06944384, -0.13093083, -0.11702078, 0.14761119, 0.20431799, -0.057214875, 0.15694022, -0.057800762) * input_2(1.0, -1.0); + result += mat4(0.013395099, 0.26030046, -0.18339214, 0.13852625, 0.032028195, 0.28873128, -0.0067391545, -0.0076288576, 0.0001761378, -0.14838938, 0.0295081, 0.24206458, 0.06317203, -0.14121448, 0.052511435, -0.29369032) * input_2(1.0, 0.0); + result += mat4(-0.016845182, 0.13061121, 0.0785009, 0.32452944, 0.013115404, -0.048700225, -0.027835667, 0.0047315476, 0.0068243793, -0.0069051567, 0.013097438, 0.11812084, -0.06211567, -0.08214688, 0.46001446, 0.22347958) * input_2(1.0, 1.0); + result += mat4(0.095854655, -0.051033024, -0.23587513, 0.20900361, 0.16371135, 0.14948218, 0.15316443, -0.33867827, -0.09016258, 0.22904806, -0.23054034, 0.0938762, 0.05774614, -0.1915617, -0.012925247, -0.18215774) * input_3(-1.0, -1.0); + result += mat4(0.049552955, 0.30548903, -0.039448388, 0.14905322, -0.15889847, -0.056463294, -0.00067290966, -0.016723195, 0.038060077, 0.0034727436, 0.06282097, 0.22147773, -0.014733314, -0.04137001, -0.124080546, -0.06554968) * input_3(-1.0, 0.0); + result += mat4(0.0013830228, 0.0025886886, -0.039879926, 0.02853101, 0.06394969, -0.22503784, 0.021138022, 0.21567239, 0.036166172, -0.00012991301, -0.019839864, 0.16571788, 0.01116053, -0.028991854, -0.08526752, -0.09882363) * input_3(-1.0, 1.0); + result += mat4(0.12590048, -0.0795076, 0.0331414, 0.31412902, 0.07644766, 0.087718144, 0.058757383, -0.39166772, -0.07283025, -0.10550974, -0.21201491, 0.15224718, 0.097867385, 0.016935546, 0.32420716, -0.3343574) * input_3(0.0, -1.0); + result += mat4(-0.07019691, -0.35609186, 0.16606328, 0.34112895, -0.29889497, 0.18994913, 0.27923548, 0.12679887, 0.008388555, -0.016678646, -0.17798218, 0.07573371, -0.14363486, 0.15306595, -0.037216432, -0.037310287) * input_3(0.0, 0.0); + result += mat4(-0.011600557, 0.0069260956, -0.009509282, 0.100286685, 0.0081587145, -0.06677212, -0.4636992, -0.43354174, -0.018041467, -0.09966459, 0.07912203, 0.3268709, -0.031706173, 0.1144027, 0.013089347, -0.039395057) * input_3(0.0, 1.0); + result += mat4(-0.0029771684, -0.13667542, 0.04428649, 0.0052979244, 0.08211806, 0.008645074, -0.048377395, -0.22237329, 0.01937856, -0.17155989, -0.23721902, 0.13864955, 0.060051855, 0.1192957, 0.23048659, 0.0845313) * input_3(1.0, -1.0); + result += mat4(-0.0122474935, 0.009902908, 0.109834276, -0.0362772, 0.009483003, -0.29564196, 0.14343743, 0.19498429, -0.10258454, 0.08334128, 0.37721342, 0.110838674, 0.0784553, -0.06107733, -0.16982941, 0.14130215) * input_3(1.0, 0.0); + result += mat4(-0.009241741, 0.07560217, -0.015352167, -0.03056427, 0.16443476, -0.05728922, 0.112332284, 0.026661586, 0.026992857, 0.015426831, 0.09125849, 0.10162168, 0.028851723, 0.00096625293, -0.025888281, -0.024203643) * input_3(1.0, 1.0); + result += mat4(-0.0730464, 0.059522774, 0.17172477, -0.07993797, -0.01082821, -0.07143644, -0.34118164, 0.11786411, 0.008014618, -0.2666826, -0.07164364, -0.011489694, -0.25595358, -0.19086583, -0.39330378, 2.0277061) * input_4(-1.0, -1.0); + result += mat4(0.017003337, -0.037405744, 0.054820597, -0.21745124, 0.044152908, 0.31175888, 0.09212553, 0.2369043, 0.028693773, 0.14689185, -0.05680137, 0.43723646, 0.34754306, 1.7975179, -1.1469849, 2.7851043) * input_4(-1.0, 0.0); + result += mat4(-0.055463877, 0.20086691, 0.14362612, 0.020170366, 0.15316138, -0.020733092, 0.17065565, 0.74967325, -0.06303106, -0.12653778, -0.03617513, 0.26774937, 0.012703635, 0.48014554, 0.32938778, 0.009929216) * input_4(-1.0, 1.0); + result += mat4(-0.043091025, -0.1034018, 0.07480399, -0.005767626, 0.0070946123, -0.029708745, -0.5578188, 0.0836441, -0.21645835, 0.19472796, 0.50192755, -0.14588594, 0.0039386046, 0.07154826, -0.775403, 0.18236922) * input_4(0.0, -1.0); + result += mat4(0.38913396, 0.0687882, 0.026596116, 0.48072505, 0.27689785, 0.38894626, -0.77643085, 0.09431253, 0.7205606, -0.085823506, -0.7089035, -0.5726664, -0.28116873, 0.35391787, 0.9137181, 2.185889) * input_4(0.0, 0.0); + result += mat4(0.019282151, -0.00019116545, 0.23291758, -0.24287087, 0.11198681, -0.19460385, 0.37090102, 0.50172347, -0.14181359, -0.1926152, -0.15758513, 0.25525108, 0.039151996, 0.008374848, 0.56333613, -0.08375557) * input_4(0.0, 1.0); + result += mat4(0.027342502, 0.08930455, 0.19188234, 0.17485823, -0.011429374, -0.039279576, -0.4434458, -0.20116156, 0.068396546, 0.029207952, 0.09535323, 0.081040755, -0.18156958, -0.52683043, -0.1249398, 0.029224342) * input_4(1.0, -1.0); + result += mat4(-0.07962692, -0.09188578, -0.18596852, -0.036485963, 0.026289584, 0.21009569, -0.4626478, -0.21630292, -0.14257455, 0.15765049, -0.45604107, 0.36116374, 0.06398351, -1.0352944, -0.2600666, -0.047345277) * input_4(1.0, 0.0); + result += mat4(-0.054100424, -0.025849199, 0.11365664, 0.0322179, 0.011786067, 0.11424658, 0.1416993, 0.14771152, 0.003779751, -0.12988593, 0.17776446, 0.31335133, 0.11815366, -0.11645549, -0.34515315, -0.5657212) * input_4(1.0, 1.0); + result += mat4(0.0018702396, -0.15422244, 0.46669784, 0.33587703, 0.041605677, 0.042918336, -0.11512176, 0.10463746, 0.042628482, -0.04651252, -0.028339723, 0.19139095, -0.04938853, -0.07015461, -0.04817789, 0.1192612) * input_5(-1.0, -1.0); + result += mat4(-0.184997, -0.9284425, 0.103451826, 0.48969778, -0.022002993, -0.010470931, -0.14119112, 0.3809599, 0.06607021, 0.19214983, 0.041262787, 0.28635347, 0.027862728, 0.055063542, -0.29049513, -0.022892956) * input_5(-1.0, 0.0); + result += mat4(0.10625069, -0.2748908, -0.17315945, -0.052982736, -0.01773202, 0.16687305, 0.04546164, 0.13012548, 0.03156891, 0.09487103, -0.03255516, 0.20563996, -0.03335105, 0.12355721, 0.014498179, 0.031605776) * input_5(-1.0, 1.0); + result += mat4(-0.08254765, 0.37089476, -0.07419039, -0.39047766, -0.04742528, 0.3507698, -0.043405987, -0.063203394, 0.041552935, 0.2664712, 0.2330577, 0.20337744, -0.08112336, 0.026665738, -0.5190022, 0.4857033) * input_5(0.0, -1.0); + result += mat4(0.14754215, 0.36966744, 0.37519482, -0.7834512, -0.06678693, -0.16467123, -0.019931793, 0.51874024, -0.01135768, -0.4459062, 0.070087984, -0.48103485, -0.06151942, -0.6467282, -0.12775181, -0.27418333) * input_5(0.0, 0.0); + result += mat4(0.08132328, 0.13288133, -0.12962082, -0.4517245, 0.068351425, 0.02011702, 0.10309769, 0.19913486, -0.08115594, 0.18155587, 0.10018065, -0.28338888, -0.0016540601, 0.35463658, 0.37230217, 0.37544784) * input_5(0.0, 1.0); + result += mat4(0.100664295, 0.085057594, 0.1913854, -0.09468885, 0.011466583, -0.04501127, -0.24315366, 0.19278812, -0.17947564, 0.025161687, -0.32564148, 0.3875932, -0.1422748, -0.1852723, 0.119621925, 0.082103975) * input_5(1.0, -1.0); + result += mat4(0.037216272, -0.20092936, 0.019902095, -0.04584308, -0.026330879, -0.15678723, 0.09591923, 0.3225964, -0.025984691, -0.10321094, 0.37878048, 0.34027213, 0.10720341, -0.1692119, -0.3796261, 0.11532689) * input_5(1.0, 0.0); + result += mat4(-0.024912605, -0.088169366, -0.087583154, -0.053055655, -0.039322376, 0.007847783, 0.12491989, 0.19445774, -0.01879913, 0.00887148, -0.28843907, 0.03151573, -0.08399089, 0.08038781, 0.1321595, 0.104716495) * input_5(1.0, 1.0); + result += mat4(-0.04616358, 0.15075952, 0.21130371, 0.21167797, -0.019870097, -0.042485055, -0.22294775, -0.97196984, 0.058549237, 0.47808716, 0.08365224, -0.5450439, -0.007900738, 0.1352106, -0.0051663094, 0.15818574) * input_6(-1.0, -1.0); + result += mat4(-0.015800495, 0.054267105, 0.2504993, 0.068204075, -0.13054018, 0.091892995, -0.119061574, -0.58681506, 0.08760828, -0.42740542, -0.052029345, 0.071028866, -0.002566003, 0.073644094, 0.0037304345, -0.052464794) * input_6(-1.0, 0.0); + result += mat4(0.011255293, 0.16421516, 0.25567597, 0.2544257, -0.009354835, 0.032605182, -0.20277445, -0.9882466, -0.046403926, -0.020200461, -0.21887062, -0.2393337, 0.012473411, 0.058493923, 0.033417217, 0.043711986) * input_6(-1.0, 1.0); + result += mat4(-0.11095246, 0.102883615, -0.2675567, 0.29421094, -0.008755304, -0.03127518, -0.197407, -1.0016662, -0.023288712, 0.2999208, 0.1342097, -0.43011656, 0.020102058, 0.026935209, 0.017826902, -0.07070054) * input_6(0.0, -1.0); + result += mat4(-0.22618887, -0.02501692, -0.013866777, -0.091047846, 0.29304755, 0.11219802, -0.105743416, -1.1580799, 0.21420412, 0.06711223, 0.23682293, 2.1050248, 0.007963618, -0.019251617, -0.0019207959, -0.24574946) * input_6(0.0, 0.0); + result += mat4(0.04296857, -0.0364488, 0.46611315, 0.069433756, -0.09394758, 0.13636173, 0.4179161, -1.2843969, -0.07678317, 0.030115008, -0.10485143, 0.1486073, 0.029136874, 0.15736827, 0.032555554, 0.09193737) * input_6(0.0, 1.0); + result += mat4(-0.036510643, 0.05129718, -0.27038524, 0.21059003, -0.1547788, 0.0018242243, -0.096886754, -0.8911448, -0.059512004, 0.243977, 0.25335363, -0.36991915, 0.07057204, -0.049034253, 0.170494, 0.047317397) * input_6(1.0, -1.0); + result += mat4(-0.053326502, 0.20600308, -0.038782675, 0.36394995, 0.016721113, 0.05844677, -0.009612674, -1.0572845, -0.019326348, -0.089990124, -0.1798784, -0.42251998, 0.009521884, 0.07718372, 0.14555272, -0.09199915) * input_6(1.0, 0.0); + result += mat4(0.04792025, -0.10266718, 0.40451127, 0.30316234, 0.04361881, -0.101614855, 0.15386258, -0.5749669, 0.029709565, 0.096393414, 0.057689823, -0.03247691, -0.013393847, 0.038148064, -0.03848122, -0.08636228) * input_6(1.0, 1.0); + result += mat4(-0.13817707, 0.19310816, -0.21266092, -0.27166063, 0.024727978, 0.19262008, 0.07560394, 0.19564945, 0.021044752, -0.02948236, 0.084142305, -0.0052038743, 0.06288126, -0.1330183, 0.16122572, 0.13825825) * input_7(-1.0, -1.0); + result += mat4(-0.13821895, 0.15559843, -0.004684871, -0.6544343, -0.024821036, 0.15320049, -0.0062877736, 0.026374813, -0.037629113, 0.06141331, 0.029927013, -0.029055445, 0.07157405, -0.10773348, 0.096876994, 0.005001226) * input_7(-1.0, 0.0); + result += mat4(-0.004664945, 0.027965266, 0.18154722, -0.09017251, -0.007727038, 0.17815703, 0.22408664, 0.040916927, 4.329432e-05, -0.10826943, 0.09871466, 0.008511361, 0.036643673, -0.020931346, -0.06464171, -0.005136111) * input_7(-1.0, 1.0); + result += mat4(0.21935384, -1.5676043, -0.35825172, -0.086042196, 0.060809627, -0.1000602, -0.005391687, 0.10211533, 0.0017574999, -0.044379827, -0.062010672, -0.10304373, -0.17783764, -0.045289773, 0.41479075, 0.21455304) * input_7(0.0, -1.0); + result += mat4(-0.054546256, -0.22233593, -0.31666, 0.078925624, -0.03462577, 0.09445779, 0.15118487, -0.18047369, 0.037084226, -0.1761045, 0.0782228, -0.026051622, -0.008781763, -0.026033599, 0.26974496, 0.12608373) * input_7(0.0, 0.0); + result += mat4(0.022601837, 0.034102928, -0.11776002, -0.050648775, 0.077622525, 0.1889248, 0.19379246, 0.048494525, -0.040138364, -0.24490407, 0.107033186, 0.032669913, 0.00032710796, -0.114159465, -0.00775739, 0.11900035) * input_7(0.0, 1.0); + result += mat4(-0.15934221, -0.22360185, 0.07456612, -0.15003423, 0.061950225, 0.02851898, 0.004222487, -0.0020483034, -0.012768928, 0.036762252, 0.22336738, -0.10511556, -0.19328061, 0.22473295, 0.30961788, -0.3477788) * input_7(1.0, -1.0); + result += mat4(-0.076154046, 0.044609312, -0.12744834, -0.39316598, 0.10578497, 0.09392836, 0.063529916, 0.2099251, 0.009425982, 0.026815748, 0.104654476, -0.19309488, 0.091344744, -0.28381988, 0.0017753934, -0.13097471) * input_7(1.0, 0.0); + result += mat4(-0.022306865, -0.0151186865, 0.03598159, -0.17754665, -0.007293476, 0.09279889, 0.005111526, -0.08575442, -0.026534695, -0.0022127302, 0.12149928, -0.10407028, 0.09086393, -0.09139561, -0.0010310679, -0.15048373) * input_7(1.0, 1.0); + result += vec4(-0.0777191, -0.24680145, 0.01066386, -0.013373256); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.03834, -0.15389709, 0.44175005, -0.14007528, -0.1598097, -0.04651725, -0.049245786, -0.04546348, -0.040189628, -0.053075273, -0.10859186, 0.12944598, 0.25629243, -0.054821055, 0.5382396, -0.36328822) * input_0(-1.0, -1.0); + result += mat4(0.18036576, -0.3443323, -0.060222585, 0.32759035, 0.054488983, -0.0021107516, -0.26210085, 0.14432147, 0.17303081, -0.44251072, -0.26546574, -0.13013579, -0.33534244, 0.11818215, -0.0021191058, -0.105012015) * input_0(-1.0, 0.0); + result += mat4(-0.025554957, -0.022596467, 0.02561924, -0.23809932, -0.09813107, 0.071026765, -0.18686895, -0.07277257, 0.029000886, 0.13331565, 0.29961517, 0.21281567, 0.24556136, -0.032880254, 0.16506848, 0.32417983) * input_0(-1.0, 1.0); + result += mat4(-0.12493848, -0.13046768, -0.17293222, -0.3481698, -0.18814595, 0.19124474, 0.016418695, -0.15602183, -0.10279936, -0.101915605, 0.26696166, 0.38858587, 0.24639559, -0.06691524, -0.35791767, -0.05535403) * input_0(0.0, -1.0); + result += mat4(-0.2898206, 0.020008285, 0.041254956, 0.18276685, 0.21911281, 0.13998748, 0.19141813, 0.13738683, 0.37828603, 0.26610336, 0.009791456, -0.041328244, -0.113935776, 0.26812157, -0.058629964, 0.3473891) * input_0(0.0, 0.0); + result += mat4(0.058207996, 0.12839384, 0.15212376, -0.20566241, -0.15306532, 0.033052005, -0.27425212, 0.23713607, -0.10810113, 0.05403851, -0.03701427, -0.07282131, -0.039467826, -0.020542346, -0.15187645, -0.07575684) * input_0(0.0, 1.0); + result += mat4(0.13801876, -0.075179204, -0.23693697, 0.69433194, -0.3818127, 0.017066067, 0.07716987, 0.30387473, -0.012882054, 0.18964083, -0.12851815, -0.26876032, 0.15272403, -0.008351393, -0.08748654, 0.4758014) * input_0(1.0, -1.0); + result += mat4(0.098632626, -0.16054523, 0.08092389, -0.0064826733, 0.014030911, -0.42300445, 0.26588392, -0.02040698, -0.084188916, 0.052565306, 0.13689251, 0.19581431, 0.101411045, 0.0639699, 0.121145986, -0.31628588) * input_0(1.0, 0.0); + result += mat4(0.046371184, 0.022778582, 0.07668687, -0.04725607, 0.02489475, 0.14492154, 0.039018877, -0.07342423, -0.10545018, 0.08105079, -0.17845307, 0.047438752, 0.11646702, -0.2436577, -0.1881936, -0.4374446) * input_0(1.0, 1.0); + result += mat4(0.1394978, -0.04312127, 0.005504956, -0.079828136, -0.0792015, -0.9079435, -0.28263345, 0.29091814, -0.03409661, -0.2595297, -0.08230589, 0.4979992, -1.4536139, 0.27447432, -0.57276434, 0.14072087) * input_1(-1.0, -1.0); + result += mat4(-0.56091094, 0.06554788, 0.13596265, -0.54012525, 0.36979803, 0.07226263, -0.022804486, -0.19623199, 0.15146951, -0.041283578, 0.00047264807, 0.076548904, -0.3892565, 0.03418421, 0.32747585, 0.3774682) * input_1(-1.0, 0.0); + result += mat4(0.31897652, 0.046259597, -0.031883128, 0.04354921, 0.06443151, -0.03188398, -0.18659693, 0.03936557, -0.31429005, -0.1126371, -0.19194269, -0.10735679, 0.06359583, 0.0024836932, 0.18576054, -0.035479046) * input_1(-1.0, 1.0); + result += mat4(0.06845716, -0.10841599, -0.012905697, -0.24307987, 0.19038364, -1.8917431, 0.162365, 0.005558298, -0.072767615, -0.0483863, 0.06295204, 0.18590966, -0.25941703, -0.32716277, 0.22861516, 0.3507844) * input_1(0.0, -1.0); + result += mat4(-0.23894809, 0.16545281, 0.3164779, -0.21845181, -0.3321923, 0.048368808, 0.51066095, -0.23863266, 0.10933525, 0.25264585, -0.29725444, 0.30286556, -0.09385724, -0.016460508, 0.26020372, -0.006783257) * input_1(0.0, 0.0); + result += mat4(-0.07649589, -0.19000784, 0.26398912, -0.18096818, 0.20882373, -0.07547497, -0.20038353, 0.17401361, 0.09165037, 0.31564134, -0.36693507, -0.35105544, 0.045756143, -0.03247956, 0.04295581, 0.02146737) * input_1(0.0, 1.0); + result += mat4(0.029421657, 0.1554388, -0.12389958, -0.06340399, -0.29216897, -0.04461316, 0.008442532, 0.2415893, -0.0076153562, -0.22734398, 0.19971332, -0.09857779, 0.1452928, 0.17236076, 0.10019121, 0.19762465) * input_1(1.0, -1.0); + result += mat4(-0.004945232, -0.044446155, -0.038450617, -0.17886925, 0.22597718, 0.19240609, -0.21024032, -0.036795963, -0.19842997, 0.025582744, 0.09064079, -0.026865287, 0.033207897, 0.01687281, 0.07640508, 0.21905047) * input_1(1.0, 0.0); + result += mat4(0.0648444, -0.043879505, 0.21118851, -0.29650962, -0.2265689, 0.004402754, 0.3121806, 0.1435902, -0.015539823, 0.13011089, -0.24981335, 0.37609825, 0.009632304, 0.016097384, -0.014672876, 0.07199493) * input_1(1.0, 1.0); + result += mat4(-0.12060172, 0.41065973, -0.13848986, 0.07035144, -0.044706136, 0.5046034, 0.053452764, 0.026809823, -0.09216053, -0.6965664, -0.089128636, 0.07680523, 0.18768184, -0.16362195, -0.16271491, 0.38160637) * input_2(-1.0, -1.0); + result += mat4(0.18696374, -0.089106806, -0.14053173, 0.49437612, -0.1665213, 0.026891474, 0.4280442, -0.2188404, 0.39276293, -0.16931769, -0.9387006, -0.17152083, 0.08565948, 0.07586202, -0.1341639, -0.115013026) * input_2(-1.0, 0.0); + result += mat4(0.06875194, 0.14901592, -0.09770532, 0.2655815, -0.060430754, 0.06320905, 0.26321995, 0.0011450624, 0.040731646, -0.11221978, -0.30976328, -0.05480003, -0.13803412, -0.4505055, -0.018843232, -0.27216694) * input_2(-1.0, 1.0); + result += mat4(-0.030721162, -0.11505441, -0.08814365, 0.478238, 0.38118872, 0.22743821, -0.21147725, 0.1402817, 0.49463812, -0.1439495, 0.050409395, 0.22872637, 0.17941542, 0.14196327, 0.116162635, -0.266274) * input_2(0.0, -1.0); + result += mat4(-0.19956306, 0.49485865, 0.051044405, -0.1828998, 0.18799686, 0.12378575, -0.48138234, 0.10475308, 0.1751367, 0.29637074, -0.1595639, -0.48224872, 0.2806308, 0.3760705, 0.26388416, -0.2581616) * input_2(0.0, 0.0); + result += mat4(0.12817053, 0.009238238, 0.23117143, -0.046182387, -0.11669113, -0.053697232, -0.17354172, 0.19945888, 0.1733791, -0.06555379, -0.014540494, -0.005333456, -0.16196078, -0.041341737, 0.20129749, -0.06179166) * input_2(0.0, 1.0); + result += mat4(-0.0265912, 0.061276585, 0.124948874, -0.04865234, 0.10118435, 0.13929993, -0.0028744435, -0.39300185, -0.10971474, -0.057638813, 0.020841887, -0.06936463, -0.06490086, 0.012969106, 0.11102949, 0.15810071) * input_2(1.0, -1.0); + result += mat4(-0.09981753, -0.07943838, 0.103516765, 0.2908982, -0.047063395, -0.033802364, -0.10170532, -0.29867953, -0.109865166, -0.09565369, 0.13738538, -0.22924228, -0.3344773, 0.12081159, -0.18623392, 0.33529374) * input_2(1.0, 0.0); + result += mat4(-0.013008841, 0.07660221, 0.05192909, 0.17210498, -0.05162698, 0.022526016, 0.0137001155, -0.022774754, 0.07201867, 0.041841134, 0.104638696, -0.046865746, -0.2225814, -0.024193984, 0.36244863, -0.022069633) * input_2(1.0, 1.0); + result += mat4(-0.14877552, -0.1755595, 0.21370916, 0.094835214, -0.11899615, -0.30582646, 0.2515814, -0.09319796, 0.30594155, 0.0717643, -0.14880142, -0.00364295, 0.068984136, -0.040830385, 0.21011, -0.020223226) * input_3(-1.0, -1.0); + result += mat4(-0.059821136, 0.07088459, 0.15899469, -0.0896367, -0.019906802, 0.16295277, 0.4014564, -0.09979761, 0.21575716, -0.119459756, -0.02951631, 0.06586917, -0.13458702, -0.079162456, -0.05117161, -0.13156971) * input_3(-1.0, 0.0); + result += mat4(0.025444768, 0.007458065, -0.18630242, 0.0056607793, 0.333191, 0.33501455, -0.10845702, -0.07117983, 0.23670948, -0.07363521, 0.016715944, 0.22306477, -0.10235862, -0.027879572, -0.059412476, -0.105293855) * input_3(-1.0, 1.0); + result += mat4(-0.36282995, -0.028712418, 0.2914119, -0.46394715, 0.0666761, -0.19015814, -0.30226076, 0.059166986, -0.14357738, 0.13210258, 0.021771654, -0.12182424, 0.014906632, -0.09584007, -0.33443403, 0.02657056) * input_3(0.0, -1.0); + result += mat4(-0.041997075, -0.08611469, 0.069718145, 0.0039730743, 0.01686852, 0.094654955, -0.29183102, -1.0039396, 0.007804138, 0.033096697, 0.030161623, 0.22028877, -0.10936683, 0.055232257, -0.49971822, -0.29317185) * input_3(0.0, 0.0); + result += mat4(-0.06685476, -0.051699664, 0.04229387, 0.052061025, -0.19816858, 0.18952864, 0.11977396, -0.13649943, 0.08289851, 0.0153860375, 0.16234589, 0.14159192, 0.02730743, 0.061779536, 0.115883015, -0.31477726) * input_3(0.0, 1.0); + result += mat4(0.03933607, -0.043571033, -0.02360863, -0.109246165, 0.047408957, -0.088389285, -0.086566135, 0.1001332, -0.12526597, -0.123454355, 0.1681135, -0.085346, -0.0464484, -0.06698746, -0.10449367, -0.17563377) * input_3(1.0, -1.0); + result += mat4(0.02006802, -0.014028732, -0.0081378, 0.06618539, -0.07103312, -0.3519644, -0.018734595, 0.53642803, -0.050440166, 0.12666586, -0.09729322, 0.30471063, -0.115947835, 0.053866815, 0.16672471, -0.05628001) * input_3(1.0, 0.0); + result += mat4(0.019022642, 0.014672037, -0.013565506, 0.004604683, 0.11574626, -0.048881445, -0.014537146, 0.4507932, -0.082639426, -0.026018415, -0.08230634, -0.19763467, -0.022644898, -0.014444889, 0.029601878, -0.040812157) * input_3(1.0, 1.0); + result += mat4(-0.0074136755, -0.13338415, -0.22997993, -0.40366483, -0.3247249, -0.3338943, -0.12100415, -0.01920301, 0.36383334, 0.53118366, -0.11331159, 0.1401803, -1.309787, 0.28138724, -0.15924208, -1.8482194) * input_4(-1.0, -1.0); + result += mat4(0.0008810568, 0.17844637, 0.0043144277, -0.3477746, 0.3664988, 0.10109908, 0.09769476, 0.10370742, -0.72329444, 0.22876316, 0.4576285, -0.1741044, 1.4417299, 0.23421873, -1.1665429, -0.8869851) * input_4(-1.0, 0.0); + result += mat4(0.16424957, 0.050189886, 0.19899237, 0.26902816, -0.033740338, 0.11093352, 0.027834196, -0.46443728, -0.11370979, 0.16855526, 0.023099024, -0.0006125354, -0.62152296, 0.277512, 1.5223011, 0.26966682) * input_4(-1.0, 1.0); + result += mat4(0.2102458, 0.11044043, 0.10911739, -0.17349091, -0.35563803, -0.09388783, 0.208922, 0.011957968, 0.3664595, 0.22128406, -0.1810316, 0.13881819, -0.5137794, -0.4331712, 0.13155814, 0.3312914) * input_4(0.0, -1.0); + result += mat4(-0.13848034, 0.36414796, 0.06426168, 0.13370557, 0.068687096, 0.27958506, 0.20796077, -0.11639272, -0.20523201, 0.064621136, -0.29441914, 0.03806245, -0.34892032, -0.33405828, 0.7799251, -0.8450952) * input_4(0.0, 0.0); + result += mat4(-0.03194948, -0.30169213, 0.15511979, 0.23303828, 0.06969189, 0.011406548, -0.7022039, -0.63235986, 0.39566326, -0.1822989, 0.07301953, -0.15002835, -0.25255835, -0.33256954, -0.54907936, -1.4909294) * input_4(0.0, 1.0); + result += mat4(0.029258845, 0.1351128, 0.22414896, 0.25030598, -0.19134863, -0.06731404, -0.062622, -0.32182598, -0.09032219, 0.053701386, 0.023035761, 0.267471, 0.28932205, -0.1349574, 0.13279213, -0.6771522) * input_4(1.0, -1.0); + result += mat4(0.062318016, 0.08086666, -0.05121177, -0.25049397, 0.16605426, 0.117158175, -0.0060186153, 0.108478695, -0.3723392, -0.1978407, -0.19030014, -0.5621184, -0.12523237, 0.07101924, -0.37682337, -0.28355905) * input_4(1.0, 0.0); + result += mat4(-0.014382315, -0.10166335, 0.082028285, 0.045921113, -0.08570155, -0.08156137, -0.22665018, -0.068475395, 0.041390818, 0.121036895, 0.14259931, 0.23666541, 0.13146229, 0.14085384, 0.0052038794, -0.47908425) * input_4(1.0, 1.0); + result += mat4(-0.012542373, 0.024095202, 0.31040645, 0.10944896, 0.060269333, -0.032885134, 0.09037098, 0.13385145, -0.02208655, -0.15106311, -0.12515686, -0.13959259, 0.17530024, 0.28222415, -0.089838974, 0.11609788) * input_5(-1.0, -1.0); + result += mat4(-1.0276, -0.42565277, 0.23287858, -0.038644124, -0.08018989, -0.11825169, 0.0840431, 0.17955749, 0.18747023, 0.037549794, -0.020259734, -0.08601607, 0.2221089, -0.022055803, -0.17667158, 0.06406967) * input_5(-1.0, 0.0); + result += mat4(0.2932719, -0.16455062, 0.13187328, -0.49961048, 0.106779195, 0.1863517, 0.10091585, 0.013980973, 0.17323132, -0.09043956, -0.06159616, -0.103281245, 0.11962942, 0.023615342, -0.010214092, 0.035436593) * input_5(-1.0, 1.0); + result += mat4(0.34349015, -0.40734133, -0.054321505, -0.6088255, 0.050288256, 0.1267459, 0.052959457, 0.27938634, -0.17399585, 0.34205845, 0.1565432, -0.10375633, -0.25228497, -0.10627037, 0.23682287, -0.2784561) * input_5(0.0, -1.0); + result += mat4(0.20681804, 0.18571183, -0.3244622, 0.5279623, -0.31901294, 0.08943742, 0.17913575, 0.13084681, -0.3484155, 0.23549983, -0.11916376, 0.29812506, -0.0407337, 0.34411097, -0.0958076, 0.17957534) * input_5(0.0, 0.0); + result += mat4(-0.082867555, -0.18134099, -0.17610882, 0.17017756, -0.19072591, -0.07271464, -0.057861254, 0.051373605, -0.06245957, 0.17154483, -0.27115768, 0.0768299, -0.0982799, -0.19683719, -0.31684995, 0.16699627) * input_5(0.0, 1.0); + result += mat4(-0.012446497, -0.17940275, -0.09456561, -0.015077149, -0.16827604, -0.0943737, 0.21530189, 0.24794975, 0.31668982, 0.14174953, 0.2593276, 0.22762601, -0.2102313, 0.30971834, 0.035159197, -0.19243734) * input_5(1.0, -1.0); + result += mat4(0.094676346, 0.07214041, -0.025827501, -0.11117198, 0.0723887, -0.01615075, 0.032669164, 0.25206098, 0.065414935, -0.004766452, -0.07037165, -0.044372156, -0.10924809, 0.18522087, 0.042839866, 0.0012497213) * input_5(1.0, 0.0); + result += mat4(-0.029629994, -0.009409867, -0.16763459, 0.044769928, 0.08754673, -0.013811623, 0.04604813, 0.04562642, 0.047461495, -0.0014817608, 0.14363183, 0.17129816, -0.07083935, -0.035357818, 0.041714348, -0.114290774) * input_5(1.0, 1.0); + result += mat4(-0.12161041, -0.18578811, -0.15379119, -0.07491543, 0.053285964, -1.3042196, 0.13847944, -0.21708182, -0.03210839, -0.42990384, 0.27738103, 0.031522553, 0.051620055, -0.007579468, -0.058718476, 0.02073979) * input_6(-1.0, -1.0); + result += mat4(-0.16252168, 0.14377251, -0.1172218, 0.15165839, -0.15842347, -0.20616713, -0.535228, 0.11386969, -0.27166763, 0.12417808, -0.02400111, -0.059147686, 0.09953711, 0.096002534, 0.09549329, -0.1501788) * input_6(-1.0, 0.0); + result += mat4(-0.10496993, -0.12067396, 0.010026418, 0.15970002, -0.19439277, -0.09514771, -0.25013673, 0.18146068, 0.10274248, -0.061151534, -0.4197619, 0.0911074, 0.093455784, 0.020904113, 0.18454283, -0.18955694) * input_6(-1.0, 1.0); + result += mat4(-0.00076334673, -0.0072894264, 0.093785025, 0.1083723, 0.04255666, -0.8129176, 0.4697886, -0.10359627, 0.043560125, 0.13797143, 0.02843216, 0.02265859, 0.021722846, 0.116901666, 0.108571775, -0.12703262) * input_6(0.0, -1.0); + result += mat4(0.09690244, 0.08524577, -0.026739981, -0.06833057, -0.20326087, 0.023448346, 0.30420288, 0.29925817, 0.19277023, 0.23129863, -0.51183367, -0.44891435, -0.03887894, -0.1355951, -0.05785773, -0.19105205) * input_6(0.0, 0.0); + result += mat4(0.13463737, 0.07343879, 0.21515046, -0.0145654725, -0.033240322, -0.03168419, -0.1630552, 0.029051043, -0.16825216, 0.03489539, 0.54478174, -0.37945324, 0.092382245, 0.06122148, -0.0020979354, -0.1478765) * input_6(0.0, 1.0); + result += mat4(0.015130399, -0.015359156, 0.18567476, -0.20811781, 0.19168806, -0.100076765, -0.034576777, 0.3331242, 0.22515763, 0.09160422, 0.07385091, -0.104307845, 0.099752486, -0.011584359, -0.09397521, -0.22511561) * input_6(1.0, -1.0); + result += mat4(-0.016859379, 0.07598301, 0.057531025, 0.10144596, 0.120935835, 0.023788169, -0.06382894, -0.13296749, 0.110168114, -0.08128736, 0.12824565, 0.6842598, 0.010224916, -0.04766782, 0.0021986708, -0.21466619) * input_6(1.0, 0.0); + result += mat4(0.030530494, -0.07129812, 0.052079912, 0.16114055, -0.03751652, 4.9849274e-05, -0.022446265, -0.22811654, -0.16224347, 0.011914217, 0.10763715, 0.1474135, -0.03330317, 0.048856724, 0.037004415, -0.27441737) * input_6(1.0, 1.0); + result += mat4(0.3229048, -0.07582275, -0.91938895, 0.052825022, -0.08710914, 0.34066442, -0.031142421, -0.0684212, -0.011268475, -0.0020743266, -0.017786914, 0.110518835, -0.33123323, -0.34413344, 0.38282004, 0.08945739) * input_7(-1.0, -1.0); + result += mat4(0.18834938, -0.30490333, -0.36227712, 0.10367376, -0.038185917, 0.23558138, -0.009254465, -0.31576198, -0.07531177, -0.019396525, -0.12154496, 0.21448651, -0.17398426, -0.00063698844, 0.21701445, 0.0972253) * input_7(-1.0, 0.0); + result += mat4(0.059019305, 0.014177168, -0.07632941, -0.11430413, 0.02162784, -0.0036826544, 0.023997677, -0.17430685, -0.159484, -0.0050599617, 0.0034598326, 0.22155423, 0.077745296, -0.10541294, 0.054766882, 0.018744202) * input_7(-1.0, 1.0); + result += mat4(-0.36233568, -0.58057463, 0.27378035, 0.50686145, 0.063835196, 0.004843924, -0.003354516, -0.14200641, -0.05293237, -0.13622122, -0.117103316, 0.18882626, 0.090880625, 0.28593826, 0.12522371, 0.21186449) * input_7(0.0, -1.0); + result += mat4(-0.18085074, -0.32320058, 0.5194269, 0.23507796, 0.051481903, 0.3187934, -0.09994254, -0.32372007, -0.034076918, 0.07006388, -0.10332256, 0.08125302, 0.039822266, -0.04255604, 0.12373407, -0.1893821) * input_7(0.0, 0.0); + result += mat4(0.050242633, 0.051695835, 0.0068441806, -0.017948924, -0.01648722, -0.0013575217, -0.25863114, -0.16221112, -0.04733354, 0.052235723, -0.18032393, 0.29454976, -0.03173739, -0.029198095, 0.20451872, -0.16261013) * input_7(0.0, 1.0); + result += mat4(0.07826855, 0.05057167, -0.09466238, -0.015830165, 0.21304283, 0.04505593, 0.046783254, -0.10844766, -0.04297407, 0.04386808, 0.0365, 0.16296189, 0.21556523, 0.16543262, -0.3643823, 0.2555185) * input_7(1.0, -1.0); + result += mat4(0.0054278257, 0.090227336, -0.0941158, -0.0923437, -0.13210236, 0.074251406, 0.027223337, -0.41900963, 0.017672293, 0.013223975, -0.0070192274, 0.1709413, 0.06880709, 0.10332763, -0.13098575, 0.10073731) * input_7(1.0, 0.0); + result += mat4(0.020413702, -0.025899118, -0.09392777, 0.027291398, 0.044735987, 0.054712106, 0.035209984, -0.10786159, 0.039591543, -0.018063834, -0.14670156, 0.15379165, -0.06304054, 0.012653647, -0.08146483, -0.03890198) * input_7(1.0, 1.0); + result += vec4(-0.041530713, -0.0671876, -0.0047232513, -0.03655067); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.06848665, 0.27642143, -0.21778776, -0.06422361, 0.01120724, 0.06536063, -0.010141712, 0.041618396, -0.027607977, 0.08005351, 0.015886731, -0.010258553, -0.00022337597, 0.06297769, 0.09925697, -0.16239499) * input_0(-1.0, -1.0); + result += mat4(-0.41802835, 0.12503672, -0.27835715, 0.09976864, -0.056557577, 0.003810454, -0.17254174, 0.02121486, -0.023848707, -0.020884905, 0.19697286, -0.04434867, -0.17355642, -0.1623928, -0.25278988, -0.13271089) * input_0(-1.0, 0.0); + result += mat4(-0.1730532, 0.08815255, 0.11872594, -0.019746743, 0.026636919, -0.12222316, -0.045621924, -0.08589934, -0.09516293, 0.06700989, -0.2278484, -0.040846776, -0.12110364, -0.052190103, 0.0149473995, -0.22871298) * input_0(-1.0, 1.0); + result += mat4(0.021475868, -0.31371588, 0.605889, -0.0734101, -0.12713507, 0.11367786, 0.00035142095, -0.0765992, -0.07148371, -0.37595448, -0.3371258, -0.27153015, -0.06429636, -0.18407744, -0.031170746, 0.004952848) * input_0(0.0, -1.0); + result += mat4(0.18324548, 0.48163632, -0.7984285, 0.016793502, -0.105554186, 0.75584316, -1.3521204, -0.49213907, 0.015467617, -0.38531637, -0.07233547, 0.43705407, 0.27402303, -0.20195378, 0.18385115, 0.45305246) * input_0(0.0, 0.0); + result += mat4(0.09173985, 0.12206286, -0.019139495, -0.059143387, -0.23533143, -0.27026844, 0.11092471, -0.21121413, -0.06689151, 0.39901528, 0.054600324, 0.09824788, -0.11273251, 0.37221104, 0.14199692, 0.033553246) * input_0(0.0, 1.0); + result += mat4(0.33112636, -0.13900827, -0.1941812, 0.1945674, -0.011760799, 0.15295422, -0.15821669, -0.14870882, -0.06607196, 0.019657847, 0.17828631, 0.09015703, -0.012776254, -0.0018897244, -0.33111027, -0.17878257) * input_0(1.0, -1.0); + result += mat4(0.2538143, 0.24081285, -0.23739134, -0.19683585, -0.37738973, 0.50971806, -2.0667734, -0.119060785, 0.27772835, 0.18820627, -0.23094338, 0.037642423, 0.14235117, 0.18903702, -0.19691911, 0.20263854) * input_0(1.0, 0.0); + result += mat4(0.088332854, 0.019626925, -0.11968237, 0.107967615, -0.08883692, -0.06027809, -0.12378987, -0.3863894, -0.0105878385, -0.06569981, -0.09832102, 0.06499315, 0.38173255, -0.18920559, -0.034868132, -0.28543535) * input_0(1.0, 1.0); + result += mat4(-0.13069408, -0.053975638, 0.005807435, -0.04555922, -0.013285347, -0.050311238, -0.013314063, 0.0324578, -0.0067479615, -0.0425125, -0.1229681, 0.053295214, 0.22837326, 0.05729449, -0.22786918, -0.023530645) * input_1(-1.0, -1.0); + result += mat4(-0.12614703, 0.19737837, -2.4654648, 0.036281273, 0.10559628, -0.14262159, -0.24590817, -0.09830672, 0.017460195, -0.13895285, -0.01477014, -0.1147665, -0.08961832, 0.17104338, -0.7910354, -0.06275864) * input_1(-1.0, 0.0); + result += mat4(0.24304192, -0.10079354, -0.0663812, -0.0146214785, 0.023249283, -0.019331535, -0.04490841, -0.01536955, -0.08422874, 0.011524723, -0.25056562, -0.13475487, -0.051394686, -0.042181976, -0.10552389, -0.10208288) * input_1(-1.0, 1.0); + result += mat4(-0.08277753, -0.062053632, 0.15322736, -0.11194958, -0.03589204, -0.08421615, 0.0011263428, 0.08432013, 0.09455038, -0.12718344, -0.21404107, -0.104487054, 0.10833017, 0.22236863, -0.44222894, -0.049883623) * input_1(0.0, -1.0); + result += mat4(0.26283285, 0.096836, 0.10953318, -0.05179299, -0.17816874, 0.040552843, -0.12156555, -0.14248145, -0.12878193, -0.4123268, -0.08961741, -0.15624568, 0.05923289, 0.050937448, -0.04855023, -0.1090943) * input_1(0.0, 0.0); + result += mat4(0.27938178, 0.52804756, -0.3954065, -0.45355663, 0.07547682, 0.19956617, -0.078873076, 0.058977406, 0.048013803, -0.7858289, 0.7276226, 0.06647469, -0.16611585, -0.022301687, 0.091339745, -0.016182624) * input_1(0.0, 1.0); + result += mat4(0.05199217, 0.016747015, 0.08557507, 0.0171361, 0.25568792, -0.04576334, -0.004751599, 0.004406365, 0.06050165, -0.024795987, -0.09695701, -0.046615396, -0.026076015, 0.006985309, -0.040472656, -0.1674671) * input_1(1.0, -1.0); + result += mat4(0.10642817, 0.03812589, 0.0122772865, -0.060047124, -0.14593875, -0.37600532, 0.45304587, -0.014485416, -0.08561997, -0.010922301, -0.05470665, 0.019926611, 0.12814642, -0.17702384, -0.033665903, 0.064830706) * input_1(1.0, 0.0); + result += mat4(-0.14493679, -0.06063127, 0.039908197, -0.13236542, -0.038701635, -0.09303764, -0.043688633, -0.03645655, 0.6012245, 0.05244404, 0.027674608, 0.22038528, 0.056267157, -0.031633627, 0.061282016, 0.09408139) * input_1(1.0, 1.0); + result += mat4(-0.4075855, 0.107497774, -0.3380253, 0.052207813, -0.08771715, -0.101038426, -0.0010533965, 0.022561248, 0.35825223, -0.2567594, -0.12696184, 0.023878112, -0.063155875, 0.011284985, 0.069891, 0.12071896) * input_2(-1.0, -1.0); + result += mat4(-0.21140479, 0.019359043, -0.07391862, -0.29276392, -0.005313368, 0.07168212, 0.23366341, -0.041619565, 0.11579682, -0.2014884, 0.11218267, -0.016011825, 0.10030865, 0.22407848, -0.2547206, -0.12829809) * input_2(-1.0, 0.0); + result += mat4(0.1849202, 0.025197543, 0.1313139, -0.27120277, -0.042685192, 0.061811514, -0.12290926, 0.03293398, 0.06468079, 0.08578615, -0.0067580626, 0.114550166, 0.15242358, -0.13850401, 0.03412169, 0.14149669) * input_2(-1.0, 1.0); + result += mat4(0.120414585, -0.15362833, -0.23389542, -0.05940682, -0.135602, 0.16425095, 0.3702794, 0.074598916, 0.060008142, -0.2605188, 0.015328359, 0.09212617, 0.28396234, -0.17504029, 0.2924741, 0.218309) * input_2(0.0, -1.0); + result += mat4(-0.122172445, -0.2980265, 0.2875988, -0.2645544, 0.3183112, -0.697495, 1.0484806, 0.4289112, 0.30621493, -0.3692517, 0.23053417, 0.684557, 0.41990778, -0.19348852, 0.26678964, -0.04282827) * input_2(0.0, 0.0); + result += mat4(0.15384072, 0.11497855, -0.14178349, -0.30477425, -0.028563812, -0.035731047, 0.12805218, 0.24119088, 0.37377664, -0.11454494, 0.07209796, 0.22954352, -0.18466349, -0.20502467, 0.003920473, 0.18467213) * input_2(0.0, 1.0); + result += mat4(0.10902394, 0.18749563, -0.1824909, 0.034471534, -0.15627924, 0.0032513815, 0.1497211, 0.06550119, 0.16628933, -0.008895812, 0.03418212, 0.038435604, -0.088811845, -0.032728985, 0.12696259, -0.018014718) * input_2(1.0, -1.0); + result += mat4(0.17747821, 0.24233355, -0.072240055, 0.11132834, -0.21145646, -0.12090677, 0.14111508, -0.09760566, 0.018778667, 0.10805585, -0.12533869, 0.095033385, 0.06607868, 0.16354172, 0.1839793, 0.047382206) * input_2(1.0, 0.0); + result += mat4(-0.006668802, 0.044521064, 0.03647619, 0.24967879, -0.022421291, 0.095225245, -0.041479494, -0.2003745, 0.08011316, -0.06959449, 0.13646123, 0.10623661, 0.20260657, 0.27269995, -0.18672864, 0.22057077) * input_2(1.0, 1.0); + result += mat4(-0.22264464, 0.062104933, -0.26907858, -0.13393906, 0.13861029, -0.09058026, -0.09785996, -0.15674219, 0.026937054, 0.04612002, 0.07062134, -0.046535466, -0.052143276, 0.004569746, 0.092702866, 0.09355124) * input_3(-1.0, -1.0); + result += mat4(-0.7850682, 0.3849544, -0.5142827, -0.29062644, 0.32031262, -0.034283854, 0.21442999, -0.07142701, 0.07530218, 0.04859216, 0.112458356, -0.021235546, -0.0165121, 0.11461925, 0.13203715, 0.09516106) * input_3(-1.0, 0.0); + result += mat4(-0.4013873, 0.0726824, 0.001199651, -0.1443725, 0.05820473, -0.123664014, 0.11326555, -0.16933626, -0.19889905, 0.0123436265, 0.012612397, 0.05102475, -0.008791373, -0.044934765, -0.06203687, -0.015937528) * input_3(-1.0, 1.0); + result += mat4(-0.1281719, 0.2685, 0.08932778, -0.31774217, 0.089293815, -0.03347575, 0.14081234, 0.073994264, 0.03848037, 0.08782954, 0.10107304, 0.023547042, 0.16569307, -0.052671008, 0.1537003, 0.23467648) * input_3(0.0, -1.0); + result += mat4(-0.5573473, 0.45240417, 0.044453986, -0.17763601, 0.0009860944, 0.088421844, -0.008629801, 0.28041086, 0.039160527, -0.273551, 0.24075557, 0.2386392, 0.15187337, -0.3245965, 0.14727798, 0.13261685) * input_3(0.0, 0.0); + result += mat4(-0.3151094, 0.10352674, 0.01988005, -0.110177755, 0.2654735, 0.29847223, 0.33504218, -0.14503105, 0.18999086, 0.150712, 0.10780962, 0.23158187, 0.18435378, -0.0040942337, 0.06292355, 0.15156808) * input_3(0.0, 1.0); + result += mat4(-0.014742507, 0.008612943, 0.0084988335, -0.18948625, 0.03483092, -0.16596784, -0.08291674, 0.04022073, -0.045274947, 0.10757507, 0.19681324, 0.08459543, 0.10695228, -0.056003314, -0.13021626, 0.16773358) * input_3(1.0, -1.0); + result += mat4(-0.15110508, 0.051717795, 0.03341016, -0.10840214, -0.054281812, 0.1832673, -0.0028949953, 0.10612647, 0.17689501, 0.06983081, 0.010026559, -0.036505677, -0.09910188, 0.15412188, -0.07272606, 0.14787516) * input_3(1.0, 0.0); + result += mat4(0.02494389, 0.002401353, 0.031344872, 0.075386204, -0.5685589, -0.047066063, 0.16280912, 0.14221849, 0.26844785, -0.12186272, 0.19171552, 0.25276232, -0.020220447, 0.07826288, 0.052437965, 0.11174305) * input_3(1.0, 1.0); + result += mat4(-0.023966478, -0.045863483, 0.29477066, 0.020816196, -0.055101335, 0.111444786, -0.037949815, -0.0097047705, 0.14636059, -0.15111259, 0.11482583, 0.09899873, -0.9495733, 0.560258, -0.5902534, 0.3709997) * input_4(-1.0, -1.0); + result += mat4(0.3356172, -0.10098106, 0.16517399, 0.073817536, -0.17519318, -0.22674142, -0.062304016, -0.15324335, -0.13254505, 0.15605795, 0.112560436, -0.010025413, -1.3356787, -4.176864, 2.6294882, 0.60472745) * input_4(-1.0, 0.0); + result += mat4(0.123597376, 0.08875603, 0.10264355, 0.02379987, -0.10756152, -0.28794074, 0.7478752, -0.18587887, 0.3377679, 0.22280271, -0.027312806, 0.26354158, -1.1304371, -0.32414377, -0.8341588, -0.22897826) * input_4(-1.0, 1.0); + result += mat4(-0.16517012, 0.2573626, -0.15487152, 0.10947528, -0.14796261, 0.10397413, -0.16632573, -0.07649733, 0.1634239, -0.0014706553, 0.33619502, 0.081739016, -0.056645714, 0.40921858, -0.47306854, -0.6530366) * input_4(0.0, -1.0); + result += mat4(0.29385602, -0.013240438, 0.058247615, 0.06526767, -0.14879358, 0.17935134, 0.18764251, 0.11901623, 0.3325686, -0.62899643, -0.23644045, -0.27257574, -0.6390157, 0.20874506, -0.3847081, 0.13691825) * input_4(0.0, 0.0); + result += mat4(0.014356436, 0.28411853, -0.34029195, -0.061272953, 0.06457685, -0.80359167, 0.8571533, 0.12767343, 0.2768868, 0.5008195, -0.009823991, -0.20390707, -0.16564071, 1.1256633, -0.4544252, 0.07368993) * input_4(0.0, 1.0); + result += mat4(-0.14604701, 0.23411353, 0.08950665, -0.08652505, 0.06312656, 0.042484447, 0.1421593, 0.07976076, -0.08771921, -0.013605759, -0.036461834, 0.040511936, 0.46395707, 0.039155256, -0.11264865, -0.27396718) * input_4(1.0, -1.0); + result += mat4(0.120762, -0.034243256, 0.2029693, 0.11537519, -0.4780765, -0.19251056, 0.24121006, -0.15733889, 0.15634032, 0.17934011, 0.2648277, 0.6549617, 0.15189672, 0.16351004, 0.2064386, 0.039948154) * input_4(1.0, 0.0); + result += mat4(-0.32853064, 0.037527993, 0.008526476, -0.27930486, -0.19089021, -0.08268096, -0.07597937, 0.34862235, -0.31863445, 0.11880649, -0.05799522, 0.09365568, 0.28164357, -0.10265615, -0.010505433, -0.12651068) * input_4(1.0, 1.0); + result += mat4(0.22707492, 0.16678716, -0.04452835, 0.14971927, 0.09267545, -0.09050734, 0.09284582, -0.09241551, 0.086831324, -0.07574319, -0.07384964, 0.019053806, 0.06894998, 0.05470732, -0.011567214, 0.08390642) * input_5(-1.0, -1.0); + result += mat4(-0.21741365, -0.33057517, -0.14823589, 0.4068732, -0.054950107, 0.013543073, 0.11631034, -0.10849924, 0.08074811, -0.18350136, 0.026338454, 0.08307895, -0.06463729, -0.13119803, 0.057485513, 0.14105888) * input_5(-1.0, 0.0); + result += mat4(0.3054312, 0.18316787, -0.11223723, 0.054907598, -0.10925138, 0.0026027467, 0.20260654, 0.038292773, 0.056839436, 0.26037362, -0.09502335, -0.056111347, 0.038251176, -0.09183885, -0.06764424, 0.040179644) * input_5(-1.0, 1.0); + result += mat4(0.11315182, 0.07472395, 0.06256617, 0.31566843, 0.012533219, -0.21123566, 0.23529689, 0.07838205, -0.24288398, -0.40461233, -0.0691146, -0.14896473, -0.027107708, 0.2951493, 0.1007852, 0.20826563) * input_5(0.0, -1.0); + result += mat4(0.2247605, -0.13791025, 0.3181516, -1.2718602, -0.059931457, 0.07099463, 0.06943855, -0.009588791, -0.0073309387, 0.07707515, 0.13462262, -0.16519016, -0.55558014, -0.06331056, 0.33652785, -0.014936766) * input_5(0.0, 0.0); + result += mat4(-0.51043975, 0.05602819, -0.12718119, 0.21936904, -0.087210305, 0.01541053, 0.15033557, -0.025075296, 0.1284331, 0.0842827, 0.048683792, -0.17742297, -0.09144934, 0.18919286, -0.1008954, 0.07556147) * input_5(0.0, 1.0); + result += mat4(-0.036013898, -0.098120816, -0.015591599, 0.056050397, -0.051852673, -0.13361311, 0.14954533, -0.120922014, -0.19110072, 0.16317831, -0.0051185843, -0.40763065, 0.029348038, 0.12755719, -0.092692114, 0.02533733) * input_5(1.0, -1.0); + result += mat4(-0.24585581, -0.19620727, 0.15234356, -0.13891655, -0.121680595, 0.042494185, 0.22341818, -0.2587782, -0.12136408, 0.006155004, 0.035926778, -0.9073637, -0.11580644, 0.09746196, 0.20037887, 0.2643719) * input_5(1.0, 0.0); + result += mat4(-0.0065564252, -0.037393313, -0.07944925, -0.1558192, 0.044774525, 0.008991517, 0.0059738266, 0.029334435, -0.21169595, 0.0931571, 0.017752003, -0.38463876, 0.27250037, 0.09169401, -0.037961833, 0.069716714) * input_5(1.0, 1.0); + result += mat4(0.0029099933, 0.007839448, 0.06942475, -0.0059812358, 0.08006446, -0.08143546, 0.040941678, -0.19442879, 0.037289634, -0.14793573, 0.09151206, 0.047106255, 0.013202394, -0.004840136, 0.005259149, 0.039881628) * input_6(-1.0, -1.0); + result += mat4(-0.09874006, -0.19122308, 0.09290869, 0.013968956, -0.016342979, -0.027662901, -0.2847611, -0.08119232, 0.18352275, 0.06540276, -0.32166365, -0.050131854, -0.04739203, 0.008636907, 0.01183938, 0.013405037) * input_6(-1.0, 0.0); + result += mat4(-0.16031809, -0.058569893, 0.10915699, -0.039812803, -0.1801965, -0.15317203, -0.29327807, -0.1816334, -0.19657639, 0.07021561, 0.074787185, -0.03149435, 0.14014027, -0.04831103, 0.02609839, -0.009884615) * input_6(-1.0, 1.0); + result += mat4(-0.07916179, 0.056116402, 0.19508414, -0.03459999, -0.16724789, 0.14236401, 0.23250712, 0.08573173, 0.09451023, -0.016856115, -0.2650424, -0.14228131, 0.0563701, 0.011095321, 0.035382405, 0.012792582) * input_6(0.0, -1.0); + result += mat4(-0.25292286, 0.12611581, 0.2779855, -0.12519509, 0.11434063, 0.09933786, 0.048148148, 0.17245889, -0.35022342, -0.6424444, 0.18044613, -0.04224317, -0.021893559, 0.042363323, 0.07136658, 0.07625853) * input_6(0.0, 0.0); + result += mat4(0.14141496, -0.1788343, 0.04369332, -0.15574871, -0.011639582, 0.04144112, -0.00061470317, 0.120182626, -0.30743137, 0.16142379, -0.29054037, -0.14689015, 0.05862138, -0.026186872, -0.09978559, -0.013270855) * input_6(0.0, 1.0); + result += mat4(-0.09673031, 0.09762035, 0.09455198, -0.03133646, -0.088566855, -0.13228449, 0.25832596, 0.00866401, 0.08979733, 0.1257045, 0.09408842, 0.31767875, 0.06228242, -0.003490804, 0.06113192, 0.03807146) * input_6(1.0, -1.0); + result += mat4(0.029964855, 0.09830443, 0.081129484, 0.009263093, -0.0028505065, -0.09319993, 0.22657022, 0.29329124, -0.021153588, 0.12597352, -0.11051172, 0.17875981, -0.038812384, -0.0460065, 0.0040371614, -0.00633942) * input_6(1.0, 0.0); + result += mat4(-0.028392928, 0.04656967, 0.054485258, -0.06508744, 0.53810346, -0.1674664, 0.010957561, -0.10228995, -0.02733834, 0.45248735, -0.04297349, 0.32459894, 0.13483456, -0.06762486, -0.018080149, -0.07826444) * input_6(1.0, 1.0); + result += mat4(0.15187562, 0.18954565, -0.027602695, 0.13031052, 0.024380172, -0.10212026, -0.03215177, -0.077799395, 0.0013291875, 0.03326248, 0.011307563, 0.043764, -0.03316291, 0.020092575, 0.18981142, 0.008778792) * input_7(-1.0, -1.0); + result += mat4(0.10027935, 0.100547664, -0.2314595, 0.18574831, 0.07762318, -0.0758325, 0.07658432, -0.014169323, -0.012898943, -0.045864295, 0.14585175, 0.07097008, 0.047771975, 0.05604357, 0.15660594, 0.14942373) * input_7(-1.0, 0.0); + result += mat4(0.1440901, -0.102492444, 0.007167481, 0.030955901, 0.06848506, 0.045856662, 0.19289559, 0.01899359, -0.029430596, -0.034449544, 0.03398057, 0.0641671, 0.12751606, -0.066839896, 0.08554121, 0.07252696) * input_7(-1.0, 1.0); + result += mat4(-0.20667183, 0.009843548, -2.6867816, 0.06321896, -0.00020965592, -0.0075065037, 0.05903654, 0.05545202, -0.0896893, 0.0331296, 0.047770597, 0.045618013, 0.044818107, -0.04266082, 0.12590341, 0.10348177) * input_7(0.0, -1.0); + result += mat4(-0.64457726, 0.48598048, -0.87112737, -0.018765017, 0.13259205, -0.07823159, 0.17020501, -0.0328959, -0.15161595, -0.13169086, 0.10214469, -0.05376877, -0.046966247, -0.1977354, 0.29169536, -0.03280561) * input_7(0.0, 0.0); + result += mat4(-0.052067686, -0.124144755, 0.058936533, 0.037896566, 0.1672295, -0.055612605, -0.02820897, -0.07341276, -0.02970888, 0.014551353, 0.068548664, 0.01522266, 0.23905994, 0.0059835045, 0.13331337, 0.14451998) * input_7(0.0, 1.0); + result += mat4(0.17673354, -0.11299763, -0.24769334, -0.3320077, 0.05247437, 0.039607447, 0.10926476, 0.11933229, 0.026409145, 0.0033568526, 0.0012663889, 0.06005051, -0.0665251, -0.156704, 0.16484289, 0.23222364) * input_7(1.0, -1.0); + result += mat4(0.2945413, -0.036118325, 0.02027747, 0.0754237, 0.031569764, -0.014289266, -0.01578664, -0.11951608, -0.0059609613, -0.021556225, 0.009123374, 0.10053693, 0.29127678, -0.24548075, 0.42189524, 0.1591946) * input_7(1.0, 0.0); + result += mat4(-0.05310348, -0.09905087, -0.003544408, 0.037655335, 0.2413105, 0.047215737, 0.05820016, 0.019653914, -0.011331983, -0.031552907, 0.03719683, 0.025724718, 0.09786117, -0.06081312, -0.028978901, 0.13268825) * input_7(1.0, 1.0); + result += vec4(0.050129518, 0.031122703, 0.031228313, -0.022204915); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.20166807, 0.11827172, 0.122049116, -0.13120931, -0.081138715, -0.02716712, -0.046552468, -0.043611098, -0.13907486, -0.059811205, 0.012380878, 0.16322753, 0.17127594, -0.10053464, -0.041659538, -0.03426426) * input_0(-1.0, -1.0); + result += mat4(0.25180534, 0.25159287, -0.123651214, 0.058251735, 0.008058828, 0.094693944, -0.09773252, -0.07862594, 0.11744638, -0.24195987, 0.021188404, -0.22087504, 0.11079389, 0.067551404, -0.016616259, -0.045601875) * input_0(-1.0, 0.0); + result += mat4(0.049738456, 0.102863796, -0.21158805, -0.22562435, -0.022144206, -0.10289237, -0.059138622, 0.05201544, 0.299602, 0.11100891, -0.0394736, 0.30330956, -0.08496681, -0.111455604, 0.033249456, -0.08236416) * input_0(-1.0, 1.0); + result += mat4(-0.3808227, 0.081732176, 0.078331806, -0.12610292, 0.38017276, -0.20276414, -0.21137981, -0.20938693, 0.025194842, 0.1485265, 0.33025274, -0.19226137, -0.23698841, -0.04949267, 0.07506399, 0.36083257) * input_0(0.0, -1.0); + result += mat4(0.23178408, 0.5167096, -0.1340296, -0.20257206, 0.2851298, -0.20104526, -0.008955928, -0.049326636, -0.1082805, 0.0805525, 0.0032187498, -0.034301966, 0.24608727, 0.2987427, -0.5605877, 0.036342025) * input_0(0.0, 0.0); + result += mat4(0.020741194, 0.27477536, -0.0175954, -0.5870603, -0.06260554, -0.32994622, 0.12849852, -0.49269655, -0.08816637, 0.023249976, -0.19284289, 0.43319377, -0.2749002, 0.30298632, 0.1841982, 0.20752837) * input_0(0.0, 1.0); + result += mat4(-0.2275575, -0.17083897, -0.20941126, -0.084247015, 0.35993463, -0.26159576, -0.23055643, 0.009971998, 0.036496438, 0.044790655, -0.1672132, -0.29161772, -0.035337195, 0.19467226, -0.3285113, 0.02242161) * input_0(1.0, -1.0); + result += mat4(0.11262728, -0.032640766, -0.1248111, -0.096691035, 0.33066663, 0.0057418044, -0.236287, 0.566867, 0.026446177, -0.06433508, 0.5198513, 0.06678819, -0.33018792, -0.12505196, -0.07987221, 0.030470913) * input_0(1.0, 0.0); + result += mat4(-0.19749285, -0.013146123, -0.13035719, -0.093523294, -0.067581, -0.0266491, -0.31385586, -0.46180114, 0.05281567, 0.046909127, -0.030206764, 0.14036585, -0.066863984, -0.38875994, -0.13565178, -0.82760704) * input_0(1.0, 1.0); + result += mat4(-0.3565498, 0.045494772, -0.06679597, -0.18218672, -0.14737229, -0.014195529, 0.20052584, 0.05504491, 0.35392824, 0.08674681, -0.037843913, 0.14946175, 0.40857238, 0.017342485, -0.0033222637, 0.18188511) * input_1(-1.0, -1.0); + result += mat4(-0.8587976, 0.03271394, 0.06691427, 0.21892984, -0.09603726, 0.005448322, -0.00012581362, -0.019108867, -0.15718889, 0.04030738, -0.296124, -0.23161012, 0.4521995, -0.35895893, 0.035800163, -0.6246885) * input_1(-1.0, 0.0); + result += mat4(-0.14488393, 0.03405401, -0.020994153, -0.078988254, -0.12624298, -0.06818127, 0.0980807, 0.10603669, 0.21287444, 0.09082565, -0.23182154, -0.11395529, 0.00012178352, -0.15668708, -0.04762892, -0.30437815) * input_1(-1.0, 1.0); + result += mat4(-0.11969482, -0.03963564, -0.19780298, -0.031596784, 0.012701479, -0.13780214, -0.2569397, -0.23332265, 0.12092239, 0.2031586, 0.23196717, 0.17757496, 0.64385575, -0.083546124, 0.1837059, 0.5580039) * input_1(0.0, -1.0); + result += mat4(-0.8530922, -0.033593338, -0.20056517, 0.22894302, 0.3270087, -0.080193534, -0.32274097, -0.267214, -0.173713, 0.30440181, 0.14916152, -0.017400062, 0.14074461, 0.04216144, 0.056211445, -1.0582395) * input_1(0.0, 0.0); + result += mat4(-0.27205685, -0.122028284, 0.06413309, 0.13719769, 0.14435485, -0.072695635, -0.013716176, -0.10758954, -0.11048998, 0.5057584, -0.24591394, 0.7106618, -0.17384216, -0.055028487, -0.07123307, 0.097943276) * input_1(0.0, 1.0); + result += mat4(0.120074674, 0.011852136, 0.025114052, -0.05917703, 0.17268448, 0.22994983, 0.41971722, 0.04366649, -0.12921219, 0.05339019, -0.083229825, 0.111178376, -0.0065701716, 0.020883685, -0.010161499, 0.23933774) * input_1(1.0, -1.0); + result += mat4(-0.1743023, -0.09278813, 0.061673563, 0.23485936, -0.1191835, 0.20654753, 0.0006436326, 0.054867018, 0.110904895, 0.09538532, -0.15154773, -0.01812928, -0.001187009, -0.037027035, -0.019098504, 0.21163166) * input_1(1.0, 0.0); + result += mat4(-0.22843942, -0.10527117, -0.0881906, 0.297079, 0.10537784, 0.18825194, -0.013242932, -0.056790743, 0.36441302, 0.13808262, -0.022578588, -0.5831655, 0.078751385, 0.034472402, -0.05837243, 0.027520401) * input_1(1.0, 1.0); + result += mat4(0.32654426, 0.18637428, -0.15650721, -0.21582508, 0.093789555, 0.022758713, 0.06353117, 0.043729108, -0.5625649, 0.14325182, 0.06910807, -0.051653787, 0.0780522, 0.05191088, 0.05754632, -0.056799404) * input_2(-1.0, -1.0); + result += mat4(0.3101921, 0.3093798, -0.15163624, 0.27284253, -0.19155715, -0.103986986, 0.12191848, 0.08270952, -0.40399018, 0.048620343, 0.067237385, 0.19208534, 0.06735774, 0.049817353, 0.11165394, 0.24893554) * input_2(-1.0, 0.0); + result += mat4(0.11201536, -0.01687159, -0.042021073, 0.15922143, 0.08978106, 0.17494324, -0.123707116, -0.09238187, -0.012530514, 0.1146364, 0.13064992, 0.024291167, -0.006313972, -0.009250089, 0.059148718, -0.13698521) * input_2(-1.0, 1.0); + result += mat4(0.3629415, -0.07073332, 0.03731397, 0.16543414, 0.28048125, 0.11488031, -0.430451, 0.116267815, -0.22467604, 0.30523774, 0.19075066, -0.042245124, -0.107431106, 0.19138898, 0.046951137, 0.050638553) * input_2(0.0, -1.0); + result += mat4(0.20246765, 0.10477735, -0.06247768, -0.07662678, -0.2941694, 0.43682998, 0.014182801, 0.5727962, -0.32265037, 0.36535332, -0.08366505, -0.41141346, -0.5069436, 0.20477165, 0.22294596, 0.22722961) * input_2(0.0, 0.0); + result += mat4(-0.27337497, 0.17129458, -0.24215962, 0.6346021, 0.1569361, 0.18261725, -0.30837542, 0.84295857, -0.13891184, 0.22493477, -0.24439152, 0.044615798, 0.16341068, -0.017051931, 0.1847232, -0.03948908) * input_2(0.0, 1.0); + result += mat4(-0.064641565, 0.09312553, 0.0950159, 0.22133593, -0.039875206, 0.041346554, -0.1543222, -0.3177902, -0.12560911, 0.10034534, 0.057473186, 0.121817194, 0.21825565, -0.10880824, 0.09335429, 0.110748306) * input_2(1.0, -1.0); + result += mat4(-0.05042395, -0.012822411, 0.05934881, -0.09454002, 0.12895578, -0.13594687, 0.28258023, 0.048819788, -0.062435705, 0.03185888, -0.06061417, -0.06787222, 0.4407419, -0.028499655, 0.06897431, 0.06311138) * input_2(1.0, 0.0); + result += mat4(0.3004428, 0.012760461, 0.0065356204, 0.09691775, -0.23869523, 0.12221345, 0.14939934, 0.17699501, -0.07792967, 0.066434614, -0.05550411, 0.08150936, 0.010211571, -0.11382048, 0.27544525, -0.042249292) * input_2(1.0, 1.0); + result += mat4(0.2822693, -0.07521359, 0.06855629, 0.011163528, -0.033267673, 0.009041489, -0.08058297, -0.04477285, 0.12193703, -0.018324347, 0.06855054, 0.060038444, 0.10548681, 0.035777055, -0.20377372, -0.16546933) * input_3(-1.0, -1.0); + result += mat4(0.32740703, -0.14498124, 0.07003535, -0.6031013, -0.40971205, -0.043609664, -0.22097449, -0.17590034, 0.024318535, -0.28600478, 0.2195906, 0.21520028, -0.29971728, 0.2431626, 0.009162723, 0.070792936) * input_3(-1.0, 0.0); + result += mat4(0.10728159, -0.026639938, -0.0031233712, -0.43490332, -0.3849391, 0.036823478, 0.10076313, -0.3149653, 0.050074972, 0.051825706, 0.15992491, -0.17441377, -0.20538643, 0.048689157, -0.054133542, 0.12030757) * input_3(-1.0, 1.0); + result += mat4(0.14832418, 0.14402026, 0.14967513, 0.15396395, 0.18173315, 0.2181779, -0.01925714, -0.03867981, 0.16833444, -0.037198123, 0.39369422, 0.34042597, -0.13966198, -0.20547742, -0.2655395, 0.0743454) * input_3(0.0, -1.0); + result += mat4(0.22487779, -0.08776823, 0.3609098, -0.9677033, -0.080377445, 0.13775358, -0.21855158, -0.069433644, 0.03071415, 0.08240149, 0.311254, 0.1292307, -0.181655, 0.024915596, -0.02988055, -0.06936025) * input_3(0.0, 0.0); + result += mat4(-0.0067105615, -0.06169962, 0.06179601, -0.23890732, -0.29708672, 0.14358722, 0.19088192, 0.7240001, 0.062169727, 0.038944587, 0.065806724, 0.13340859, -0.13288991, -0.060207494, 0.07970657, 0.21995717) * input_3(0.0, 1.0); + result += mat4(-0.076378986, 0.027983539, -0.020545362, 0.21619499, -0.21862777, 0.011614126, -0.029421644, -0.027541852, 0.069260255, -0.0101499995, 0.29578725, 0.055351853, -0.061251882, 0.069825426, 0.15330756, -0.106463514) * input_3(1.0, -1.0); + result += mat4(0.033886973, -0.052435614, -0.15214801, 0.026856385, 0.11935476, 0.10999662, 0.10593196, -0.3475431, 0.20231004, -0.014911737, 0.03286134, 0.11933057, -0.01657858, 0.140402, -0.0078048483, -0.22485581) * input_3(1.0, 0.0); + result += mat4(0.004781865, -0.031463295, -0.002436736, -0.04130664, 0.40833658, 0.09226492, -0.09221184, 0.32162985, -0.25643805, -0.13769369, 0.19269322, 0.3211339, 0.04462147, 0.00922314, 0.09693056, -0.21635404) * input_3(1.0, 1.0); + result += mat4(-0.50820845, -0.067103386, 0.08668866, 0.026959362, 0.01956289, 0.03027037, 0.18116476, 0.013403419, -0.14488435, -0.071137704, -0.084774025, 0.02577494, -1.3440577, 1.1613313, 1.2958046, -0.2885989) * input_4(-1.0, -1.0); + result += mat4(-0.02036687, -0.1368404, 0.17969066, 0.21461366, -0.27238682, -0.24929908, 0.33510527, -0.007713094, 0.39412352, -0.007455711, 0.050962593, -0.22957692, -1.2790226, 0.7120243, 0.33072487, 0.25160354) * input_4(-1.0, 0.0); + result += mat4(-0.047484808, 0.086255796, 0.15388869, 0.31618425, -0.19585657, -0.30860847, 0.3820999, 0.121075846, -0.25450695, 0.023157703, 0.049768228, -0.08187168, 1.0439898, 0.68420506, 0.33226123, 1.29895) * input_4(-1.0, 1.0); + result += mat4(-0.11982098, -0.09087065, -0.11527746, 0.0049686157, -0.017965551, -0.1910939, -0.036967, -0.15143895, 0.051295046, -0.004027594, -0.12600796, -0.0649357, 1.4883795, -0.2044306, -0.5953626, 0.47236753) * input_4(0.0, -1.0); + result += mat4(-0.030740576, -0.03364436, -0.18425936, 0.57604784, 0.044248357, -0.16380274, -0.09416243, 0.24208753, -0.24033007, 0.16558148, -0.43487552, 0.106856875, 0.4130397, 0.21506277, -0.49732974, -0.18597798) * input_4(0.0, 0.0); + result += mat4(0.11041005, -0.061024543, 0.09810217, 0.07410127, -0.16302817, -0.6894131, -0.52168167, -0.40446708, -0.24221525, -0.28664303, 0.100150704, 0.16206326, -0.5365101, -0.27715164, 0.16924599, -0.31294185) * input_4(0.0, 1.0); + result += mat4(0.22005056, 0.025005126, 0.06964843, 0.048474763, -0.038813386, -0.01084615, 0.08441344, -0.11006419, 0.28858963, -0.022428058, 0.032311875, 0.0803667, -0.2048668, -0.26905024, -0.2853435, -0.20712857) * input_4(1.0, -1.0); + result += mat4(-0.24880554, 0.017475933, 0.21011454, 0.5324437, 0.07307269, -0.031565364, 0.2188116, -0.20335774, -0.2061464, 0.12646109, 0.26515242, -0.24804649, -0.29319027, 0.050079603, -0.541117, -0.3918805) * input_4(1.0, 0.0); + result += mat4(-0.34179538, 0.029590817, 0.12097155, 0.2672811, -0.14649199, -0.030260831, 0.075273976, 0.40834874, 0.16635425, 0.20761785, 0.1553644, -0.19689266, -0.64585054, -0.23068723, -0.20185389, 0.22722961) * input_4(1.0, 1.0); + result += mat4(-0.09450057, -0.10662375, 0.21341182, -0.059226174, -0.048267815, -0.0189407, -0.0061414656, 0.10629738, -0.16315417, 0.14329924, 0.23758337, 0.015858164, -0.20551988, -0.039501935, 0.024120267, 0.17495243) * input_5(-1.0, -1.0); + result += mat4(0.08651441, 0.13490057, -0.37804347, 0.12893367, 0.04845791, -0.083678275, 0.12718584, 0.24609564, -0.25195664, 0.14708738, -0.10695736, 0.031291056, -0.15388067, -0.17016901, 0.10420862, -0.060927015) * input_5(-1.0, 0.0); + result += mat4(-0.117973834, 0.19599666, 0.034045905, 0.42024192, 0.042691518, -0.07554841, -0.037137415, -0.046024896, 0.014104247, -0.070559196, 0.094535835, -0.0649061, -0.08342435, -0.018082658, 0.058917783, -0.054230306) * input_5(-1.0, 1.0); + result += mat4(-0.33620104, 0.10935377, 0.08724201, -0.24215993, -0.1101555, 0.12932415, -0.097004585, -0.007242102, -0.065153815, 0.3640683, -0.5385015, 0.008630859, 0.0865325, -0.26287952, 0.23974052, 0.16035007) * input_5(0.0, -1.0); + result += mat4(-0.1402033, 0.21179381, -0.2857675, -0.6061771, 0.111583546, 0.028339393, 0.20444977, 0.16792656, -0.0032632079, 0.15103659, -0.6118757, 0.22317469, 0.08955986, -0.09772453, 0.17187986, 0.030685678) * input_5(0.0, 0.0); + result += mat4(0.5250126, 0.07971165, 0.40359417, -0.19757172, 0.042315863, -0.068514615, 0.08124025, -0.02281883, -0.048184287, 0.24516782, -0.2221731, 0.3187435, 0.021145308, -0.12951389, 0.30766732, 0.21859108) * input_5(0.0, 1.0); + result += mat4(0.029091945, -0.12504864, -0.08230734, -0.19690953, -0.019555911, 0.008497782, -0.20698172, 0.1019263, -0.26729175, -0.019471139, -0.37087762, 0.3319413, 0.040339224, -0.13128853, 0.08381417, 0.040034287) * input_5(1.0, -1.0); + result += mat4(-0.018769894, 0.080420256, -0.12547109, -0.102951765, -0.0072915587, -0.027377808, 0.039399654, 0.34667054, -0.006867153, -0.11676896, -0.18504573, 0.10892921, 0.1951846, -0.096364304, 0.3015677, 0.104217455) * input_5(1.0, 0.0); + result += mat4(-0.028970433, 0.024374085, -0.08584644, -0.062409468, -0.020842317, 0.03764279, -0.0019277168, 0.11078051, -0.047594257, 0.045946736, -0.23362884, -0.087911196, -0.13735503, -0.035104882, 0.3347468, -0.1686862) * input_5(1.0, 1.0); + result += mat4(-0.15549661, -0.062198147, -0.041672222, 0.07795356, -0.06502912, 0.08799698, 0.10031732, 0.16759023, 0.019588374, -0.19527224, 0.05090935, 0.27669394, -0.0012047661, 0.04218334, 0.013785178, -0.0070608547) * input_6(-1.0, -1.0); + result += mat4(-0.06996955, 0.21177533, -0.1735178, -0.13090643, 0.0749156, -0.15960203, -0.06201025, 0.12560044, 0.13526529, -0.026200023, 0.08095451, -0.022095036, -0.021206327, -0.025586676, -0.019050803, 0.10293086) * input_6(-1.0, 0.0); + result += mat4(0.13627297, 0.12672558, -0.022164838, 0.106971554, 0.16442282, -0.02062608, -0.10528248, -0.025983319, 0.11513501, -0.04222056, 0.24688996, -0.33010048, -0.023021154, -0.033279628, -0.0311865, 0.019012466) * input_6(-1.0, 1.0); + result += mat4(0.070263736, 0.009498556, 0.031925406, 0.0748502, -0.12978178, 0.012519361, 0.13019878, 0.41127354, 0.27148882, -0.04257737, 0.33309916, 0.17788671, -0.16188832, 0.06647069, 0.0440969, 0.049370408) * input_6(0.0, -1.0); + result += mat4(-0.12893015, 0.15132387, 0.032985955, 0.20910808, 0.14756986, 0.0867071, 0.13861884, 0.14821628, 0.10269128, 0.31686008, -0.11103466, -0.28182626, -0.15223452, 0.05719536, -0.06263497, 0.100430176) * input_6(0.0, 0.0); + result += mat4(0.02241092, 0.11180775, -0.15236792, 0.117617264, -0.028076706, -0.1238726, 0.19780485, -0.29589877, 0.28320277, -0.062947735, -0.4515246, -0.5062774, -0.23777139, 0.02105787, -0.02415408, 0.101803705) * input_6(0.0, 1.0); + result += mat4(0.046397, 0.024652472, -0.0075021624, 0.13867287, 0.07243696, -0.10747985, 0.14717135, -0.03168999, -0.36597574, 0.088038035, 0.04960404, 0.15027517, -0.14755175, -0.04389744, 0.042986244, 0.11371033) * input_6(1.0, -1.0); + result += mat4(-0.013063534, -0.028085483, 0.058810245, 0.25541434, -0.11275116, 0.08255264, 0.20933467, 0.2676284, 0.09018429, -0.21030307, -0.19182618, 0.018110935, -0.1513414, -0.048344325, 0.15488605, -0.0023613567) * input_6(1.0, 0.0); + result += mat4(0.1831079, -0.016521817, 0.06575826, 0.26974493, -0.32912207, 0.11751176, 0.03659676, -0.26722613, -0.026120368, 0.03803153, -0.03409733, 0.22526288, -0.25298682, -0.01108749, -0.015755309, 0.177388) * input_6(1.0, 1.0); + result += mat4(0.31719336, 0.066186, -0.027477825, 0.0123977605, -0.33194673, 0.070623025, 0.03301458, 0.17597589, -0.08085062, -0.008659064, -0.062108044, 0.020564714, 0.18224727, 0.08264342, 0.02687613, -0.024149222) * input_7(-1.0, -1.0); + result += mat4(0.16778785, 0.08498126, -0.21726622, 0.11764955, -0.3250495, -0.025279501, -0.21135433, -0.028414985, 0.15224367, 0.061155338, 0.06728301, -0.00088972435, 0.0009372909, 0.06091771, 0.10636035, -0.001632261) * input_7(-1.0, 0.0); + result += mat4(-0.10110828, -0.12711063, 0.08234606, 0.06724155, 0.009094741, -0.06507707, -0.045436148, -0.027340412, 0.14947419, 0.046535186, 0.021338347, -0.048092876, -0.009103965, 0.054291893, 0.0039727646, 0.055114884) * input_7(-1.0, 1.0); + result += mat4(0.6209113, -0.63597625, 0.38513935, -0.37599087, -0.5069056, 0.20613782, 0.09033223, 0.09491826, 0.061508775, -0.03434292, -0.07265342, -0.08177831, 0.18814711, 0.17943954, -0.12810041, -0.3989326) * input_7(0.0, -1.0); + result += mat4(0.42852145, -0.27086696, 0.5306924, -1.2929697, -0.45233592, 0.23598222, -0.12791443, 0.025556274, -0.0024591673, 0.054976072, 0.13950475, -0.07505269, 0.11048789, 0.009681286, -0.22328, -0.01992987) * input_7(0.0, 0.0); + result += mat4(-0.066315874, -0.18066059, 0.19425268, -0.59703517, -0.31516886, -0.026471948, 0.041731495, 0.2847769, 0.16617484, 0.024296919, 0.039394848, 0.06689248, -0.0400469, 0.06639362, 0.10753409, 0.16011702) * input_7(0.0, 1.0); + result += mat4(0.13244765, -0.0561741, -0.058405243, 0.07387538, -0.086544186, 0.020007143, 0.059547555, -0.0066752634, 0.100508794, 0.04904854, -0.017423134, -0.057669528, -0.3380176, -0.07316646, -0.06975874, -0.05984218) * input_7(1.0, -1.0); + result += mat4(-0.28386912, -0.14137767, -0.19207175, -0.43637818, -0.28724548, 0.08060674, 0.29305092, 0.24110971, 0.046772916, -0.0013305923, -0.02287702, 0.026390849, 0.04819494, -0.14112172, -0.13938707, -0.24831222) * input_7(1.0, 0.0); + result += mat4(0.16343015, -0.10038451, -0.044918876, -0.17787084, -0.090838544, 0.119353555, 0.0037011756, 0.19583127, 0.24411066, 0.10008345, -0.080917224, -0.009118609, 0.061627116, -0.020607105, 0.061656334, 0.25533146) * input_7(1.0, 1.0); + result += vec4(0.027472198, -0.026023926, -0.05713234, -0.09429663); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf4 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.3350284, 0.030737987, 0.07004502, -0.046993356, -0.0671007, 0.0930822, -0.124515526, -0.055699714, -0.101298854, 0.004701582, 0.10061334, -0.28765658, -0.061354555, -0.105903774, -0.014528786, -0.06894179) * input_0(-1.0, -1.0); + result += mat4(0.2670938, 0.14520174, -0.23354355, -0.09861605, 0.002354121, -0.08584275, -0.10117774, 0.007356033, 0.15114664, -0.3238826, -0.2473618, 0.0145224435, 0.10012879, 0.15040947, 0.3486307, 0.1400781) * input_0(-1.0, 0.0); + result += mat4(-0.038074616, 0.026224157, -0.14238179, -0.15992403, 0.08678965, 0.12159028, 0.02321314, -0.103674866, 0.040683866, -0.14110972, -0.11109862, 0.2182679, 0.049424183, -0.2534203, -0.25138494, 0.08347868) * input_0(-1.0, 1.0); + result += mat4(-0.61258596, -0.2458764, 0.18852563, -0.32432878, 0.08217565, 0.10049528, -0.1630915, 0.086023115, 0.35016048, 0.32950792, 0.21073054, -0.08889268, 0.02558634, 0.07682902, -0.1328802, -0.42317164) * input_0(0.0, -1.0); + result += mat4(0.52648026, -0.33777404, -0.3584342, 0.40851146, 0.58800197, -0.30515167, 0.28927833, 0.6986895, -0.58556205, -0.41651583, 0.0018814768, -0.14088108, -0.05080476, 0.13307361, -0.061305985, -0.13080394) * input_0(0.0, 0.0); + result += mat4(0.08620713, 0.0052873367, 0.1429815, 0.17831351, 0.17438936, 0.13712972, -0.2465863, -0.56427646, -0.055296414, 0.055714, 0.0019216489, 0.6843434, 0.2627924, -0.1805645, -0.3454675, -0.053106822) * input_0(0.0, 1.0); + result += mat4(-0.079763, 0.06882078, -0.08917766, -0.06259045, -0.010607872, 0.20694739, -0.16888139, -0.218606, -0.2107982, -0.030880112, -0.23848633, -0.19015408, -0.012277613, -0.11794804, 0.15852027, 0.027378673) * input_0(1.0, -1.0); + result += mat4(0.28779218, 0.20059763, 0.0525088, 0.109847106, 0.116019264, 0.007037323, 0.4623548, 0.25216457, -0.23403077, -0.022943566, 0.07185465, -0.2932871, 0.10680622, 0.2766556, 0.068890385, -0.10335734) * input_0(1.0, 0.0); + result += mat4(0.09353863, -0.030621948, -0.04045859, 0.018872572, 0.107283875, -0.0021760254, -0.633029, -0.3860931, 0.065069675, 0.08479702, -0.23863755, 0.10263503, -0.30815962, -0.17877418, -0.0837042, 0.10757206) * input_0(1.0, 1.0); + result += mat4(0.028401308, 0.18122333, -0.06907089, 0.07397694, 0.055871088, 0.027536815, 0.20683813, 0.21148889, -0.07182342, -0.017126964, 0.034896072, 0.05690352, 0.2061737, 0.048309285, 0.08079628, 0.4005893) * input_1(-1.0, -1.0); + result += mat4(0.35647184, 0.25695333, 0.15194477, 0.089701764, 0.18013397, 0.05041149, -0.0077139703, -0.14522469, 0.09560777, -0.28744462, -0.15263447, -0.30223662, 0.13065696, 0.17667033, 0.15240677, -0.22069752) * input_1(-1.0, 0.0); + result += mat4(-0.006939837, -0.086481474, -0.26929134, -0.89694726, -0.062345114, 0.13814534, 0.27404666, 0.08592708, 0.18284604, -0.13703032, -0.16936016, 0.09117052, 0.057622924, 0.018253468, 0.040642887, -0.27766153) * input_1(-1.0, 1.0); + result += mat4(-0.10624044, 0.0659402, -0.037289202, 0.015083488, -0.093537316, 0.05536329, -0.00085838273, 0.003019293, 0.033572853, 0.022416858, 0.12852469, -0.112637825, 0.27213466, -0.10329855, 0.28634456, 0.45310897) * input_1(0.0, -1.0); + result += mat4(0.088546604, 0.33817717, -0.30629918, 0.13625856, -0.1029453, 0.4073112, 0.07395536, -0.033502143, -0.030837154, 0.07976179, 0.29131886, -0.2813778, 0.13736589, -0.11111172, 0.11274041, 0.0952037) * input_1(0.0, 0.0); + result += mat4(0.2719648, 0.07127534, 0.25298133, -0.1498607, 0.14027838, -0.38153398, -0.20274276, -0.058861595, -0.73994297, -0.4336736, 0.37139177, -0.33776727, -0.15169242, 0.22596493, -0.02084838, -0.048636973) * input_1(0.0, 1.0); + result += mat4(-0.088826545, -0.116717316, 0.14016424, -0.0073378994, 0.1307623, 0.14075787, -0.12595801, -0.15156728, 0.013746674, 0.47352704, 0.13841772, 0.027539652, -0.026036585, -0.20358898, 0.015061238, 0.09525363) * input_1(1.0, -1.0); + result += mat4(-0.087890975, 0.0030812814, -0.0036038028, 0.14082137, 0.03671355, -0.29253098, -0.6558796, 0.005899956, 0.23449913, 0.08964608, -0.110203415, -0.10033741, 0.08785056, 0.03753907, 0.087412715, -0.13202819) * input_1(1.0, 0.0); + result += mat4(-0.1380617, 0.018677022, 0.15898165, -0.09601456, 0.031386297, -0.24007995, -0.19576518, 0.09110104, -0.030044077, -0.35715622, -0.12173803, 0.19287506, -0.017229801, 0.094039045, 0.068217196, -0.18028578) * input_1(1.0, 1.0); + result += mat4(0.12164214, -0.27125585, 0.17144011, -0.17594695, 0.06746671, 0.04289761, 0.12574801, 0.073060535, 0.017384436, -0.43118113, -0.005159327, -0.06379445, -0.008403695, -0.10880697, -0.017857706, -0.038318023) * input_2(-1.0, -1.0); + result += mat4(0.20589867, -0.19851266, 0.11164505, 0.86585903, -0.1167721, 0.40562943, 0.1892214, -0.025961654, 0.037493702, -0.060280632, 0.035903074, 0.1939916, 0.11637519, -0.023113769, 0.09510609, -0.048395354) * input_2(-1.0, 0.0); + result += mat4(0.16366114, 0.053191777, 0.2848202, 0.25335726, -0.051382434, 0.07911257, -0.07897088, 0.1894491, -0.043736592, -0.049506348, -0.065835215, 0.2110267, -0.15259406, -0.030289806, -0.038354166, 0.13713165) * input_2(-1.0, 1.0); + result += mat4(0.18327434, -0.042916596, 0.043593924, 0.0069988854, -0.3058993, 0.050111175, -0.20403534, 0.013496665, 0.0019728024, -0.32953572, 0.09228719, 0.072075315, -0.19483079, -0.30334893, 0.2318722, 0.045732502) * input_2(0.0, -1.0); + result += mat4(-0.1647278, -0.5022468, -0.14392182, -0.42877498, -0.2514362, 0.017685633, 0.05248462, -1.0663438, -0.10007578, 0.0016746764, 0.24235022, 0.3180291, -0.39797428, -0.16489254, 0.07068441, -0.21265464) * input_2(0.0, 0.0); + result += mat4(-0.0046771257, -0.0060118698, 0.19453704, 0.12908906, -0.053448234, 0.21762927, 0.01578146, 0.5753526, -0.2770065, 0.1402455, 0.29068035, 0.036441498, -0.032185894, 0.20989683, 0.25173542, 0.38072708) * input_2(0.0, 1.0); + result += mat4(0.034811474, 0.026820393, 0.059083905, 0.09707658, 0.081346124, -0.13249518, 0.05984057, 0.21577336, 0.019052299, 0.014159643, -0.05479333, 0.07246504, 0.15721682, 0.26086575, 0.21021754, -0.034134276) * input_2(1.0, -1.0); + result += mat4(-0.13040096, 0.08060565, -0.049695525, -0.10962234, -0.0816425, -0.1969147, -0.038530536, -0.13391946, 0.15891404, 0.018734295, 0.18566309, -0.1822867, -0.27459016, 0.00080406404, -0.24612689, 0.35338265) * input_2(1.0, 0.0); + result += mat4(-0.026734853, 0.28426942, 0.121350676, -0.16837925, 0.007695178, -0.23557232, -0.044871587, 0.27238622, 0.005524594, 0.16805997, 0.012853614, 0.14126076, 0.062224813, 0.12646393, -0.33846408, 0.123587586) * input_2(1.0, 1.0); + result += mat4(0.21866687, 0.009162818, 0.34518826, 0.19632529, 0.11330726, -0.09244119, 0.051687993, -0.34691077, -0.0029202343, -0.12609252, 0.33856648, 0.2580916, -0.13458116, 0.0021740573, -0.115115486, -0.20136926) * input_3(-1.0, -1.0); + result += mat4(0.06437845, -0.35570753, -0.10121319, -0.21278827, -0.15924081, 0.17095931, 0.20114848, 0.19209197, -0.18393761, 0.023549652, 0.4416028, -0.0015550614, -0.13792954, -0.29732293, -0.091804564, -0.12418931) * input_3(-1.0, 0.0); + result += mat4(0.06319991, -0.20318283, -0.113076776, -0.32701156, 0.05733158, -0.14272125, 0.005744361, -0.2691195, -0.06826068, -0.13600448, 0.08400241, -0.15242088, 0.015215491, 0.21292494, -0.007444907, 0.21801911) * input_3(-1.0, 1.0); + result += mat4(-0.038373362, 0.011206973, 0.36061138, 0.13436468, 0.13835056, -0.48861164, 0.15387364, -0.0041668774, -0.045375396, 0.017610908, 0.26800793, 0.27986887, -0.056698527, -0.44477138, -0.21160237, -0.084344886) * input_3(0.0, -1.0); + result += mat4(-0.033571213, -0.1725741, 0.18822646, 0.030196348, -0.1495261, -0.037155934, -0.34286276, 0.113650456, -0.15978341, 0.46807635, 0.07154135, 0.038000125, -0.15595086, -0.033777457, -0.035332922, -0.013186178) * input_3(0.0, 0.0); + result += mat4(-0.043009616, 0.009621645, 0.00224879, -0.04327768, -0.11477972, -0.7258232, -0.2813202, 0.14651278, -0.28035018, 0.13708419, 0.23108767, -0.06895725, 0.04469157, 0.122313984, 0.103639826, 0.24337299) * input_3(0.0, 1.0); + result += mat4(0.07951119, 0.057259236, 0.03311223, 0.106114775, 0.088289976, 0.14444534, -0.18890277, 0.010501096, 0.021467965, 0.22072671, 0.25329664, -0.1452887, 0.13577966, -0.07091454, 0.048974954, 0.08112529) * input_3(1.0, -1.0); + result += mat4(-0.017263342, -0.02362814, 0.08217282, -0.097081006, -0.23591529, 0.57649016, 0.36424106, 0.2551097, 0.1129654, -0.36899605, 0.007503398, -0.1686139, -0.02191237, 0.120694056, 0.05989667, -0.08333186) * input_3(1.0, 0.0); + result += mat4(-0.004648874, 0.030045917, -0.043323725, -0.015255083, 0.049008936, -0.16228405, 0.26737633, -0.2291224, 0.11085827, 0.091876626, 0.23317885, -0.045380272, -0.12534223, -0.21281478, -0.1049872, -0.0048995945) * input_3(1.0, 1.0); + result += mat4(-0.051138055, -0.08281357, 0.017229958, 0.1208764, 0.032050446, 0.15299854, -0.06851389, 0.10461909, -0.025360696, -0.28001583, 0.09311386, -0.06925553, 0.47238418, -0.18362638, 0.66174996, 0.30967644) * input_4(-1.0, -1.0); + result += mat4(-0.027114963, 0.4489051, 0.37938967, 0.45134124, 0.13652304, -0.14764474, 0.0038306275, -0.058308568, -0.14341338, 0.09237672, -0.01634397, -0.20995604, -2.0117176, 0.06123535, -0.0062795584, -0.746628) * input_4(-1.0, 0.0); + result += mat4(-0.027545763, 0.026661323, 0.14043218, 0.090058, 0.14874828, 0.22598314, 0.27305427, -0.11798161, -0.45170924, -0.27622157, -0.32119644, 0.11341887, 0.16002731, -1.5580196, 1.1542026, -0.38004237) * input_4(-1.0, 1.0); + result += mat4(0.15683106, 0.27509552, 0.0020735064, 0.09240128, 0.041198526, 0.37191564, -0.23272583, 0.30593437, -0.11987215, -0.30141708, 0.11852083, -0.19879873, 0.21894221, 1.7008119, -0.5231607, 0.93320596) * input_4(0.0, -1.0); + result += mat4(0.10908395, 0.10954688, -0.014568251, 0.51218486, 0.07487451, -0.094719894, 0.10605828, 0.16781758, -0.16303621, 0.0737529, 0.05099695, -0.3520794, 0.31169114, 0.9133414, -0.9981735, -0.52728236) * input_4(0.0, 0.0); + result += mat4(0.26350728, -0.106920555, -0.24175891, 0.111568026, -0.51567894, 0.54245394, 0.34243846, -0.20617057, -0.17080598, -0.32485065, -0.1982177, 0.009592938, -0.061651062, -1.5474958, -0.657202, -0.91254735) * input_4(0.0, 1.0); + result += mat4(-0.06363226, -0.12190618, -0.1315173, 0.026503915, 0.011878139, -0.16669516, -0.16539112, 0.06335699, 0.016635785, 0.036990203, 0.04805676, 0.023074536, 0.005593216, 0.3546531, -0.2689505, -0.36177012) * input_4(1.0, -1.0); + result += mat4(-0.3200042, 0.23824269, 0.00663826, 0.39579278, 0.117723145, 0.0043977983, -0.16773804, -0.11400465, 0.12641014, 0.33630416, -0.17256483, -0.08842413, -0.56286305, -0.6064187, -0.3079778, 0.68587244) * input_4(1.0, 0.0); + result += mat4(0.14539254, 0.0795255, -0.010225356, 0.07942184, 0.013893879, 0.13891989, 0.3451257, -0.124504544, -0.028008193, -0.26410127, -0.3254541, 0.09701661, -0.30779994, 0.0037793396, 0.33743885, 0.40959558) * input_4(1.0, 1.0); + result += mat4(-0.19936201, 0.031778138, -0.27310297, -0.33771262, 0.2132222, 0.18262279, 0.0974085, -0.12934038, -0.019903436, -0.20562829, 0.112524115, 0.31680837, -0.05956913, 0.063162185, 0.018218214, 0.4733084) * input_5(-1.0, -1.0); + result += mat4(-0.31985322, 0.72501206, 0.06304105, -0.066231914, -0.09814223, -0.056202706, 0.041294772, 0.25581807, 0.12950635, 0.29084116, -0.011739148, -0.11144317, -0.0753339, 0.1561884, 0.1313517, 0.0002492305) * input_5(-1.0, 0.0); + result += mat4(0.052714862, -0.35184464, -0.0026755854, 0.48621473, -0.014906466, -0.25036883, 0.1634591, 0.029678317, -0.01067198, -0.080107406, 0.022442857, 0.1104734, 0.07411771, -0.115329, -0.020273618, -0.46901605) * input_5(-1.0, 1.0); + result += mat4(-0.49707717, -0.0666231, -0.3461767, 0.040753826, 0.012978916, 0.37849906, -0.13214406, 0.110828646, -0.1315459, -0.07282101, 0.23926264, 0.03536352, -0.22484463, -0.011233899, -0.10564562, -0.0066265464) * input_5(0.0, -1.0); + result += mat4(0.050296716, 0.11174735, -0.31069162, 0.024199115, 0.023901781, 0.02476106, -0.038880445, -0.14088407, 0.11949455, 0.26213786, -0.14136094, -0.086664185, -0.24204494, 0.23189959, 0.08225265, -0.3178782) * input_5(0.0, 0.0); + result += mat4(-0.023011705, 0.012906337, 0.3646085, 0.13051502, -0.046497803, 0.06122514, -0.06548088, -0.05476144, 0.014043631, -0.15348132, 0.04182807, 0.12350367, -0.121337034, -0.31343466, 0.05155342, -0.1699499) * input_5(0.0, 1.0); + result += mat4(0.05810772, -0.1658992, -0.039093684, -0.13939373, 0.06565055, 0.22400442, 0.023764273, 0.20177443, 0.21047582, 0.42124954, 0.03916033, -0.22402656, 0.04778056, 0.010565218, -0.11604039, -0.06133349) * input_5(1.0, -1.0); + result += mat4(0.17478266, -0.026968753, -0.1729371, 0.106409766, -0.0791228, 0.4313695, 0.25463852, 0.088474356, 0.055814445, 0.18058728, 0.0660143, 0.25557765, 0.031932943, 0.25732145, 0.22078945, 0.009165822) * input_5(1.0, 0.0); + result += mat4(0.031353194, -0.04136676, 0.010285667, 0.11196551, -0.01824681, 0.22716516, 0.068151996, 0.022167388, 0.08148348, -0.17860956, -0.07351426, -0.30064994, 0.09153178, -0.38622952, -0.19038163, -0.48142803) * input_5(1.0, 1.0); + result += mat4(-0.087839216, 0.086352296, 0.2351008, 0.29368228, -0.15525609, 0.06862781, -0.042973846, 0.12326881, 0.0816924, -0.077332474, 0.026785385, 0.07320066, 0.049649175, 0.02878642, -0.038071256, 0.007326548) * input_6(-1.0, -1.0); + result += mat4(-0.09639391, 0.24089059, 0.1964943, 0.04731489, 0.12017097, -0.032610733, 0.27028188, -0.0397314, 0.35548547, -0.04189648, 0.029366706, 0.48890996, 0.005816993, 0.1213992, 0.04432131, -0.011074473) * input_6(-1.0, 0.0); + result += mat4(-0.13957353, 0.35050026, 0.30070657, 0.14113379, 0.05935852, -0.19399862, -0.20612836, 0.0276606, 0.28116402, -0.37862742, -0.1285508, -0.19881923, -0.061559144, -0.03452693, 0.029831473, -0.038770795) * input_6(-1.0, 1.0); + result += mat4(-0.10748859, 0.16805242, 0.33614272, 0.20712522, -0.16665763, 0.24685538, 0.15971221, 0.10786796, 0.19613434, -0.22783414, 0.14573495, 0.3329823, -0.009532079, 0.05246408, 0.09603494, 0.050294332) * input_6(0.0, -1.0); + result += mat4(-0.1863541, 0.099004954, -0.03277154, 0.15015656, 0.29792032, 0.21845616, 0.09070728, -0.20616794, -0.6297703, -0.0068854936, 0.077162094, -0.49168977, 0.012530699, 0.1391096, -0.119628735, -0.042685665) * input_6(0.0, 0.0); + result += mat4(-0.040131383, 0.020541333, 0.34240183, -0.005783727, -0.07833508, 0.06085966, -0.07634441, 0.050867558, 0.029535007, 0.029078607, -0.19669141, 0.5760024, 0.103920355, -0.024139632, -0.03652605, -0.000732769) * input_6(0.0, 1.0); + result += mat4(-0.08573403, 0.32370785, 0.2451174, 0.006334413, -0.2087412, 0.06675881, -0.108759314, -0.07185442, 0.05104051, -0.20959023, -0.092946045, -0.16712533, 0.0005657494, -0.02360673, 0.05161901, 0.01056981) * input_6(1.0, -1.0); + result += mat4(-0.027829938, 0.14432907, 0.24000591, 0.0649353, -0.14125305, 0.1278672, 0.13416712, -0.07694514, -0.44829795, 0.37190297, -0.09966179, -0.22515817, 0.15845275, -0.027631804, -0.026828358, 0.07226013) * input_6(1.0, 0.0); + result += mat4(-0.06661893, 0.1747366, 0.21979141, 0.022099236, -0.043281265, -0.47810113, -0.105058685, 0.16920905, -0.020483684, 0.23255104, -0.19851105, -0.16335694, 0.06344872, 0.12754591, 0.04719641, -0.0032147109) * input_6(1.0, 1.0); + result += mat4(-0.21906677, -0.25040928, -0.42623818, -0.012385629, 0.13050683, 0.08876047, 0.059619963, 0.28889918, -0.05693916, -0.07141173, -0.021852594, 0.14789335, 0.028463898, -0.019252406, -0.16151133, -0.1423177) * input_7(-1.0, -1.0); + result += mat4(-0.15717271, -0.3354824, -0.1282995, -0.043624938, 0.056933425, 0.03570856, 0.06706005, -0.055587023, -0.070112765, -0.05942111, 0.011986094, 0.0936835, -0.020311218, -0.31028464, -0.044939436, 0.14981027) * input_7(-1.0, 0.0); + result += mat4(-0.07226713, -0.008548044, 0.09738499, -0.1841608, -0.15916988, 0.028277155, 0.07018294, -0.03480479, -0.0414777, 0.110120274, -0.044169266, -0.027710594, -0.0373414, 0.04528044, 0.05044371, 0.15836835) * input_7(-1.0, 1.0); + result += mat4(0.780897, -0.28710204, 0.3427761, -0.260224, -0.06565287, 0.16740607, 0.2357578, 0.09116307, -0.079215154, -0.2073042, -0.045036897, 0.073956825, -0.08104877, -0.15788601, -0.27591786, -0.28406093) * input_7(0.0, -1.0); + result += mat4(0.4140531, -0.7367616, 0.15128906, -0.332083, -0.1399976, 0.11479278, -0.08074936, -0.051536936, -0.021562291, -0.20055284, 0.12214564, -0.06322719, 0.13968898, -0.16106187, -0.012237803, -0.25380206) * input_7(0.0, 0.0); + result += mat4(0.1188838, -0.02201182, -0.0075109103, -0.4865169, -0.014433221, -0.024418833, 0.1394691, 0.18229032, 0.08293867, 0.0025226076, 0.032247685, 0.12801564, -0.08239017, -0.016557112, -0.016831597, 0.1545257) * input_7(0.0, 1.0); + result += mat4(0.0523771, -0.2655167, -0.14469072, -0.18978837, -0.002996136, 0.15056986, -0.103202805, -0.09072324, -0.013549503, -0.12449037, -0.14673512, 0.0037101274, -0.15256475, -0.036017787, -0.24906614, -0.11712452) * input_7(1.0, -1.0); + result += mat4(0.059179444, 0.061138615, -0.41387928, 0.16779445, 0.10689885, 0.12790558, -0.09149004, -0.0155991, 0.09071942, -0.15962797, -0.029019352, 0.030884402, -0.07571087, -0.35505188, -0.014453534, 0.19542952) * input_7(1.0, 0.0); + result += mat4(-0.032657232, 0.063008785, 0.0040081046, -0.1387406, -0.003430701, -0.01982605, -0.04054051, -0.08283569, 0.058816176, -0.06104605, -0.09903113, 0.17793402, 0.08873508, -0.07902179, 0.050487597, 0.3044518) * input_7(1.0, 1.0); + result += vec4(0.104937725, 0.13515903, 0.09173032, 0.034252513); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf5 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.211443, -0.1490635, 0.041136466, -0.3967687, -0.04687623, -0.009708389, 0.016398862, -0.18052125, -0.09277228, -0.066851445, 0.26070487, 0.002073514, 0.058383726, -0.24627942, -0.00026489428, 0.13198712) * input_0(-1.0, -1.0); + result += mat4(0.0033042096, -0.11382295, 0.0030176332, 0.05469892, 0.1510862, 0.10463728, 0.1692076, 0.13132326, -0.31413832, -0.13465796, -0.012042701, -0.030533234, -0.109307475, -0.22172107, 0.14785886, 0.055514034) * input_0(-1.0, 0.0); + result += mat4(-0.069888055, -0.08247787, -0.07401226, -0.10780137, 0.093260385, -0.028133344, 0.059826616, 0.06890432, -0.13821806, 0.10858932, 0.07686793, -0.039953567, -0.3310179, 0.19158295, -0.11808529, -0.15431768) * input_0(-1.0, 1.0); + result += mat4(-0.11572333, -0.26262993, -0.2940581, -0.18335351, -0.014972632, 0.08680227, 0.07261631, -0.065842226, 0.23777857, 0.17993496, 0.1051478, 0.27675116, 0.26780647, 0.03875495, -0.0114475805, -0.009984424) * input_0(0.0, -1.0); + result += mat4(-0.008216937, 0.29332525, -0.13946676, -0.06807651, 0.11920271, 0.06335481, 0.31481305, 0.5103104, 0.029587382, -0.39300504, -0.18427336, 0.025884932, 0.0072479537, -0.24194732, -0.4016717, -0.21686189) * input_0(0.0, 0.0); + result += mat4(0.028432665, 0.005971384, -0.15151726, 0.26396284, 0.051141724, -0.12442474, 0.090105295, 0.13519283, -0.08845533, 0.2553529, 0.06405013, 0.06426952, -0.17715164, -0.00639035, 0.3967664, 0.20621555) * input_0(0.0, 1.0); + result += mat4(0.15973413, -0.38989195, 0.14335456, 0.064659685, 0.11069433, -0.100895554, -0.0042997506, 0.10829395, 0.034925535, -0.17522763, -0.07838138, 0.15318899, 0.37682202, -0.100418106, -0.022964446, 0.131333) * input_0(1.0, -1.0); + result += mat4(-0.1035035, -0.17094152, -0.12621538, -0.2199196, 0.14440341, 0.48880187, 0.2749347, 0.14591591, 0.18919878, 0.0999195, 0.2872397, 0.012827352, -0.22483224, -0.15261011, 0.28032503, 0.0626352) * input_0(1.0, 0.0); + result += mat4(0.103563145, -0.08752295, 0.031303793, -0.050610896, -0.15255135, -0.10090137, -0.08423531, 0.11298029, -0.0730484, -0.0034420926, -0.13962273, -0.23560983, -0.12554616, -0.07263085, 0.09044228, -0.10526206) * input_0(1.0, 1.0); + result += mat4(-0.07114846, -0.05408582, 0.0423954, -0.287634, -0.023204159, 0.076620184, 0.09040705, 0.20329563, 0.13357055, 0.08982128, 0.045281462, 0.12437087, 0.02317319, -0.037477463, -0.12042208, 0.26973444) * input_1(-1.0, -1.0); + result += mat4(0.28919598, -0.047655173, 0.35462722, 0.5420558, -0.03198465, -0.21267064, -0.1870339, -0.03985183, -0.22146317, -0.105217464, -0.0941214, -0.28747278, 0.21509138, 0.17379157, -0.11472855, -0.09616689) * input_1(-1.0, 0.0); + result += mat4(-0.21387443, 0.05359614, -0.028780943, 0.48913223, -0.017007632, -0.014035116, -0.0037113854, -0.30135342, -0.13511388, -0.18038312, -0.057611372, 0.007119701, 0.033664607, -0.10257686, 0.012435699, 0.022452388) * input_1(-1.0, 1.0); + result += mat4(0.05801786, -0.14863667, 0.039561424, 0.3728457, -0.010975581, -0.31857306, -0.19968468, 0.38805532, -0.1178216, 0.22595328, -0.15991248, -0.3715355, -0.03032524, 0.5560119, 0.17806125, -0.3042981) * input_1(0.0, -1.0); + result += mat4(-0.015762433, 0.14559233, 0.023295585, 0.15485989, 0.32259294, -0.18108612, 0.29879737, 0.24069051, -0.2650855, 0.22922492, -0.35463998, -0.086095996, 0.10941843, 0.16284247, -0.014422928, -0.29390997) * input_1(0.0, 0.0); + result += mat4(-0.17677842, 0.54328865, 0.055690568, 0.4772467, 0.020093689, -0.21163028, -0.1406531, 0.22234759, 0.22942619, -0.4263496, -0.32938597, -0.2810387, 0.0135601, -0.099690355, 0.07241426, -0.18736474) * input_1(0.0, 1.0); + result += mat4(-0.025200265, 0.021110974, 0.04393872, 0.17015877, -0.079335734, 0.45541787, 0.32672366, -0.3218813, 0.19383858, 0.08655679, -0.10149722, -0.010141926, -0.24472761, 0.08425032, -0.12856178, -0.3950213) * input_1(1.0, -1.0); + result += mat4(0.030871639, 0.040697645, 0.051359683, -0.046979714, -0.26220497, -0.31762448, 0.23625742, 0.064135656, 0.0015267956, -0.006973364, -0.13194428, 0.13930212, -0.05937613, 0.025554318, -0.09070236, -0.033370104) * input_1(1.0, 0.0); + result += mat4(0.13671835, -0.06423842, 0.04607307, -0.10766536, 0.23498492, 0.073121466, 0.058331262, -0.050594263, -0.00045032008, 0.0073973523, 0.10921204, -0.00071003777, -0.014924446, 0.027399957, -0.008761059, 0.003664662) * input_1(1.0, 1.0); + result += mat4(0.5488311, -0.3833167, -0.1588279, 0.2157683, -0.0010461169, -0.15243816, -0.023160059, 0.36584693, -0.06675945, -0.17853932, 0.016843714, 0.058257088, 0.032481726, 0.022233285, 0.023314754, -0.034741484) * input_2(-1.0, -1.0); + result += mat4(-0.012589006, 0.09547818, -0.0243762, 0.42431056, 0.10952301, -0.15515284, 0.056862254, -0.13036457, -0.068208046, -0.05786753, -0.13520728, -0.2620138, -0.001471741, 0.058698867, -0.24388853, 0.114027895) * input_2(-1.0, 0.0); + result += mat4(-0.19237423, -0.13966554, 0.043636803, 0.45396572, 0.049267557, -0.114289425, -0.08407293, -0.050713025, 0.18709476, -0.015242762, 0.08289273, -0.11821216, -0.051745243, -0.17485896, -0.01786878, 0.21598372) * input_2(-1.0, 1.0); + result += mat4(-0.22580379, -0.060835145, -0.42604232, -0.24695921, 0.11212173, 0.026584797, -0.1354313, -0.19948992, 0.2901181, -0.1005706, -0.08810731, -0.19628052, -0.35742328, -0.06763937, -0.37341806, -0.014487428) * input_2(0.0, -1.0); + result += mat4(-0.10078971, -0.2828755, -0.41729686, -0.22510739, -0.3370014, -0.17441703, -0.22916318, -0.6276802, 0.24801809, -0.20984073, -0.2760572, 0.1680439, 0.005084405, 0.018485669, 0.12031823, -0.025315268) * input_2(0.0, 0.0); + result += mat4(-0.28349802, 0.15660878, 0.07208929, -0.28971404, 0.030648006, 0.13247243, -0.07038927, -0.0723726, 0.13145477, -0.14941502, -0.14468883, -0.15023166, 0.24236587, -0.05171443, -0.076886475, -0.23266803) * input_2(0.0, 1.0); + result += mat4(0.033737935, 0.20118764, 0.07046915, -0.28825983, -0.13517421, 0.31183475, -0.045208227, -0.09239687, -0.023277089, 0.20892154, 0.052645937, 0.29899663, -0.36577898, 0.15324092, 0.026285693, 0.40361452) * input_2(1.0, -1.0); + result += mat4(0.007683086, 0.12795995, -0.17008427, 0.32202822, -0.12195282, -0.17961754, -0.054285977, 0.05567353, 0.14473252, -0.113476425, 0.040225692, 0.03966908, -0.19228368, 0.24457681, -0.27700835, -0.030087532) * input_2(1.0, 0.0); + result += mat4(-0.02252945, 0.044288885, 0.11160488, -0.13111366, 0.09308587, 0.18109597, -0.09692009, -0.0926692, 0.080633014, 0.049961515, 0.007178328, 0.09743295, -0.3990121, 0.24757591, 0.0075213434, 0.14107916) * input_2(1.0, 1.0); + result += mat4(0.10736585, 0.011508071, 0.43655208, 0.17789279, -0.040008932, -0.22740963, -0.014246523, 0.08205055, 0.059172675, 0.16165306, -0.033025447, 0.3401778, -0.10568049, -0.125184, -0.08883135, -0.60432553) * input_3(-1.0, -1.0); + result += mat4(-0.15605953, 0.07767273, 0.13287553, -0.051123198, -0.23195891, 0.039271455, -0.04856205, -0.2116006, -0.10307362, 0.07923709, -0.26973706, 0.065914206, 0.15992454, -0.21015504, 0.10619883, -0.21521579) * input_3(-1.0, 0.0); + result += mat4(-0.054245293, -0.083146825, 0.11462061, -0.14507273, 0.13210747, 0.08172311, 0.26954734, 0.052726105, -0.18375288, 0.019960003, -0.12642053, -0.22720018, 0.09259898, 0.0038032508, 0.043638762, -0.08391322) * input_3(-1.0, 1.0); + result += mat4(-0.100589275, 0.237237, 0.058607105, -0.13514383, -0.03214942, -0.14868349, -0.3531104, -0.06245145, -0.1637035, 0.08564506, -0.19255757, 0.36815897, 0.0020402381, 0.025290444, -0.16253613, -0.022572162) * input_3(0.0, -1.0); + result += mat4(-0.20106265, 0.12321749, 0.29261222, -0.17862064, 0.077677496, -0.32597712, -0.103205994, -0.61714745, -0.15836975, 0.2260055, -0.16847569, 0.066989124, 0.13944013, 0.11049865, 0.0617647, -0.13175733) * input_3(0.0, 0.0); + result += mat4(-0.1734876, -0.020901361, -0.05239807, -0.086100705, 0.07991191, -0.31717077, 0.24051008, -0.06622718, -0.4827829, 0.17021318, -0.3301123, -0.20129775, 0.21657158, -0.098442644, -0.02368845, 0.179042) * input_3(0.0, 1.0); + result += mat4(0.13413478, -0.20885697, 0.060271434, -0.039598495, 0.070201755, -0.15236388, 0.06419168, 0.09234489, -0.09421578, 0.1680476, -0.14306624, 0.30453888, 0.15399526, 0.11602133, 0.33217344, 0.1052983) * input_3(1.0, -1.0); + result += mat4(-0.05759856, -0.08706187, 0.012491066, -0.08093473, 0.23629433, 0.76309675, 0.28320548, 0.07348096, 0.041758396, 0.009830001, -0.21450403, -0.30948544, -0.22583224, 0.087579235, -0.08129921, -0.020652846) * input_3(1.0, 0.0); + result += mat4(-0.033796344, -0.010569282, -0.062245406, -0.041569788, 0.026993837, 0.12961483, 0.22092229, 0.07890593, -0.09777509, -0.05707196, -0.13830413, -0.050432164, 0.12875095, 0.03453874, 0.04047599, -0.035821714) * input_3(1.0, 1.0); + result += mat4(-0.112676665, 0.039628167, -0.107224554, 0.18676172, -0.055534095, 0.20641197, 0.13208298, -0.008334584, -0.17262848, -0.080951914, -0.18225478, -0.23316488, 0.72260666, 1.1112398, 1.196107, -1.0814247) * input_4(-1.0, -1.0); + result += mat4(0.118476406, -0.03886244, -0.093708634, 0.082691714, 0.0483619, 0.2809696, 0.14831343, 0.35847205, 0.028684454, -0.11572389, 0.12401785, 0.2737097, -2.8452384, -1.7143804, -1.0936482, 0.807357) * input_4(-1.0, 0.0); + result += mat4(-0.004370391, 0.32842615, -0.07417829, -0.31516474, -0.19500294, -0.28617498, 0.15664956, 0.36759728, -0.2935079, 0.10023307, -0.029754471, -0.22827958, -1.2942247, 0.5841404, -0.6184101, -0.7027591) * input_4(-1.0, 1.0); + result += mat4(0.12227374, 0.06300085, 0.12008679, 0.36997488, -0.047465887, 0.1740197, 0.18987815, -0.027059352, -0.15513709, -0.046197027, -0.089409545, -0.15201138, 0.8071114, 0.6789691, -0.7147937, -0.3654869) * input_4(0.0, -1.0); + result += mat4(0.23203619, -0.17105235, -0.11299475, 0.104205176, -0.0021114307, 0.3335434, -0.03496478, -0.061881013, -0.12262477, -0.33919135, -0.17190933, 0.15233058, 0.11098087, 1.0245398, 0.0783161, 0.26909375) * input_4(0.0, 0.0); + result += mat4(-0.24003433, 0.46862635, 0.1358106, -0.2783263, 0.10767473, -0.7326405, -0.49481556, 0.30258685, -0.40165487, 0.058408026, 0.36984363, 0.12509944, 0.3325323, -0.07270495, -0.60496265, 0.3945955) * input_4(0.0, 1.0); + result += mat4(-0.15762086, -0.11538366, 0.011583011, -0.26915336, -0.09400258, -0.06774788, -0.05210999, -0.47047952, 0.00017507384, 0.1276163, 0.072743796, 0.18012093, 0.74360555, -0.5201308, 0.05153038, -0.6645866) * input_4(1.0, -1.0); + result += mat4(0.03656035, 0.15997098, 0.044783313, -0.2814974, 0.099049725, -0.02040683, -0.040561795, 0.10163994, 0.37812036, 0.35544893, -0.039653633, 0.3541277, 0.20558783, -0.7202303, 0.42449564, -0.6647128) * input_4(1.0, 0.0); + result += mat4(-0.16108643, 0.11212541, 0.003626258, -0.12264779, 0.16834202, 0.14567791, -0.27256215, 0.45119932, 0.078175, 0.1299905, 0.22603436, -0.30025417, 0.46400088, 0.2968099, -0.047933955, 0.6922047) * input_4(1.0, 1.0); + result += mat4(0.20427364, -0.09584929, -0.19310635, 0.011333259, 0.007151023, 0.0011899914, -0.096575126, 0.18863426, 0.21494724, -0.012596397, 0.09042587, 0.16425878, 0.02008444, 0.08698777, -0.09461834, -0.07786285) * input_5(-1.0, -1.0); + result += mat4(0.53255576, -0.42409712, -0.048104197, -0.44036925, -0.23349094, 0.23861396, 0.118340306, -0.37022033, 0.07778885, -0.028104903, -0.1384979, 0.19821632, 0.11954423, 0.019554254, -0.14499114, -0.11873376) * input_5(-1.0, 0.0); + result += mat4(-0.035616387, -0.010549313, 0.071549445, 0.124203786, 0.012653828, 0.12984405, -0.092222996, -0.21927468, 0.050843738, 0.029541712, 0.020359525, -0.1425676, 0.17215808, 0.07411557, -0.084318265, -0.035592377) * input_5(-1.0, 1.0); + result += mat4(0.09892511, -0.3758302, 0.3289984, -0.043280724, 0.32352668, 0.20143305, -0.014870029, 0.17043513, -0.30195588, 0.08786606, 0.27619603, -0.028864766, -0.07501969, 0.24792291, -0.025744619, 0.1912722) * input_5(0.0, -1.0); + result += mat4(0.41425747, 0.0042410675, 0.42111874, 0.13320932, -0.47614074, 0.30149373, 0.031803057, 0.040287185, 0.4841388, 0.18007489, -0.024304034, -0.37932593, 0.008526225, 0.0022495412, -0.3755363, -0.14434195) * input_5(0.0, 0.0); + result += mat4(0.07710475, 0.18510284, 0.04368703, 0.022794683, -0.22388741, 0.06982546, -0.14329846, 0.048830103, -0.3105822, 0.122712396, 0.12959164, -0.17887594, -0.3131133, 0.116562635, -0.056053855, -0.48410848) * input_5(0.0, 1.0); + result += mat4(0.088148445, -0.16808185, 0.007625908, -0.11722512, 0.16707252, 0.022149378, -0.02302764, 0.061196618, -0.09897603, -0.36545265, 0.0956696, -0.32818022, -0.101934426, 0.09031532, 0.21011366, -0.51327527) * input_5(1.0, -1.0); + result += mat4(0.07309696, -0.12408492, -0.0016902192, -0.04756941, -0.3847786, 0.26367843, -0.07834631, 0.22602753, 0.0070819417, 0.023879103, 0.24242786, -0.00087641703, 0.03775351, 0.10012728, 0.1127657, 0.12114397) * input_5(1.0, 0.0); + result += mat4(-0.19824252, -0.033536416, -0.10380087, 0.19903469, -0.1447123, 0.04356462, 0.03273434, 0.060535196, -0.15187703, -0.029628603, 0.14538944, -0.007607608, 0.08236124, 0.035667732, 0.096688114, 0.057423145) * input_5(1.0, 1.0); + result += mat4(0.08342821, 0.057726044, -0.013152654, 0.08090957, -0.035965636, 0.20212065, 0.1572988, 0.21903509, -0.065054774, 0.23789178, 0.008229198, -0.01836864, 0.022123933, 0.079019345, -0.007383828, 0.22344571) * input_6(-1.0, -1.0); + result += mat4(0.07907263, -0.101301976, -0.18088855, -0.13690245, 0.10231522, -0.062292498, -0.14628658, -0.067804955, 0.09020762, 0.004887509, -0.002450449, 0.2641755, 0.2215744, -0.037050493, 0.031402748, 0.17975426) * input_6(-1.0, 0.0); + result += mat4(0.08637816, -0.08385237, -0.10039656, -0.17047247, -0.034852713, -0.105861984, -0.0644814, 0.24788652, -0.3415106, -0.027331164, 0.14680368, -0.29247645, 0.08030219, 0.0030836223, -0.0033108345, 0.25511476) * input_6(-1.0, 1.0); + result += mat4(0.008740122, 0.1950045, -0.003529786, 0.40223706, -0.14844218, 0.16986479, -0.23979136, -0.16809177, 0.081926, 0.20113558, -0.076605104, 0.38725322, 0.059839636, -0.11601967, 0.03515559, 0.23681155) * input_6(0.0, -1.0); + result += mat4(0.11747784, 0.26835927, -0.16663025, -0.011645766, -0.13488238, 0.10933356, -0.043095294, -0.0640867, 0.6937325, -0.83903277, 0.058550455, -0.29133025, -0.014145762, -0.10326717, 0.045877334, 0.13798408) * input_6(0.0, 0.0); + result += mat4(0.022531992, 0.0036033834, -0.06968156, 0.22133584, 0.3513118, 0.1832878, 0.34983635, 0.24954115, 0.021075636, -0.09025049, -0.15827362, 0.34044015, 0.13086008, 0.06825255, 0.049069334, 0.109381154) * input_6(0.0, 1.0); + result += mat4(-0.016207172, -0.097192295, -0.070545174, -0.045835104, -0.57309836, 0.19905809, -0.32214588, 0.1317916, -0.18722348, 0.15996617, 0.042299803, 0.06710443, 0.0015694785, 0.015473202, 0.023268623, 0.15965208) * input_6(1.0, -1.0); + result += mat4(-0.025133083, 0.1532023, -0.117666334, -0.18394095, -0.19413514, -0.16931337, 0.12827268, -0.2596036, 0.13200909, -0.05749522, -0.4189456, -0.15123817, 0.062364776, -0.17149697, 0.18749334, 0.16441609) * input_6(1.0, 0.0); + result += mat4(0.036959134, 0.14448829, 0.003179909, -0.22509718, 0.41327953, 0.09654809, 0.15283404, -0.17103146, -0.093969174, 0.15176955, 0.40626168, -0.26644287, 0.2350494, -0.0026798816, 0.0423711, 0.30484203) * input_6(1.0, 1.0); + result += mat4(-0.033028133, 0.05283076, -0.14739268, -0.21584801, 0.18612525, 0.06507397, 0.13885273, 0.18438403, -0.012160012, 0.083453216, -0.03626252, -0.25932446, -0.227387, 0.06466568, -0.10529349, -0.5973734) * input_7(-1.0, -1.0); + result += mat4(0.09484063, 0.15511683, -0.02283767, 0.014286044, 0.01060955, 0.08946518, -0.07270108, 0.097184874, -0.0028722691, 0.16055386, 0.01251751, -0.14945188, -0.16050386, 0.0995385, -0.08069921, -0.32310665) * input_7(-1.0, 0.0); + result += mat4(0.09482426, -0.002181251, 0.044649746, 0.15032941, 0.13511746, -0.16612126, 0.004301392, -0.06160537, -0.04013117, 0.087456785, -0.024501147, -0.10795109, -0.0023667773, 0.12906414, -0.06019446, 0.00053215004) * input_7(-1.0, 1.0); + result += mat4(-0.012406505, 0.14978509, 0.6289789, 0.45362467, 0.21424776, -0.17512293, 0.0008286048, 0.43263128, 0.0006996081, 0.0017969585, -0.060683735, -0.5289691, 0.015670223, 0.27918187, 0.073315404, -0.5989583) * input_7(0.0, -1.0); + result += mat4(-0.04619026, 0.42034686, 0.4810224, 0.4678717, 0.301519, -0.038944136, 0.015088502, 0.36357254, -0.20826413, 0.07308492, -0.06489057, -0.4708595, -0.20967509, -0.033638828, -0.054560814, -0.44112033) * input_7(0.0, 0.0); + result += mat4(0.104299605, -0.12642625, 0.10909693, 0.04096085, 0.22203012, -0.0897527, -0.0041672294, 0.22366457, -0.10293899, 0.015168217, 0.024359101, -0.38859096, -0.06961354, 0.09373417, -0.07364964, 0.1282152) * input_7(0.0, 1.0); + result += mat4(-0.15414011, -0.73380417, -0.12283909, -0.19433437, -0.015285279, -0.036828775, -0.029694537, 0.09089525, -0.06552514, 0.063257925, -0.09414076, -0.41924122, -0.15798378, -0.28087705, -0.30953518, -0.75907594) * input_7(1.0, -1.0); + result += mat4(-0.05764958, -0.2877435, -0.030633373, -0.033332467, 0.17247579, 0.0015532192, 0.019118192, 0.32741845, -0.010702501, -0.039755113, -0.08061322, -0.41645354, -0.30654815, -0.22843648, -0.015231746, -0.4606701) * input_7(1.0, 0.0); + result += mat4(-0.012235762, -0.058785506, -0.07349572, 0.098286726, 0.1620383, -0.28024492, 0.1412705, 0.09478921, -0.011727802, 0.085111484, -0.021337071, -0.25574037, 0.009870265, -0.053047724, 0.025913864, 0.0568321) * input_7(1.0, 1.0); + result += vec4(0.00011879335, -0.0067553897, -0.122751765, 0.0064640236); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf6 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.1216574, 0.37466416, -0.07266219, -0.04991077, -0.059138436, -0.15104981, -0.022989357, 0.054399636, -0.035232913, 0.0133028235, 0.120782465, -0.1297021, 0.009823869, 0.10971391, -0.17282571, 0.060042173) * input_0(-1.0, -1.0); + result += mat4(0.029157622, 0.011584192, -0.052675158, 0.08907486, 0.03840738, -0.26567107, -0.14620079, 0.08228008, 0.11530716, -0.11308671, -0.36357996, 0.07905774, -0.06016991, -0.31647435, -0.22850874, -0.22678125) * input_0(-1.0, 0.0); + result += mat4(-0.18697202, 0.26892972, -0.12033722, 0.032609645, 0.055813227, -0.0805664, -0.05805854, -0.09268245, -0.22716558, 0.25366622, 0.056017917, 0.07298612, 0.17668256, 0.027084617, -0.11850978, -0.03411539) * input_0(-1.0, 1.0); + result += mat4(-0.122653335, 0.1304224, -1.2293271, 0.017478267, 0.2120414, -0.040653285, 0.0553653, 0.21704611, -0.08262353, -0.087282166, -0.47799772, 0.12886222, -0.056616407, -0.18512851, 0.030289184, 0.08614235) * input_0(0.0, -1.0); + result += mat4(-0.18335575, -0.13236769, 0.41837448, -0.07884939, -0.11534037, -0.70010656, -1.8738769, 0.47858572, 0.06501719, -0.19121973, 0.39640602, -0.47217304, -0.08925305, 0.1353102, 0.31829777, 0.0635636) * input_0(0.0, 0.0); + result += mat4(-0.4112903, -0.19682956, 0.18992606, 0.010428201, -0.028191412, 0.12808684, -0.18340679, 0.10581771, 0.25035912, 0.14163163, -0.03642263, 0.1273429, -0.28121528, 0.062394086, -0.23249105, 0.22773701) * input_0(0.0, 1.0); + result += mat4(0.12304677, 0.014294856, 0.30156016, 0.08988464, 0.17056073, -0.39369223, 0.07030441, -0.073809914, 0.10911962, -0.007935805, 0.0855078, 0.00738953, 0.004566784, -0.34281155, -0.15122914, 0.049280386) * input_0(1.0, -1.0); + result += mat4(-0.4810557, -0.057161774, 0.2613634, 0.0016103082, -0.36947238, -0.7701096, -1.3407632, 0.017822888, 0.16567908, -0.13029183, -0.22966622, 0.11775823, 0.007675433, 0.053484272, 0.05257627, -0.053704873) * input_0(1.0, 0.0); + result += mat4(-0.07319942, -0.35234717, 0.05864736, -0.024305413, -0.18124814, 0.13335548, 0.3046724, -0.14587842, -0.09624757, -0.23883966, -0.0023587253, -0.123554096, 0.22363198, -0.15389845, 0.23362869, -0.10740019) * input_0(1.0, 1.0); + result += mat4(0.049595967, 0.34201717, 0.0065687527, 0.045906894, -0.10406012, 0.18663631, 0.08319086, -0.045175552, -0.033325583, -0.43969738, -0.014607556, 0.043152563, 0.27649352, -0.6988223, 0.2765509, -0.123488225) * input_1(-1.0, -1.0); + result += mat4(0.1152603, 0.008421734, -0.52487814, 0.3865091, -0.06492487, -0.009297628, 0.11933664, 0.11168961, -0.23167345, 0.081077285, -0.015674088, -0.08819226, -0.1942, -0.5677855, -0.36632508, -0.07196479) * input_1(-1.0, 0.0); + result += mat4(-0.05968044, 0.26026055, 0.15085608, -0.15618263, -0.024864992, -0.20922916, 0.10565073, -0.063317545, -0.06993089, -0.21011084, 0.11871185, 0.08882375, 0.061917383, 0.2641963, 0.034548465, -0.063700445) * input_1(-1.0, 1.0); + result += mat4(0.0387681, -0.01135711, 0.017471109, -0.016632522, 0.10880852, -0.1496206, 0.019943912, 0.14785959, -0.04777046, 0.29462737, -0.007942302, -0.0085386215, 0.06860646, -0.39732617, -2.110082, 0.0174704) * input_1(0.0, -1.0); + result += mat4(-0.052956074, -0.08461051, 0.014675721, -0.13354516, -0.0895996, 0.58335435, -0.0011737491, -0.0885173, -0.03424047, 0.00869466, 0.038833193, 0.06323019, -0.17979372, 0.823312, -0.17964476, -0.12873033) * input_1(0.0, 0.0); + result += mat4(-0.011159619, 0.11092186, -2.0001912, 0.012934975, -0.2675676, 0.05123875, 0.019215645, 0.062481064, 0.19878031, -0.041766074, 1.6041942, -0.09657268, 0.15188533, 0.36325473, -0.045685075, -0.049516242) * input_1(0.0, 1.0); + result += mat4(0.04904455, 0.17224765, 0.03390528, -0.022731815, 0.23641695, -0.26899034, 0.01837376, 0.0269453, -0.042868223, 0.21595311, -0.12749344, 0.006402068, -0.0012844533, -0.09166633, 0.08543803, -0.0025830176) * input_1(1.0, -1.0); + result += mat4(0.08170237, 0.19258171, -0.01071655, -0.009177522, 0.051497012, -0.19291207, -0.27944478, -0.18558478, -0.15780345, -0.106634066, 0.24382052, 0.07982175, 0.009959167, -0.31845453, 0.08480811, -0.035596192) * input_1(1.0, 0.0); + result += mat4(-0.054139704, 0.22780018, -0.009368604, 0.09450918, 0.07468501, -0.27851853, -0.25193086, 0.19223212, -0.12424822, -0.046824656, 0.2230782, 0.022164937, 0.04280586, 0.010075755, 0.031820554, 0.005966585) * input_1(1.0, 1.0); + result += mat4(-0.17187752, 0.89887613, -0.10677111, 0.17498824, 0.19367285, -0.2370095, 0.0038068737, -0.11243253, -0.21484998, -0.32816175, 0.0016455487, -0.12743613, 0.031816714, -0.11458003, 0.11117195, -0.10819886) * input_2(-1.0, -1.0); + result += mat4(-0.09965991, 0.5944801, -0.17503247, 0.27605805, -0.15644608, 0.103431575, 0.11091391, -0.21981573, 0.16445921, -0.24638352, 0.14538148, -0.24217674, 0.003647068, -0.043060567, -0.067800134, -0.1307309) * input_2(-1.0, 0.0); + result += mat4(-0.11137811, 0.9012743, 0.1717185, -0.004202767, 0.06496689, -0.19140783, 0.0047080354, 0.058505002, -0.3219065, 0.413909, 0.08201904, -0.02882874, 0.13476327, 0.23146738, 0.13856047, 0.09615935) * input_2(-1.0, 1.0); + result += mat4(-0.15769327, -0.12609434, 0.17113844, -0.056834526, 0.0066399192, 0.16000602, 0.031072518, 0.13177271, 0.17515704, -0.36988774, 0.031052792, 0.065124944, -0.08893338, 0.2632719, 0.5734016, 0.1738579) * input_2(0.0, -1.0); + result += mat4(-0.12901612, 0.20090953, 1.3401126, -0.21935214, 0.2816933, 0.5054975, 0.034393463, 0.11326917, 0.009190318, 0.48611575, 0.27044943, -0.08116294, 0.12780105, -0.25688243, 1.4018877, 0.21109161) * input_2(0.0, 0.0); + result += mat4(-0.05423385, 0.6006906, 0.08015665, -0.10500264, 0.05569798, -0.22678818, 0.08433262, 0.00574292, 0.15879852, 0.5426568, 0.22873874, 0.104330756, 0.097047165, -0.093097664, -0.27724802, 0.11103679) * input_2(0.0, 1.0); + result += mat4(-0.06212556, 0.32768625, -0.20236829, 0.001977057, 0.19112706, -0.22518134, 0.106282815, -0.073973045, -0.12752582, 0.3512676, -0.019665055, 0.037465453, 0.01694856, 0.34331593, -0.065014996, -0.12483069) * input_2(1.0, -1.0); + result += mat4(-0.0008900149, -0.036034863, 0.06736246, -0.023523232, 6.918782e-05, -0.045084767, 0.23119794, -0.052947, -0.022564685, -0.16787629, -0.15296398, -0.026012383, 0.08452034, 0.01090235, 0.2650267, -0.12113726) * input_2(1.0, 0.0); + result += mat4(-0.11425234, 0.16392992, -0.01204511, -0.013064158, -0.014809703, -0.2967349, -0.044861387, 0.043935742, -0.05661285, 0.1563284, 0.022727672, -0.0010207783, -0.019316474, 0.1946848, -0.54881024, -0.2713141) * input_2(1.0, 1.0); + result += mat4(0.1581305, -0.29483715, -0.46808717, 0.13940227, -0.12612858, -0.006795725, 0.09537596, -0.023601644, 0.11580606, 0.29547563, 0.05616529, 0.03390167, -0.0150527265, -0.15604356, 0.09418742, -0.102247186) * input_3(-1.0, -1.0); + result += mat4(-0.15168613, 0.16271816, -0.33231735, 0.0118274065, 0.03983388, -0.22292402, 0.40703312, -0.05009052, -0.10733562, 0.34646744, 0.10283751, -0.017887412, 0.006922729, -0.14585195, 0.003363376, -0.0315411) * input_3(-1.0, 0.0); + result += mat4(-0.1664125, 0.35498333, -0.0889048, -0.048894245, 0.0101085985, -0.5247997, -0.36256087, 0.10400834, -0.042196706, 0.44238928, 0.028803332, 0.097746454, 0.16007322, -0.1255418, 0.0032740957, 0.0590097) * input_3(-1.0, 1.0); + result += mat4(-0.13897984, 0.12078838, -0.300051, -0.10088261, -0.06274208, -0.21528195, 0.15362191, 0.026249813, 0.045482036, 0.1989367, 0.17151612, -0.086379424, -0.07566239, -0.37364495, 0.2588617, 0.0013932494) * input_3(0.0, -1.0); + result += mat4(-0.28330496, 0.10130105, -0.7409566, 0.030291162, -0.06809094, 0.7432567, 0.22222368, 0.06763056, -0.10592117, 0.8672805, 0.112294726, 0.0066134688, 0.028542291, -0.47074544, 0.23670647, 0.07926541) * input_3(0.0, 0.0); + result += mat4(-0.07959657, -0.07179849, 0.00995589, -0.019272527, 0.41941762, -0.119182974, -0.21505818, -0.22812879, 0.07309704, -0.008939751, 0.07357153, -0.04228688, 0.023582691, -0.26867533, 0.12266927, 0.0095368335) * input_3(0.0, 1.0); + result += mat4(-0.053991884, 0.06842553, -0.0077974787, 0.0401503, -0.18057403, 0.12014247, 0.091550454, 0.029375624, -0.08506123, 0.7586418, -0.0391993, -0.030795733, -0.020164281, -0.36517218, -0.18365596, 0.08297072) * input_3(1.0, -1.0); + result += mat4(-0.019032754, -0.018742507, -0.03775285, 0.026363213, 0.09276417, 0.21084039, -0.15711607, 0.073811896, 0.0038560317, 1.1097083, 0.16016737, -0.0544659, -0.042624377, -0.03368534, 0.086373106, -0.13536276) * input_3(1.0, 0.0); + result += mat4(-0.008526719, -0.054273646, 0.012734415, 0.016163446, 0.055431493, -0.018721629, -0.29806668, 0.07325564, 0.06897204, 0.28563967, 0.031640667, 0.023730708, 0.0061418526, -0.2887218, -0.08802532, 0.028530886) * input_3(1.0, 1.0); + result += mat4(-0.03609171, 0.18890369, 0.07635409, -0.018669834, 0.048430435, 0.10266751, -0.069514364, -0.13528526, -0.11611022, -0.5081547, 0.14657967, -0.08177853, -0.23889412, -1.816095, -2.6729252, 0.27257568) * input_4(-1.0, -1.0); + result += mat4(0.17015569, 0.3702375, 0.09794711, -0.0691958, -0.0473157, 0.19439362, -0.7102565, 0.064852245, -0.22033693, 0.18243934, -0.2840999, 0.060135227, -0.50454247, -1.5057169, -4.5793386, -0.3120427) * input_4(-1.0, 0.0); + result += mat4(-0.012404561, 0.1757034, -0.06254087, 0.091602296, -0.15058167, 0.5602862, -0.034731947, 0.16793427, -0.06269009, -0.19644198, -0.2122713, 0.25432065, -0.40274316, -4.2859955, -1.45028, -0.10890644) * input_4(-1.0, 1.0); + result += mat4(0.13615929, 0.0038200123, 0.13049473, -0.034099646, 0.046407703, 0.11719869, -0.18210371, -0.033868168, -0.17463769, 0.046785556, 0.24357651, -0.020988908, 0.054859858, 2.4477222, 0.1340672, -0.08504304) * input_4(0.0, -1.0); + result += mat4(-0.03055774, 0.30520535, 0.10953627, -0.11067265, -0.44788653, 0.28564852, -1.036799, 0.15233806, -0.10002567, 0.20408574, -0.39840245, -0.102844715, -0.26729655, -2.7380664, -1.0627903, 0.18187384) * input_4(0.0, 0.0); + result += mat4(-0.24895707, 0.22793314, -0.5825266, 0.09459164, 0.38748527, -0.27285457, 0.19820437, -0.09781738, -0.5340599, -0.16979237, -0.011241233, -0.07919152, -0.3290106, 0.7405473, 0.0014707716, 0.06141251) * input_4(0.0, 1.0); + result += mat4(0.026045648, -0.008822318, 0.086155765, -0.020490203, -0.00545083, -0.18469548, -0.007860322, -0.020556416, 0.09762285, -0.08810495, -0.07931175, 0.044470754, 0.088246025, -1.3297697, 0.50604784, 0.03608759) * input_4(1.0, -1.0); + result += mat4(0.122170344, 0.20326023, -0.039292417, -0.0040952545, 0.31543663, -0.0027670641, 0.23164403, 0.05444459, 0.032570116, -0.3993664, -0.024043726, -0.0018823509, -0.59321344, 2.0760558, 0.43842685, 0.09937768) * input_4(1.0, 0.0); + result += mat4(0.03307179, 0.0449016, -0.2479727, -0.14061885, 0.09523999, -0.5028165, -0.24419628, 0.026883235, 0.1701918, 0.21037269, -0.19491342, 0.10185376, -0.14297397, 0.20208858, 0.39705083, -0.016400093) * input_4(1.0, 1.0); + result += mat4(-0.26352915, 0.1943228, -0.15858404, -0.16153976, -0.06289417, 0.46596283, -0.12614597, 0.017449975, -0.017452171, -0.074169345, -0.077308156, -0.03444243, 0.0017361278, -0.1572023, 0.034175426, -0.03516979) * input_5(-1.0, -1.0); + result += mat4(-0.23746477, -0.06410174, 0.32259786, 0.11508622, 0.016674215, 0.47294238, 0.15106957, 0.13639735, 0.18483406, 0.08254546, 0.1824682, -0.08222274, 0.08841566, -0.12952164, -0.10992916, 0.009047669) * input_5(-1.0, 0.0); + result += mat4(0.008344003, -0.29816264, 0.13271, -0.3624841, -0.1017023, 0.3799647, 0.14211358, -0.0294831, -0.113159016, 0.14186436, -0.08700941, 0.013163165, -0.13755015, -0.082520224, -0.063461065, -0.07060769) * input_5(-1.0, 1.0); + result += mat4(-0.15923545, -0.1398796, 0.12667656, 0.18371044, 0.062182695, 0.12943095, 0.16458774, 0.121163525, 0.2054971, 0.08185064, 0.04625695, 0.029879032, 0.091571085, -0.26829645, -0.2942282, 0.056030158) * input_5(0.0, -1.0); + result += mat4(0.5540505, 0.20580356, -0.20417233, 0.16699846, 0.17517337, 0.44465166, 0.31758305, 0.17299414, 0.33259696, -0.49621582, 0.53193134, 0.42702138, -0.2006228, -0.6169248, 0.42636707, -0.33836046) * input_5(0.0, 0.0); + result += mat4(-0.070418306, -0.6880847, -0.22764, 0.1365955, -0.08192523, 0.31535414, 0.10072418, 0.03041709, -0.09017157, -0.10801152, 0.18448447, 0.07946752, -0.23728614, -0.3050902, -0.2232518, 0.16153765) * input_5(0.0, 1.0); + result += mat4(0.05598761, -0.46035343, 0.015057794, 0.012581054, -0.035377607, 0.17251787, 0.0043465183, 0.03313283, 0.107666545, 0.44275987, -0.17196871, -0.10498723, 0.05407923, 0.15206276, -0.048557896, -0.0107370075) * input_5(1.0, -1.0); + result += mat4(-0.068918474, 0.11355025, -0.022944672, -0.063377835, -0.064769454, 0.4939255, 0.019683192, -0.07140046, 0.02857348, 0.017733598, 0.028128993, 0.016386595, 0.0316142, 0.044483837, -0.013494229, 0.0032756135) * input_5(1.0, 0.0); + result += mat4(0.106171176, -0.3968272, -0.104697734, -0.028830597, -0.06980863, -0.17099983, -0.013145313, -0.025093706, -0.032215156, 0.33520705, 0.20428166, -0.06189386, -0.18396692, 0.06818813, 0.05168053, 0.010320372) * input_5(1.0, 1.0); + result += mat4(0.019109, 0.043505102, -0.008733294, 0.111081064, 0.15254208, 0.10238131, 0.03153655, -0.19079815, -0.0093465345, 0.068499126, 0.17626625, -0.01644653, 0.05204928, 0.2069188, 0.025357319, -0.00170945) * input_6(-1.0, -1.0); + result += mat4(-0.012125284, -0.25484812, 0.17683522, 0.072316185, 0.12466229, 0.09045549, -0.20619343, -0.07672054, 0.0032690633, 0.012576972, -0.11424452, 0.14731906, 0.02709221, 0.36404315, 0.10157728, -0.034935046) * input_6(-1.0, 0.0); + result += mat4(-0.14195465, -0.096305035, 0.11859006, 0.101698115, 0.17451067, -0.013784775, -0.15916002, -0.058751825, -0.06390754, -0.43773702, 0.0055498383, 0.11376103, 0.018133141, 0.37096772, 0.11545395, 0.0050987317) * input_6(-1.0, 1.0); + result += mat4(0.12605721, -0.18400238, -0.06793553, 0.104997054, -0.020004312, 0.21312268, 0.045016233, 0.06111632, -0.11392981, -0.18958199, 0.22867581, -0.005187833, 0.056395143, 0.15058324, 0.107494734, 0.056928538) * input_6(0.0, -1.0); + result += mat4(-0.15977316, -0.16724867, 0.10371776, 0.050817255, 0.10663861, 0.08587078, -0.21397243, -0.19354898, 0.21268432, -0.15391785, -0.012972384, -0.08127036, -0.022680307, -0.04255104, 0.12705775, -0.063312195) * input_6(0.0, 0.0); + result += mat4(0.047845025, 0.28190193, 0.18988873, 0.053544357, 0.15281674, -0.11957177, -0.2999521, -0.007388496, -0.15357433, -0.24272135, -0.23929346, -0.05340174, 0.13651611, -0.0065117194, 0.02578153, -0.032074254) * input_6(0.0, 1.0); + result += mat4(-0.03564308, 0.40373543, -0.023116404, 0.016060166, -0.05286973, -0.008995393, 0.37141952, 0.10213289, -0.19221586, 0.02398524, 0.030306118, -0.03044521, -0.0032568919, 0.2734939, 0.06932285, -0.018548599) * input_6(1.0, -1.0); + result += mat4(0.09018899, 0.10863386, 0.056164168, -0.019286117, -0.23885514, 0.044713996, 0.15322025, 0.06812148, -0.0095139835, -0.26157376, -0.14129205, 0.04365073, 0.040464167, 0.094781905, 0.086873576, 0.024623187) * input_6(1.0, 0.0); + result += mat4(0.045196436, 0.12039592, 0.027118431, -0.0074221385, 0.39039677, 0.25980985, 0.34561318, 0.07416596, 0.053842057, 0.3487853, -0.29905048, -0.05441736, 0.05683842, 0.5172948, 0.10591902, 0.031854995) * input_6(1.0, 1.0); + result += mat4(-0.087622985, 0.098968014, 0.3957377, -0.00649953, -0.00852013, 0.24613988, 0.046312917, 0.027361587, 0.049185336, -0.5044468, 0.051554855, 0.036675166, 0.0052695987, -0.024378337, 0.11838816, 0.03465903) * input_7(-1.0, -1.0); + result += mat4(0.14334404, -0.20642824, 0.25260025, -0.35702887, 0.2870549, 0.22492878, 0.19218312, -0.09150775, -0.04745159, -0.5483131, 0.05566866, 0.027257944, -0.006238192, -0.27460045, 0.14085753, 0.08893943) * input_7(-1.0, 0.0); + result += mat4(0.04633632, -0.03510161, 0.03530882, -0.050013825, -0.061704732, 0.34227058, 0.039236464, -0.020146633, -0.058594923, -0.6118742, 0.0017017748, -0.0019263467, 0.10551295, -0.2823048, 0.112136014, 0.006926401) * input_7(-1.0, 1.0); + result += mat4(0.31137305, -0.57463294, -0.7983911, -0.017644882, -0.0802868, -0.15342775, 0.049834296, 0.00061060255, 0.021169322, -0.47172308, 0.0068103783, 0.003734632, -0.084621094, 0.513348, -0.014657395, 0.078155294) * input_7(0.0, -1.0); + result += mat4(-0.046315268, -0.15620483, -1.8778414, 0.2776796, 0.13818477, 0.07564923, 0.18577313, 0.038456947, -0.14744574, -0.85917133, -0.0043197474, -0.01983785, 0.0014200811, -0.5284283, 0.07743554, 0.15026347) * input_7(0.0, 0.0); + result += mat4(0.027982404, 0.11874117, -0.107443646, -0.040020037, 0.24346632, 0.037627257, 0.10977131, 0.068766534, -0.08811922, -0.47864982, 0.12769812, 0.05157436, 0.26461262, -0.63857687, -0.08995995, 0.018195454) * input_7(0.0, 1.0); + result += mat4(-0.31176296, 0.15809982, -0.0791133, -0.05102063, 0.08070035, 0.10864212, 0.18373565, 0.023248501, 0.0042348923, -0.47938293, 0.09508803, 0.010316008, -0.033611108, -0.1876565, 0.41481555, 0.035184335) * input_7(1.0, -1.0); + result += mat4(0.013041382, 0.06813916, 0.46355855, 0.005360867, 0.10865422, 0.03624297, 0.17174841, -0.0002965942, -0.023351936, -0.19328038, 0.028152864, -0.024864655, 0.10842409, -0.97263455, 0.5268693, 0.078342125) * input_7(1.0, 0.0); + result += mat4(0.012027081, 0.10995274, 0.03997023, 0.011869245, -0.047496814, 0.6129079, 0.11956302, 0.0014514888, -0.0036423372, -0.53602046, 0.014942048, 0.052815504, 0.13992752, -0.05669237, 0.07362257, 0.06773545) * input_7(1.0, 1.0); + result += vec4(-0.09275643, 0.103639215, 0.14502141, 0.036244214); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-2-ReLU) +//!HOOK LUMA +//!BIND conv2d_1_tf +//!BIND conv2d_1_tf1 +//!BIND conv2d_1_tf2 +//!BIND conv2d_1_tf3 +//!BIND conv2d_1_tf4 +//!BIND conv2d_1_tf5 +//!BIND conv2d_1_tf6 +//!BIND conv2d_1_tf7 +//!SAVE conv2d_2_tf7 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_1_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_1_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_1_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_1_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_1_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_1_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_1_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_1_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.1773416, 0.29075766, -0.22930583, -0.06712384, -0.06189799, -0.14643697, 0.1963374, 0.0055323085, -8.3100844e-05, -0.14664946, -0.07317071, -0.013066184, 0.013752665, -0.013555611, -0.10967171, 0.051955838) * input_0(-1.0, -1.0); + result += mat4(0.11230158, -0.55164033, 0.24562386, 0.020811997, -0.004326692, -0.032225188, 0.040606033, -0.037112463, 0.06475609, -0.04770648, -0.08570834, 0.035162278, -0.046724115, -0.04559754, -0.17815314, -0.012056166) * input_0(-1.0, 0.0); + result += mat4(0.05764137, 0.2477737, 0.002369341, -0.08229411, 0.025537344, -0.068156, -0.14520481, 0.012531321, 0.016321296, 0.037858974, 0.40081173, -0.055983633, 0.07237906, 0.7930763, 0.44930828, -0.028565032) * input_0(-1.0, 1.0); + result += mat4(0.09209165, -0.32026333, 0.122004315, 0.07571277, -0.002779243, 0.22872578, -0.03051728, 0.01822751, -0.018635163, 0.45322618, 0.14521472, 0.0010974535, -0.19782366, 0.3693744, -0.5224439, -0.04860399) * input_0(0.0, -1.0); + result += mat4(-0.106042616, -0.06152165, 0.07082742, -0.06890331, 0.06236837, 0.44460428, -0.017870206, 0.039136726, 0.1256291, -0.04107513, 0.050621625, -0.106482886, 0.22852552, -0.37292716, 0.10175904, 0.08667096) * input_0(0.0, 0.0); + result += mat4(0.044546373, 0.28388232, -0.121898, 0.022359014, 0.019860357, 0.044489544, 0.16086689, -0.0066349483, 0.0589638, -0.15386945, -0.1004417, -0.060613472, -0.17573811, -0.3234054, 0.23339206, -0.15952432) * input_0(0.0, 1.0); + result += mat4(-0.20843194, -0.23794745, 0.011551559, -0.06539199, 0.085683025, -0.07992981, 0.24342938, -0.048306722, 0.14342126, -0.15426435, -0.17065677, 0.03313705, -0.3158824, -0.16215758, -0.08418083, 0.009077097) * input_0(1.0, -1.0); + result += mat4(0.08518976, -0.10481526, -0.07853717, 0.14819816, 0.020527685, 0.0014810647, -0.06647013, 0.01620987, -0.29197925, -0.087234356, 0.20514101, -0.037633862, 0.05259563, 0.2204838, 0.07691637, -0.07548312) * input_0(1.0, 0.0); + result += mat4(0.062174566, 0.20492713, -0.37921956, 0.04179935, -0.069646984, -0.10297224, 0.032673586, 0.08031882, 0.009164749, 0.024507312, -0.23837864, 0.036965802, 0.0531081, -0.08175849, -0.34188074, -0.05559785) * input_0(1.0, 1.0); + result += mat4(0.09198983, 0.16043304, 0.23630974, 0.043275505, -0.027802132, 0.046902988, -0.038940504, 0.013125868, -0.08681709, -0.3093384, -0.0031688083, -0.03191135, 0.04029757, 0.049363162, 0.22474082, 0.011748948) * input_1(-1.0, -1.0); + result += mat4(-0.20091066, -0.25722912, -0.37747508, -0.0562674, 0.006020478, -0.08011613, -0.14631835, 0.0036946007, 0.045740355, 0.085270755, -0.1621303, 0.021987818, -0.23099454, -0.09288303, 0.29506457, 0.09304019) * input_1(-1.0, 0.0); + result += mat4(0.08512274, -0.04961346, 0.09244357, 0.12954615, -0.029846592, 0.32347366, 0.0886099, 0.008352765, -0.036580995, -0.10956099, -0.031392463, -0.0075717815, -0.045440115, 0.23423095, 0.22235692, 0.12546042) * input_1(-1.0, 1.0); + result += mat4(0.15291429, -0.12139072, 0.2755974, 0.040725563, 0.08691864, 0.0456606, -0.097437315, 0.050878942, 0.09249798, 0.14095576, -0.38915393, -0.030471753, -0.22502288, -0.12146439, 0.13556135, -0.015427679) * input_1(0.0, -1.0); + result += mat4(0.16790237, -0.41101426, -0.17626159, 0.123912215, -0.12671378, -0.40214652, 0.2877512, -0.01239648, -0.18510999, 0.009904321, -0.47438878, -0.028829878, -0.059919417, -0.10756605, 0.40789774, 0.1722918) * input_1(0.0, 0.0); + result += mat4(-0.010586886, 0.10253244, -0.03628475, -0.003767607, 0.07447858, -0.18807521, 0.03363111, -0.015291017, 0.09760653, -0.3285753, -0.32828754, -0.18124458, -0.023251953, 0.043742493, 0.23253824, 0.03184946) * input_1(0.0, 1.0); + result += mat4(0.040916603, 0.059712872, -0.22420523, -0.015244504, -0.18108341, -0.053472035, 0.16897988, -0.07553316, 0.0032836755, -0.009108882, -0.28996903, 0.00853129, 0.15154001, -0.13633072, 0.36569932, 0.003361303) * input_1(1.0, -1.0); + result += mat4(-0.025291992, 0.03513051, -0.23024514, -0.031739168, -0.025966676, -0.2643312, -0.0070810653, 0.046475794, 0.06681345, -0.21219598, 0.09895192, 0.01457714, 0.16835238, 0.03997962, 0.14792642, 0.05248341) * input_1(1.0, 0.0); + result += mat4(0.019549277, 0.06746778, -0.0021709327, 0.094295435, -0.02070159, 0.01753224, 0.018163988, -0.105086066, 0.09877035, -0.12422377, -0.1445758, -0.27097133, 0.035479765, 0.20020929, 0.13595928, 0.035194438) * input_1(1.0, 1.0); + result += mat4(-0.10228067, -0.15825956, 0.12814817, -0.09471831, 0.035311367, 0.36718178, 0.15413937, 0.03464619, -0.0091446545, -0.068353735, 0.09216194, -0.02687642, 0.13647166, -0.11562492, 0.38640484, -0.030602215) * input_2(-1.0, -1.0); + result += mat4(-0.14578035, -0.054024998, -0.26259413, -0.051604625, -0.080533735, -0.08277967, 0.23209472, 0.051512387, 0.07169688, -0.068032354, -0.07896343, 0.03340928, 0.07078645, 0.25285333, -0.11200538, 0.06253463) * input_2(-1.0, 0.0); + result += mat4(-0.22560048, -0.29545936, 0.4197143, 0.13828652, 0.014365402, 0.0627512, -0.020325448, -0.054026622, -0.016312083, -0.09095684, 0.23231891, 0.04167528, -0.06473208, -0.16105828, -0.3231936, 0.04449314) * input_2(-1.0, 1.0); + result += mat4(0.10880767, -0.039329056, 0.4582657, 0.13403942, -0.04189987, -0.06761685, -0.09892051, -0.030823724, -0.1315395, -0.049199414, 0.08428839, -0.0716532, -0.057178307, -0.17594539, 0.09349716, 0.07712307) * input_2(0.0, -1.0); + result += mat4(0.29481184, -0.12392414, 0.1927919, 0.21574506, -0.12645143, -0.25354692, 0.020595664, 0.1959272, -0.2187903, 0.4251402, -0.2279093, -0.03255701, 0.28324243, -0.23391189, -0.20988445, 0.1612145) * input_2(0.0, 0.0); + result += mat4(0.13995782, -0.10677407, 0.31800017, 0.14215665, -0.015934443, 0.13504376, -0.17051928, -0.05304529, 0.025136895, 0.14520983, 0.48491243, 0.0523393, 0.19773446, 0.14416683, 0.36745083, -0.055728544) * input_2(0.0, 1.0); + result += mat4(0.18879075, -0.1932628, 0.06054939, 0.061481904, 0.40264156, -0.11815444, 0.28313285, -0.07564936, -0.028953562, 0.0137816705, 0.14601368, 0.023245055, 0.04365316, 0.32340443, 0.22678985, -0.1232126) * input_2(1.0, -1.0); + result += mat4(0.04515841, -0.08356711, -0.012220853, 0.016929734, 0.03589391, 0.027519057, -0.4650271, 0.18670864, 0.08885155, -0.087789774, -0.18674102, -0.008722933, 0.031118797, 0.24256341, 0.0871463, -0.21758768) * input_2(1.0, 0.0); + result += mat4(-0.0682835, 0.24765521, -0.009011714, 0.030460665, 0.068113364, -0.20137626, -0.026605679, -0.104892105, 0.0909478, -0.10686578, -0.078103185, 0.049880657, -0.044982746, -0.03808768, -0.19161522, 0.048511818) * input_2(1.0, 1.0); + result += mat4(0.122768335, -0.01678415, -0.06851829, -0.0017797677, -0.009555257, 0.17084174, 0.05886848, -0.052347742, 0.10371739, 0.037918113, -0.32938465, -0.03443805, 0.0051231016, -0.068250954, -0.04681125, -0.009342802) * input_3(-1.0, -1.0); + result += mat4(0.019705279, 0.1736241, -0.11051593, -0.012856765, 0.2930452, -0.10804005, 0.05845902, 0.084117785, 0.046406914, -0.07314049, 0.41621473, 0.080700725, 0.019326298, -0.10236348, -0.257694, -0.04739158) * input_3(-1.0, 0.0); + result += mat4(-0.054742105, 0.07002773, 0.027990388, 0.033793304, -0.06527124, -0.0866772, -0.2017353, -0.2554805, -0.03495423, -0.10788483, 0.51202214, 0.027813325, 0.029757533, -0.307219, -0.3143008, 0.010584961) * input_3(-1.0, 1.0); + result += mat4(0.04777737, 0.25758424, -0.027868848, -0.04742896, -0.12267821, 0.1674091, 0.21234779, 0.08171568, -0.011126971, -0.5013248, -0.26076463, 0.0633525, -0.17616467, 0.028911449, -0.19438292, 0.05127643) * input_3(0.0, -1.0); + result += mat4(-0.07674927, 0.37871945, -0.0021828036, 0.20343924, -0.05268623, 0.49595147, -0.40853804, -0.0678372, -0.011171188, -0.3397202, 0.52470833, -0.025254035, 0.017292712, 0.050692324, -0.6439465, -0.004650783) * input_3(0.0, 0.0); + result += mat4(-0.08532514, -0.051663857, 0.059578966, -0.011264597, -0.181034, -0.6829867, -0.14786941, -0.019350616, -0.052228525, -0.19455151, 0.3871437, 0.0806587, 0.056577314, -0.36365688, -0.53919524, 0.03381419) * input_3(0.0, 1.0); + result += mat4(0.10906418, 0.06264437, -0.12003155, 0.009713718, -0.08172879, -0.020669041, 0.23845758, -0.025361637, 0.23086064, 0.1896589, 0.13941173, -0.030319853, -0.065232605, 0.1385027, -0.09263362, 0.07480525) * input_3(1.0, -1.0); + result += mat4(0.050630778, 0.03501266, -0.056862306, 0.051689524, -0.2896633, 0.299039, -0.079498656, 0.011824783, 0.041314375, 0.05837598, 0.5356941, 0.07942939, 0.04950466, -0.09693905, 0.01240199, -0.04594075) * input_3(1.0, 0.0); + result += mat4(-0.008494016, 0.012149574, -0.019618284, 0.00791429, -0.051619265, -0.13555948, 0.06470925, -0.2692167, 0.025793592, -0.060696542, 0.1088985, 0.057574525, 0.03201732, 0.0021043108, -0.057486646, 0.02173197) * input_3(1.0, 1.0); + result += mat4(0.0023075496, 0.28188038, 0.17124887, 0.05060321, 0.08175056, -0.22412878, -0.102967, -0.005883891, 0.05826378, 0.28112552, 0.6392152, 0.047065724, -0.28966165, 0.041969884, -2.3785207, -0.025540574) * input_4(-1.0, -1.0); + result += mat4(-0.13120842, 0.09257184, -0.17640498, 0.031073714, 0.21934614, -0.07092257, -0.16703469, 0.0151454685, 0.034426175, -0.6083259, 0.14027105, 0.009645473, 0.30054575, -1.5133191, -1.2408512, -0.2314269) * input_4(-1.0, 0.0); + result += mat4(0.082948536, 0.3120817, 0.16417639, -0.0564057, 0.030466836, -0.030948665, 0.16342205, -0.057169706, 0.006584527, -0.12158311, -0.14339538, -0.016158171, 0.037841618, 0.53256446, -2.053737, -0.13943943) * input_4(-1.0, 1.0); + result += mat4(-0.022143677, 0.4418896, 0.3126423, 0.009094252, 0.18191166, 0.12951039, 0.14105658, 0.04888439, 0.110501505, -0.19089466, 0.15169087, -0.06255415, 0.52766275, -0.7984693, 0.4153785, -0.08203498) * input_4(0.0, -1.0); + result += mat4(0.06491291, -0.060369704, 0.28809848, -0.04903535, 0.30795246, 0.27330837, 0.08386918, 0.09754574, -0.059911564, -0.120177634, 0.07403123, -0.031975966, -0.025043841, 0.23211339, -0.71385616, 0.309352) * input_4(0.0, 0.0); + result += mat4(-0.11214143, 0.75770473, 0.35350496, 0.107131936, 0.028458286, -0.08964178, 0.15236223, -0.020734886, 0.016961358, 0.22590622, -0.036487516, 0.011600871, -0.20232585, -0.0329942, 0.46449143, -0.04633482) * input_4(0.0, 1.0); + result += mat4(0.049845822, 0.46982175, 0.42489973, -0.017715584, 0.14764732, -0.14189517, 0.034085907, 0.015596955, 0.108808026, 0.24368587, -0.00913395, 0.032945115, 0.2385442, -0.60611224, 0.20093675, 0.09776732) * input_4(1.0, -1.0); + result += mat4(-0.13170677, 0.15842019, -0.12931927, -0.0064937295, 0.20666999, -0.41099632, 0.029460274, -0.08053836, -0.10722941, -0.14532375, -0.53128576, 0.008465573, 0.09447911, -0.6232938, 0.20882668, -0.18941836) * input_4(1.0, 0.0); + result += mat4(-0.12172978, 0.27586555, 0.3768189, -0.0058513987, 0.084030405, 0.2308895, -0.3170272, -0.029626176, -0.12945841, -0.2781296, 0.07241912, -0.20245142, 0.09041795, 0.82551277, -0.5031103, -0.0073810997) * input_4(1.0, 1.0); + result += mat4(0.12947756, 0.1064809, -0.31367674, -0.053709984, -0.027646987, 0.12625945, -0.5180907, -0.026604118, -0.11584076, -0.09350522, -0.41468453, -0.007548408, -0.022694241, 0.041929446, -0.46871585, 0.03596569) * input_5(-1.0, -1.0); + result += mat4(0.1332673, -0.17933787, -0.20358321, -0.29587, -0.2096935, -0.08115764, 0.18051875, 0.026752938, 0.036143273, 0.07994895, -0.21252203, 0.08733283, -0.019196091, -0.72606075, -0.21084517, 0.023017844) * input_5(-1.0, 0.0); + result += mat4(0.014879541, 0.118600845, -0.43580067, 0.05975545, 0.029683003, 0.09404255, 0.09070695, 0.014230294, -0.07469055, 0.3603811, 0.049914982, 0.025461476, 0.043740034, 0.058635134, -0.020647977, -0.005865163) * input_5(-1.0, 1.0); + result += mat4(0.002248502, 0.25425336, -0.6534728, 0.25230354, -0.09430252, -0.05938113, -0.21337613, -0.061564025, -0.07011413, 0.18884517, -0.1916101, -0.09752445, -0.045030054, -1.1428435, -1.1203724, -0.08698044) * input_5(0.0, -1.0); + result += mat4(0.19973175, -0.08171968, -0.31738025, 0.3776735, -0.020968104, -0.3937816, 0.07848359, -0.09381665, -0.15059848, 0.18325667, 0.029663065, 0.08732768, -0.010032919, -1.7656207, -0.6895568, 0.034512546) * input_5(0.0, 0.0); + result += mat4(0.13596232, 0.12286956, -0.2842487, 0.016973283, -0.14102325, 0.379502, 0.28383192, 0.020634588, 0.009188419, -0.04787092, 0.05497164, -0.064976074, -0.09270134, -0.62872684, -0.2807581, -0.068768725) * input_5(0.0, 1.0); + result += mat4(-0.18962611, 0.039973285, 0.2888301, -0.035284888, 0.12494266, 0.21943472, 0.5898164, -0.045660354, 0.18388465, 0.16471246, 0.02757226, -0.080761455, -0.07503594, -0.4055638, -0.6239425, 0.0030912994) * input_5(1.0, -1.0); + result += mat4(0.017327774, 0.172381, -0.03285822, -0.030998677, 0.13066357, -0.1555922, 0.62638736, -0.008583008, -0.30227762, 0.42815357, -0.43849924, 0.12793766, -0.25504526, -1.0638937, -0.966846, -0.018588023) * input_5(1.0, 0.0); + result += mat4(0.0696237, -0.26652873, 0.08775526, 0.044996772, -0.036403175, 0.3257013, 0.29936793, 0.007891339, -0.057242446, -0.05858267, -0.017522339, 0.026987689, -0.20932266, -0.34674358, -0.24136244, -0.016133564) * input_5(1.0, 1.0); + result += mat4(-0.01872403, 0.15353306, 0.25431994, 0.044736892, 0.01276543, 0.0029716287, 0.101900674, 0.052141767, 0.21835989, -0.26835972, -0.5003851, 0.021873003, -0.005735264, 0.12590824, -0.36011896, 0.00075103185) * input_6(-1.0, -1.0); + result += mat4(-0.07285143, 0.5592806, 0.16349763, 0.03814741, -0.055837482, 0.20565799, 0.27812675, -0.050240282, -0.08710367, 0.024949802, -0.14431785, 0.014998072, 0.016394367, 0.01343787, -0.54810065, 0.006934653) * input_6(-1.0, 0.0); + result += mat4(-0.05536802, 0.1761628, 0.22882502, -0.029089889, 0.11652462, -0.03093424, -0.047411628, 0.12133539, 0.045215875, 0.159947, 0.046136633, -0.008283978, -0.01744172, 0.18139721, -0.41859666, 0.033996604) * input_6(-1.0, 1.0); + result += mat4(0.16441841, -0.1802086, 0.14674589, -0.047348842, 0.16911657, -0.22111908, 0.2407608, 0.02074786, 0.074149385, 0.16768669, 0.46792635, 0.058386587, -0.038967352, 0.04804152, -0.78718513, -0.033441793) * input_6(0.0, -1.0); + result += mat4(-0.06078611, -0.11787001, -0.15719342, 0.00556527, 0.24909884, -0.18291949, 0.2692821, 0.22273494, -0.08818696, -0.2699549, 0.06355099, 0.058552135, -0.06295923, -0.06569696, -0.8214857, 0.029834617) * input_6(0.0, 0.0); + result += mat4(-0.021963626, 0.27159476, -0.18669213, 0.08060177, 0.13553655, 0.43403298, 0.21156703, 0.020145873, -0.28705943, 0.040245924, -0.0767265, -0.04083743, -0.016919661, 0.005310194, -0.7570833, -0.010493307) * input_6(0.0, 1.0); + result += mat4(0.24022874, 0.2109745, -0.23002562, -0.002808286, -0.18640786, 0.15827103, -0.2007999, -0.040767487, 0.034737125, -0.34501335, -0.25684994, -9.962653e-05, -0.049124043, -0.033236127, -0.42894867, 0.0032192967) * input_6(1.0, -1.0); + result += mat4(0.12873027, 0.11848841, 0.37160513, 0.033000726, -0.13919094, -0.17547192, 0.23009902, -0.10674683, -0.22601414, 0.17384484, -0.07221462, -0.024271972, -0.10843157, -0.032164868, -0.64179885, -0.027464917) * input_6(1.0, 0.0); + result += mat4(0.05205932, 0.4020169, 0.018838678, -0.026266256, 0.056955922, -0.15549128, -0.30765802, -0.14641224, 0.032632787, 0.03469691, 0.069835976, -0.13118795, -0.06320595, 0.05501108, -0.43671378, -0.024006506) * input_6(1.0, 1.0); + result += mat4(-0.14609385, -0.12428547, 0.054112315, -0.0012873953, -0.03643861, 0.14269309, 0.13638672, -0.0008780249, 0.023093991, -0.110690095, 0.2180782, -0.002315525, 0.013478489, 0.046701014, 0.04280514, -0.042387918) * input_7(-1.0, -1.0); + result += mat4(0.08165931, -0.020163946, 0.062564716, 0.20511068, -0.0026168285, 0.34128657, -0.04036357, 0.069182456, -0.013174349, -0.13669387, 0.2669, -0.0067036212, -0.035430983, 0.12707737, -0.15802276, 0.0017314897) * input_7(-1.0, 0.0); + result += mat4(0.023070613, -0.104244314, -0.09394206, 0.061258648, -0.053906575, 0.31607395, 0.15455334, 0.014125472, 0.012799127, -0.09516647, 0.25700223, -0.010190038, -0.013663776, 0.008365815, 0.20267642, 0.0078108846) * input_7(-1.0, 1.0); + result += mat4(-0.014146907, -0.34868965, 0.071190864, -0.1700099, 0.046874333, -0.06541111, 0.63277173, -0.011210635, 0.03672981, -0.29482728, 0.26585072, -0.00637972, 0.05388218, -0.18835028, 0.06977164, -0.04323301) * input_7(0.0, -1.0); + result += mat4(0.1785264, 0.00529574, 0.15868299, 0.35192737, -0.128488, 0.1260091, 0.64800346, -0.0037824481, 0.053995285, -0.020826738, -0.08570056, -0.0023028022, 0.12963668, 0.22071496, -0.31027138, -0.05379407) * input_7(0.0, 0.0); + result += mat4(0.061160643, -0.14424542, 0.022531893, -0.008770395, 0.019462314, 0.09596824, 0.22826838, -0.02027581, -0.0033266784, -0.07498808, 0.20348069, -0.041022565, 0.033805035, -0.09123541, -0.08545418, -0.027482564) * input_7(0.0, 1.0); + result += mat4(0.04273916, -0.011658757, 0.002477833, 0.16893414, 0.07650999, 0.22809495, -0.27338013, -0.014351153, 0.04530724, -0.08007315, 0.32204986, 0.019736325, 0.050196502, 0.057484116, 0.19331887, 0.049308278) * input_7(1.0, -1.0); + result += mat4(0.015283351, -0.13286853, 0.4085161, 0.30913594, -0.035344463, -0.046978828, 0.050944813, -0.05638866, 0.059422575, 0.062572815, 0.088030994, 0.024507472, -0.04842352, 0.044214156, 0.1922693, -0.13183984) * input_7(1.0, 0.0); + result += mat4(-0.058363225, 0.09950421, 0.16873237, 0.08495082, 0.00378522, 0.067568585, 0.26154682, -0.026258325, -0.023614194, -0.051810894, 0.16060032, 0.02670097, 0.07975932, -0.020583961, -0.27983665, -0.041498434) * input_7(1.0, 1.0); + result += vec4(-0.019958442, 0.039546225, 0.013492483, 0.041841142); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.15956086, -0.018568536, 0.062109277, -0.1881243, 0.43827698, 0.015669854, 0.058439236, -0.1400114, 0.3426546, -0.016582146, 0.04217199, 0.16780755, -0.0025465842, -0.05560608, 0.060231857, -0.05872528) * input_0(-1.0, -1.0); + result += mat4(-0.11608554, -0.037802998, 0.23110405, 0.1814361, -1.3370379, -0.027952665, 0.041878752, -0.19614804, -0.08642055, 0.023927353, -0.018901654, -0.17109324, 0.24545486, 0.014786508, -0.18208376, 0.34383166) * input_0(-1.0, 0.0); + result += mat4(0.14481671, 0.062021255, -0.0878915, 0.03346455, 0.04282723, 0.008865692, 0.0015492351, 0.062579684, -0.083293214, -0.033683453, 0.040221654, -0.06312863, 0.16023856, 0.020873273, 0.098058216, -0.17933422) * input_0(-1.0, 1.0); + result += mat4(0.11800232, -0.008392918, -0.08917299, -0.2954319, -0.44311365, 0.0015646262, 0.111009926, -0.23345867, -0.6860814, 0.006324302, 0.032044694, 0.15442768, -5.239302, -0.05865199, 0.040675122, 0.68764526) * input_0(0.0, -1.0); + result += mat4(-0.11629697, 0.12585492, 0.3695136, 0.2859899, -0.6198663, -0.1852953, 0.20392151, -0.010659163, -0.45028883, -0.01690233, -0.10482767, -0.3091293, -0.45979506, -0.06290775, 0.10618981, -0.009422257) * input_0(0.0, 0.0); + result += mat4(0.075707324, 0.02798234, 0.03551737, -0.16283317, -0.40039968, 0.024305433, -0.03752022, 0.07526765, -0.47717595, 0.029316433, -0.0037680673, 0.12374387, -0.30870417, -0.016146334, -0.09872262, -0.26073706) * input_0(0.0, 1.0); + result += mat4(0.2566298, -0.00841618, -0.00585593, -0.03267303, -0.3940704, -0.011087823, -0.1632733, -0.12528318, 0.55731195, 0.0037477377, -0.010466614, -0.0043693874, -0.053220086, 0.019794608, 0.0002112752, -0.106325194) * input_0(1.0, -1.0); + result += mat4(0.160408, 0.016103009, -0.07993141, -0.047380142, -3.1612022, -0.02439063, -0.0074138767, -0.12090743, 0.4700469, -0.025228204, -0.006918151, 0.08763378, -0.6968455, -0.026960418, 0.16126752, -0.24973857) * input_0(1.0, 0.0); + result += mat4(0.13916196, 0.040862683, -0.056552786, 0.07601907, -0.100432836, -0.047841433, 0.0858552, 0.054511223, -0.2862259, 0.006468742, -0.011981836, 0.04983211, -0.08778154, -0.01631411, 0.0037867434, 0.08545679) * input_0(1.0, 1.0); + result += mat4(0.13324478, 0.01401303, -0.030043216, 0.045817904, 0.11375358, 0.008965398, 0.07396522, 0.018280823, -0.1879405, -0.01030037, 0.14475836, 0.10136588, 0.24010171, -0.048216417, -0.029497433, -0.11944319) * input_1(-1.0, -1.0); + result += mat4(0.1612876, -0.026893763, -0.008633816, -0.19695224, -0.18140343, 0.04120447, -0.05784722, -0.27350155, 0.5537985, 0.028671108, -0.030449037, 0.17165577, 0.032184202, 0.014744671, 0.087244324, 0.049156025) * input_1(-1.0, 0.0); + result += mat4(-0.38627404, -0.01651605, -0.0050732833, 0.031041231, -0.8676974, -0.009084949, 0.0740029, -0.08049686, -0.14605473, 0.007132524, 0.048232093, 0.17252713, 0.16207676, 0.020442473, 0.13272448, 0.16274829) * input_1(-1.0, 1.0); + result += mat4(0.16996148, -0.020983659, -0.014331714, -0.059947852, -0.09324596, -0.03659875, -0.10593336, 0.28328505, -0.049664367, -0.11811277, 0.061806846, -0.15683413, -0.58089226, 0.005988742, -0.14709407, 0.099076495) * input_1(0.0, -1.0); + result += mat4(0.5077428, 0.02283904, -0.052410785, -0.20069414, 0.0111011965, 0.1275772, -0.042001553, -0.41784397, 0.102418326, 0.08918141, 0.086279415, 0.019130472, -0.4725373, -0.023811527, 0.16185504, 0.33560166) * input_1(0.0, 0.0); + result += mat4(0.48348314, 0.044921294, -0.063935295, 0.22435157, -1.0343399, -0.055518392, 0.18213958, 0.00947775, -0.029853873, -0.07214812, 0.23416148, 0.14513195, 0.2408847, 0.0036353401, -0.03293603, 0.15899153) * input_1(0.0, 1.0); + result += mat4(0.1539271, -0.011711066, 0.05219756, 0.2428669, -0.119192235, -0.0066822753, -0.017403089, 0.08356961, 0.36163387, -0.03096418, 0.042109527, 0.30108997, 0.1303902, 0.00881705, 0.13348642, -0.087512486) * input_1(1.0, -1.0); + result += mat4(-0.07749171, -0.07411481, -0.07390845, -0.3332006, 0.19225864, 0.15235867, -0.21411997, -0.4816533, -0.15566018, 0.008279016, -0.03405435, -0.12739368, -0.5006411, 0.018014455, -0.1345028, 0.042701785) * input_1(1.0, 0.0); + result += mat4(-0.48464417, 0.032165743, -0.013662805, 0.074898414, -1.0473554, 0.078886606, -0.2633315, 0.8871152, -0.48367366, 0.034703493, 0.026707493, -0.27492434, -0.12994313, -0.007072057, -0.055851385, -0.23276936) * input_1(1.0, 1.0); + result += mat4(-0.2857551, 0.01625643, -0.12258853, 0.7510048, -0.21591717, 0.011543108, -0.101532705, -0.17168912, -0.84375495, 0.0049168775, 0.009972578, 0.14246319, -0.032466393, 0.07342703, 0.04164159, 0.25980496) * input_2(-1.0, -1.0); + result += mat4(-0.18176967, -0.04938478, 0.023873808, 0.0032252083, -0.059577968, -0.07798406, 0.002581636, -0.0012549253, -0.6532514, -0.112487555, 0.108154565, -0.18742761, 0.28201568, 0.1231426, 0.0011506133, -0.144245) * input_2(-1.0, 0.0); + result += mat4(0.25630707, -0.02587894, -0.007825624, -0.21141425, 0.42083943, 0.010136644, 0.0031143404, -0.037055384, -0.060728878, -0.07062331, -0.06436345, -0.45133385, 0.04937416, -0.025583342, 0.01676983, 0.15984994) * input_2(-1.0, 1.0); + result += mat4(-0.020748178, 0.055169445, -0.010085895, -0.103775054, 0.10147283, 0.020181812, -0.08781196, -0.26991457, -0.20724581, -0.028541023, 0.02504774, 0.09184147, 0.17421187, 0.0019405684, -0.03676542, -0.17684281) * input_2(0.0, -1.0); + result += mat4(-0.3610653, -0.089293525, 0.09150574, 0.39835453, -0.31383815, 0.11103419, 0.030067906, 0.38480985, 0.1076563, -0.18673003, 0.13683778, 0.14633769, 0.032169506, 0.053472113, -0.07323613, -0.07616832) * input_2(0.0, 0.0); + result += mat4(-0.24286452, -0.033815514, -0.022180524, -0.15160426, -0.23283483, 0.113414146, -0.020340214, -0.3544658, 0.25240597, 0.01569398, -0.15659437, -0.53666943, 0.14034726, 0.027938837, 0.021596124, -0.03266158) * input_2(0.0, 1.0); + result += mat4(-0.26894057, -0.015492633, 0.06702078, -0.22488855, 0.3262419, -0.00984575, -0.015787506, -0.22420192, -0.68943125, -0.05845119, -0.007837936, -0.075174466, -0.18802297, -0.019296478, -0.021592652, -0.016459921) * input_2(1.0, -1.0); + result += mat4(0.4634271, -0.003668123, -0.047599904, -0.12130683, 0.22401029, -0.025745768, -0.10470067, 0.053404793, -0.036761805, -0.084733956, -0.09142558, -0.28369364, -0.49995282, 0.011233863, 0.047266603, 0.17919749) * input_2(1.0, 0.0); + result += mat4(-0.0118836295, -0.014470241, -0.005882613, -0.12261744, 0.3294148, 0.035915717, -0.04473546, -0.069540754, -0.19721296, -0.011040528, -0.069979444, -0.3747402, 0.2482877, -0.012608722, -0.011679118, -0.122919425) * input_2(1.0, 1.0); + result += mat4(-0.14774594, 0.0031677145, 0.013109687, 0.36358497, 0.23015004, 0.039183374, -0.11953599, -0.06296958, 0.55583876, -0.023505865, 0.011357745, -0.14185254, 0.116471216, 0.060708445, 0.1399403, 0.3770984) * input_3(-1.0, -1.0); + result += mat4(-0.13159269, 0.052696493, -0.09911978, 0.55373347, -0.3915424, 0.010465504, -0.021565987, 0.009781819, 0.040608075, 0.043440793, 0.019788733, -0.03733792, -0.081583515, 0.030552607, -0.00607138, 0.29444116) * input_3(-1.0, 0.0); + result += mat4(-0.21628638, -0.027281176, -0.03141128, -0.16367471, 0.07596243, -0.025980726, -0.13405415, 0.12944326, -0.16800655, -0.08940211, 0.0931387, -0.03943905, 0.43386894, 0.035619434, -0.13848147, -0.18138887) * input_3(-1.0, 1.0); + result += mat4(-0.3204627, -0.025448589, 0.02035827, 0.07275538, 0.48364028, -0.0161076, 0.09683973, -0.12844804, -0.09241517, 0.027779898, 0.006919329, -0.008572389, 0.22856143, -0.010184247, 0.09921273, -0.0678435) * input_3(0.0, -1.0); + result += mat4(-0.056855366, -0.0065863538, 0.02984105, 0.027073158, 0.17129305, -0.015428615, -0.03002768, 0.25897184, -0.2778529, -0.10862498, 0.21708763, -0.116608344, -0.12995633, -0.08716724, 0.049135786, 0.25811905) * input_3(0.0, 0.0); + result += mat4(0.03734234, -0.00047256608, 0.015583565, -0.25204784, 0.17178611, -0.054045614, -0.014379343, -0.36518732, 0.06123049, 0.05433218, -0.022758976, 0.20726064, -0.32708493, -0.01647057, -0.07308751, -0.17826787) * input_3(0.0, 1.0); + result += mat4(-0.21276924, -0.00845898, -0.036461554, -0.018689925, -0.08543628, -0.0044439165, -0.10936657, -0.012792908, 0.061862677, -0.04569958, -0.08150335, -0.13579325, -0.13734187, 0.0274238, 0.046197314, 0.12642962) * input_3(1.0, -1.0); + result += mat4(-0.094958186, -0.0022719381, 0.069640465, -0.21298264, -0.46235096, -0.024399577, -0.0038394511, -0.1918571, 0.2950306, 0.0070052478, -0.060133636, -0.1075728, 0.089835756, 0.017579164, -0.106551506, -0.11275346) * input_3(1.0, 0.0); + result += mat4(0.13114989, -0.048033226, 0.015009405, -0.099691674, -0.22170582, 0.037331235, -0.084859416, 0.060585108, -0.29281682, -0.01832053, 0.06525376, -0.118699685, 0.06726793, -0.024924222, 0.02148012, 0.034585275) * input_3(1.0, 1.0); + result += mat4(-0.39575902, 0.02658664, -0.07322044, -0.36037254, -0.048169583, 0.01433822, -0.08308103, 0.05713063, 0.107870586, 0.010659788, -0.017391019, 0.008346815, 0.42795876, 0.0039934986, -0.0064158775, -0.26114392) * input_4(-1.0, -1.0); + result += mat4(-0.080979735, -0.012678412, 0.09776782, -0.40638456, -0.47675496, -0.025897667, -0.14982113, -0.13869432, 0.6935554, 0.046716064, 0.01414481, 0.011303212, 0.41306463, 0.047772467, -0.100762844, -0.15030865) * input_4(-1.0, 0.0); + result += mat4(-0.35644558, -0.018053643, 0.06785331, 0.02170048, 0.5529005, -0.027357759, -0.13749035, -0.23695926, -0.19795364, 0.06694726, 0.093702175, 0.08657478, 0.05106092, -0.0072903684, 0.023859719, -0.00218493) * input_4(-1.0, 1.0); + result += mat4(0.40714747, 0.010993296, -0.08773656, -0.094462365, -0.18226328, 0.0075136097, -0.01204682, 0.2970315, -0.33740184, 0.02104729, 0.06522501, -0.37332615, 0.5559453, 0.02570329, -0.11964346, -0.23382007) * input_4(0.0, -1.0); + result += mat4(-0.23937689, 0.12993208, 0.062337175, 0.03643017, 0.25514635, -0.06556304, -0.069700085, 0.13220297, -0.10048349, 0.09993032, -0.078926235, -0.027505215, -0.009849797, -0.023043714, -0.031167708, -0.26955065) * input_4(0.0, 0.0); + result += mat4(-0.15279591, -0.023635047, 0.030511564, 0.14299282, 0.5124848, -0.01482958, -0.06927532, -0.035203014, -0.0152766155, 0.10299502, -0.037868097, 0.22049718, -0.24492194, 0.033858318, -0.003935585, 0.16753341) * input_4(0.0, 1.0); + result += mat4(-0.49042374, 0.019564573, 0.004649011, -0.004682137, 0.16864692, 0.041923422, 0.112893, 0.12432468, -0.056969523, 0.018176923, -0.011493351, -0.10512916, -0.39961725, 0.012145284, 0.05494442, 0.06969317) * input_4(1.0, -1.0); + result += mat4(0.48828402, -0.015860604, 0.07582017, 0.032715537, 0.30884275, 0.00890494, 0.031124372, 0.22943771, 0.5919457, 0.039419364, -0.007299537, -0.048808128, -0.14799148, -0.03813236, 0.04046016, -0.25063267) * input_4(1.0, 0.0); + result += mat4(-0.3103656, 0.021055408, 0.024089474, 0.07576022, 0.19653049, 0.013794942, -0.07066239, 0.007981132, -0.17104265, 0.041974764, 0.053107295, 0.12987839, -0.97809494, -0.002747118, -0.0048564333, -0.16439278) * input_4(1.0, 1.0); + result += mat4(0.04744975, -0.055869367, 0.04169688, 0.01813997, -0.37139162, 0.028722793, 0.006744535, 0.023522796, 0.17458469, 0.009522798, -0.0053792167, 0.0944316, -0.2944335, 0.020941395, -0.060113665, 0.22769406) * input_5(-1.0, -1.0); + result += mat4(-0.0010002232, -0.021055628, 0.12569694, 0.027671542, -0.8669804, -0.0037144637, -0.002798245, -0.3873795, -0.41884905, 0.08769794, -0.14873329, 0.38109502, 0.008360122, -0.016648214, -0.04512878, -0.1046219) * input_5(-1.0, 0.0); + result += mat4(0.3051793, 0.03831024, 0.13142024, -0.009990138, 0.08007993, 0.0027695112, 0.018009553, 0.10732915, 0.119999215, 0.006464537, -0.104529135, 0.0641636, -0.21842515, -0.041425046, 0.089911066, -0.14511593) * input_5(-1.0, 1.0); + result += mat4(-0.77465296, -0.06925327, 0.18757911, 0.12965924, 0.003939372, 0.001041194, -0.0102365995, 0.07982988, 0.059837047, -0.016899811, 0.100211546, 0.1497846, -0.15070233, 0.06418557, 0.09327005, -0.08041672) * input_5(0.0, -1.0); + result += mat4(-0.44021463, 0.016984614, -0.0596008, 0.1873856, 0.54837036, 0.163684, -0.07921215, -0.3648166, -0.19944578, 0.07281652, 0.10018754, 0.14761117, 0.039067503, 0.012355318, 0.07887634, -0.042726867) * input_5(0.0, 0.0); + result += mat4(-0.9060781, -0.07698517, 0.0977849, -0.21895511, -0.030005872, -0.03130393, 0.037005566, 0.15003408, 0.36359236, -0.06465223, 0.083891734, 0.0351223, 0.044595115, 0.04188633, -0.048965063, -0.07919717) * input_5(0.0, 1.0); + result += mat4(0.25984815, 0.0004941172, -0.04869672, 0.012693389, 0.36176252, 0.013556288, 0.0028295654, 0.14185703, -0.1978406, 0.00927494, -0.0065279366, 0.019211717, -0.61548066, -0.027582688, 0.028068874, -0.20769572) * input_5(1.0, -1.0); + result += mat4(-0.33536735, 0.037307948, 0.0042419494, 0.11108513, 0.51863503, 0.032112036, 0.06091502, 0.07025166, -0.8719936, 0.022055436, -0.09377734, 0.20472066, -0.38587913, -0.028001739, 0.043180913, -0.09327174) * input_5(1.0, 0.0); + result += mat4(0.13080125, -0.00043378858, 0.06815206, -0.03566603, -0.3678784, 0.02377272, -0.035147913, 0.2934965, 0.37620482, -0.0149791315, 0.001968577, 0.042271696, -0.12582158, -0.049473222, 0.016242031, -0.063565254) * input_5(1.0, 1.0); + result += mat4(-0.3379717, -0.01593031, -0.055818956, -0.0033936338, 0.20753586, 0.047954954, 0.103422046, -0.08823826, -0.21460927, 0.013063493, 0.10218054, 0.28215656, 0.1428807, -0.032786377, -0.042056665, 0.03524745) * input_6(-1.0, -1.0); + result += mat4(-0.3087949, -0.009906459, 0.13019198, 0.1269985, -1.0050169, 0.018134985, -0.009430145, -0.03158847, -0.04803917, 0.1245329, -0.122997835, 0.40177754, 0.063294955, 0.0009884009, 0.033636373, 0.074875854) * input_6(-1.0, 0.0); + result += mat4(-0.03901503, 0.018693253, -0.024071563, 0.09479722, 0.66342056, -0.0078039453, 0.03475324, -0.1425925, 0.20608115, 0.024186445, 0.04220891, 0.2640103, 0.44645986, 0.013832241, -0.04077373, 0.03627755) * input_6(-1.0, 1.0); + result += mat4(0.7119263, -0.026622834, -0.13776726, -0.33182138, -0.24862981, 0.022260258, 0.09346055, -0.019363124, -0.40806508, -0.02530106, 0.13367693, 0.7579418, 0.038697038, 0.09016329, -0.15740736, 0.0857786) * input_6(0.0, -1.0); + result += mat4(-0.10440802, -0.008805417, 0.09498816, 0.13190801, -0.57207704, -0.049771644, 0.05493848, -0.12549792, -0.08681102, 0.012679438, -0.35279876, -0.5096859, -0.26439512, 0.24950704, 0.14256309, -0.019334458) * input_6(0.0, 0.0); + result += mat4(-0.18873441, 0.05995819, 0.17101517, -0.036529437, 0.39680398, 0.031207273, 0.14905912, -0.096689016, -0.9838139, -1.800606e-05, -0.19687206, -0.08343735, 0.18125607, 0.10922245, -0.09836076, 0.006049496) * input_6(0.0, 1.0); + result += mat4(0.33167207, -0.019438148, 0.03608626, 0.20215277, 0.11298883, -0.004568042, -0.039280772, 0.01976304, -0.40662992, 0.023625344, -0.03986831, 0.2836262, -0.9514883, 0.07832218, -0.15698557, 0.011875763) * input_6(1.0, -1.0); + result += mat4(-0.5478637, -0.017923275, -0.053387027, -0.3160189, -0.2826568, -0.002189767, 0.030471258, 0.029997265, -0.099857315, 0.038672954, 0.25107825, 0.06306007, -1.4153095, 0.007339761, 0.19943188, 0.1534122) * input_6(1.0, 0.0); + result += mat4(0.38081792, -0.012759625, -0.03810986, -0.016768182, -0.27250192, -0.00074826024, 0.0348702, 0.12632772, -0.9546571, 0.042257823, 0.102418706, 0.06982225, -0.290707, -0.03434298, -0.028175833, -0.050039124) * input_6(1.0, 1.0); + result += mat4(0.28806546, -0.0005076902, -0.019364312, 0.07227316, -0.42039397, -0.0045491476, -0.052392196, 0.31597245, -0.160063, -0.01525678, -0.10676351, 0.5359344, -0.18714155, -0.040691126, 0.041812167, -0.31243896) * input_7(-1.0, -1.0); + result += mat4(-0.0866942, 0.12760375, 0.05812722, -0.13755064, -0.23195729, 0.028011678, 0.020702707, 0.11088561, -0.14537507, 0.04568182, -0.14310741, -0.0022436343, 0.26624775, -0.15226802, 0.027753705, -0.23016605) * input_7(-1.0, 0.0); + result += mat4(-0.6031128, -0.09007219, -0.12832394, -0.15486024, -0.12944207, -0.0017975348, -0.07171195, -0.15239784, 0.20842902, -0.010453416, -0.058187388, 0.10428816, 0.19455048, 0.0029184802, -0.015947908, -0.03950023) * input_7(-1.0, 1.0); + result += mat4(-0.17587581, 0.019434813, 0.10103572, 0.070328265, -0.01978642, 0.0447018, -0.0028186585, 0.32007518, -0.16218, 0.0033176972, 0.018202191, -0.25933266, -0.40555334, -0.13432553, -0.099789776, -0.60158664) * input_7(0.0, -1.0); + result += mat4(-0.27782524, 0.13512905, -0.16118422, 0.10199514, 0.5297009, 0.0674308, -0.05191879, 0.20772402, -0.9162277, -0.06744793, -0.0087753935, -0.35462946, 0.31405956, 0.16584639, 0.0053879414, 0.35692826) * input_7(0.0, 0.0); + result += mat4(0.49318442, -0.15216428, 0.13377623, 0.01963424, 0.19498888, 0.029235644, 0.06125589, 0.030765196, -0.14242889, 0.01188412, -0.040073033, -0.3060988, -0.23215808, -0.013054007, -0.0366301, 0.06758715) * input_7(0.0, 1.0); + result += mat4(0.10305042, 0.03987957, -0.03269897, -0.053524088, -0.37366992, 0.01584897, -0.062281113, 0.072522074, -0.11609602, 0.012499143, -0.07712428, 0.063153565, 0.28066656, -0.05517131, 0.15101676, 0.12533432) * input_7(1.0, -1.0); + result += mat4(0.3512516, 0.042251408, -0.03514724, 0.22525991, 0.28772485, 0.03634923, 0.016642682, 0.030047936, -0.39395526, -0.0041398974, -0.061259937, 0.09326502, -0.1764347, -0.027646385, -0.0700963, -0.14576575) * input_7(1.0, 0.0); + result += mat4(-0.3023363, -0.0041811634, 0.026259178, -0.047166497, -0.3570368, -0.013019061, -0.0031835942, -0.2693204, -0.14746739, 0.0011046854, -0.088095, -0.087923326, 0.08241337, 0.0063131955, 0.027867028, -0.0019239599) * input_7(1.0, 1.0); + result += vec4(-0.05014395, 0.04140253, 0.042657126, 0.008465355); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.01715764, -0.07015392, 0.08016974, 0.05739733, -0.028359538, 0.08799584, -0.030678226, -0.03615472, 0.023016665, 0.031508755, -0.04794231, 0.0028765902, 0.097459435, 0.09251426, 0.008712457, 0.01426765) * input_0(-1.0, -1.0); + result += mat4(0.09136075, -0.08073039, -0.120317675, -0.14691712, -0.08682271, 0.04212915, -0.020273022, -0.100893155, -0.016944367, -0.018886732, -0.115064785, 0.075815886, -0.11301077, 0.12745656, 0.44027, 0.32885972) * input_0(-1.0, 0.0); + result += mat4(0.050350964, 0.12789732, 0.33306193, 0.06845461, 0.09022562, -0.10495266, -0.14606088, -0.013120274, -0.20086603, 0.17836541, -0.15196769, -0.0010809753, -0.01654482, -0.16421416, 0.06564491, 0.007747264) * input_0(-1.0, 1.0); + result += mat4(-0.05584958, 0.16250607, -0.083664685, -0.08338013, -0.20194651, 0.098071806, -0.3222893, 0.011412911, -0.025768582, -0.31665942, -0.08001572, 0.22895904, 0.079709336, 0.07585666, 0.16100243, 0.10428653) * input_0(0.0, -1.0); + result += mat4(-0.22727625, 0.06064766, -0.121361434, 0.2324252, -0.13871436, -0.2990373, -0.19231017, -0.20539258, -0.12481986, 0.057116702, -0.23571973, -0.08716755, 0.07103553, -0.5629017, 0.2700324, -0.8783101) * input_0(0.0, 0.0); + result += mat4(-0.074465945, -0.26534244, 0.110156745, 0.313684, -0.14413449, -0.05587058, -0.015690774, 0.04878489, -0.16690655, 0.100708805, -0.16766533, -0.08125006, -0.13975713, 0.16883798, -0.221178, -0.20124008) * input_0(0.0, 1.0); + result += mat4(-0.008866045, -0.08325254, 0.14726162, 0.034890406, -0.05409633, 0.26115146, -0.10936866, 0.20562504, -0.017354699, 0.10894274, -0.17385918, 0.007726884, 0.08194471, -0.009231647, 0.16625196, 0.123261265) * input_0(1.0, -1.0); + result += mat4(-0.07393692, 0.13604301, -0.08037081, -0.02800136, -0.15569659, 0.11451949, 0.25219387, 0.32127246, 0.079237625, 0.0011697965, -0.129743, -0.050369438, -0.19232325, 0.02833705, 0.02731419, -0.23483208) * input_0(1.0, 0.0); + result += mat4(-0.20823692, -0.20479983, -0.03923336, -0.1901492, -0.1590994, 0.12447078, -0.20226504, -0.036875162, -0.052932102, 0.15510033, -0.24943542, -0.10116569, -0.072815344, -0.094079696, 0.02904328, 0.083854616) * input_0(1.0, 1.0); + result += mat4(0.03576602, 0.017223878, -0.048788313, -0.06066339, 0.049981277, 0.08521766, -0.12859616, 0.041228507, 0.023942892, 0.01417869, 0.027669594, -0.068065755, 0.04172235, -0.0074349986, -0.23029803, -0.12753522) * input_1(-1.0, -1.0); + result += mat4(-0.042479638, 0.03075822, 0.037098896, -0.11294397, 0.055530895, -0.053240467, -0.06540343, 0.029919619, -0.048699133, -0.039447613, 0.2371504, 0.2979856, -0.053148754, -0.0035183069, 0.12569906, 0.12034814) * input_1(-1.0, 0.0); + result += mat4(0.07459951, 0.08230179, -0.069145456, 0.037632294, 0.016532999, 0.027439363, 0.06892277, -0.24544415, -0.05233658, -0.037900183, -0.09303527, -0.02583856, -0.07390204, 0.10163122, 0.036952935, 0.14107545) * input_1(-1.0, 1.0); + result += mat4(-0.0050123455, 0.028093962, 0.09183269, 0.031353448, -0.14955316, 0.11394304, -0.12294181, -0.13957404, -0.18861894, 0.07913987, -0.2526564, -0.04603952, 0.11426482, 0.1167181, 0.20878926, -0.15000814) * input_1(0.0, -1.0); + result += mat4(-0.06444655, 0.02320909, 0.0890615, 0.16753739, 0.007732701, -0.16680464, 0.14973342, -0.046844304, 0.10068409, -0.11024539, -0.045394942, 0.28078762, -0.19096501, -0.23145832, 0.11679537, 0.17042471) * input_1(0.0, 0.0); + result += mat4(-0.20531556, 0.20256285, -0.14276117, -0.032373693, -0.12473058, 0.0166071, 0.14520489, -0.038123652, 0.1962046, 0.14307848, -0.33792242, -0.34893543, 0.24790893, 0.06546817, -0.1848049, -0.007899718) * input_1(0.0, 1.0); + result += mat4(0.030583203, -0.10207088, 0.115036875, 0.08662329, -0.13054134, 0.018776953, 0.1703822, -0.0074944836, 0.027112741, 0.35961235, -0.13247404, -0.048190832, 0.081161454, -0.18177983, 0.081686586, 0.022895236) * input_1(1.0, -1.0); + result += mat4(-0.08134566, 0.30079702, -0.37372032, -0.22857484, 0.24998716, 0.08242294, 0.27073506, -0.062614195, 0.10147538, 0.014030439, 0.18626533, -0.098576546, 0.017231114, 0.2103486, 0.048122372, 0.2274958) * input_1(1.0, 0.0); + result += mat4(0.045365114, 0.15772207, -0.19083151, -0.2929652, -0.11934353, 0.36663172, -0.13645191, -0.31684786, -0.0024354465, 0.14815068, -0.054353952, 0.18548088, -0.11108541, -0.18015984, 0.21815477, 0.25386894) * input_1(1.0, 1.0); + result += mat4(0.054092366, -0.14571132, 0.097151354, 0.10047077, -0.06065335, 0.029592969, 0.07233266, -0.052128326, -0.20473306, -0.10765033, -0.31212988, 0.08408907, 0.0035136573, 0.077693835, -0.041933745, -0.011871365) * input_2(-1.0, -1.0); + result += mat4(0.1246231, -0.027919425, 0.12198297, -0.282194, -0.020339487, -0.022679284, -0.19799513, -0.0868528, 0.026253818, -0.048350055, -0.27233958, -0.5211098, -0.16827145, 0.19946727, 0.078273326, 0.25967407) * input_2(-1.0, 0.0); + result += mat4(-0.093589455, 0.08611004, -0.016221397, 0.14761174, -0.08935438, -0.04681475, 0.027737215, 0.20043999, -0.082236156, 0.064395174, -0.23855318, 0.16660419, 0.00088755717, -0.02575776, 0.037269726, -0.042643633) * input_2(-1.0, 1.0); + result += mat4(-0.015195265, 0.006443798, 0.15982822, -0.17175196, -0.06838195, -0.2327058, -0.026074551, -0.19313952, -0.18553011, 0.23698342, -0.39863113, -0.32031757, 0.084601246, 0.015721563, 0.063763544, -0.08616448) * input_2(0.0, -1.0); + result += mat4(0.076591, 0.038340505, -0.025158243, -0.19472626, -0.07710035, 0.19826187, -0.014573867, 0.024550088, -0.020493934, -0.93580824, 0.34194687, -0.81713307, 0.09124132, -0.08604858, 0.14874333, 0.42743844) * input_2(0.0, 0.0); + result += mat4(-0.08575756, -0.13278385, -0.048151363, 0.10071549, -0.025180183, -0.10493028, -0.02832324, 0.22650407, -0.21402644, -0.12419573, -0.06575686, 0.31394127, -0.07510482, 0.0048296126, 0.12236193, -0.09080296) * input_2(0.0, 1.0); + result += mat4(0.09634528, -0.07681028, -0.13370852, -0.09894638, 0.005262921, -0.17799892, 0.020894287, 0.093270406, -0.1714296, -0.039162125, -0.1557434, 0.024307417, -0.061796244, 0.20173357, 0.028033126, -0.04561451) * input_2(1.0, -1.0); + result += mat4(0.07107917, 0.22714807, 0.039991163, 0.24244493, 0.05012149, 0.08264091, 0.047382012, -0.041486897, 0.08295218, 0.24360363, -0.11300149, 0.20591941, 0.014475436, -0.13723277, -0.17649978, -0.14094457) * input_2(1.0, 0.0); + result += mat4(-0.06603549, 0.026824562, -0.08429444, -0.087273076, -0.13674115, -0.122262895, -0.05912756, -0.22914921, -0.27399427, 0.16607639, -0.22543359, 0.06993151, 0.032627035, 0.07742167, 0.026785206, 0.122773595) * input_2(1.0, 1.0); + result += mat4(-0.01661074, 0.0016235972, 0.07936956, 0.03951477, 0.07143045, -0.15285723, 0.1235639, 0.20768814, -0.014196896, 0.081781626, 0.138985, -0.07665799, 0.06910484, 0.07298924, 0.13681036, -0.11286928) * input_3(-1.0, -1.0); + result += mat4(-0.119096264, 0.020472402, -0.08626923, -0.1436298, 0.17761306, -0.103811696, -0.22779405, 0.004423635, -0.05622787, -0.09327903, -0.051943984, -0.1280881, 0.06737338, -0.031837057, 0.11220048, 0.0058960733) * input_3(-1.0, 0.0); + result += mat4(0.052987885, -0.054251127, -0.009568691, -0.11764488, -0.025565207, 0.0044202497, -0.01800333, -0.023814216, 0.12423733, 0.0018453323, -0.111042485, -0.09374628, -0.32463762, -0.1435613, 0.10737566, 0.0831411) * input_3(-1.0, 1.0); + result += mat4(-0.15987158, 0.08665016, -0.120831676, -0.09597256, -0.15363634, -0.015633745, 0.032988004, -0.2714253, 0.044378076, -0.016608173, -0.06851965, -0.06956075, 0.088342726, -0.14945985, 0.051079232, -0.023576006) * input_3(0.0, -1.0); + result += mat4(0.20555006, 0.0155708175, 0.26970193, -0.111983754, 0.15188922, 0.014341301, 0.21478449, -0.16276854, -0.19051494, -0.13455443, 0.41967493, -0.14767604, 0.3483269, -0.14750737, -0.31217244, -0.20991094) * input_3(0.0, 0.0); + result += mat4(-0.023907641, -0.03235291, 0.026070766, -0.21128984, -0.075431906, -0.21243364, -0.13732123, 0.25470093, 0.08104798, 0.060399916, -0.037249085, -0.10055037, -0.002773838, 0.0447998, -0.0517057, -0.05267779) * input_3(0.0, 1.0); + result += mat4(-0.036311213, 0.12864025, 9.449851e-05, -0.031494785, 0.08798893, 0.00644161, 0.08759484, -0.15196727, -0.08501771, 0.14813073, 0.103775345, -0.008553261, 0.07768199, -0.03476667, 0.010358678, -0.118117265) * input_3(1.0, -1.0); + result += mat4(0.10929352, -0.18835327, -0.008748201, -0.19839993, 0.03229404, 0.09017989, 0.11526905, 0.1349267, -0.19649252, 0.036734004, 0.13689421, 0.1343931, 0.22389351, 0.12311922, -0.044223092, 0.13903539) * input_3(1.0, 0.0); + result += mat4(0.06871272, 0.18795371, -0.21332715, -0.19339381, 0.03457082, -0.06639414, 0.019746177, -0.01847602, -0.02051922, -0.094082, -0.075956225, 0.02883111, -0.17093907, -0.089399405, -0.1575176, -0.07464733) * input_3(1.0, 1.0); + result += mat4(-0.025469072, 0.02923772, -0.22542113, 0.11162006, 0.08727646, 0.023683686, -0.030466037, 0.072783016, 0.105604455, 0.04460522, 0.026931688, -0.091417775, 0.06520581, -0.13697447, -0.05027329, -0.031477995) * input_4(-1.0, -1.0); + result += mat4(0.09594254, -0.06362238, 0.052059323, -0.16451356, 0.07232134, -0.024155684, -0.10757249, -0.1479576, -0.10770899, 0.1062098, 0.1263433, 0.19309811, -0.027025245, 0.056597516, -0.008836919, 0.04442574) * input_4(-1.0, 0.0); + result += mat4(0.10674805, 0.15117261, -0.11940354, -0.09424391, 0.01723344, 0.024945755, 0.06095785, 0.06318082, 0.13874984, -0.1748404, -0.049332894, 0.033850875, -0.055707823, -0.04599158, -0.15541555, -0.06815416) * input_4(-1.0, 1.0); + result += mat4(0.077691615, 0.07777244, 0.11555656, -0.16297981, 0.22261369, -0.09527052, 0.18399927, 0.13584293, 0.08879226, -0.2087664, 0.000196571, -0.051782276, 0.13227668, 0.08792741, -0.060224652, 0.056813024) * input_4(0.0, -1.0); + result += mat4(0.053011592, -0.19031748, 0.4556922, 0.101875536, 0.10132497, 0.1063576, -0.0017303869, 0.02421679, -0.096552484, 0.1910689, 0.24933031, 0.05507937, 0.06795282, 0.047904585, -0.08968452, 0.018149644) * input_4(0.0, 0.0); + result += mat4(-0.09745911, 0.081703275, 0.094067454, -0.011134308, 0.0010196968, -0.016588157, 0.17568912, 0.012429138, -0.059518494, 0.08607631, 0.02399776, -0.0026975337, 0.10511616, 0.15343797, -0.13254435, -0.17239) * input_4(0.0, 1.0); + result += mat4(-0.0032315166, 0.038544085, 0.027790256, 0.030963283, -0.09630196, -0.15939209, -0.074662246, 0.053717006, 0.04350986, 0.03696278, -0.14789085, 0.0076153153, 0.009121693, -0.1374934, -0.06615706, 0.07036444) * input_4(1.0, -1.0); + result += mat4(-0.025695236, -0.148515, 0.03414529, -0.083332114, 0.06309337, 0.05697622, -0.015638819, -0.17785913, -0.19167084, -0.0025473917, -0.03716981, 0.16548537, -0.07144546, -0.44328102, 0.09932991, 0.07992137) * input_4(1.0, 0.0); + result += mat4(0.20749961, 0.037265286, 0.028654138, -0.034661755, -0.03223448, -0.0070209783, -0.017944966, 0.09459138, 0.076643184, 0.048655193, -0.004859084, -0.1153452, 0.076103404, 0.016982574, -0.04299639, 0.06720851) * input_4(1.0, 1.0); + result += mat4(-0.07683168, 0.006760298, -0.0043882704, 0.036111914, 0.04302781, -0.115721904, 0.115068555, 0.061031632, 0.19731249, 0.16694948, 0.054521848, -0.11891222, -0.0812301, -0.12092509, -0.06888919, -0.07613064) * input_5(-1.0, -1.0); + result += mat4(0.034962155, 0.06865189, 0.13495988, -0.07064087, 0.06448683, -0.06910609, 0.07094922, -0.16169368, -0.06501133, 0.07472332, 0.18389136, 0.25968552, 0.051119536, -0.024761125, -0.036465224, 0.03273191) * input_5(-1.0, 0.0); + result += mat4(0.029070074, 0.042271987, 0.010173229, -0.003062992, 0.1912722, -0.099478915, 0.066321716, -0.0704307, 0.08683429, 0.07350662, 0.1136384, -0.05524897, -0.083721936, -0.0043037045, 0.027355632, 0.110363744) * input_5(-1.0, 1.0); + result += mat4(-0.09953768, -0.00068842777, 0.01815615, -0.041650493, 0.1064643, -0.16672751, 0.28965366, 0.2273619, 0.123738185, -0.19772406, 0.14889559, 0.119403884, -0.07415514, -0.025760308, 0.013079769, 0.03830972) * input_5(0.0, -1.0); + result += mat4(-0.022508292, 0.028708428, 0.13648202, -0.37864658, -0.016420975, 0.17596546, 0.02374514, 0.16147773, 0.03317977, 0.007464667, -0.22476996, -0.33690783, 0.108579956, -0.2522068, 0.030729784, -0.02722711) * input_5(0.0, 0.0); + result += mat4(0.08611243, -0.1192524, 0.06596829, -0.006119047, -0.21209228, -0.04541584, 0.019584537, -0.11204032, -0.039861698, -0.0849247, 0.033280622, 0.013686848, -0.05213002, 0.017097116, -0.06902519, 0.01422511) * input_5(0.0, 1.0); + result += mat4(-0.07272538, 0.011281906, -0.10246065, 0.06326936, 0.017606828, -0.0027622008, -0.06697248, -0.017814303, 0.028258003, 0.0073489845, -0.014078846, 0.07849734, -0.18699437, -0.029065816, -0.049756378, -0.0162569) * input_5(1.0, -1.0); + result += mat4(0.042185232, 0.0015082087, 0.17642905, -0.050160557, -0.01771042, -0.007924126, -0.18600132, -0.13366936, -0.0128943585, 0.06512818, -0.05067639, 0.08995261, -0.004287592, -0.16824763, 0.110435516, 0.14412662) * input_5(1.0, 0.0); + result += mat4(-0.056734182, -0.19794843, 0.046501674, 0.17339882, -0.015350339, 0.12746394, -0.0758221, 0.057109952, -0.05646609, 0.07682141, -0.0970173, 0.014961091, 0.020655451, -0.00960393, -0.069248095, -0.019265503) * input_5(1.0, 1.0); + result += mat4(0.005013964, -0.016085468, 0.13822326, 0.086903155, 0.023294708, -0.18818192, 0.04460082, 0.09805686, 0.012227534, 0.064237095, -0.08521542, -0.15961158, -0.041601576, 0.034014143, 0.05578015, 0.036993667) * input_6(-1.0, -1.0); + result += mat4(0.18835743, -0.055618856, 0.17086625, -0.067975864, -0.02249242, 0.20670329, -0.16110167, -0.004074502, -0.090439305, -0.059864786, -0.026667839, 0.18171293, -0.0052142036, -0.029620871, 0.037927557, 0.047801897) * input_6(-1.0, 0.0); + result += mat4(0.0050640595, 0.1872425, 0.0026358766, 0.057206444, 0.080521956, -0.15890332, 0.07907009, 0.09029958, 0.19218116, -0.23173985, 0.030980637, -0.12344453, -0.04168237, -0.015357671, -0.026018249, 0.07878105) * input_6(-1.0, 1.0); + result += mat4(0.053753506, 0.050311226, -0.23924214, -0.023454398, -0.25046948, -0.027027786, -0.17412426, 0.2143638, -0.085325524, -0.4042617, -0.087780185, 0.1391794, -0.049281437, 0.06544724, 0.10697633, 0.02164271) * input_6(0.0, -1.0); + result += mat4(-0.057906754, -0.26329198, 0.16464055, -0.2171211, -0.08508017, 0.026976613, 0.06565316, 0.09262055, -0.04046261, -0.39869815, -0.11230629, -0.29457518, 0.12290157, -0.14133355, -0.29289657, 0.09867756) * input_6(0.0, 0.0); + result += mat4(-0.17401806, 0.03496076, -0.039802328, 0.11409757, -0.028493086, -0.10371588, -0.0022901664, 0.10683383, 0.13567595, 0.1659672, 0.108003885, -0.54946244, 0.14549576, 0.10747486, 0.07911528, 0.03413837) * input_6(0.0, 1.0); + result += mat4(0.1227874, -0.18203676, -0.0836059, 0.041785404, 0.050391927, 0.12880683, -0.050537273, 0.0013500781, -0.11141004, 0.12959705, 0.051877048, 0.009351116, -0.09602033, 0.18159159, 0.010233431, 0.00168794) * input_6(1.0, -1.0); + result += mat4(0.004578163, -0.010018493, -0.10282209, 0.14849769, 0.00050324714, -0.17889623, 0.10730165, 0.14543709, -0.12335815, -0.52347076, 0.10294534, -0.55847245, -0.007954226, -0.10500259, 0.1269209, 0.029725367) * input_6(1.0, 0.0); + result += mat4(-0.0977598, 0.09809847, -0.11120918, -0.1977388, 0.13008839, 0.03582607, -0.030157795, 0.015838688, 0.09447696, -0.095309295, -0.15022412, 0.19944663, 0.06361406, 0.011781122, 0.05911793, 0.07179673) * input_6(1.0, 1.0); + result += mat4(0.1854283, 0.014780929, -0.044242263, -0.0628375, -0.05238252, -0.046265487, 0.02020759, 0.10816279, 0.08570367, 0.10249784, 0.04332627, -0.10728521, -0.08832678, 0.023519062, -0.037858542, 0.08950716) * input_7(-1.0, -1.0); + result += mat4(-0.031998966, -0.014740817, -0.18106677, -0.013195043, 0.09347942, -0.1487594, 0.026843332, -0.26911366, 0.07100351, -0.13360026, 0.15405369, 0.030520633, -0.09917563, -0.11873234, -0.04557394, 0.0065384065) * input_7(-1.0, 0.0); + result += mat4(0.038545057, 0.089820825, 0.08261315, -0.033801273, -0.03465992, -0.12442525, 0.012935791, -0.06683469, 0.08161416, 0.016916147, -0.016648341, -0.1374614, -0.092608, 0.007818227, -0.07085862, 0.06875585) * input_7(-1.0, 1.0); + result += mat4(0.16713755, -0.19195165, 0.012375972, 0.18579592, 0.055362053, -0.11465926, -0.009340781, -0.27757838, -0.10454596, 0.015665013, 0.08821986, -0.26758546, -0.15778774, 0.17303033, -0.16150641, -0.07345984) * input_7(0.0, -1.0); + result += mat4(-0.02772634, 0.19058569, -0.3755417, -0.10150476, 0.14034347, 0.06398418, 0.17638789, 0.08598553, 0.07472471, -0.035302993, -0.06610542, -0.14576684, 0.045396682, 0.19552438, -0.06269831, 0.20521705) * input_7(0.0, 0.0); + result += mat4(0.10695701, -0.14994839, 0.356395, -0.019543184, 0.07167845, -0.1148781, -0.022299966, -0.32504582, -0.07967705, 0.002101198, 0.16446473, -0.05563168, 0.14567499, -0.072804235, -0.006091865, -0.15371433) * input_7(0.0, 1.0); + result += mat4(0.007702841, 0.013932105, -0.077495486, 0.06231951, 0.046995558, -0.26321715, 0.21216308, -0.089301676, 0.0028599338, 0.13584602, 0.038907394, -0.019165535, -0.036879476, 0.028228555, -0.13068803, -0.06629519) * input_7(1.0, -1.0); + result += mat4(-0.005971116, -0.04293834, 0.03775863, 0.061095566, 0.07818578, -0.0744403, -0.18404981, -0.19846115, -0.03818541, 0.04530121, -0.02328699, -0.18980205, 0.012114317, 0.000303488, 0.01249348, -0.14871646) * input_7(1.0, 0.0); + result += mat4(-0.0075982083, 0.01594049, -0.027105583, -0.011574619, -0.10896624, -0.17912371, 0.11086779, 0.03147342, 0.12563998, -0.015943456, -0.03916467, -0.15271538, 0.009732281, -0.009556803, 0.08813711, 0.08709692) * input_7(1.0, 1.0); + result += vec4(0.05896857, 0.0050527407, 0.030258173, -0.062560126); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.03484955, 0.056219324, -0.00089748856, 0.042548038, 0.025930483, -0.018230772, -0.020667749, 0.037974205, 0.008266399, 0.0038441892, -0.037543047, 0.01152524, 0.14300676, -0.016697988, 0.12493464, -0.04294721) * input_0(-1.0, -1.0); + result += mat4(-0.023350643, 0.0759775, -0.005828855, -0.034802187, 0.07985277, -0.009869096, -0.07392023, 0.03236674, 0.16594598, -0.15483798, -0.07858373, 0.005833693, -0.0013326276, -0.2975678, 0.18985346, 0.044496927) * input_0(-1.0, 0.0); + result += mat4(-0.12968446, -0.28767067, 0.044039086, 0.0015677081, 0.06700277, 0.120683946, -0.003155442, -0.03837716, 0.095116965, -0.21794875, -0.20924285, 0.034204338, -0.07086816, 0.25881624, 0.09379844, 0.039104152) * input_0(-1.0, 1.0); + result += mat4(-0.12803227, -0.051965665, 0.04139977, -0.01384211, 0.0602761, -0.038968414, 0.014369376, 0.08101173, 0.12420494, 0.2392506, -0.018079618, 0.022437219, -0.0761469, 0.17992784, 0.39848393, -0.07556588) * input_0(0.0, -1.0); + result += mat4(0.0929115, 0.13594396, -0.48383066, 0.23030035, 0.28996354, -0.33052415, -0.5561285, 0.13126197, -0.033074785, -0.04465832, -0.022487808, -0.0040232576, 0.5036984, -0.7677093, 0.47040194, -0.3635837) * input_0(0.0, 0.0); + result += mat4(-0.6394611, 0.19156078, 0.21653211, -0.053344663, 0.10730031, 0.021123353, 0.08298787, 0.040246982, 0.14834239, 0.10704991, -0.10289947, -0.0041089747, -0.049289595, 0.014505768, 0.17241007, -0.004421867) * input_0(0.0, 1.0); + result += mat4(-0.002131203, 0.025473475, -0.019702766, -0.056490872, -0.05333458, 0.061353873, 0.10818322, 0.18137006, 0.01763737, -0.10457414, -0.005886386, 0.0259598, -0.020722918, -0.0942986, 0.014359807, 0.027010662) * input_0(1.0, -1.0); + result += mat4(-0.030814705, -0.01104653, 0.036552522, 0.114482135, 0.07083216, -0.057585936, 0.059247922, 0.1828432, 0.06264697, 0.018793339, -0.13424161, 0.012964698, 0.11644987, 0.31973743, -0.07681258, -0.2901247) * input_0(1.0, 0.0); + result += mat4(-0.058634453, 0.32588348, 0.013587365, -0.23997815, 0.021965083, -0.13233298, -0.025218775, 0.039247934, 0.07158164, 0.100427635, -0.13118742, -0.05387043, -0.126298, -0.011018487, -0.0998786, 0.11698279) * input_0(1.0, 1.0); + result += mat4(0.03308755, -0.025727827, -0.04220366, 0.008528323, -0.050239936, -0.08476095, 0.04132884, -0.0039580013, 0.06337897, -0.0029291958, -0.107558526, -0.026273789, -0.0212211, 0.042284515, -0.05234651, -0.11143485) * input_1(-1.0, -1.0); + result += mat4(0.1337263, 0.13063666, -0.36792937, 0.0015845579, 0.09636965, 0.07823205, 0.13603285, 0.10418297, 0.02045229, -0.3451163, 0.17541564, 0.07652113, -0.032669693, -0.06108911, 0.25784394, -0.011978808) * input_1(-1.0, 0.0); + result += mat4(-0.019658323, -0.1006993, -0.12326811, -0.0061082696, -0.03283, 0.109577164, -0.17749241, -0.07192611, 0.08394045, -0.1152152, -0.04364399, -0.0021024274, 0.011476889, -0.30431092, 0.050472718, 0.014838629) * input_1(-1.0, 1.0); + result += mat4(0.039603952, 0.011627986, -0.110721946, 0.11213977, -0.07320194, -0.038087625, 0.046763342, -0.09538576, 0.005918097, -0.043715224, -0.16408731, 0.117312625, -0.12745982, -0.21479042, -0.035334066, 0.06389275) * input_1(0.0, -1.0); + result += mat4(0.3077373, 0.13532212, -0.30343398, 0.059537996, -0.22983624, -0.29587138, 0.34448388, 0.14724271, -0.03058766, 0.23582274, -0.24496326, -0.15129761, 0.025571227, 0.06719893, -0.10892072, -0.05901912) * input_1(0.0, 0.0); + result += mat4(0.05546223, 0.042137604, -0.44618103, 0.008573268, -0.1996983, -0.07074122, 0.26620474, -0.049549893, 0.13328032, -0.27208868, -0.034855127, 0.06268177, 0.012397481, 0.23937781, -0.09407635, -0.03773524) * input_1(0.0, 1.0); + result += mat4(0.1986044, 0.26657358, -0.021776462, 0.086289, 0.06501401, 0.11028182, 0.011373675, 0.08555846, -0.18673398, -0.29198724, 0.11015671, 0.21843621, 0.06509097, 0.15786166, -0.084346145, -0.122526854) * input_1(1.0, -1.0); + result += mat4(0.050742477, 0.24683048, -0.052525844, -0.046974137, 0.06916459, 0.12761803, 0.28186545, 0.16785829, 0.03518723, 0.10220196, -0.0027069682, 0.16452518, -0.12046949, -0.16755429, 0.050071694, 0.06896493) * input_1(1.0, 0.0); + result += mat4(0.021985423, 0.18353525, -0.0020219483, -0.030657785, -0.45826226, 0.42676872, 0.38896617, -0.27097452, 0.10659874, -0.22839329, 0.063874446, 0.051874608, 0.057124007, -0.22065699, 0.06168591, 0.0011578237) * input_1(1.0, 1.0); + result += mat4(-0.0727662, 0.07830873, 0.053954545, 0.10313423, -0.03012681, 0.09071889, 0.0749727, 0.0797396, 0.058055893, 0.2577805, 0.04591534, 0.05470492, -0.02079449, -0.065862834, -0.06386109, -0.02780035) * input_2(-1.0, -1.0); + result += mat4(-0.071752265, 0.21200496, -0.021574795, -0.03506005, 0.013594274, -0.01636309, 0.083195806, -0.030575689, 0.01763988, 0.39795223, 0.015756628, -0.04120661, 0.05949087, -0.5715586, -0.1252779, 0.000988525) * input_2(-1.0, 0.0); + result += mat4(0.07241365, 0.01718033, 0.07679549, -0.012464434, 0.072195366, -0.27896214, 0.011192302, -0.01581648, 0.10211098, 0.011108997, -0.059654128, -0.008187829, 0.036581635, 0.0602203, -0.03916497, -0.014142756) * input_2(-1.0, 1.0); + result += mat4(-0.011268771, -0.29318842, -0.021231417, -0.0024550082, 0.11127692, -0.011880981, -0.022785416, 0.011602527, -0.13416873, -0.20118545, -0.25622195, -0.024261996, -0.0916414, 0.020529155, 0.054241635, -0.028445447) * input_2(0.0, -1.0); + result += mat4(0.028632035, -0.17204928, -0.27767906, 0.12464202, -0.1305516, 0.16439728, -0.14760502, 0.004660672, 0.12242784, -0.6290217, -0.062639095, 0.28837848, -0.06793246, -0.48530847, 0.18623525, -0.09491263) * input_2(0.0, 0.0); + result += mat4(0.07125217, 0.12327779, -0.1032908, -0.059804738, -0.3047949, 0.3688476, 0.087405406, -0.06813295, 0.25884032, 0.30506405, -0.15310632, -0.02016913, -0.13913523, -0.07330114, 0.02740141, 0.050196808) * input_2(0.0, 1.0); + result += mat4(-0.04235087, 0.10257365, -0.00025142488, 0.03170264, -0.02130586, -0.010802066, -0.12090461, -0.03768517, -0.099999145, 0.12625931, 0.04694051, 0.10335886, 0.020428283, -0.053941738, -0.05660824, -0.034657605) * input_2(1.0, -1.0); + result += mat4(0.054977562, -0.23791555, -0.05231981, 0.058191225, 0.03217533, -0.20099327, 0.01025321, 0.08564021, 0.120163396, -0.32513222, -0.17124769, 0.2110165, 0.12494345, 0.20381595, 0.043751832, -0.015688984) * input_2(1.0, 0.0); + result += mat4(-0.015307819, 0.0061935494, 0.007686296, -0.018326823, 0.059819274, 0.101060696, -0.08040121, -0.110217564, 0.1438626, 0.19481684, 0.09365849, -0.020035, -0.029316802, 0.012896025, 0.015976233, 0.04459563) * input_2(1.0, 1.0); + result += mat4(-0.010392533, 0.021470193, 0.074280605, 0.048906934, 0.0155843515, -0.1435701, 0.18760005, 0.034141038, -0.063490935, -0.0749197, 0.11560689, 0.066099875, 0.13453491, 0.055740647, 0.4298669, -0.02830399) * input_3(-1.0, -1.0); + result += mat4(-0.0434174, 0.020478094, 0.004642135, 0.036943186, -0.12672861, 0.01393864, -0.19393678, -0.0493713, -0.1066478, 0.1267468, 0.010956573, 0.04461764, -0.014393061, -0.3549686, 0.23277524, -0.019591708) * input_3(-1.0, 0.0); + result += mat4(0.0024302977, 0.16177176, -0.037059586, -0.0055594826, -0.021537699, 0.15036736, 0.09102684, 0.04292562, -0.09310744, 0.12682614, 0.066102736, -0.032059047, -0.021321733, 0.24855329, 0.099963546, -0.02934524) * input_3(-1.0, 1.0); + result += mat4(-0.075144544, 0.001940605, 0.05084618, -0.07367496, -0.18409647, -0.23120399, 0.06475108, -0.079020716, -0.012671804, 0.16897288, 0.0649983, -0.08854133, -0.071947895, -0.26268646, 0.037180766, -0.29616353) * input_3(0.0, -1.0); + result += mat4(-0.03165486, -0.038754515, 0.27275476, -0.057759617, -0.024674533, 0.0020137697, -0.30539924, 0.09031545, -0.0718253, -0.2804485, 0.033279743, 0.0736699, 0.011412728, 0.11608237, 0.19523528, 0.023114782) * input_3(0.0, 0.0); + result += mat4(-0.13779695, -0.035810895, 0.047304224, 0.103503324, -0.021784982, 0.2552023, -0.032135174, -0.017641861, 0.20969732, -0.033955008, -0.013509658, 0.023929317, -0.03784641, 0.049987964, -0.05419815, -0.050502777) * input_3(0.0, 1.0); + result += mat4(0.016578281, 0.02236396, 0.12335172, 0.05373976, -0.0030993656, -0.015381166, 0.09642623, -0.02553496, 0.0342214, 0.09654403, 0.08659005, 0.048342817, 0.004979926, -0.03565719, 0.13547213, -0.0076664253) * input_3(1.0, -1.0); + result += mat4(0.07561888, -0.033051994, -0.01865787, -0.06945843, -0.033100244, -0.0061393767, -0.07004251, -0.07628902, -0.058001246, -0.31770703, -0.010568782, -0.0077796513, -0.065486334, 0.09711413, 0.14528911, 0.045987587) * input_3(1.0, 0.0); + result += mat4(-0.07737862, 0.16996306, -0.031926718, 0.0033201522, -0.010606853, -0.049528833, -0.06223543, 0.05652625, -0.057708252, -0.02707022, 0.00091813726, 0.0010577437, -0.08178161, -0.08461222, 0.06307996, 0.020402713) * input_3(1.0, 1.0); + result += mat4(0.019723786, -0.024109567, 0.0030572526, 0.022282975, -0.042031124, 0.111169614, 0.007584719, 0.044588286, 0.017923988, 0.061153665, -0.0064040385, -0.04195544, 0.025604453, 0.0030771864, -0.23402348, 0.02593726) * input_4(-1.0, -1.0); + result += mat4(0.067831956, 0.33553493, -0.18118133, -0.057914533, -0.048393793, 0.12277187, -0.02403722, 0.018837275, 0.0189687, 0.029744763, 0.04133013, 0.022658134, 0.052310415, -0.05187848, -0.089839995, 0.053675637) * input_4(-1.0, 0.0); + result += mat4(-0.076406226, 0.15638046, -0.014241362, 0.003327972, -0.061735198, 0.26786253, -0.008064624, 0.05174522, -0.06491678, 0.04810537, -0.13570048, -0.01335599, 0.06523356, 0.034267828, -0.108502805, 0.005949382) * input_4(-1.0, 1.0); + result += mat4(0.052288555, -0.15033062, -0.06248827, -0.027955273, 0.07527379, 0.12601303, -0.044744816, 0.05077142, 0.029400803, -0.07002566, -0.0018052768, -0.04748528, -0.088723965, 0.01712629, -0.12639697, 0.12423312) * input_4(0.0, -1.0); + result += mat4(-0.19903438, -0.101038, -0.11319645, -0.0474728, -0.11255083, -0.004319054, -0.002671522, 0.10193513, -0.14624913, 0.12656765, 0.21745084, -0.12908013, 0.21463215, 0.08732834, -0.06542584, -0.033809967) * input_4(0.0, 0.0); + result += mat4(-0.073909625, -0.15302032, 0.016578112, 0.07115507, 0.029948767, 0.053387616, -0.12362015, -0.01143834, -0.13660134, -0.030180376, 0.0045114076, -0.054920085, 0.09967774, -0.17284228, -0.0015625813, 0.00791343) * input_4(0.0, 1.0); + result += mat4(0.0013525656, 0.23936711, -0.06420535, -0.04497585, 0.059722148, 0.105360106, -0.08001664, 0.025062503, 0.017249124, -0.043339636, -0.031804617, -0.016259482, 0.07720592, 0.12655431, -0.049961485, 0.033902775) * input_4(1.0, -1.0); + result += mat4(-0.026652504, -0.051251177, -0.0030670683, -0.10877525, 0.08111144, 0.0029112604, 0.08695579, 0.011779564, -0.022495542, -0.01930617, -0.00030203973, -0.07996259, 0.18712221, -0.08575184, 0.04805145, 0.0046219043) * input_4(1.0, 0.0); + result += mat4(-0.042326663, -0.12245603, -0.0666803, 0.06154725, -0.014234574, 0.05925373, -0.011820385, 0.052867364, -0.0303887, -0.001444417, -0.00999942, -0.043395292, 0.035599533, -0.1811951, -0.012138958, 0.085181944) * input_4(1.0, 1.0); + result += mat4(0.048556544, 0.04462436, -0.08937957, -0.016032377, 0.06091968, 0.09162649, 0.07472959, 0.028334461, -0.14126396, -0.092118986, 0.0779109, -0.08596322, -0.024999956, -0.021308549, 0.023527144, 0.017087948) * input_5(-1.0, -1.0); + result += mat4(0.005754911, -0.007673687, 0.10224708, -0.0001703121, 0.052364875, 0.006516244, -0.023899768, -0.06359202, -0.093382716, -0.037774064, -0.08735411, 0.059520163, -0.022712829, -0.06698927, 0.07389713, -0.011120355) * input_5(-1.0, 0.0); + result += mat4(0.13718677, -0.21246894, 0.09934896, -0.053824894, -0.115550384, -0.00038309622, 0.13758011, -0.032187436, -0.04856819, 0.15868275, -0.12933421, -0.013922572, 0.022093724, -0.15395239, 0.03179495, -0.037529718) * input_5(-1.0, 1.0); + result += mat4(0.12009086, 0.27119637, -0.043767523, 0.041186746, 0.10491202, 0.00033512022, 0.024337804, 0.14860699, 0.070133306, 0.22788583, 0.073930934, -0.047842257, -0.031119635, -0.36522007, 0.059334893, -0.031453904) * input_5(0.0, -1.0); + result += mat4(-0.08082841, -0.095451586, 0.0062539256, -0.013350296, 0.13400285, -0.13793704, -0.20621873, 0.012916986, 0.10505146, -0.03245303, -0.12469458, -0.091098644, 0.021127645, -0.057507474, -0.115779854, 0.0015385357) * input_5(0.0, 0.0); + result += mat4(-0.029818395, 0.10995512, 0.07502849, 0.028269079, -0.035988156, -0.27231073, -0.032035567, 0.023226067, 0.15666878, -0.019690432, 0.043135706, -0.02077729, 0.062448293, -0.066889636, 0.017687129, 0.0026633618) * input_5(0.0, 1.0); + result += mat4(0.023446608, -0.023272963, -0.006507934, -0.025577923, -0.0061981133, -0.09709695, 0.07102642, 0.041608278, -0.03233017, -0.06392414, 0.06666301, 0.05589067, -0.0059256307, -0.18519983, -0.06496721, -0.08064528) * input_5(1.0, -1.0); + result += mat4(-0.14374802, 0.031867947, -0.15238315, -0.06747658, 0.07197065, 0.26314712, -0.062119618, -0.08103591, 0.124753326, -0.1578198, 0.109983474, 0.13408403, 0.059052177, 0.08900007, -0.084035486, 0.029204613) * input_5(1.0, 0.0); + result += mat4(0.04911657, -0.03006325, 0.021788595, 0.008567883, -0.07821764, 0.0326787, 0.08432509, -0.01048849, 0.013276097, 0.0881743, 0.14012447, 0.0067274687, 0.016961757, -0.052896105, -0.0034871027, 0.0149620185) * input_5(1.0, 1.0); + result += mat4(0.10850448, 0.110183164, 0.017233482, 0.0046868827, 0.10096816, -0.06444929, 0.031469565, 0.036449235, -0.026168864, -0.11930262, 0.42119694, -0.06868804, -0.006609657, -0.007719246, -0.022191202, -0.0096047595) * input_6(-1.0, -1.0); + result += mat4(0.14807941, 0.21116115, 0.065454364, 0.03653383, 0.031229781, -0.1618236, 0.0382989, 0.013605264, 0.002672935, -0.57756376, 0.4317758, 0.001886698, -0.012558649, -0.044921312, -0.03654093, -0.01580938) * input_6(-1.0, 0.0); + result += mat4(-0.018699747, -0.11630041, 0.009808111, 0.0013149725, 0.052100375, 0.149251, 0.049006205, -0.029159516, -0.103971064, -0.0015127326, 0.35329038, -0.026351297, -0.011971082, -0.012861032, 0.040516347, 0.026856069) * input_6(-1.0, 1.0); + result += mat4(-0.15738289, -0.050489213, -0.08229885, -0.31286713, 0.092747174, -0.036027204, -0.009984072, -0.023319546, 0.08091215, 0.19878484, 0.65901214, -0.04207751, 0.04448431, 0.03420531, -0.14542872, -0.0640144) * input_6(0.0, -1.0); + result += mat4(-0.05889236, -0.24557072, 0.117362484, 0.015037079, -0.0024487833, -0.13152422, -0.011474924, 0.056430098, -0.3379049, -0.5011244, 0.33978134, -0.026214525, 0.029083077, 0.16963066, -0.44451672, 0.001543714) * input_6(0.0, 0.0); + result += mat4(0.018315325, 0.35963294, -0.011475241, -0.008159843, 0.04025081, -0.21834989, 0.031549577, 0.09170106, -0.0769506, -0.51082313, 0.43453518, 0.0366434, 0.10510686, 8.698553e-05, 0.0017154526, 0.019263415) * input_6(0.0, 1.0); + result += mat4(-0.0791022, -0.009991951, -0.15731938, -0.0007712713, -0.05622394, -0.34560603, -0.042486172, 0.07400092, 0.04960924, -0.11469193, 0.23576349, -0.15434149, -0.15457335, -0.18146366, 0.040291477, 0.04615451) * input_6(1.0, -1.0); + result += mat4(0.026354281, -0.3250186, -0.05679844, 0.035067998, 0.08831704, -0.068891175, -0.00028369558, -0.006470872, 0.0978214, 0.30542648, 0.16943093, -0.08759345, -0.12162897, 0.05156868, 0.26396194, -0.1383153) * input_6(1.0, 0.0); + result += mat4(0.19648872, -0.061503906, -0.10898005, 0.0152345495, 0.00089379936, -0.026458794, -0.06520273, -0.056486275, -0.051597714, 0.025914025, 0.23870687, -0.048364803, 0.061743986, -0.2856237, 0.10516027, 0.048688594) * input_6(1.0, 1.0); + result += mat4(0.048160102, 0.19967239, -0.06515208, 0.031383626, 0.011461374, -0.12391046, 0.103306375, 0.069669075, -0.08485418, -0.04883193, 0.054696154, 0.0049435897, -0.015507431, -0.065405846, -0.10484726, -0.09070659) * input_7(-1.0, -1.0); + result += mat4(-0.040804826, -0.025774807, -0.24265377, 0.028779523, 0.0778814, -0.027938314, -0.0005728395, -0.031017268, 0.030844178, 0.011915328, 0.047273837, 0.06674193, -0.033219356, 0.029863318, 0.0036434473, 0.009798557) * input_7(-1.0, 0.0); + result += mat4(0.09779605, -0.0053485534, 0.0006495433, 0.018577617, -0.0316987, -0.10318063, 0.06150196, 0.041045066, -0.014903723, 0.16794343, -0.11534552, -0.015645722, 0.008062909, -0.076172814, -0.056291997, 0.012450871) * input_7(-1.0, 1.0); + result += mat4(0.08085902, 0.09238861, -0.12306916, 0.022254838, 0.044234708, -0.089034796, 0.14255838, -0.047361217, 0.034372225, 0.17938514, -0.066374965, 0.016179832, -0.20225981, -0.3247798, 0.06763312, -0.06209964) * input_7(0.0, -1.0); + result += mat4(0.0603832, -0.21929708, -0.032864925, 0.3170994, 0.13624409, 0.019012582, 0.016499825, 0.08682087, -0.031950813, 0.21379918, -0.14447175, -0.033451237, 0.075420305, 0.14447927, 0.029830964, -0.17130488) * input_7(0.0, 0.0); + result += mat4(0.1594556, 0.16735303, 0.08411544, -0.02791482, 0.19913487, -0.063649245, 0.002929763, -0.029856628, 0.02127206, -0.07743766, -0.029575491, 0.06311972, -0.087662965, 0.022737337, 0.025510978, -0.029431025) * input_7(0.0, 1.0); + result += mat4(0.049890153, -0.1435934, 0.012828437, 0.007937088, 0.09855806, -0.018473402, -0.07435806, -0.0047662538, -0.035396274, 0.087099284, 0.075615786, 0.048584774, 0.014515105, 0.24296708, 0.018363021, -0.13223639) * input_7(1.0, -1.0); + result += mat4(-0.023888245, 0.07998943, -0.054038227, 0.03622496, 0.06294219, 0.07814712, -0.0042933924, -0.012332207, 0.046194084, 0.0026219853, -0.015354883, 0.041816942, -0.11539712, -0.07033747, -0.05208726, 0.08057438) * input_7(1.0, 0.0); + result += mat4(0.114868596, -0.0123430835, 0.068615116, -0.022198536, 0.07085081, -0.11993, 0.019970074, 0.07079689, -0.0075016506, 0.13845037, -0.09952355, -0.055707682, -0.02202106, -0.017028201, 0.020488651, 0.0106527535) * input_7(1.0, 1.0); + result += vec4(0.0035619363, -0.008335415, -0.018971717, -0.020014776); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.06814482, 0.07733609, 0.050995193, 0.0059943344, 0.1395205, 0.10739615, -0.049807537, -0.060109206, 0.0011812026, 0.019048447, 0.021315563, 0.05541671, 0.052612737, 0.04624163, -0.10066439, 0.0828534) * input_0(-1.0, -1.0); + result += mat4(-0.05515801, 0.1412896, 0.16718915, -0.0570051, -0.099390134, -0.13325082, -0.08038511, -0.06512417, -0.12712282, -0.038194556, 0.0835203, -0.107304595, 0.080403656, -0.032635555, -0.23829296, 0.103156544) * input_0(-1.0, 0.0); + result += mat4(0.18752639, 0.22737162, -0.029717697, 0.01105919, 0.094100766, 0.01150794, 0.07022252, -0.040557433, 0.020979365, -0.08699022, -0.03531163, -0.07560764, 0.11992894, 0.043611564, 0.02236542, -0.07914575) * input_0(-1.0, 1.0); + result += mat4(-0.1717256, -0.10987516, 0.00071870926, -0.081122234, 0.3741741, 0.0221266, -0.012283005, -0.19280443, -0.041821644, 0.027311685, 0.005664761, 0.037388116, 0.044535287, 0.040094476, 0.0092519615, -0.11322184) * input_0(0.0, -1.0); + result += mat4(-0.26259947, -0.029250879, -0.2439685, 0.3299795, -0.5644406, -0.17439093, -0.1796465, 0.060312428, 0.025363369, 0.08852226, 0.11288955, -0.10020556, -0.2876431, 0.20070128, 0.4656585, -0.32648912) * input_0(0.0, 0.0); + result += mat4(0.12467716, 0.13798122, 0.2979944, -0.12944034, -0.26325998, -0.011464334, -0.13957751, 0.1343106, 0.10500383, -0.031198764, -0.13271444, -0.00017813424, -0.17263405, 0.16995783, -0.09029355, 0.18780912) * input_0(0.0, 1.0); + result += mat4(-0.0123596145, 0.060749408, 0.036189117, -0.0042425045, 0.347304, 0.12208974, 0.15363647, -0.096176974, 0.009446147, -0.13549556, 0.09018751, 0.11249956, -0.15490656, 0.018100427, 0.08755074, 0.031146923) * input_0(1.0, -1.0); + result += mat4(0.16894864, -0.26136097, 0.10588756, 0.07603752, 0.28815, -0.27373567, 0.154868, -0.16309167, 0.033106826, -0.058916952, -0.008251308, -0.05207748, 0.07813412, 0.3479309, 0.13146062, -0.04291937) * input_0(1.0, 0.0); + result += mat4(0.06546837, 0.1414991, -0.14165188, -0.10506504, 0.11826477, 0.17269856, -0.0200339, 0.1267022, -0.028277272, -0.006392953, -0.16037166, -0.010465503, 0.04538809, 0.2712337, 0.041419487, -0.07857971) * input_0(1.0, 1.0); + result += mat4(0.0075670495, -0.07009344, 0.09701849, 0.06541304, 0.034368575, -0.07053363, -0.072145656, 0.1522077, 0.07171368, -0.01182658, 0.011265874, 0.0089708, 0.15234746, -0.034595214, 0.061702818, -0.1080295) * input_1(-1.0, -1.0); + result += mat4(0.062020086, -0.0013460957, 0.09671706, 0.009861083, 0.10122707, -0.028035011, -0.10710418, -0.17423898, 0.062077485, -0.01252741, -0.007905749, 0.041951645, -0.06379389, 0.023130512, 0.10055004, -0.11598544) * input_1(-1.0, 0.0); + result += mat4(0.026479855, 0.14549336, -0.014750539, 0.027076084, -0.03904833, 0.06375904, 0.017787512, 0.06429712, 0.06163463, 0.010855558, 0.010263362, 0.019324766, -0.2817103, -0.027034136, -0.13095665, 0.15562174) * input_1(-1.0, 1.0); + result += mat4(-0.2729064, -0.08012658, 0.03575735, -0.037404865, 0.0053058905, 0.11733334, 0.115585305, -0.15899237, 0.23387352, -0.040951762, 0.012679103, -0.11863959, -0.03448192, -0.087765515, -0.1688996, -0.06052658) * input_1(0.0, -1.0); + result += mat4(0.49898103, 0.056029588, 0.18954922, -0.081179716, 0.19389975, 0.01848028, 0.1276579, 0.19640373, 0.1101065, -0.03320355, 0.0032789155, 0.011028506, -0.013130264, -0.052742586, -0.1292837, 0.111289755) * input_1(0.0, 0.0); + result += mat4(-0.14082505, 0.14304209, 0.015053773, 0.17371967, -0.16572155, -0.16362016, -0.026285019, 0.1074639, 0.3240448, 0.06649786, -0.1336082, 0.19710657, -0.1075109, 0.30769697, -0.15108703, 0.0352097) * input_1(0.0, 1.0); + result += mat4(-0.060243923, -0.10627129, 0.022092666, 0.2706975, -0.013865326, 0.034593415, -0.19048434, -0.025760565, 0.24756171, -0.18692672, -0.092559144, -0.20380798, -0.12113963, 0.03435493, 0.00764506, 0.07185225) * input_1(1.0, -1.0); + result += mat4(0.07691235, 0.10132743, -0.11153325, 0.0013758328, -0.022567175, 0.023917912, 0.14525272, -0.13037397, -0.1354626, 0.1729162, 0.16092557, 0.11390205, 0.27946225, 0.032701004, -0.0075595165, 0.09247238) * input_1(1.0, 0.0); + result += mat4(0.07023201, -0.04282641, -0.16001186, 0.0050595244, -2.5268052, 1.3296052, 0.87195534, -0.08906819, -0.07932426, 0.032677412, 0.013303701, 0.083934955, 0.21180093, -0.20481811, -0.018972656, -0.08143445) * input_1(1.0, 1.0); + result += mat4(0.14781556, -0.10952733, 0.043417938, -0.0033366133, -0.002880793, -0.06684284, 0.019289622, 0.04904509, 0.45179912, 0.06307519, -0.032738473, -0.20915025, 0.056060553, -0.034714065, -0.12477884, 0.050822362) * input_2(-1.0, -1.0); + result += mat4(-0.32351807, -0.09336777, -0.017607247, -0.11313378, -0.25981262, 0.07680321, 0.17459354, -0.009601499, -0.23031947, -0.018191015, -0.0130402045, -0.11286918, -0.37194526, 0.00025259895, -0.22548482, 0.114801064) * input_2(-1.0, 0.0); + result += mat4(0.11065126, -0.17382178, -0.1310234, 0.051801603, 4.934718e-05, 0.024697132, -0.021428907, 0.08217686, 0.035980772, 0.1585824, -0.0060365545, -0.0016504932, 0.07255911, -0.029984295, -0.05329665, -0.07280257) * input_2(-1.0, 1.0); + result += mat4(-0.24918382, 0.13109449, -0.046695877, -0.013000926, -0.33622822, -0.0674569, -0.043346375, 0.033156, 0.32148612, -0.070489526, -0.028118065, -0.4792195, 0.088055804, -0.20789213, 0.022337563, -0.24531102) * input_2(0.0, -1.0); + result += mat4(-0.04096399, -0.008589879, -0.0032279256, 0.23141685, 0.054013524, 0.29692253, -0.1016096, 0.33918986, -1.1049438, -0.3138983, -0.2790433, 0.09398051, 0.19214296, -0.19655795, 0.000117366304, 0.064562246) * input_2(0.0, 0.0); + result += mat4(-0.06089916, 0.032057997, 0.045703568, -0.16562763, -0.100451626, -0.0056434055, 0.16224405, -0.10457718, -0.4513192, -0.22395058, 0.010117718, -0.101336434, 0.10381404, -0.018568035, 0.018845808, -0.0010633313) * input_2(0.0, 1.0); + result += mat4(0.10261601, -0.03687891, 0.3042422, 0.03572091, 0.05268219, -0.0069314716, 0.07577071, 0.08674988, -0.06846581, 0.13220094, 0.10860123, -0.23695655, 0.06647718, -0.0067301826, -0.01952688, -0.060590126) * input_2(1.0, -1.0); + result += mat4(0.045117024, -0.031088598, 0.2041225, -0.11116693, 0.17247494, -0.3191019, -0.05231449, -0.008707541, 0.28778738, -0.1791162, 0.44805935, 0.10176978, -0.26810366, 0.042832192, -0.10467133, -0.064047284) * input_2(1.0, 0.0); + result += mat4(0.046584375, -0.021405691, 0.019256137, 0.12876181, 0.14012045, -0.07706842, -0.08902429, -0.028907977, -0.046682205, 0.18950704, 0.071891464, -0.11633896, 0.01846775, 0.044772815, 0.05243828, 0.04153127) * input_2(1.0, 1.0); + result += mat4(-0.11597014, 0.06369134, -0.04794531, 0.081279375, 0.050037924, 0.04454047, -0.09678589, 0.012111344, -0.07310251, -0.00736721, -0.11716492, -0.0046244417, -0.30800244, 0.09674307, -0.10101729, -0.094580874) * input_3(-1.0, -1.0); + result += mat4(0.13223484, -0.07484858, -0.17881736, -0.047769494, -0.039229427, -0.07889579, -0.0049363696, 0.112804875, -0.1311476, -0.055962853, -0.007453285, 0.11387444, -0.22138037, 0.11771297, -0.076708004, 0.2977653) * input_3(-1.0, 0.0); + result += mat4(-0.1635628, -0.1220873, 0.002779191, -0.08751304, 0.010023077, 0.076002575, 0.07029725, -0.056855965, -0.26785937, 0.08161418, -0.013436578, -0.13344744, -0.18251419, 0.06874084, -0.056127593, -0.031062257) * input_3(-1.0, 1.0); + result += mat4(-0.014539843, -0.0621709, -0.014290958, -0.08327804, 0.18600027, 0.049087975, -0.068587944, -0.37859303, -0.021594414, -0.032667104, -0.1091416, 0.14453079, -0.023033777, 0.024249097, -0.115891114, 0.045451246) * input_3(0.0, -1.0); + result += mat4(-0.21807194, -0.052304152, 0.03650211, 0.071443915, -0.36272454, 0.13712648, -0.2638933, 0.3713676, -0.1882207, -0.11468247, -0.06773479, -0.11143294, 0.05162251, -0.30814177, 0.22153005, 0.09176826) * input_3(0.0, 0.0); + result += mat4(0.012904686, -0.26302978, 0.22127385, 0.087910645, 0.15725295, -0.07539064, 0.143368, -0.15614721, -0.27284268, -0.13070576, 0.02097775, 0.3123436, -0.085181944, 0.18711552, -0.07237062, -0.15240821) * input_3(0.0, 1.0); + result += mat4(0.083423495, 0.1266142, 0.11273289, -0.09261122, 0.09929658, -0.0036377513, 0.049063697, -0.16154405, 0.2673539, 0.14663738, 0.14839287, -0.13337144, 0.10571923, 0.090798676, 0.070226684, 0.086374275) * input_3(1.0, -1.0); + result += mat4(-0.00436008, -0.22289607, 0.33521232, -0.032120254, -0.22069393, 0.061987102, -0.23282096, 0.040396307, -0.040647995, 0.018813448, 0.25143448, 0.14743036, 0.09194436, -0.117251426, 0.16691424, 0.1098164) * input_3(1.0, 0.0); + result += mat4(-0.19863743, 0.098891295, 0.18835877, 0.00060885015, 0.030467259, 0.22502881, 0.046728894, 0.038242035, 0.15942563, 0.0056752684, 0.16661504, -0.0694433, -0.0034673677, 0.11113552, -0.07468257, 0.07674715) * input_3(1.0, 1.0); + result += mat4(0.3191042, -0.017258726, -0.054162845, 0.053170223, -0.0028734878, -0.008754424, 0.11273141, 0.033908483, 0.19410183, -0.033264052, 0.0527275, 0.13279676, -0.017885627, -0.03261934, 0.056511678, 0.048557363) * input_4(-1.0, -1.0); + result += mat4(-0.15806514, -0.022043256, 0.061823808, -0.046902183, 0.06282782, 0.06917882, 0.0672068, 0.032107912, 0.24527298, 0.05529337, 0.028613191, 0.16179256, 0.023915248, -0.052022528, 0.00464432, -0.054214004) * input_4(-1.0, 0.0); + result += mat4(-0.03076433, 0.019873083, 0.096788034, -0.076852016, 0.22784401, -0.051469773, 0.09105179, -0.0012634111, 0.10449043, -0.022741297, 0.115184575, -0.028658427, -0.053138085, 0.0023208323, -0.0027205956, -0.045358747) * input_4(-1.0, 1.0); + result += mat4(0.2000749, 0.13342875, 0.0011712087, -0.051687215, 0.11959288, 0.051098507, -0.080363914, 0.019674476, 0.07484731, 0.1676009, -0.054892458, 0.061381426, 0.1547486, -0.030261481, 0.14094537, -0.054977663) * input_4(0.0, -1.0); + result += mat4(-0.024462601, -0.18237226, -0.036680546, -0.08698871, 0.12798956, 0.06411547, 0.12515023, 0.24188086, 0.31355315, 0.28841546, -0.0079361, -0.113748714, -0.18910913, -0.2795732, -0.047213376, -0.17071648) * input_4(0.0, 0.0); + result += mat4(-0.0019767343, -0.25391215, 0.007599365, -0.018010085, -0.076374635, -0.09616706, 0.013070255, 0.013708432, 0.10919296, 0.041617207, 0.030572513, -0.077344395, -0.104745686, 0.025163114, -0.08922264, 0.20824203) * input_4(0.0, 1.0); + result += mat4(-0.20520394, 0.02172051, -0.06065854, 0.03430785, -0.1755589, 0.16164945, -0.25908363, 0.11033172, -0.078956425, -0.18552355, -0.07741531, 0.029973697, -0.1327952, 0.070727505, 0.033313815, -0.010788562) * input_4(1.0, -1.0); + result += mat4(-0.24641748, -0.003338664, -0.06480853, 0.04571296, -0.14856002, -0.047915615, -0.20850347, -0.01586537, -0.09072356, -0.19216633, -0.12575682, -0.023494033, 0.027365742, -0.2722651, 0.13735145, -0.06737752) * input_4(1.0, 0.0); + result += mat4(-0.08328149, -0.093609564, 0.07845304, 0.04011167, 0.14601097, 0.05864183, -0.006384276, -0.057071596, 0.077760905, -0.19736537, -0.09251204, -0.012577349, 0.09511375, -0.08704673, 0.0052621043, 0.01954453) * input_4(1.0, 1.0); + result += mat4(-0.026233554, -0.023312189, 0.044154555, -0.02162622, -0.0076563987, 0.01519065, 0.10042524, 0.0052579055, -0.19259882, 0.0027137352, -0.042728838, -0.058896627, -0.08809557, -0.031760883, -0.011896959, 0.01889114) * input_5(-1.0, -1.0); + result += mat4(0.17391378, 0.03593637, 0.16938241, -0.22356015, 0.14355335, -0.0049462714, 0.143122, 0.056693822, 0.11634908, -0.11971444, -0.1974107, -0.014084996, -0.1619626, -0.038865335, -0.068536915, -0.01909745) * input_5(-1.0, 0.0); + result += mat4(-0.1506051, 0.041860625, 0.0040881606, 0.19745688, 0.32674688, 0.026114823, 0.08841522, 0.050619807, 0.06356004, -0.109337516, 0.04444004, 0.09876041, -0.15638962, 0.009183551, -0.16321735, -0.034663774) * input_5(-1.0, 1.0); + result += mat4(0.039541185, 0.07024691, 0.011150932, 0.17188913, 0.08051386, 0.105213635, -0.026554842, -0.020179078, -0.33090797, -0.03663278, 0.09953471, -0.05286673, 0.05870933, -0.090698525, 0.03899714, -0.122759245) * input_5(0.0, -1.0); + result += mat4(0.11758904, -0.2779724, 0.04452013, 0.0025555757, 0.10118658, 0.008679975, 0.11476658, -0.08537917, 0.13508008, 0.48065424, -0.25952116, 0.07404776, -0.24012153, -0.027881065, -0.04976693, -0.020581286) * input_5(0.0, 0.0); + result += mat4(-0.042755436, 0.08265571, 0.14908761, -0.06693576, 0.18402776, -0.05957701, 0.03009179, -0.022584487, -0.05162313, 0.1799338, -0.047257837, -0.115659945, -0.2005742, -0.104483515, -0.16137913, 0.029198354) * input_5(0.0, 1.0); + result += mat4(-0.008287765, -0.21278769, 0.0021687676, -0.009764558, 0.030813236, -0.048455168, -0.063583456, 0.13258648, -0.019433457, 0.039986573, -0.026655374, 0.009370688, 0.15191412, 0.023409225, 0.0934281, -0.25003788) * input_5(1.0, -1.0); + result += mat4(0.0022419398, 0.27961323, -0.22344731, -0.019460965, -0.2660574, 0.16550657, -0.3349392, 0.018489305, 0.15046889, -0.2505981, 0.04637572, 0.035748478, -0.011242556, 0.05637479, 0.12592034, -0.02267568) * input_5(1.0, 0.0); + result += mat4(-0.076445326, -0.0083980225, 0.11515379, -0.10717634, -0.15053342, 0.19728161, -0.09588973, 0.049097084, -0.04307538, -0.13817307, -0.0896506, 0.037678726, -0.03122851, 0.03263597, 0.054406594, 0.09774831) * input_5(1.0, 1.0); + result += mat4(0.033327237, -0.026544519, 0.09242586, 0.15275335, 0.0026350047, -0.1001555, -0.07981149, 0.036835354, -0.25223577, 0.12788245, -0.06834472, -0.10205124, -0.06865765, 0.052879825, 0.07011238, -0.12109542) * input_6(-1.0, -1.0); + result += mat4(-0.13929075, -0.10375315, -0.030559666, 0.066327065, -0.17542413, -0.053659864, -0.090971835, 0.14799744, 0.04878225, 0.07469574, -0.15689091, -0.06286533, -0.0049008606, 0.029483132, 0.038543496, 0.09015631) * input_6(-1.0, 0.0); + result += mat4(-0.28152037, -0.009721686, -0.21203001, 0.14641769, -0.023730118, 0.020426229, -0.071610846, -0.09035746, -0.6143787, 0.043035407, -0.012719137, 0.08054024, 0.062736586, -0.09964446, -0.0061213626, 0.035287987) * input_6(-1.0, 1.0); + result += mat4(0.15943615, -0.15423833, -0.027169192, -0.28467125, 0.016539771, 0.01415824, -0.0942272, -0.045143727, -0.15731998, 0.10797448, 0.16863415, -0.048355855, 0.055521093, 0.017932976, -0.03304523, -0.119270645) * input_6(0.0, -1.0); + result += mat4(0.16539547, -0.07121468, -0.075689174, -0.19538824, -0.36725, 0.042577527, -0.19813506, -0.018880084, 0.39795804, -0.8605557, 0.17175817, -0.48398387, 0.014739316, -0.00036917123, 0.14644106, -0.03584113) * input_6(0.0, 0.0); + result += mat4(-0.5301907, -0.023404956, 0.103503905, -0.06403009, -0.20629986, -0.11839137, 0.032399096, -0.023522254, -0.14885509, 0.33117747, 0.0042584916, 0.30143547, -0.04838982, -0.025557818, -0.13541289, 0.084806986) * input_6(0.0, 1.0); + result += mat4(-0.23169413, 0.0032941233, 0.049847502, -0.031874094, 0.14594884, -0.13267376, -0.06542856, -0.18900648, -0.052980326, 0.21204348, 0.14062917, 0.01412783, 0.0067489147, 0.115057915, 0.018937577, -0.106433496) * input_6(1.0, -1.0); + result += mat4(0.107085176, 0.050607868, 0.15761438, -0.15112534, -0.018185562, -0.15171903, -0.016725928, -0.10779735, 0.055556472, 0.45271233, 0.17268503, -0.027898403, 0.041657507, 0.22343636, -0.14667422, -0.20709427) * input_6(1.0, 0.0); + result += mat4(0.10387456, 0.12933506, -0.014809547, 0.11115765, -0.031261332, 0.021588188, -0.06533659, 0.074305676, -0.14139867, 0.537091, 0.095128834, 0.031508762, -0.17033193, -0.0792766, 0.05497974, 0.039722137) * input_6(1.0, 1.0); + result += mat4(0.025879389, -0.026220381, 0.03616834, 0.09832474, 0.056648493, 0.036711484, -0.035797186, -0.20785621, 0.055870242, -0.048905212, -0.027277878, -0.1284517, 0.07593427, 0.040137056, 0.009696188, -0.12923734) * input_7(-1.0, -1.0); + result += mat4(-0.34180617, 0.06858816, -0.12233401, 0.028159091, -0.14085302, 0.035581723, 0.033072747, 0.060865413, -0.25306982, -0.058313753, -0.06765568, 0.03580664, 0.19251066, 0.062727086, 0.29114965, -0.22895281) * input_7(-1.0, 0.0); + result += mat4(-0.27511966, -0.1489034, -0.07165742, 0.069479994, -0.030539598, 0.012344269, -0.15383251, -0.025953816, -0.037777208, 0.05371727, 0.06648854, 0.0062251687, 0.14166546, -0.096578404, 0.089293554, -0.013646521) * input_7(-1.0, 1.0); + result += mat4(0.044843685, -0.004873531, -0.014933338, -0.13943717, 0.065096, -0.12585507, 0.09685863, -0.22230443, -0.11745318, 0.104250304, -0.052834284, -0.033987485, -0.057510506, -0.050295196, 0.055495583, -0.3606598) * input_7(0.0, -1.0); + result += mat4(0.37550682, -0.087823965, 0.2510606, 0.24639055, 0.08238724, 0.079346575, -0.17280948, -0.22211614, -0.00079607643, 0.16323034, 0.121042155, -0.050665803, -0.27715608, 0.06620297, -0.50642985, 0.27872273) * input_7(0.0, 0.0); + result += mat4(-0.10007884, -0.22645849, -0.04819587, 0.017245231, -0.18645936, 0.035940975, 0.022982161, 0.15322347, 0.030978065, -0.12359457, 0.0059407665, -0.036625005, 0.047374193, 0.13289267, -0.13763669, 0.010510947) * input_7(0.0, 1.0); + result += mat4(0.033565044, -0.15740854, 0.038860332, 0.17038961, 0.10757457, 0.13742447, 0.017673928, -0.31285512, -0.037011463, 0.009351517, 0.013675027, -0.109875284, -0.21656275, 0.013694969, -0.20022427, -0.046038315) * input_7(1.0, -1.0); + result += mat4(0.033976898, 0.080926605, -0.26884454, -0.092432566, 0.02137049, 0.046216764, 0.080299504, -0.0036458224, -0.07510118, -0.07355155, 0.0131511, -0.11899299, 0.03844516, -0.09450035, 0.20524478, -0.003798333) * input_7(1.0, 0.0); + result += mat4(0.115170725, -0.0021953364, 0.06766085, 0.071075894, 0.13089454, 0.028524544, -0.07805935, -0.068566956, -0.23533212, 0.041543346, 0.08290623, -0.001041594, 0.00028860074, -0.039416682, 0.055286232, -0.036938332) * input_7(1.0, 1.0); + result += vec4(-0.0013056806, -0.026190901, -0.009536226, 0.014348099); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf4 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.16253851, -0.005837104, -0.024908477, -0.04647487, -0.019175546, 0.0035653557, 0.092576586, -0.23303078, 0.0070655383, 0.023437899, -0.0065473164, -0.21597044, 0.069446586, -0.010581077, -0.10736579, 0.29941356) * input_0(-1.0, -1.0); + result += mat4(-0.032585055, 0.011523459, -0.113642946, 0.028220274, 0.0013212741, 0.10721411, -0.082854204, -0.17628215, 0.074519105, 0.11292627, 0.09772305, -0.26430318, -0.0690758, 0.09057371, -0.03674448, 0.1691627) * input_0(-1.0, 0.0); + result += mat4(-0.13021055, -0.046264622, -0.047089476, -0.23532003, 0.0026730187, 0.03237651, 0.03750922, -0.05465518, -0.045950305, 0.017810455, -0.0059490004, 0.12620832, 0.0834824, 0.027170246, -0.044024434, -0.24162665) * input_0(-1.0, 1.0); + result += mat4(-0.046501692, 0.051608443, -0.046787407, -0.1677224, -0.009558987, 0.01628443, 0.16556777, -0.085865214, 0.1031797, 0.034627143, -0.0038424947, -0.31065223, -0.015272691, -0.010733375, 0.052377272, 0.24394971) * input_0(0.0, -1.0); + result += mat4(-0.18513924, 0.050829593, -0.5204855, 0.037440713, 0.10820351, -0.1408684, 0.022799084, -0.49005008, -0.12121143, 0.020200597, 0.050647076, 0.01652106, 0.23809166, -1.0755874, -0.11696068, -0.54802173) * input_0(0.0, 0.0); + result += mat4(0.00866582, -0.060789205, 0.0933995, -0.017675238, 0.05447972, 0.06202829, -0.056988347, -0.32604578, -0.021068504, 0.09122947, 0.072095536, -0.2543539, -0.14164965, 0.038331132, -0.0952336, -0.13772498) * input_0(0.0, 1.0); + result += mat4(0.020425571, -0.060535975, -0.106806606, -0.063907325, -0.07175783, 0.021974362, -0.09088789, -0.002054625, -0.022525482, 0.03974368, 0.040056333, -0.0063992017, 0.20194732, 0.014272069, 0.031405725, -0.19347358) * input_0(1.0, -1.0); + result += mat4(0.0026615236, 0.037223548, -0.0330253, -0.3195764, -0.09044271, 0.15109403, -0.017875217, 0.14669654, -0.0029027835, 0.030172499, 0.072092004, -0.084758535, -0.045012105, 0.026499867, -0.15068059, 0.10289519) * input_0(1.0, 0.0); + result += mat4(0.022807272, 0.04920889, -0.008246416, 0.09217133, -0.05621849, 0.060126808, -0.055217586, 0.00863456, -0.018587414, 0.014361953, 0.007569132, -0.010889701, 0.005843071, -0.048717357, -0.0771753, -0.3014852) * input_0(1.0, 1.0); + result += mat4(-0.009223528, 0.0227556, -0.04251322, 0.033470698, -0.025735714, 0.014236337, -0.03167015, -0.06601037, -0.021763977, 0.00035248013, -0.031872775, 0.032591347, 0.118278064, 0.0085970545, 0.10375357, -0.27063936) * input_1(-1.0, -1.0); + result += mat4(-0.10000922, 0.0011765907, 0.0104998965, -0.050188884, -0.02653686, 0.0020963731, 0.08928128, -0.07550483, -0.14524743, 0.12771522, -0.29617536, 0.26989022, -0.011612092, -0.008876822, -0.12727956, 0.3425599) * input_1(-1.0, 0.0); + result += mat4(-0.07182975, 0.03361403, 0.00281995, 0.21136701, 0.07360605, -0.047858506, 0.10546292, -0.16489875, -0.04579893, 0.08643454, -0.16173446, -0.1378758, 0.028885283, 0.0023942606, -0.06563449, -0.15175833) * input_1(-1.0, 1.0); + result += mat4(-0.11321641, 0.04210867, -0.121248834, 0.10401813, -0.09363817, -0.1021641, 0.15948252, -0.17501983, -0.16381985, -0.022274869, 0.15076737, -0.14999337, -0.013199143, -0.045562804, -0.031627335, 0.09362244) * input_1(0.0, -1.0); + result += mat4(-0.20699419, -0.0078100874, -0.13765088, -0.14436491, 0.31388384, -0.36455578, 0.49001655, 0.36407188, 0.032519467, 0.050887287, 0.10043371, 0.327169, 0.20131935, 0.027271181, -0.047919814, -0.35408407) * input_1(0.0, 0.0); + result += mat4(-0.2743671, 0.12504533, 0.023745153, -0.20397376, -0.12685673, -0.10960783, -0.018792242, -0.26920426, -0.10599473, 0.07362889, 0.055021558, -0.009482495, -0.010077769, 0.061426222, -0.07952651, -0.34823695) * input_1(0.0, 1.0); + result += mat4(-0.024065094, 0.11245451, -0.05713678, 0.21110867, -0.04348824, 0.01238256, -0.04536728, 0.27143744, -0.27821913, 0.04095339, 0.059715535, 0.27586251, 0.039608497, 0.016416533, -0.04500016, 0.007903513) * input_1(1.0, -1.0); + result += mat4(-0.2010996, 0.04751497, 0.028835783, 0.035493907, 0.093276285, 0.21570864, -0.17566751, -0.1872581, -0.07791755, 0.016909689, 0.051222615, -0.12387711, 0.04864929, -0.03765453, 0.05408171, 0.10073272) * input_1(1.0, 0.0); + result += mat4(-0.13379553, 0.17785756, -0.017850282, 0.339138, 0.44395533, -0.47291481, 0.027443063, 0.23263049, 0.035779685, 0.01683494, -0.022986103, -0.080410935, 0.011061138, -0.00016673878, 0.126336, 0.009428649) * input_1(1.0, 1.0); + result += mat4(0.076941654, -0.02450857, -0.06945992, 0.13873494, 0.026099235, -0.05175983, 0.07795723, -0.18560652, 0.14321712, 0.038574398, 0.31333137, -1.1032802, -0.07023031, 0.037263684, -0.11963083, 0.39143682) * input_2(-1.0, -1.0); + result += mat4(0.061975926, 0.020234099, 0.25295544, -0.23411657, 0.032916695, -0.0136916805, -0.020446764, -0.045966577, -0.16198859, 0.046957027, 0.4038398, -0.06636659, -0.08068573, -0.10563042, -0.30303276, -0.2991123) * input_2(-1.0, 0.0); + result += mat4(-0.10969406, -0.041458115, 0.061452635, -0.009654271, -0.07911808, 0.01215342, -0.009061461, 0.06853654, -0.2217268, -0.045652874, 0.10354165, -0.26203734, 0.05694746, 0.00427805, 0.021950375, 0.082864866) * input_2(-1.0, 1.0); + result += mat4(0.10442787, -0.040980894, 0.15415365, 0.07015536, 0.14971714, 0.024658533, 0.0090595065, -0.10138617, -0.2020643, 0.08126674, 0.19562444, -0.14461014, -0.119000115, -0.05651002, 0.06990004, 0.4884732) * input_2(0.0, -1.0); + result += mat4(-0.09698029, -0.03133791, 0.032034937, 0.32362604, 0.019144034, 0.074194334, -0.053016927, 0.1843537, -0.30245152, -0.3658783, -0.32214764, -0.8865001, 0.18713881, -0.094115525, 0.100035086, -0.32681638) * input_2(0.0, 0.0); + result += mat4(-0.027482588, 0.0332281, 0.032429807, 0.07921957, 0.018684207, 0.04911683, 0.044044256, 0.10555346, -0.0027541786, -0.06695532, 0.11602025, -0.08222386, 0.014817615, 0.105133936, 0.06264083, -0.029902495) * input_2(0.0, 1.0); + result += mat4(-0.14950348, -0.07372963, 0.010841668, 0.12963562, -0.111825526, -0.0011504167, -0.031068215, -0.0007097772, -0.11970935, -0.019899806, 0.030518709, 0.13172604, 0.028071115, 0.062285103, 0.011864938, -0.13132727) * input_2(1.0, -1.0); + result += mat4(-0.056870688, 0.056824666, -0.018458001, 0.31772992, 0.08380712, -0.01086181, 0.08741033, 0.17572524, -0.26843837, 0.048991717, 0.036738995, -0.0012160665, 0.079691365, -0.028113429, -0.12320113, 0.035929203) * input_2(1.0, 0.0); + result += mat4(-0.1291823, -0.002353798, -0.083233565, -0.07876759, -0.03928362, 0.053599693, 0.036847964, 0.04778513, 0.0033156252, 0.037424278, -0.026072856, 0.16403283, -0.008005042, -0.02105109, 0.002283497, -0.019090211) * input_2(1.0, 1.0); + result += mat4(-0.02999419, 0.034403194, -0.031106638, -0.034081, 0.00773595, 0.07488881, -0.051291443, -0.24720965, -0.014117252, -0.018991187, -0.03860562, 0.4043284, -0.01509421, 0.062042307, -0.10433948, 0.020658083) * input_3(-1.0, -1.0); + result += mat4(-0.0847594, -0.033653945, 0.19586933, -0.023708072, 0.089007266, 0.018019294, 0.09021404, -0.08888742, 0.042727217, 0.12700403, 0.21229969, 0.31553507, -0.00049379404, -0.11933076, -0.0036236895, -0.03493083) * input_3(-1.0, 0.0); + result += mat4(0.09650007, 0.004343458, 0.14677715, 0.1901119, -0.08015052, -0.0122474935, 0.0023826926, 0.35921568, -0.0081690345, 0.006390006, 0.057004742, -0.016288657, 0.07716799, 0.009521296, 0.22003834, 0.23289448) * input_3(-1.0, 1.0); + result += mat4(0.014318758, -0.08452227, 0.15779367, -0.20166019, 0.13251166, -0.23218131, 0.16752046, 0.0826134, -0.10773928, -0.07548422, 0.05032049, 0.2363645, 0.11233119, -0.06366013, 0.05233406, -0.18918715) * input_3(0.0, -1.0); + result += mat4(-0.026076034, 0.0754266, 0.011873993, -0.1287422, -0.21076062, -0.061236043, -0.3198004, -0.25716117, -0.11398949, 0.008772184, -0.057385, -0.2697572, -0.06023057, -0.0016578651, 0.10023938, -0.3098485) * input_3(0.0, 0.0); + result += mat4(-0.06140045, -0.009466186, -0.039141063, 0.08007399, 0.10882692, -0.10299406, 0.045159508, 0.2862977, -0.13584125, -0.061951425, -0.01348658, 0.12212212, 0.10610382, -0.010010502, -0.0030544177, 0.21093182) * input_3(0.0, 1.0); + result += mat4(-0.1614284, -0.011550395, 0.021469764, 0.18980391, -0.07462194, -0.041127134, 0.10302041, 0.027818035, -0.024914118, 0.05866569, -0.062355716, 0.4667168, -0.032512765, 0.0022108653, -0.056066, 0.05729817) * input_3(1.0, -1.0); + result += mat4(-0.04270516, 0.042660084, -0.024027998, 0.08660345, -0.07315249, 0.066804916, -0.02095836, 0.072604515, -0.15533307, 0.020089963, 0.11607597, 0.08066477, -0.108215936, -0.016519677, -0.025180105, -0.049422435) * input_3(1.0, 0.0); + result += mat4(-0.21587613, 0.016327588, -0.19205314, 0.041854568, 0.10344907, 0.023362929, -0.016819578, -0.16630788, -0.02008533, -0.050224204, -0.02209448, 0.18128122, -0.042458534, -0.018706925, -0.066728495, 0.0055466257) * input_3(1.0, 1.0); + result += mat4(-0.022051137, -0.005551187, 0.1335496, -0.5761868, -0.005580304, 0.004062255, -0.028553149, 0.119677365, -0.092985444, 0.04541709, -0.10251066, 0.2864736, 0.08546668, 0.0103598945, 0.0071473625, 0.19640116) * input_4(-1.0, -1.0); + result += mat4(0.0335164, -0.026254855, 0.055660885, 0.053310268, 0.006520495, -0.092370145, 0.14938349, 0.17660527, -0.023340821, 0.07274403, -0.16102698, -0.08689865, -0.043788027, 0.13596016, 0.038911115, 0.05005295) * input_4(-1.0, 0.0); + result += mat4(-0.019257095, 0.022361765, -0.05931515, 0.08165079, -0.08356982, -0.013494141, 0.08183874, 0.12096607, 0.06493713, 0.07980843, -0.020405112, -0.063835345, 0.0021070451, 0.038081165, 0.0013182978, 0.0006263512) * input_4(-1.0, 1.0); + result += mat4(-0.13737412, -0.0054894155, -0.026930967, 0.28439152, -0.119950876, 0.064099856, -0.11808719, 0.19612724, 0.14715438, 0.016084313, -0.068932205, -0.12563646, -0.035355758, -0.014808196, 0.038391557, -0.24035513) * input_4(0.0, -1.0); + result += mat4(-0.052170854, -0.120948784, 0.01883616, 0.064365685, -0.1444089, 0.11857727, 0.087240435, 0.07665161, 0.17414722, 0.13635217, 0.0061640926, 0.108491555, 0.081087336, 0.0097961025, 0.005704487, 0.034393836) * input_4(0.0, 0.0); + result += mat4(-0.020552156, 0.0026111177, 0.034696557, -0.14130343, 0.0070109386, -0.03490161, 0.03873806, 0.21662642, -0.002637652, 0.01765184, -0.00040343704, 0.22675368, -0.016469985, 0.022119783, -0.05614964, -0.13679628) * input_4(0.0, 1.0); + result += mat4(-0.07675966, 0.06302714, -0.029794384, -0.17183869, 0.075016044, 0.050052185, -0.0057656574, -0.31931478, 0.08191935, 0.036582164, 0.035237756, -0.16136962, 0.018034251, 0.034001734, -0.0013063323, -0.122122645) * input_4(1.0, -1.0); + result += mat4(0.008075474, -0.029544884, 0.07639594, -0.04738698, 0.032155097, 0.029693171, -0.00046860887, -0.07633806, 0.071062885, 0.039691072, 0.078316785, 0.17734253, 0.04833927, -0.06970975, 0.08018276, -0.2501504) * input_4(1.0, 0.0); + result += mat4(0.053691216, 0.03243194, 0.01870632, -0.10863184, 0.041234344, 0.040465575, 0.04290435, 0.13799348, 0.025950711, -0.006102775, 0.07650623, 0.08934369, -0.08635393, 0.013270911, -0.022592464, -0.36956477) * input_4(1.0, 1.0); + result += mat4(0.006653653, -0.028710485, -0.067314185, -0.11133646, -0.08855596, -0.0005183236, 0.03172571, 0.16079794, -0.090803735, -0.00089074275, -0.25757995, 0.3377029, 0.09094209, 0.02430966, 0.13864978, -0.3357666) * input_5(-1.0, -1.0); + result += mat4(0.06266947, 0.015699686, 0.01372444, 0.23317774, -0.16087519, -0.059613653, -0.009145743, -0.07684841, -0.012168456, -0.044935435, -0.166769, 0.21370465, -0.018291222, -0.05249562, 0.09845221, -0.05303903) * input_5(-1.0, 0.0); + result += mat4(0.00241631, -0.033243522, -0.11788041, -0.21567285, 0.018569386, -0.047989033, -0.053887106, -0.10947086, 0.0781735, -0.0025811498, 0.04610992, -0.16432405, 0.013737217, -0.04823716, -0.09061688, -0.5290585) * input_5(-1.0, 1.0); + result += mat4(-0.18977122, 0.07310573, -0.10480815, 0.1537049, -0.019992877, 0.024873313, -0.1871418, 0.2193254, 0.2179866, -0.054705903, -0.07456335, 0.022488786, 0.00530629, -0.09367831, 0.07401536, -0.41772053) * input_5(0.0, -1.0); + result += mat4(0.046500865, -0.064040475, 0.05029192, -0.31727517, -0.15228303, 0.16136524, -0.119526856, 0.11348177, 0.09540071, 0.1674565, 0.10638597, -0.55668163, 0.07613962, -0.11778803, 0.0022993835, -0.21912964) * input_5(0.0, 0.0); + result += mat4(0.1275477, -0.07460202, -0.056152754, 0.02065574, -0.09086447, -0.030289752, -0.014538285, -0.04804628, 0.2889898, 0.020633508, 0.06523852, -0.0030716418, 0.023925574, -0.015039076, 0.012968043, -0.2823921) * input_5(0.0, 1.0); + result += mat4(-0.035784993, 0.04770281, 0.018320471, 0.41590804, 0.03302098, 0.028609615, -0.06867731, -0.07212767, 0.08315771, 0.013411758, 0.052127298, -0.07427609, -0.00010168437, -0.06095802, -0.09049741, -0.65358174) * input_5(1.0, -1.0); + result += mat4(-0.09374454, 0.0021503547, 0.02037591, -0.4262195, 0.067356184, 0.07526642, -0.06959271, -0.3352232, -0.05007187, 0.00011036037, 0.0038824657, 0.11336468, 0.014370043, -0.054088816, -0.084194206, -0.098977886) * input_5(1.0, 0.0); + result += mat4(-0.004880552, 0.0038290985, -0.04776776, 0.018168505, 0.044783454, -0.020920305, -0.033144016, -0.12593243, -0.0017733612, 0.01721909, 0.043133307, 0.0912196, -0.025378926, -0.049873482, -0.004339841, -1.0069954) * input_5(1.0, 1.0); + result += mat4(0.03155296, -0.017462673, -0.101042725, 0.24378432, 0.04995016, 0.04010324, -0.13515963, -0.26534107, -0.027037043, 0.0091776755, 0.045732222, 0.4179595, -0.016650198, 0.0047639934, -0.048300475, 0.19858128) * input_6(-1.0, -1.0); + result += mat4(0.20557594, -0.028891247, 0.031861186, 0.25317487, -0.046571977, 0.016195904, 0.018410228, -0.44922283, -0.016062131, -0.10420023, 0.16965684, -0.014796679, -0.005167307, -0.018222881, -0.03000928, 0.14604618) * input_6(-1.0, 0.0); + result += mat4(-0.12694, -0.111381106, -0.09853509, -0.34706306, 0.12989777, -0.00799568, 0.026022408, -0.50699884, 0.10566436, 0.08467646, -0.11369002, -0.3158912, 0.035240743, 0.02453981, -0.022429489, -0.04006742) * input_6(-1.0, 1.0); + result += mat4(-0.05738918, -0.031092836, 0.106941365, -0.34151018, 0.09082378, 0.05565791, 0.031835016, -0.6400849, 0.20374826, -0.016046988, 0.1505507, 0.079284966, 0.116990164, 0.00021753338, 0.05288387, -0.1388172) * input_6(0.0, -1.0); + result += mat4(-0.069315456, -0.088494666, -0.08036696, 0.22688414, -0.10714782, 0.00706809, -0.14544483, -0.023015473, 0.012566081, -0.31628704, 0.20731927, 0.034364447, -0.05988777, 0.2662889, -0.25857002, 0.31102324) * input_6(0.0, 0.0); + result += mat4(0.14800015, -0.0007246337, -0.07273154, 0.120038435, 0.18424521, -0.045340814, -0.022024112, -0.1367135, -0.12171071, -0.055685904, -0.017032905, -0.18830086, -0.039492473, 0.07747365, -0.098226875, -0.10770507) * input_6(0.0, 1.0); + result += mat4(-0.031891353, 0.02344446, 0.0755328, -0.06536888, 0.03160245, -0.017305877, 0.0347603, -0.2678808, 0.010588035, 0.02672825, 0.00932346, -0.17094778, 0.0497073, -0.0472368, -0.035586134, -0.5212763) * input_6(1.0, -1.0); + result += mat4(0.017468054, -0.09357546, 0.018472774, -0.40103978, 0.0715536, -0.01221015, -0.015934369, -0.22254351, 0.22629705, -0.1302319, -0.13483492, -0.0832537, 0.2676897, -0.214878, 0.1411058, 0.25360057) * input_6(1.0, 0.0); + result += mat4(-0.021226719, 0.1119195, -0.08749658, -0.046804503, -0.0070029027, 0.05528652, -0.028086409, -0.45152828, 0.11226584, -0.027113259, -0.08967807, -0.579918, 0.06656052, -0.12299614, 0.031134686, -0.26365215) * input_6(1.0, 1.0); + result += mat4(-0.15382268, 0.055988193, 0.004535003, 0.46765557, 0.02452109, 0.056641717, 0.012867249, 0.048517756, -0.13579346, -0.00265123, 0.050947897, 0.58814925, 0.15576115, -0.042618837, 0.36960995, -0.8518341) * input_7(-1.0, -1.0); + result += mat4(-0.032113787, 0.05615406, 0.1404701, 0.0003618194, -0.0035897354, 0.038930926, 0.041105215, -0.04125019, -0.055747226, -0.016167914, -0.051072277, -0.021218289, 0.04659166, -0.152925, 0.20710729, 0.11793584) * input_7(-1.0, 0.0); + result += mat4(0.08180698, -0.11431393, 0.024198474, -0.05169806, -0.1190209, 0.04686177, -0.025321158, -0.2037237, 0.084993765, 0.015887914, 0.03569969, 0.1116852, -0.024088496, 0.005983996, 0.06005779, 0.049020257) * input_7(-1.0, 1.0); + result += mat4(0.19160174, 0.016975937, 0.0049167816, -0.009793646, 0.06138213, -0.08030958, 0.07877325, -0.14790384, -0.010227143, -0.010640507, 0.04346868, -0.11754724, -0.10933178, -0.11961583, 0.053120725, 0.19534121) * input_7(0.0, -1.0); + result += mat4(-0.2182759, 0.1297621, 0.090093814, 0.0372445, 0.112023935, -0.008211986, -0.034219664, 0.28614002, 0.07740069, -0.04722946, -0.035508428, 0.07271698, -0.025007075, 0.2847621, -0.12194248, -0.06657734) * input_7(0.0, 0.0); + result += mat4(0.21968813, -0.14009576, 0.064208105, 0.043011494, 0.12219294, -0.019962786, -0.046697307, 0.2995632, 0.06152954, 0.0019781035, -0.006399126, 0.23814242, -0.010269967, 0.018487366, -0.029153423, -0.1566953) * input_7(0.0, 1.0); + result += mat4(0.09447026, 0.053149782, 0.028972236, -0.10945851, 0.10835455, -0.09713324, -0.030783856, 0.13158128, -0.03554401, 0.038962934, -0.0100917425, 0.21401998, -0.034999225, 0.012523749, -0.04961864, -0.025809633) * input_7(1.0, -1.0); + result += mat4(0.070678815, -0.052811824, 0.065494135, 0.13223806, 0.00044158506, 0.092245094, -0.066900596, 0.2152138, -0.10521395, 0.023592003, 0.08324003, 0.19818999, -0.050427955, -0.060446713, -0.057009608, -0.06423248) * input_7(1.0, 0.0); + result += mat4(-0.09532934, 0.040943418, -0.034992523, -0.012931479, 0.02649814, -0.017335482, -0.06898665, 0.16746365, 0.038792692, -0.034446154, -0.06437278, 0.17017019, 0.04260341, -0.015170386, 0.024102788, 0.15622005) * input_7(1.0, 1.0); + result += vec4(0.030750263, 0.0043177544, -0.021305012, -0.033096574); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf5 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.009588902, -0.03899838, 0.016929545, -0.101282224, -0.013557478, 0.0007025276, -0.02817614, 0.08194354, -0.073296316, 0.1687052, -0.02165122, 0.0015673779, -0.19293994, 0.3249456, -0.008291809, -0.16081993) * input_0(-1.0, -1.0); + result += mat4(-0.00038125346, 0.17917085, -0.04424293, -0.11990347, -0.091581814, 0.085554115, 0.0072883605, 0.16182788, -0.04037217, 0.11656031, -0.010965854, 0.07586023, 0.07510098, 0.47814995, -0.105234444, -0.030640217) * input_0(-1.0, 0.0); + result += mat4(-0.003019305, 0.12698396, 0.03937257, 0.01150669, 0.017120315, -0.025643101, -0.0023413377, -0.029849311, -0.023744615, 0.0881536, -0.031481143, -0.026124379, 0.04992884, 0.026424026, -0.057396412, 0.077535555) * input_0(-1.0, 1.0); + result += mat4(-0.05056107, -0.16999446, 0.008000618, 0.01565379, 0.07064819, -0.17749494, -0.029466363, 0.07482782, -0.19585969, -0.19176574, -0.00015648357, 0.054419335, 0.07548919, -0.25299588, 0.02502714, -0.004625872) * input_0(0.0, -1.0); + result += mat4(-0.7197238, -0.11746269, 0.06886847, 0.06061099, -0.09497057, 0.11497905, 0.057412196, 0.10929339, -0.09142445, -0.25292397, -0.042028572, 0.16713442, 0.36720675, -1.1352617, -0.06724493, 0.22712727) * input_0(0.0, 0.0); + result += mat4(-0.09920531, 0.078704126, -0.035712175, -0.32723352, -0.053780694, -0.0055396524, 0.057941496, 0.109920725, -0.0062821517, -0.27962232, -0.024876628, 0.011913042, 0.019089343, 0.43799987, -0.00724768, -0.047244128) * input_0(0.0, 1.0); + result += mat4(-0.046963282, -0.17299254, -0.0130357575, 0.06933898, -0.1396223, 0.10684164, -0.018500678, 0.11008018, -0.05154899, -0.141261, 0.005931716, 0.057641026, -0.03149156, -0.25025463, 0.01067226, 0.058641825) * input_0(1.0, -1.0); + result += mat4(-0.12821163, -0.41729775, -0.029278586, 0.05078246, 0.08588468, -0.039953765, -0.04188428, -0.14507823, -0.03712677, 0.06642143, -0.027825095, 0.101888, 0.02575545, -0.017077299, 0.0033892777, 0.13586608) * input_0(1.0, 0.0); + result += mat4(0.028324293, 0.02199109, -0.026182862, -0.087613985, 0.066638574, -0.06962722, 0.024025507, 0.12890175, -0.0401964, -0.06824617, 0.002592243, 0.022126317, -0.026087428, 0.296183, 0.0029656254, 0.015153722) * input_0(1.0, 1.0); + result += mat4(-0.026429554, 0.03940763, 0.006054905, -0.04680244, -0.0074011516, 0.09387867, 0.0031278592, -0.047754534, 0.004629192, 0.19982442, 0.021227218, -0.035806436, 0.034218676, -0.044848993, -0.0016546372, -0.05466971) * input_1(-1.0, -1.0); + result += mat4(-0.03614014, -0.2782454, 0.026340798, -0.025169514, -0.060301434, -0.2710991, -0.032774813, -0.108835265, -0.047653057, 0.29010954, 0.052423704, 0.007121004, 0.02714127, 0.2696293, -0.026403291, -0.14711052) * input_1(-1.0, 0.0); + result += mat4(0.02990099, -0.07829201, 0.020053864, -0.030494696, -0.02444258, -0.05343437, 0.045931224, -0.14882685, -0.03997441, 0.048800502, 0.09668546, -0.1777055, -0.007320606, 0.058445062, 0.013911211, -0.05919437) * input_1(-1.0, 1.0); + result += mat4(-0.0860177, 0.0066911704, -0.028159603, 0.07143421, 0.11893122, 0.037570853, 0.023078134, 0.011709218, -0.14235704, -0.22004141, 0.041806694, 0.10368946, 0.060492836, 0.09304399, -0.029929867, 0.010610572) * input_1(0.0, -1.0); + result += mat4(-0.044748396, -0.33396003, 0.10862733, 0.18016413, 0.115221515, 0.0830051, 0.34091535, 0.16315807, 0.0136121325, -0.30304864, 0.020323427, -0.040623244, -0.095923536, -0.12627055, 0.047994073, -0.04274104) * input_1(0.0, 0.0); + result += mat4(-0.12591779, 0.06005221, 0.034461066, 0.092623055, -0.2065409, -0.2832133, 0.043518156, 0.22324143, 0.10129252, -0.0014053494, -0.03739232, -0.03879715, 0.010162556, -0.42233053, -0.032537587, -0.031732548) * input_1(0.0, 1.0); + result += mat4(-0.11814272, -0.17592153, 0.018457811, 0.09793491, 0.03128025, 0.20063508, 0.043331113, -0.048486393, -0.044348814, -0.0834139, 0.016948892, 0.20318134, 0.0094879065, 0.4032973, 0.035194065, 0.022709642) * input_1(1.0, -1.0); + result += mat4(-0.1591044, -0.14391726, 0.031020122, 0.18203883, -0.2704911, -0.23388173, 0.025280068, -0.09514659, 0.12487948, 0.0061841356, -0.096233316, 0.31569225, 0.0660262, 0.42887515, -0.0310588, -0.11466276) * input_1(1.0, 0.0); + result += mat4(-0.012540979, -0.036652505, 0.010463133, 0.09859514, 0.067809224, 0.120350204, -0.14568006, -0.6652311, 0.065006986, 0.33362582, -0.0054788087, -0.097242504, 0.0015064507, -0.032691143, -0.033814058, -0.1917741) * input_1(1.0, 1.0); + result += mat4(-0.04062075, 0.0965283, -0.00475381, -0.1398437, 0.041639756, -0.0630597, 0.00075434183, 0.12285359, -0.11370357, -0.30132207, 0.0069518946, 0.1323885, -0.06370672, -0.073840976, -0.0056294785, 0.031331044) * input_2(-1.0, -1.0); + result += mat4(-0.15989298, 0.27379256, 0.048250455, -0.076771915, 0.04431311, 0.039261997, 0.0017858212, 0.016202584, -0.039700672, -0.33823225, -0.108552836, 0.2513003, 0.03378136, 0.10941465, 0.12532559, 0.010442365) * input_2(-1.0, 0.0); + result += mat4(-0.038357016, -0.034913033, -0.037132133, 0.041475154, -0.006950455, -0.028232906, 0.0012100325, 0.18947096, 0.024902964, -0.6301075, -0.10626409, 0.16900365, -0.028808417, 0.05578559, -0.007935094, -0.109547615) * input_2(-1.0, 1.0); + result += mat4(0.29914603, 0.098459445, -0.013658143, -0.015704485, 0.0878854, -0.15526213, -0.022985501, 0.14709626, 0.2407986, -0.29596633, -0.001972524, -0.055506956, 0.0016699261, 0.111568004, -0.035490807, 0.051538702) * input_2(0.0, -1.0); + result += mat4(-0.059201784, 0.14379127, 0.079103746, 0.13757749, 0.07772889, -0.1478603, -0.016267372, -0.18959247, -0.35834512, -0.1815366, 0.03507611, -0.0027504922, 0.17155476, 0.086708196, -0.057736106, -0.1038599) * input_2(0.0, 0.0); + result += mat4(-0.0062983385, 0.25691214, -0.0155748725, -0.044563998, 0.0019262207, -0.00559938, -0.04031476, -0.1096764, -0.28575793, -0.119589105, 0.04912348, 0.10793061, -0.076162934, 0.06408003, -0.01816915, -0.10329016) * input_2(0.0, 1.0); + result += mat4(0.02355979, 0.2815637, 0.02146387, -0.0063293194, 0.0335779, 0.30137366, 0.0072010523, 0.11135717, -0.05035447, 0.07707532, 0.009420425, 0.08769059, -0.009753497, -0.13001412, -0.0012676629, -0.007434946) * input_2(1.0, -1.0); + result += mat4(-0.046772227, 0.24895789, -0.04171182, -0.11888825, 0.03672705, -0.036077183, -0.03256684, -0.002693654, -0.014571867, -0.071403675, 0.04350327, -0.033174243, -0.029975582, -0.25502875, 0.067624465, 0.039682623) * input_2(1.0, 0.0); + result += mat4(0.06560379, -0.22334622, 0.011108616, -0.05060094, 0.09945399, -0.065696515, -0.013152093, 0.050565608, -0.012356082, -0.16616657, 0.0049539777, -0.047661833, -0.035247784, -0.025374435, 0.0005358599, -0.020558715) * input_2(1.0, 1.0); + result += mat4(-0.050770383, -0.41938803, -0.0017378795, -0.0016328088, -0.035792373, 0.28479147, -0.018536992, -0.10442314, -0.031572785, -0.051703036, 0.00060294307, 0.065108754, 0.05496757, -0.23041739, -0.027432906, 0.10903014) * input_3(-1.0, -1.0); + result += mat4(0.020106964, -0.21964116, 0.016692067, 0.15084024, 0.11703936, 0.052930843, -0.073579475, -0.057438564, -0.0199872, -0.03034747, -0.14250635, 0.043447196, -0.03361909, -0.048836883, 0.03262448, 0.01111891) * input_3(-1.0, 0.0); + result += mat4(-0.032658663, -0.15761982, -0.05863112, 0.06698232, 0.08272491, -0.020137468, 0.0023171878, 0.16090263, -0.06823626, 0.105040655, -0.06445461, 0.019222112, -0.11933432, -0.3739769, -0.06983528, 0.0030756774) * input_3(-1.0, 1.0); + result += mat4(-0.016072886, -0.055182297, 0.018322578, 0.015480234, 0.25123686, -0.30284324, -0.0035195074, 0.044569567, -0.06257612, 0.24195501, 0.015404908, 0.019476898, 0.15140425, -0.5758804, 0.06615731, 0.049424425) * input_3(0.0, -1.0); + result += mat4(0.070750855, -0.5002898, -0.033220906, 0.40070713, 0.029425953, -0.19202107, 0.03303554, 0.1423793, -0.12304208, 0.25194108, 0.09434538, 0.117502, 0.11696597, -0.12926781, 0.04014519, -0.088025555) * input_3(0.0, 0.0); + result += mat4(-0.03622789, -0.060541157, 0.04210529, 0.4416885, 0.065098725, -0.061235376, -0.043958742, 0.00018344786, 0.04013855, -0.15117249, 0.023829406, 0.13995767, -0.118641734, 0.10032103, -0.025520032, -0.009861739) * input_3(0.0, 1.0); + result += mat4(0.060773164, -0.10233408, 0.005092767, 0.027489115, -0.01953268, 0.09891614, -0.013490706, 0.033078846, -0.12320104, 0.29408196, 0.020971319, 0.056891933, 0.05891457, 0.09415721, 0.00042830105, -0.12653475) * input_3(1.0, -1.0); + result += mat4(0.12191899, -0.085370265, -0.00089071, 0.092936136, 0.0098204035, -0.04827068, 0.059269194, 0.04051344, -0.043585397, 0.24511297, 0.018853389, -0.026108118, 0.057467587, -0.18321474, -0.045720708, -0.10834776) * input_3(1.0, 0.0); + result += mat4(-0.050445013, -0.6759713, 0.065385744, 0.23131925, 0.03370568, -0.046150133, -0.040586058, -0.0586796, -0.0023021325, 0.10002199, 0.0044420594, 0.016056623, 0.032467697, 0.11421316, 0.019767383, -0.028862294) * input_3(1.0, 1.0); + result += mat4(-0.02251771, -0.053341866, -0.0129912915, -0.103200786, 0.0018258556, 0.13929641, 0.059277546, 0.023675805, -0.033195708, 0.12264458, 0.016471421, 0.09393759, -0.011468472, -0.13203005, 0.0004991337, 0.08678384) * input_4(-1.0, -1.0); + result += mat4(0.056735214, -0.2919276, 0.07672617, -0.03298054, 0.0129887685, -0.25824133, 0.01361943, 0.12620254, 0.0038530482, -0.17170808, 0.086830065, -0.04328772, -0.0017353974, -0.15772945, -0.030265762, 0.077573374) * input_4(-1.0, 0.0); + result += mat4(0.018223254, -0.21486668, -0.008923902, -0.14746343, 0.045501035, -0.37642032, -0.03493908, 0.08320392, 0.13654912, 0.03598284, -0.012259282, 0.09323703, -0.025970332, 0.11882497, 0.008449598, 0.023347277) * input_4(-1.0, 1.0); + result += mat4(0.17551078, -0.075406946, 0.0098165525, -0.15990415, -0.21390453, 0.20751439, 0.016127614, 0.05509218, -0.12681982, -0.09737286, -0.019393347, 0.022270054, -0.041392747, -0.20399655, 0.00018788694, 0.080071956) * input_4(0.0, -1.0); + result += mat4(0.16228972, -0.23218064, -0.13578047, -0.27715677, -0.109752454, -0.07559149, 0.0469209, -0.055412658, -0.0074718487, 0.021564353, -0.015315757, 0.052272797, -0.10293113, -0.0140440855, -0.071452424, 0.07276075) * input_4(0.0, 0.0); + result += mat4(0.071999855, -0.24003628, -0.049065743, -0.14373082, -0.035968617, -0.22323897, -0.021675762, 0.037784997, 0.16197489, -0.038776252, -0.066967696, -0.009524525, 0.00075815513, -0.088093355, 0.027370742, -0.016376825) * input_4(0.0, 1.0); + result += mat4(-0.032597873, 0.058283597, -0.0039962237, -0.017415732, -0.07936677, -0.31977952, 0.007900514, 0.061164692, -0.057220858, 0.23138116, -0.008867231, 0.08593899, -0.0035974768, 0.19018109, -0.047082797, 0.0576334) * input_4(1.0, -1.0); + result += mat4(-0.023857148, 0.2104482, 0.064012356, -0.0029033013, 0.006036325, -0.063175544, 0.0235605, 0.07671225, -0.06885697, 0.16349107, -0.0027755804, 0.06514816, -0.020732494, 0.12557198, 0.007940385, 0.00056109007) * input_4(1.0, 0.0); + result += mat4(-0.025536899, -0.02351522, -0.038707655, -0.05806695, -0.04611153, -0.06002673, -0.041323252, -0.013114434, 0.054951582, 0.110174574, -0.037664544, 0.012126958, -0.05829328, 0.09269702, 0.02539157, 0.0366036) * input_4(1.0, 1.0); + result += mat4(0.011567116, -0.20340145, 0.061588313, -0.037418664, -0.024474565, 0.16232692, 0.03392312, -0.017305026, -0.011611677, 0.03013744, -0.025723355, -0.10927394, -0.02650882, 0.20257926, -0.024342073, 0.062042933) * input_5(-1.0, -1.0); + result += mat4(0.116651624, 0.045085654, -0.013507585, 0.022431236, 0.074337825, 0.084014505, 0.09687736, 0.06343641, -0.082480974, -0.14981954, 0.041288614, -0.016380468, 0.08717564, 0.040199757, -0.10217826, -0.006685826) * input_5(-1.0, 0.0); + result += mat4(-0.092265606, 0.054258622, 0.060929235, -0.06678127, 0.08863977, -0.27741858, -0.039807003, -0.09076513, 0.06427462, -0.2621884, -0.023305843, -0.20661601, -0.026612975, 0.01577108, -0.059454776, -0.13395992) * input_5(-1.0, 1.0); + result += mat4(-0.14394285, 0.0829871, -0.0041396273, -0.0033058391, -0.11106592, 0.19654146, 0.028813299, 0.0145832095, -0.0945061, 0.1753222, 0.025233015, 0.013419639, 0.2126986, 0.058970578, 0.0055516222, -0.1756022) * input_5(0.0, -1.0); + result += mat4(0.19528939, -0.17439635, -0.05006033, -0.11044655, 0.050030798, 0.11112834, -0.021827126, -0.1069209, -0.10851451, -0.003981606, 0.012296148, 0.24720126, 0.09784108, 0.029442165, -0.028264128, -0.122060016) * input_5(0.0, 0.0); + result += mat4(-0.019434584, 0.31417415, 0.012087337, 0.014562149, 0.11290669, 0.31285807, 0.02510921, 0.08456548, -0.08014344, 0.078893244, -0.02522147, 0.036297902, -0.08861656, -0.016631562, -0.055271544, -0.069259755) * input_5(0.0, 1.0); + result += mat4(-0.0727964, -0.12355376, 0.008825661, 0.04688109, -0.062652566, -0.4634881, 0.0019598403, -0.047776714, 0.03755462, 0.08577676, -0.0021487882, -0.09773339, 0.039696846, 0.15904313, 0.018123066, -0.12972039) * input_5(1.0, -1.0); + result += mat4(0.1291188, -0.02346061, -0.003105238, -0.056483213, -0.03922713, -0.067494646, 0.006252431, 0.067275174, 0.020422777, -0.16667607, -0.0076657953, -0.07289804, -0.02596108, 0.170269, 0.04515324, -0.079404354) * input_5(1.0, 0.0); + result += mat4(0.07769279, -0.013691523, -0.011033086, 0.05103764, -0.0394095, -0.06748362, 0.0032575114, -0.106960036, -0.04859961, 0.025534444, -0.0012604672, -0.06946899, -0.03575452, -0.024811117, 0.026396614, 0.19004595) * input_5(1.0, 1.0); + result += mat4(0.047715724, -0.17883374, -0.02904106, -0.24398205, -0.064721994, 0.2911715, -0.0065794014, -0.337856, 0.093970075, -0.009311946, -0.03862915, -0.08998596, 0.03234203, 0.02542581, 0.035063323, 0.020890826) * input_6(-1.0, -1.0); + result += mat4(0.0025816942, 0.018724952, 0.017525576, 0.05780125, 0.06245153, 0.2508412, 0.0070253327, -0.32708618, 0.105942495, 0.17462116, -0.05534574, 0.015599929, 0.022448447, 0.14604554, 0.007748261, 0.05537804) * input_6(-1.0, 0.0); + result += mat4(-0.028403757, -0.045039125, -0.043326605, -0.07773685, 0.042547967, -0.04468301, -0.07174821, -0.043686427, 0.053933877, -0.018021153, 0.012720827, 0.056144368, 0.009723623, -0.015486554, -0.013494025, 0.096560284) * input_6(-1.0, 1.0); + result += mat4(0.11766273, -0.39480728, -0.007395877, -0.40954208, -0.07200097, -0.00609316, 0.05217071, -0.10940845, 0.058453448, -0.24981698, 0.07428342, -0.11654066, 0.004566477, -0.2955296, 0.14045998, -0.12499683) * input_6(0.0, -1.0); + result += mat4(0.19358987, 0.08120155, -0.008459116, 0.14361228, 0.055152025, 0.39108837, 0.008184739, -0.0516211, 0.03919371, -0.27452454, -0.09473906, -0.089410156, -0.054121155, 0.40879568, 0.29400176, -0.19593918) * input_6(0.0, 0.0); + result += mat4(-0.06879518, 0.009344389, 0.028991919, 0.16173641, 0.0020069552, 0.36098316, 0.011265942, -0.16336386, 0.0106373355, 0.11904338, -0.004552191, 0.13578159, 0.040286474, 0.01375208, 0.12641156, 0.07048418) * input_6(0.0, 1.0); + result += mat4(-0.12233531, 0.20546739, -0.021069495, 0.048161604, 0.015022558, 0.24465117, -0.0006569546, -0.13242629, 0.18332751, -0.84113246, 0.014102028, -0.18050316, 0.052140985, -0.32105032, 0.0064519746, -0.11201879) * input_6(1.0, -1.0); + result += mat4(-0.0056461086, 0.21140341, -0.038844276, 0.06735863, 0.036713287, 0.10575658, 0.0029210788, -0.17516433, 0.17810434, -0.16503848, 0.08401763, 0.048961744, 0.1535252, 0.21070719, -0.07820877, -0.15690397) * input_6(1.0, 0.0); + result += mat4(-0.04155955, -0.074804835, 0.06379082, -0.07647272, 0.00038311156, 0.27074796, 0.0012620242, -0.08551682, 0.13354632, 0.26690555, -0.009583398, 0.037439145, 0.008852554, -0.1431135, 0.062295675, -0.10599371) * input_6(1.0, 1.0); + result += mat4(-0.103490256, -0.09651195, -0.059569053, 0.058180034, -0.07377307, 0.25369132, -0.021782946, 0.03980952, 0.055466026, -0.35642052, 0.008693352, 0.051248707, 0.046255697, -0.083636835, 0.038386457, -0.30111402) * input_7(-1.0, -1.0); + result += mat4(-0.013321759, 0.13228317, -0.20851582, -0.007903512, 0.031274166, 0.06405033, 0.0021478701, 0.06670827, 0.002127052, -0.009462823, -0.019218173, 0.11282693, 0.08464898, 0.23816092, 0.13934429, -0.26783642) * input_7(-1.0, 0.0); + result += mat4(-0.05324815, -0.030298479, -0.0355942, -0.05716647, 0.035690464, 0.14051212, -0.059823573, 0.08753064, -0.014868622, -0.46554917, 0.018229919, 0.0040915455, 0.006134233, 0.05891467, 0.015139328, -0.019414246) * input_7(-1.0, 1.0); + result += mat4(-0.037669513, 0.114046745, -0.01697426, 0.11329941, 0.09807777, 0.15419088, -0.021042015, 0.025730528, 0.03564127, -0.17729755, 0.03705898, 0.033901595, 0.02989025, -0.07818489, -0.041802723, -0.33881587) * input_7(0.0, -1.0); + result += mat4(0.09558752, 0.3048625, -0.13412851, 0.09028211, 0.15742692, 0.4672502, -0.076287225, 0.10435344, 0.030001573, -0.40791956, 0.02124748, 0.13668597, -0.12887056, -0.1986139, 0.1958807, 0.16366482) * input_7(0.0, 0.0); + result += mat4(-0.116086185, 0.123481445, -0.010949957, -0.12277773, 0.0019345547, 0.24894518, -0.019834127, 0.1876742, 0.049122017, -0.29002845, -0.01191649, 0.01070942, 0.023955878, -0.0466839, -0.038983546, 0.0052846787) * input_7(0.0, 1.0); + result += mat4(-0.03583066, -0.006379913, 0.0045610834, -0.08630404, 0.11797421, 0.05835405, -0.01055453, 0.001388697, -0.05395084, -0.52644014, -0.003828815, 0.088265106, -0.031368375, -0.04441287, -0.023718016, 0.06923175) * input_7(1.0, -1.0); + result += mat4(0.0022530248, 0.22098467, -0.010700277, -0.019136118, 0.1520492, 0.17580555, 0.01701584, 0.12761985, 0.036209337, -0.17086796, -0.0104132015, -0.02818492, -0.013100148, -0.11723468, 0.06040539, 0.05480608) * input_7(1.0, 0.0); + result += mat4(0.04068463, -0.10334479, -0.037553724, -0.03158636, 0.059822798, 0.10345526, -0.015989961, -0.042528667, -0.035459973, -0.6149156, 0.02457374, 0.16813855, 0.013074502, 0.046696268, -9.201188e-05, -0.0031497474) * input_7(1.0, 1.0); + result += vec4(0.056281287, -0.023614537, -0.00219126, -0.05579752); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf6 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.07599717, 0.023379253, -0.08561801, -0.041156866, 0.0016759753, -0.04806996, 0.07988803, 0.05633894, -0.01806482, -0.16639149, 0.0050703287, 0.048823204, 0.13707139, 0.105597585, 0.19379355, -0.004771758) * input_0(-1.0, -1.0); + result += mat4(0.48579255, -0.13741253, 0.14182341, -0.011103274, 0.04510093, -0.013892876, -0.024635823, 0.03246823, 0.031516626, 0.019395655, 0.06404647, 0.06282039, -0.21935572, 0.44633615, -0.23635158, 0.019906243) * input_0(-1.0, 0.0); + result += mat4(0.0017809892, 0.056463335, -0.1391093, 0.031257577, 0.03313681, -0.3293635, 0.026415825, 0.00294493, 0.047223542, -0.14188981, 0.07236957, 0.063366786, 0.084245935, 0.01188718, 0.20201011, -0.029180191) * input_0(-1.0, 1.0); + result += mat4(0.064760596, 0.09491926, -0.07531526, 0.013122381, -0.00644634, -0.10278107, 0.41767222, 0.053263746, -0.19016354, -0.20273909, -0.19944006, 0.025274996, -0.1877306, -0.056671605, -0.07103015, 0.10324372) * input_0(0.0, -1.0); + result += mat4(-0.22650716, -0.1814133, -0.10579251, 0.292822, -0.23416737, -0.42302108, -0.45983657, 0.14032999, 0.12103826, -0.32210922, 0.08490075, 0.08281782, -0.5552273, -0.15533637, 0.62001866, 0.0051751705) * input_0(0.0, 0.0); + result += mat4(-0.25152692, 0.12009769, 0.12674773, -0.12404986, -0.14740407, -0.08551633, 0.20556585, 0.017568033, 0.022533515, 0.03883045, -0.04131706, 0.034413397, 0.13352364, 0.3277361, -0.11270883, 0.017507013) * input_0(0.0, 1.0); + result += mat4(0.026146432, -0.034884974, -0.04550465, -0.020880725, 0.096980914, -0.16177423, 0.23503941, -0.09391819, -0.07126971, 0.062630706, 0.07095747, -0.01368493, 0.1427897, -0.0022036228, 0.13495502, -0.04239351) * input_0(1.0, -1.0); + result += mat4(-0.1317198, 0.11217783, 0.14136037, -0.032325298, -0.21286632, -0.2414483, 0.37775293, -0.07121025, -0.013918397, -0.010562889, -0.061429057, -0.0033644934, 0.3212237, -0.03788075, 0.28683674, 0.009874806) * input_0(1.0, 0.0); + result += mat4(0.2387058, -0.13155612, -0.13167033, 0.066660106, 0.07716936, -0.0643102, -0.108310975, 0.032452308, 0.064606674, 0.0028979413, -0.0043981867, 0.034267467, -0.21063232, -0.10400152, -0.037958927, -0.02376714) * input_0(1.0, 1.0); + result += mat4(-0.027179789, -0.033844057, 0.009466725, -0.0042452575, -0.14626688, 0.02104754, -0.13119254, 0.027615955, 0.19117966, -0.045630183, 0.19145055, -0.009682707, 0.06032619, -0.041192986, 0.04855819, -0.054975726) * input_1(-1.0, -1.0); + result += mat4(0.034753405, 0.042109553, 0.017768333, 0.029993834, 0.029618321, 0.19206607, 0.109878816, -0.043329787, 0.017009795, 0.2992761, -0.18021025, 0.04426074, 0.15206872, 0.051930144, -0.13619986, 0.030538619) * input_1(-1.0, 0.0); + result += mat4(0.1297567, 0.03849773, -0.11379416, 0.04732939, 0.13305353, 0.3480832, -0.04564082, 0.038170967, -0.056374878, 0.18934378, 0.19215368, -0.037619688, 0.08831174, 0.38478944, -0.27725273, 0.045753904) * input_1(-1.0, 1.0); + result += mat4(0.06615858, -0.07895885, -0.059806727, 0.038720734, 0.15132932, -0.19365947, 0.24063975, 0.05293516, 0.15821229, 0.054709464, -0.01598545, 0.044349723, 0.20419061, -0.0015463729, 0.031755395, 0.0028608772) * input_1(0.0, -1.0); + result += mat4(-0.16523568, -0.17106533, 0.257106, 0.03012491, -0.22946468, -0.074059196, -0.4846467, -0.16751891, -0.1275485, -0.12559198, -0.016876172, 0.02853492, 0.13141705, -0.06792971, -0.10063233, -0.0056790006) * input_1(0.0, 0.0); + result += mat4(-0.11728948, 0.17708273, 0.058900356, 0.08438814, -0.11597716, 0.20839621, -0.020498935, -0.06339145, 0.35781986, 0.17750056, -0.07141508, 0.03696136, -0.27487123, -0.17841516, 0.16109198, 0.0019424073) * input_1(0.0, 1.0); + result += mat4(-0.08995537, -0.06934136, -0.07891629, 0.0047007063, 0.024727076, 0.13022052, -0.08887782, 0.010164591, 0.067383096, 0.23494081, 0.08456996, -0.009651897, -0.0024643394, 0.057773113, -0.119216576, 0.08313173) * input_1(1.0, -1.0); + result += mat4(0.061614607, -0.20269626, -0.027423058, -0.003610475, 0.0034001973, 0.014975706, 0.58209693, -0.21759824, -0.29112685, -0.054176543, 0.1218776, 0.020505032, -0.3021868, -0.014654448, 0.14634112, -0.022858864) * input_1(1.0, 0.0); + result += mat4(0.19597058, 0.025982756, -0.13195969, 0.09463022, 0.8453811, -0.037558492, 0.22016348, -0.14537708, 0.062302634, -0.020046638, 0.20268743, 0.014730656, -0.08680603, 0.13727824, -0.14771383, -0.051154245) * input_1(1.0, 1.0); + result += mat4(-0.15306513, 0.16781469, -0.4036727, 0.08576692, -0.22703603, 0.06512509, -0.101419665, -0.0049422225, -0.38687196, -0.01447894, 0.11162392, 0.016771415, 0.13198197, -0.11075004, 0.12384322, 0.050135497) * input_2(-1.0, -1.0); + result += mat4(-0.11290216, -0.298841, 0.3145852, -0.015789108, 0.112372234, 0.08076514, -0.056086797, -0.013429742, 0.31884566, -0.592248, 0.34864017, 0.077520095, -0.4368662, 0.27050126, -0.62529796, 0.15276821) * input_2(-1.0, 0.0); + result += mat4(-0.084629714, -0.056538053, 0.06507628, -0.03908677, -0.013114542, -0.07604335, -0.10555657, 0.020303778, 0.24795839, -0.042086393, 0.10451022, 0.026494874, 0.073548086, 0.04254184, -0.077647604, 0.039078996) * input_2(-1.0, 1.0); + result += mat4(0.0629989, 0.04565427, 0.17620584, 0.062476195, 0.09150268, -0.04517321, 0.050185367, -0.037096635, 0.038328975, 0.09776027, 0.081978574, 0.0099084135, 0.057079334, 0.07553189, -0.24453191, 0.03912253) * input_2(0.0, -1.0); + result += mat4(0.23351862, -0.08468059, -0.49212316, -0.042388715, 0.16412556, 0.3346649, -0.2973027, -0.047896363, -0.43634066, -0.17322902, -2.4748273, 0.0623083, -0.31290215, -0.0035524457, 0.46672055, -0.17246759) * input_2(0.0, 0.0); + result += mat4(0.0497437, -0.19991438, 0.040230673, -0.04364928, -0.11236341, -0.07278685, 0.0066225044, -0.054593056, -0.5719779, -1.1848689, 0.4844078, 0.021541001, 0.16701964, 0.012495701, -0.071065165, 0.0073198704) * input_2(0.0, 1.0); + result += mat4(-0.048750713, -0.06501042, -0.033899587, 0.035984926, 0.007895929, -0.116250604, -0.14440802, -0.010274896, 0.03638454, -0.046009302, 0.0288389, -0.018316908, 0.019440029, -0.12088395, 0.0038228293, -0.009959189) * input_2(1.0, -1.0); + result += mat4(-0.19901206, 0.11188208, 0.17103519, -0.054900207, -0.18672036, 0.20021324, 0.07995055, -0.062170047, -0.51021254, -0.29375836, 0.21893072, -0.0038794784, 0.20028548, -0.14938034, -0.07333654, 0.008241878) * input_2(1.0, 0.0); + result += mat4(0.17087324, -0.004148522, -0.2153921, -0.0063466034, 0.14129993, -0.06916724, -0.12458518, 0.007238476, -0.09673425, 0.06015917, 0.006430968, 8.569753e-05, -0.07754229, -0.027958222, 0.06310101, 0.005138039) * input_2(1.0, 1.0); + result += mat4(-0.15116152, 0.03685227, -0.04696748, 0.050632525, -0.22787073, 0.33912647, -0.112062916, -0.04925961, 0.057777125, -0.04051396, -0.119462974, 0.035552356, 0.17421761, 0.088888906, 0.04870997, 0.04950253) * input_3(-1.0, -1.0); + result += mat4(-0.16377047, 0.16487001, 0.039247096, 0.016937062, 0.23731048, 0.02989733, 0.39404103, -0.09319464, 0.033640817, -0.1517386, 0.08481741, 0.050448336, -0.19200514, 0.62134933, -0.5738129, 0.13788258) * input_3(-1.0, 0.0); + result += mat4(-0.047519274, -0.22588299, -0.032734796, -0.02516415, -0.04074259, 0.19522281, -0.056313064, -0.042140044, 0.08943885, -0.008999387, 0.04198444, 0.032133948, -0.37934065, 0.06364095, 0.20022838, 0.032350995) * input_3(-1.0, 1.0); + result += mat4(0.07328011, -0.046309035, -0.049025174, 0.03442989, 0.20919557, -0.13583852, 0.104755946, -0.13825126, 0.14011109, -0.15806538, -0.07532414, 0.06773258, 0.05824512, 0.36267012, -0.081958964, 0.058480524) * input_3(0.0, -1.0); + result += mat4(-0.09105136, -0.087844744, -0.10143204, 0.046055976, 0.017463902, -0.40513417, -0.5552014, 0.1928814, -0.11204439, 0.029212678, -0.16955787, 0.15338477, -0.12882581, 0.3188036, 0.28761774, 0.076060876) * input_3(0.0, 0.0); + result += mat4(-0.17968206, -0.25904843, 0.107952565, -0.06494197, -0.27299616, -0.23476288, 0.108586214, -0.06144823, 0.036407135, 0.23336977, -0.20124285, 0.034018405, 0.0673313, -0.051703077, 0.20600386, 0.03181503) * input_3(0.0, 1.0); + result += mat4(-0.102615006, -0.037042398, -0.039164454, -0.020129345, -0.06595524, 0.12391183, -0.0131610595, -0.051530417, 0.067445785, 0.058917604, 0.040128812, -0.007774333, -0.052089866, 0.07023499, -0.049861837, -0.025671998) * input_3(1.0, -1.0); + result += mat4(-0.07574287, -0.055576865, 0.24639884, 0.015943317, -0.07439697, -0.011036796, -0.051055852, 0.024990683, -0.25693274, -0.08871832, 0.47792807, -0.044746097, -0.05755845, 0.28521007, 0.23005961, -0.024529343) * input_3(1.0, 0.0); + result += mat4(0.069019124, 0.059707798, -0.01728462, -0.0050572385, -0.07504697, -0.123520985, -0.019146604, 0.017849285, -0.074821904, 0.08493353, 0.029255953, -0.038039662, 0.1331799, 0.10917258, -0.059630964, -0.013056722) * input_3(1.0, 1.0); + result += mat4(-0.14831004, 0.007138232, -0.15077965, -0.004947187, -0.0021244343, 0.012439503, -0.034751195, 0.010903311, 0.04194623, 0.12103213, 0.06508994, -0.086561576, -0.07090801, -0.074065015, 0.13162203, -0.030248169) * input_4(-1.0, -1.0); + result += mat4(0.07738512, -0.25124836, 0.2015989, -0.06779718, -0.030641962, 0.13116115, 0.04766851, 0.012956369, -0.04988092, 0.04617324, -0.022980817, -0.08543046, 0.06921921, -0.023188483, -0.102462746, -0.009963628) * input_4(-1.0, 0.0); + result += mat4(0.09169956, 0.06993602, -0.11687878, 0.03677411, 0.049028397, -0.11790776, -0.061727803, -0.0030613863, 0.10428745, -0.049257856, 0.047459774, -0.030634155, 0.10831725, 0.12267343, 0.071870774, -0.009944212) * input_4(-1.0, 1.0); + result += mat4(0.13693167, 0.17623752, -0.011182883, -0.0066566705, -0.023402994, 0.16324551, -0.25719392, -0.021314353, 0.21409677, 0.1401772, 0.056106295, -0.07522749, -0.27899444, 0.051673606, -0.034844365, 0.016912973) * input_4(0.0, -1.0); + result += mat4(-0.009256993, 0.5096821, -0.21564025, -0.15105008, -0.13896753, 0.08569472, 0.014286867, 0.0077933497, 0.052294843, 0.14343908, 0.04422428, -0.10769076, -0.01525401, -0.27793112, 0.1757671, 0.02959913) * input_4(0.0, 0.0); + result += mat4(0.001620384, -0.06426902, 0.12072283, 0.08619043, -0.18285216, -0.28530812, 0.074186705, -0.004371156, 0.0077756816, -0.06651921, 0.03917319, -0.04946204, 0.19530271, 0.24929066, -0.06697466, 0.020062502) * input_4(0.0, 1.0); + result += mat4(0.06422224, -0.09655229, -0.10592678, 0.071511514, 0.21740672, -0.10797364, -0.08032212, 0.03836443, 0.04162861, -0.08313794, 0.06474184, -0.013666202, 0.1511346, -0.083683364, 0.0663309, -0.010948696) * input_4(1.0, -1.0); + result += mat4(0.009884894, -0.13469808, 0.04406138, 0.055731647, 0.067574285, -0.040288985, 0.026402563, 0.01766734, 0.059647813, -0.011698412, -0.03105301, -0.015664194, -0.081152156, -0.1023903, 0.091294296, -0.00016241307) * input_4(1.0, 0.0); + result += mat4(0.017804226, -0.047023624, -0.043936826, 0.011140982, -0.0010837681, -0.09349378, 0.08326718, -0.003133601, -0.037586078, 0.06297765, -0.016529428, -0.023454452, -0.046149988, 0.106246956, 0.02085415, 0.025978226) * input_4(1.0, 1.0); + result += mat4(0.06724344, -0.17742229, -0.05907171, -0.02683249, 0.12873295, -0.023059027, 0.112853944, -0.054950178, 0.28603354, 0.2701349, 0.068131514, 0.04873468, -0.1237557, 0.08636233, -0.013956465, 0.012834359) * input_5(-1.0, -1.0); + result += mat4(0.023086589, -0.41285494, 0.04360965, 0.02918027, -0.14578813, 0.10155055, -0.18334298, -0.023202254, -0.3339991, 0.3687124, -0.15928878, -0.00951809, -0.0026382585, -0.027962795, 0.08291595, 0.039464056) * input_5(-1.0, 0.0); + result += mat4(-0.06848415, 0.15695894, -0.22889619, 0.01775595, 0.07389064, 0.026121318, -0.01938063, -0.012007393, 0.086629495, -0.15988189, 0.04793897, -0.0019954133, -0.023285232, -0.015576603, -0.05620997, -0.012169666) * input_5(-1.0, 1.0); + result += mat4(0.14322919, -0.067058474, -0.03976392, -0.008347131, -0.09646369, 0.05001079, 0.14601022, -0.02238502, -0.0677187, -0.09421554, -0.005103228, 0.036639564, -0.16028982, -0.2329975, 0.035616126, 0.026953196) * input_5(0.0, -1.0); + result += mat4(-0.0889904, -0.14992054, -0.040931847, 0.012851148, -0.06368608, -0.10301878, 0.08952361, -0.029984357, 0.22076602, 0.104744904, 0.13995124, 0.040216748, 0.19703424, -0.14631161, -0.1057381, -0.004273362) * input_5(0.0, 0.0); + result += mat4(0.055475343, 0.034315288, 0.31274456, -0.04229872, 0.02048422, 0.11383929, 0.12652741, 0.06388518, -0.07360146, -0.40581504, 0.18958095, 0.03486353, 0.025385933, 0.13226672, -0.08550284, 0.014877892) * input_5(0.0, 1.0); + result += mat4(-0.099071965, 0.12766622, -0.051066544, 0.00575929, 0.11305978, 0.07210843, 0.26862353, -0.020565767, -0.027333137, -0.012548735, 0.04482214, 0.005524291, 0.07740477, 0.086887896, 0.03896399, -0.022622874) * input_5(1.0, -1.0); + result += mat4(-0.0902807, 0.03561326, -0.09682817, 0.046344012, 0.19595078, 0.075963914, -0.30342618, 0.08658348, 0.15198162, 0.21813832, -0.007638376, 0.0043365713, -0.050802376, -0.31169084, 0.026966205, 0.037025988) * input_5(1.0, 0.0); + result += mat4(-0.109048866, -0.13154714, 0.05626198, 0.0015175699, 0.018296143, -0.19635083, 0.022093363, 0.049640458, -0.023748713, 0.22979246, -0.15612723, -0.0056926953, -0.032217797, 0.123993285, 0.05750181, -0.0024698472) * input_5(1.0, 1.0); + result += mat4(-0.17176303, -0.23768969, -0.1526058, 0.057771083, 0.11053047, -0.08763707, 0.0073784185, 0.015489839, 0.08842304, 0.17732552, 0.04325819, 0.025574662, 0.07635747, -0.068767965, 0.052338198, -0.0032605322) * input_6(-1.0, -1.0); + result += mat4(-0.22117563, 0.00029122492, -0.1319596, -0.05347148, 0.12131057, -0.07564802, 0.02454945, -0.009587077, -0.7189421, 0.5143138, 0.120622374, 0.033949956, -0.06299668, -0.10967063, -0.09495926, 0.030373033) * input_6(-1.0, 0.0); + result += mat4(0.003966125, -0.24520317, 0.06416679, 0.008719461, 0.015349014, -0.27625898, 0.2645116, -0.03102307, 0.1201189, 0.45801488, 0.07562251, -0.06426708, -0.0632063, -0.15502918, 0.06298276, -0.04251013) * input_6(-1.0, 1.0); + result += mat4(0.28113285, 0.39932713, -0.09828458, -0.022039125, -0.04552581, -0.07505877, 0.005695679, -0.02759675, -0.43609318, -0.17680411, 0.08512327, 0.04179877, -0.2621491, 0.0023085754, -0.084535725, -0.009740206) * input_6(0.0, -1.0); + result += mat4(0.13353372, 0.14579594, 0.12564032, 0.015599277, 0.12658015, -0.07125824, -0.6375788, 0.071085654, -0.28995585, -1.3417602, 0.54871666, -0.08557348, 0.413598, 0.037240367, 0.2764587, -0.0014575318) * input_6(0.0, 0.0); + result += mat4(0.061889153, 0.017117977, -0.11401107, 0.054162133, 0.069871075, -0.03500413, 0.07774384, -0.0382046, 0.3045956, 0.7196653, -0.102988854, -0.0004197928, -0.094137914, -0.048411347, -0.0714818, 0.043895606) * input_6(0.0, 1.0); + result += mat4(-0.07906212, -0.17601317, -0.21282254, 0.031368386, 0.0729178, -0.10418266, 0.228624, -0.048233464, -0.012065292, 0.15373307, 0.36056593, -0.074829765, -0.16914853, 0.16297695, 0.1677321, -0.03063475) * input_6(1.0, -1.0); + result += mat4(-0.07641541, -0.003536475, 0.15876605, -0.016802855, 0.013681993, -0.14429104, 0.016355231, -0.03348488, 0.26211143, -0.09175453, 0.09731528, -0.059953727, 0.124890335, 0.012099567, -0.18064144, -0.06326772) * input_6(1.0, 0.0); + result += mat4(0.11314932, 0.041122787, -0.050913896, 0.0053205616, 0.14743394, -0.024682688, -0.022204459, 0.059528884, -0.41496098, 0.33357593, 0.11877282, 0.027601952, -0.17210479, 0.06988828, 0.12673412, -0.017726343) * input_6(1.0, 1.0); + result += mat4(0.088631324, -0.025775164, -0.077861324, -0.0023252522, 0.043192312, -0.040464763, 0.040104408, -0.004278994, -0.03279376, -0.002451255, 0.14438365, 0.06787635, -0.23124312, -0.22518422, 0.009003334, -0.11664275) * input_7(-1.0, -1.0); + result += mat4(-0.04810162, 0.105161816, -0.08899827, 0.057431944, 0.14697914, -0.04470563, 0.1869177, -0.041257538, -0.2156573, -0.12334402, -0.34410194, -0.007242083, 0.13308851, -0.29862627, 0.32068005, -0.09663495) * input_7(-1.0, 0.0); + result += mat4(-0.21567868, -0.1099187, -0.1498133, 0.08065473, -0.0010844345, 0.023322448, -0.12037134, -0.0065241163, -0.14433065, -0.2349035, 0.30575755, 0.0027146377, -0.13247304, 0.007572004, -0.063232005, -0.023107903) * input_7(-1.0, 1.0); + result += mat4(-0.111197345, -0.16105945, -0.06874881, -0.059519675, 0.05804612, -0.13147295, -0.17513579, 0.060770158, -0.25104082, -0.12536341, -0.26466405, -0.01751702, 0.083914176, 0.11096252, 0.1901947, -0.08718911) * input_7(0.0, -1.0); + result += mat4(0.027923824, -0.052306093, 0.053231463, 0.056582432, -0.17101876, -0.07464509, -0.37220192, -0.016735319, -0.13214646, 0.07864257, 0.32263246, -0.05571591, -0.051379472, 0.3041363, -0.37810993, 0.17453592) * input_7(0.0, 0.0); + result += mat4(-0.052363537, -0.10814403, 0.050617997, -0.09337733, 0.18315125, -0.038939152, 0.036023833, -0.038080778, 0.07103572, 0.043753024, -0.15526342, -0.018705685, 0.16253279, 0.045937844, -0.026511945, 0.027364986) * input_7(0.0, 1.0); + result += mat4(-0.0060878396, 0.035121646, 0.2607931, -0.010938658, -0.019205753, -0.20737267, 0.0074638682, 0.018145513, 0.008603154, -0.00055180286, 0.12495966, -0.011542479, 0.059859745, -0.19586259, -0.11626189, 0.0014709359) * input_7(1.0, -1.0); + result += mat4(0.16219127, 0.07048819, -0.3517679, 0.035199177, 0.116137, -0.060839627, -0.13327631, -0.020783992, 0.033597834, -0.118434265, -0.07789657, -0.015166921, -0.010424383, -0.03513798, -0.02778769, 0.04353893) * input_7(1.0, 0.0); + result += mat4(-0.004832973, 0.10311928, 0.12313064, -0.02007962, -0.061081067, -0.133639, 0.057517532, -0.061686676, -0.31537107, -0.14702144, 0.027188664, 0.0039215735, -0.049177468, -0.0054993033, 0.07056267, -0.0063069705) * input_7(1.0, 1.0); + result += vec4(0.009918891, 0.021933526, -0.04319868, 0.019845583); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-3-ReLU) +//!HOOK LUMA +//!BIND conv2d_2_tf +//!BIND conv2d_2_tf1 +//!BIND conv2d_2_tf2 +//!BIND conv2d_2_tf3 +//!BIND conv2d_2_tf4 +//!BIND conv2d_2_tf5 +//!BIND conv2d_2_tf6 +//!BIND conv2d_2_tf7 +//!SAVE conv2d_3_tf7 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_2_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_2_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_2_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_2_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_2_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_2_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_2_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_2_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.0017388423, -0.049047276, 0.004338109, 0.0052733044, -0.025220951, 0.034490436, 0.003960159, -0.08387266, 0.08258329, 0.043472823, -0.013580945, 0.022402277, -0.09666649, -0.015453945, -0.02872893, -0.36294174) * input_0(-1.0, -1.0); + result += mat4(0.08671402, -0.06759538, -0.029140905, -0.043868724, -0.058866534, 0.057387628, -0.018656256, -0.061100274, -0.15707168, 0.038220476, 0.0024188536, -0.05627616, 0.0010665093, 0.04427279, 0.060951617, -0.23820123) * input_0(-1.0, 0.0); + result += mat4(0.10521332, -0.002015971, -0.01667879, -0.0016494078, 0.004924943, -0.0044405344, -0.00044870612, -0.078383945, 0.031130798, 0.0994651, 0.00052388734, -0.03580381, -0.020539818, 0.07900012, -0.010876706, -0.21508797) * input_0(-1.0, 1.0); + result += mat4(0.023686683, 0.032617785, -0.0009570242, 0.036869727, -0.0115010245, 0.14362729, -0.006398365, -0.07233724, -0.00026266434, -0.002164864, 0.019356541, -0.039211128, 0.095187224, 0.27547225, -0.039596867, -0.006328225) * input_0(0.0, -1.0); + result += mat4(-0.23276038, -0.28070903, -0.0017158191, -0.17336076, -0.04969518, 0.11099693, -0.0306312, -0.11595496, -0.040157434, 0.16665587, -0.018501284, 0.028105177, 0.42068702, 0.31449306, -0.01851161, 0.26714227) * input_0(0.0, 0.0); + result += mat4(0.16736107, -0.13842008, -0.018092072, 0.14798917, -0.0772725, 0.071658164, 0.0011966535, -0.13832529, 0.057540704, 0.025774237, -0.011216662, -0.15767947, 0.10910624, -0.048691228, -0.05017322, 0.014380956) * input_0(0.0, 1.0); + result += mat4(-0.038854316, -0.059016217, -0.029554255, 0.049707063, -0.10334981, 0.2670923, 0.058516156, 0.015777476, 0.048466753, 0.15393652, -0.013971577, -0.08425548, -0.0077327755, -0.0230373, -0.041496735, -0.013753853) * input_0(1.0, -1.0); + result += mat4(0.01548749, -0.10475687, 0.004964004, 0.42657828, -0.0192582, -0.004392944, 0.030588895, 0.13474101, 0.046677727, 0.106326774, 0.004107601, 0.053251043, -0.07221562, -0.08736448, -0.054487444, 0.0551539) * input_0(1.0, 0.0); + result += mat4(-0.06790859, -0.08432355, 0.03263825, -0.33951673, -0.02886705, 0.17270997, 0.021649497, -0.011408686, 0.079070754, 0.15037875, 0.0037578167, 0.07156612, 0.092333235, -0.011832095, -0.073877655, 0.13660572) * input_0(1.0, 1.0); + result += mat4(-0.011019292, 0.03811854, -0.01593074, 0.081643336, -0.0685683, -0.0038453294, 0.026754191, -0.042908415, -0.035247006, 0.04344493, 0.0034507455, -0.09915933, -0.05714995, -0.0017552933, 0.0043891612, -0.074571945) * input_1(-1.0, -1.0); + result += mat4(0.014373926, 0.014406703, -0.0050811195, -0.05959172, 0.032839414, -0.08885821, -0.024136344, -0.06614876, -0.18782058, 0.11425449, -0.0051142415, 0.011017181, -0.07968371, 0.024242487, -0.010766019, 0.011581328) * input_1(-1.0, 0.0); + result += mat4(-0.035131164, -0.026623521, -0.012387294, -0.018820347, 0.0007577177, -0.07510373, 0.0065152086, -0.18126874, -0.036283016, 0.06649086, 0.023210667, 0.07419644, -0.058515083, 0.09227525, 0.013376828, 0.08238831) * input_1(-1.0, 1.0); + result += mat4(-0.11660822, 0.075965, 0.01657813, -0.021264834, 0.07737246, -0.11686163, -0.034304038, 0.1756835, -0.39027184, 0.058017638, -0.023992648, -0.15709653, 0.18266204, -0.0012679273, 0.0027775655, -0.0854467) * input_1(0.0, -1.0); + result += mat4(-0.2978821, 0.08227548, -0.052626092, -0.038710985, 0.36975378, 0.13073812, 0.2847398, -0.014219383, -0.077250876, -0.6243496, -0.03220705, -0.0923502, -0.09789683, -0.10174016, 0.02870571, 0.1461947) * input_1(0.0, 0.0); + result += mat4(-0.18703733, 0.058486506, -0.024188725, -0.026456455, 0.20758197, -0.10443481, -0.17301053, -0.45673722, -0.37947413, 0.17321774, 0.034389168, -0.15016067, -0.006225338, 0.017232656, -0.01806931, 0.12219239) * input_1(0.0, 1.0); + result += mat4(-0.057093173, -0.27204844, 0.00014847286, -0.18909863, -0.22522601, -0.09573705, -0.028098036, -0.019210925, -0.09092085, 0.26706004, -0.07522089, -0.073800266, 0.008882187, -0.1590057, -0.032073367, 0.122066915) * input_1(1.0, -1.0); + result += mat4(-0.18951662, -0.09496859, -0.07449348, -0.44582543, -0.10103148, 0.1391227, 0.021047803, -0.1278823, 0.041836623, -0.023647146, 0.053329147, -0.39818344, 0.015327743, 0.06595288, -0.015835129, -0.17125176) * input_1(1.0, 0.0); + result += mat4(-0.13216287, 0.015509612, -0.045405585, -0.5074396, 0.58338827, -1.8822608, 0.03310244, 0.04564067, -0.005729526, 0.15108745, -0.008342433, -0.06349383, 0.044119287, -0.11033718, 0.022663515, -0.20046777) * input_1(1.0, 1.0); + result += mat4(-0.06342601, -0.06241964, 0.0057916217, 0.07559923, -0.04391817, 0.04007056, -0.0016505131, -0.009214428, -0.11414286, 0.026998254, 0.0013690406, -0.14999364, 0.14250018, 0.108346276, -0.016659385, 0.14826642) * input_2(-1.0, -1.0); + result += mat4(-0.0010963924, -0.027901037, -0.023459654, -0.11251442, -0.065472074, -0.10173077, 0.0036785307, -0.06468595, -0.12973647, 0.10154965, -0.022546604, -0.4781788, -0.2950488, -0.03598272, -0.030377343, -0.06496988) * input_2(-1.0, 0.0); + result += mat4(0.025934573, -0.010820773, 0.019019183, 0.0152330315, 0.07658865, 0.060785532, 0.0036874516, 0.015491672, -0.005464051, 0.0187084, 0.022758657, -0.19493209, 0.15065686, -0.02363115, 0.015835967, 0.063631676) * input_2(-1.0, 1.0); + result += mat4(0.18082675, -0.09388583, -0.015277021, -0.060535718, -0.020926325, 0.03666166, 0.0088888975, 0.08809116, 0.02818909, 0.3352881, -0.034435786, -0.08484149, 0.06962781, -0.14048094, 0.02983613, 0.22815724) * input_2(0.0, -1.0); + result += mat4(0.12521932, -0.021870103, 0.0127385305, 0.024242885, -0.15307604, -0.21096615, -0.059051365, 0.15660252, 0.007977631, 0.2214171, 0.04091446, -0.22171733, 0.42347404, -0.12311866, -0.025950655, -0.14577796) * input_2(0.0, 0.0); + result += mat4(0.024120137, 0.07838565, 0.004376246, 0.0029015527, 0.0020238978, 0.03528475, -0.01992779, 0.05047519, -0.0020430542, 0.059694372, 0.0166052, -0.04700624, 0.037486915, 0.058483496, -0.012139413, -0.19938113) * input_2(0.0, 1.0); + result += mat4(-0.013124689, 0.06930529, -0.030992232, 0.08526959, -0.023442052, -0.023021752, 0.007764439, -0.07478708, -0.02505548, 0.056666493, -0.015474186, 0.089882396, -0.025774555, 0.026360437, 0.012719489, 0.046364132) * input_2(1.0, -1.0); + result += mat4(0.0682241, 0.005431916, -0.05229786, 0.01747427, 0.12911157, 0.040763862, 0.009840765, 0.3226957, -0.060698267, 0.27811497, -0.01874196, 0.051078834, -0.07581647, 0.023503967, 0.0027115608, 0.029812902) * input_2(1.0, 0.0); + result += mat4(-0.13146722, -0.011199158, -0.012179225, -0.03970725, -0.04828051, 0.001879806, 0.0406915, -0.03883202, -0.061195344, 0.075389735, 0.03178286, 0.010571643, 0.0006849235, 0.015205976, -0.014033351, 0.062105596) * input_2(1.0, 1.0); + result += mat4(-0.034016307, -0.11506353, -0.0016339133, -0.017487386, 0.13797049, -0.023460606, 0.018022424, 0.037293673, -0.16081825, 0.03448153, 0.0096015185, -0.07987977, 0.037266, 0.038987547, -0.010453962, 0.16385941) * input_3(-1.0, -1.0); + result += mat4(-0.12304902, 0.05477457, 0.0042619095, 0.039882515, -0.046165317, -0.06865974, -0.03357685, -0.13510026, -0.041900057, -0.036531877, -0.015021879, 0.028283695, -0.099050365, 0.014805296, -0.012155163, -0.05069584) * input_3(-1.0, 0.0); + result += mat4(0.002805927, -0.087344974, -0.029660668, -0.07893047, -0.11364271, -0.0016413771, 0.014352926, 0.011916838, -0.07457704, -0.010882729, -0.014537443, -0.19088791, 0.09935223, -0.0889477, 0.016380146, -0.12754993) * input_3(-1.0, 1.0); + result += mat4(-0.017552027, 0.029264504, -0.016606292, -0.0004970396, -0.12149487, -0.05565586, 0.011455959, -0.087603495, 0.33934122, 0.07075775, -0.018699028, 0.20001774, 0.08529593, -0.22256179, -0.015206028, -0.101511136) * input_3(0.0, -1.0); + result += mat4(0.036828455, 0.03197035, 0.011859844, 0.05851797, -0.058352537, 0.22097394, 0.13634339, 0.34887397, 0.46461466, 0.2509333, -0.017702194, 0.109298706, 0.25044823, 0.0667823, -0.026972102, -0.11580808) * input_3(0.0, 0.0); + result += mat4(0.09310882, 0.064838715, -0.009437732, 0.024928903, -0.07220522, 0.017204752, -0.028724296, -0.013580092, 0.0015244193, 0.064939894, 0.026790613, 0.20363423, 0.13912666, -0.00065657165, 0.028815756, -0.27087298) * input_3(0.0, 1.0); + result += mat4(-0.09574436, 0.07356858, -0.006458977, 0.020605294, -0.008477206, 0.082485326, 0.010388488, -0.045806594, -0.1279421, 0.01030317, -0.020679135, 0.22229303, 0.013126717, 0.058310647, -0.0014885755, -0.0810459) * input_3(1.0, -1.0); + result += mat4(0.050867934, -0.11045171, 0.009825569, 0.23697443, -0.13907216, -0.06955969, -0.1483839, -0.33244705, 0.036474038, -0.00435625, -0.07020543, 0.23629637, 0.018760724, -0.038809378, -0.0093474435, 0.045980364) * input_3(1.0, 0.0); + result += mat4(-0.12031673, -0.06785326, -0.0023600343, 0.49126807, -0.038728617, 0.021725431, -0.055120673, 0.10959517, -0.03343674, 0.013660684, 0.02197682, 0.2571458, -0.011851914, 0.0060758735, 0.09278546, -0.036992576) * input_3(1.0, 1.0); + result += mat4(-0.027021179, 0.0035176147, 0.014566675, -0.15189055, 0.049388267, -0.10712117, -0.012099186, 0.09202937, 0.1356116, 0.15588014, 0.00039501095, 0.01861388, -0.041055858, 0.052000854, 0.010838993, -0.037828468) * input_4(-1.0, -1.0); + result += mat4(0.0944604, -0.14233701, -0.021359427, -0.058758788, -0.054034363, -0.005576373, 0.0037898517, -0.0737183, 0.032037657, 0.08907967, 0.0024900718, -0.030635832, 0.025086058, 0.06517899, -0.004349528, -0.02014033) * input_4(-1.0, 0.0); + result += mat4(0.07026746, 0.031837255, -0.032566253, -0.008488745, 0.020865997, -0.0148564, -0.005740741, -0.04708412, 0.06007415, 0.011537824, -0.022915661, -0.0016690034, -0.04816945, 0.027585592, 0.0014618222, -0.070787266) * input_4(-1.0, 1.0); + result += mat4(-0.09559482, 0.06458778, -0.00070913706, -0.09081176, -0.026536431, -0.094124034, -0.027184563, -0.034737915, -0.01474247, -0.051839408, 0.02821636, -0.15158974, 0.04037761, 0.1480626, 0.012432832, -0.11578202) * input_4(0.0, -1.0); + result += mat4(0.009704166, -0.292232, 0.02831893, -0.0066644284, -0.08645354, 0.26859036, -0.0016282073, -0.076562285, -0.021007467, -0.11257801, -0.018417709, -0.052797608, 0.25885913, 0.04312093, -0.006030286, 0.13157335) * input_4(0.0, 0.0); + result += mat4(-0.16030113, -0.096442476, -0.02790656, -0.10456412, 0.0074979374, -0.008912648, -0.018031428, 0.05801171, 0.0055558975, 0.07550305, 0.012425791, -0.11412261, -0.09342363, 0.08216132, -0.021736927, -0.10203578) * input_4(0.0, 1.0); + result += mat4(-0.00088206853, -0.074279025, -0.022380989, 0.038795404, 0.044489205, -0.034530733, -0.020802649, 0.18681987, 0.11512061, 0.12405351, 0.028400224, -0.051806193, 0.028441772, 0.11742727, 0.017005406, -0.12028551) * input_4(1.0, -1.0); + result += mat4(0.07328082, 0.0545749, -0.02713321, -0.14684792, -0.093758434, 0.027562419, -0.05565016, 0.19817263, 0.09821165, -0.009611896, 0.03399736, 0.0039014337, -0.045332395, 0.04350701, 0.035565097, -0.15325044) * input_4(1.0, 0.0); + result += mat4(0.14463368, 0.07514305, -0.12973048, 0.15306956, 0.080093525, 0.0056651216, -0.035530236, -0.013880243, -0.020382617, 0.13091597, 0.034537587, -0.079529636, 0.02800089, 0.023329603, -0.06997473, 0.25660142) * input_4(1.0, 1.0); + result += mat4(0.020856943, -0.045925163, 0.013741459, 0.03285421, 0.005459895, -0.020936886, -0.0022965276, -0.027401015, 0.08891045, 0.023657214, -0.025088431, 0.0637871, -0.038537227, -0.0289985, 0.0147263, 0.064894654) * input_5(-1.0, -1.0); + result += mat4(0.20351918, 0.09792796, -0.012560335, 0.14700858, 0.20951526, -0.033054195, -0.02342402, -0.064146586, -0.09732949, 0.056988537, 0.0037646787, 0.0378819, -0.02112733, 0.03286054, 0.0047143186, -0.05699181) * input_5(-1.0, 0.0); + result += mat4(-0.048611857, 0.04530711, 0.011462831, 0.1168222, 0.17324345, 0.024310458, 0.025185, 0.013537768, -0.084530346, -0.10574109, -0.0060788887, -0.046156183, 0.017663624, -0.04031507, 0.0013858584, 0.015022614) * input_5(-1.0, 1.0); + result += mat4(-0.12778431, -0.2005999, -0.013676572, -0.2087813, -4.1701715e-06, 0.056141827, 0.017315106, -0.0058126925, -0.016938075, -0.14242059, 0.0038073005, 0.15064262, 0.17285872, 0.1071193, -0.014142159, 0.06832963) * input_5(0.0, -1.0); + result += mat4(-0.07923236, -0.19833688, -0.016415449, 0.16549483, -0.23795433, -0.13484794, -0.03373968, 0.017225273, -0.43909088, -0.105938874, -0.050178684, -0.16818525, 0.13959825, 0.02415829, 0.04374043, 0.09678836) * input_5(0.0, 0.0); + result += mat4(-0.09194405, -0.10298907, 0.017496232, 0.16707982, -0.1901408, 0.047252998, -0.036083013, 0.2922883, 0.17098017, -0.020086776, -0.01383302, -0.10567273, 0.08535381, 0.0008739472, -0.0044371346, 0.07563583) * input_5(0.0, 1.0); + result += mat4(-0.008836243, -0.18106265, -0.014966318, 0.041843764, 0.0534721, -0.15474343, -7.723129e-05, 0.047839243, 0.031449642, -0.02878769, 0.01009379, -0.17559631, -0.036660735, -0.062438823, 0.0025882672, 0.25022227) * input_5(1.0, -1.0); + result += mat4(-0.006462643, 0.11867606, -0.030285738, 0.23680596, -0.06735392, -0.016574912, -0.012952145, 0.0087946225, 0.005926421, 0.16492134, 0.006539428, -0.13153702, -0.11190809, -0.042796373, 0.02176677, 0.21237195) * input_5(1.0, 0.0); + result += mat4(0.06258472, -0.1391719, -0.08467678, 0.03448576, -0.049619418, 0.110328704, 0.0011634483, -0.2825352, 0.055083077, 0.00046748342, -0.030030893, -0.18515256, -0.065865435, 0.012351377, 0.026458485, 0.11311713) * input_5(1.0, 1.0); + result += mat4(-0.05993837, 0.1335624, 0.022752125, 0.090433896, 0.015315162, -0.0709319, -0.012664863, -0.032269455, -0.11289165, 0.099570274, 0.0018807728, 0.08870211, 0.060269263, 0.007527868, -0.016137708, 0.04460543) * input_6(-1.0, -1.0); + result += mat4(-0.04129262, 0.012386532, -0.028866088, 0.13854967, -0.17015834, 0.18058112, 0.012251548, -0.11222418, 0.10177799, 0.065404005, 0.025407478, 0.16923696, -0.013836889, 0.04881087, 0.008801317, 0.047500394) * input_6(-1.0, 0.0); + result += mat4(-0.04152075, 0.015348628, -0.012089574, -0.17106965, 0.17090693, -0.05628274, -0.004932568, -0.08627554, -0.09474401, -0.08091279, -0.00010281241, -0.041085307, -0.009492448, 0.032720182, 0.0026192046, 0.097742796) * input_6(-1.0, 1.0); + result += mat4(0.26330498, -0.22744635, -0.005129682, 0.08668233, -0.021550896, -0.11112745, -0.006577492, 0.03610606, -0.021097874, 0.21642874, 0.012496459, 0.170786, 0.063879475, -0.030391248, -0.039228242, -0.03326173) * input_6(0.0, -1.0); + result += mat4(0.09778075, 0.04006504, 0.050401244, 0.15655103, -0.039644368, 0.12916279, -0.005986444, 0.13432413, 0.5195646, 0.23157531, 0.061052773, -0.12300327, -0.28855228, -0.03910495, 0.032476295, 0.08739948) * input_6(0.0, 0.0); + result += mat4(-0.011854389, 0.12581569, -0.018321633, 0.09225541, 0.007871047, 0.055265963, 0.027756512, 0.022106284, 0.008005984, 0.010490339, -0.01926802, 0.074151926, -0.04134203, 0.08321179, -0.006707123, 0.08015699) * input_6(0.0, 1.0); + result += mat4(-0.037367582, 0.107405715, -0.019636342, -0.052982174, 0.077407904, 0.14382562, -0.0032244532, 0.008968349, -0.049986765, 0.009983721, -0.02355001, 0.2779137, -0.06736773, -0.17141151, -0.05845548, -0.059856355) * input_6(1.0, -1.0); + result += mat4(0.0701022, -0.102360696, 0.06271944, 0.01179465, 0.14078858, -0.13170232, 0.008121934, -0.07482249, -0.12146842, 0.16713484, -0.061870914, 0.4105924, -0.2880497, -0.33828005, -0.038199738, -0.7682807) * input_6(1.0, 0.0); + result += mat4(-0.12744406, -0.0025242127, 0.038562335, 0.09236113, -0.05557997, 0.048546225, 0.05687985, -0.025365166, 0.0033683586, -0.10394762, -0.180247, 0.54995817, 0.083790675, 0.008417147, 0.13960713, -0.11201826) * input_6(1.0, 1.0); + result += mat4(0.011276907, -0.04149117, -0.0057167793, -0.0013647585, -0.062007222, -0.037380975, 0.025336353, 0.025081493, -0.15529373, 0.093565375, -0.027715622, -0.0018978245, 0.20124187, -0.10249571, -0.015588033, 0.034246072) * input_7(-1.0, -1.0); + result += mat4(-0.28576747, -0.0036746403, -0.09214477, -0.022859663, -0.06858083, -0.04368082, -0.012123432, -0.10986753, 0.11145116, -0.041980296, 0.026632776, 0.11085339, 0.05053441, -0.13988046, 0.068741895, -0.106167026) * input_7(-1.0, 0.0); + result += mat4(-0.19137873, -0.08590552, -0.001698916, -0.32263213, -0.052690525, 0.005515629, 0.005942406, -0.014086212, -0.010872752, -0.004769405, -0.00946627, 0.03615502, 0.112784564, 0.004365648, -0.042497158, 0.07789503) * input_7(-1.0, 1.0); + result += mat4(0.17038837, 0.21885797, 0.08116032, -0.219826, -0.1010745, 0.055632837, -0.02618649, 0.033176363, 0.0329792, -0.1853293, -0.0034246384, -0.10231169, 0.056559157, -0.37926558, 0.047375984, -0.05034976) * input_7(0.0, -1.0); + result += mat4(0.17817768, 0.1334491, 0.2588541, -0.015750686, 0.18928605, 0.013337244, 0.013871462, -0.0701917, -0.039516438, -0.0011669142, 0.001827169, -0.14977449, -0.061226837, 0.14186305, 0.4435255, 0.023749629) * input_7(0.0, 0.0); + result += mat4(-0.15417624, -0.13289382, 0.08093824, 0.0140705155, -0.1758867, 0.014130054, 0.0026556798, 0.11602698, 0.06322151, -0.052539427, 0.011262309, -0.09507356, -0.11958942, -0.0044925567, 0.10398037, 0.027807545) * input_7(0.0, 1.0); + result += mat4(0.05524646, 0.056129716, -0.007827303, -0.10743511, -0.122995906, -0.07326563, 0.045666665, 0.18139634, -0.04203214, 0.06418939, -0.00608224, -0.010004352, 0.012711566, -0.122684576, -0.026017923, -0.00030179485) * input_7(1.0, -1.0); + result += mat4(-0.014852624, 0.07861117, 0.009167338, 0.10477032, -0.036981415, -0.14236324, 0.050645567, 0.37105337, -0.0072226566, -0.007054927, 0.0016486975, 0.110171646, -0.028517853, 0.03143255, 0.15297803, -0.032133654) * input_7(1.0, 0.0); + result += mat4(0.046661012, -0.01715852, -0.023781959, 0.14828964, 0.011162027, 0.0037524737, 0.01685906, -0.14080365, -0.023515485, -0.053989954, 0.013737403, 0.16292474, 0.05633537, -0.026921343, -0.057426214, -0.09809078) * input_7(1.0, 1.0); + result += vec4(0.042692065, -0.033217326, -0.007993136, -0.015658313); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.21647094, 0.021694105, 0.09523253, 0.43561038, 0.05073517, 0.03020338, 0.16070305, -0.15998375, 0.10053379, 0.005108873, -0.02707837, 0.54442096, 0.117685504, 0.030509934, 0.098555386, 0.036676943) * input_0(-1.0, -1.0); + result += mat4(0.120522186, -0.025405038, -0.05717068, -0.22227432, 0.07704094, -0.0028500438, 0.15543693, 0.05317657, 0.074431434, 0.045179028, 0.041902993, 0.011006161, 0.094346866, 0.017523928, -0.09589176, 0.12167111) * input_0(-1.0, 0.0); + result += mat4(0.25624484, -0.05621304, -0.047019474, 0.10637433, 0.051547512, 0.034854706, -0.22023009, 0.15522951, 0.10007722, 0.01541945, -0.096630745, -0.24697925, 0.10583782, 0.014954327, -0.08323084, 0.17795697) * input_0(-1.0, 1.0); + result += mat4(0.05879532, -0.017882846, 0.10993342, 0.46428043, -0.12785585, -0.06426528, -0.29051405, 0.5367444, 0.050723065, 0.005712017, 0.05350858, -0.5005103, -0.097929016, -0.0068811784, 0.04565548, -0.4807375) * input_0(0.0, -1.0); + result += mat4(-0.024778878, 0.08142723, 0.15905069, 0.2623747, 0.2939986, -0.081053734, 0.3556965, -0.077829555, -0.019563677, 0.041067507, -0.010587282, -0.27396855, 0.01610295, 0.002272669, 0.048763704, 0.19348477) * input_0(0.0, 0.0); + result += mat4(0.11238699, 0.04954919, 0.32411954, 0.020209515, -0.21323267, -0.11145165, 0.13570254, 0.4429607, -0.3189285, -0.018794328, 0.08065773, -0.19970082, 0.0065871384, -0.0065509956, -0.0036674931, 0.045529243) * input_0(0.0, 1.0); + result += mat4(0.05127924, 0.12421236, -0.046031702, 0.7846078, -0.1122032, 0.035104886, 0.110132866, -0.42527372, -0.1416022, -0.010736926, 0.109286085, -0.5847496, 0.033608213, -0.0069677182, -0.08948178, -0.07576845) * input_0(1.0, -1.0); + result += mat4(-0.07795956, 0.061726347, -0.17469487, -0.9918505, 0.11770953, 0.2034572, -0.064498134, -0.2737205, -0.06456266, -0.1622647, -0.055397812, -0.4820412, 0.04837458, 0.030041205, -0.04704098, 0.10772634) * input_0(1.0, 0.0); + result += mat4(0.12332605, 0.06967086, -0.02658937, 0.74411297, 0.06966173, 0.11810855, 0.035429966, -0.11294493, 0.14838645, -0.075443804, -0.063303374, -0.11236169, -0.010406625, 0.005213422, 0.050357204, 0.3482958) * input_0(1.0, 1.0); + result += mat4(0.14024717, 0.012430757, -0.08998785, 0.41308185, 0.069152206, 0.018751616, 0.030102625, 0.22314721, -0.11074698, -0.021240825, 0.040979438, -0.4120819, 0.04908584, 0.01330925, -0.042631764, 0.34013957) * input_1(-1.0, -1.0); + result += mat4(0.020399863, 0.027658265, -0.09004971, 0.055744186, 0.03563494, 0.017209206, -0.433443, -0.1266551, -0.24777833, -0.035253823, 0.04081927, -0.33174768, 0.04855598, 0.021660088, -0.14610523, -0.46140137) * input_1(-1.0, 0.0); + result += mat4(-0.110169835, 0.024964388, -0.08975557, -0.3527244, -0.022899423, 0.023953827, -0.28377825, 0.0637377, -0.059438262, -0.05899507, 0.09442902, -0.021615226, 0.02757874, -0.0055723437, 0.00798192, 0.1485528) * input_1(-1.0, 1.0); + result += mat4(-0.059237916, -0.0042999713, 0.203718, -0.17206971, -0.0060383654, -0.0021500243, -0.13185082, -0.75153923, 0.22372024, 0.013106518, 0.010946364, 0.5528941, -0.10397183, -0.02519301, -0.09547865, -0.82743955) * input_1(0.0, -1.0); + result += mat4(0.16194125, 0.015771117, 0.13973169, 0.088752136, -0.29089472, -0.057783358, -0.2251417, -0.38341984, 0.0369992, 0.028958686, -0.10955787, -0.17609252, -0.2072022, -0.021276737, -0.14461601, -0.049213517) * input_1(0.0, 0.0); + result += mat4(-0.0012655723, 0.045095287, -0.06984613, 0.10871742, -0.14594692, -0.1819569, -0.095363475, -0.52344424, 0.10871347, 0.040752657, 0.05836539, -0.33662802, 0.081881665, -0.120285414, -0.034320693, -0.7209399) * input_1(0.0, 1.0); + result += mat4(0.09069147, 0.01993652, -0.09058954, 0.843108, 0.05612644, -0.02002782, -0.08650584, -0.14287011, 0.0028331864, -0.024930602, 0.060272574, 0.26872584, 0.01700192, -0.015523352, -0.116520025, 0.1178247) * input_1(1.0, -1.0); + result += mat4(-0.0458354, 0.029660298, -0.00030569072, 0.14402433, -0.010583189, -0.005245815, -0.17881805, -0.18338394, -0.12241331, -0.025865236, 0.09203526, 0.22436884, -0.024889832, 0.076587215, -0.15460275, -0.028138805) * input_1(1.0, 0.0); + result += mat4(-0.1282487, -0.059201766, -0.016124234, -0.7744127, -0.06106617, 0.052873686, -0.020961586, -0.05996262, -0.06873841, -0.010613819, -0.041402545, -0.2960013, -0.038507883, 0.034339737, 0.02275005, -0.11284857) * input_1(1.0, 1.0); + result += mat4(-0.14736085, -0.01476309, 0.07241752, 0.058535386, -0.18524782, -0.041402, -0.11976012, -0.68155, -0.091005124, -0.024913196, -0.06498553, 0.4188885, -0.08298702, -0.039069552, -0.12566383, -0.41691005) * input_2(-1.0, -1.0); + result += mat4(0.049378764, 0.045185167, 0.043017555, 0.21895424, -0.30800352, -0.035165794, 0.06983642, -0.43941966, -0.16483207, 0.010580365, 0.08259386, -0.40366575, -0.16828604, -0.007885959, -0.22215796, 0.078328975) * input_2(-1.0, 0.0); + result += mat4(0.12734465, 0.004915291, -0.15247776, 0.15149696, -0.06564691, -0.03891671, 0.08692433, -0.11419155, -0.009989451, 0.04720458, 0.0737416, 0.06743186, 0.034661148, 0.0054533407, -0.04814884, -0.77194625) * input_2(-1.0, 1.0); + result += mat4(0.08282394, -0.05142288, -0.0702968, 0.3384059, 0.06661659, 0.0028281868, -0.3390111, 0.16516747, -0.052272063, 0.010277811, -0.009122292, 0.44524962, 0.04098202, 0.022605548, 0.17752111, -0.13009329) * input_2(0.0, -1.0); + result += mat4(-0.120099336, -0.05513446, -0.063770235, 0.3821871, 0.015010768, -0.0028338523, -0.3353057, -0.34634355, -0.19146256, -0.016866608, -0.16306438, -1.9278239, -0.12068674, -0.13730517, -0.15411025, 0.07456892) * input_2(0.0, 0.0); + result += mat4(-0.124803424, 0.011418201, 0.13598837, -0.93571734, 0.07158376, -0.0036867552, -0.33376303, 0.03656611, 0.0797531, 0.048946347, -0.0725658, -0.5558039, 0.1706823, -0.079583146, 0.095647834, 0.28282464) * input_2(0.0, 1.0); + result += mat4(0.037670854, 0.048819695, 0.19716267, -0.41377354, -0.14524171, 0.015916446, 0.10360329, 0.038483333, 0.012795141, 0.03591177, -0.0827542, -0.18576667, 0.00662085, 0.023538908, -0.11864111, 0.10925787) * input_2(1.0, -1.0); + result += mat4(0.08996688, -0.011509769, 0.020289956, 0.07802907, -0.21555087, -0.1962355, 0.12611616, -0.88052505, -0.11925421, -0.16100015, -0.023143122, 0.36857775, -0.0857529, 0.04702804, -0.0022174306, -0.114651285) * input_2(1.0, 0.0); + result += mat4(0.038453963, 0.01546732, -0.093447804, 0.2854379, -0.1284168, 0.0030945458, -0.20179968, -0.32550138, -0.002845413, -0.08325785, 0.054931395, -0.09611558, 0.016957097, 0.036601197, 0.044037256, -0.18861651) * input_2(1.0, 1.0); + result += mat4(0.12707931, -0.010601586, 0.038432714, 0.3899468, -0.09587074, 0.011200319, -0.086225785, -0.06855479, 0.00883626, 0.010235761, 0.046708476, -0.6562208, 0.03656107, 0.014227634, 0.0076985415, 0.037424937) * input_3(-1.0, -1.0); + result += mat4(0.14931312, -0.0035388977, -0.042940225, 0.28321, -0.11501492, 0.065274656, -0.26247573, 0.036234047, 0.008946356, 0.005638056, -0.07416931, 0.11169934, 0.08591962, -0.009861384, 0.0658057, 0.28991485) * input_3(-1.0, 0.0); + result += mat4(0.082971245, 0.02180392, -0.07380227, 0.56731004, -0.061891932, 0.00945752, -0.06694322, -0.29037637, 0.01085672, 0.025429737, -0.09545134, -0.4855779, -0.05096605, 0.0023322345, -0.074334115, 0.40451086) * input_3(-1.0, 1.0); + result += mat4(0.11137459, -0.013685074, 0.1782491, 0.42678896, 0.027747286, 0.050623994, -0.17067349, -0.38463834, -0.048423447, -0.012508254, -0.059451923, -0.201831, 0.0805547, 0.03710248, 0.053547025, 0.46342015) * input_3(0.0, -1.0); + result += mat4(0.066669926, -0.10710719, 0.21532151, -0.11513901, 0.0808689, 0.012855794, -0.0038851467, -0.46436313, -0.25611255, -0.019981382, -0.079334036, 0.29250023, 0.03733519, 0.03353188, -0.12920055, -0.5163801) * input_3(0.0, 0.0); + result += mat4(-0.020980436, -0.00049886754, 0.017221117, 0.17939118, 0.18564926, 0.10206351, 0.11495605, -0.059870683, -0.080039345, -0.03235146, -0.07914051, -0.15375352, 0.023450237, 0.05209471, -0.10949692, -0.052513964) * input_3(0.0, 1.0); + result += mat4(0.07976456, 0.04413392, 0.06815854, 0.3093635, 0.061255366, 0.006160159, 0.008816364, -0.1618706, 0.034805126, -0.04239649, -0.24107343, -0.23679991, 0.04964829, -0.048739936, -0.007696178, 0.22690538) * input_3(1.0, -1.0); + result += mat4(0.0725203, 0.09546135, 0.14212511, -0.18715824, -0.019663634, 0.001528857, -0.045150705, 0.5367575, 0.08359646, 0.070115365, -0.09426519, 0.26527086, -0.039326373, 0.023076274, 0.22341454, 0.3590947) * input_3(1.0, 0.0); + result += mat4(0.008285444, 0.010110649, -0.10832163, 0.4790696, 0.050805338, 0.06082007, 0.049417812, 0.053767413, -0.036507413, 0.04953363, 0.084985726, -0.30893475, -0.07181748, -0.002491229, -0.1519536, 0.5246448) * input_3(1.0, 1.0); + result += mat4(0.16402805, 0.00064360833, 0.039342586, -0.2127752, 0.077915914, -0.017634671, -0.022437641, -0.10945744, -0.07264147, -0.0066465246, -0.077091515, -0.16792357, 0.11953045, 0.008393567, -0.2482206, 0.32615444) * input_4(-1.0, -1.0); + result += mat4(0.13128938, -0.024831766, -0.16022755, 0.02531669, -0.1385807, -0.018771235, 0.24511719, -0.4041376, -0.20455092, -0.0049329954, 0.17427808, -0.38986713, 0.05106824, 0.00942389, -0.37941346, -0.24863625) * input_4(-1.0, 0.0); + result += mat4(0.017788516, -0.009053481, -0.14983268, 0.31505677, 0.004512983, -0.046833355, 0.21101394, 0.023833448, 0.002967276, -0.038581148, 0.04488052, -0.26930174, 0.01951037, 0.0018211204, -0.5028204, 0.5193776) * input_4(-1.0, 1.0); + result += mat4(0.008946999, 0.0026109705, 0.15577333, 0.05299385, 0.106823094, 0.017560376, 0.08308302, -0.29688826, 0.19241919, 0.012937758, 0.02899809, 0.069136046, -0.20625629, 0.010828961, -0.15249066, -1.0166837) * input_4(0.0, -1.0); + result += mat4(-0.3260534, 0.04316136, -0.13036822, 0.17744194, -0.09240225, 0.008526472, 0.06308015, 0.058120422, 0.13690948, 0.024347242, -0.011966301, 0.20398235, -0.1655159, -0.07649439, -0.029428683, -0.031119525) * input_4(0.0, 0.0); + result += mat4(-0.043155894, 0.00945722, -0.19771232, -0.4472786, 0.21694094, 0.013445497, 0.03384382, 0.1459661, -0.028185815, -0.0039053583, -0.09749879, 0.19117229, -0.3229476, -0.03861408, -0.053468738, -0.49347198) * input_4(0.0, 1.0); + result += mat4(-0.050990358, -0.015913967, -0.059728682, -0.40889004, 0.20175637, 0.038052063, -0.032071825, 0.12703545, 0.092689365, -0.028193783, -0.069781855, 0.21662654, 0.0042429646, 0.019245183, -0.38970578, 0.16499037) * input_4(1.0, -1.0); + result += mat4(-0.09082918, -0.038124524, -0.0803077, -0.69127333, 0.14523977, 0.113535225, -0.021643147, 0.2668452, 0.13113242, 0.052392397, -0.18776622, 0.21446654, -0.0017356906, -0.0064975647, -0.34706107, -0.48640555) * input_4(1.0, 0.0); + result += mat4(-0.06009809, -0.0682936, -0.006492719, -0.82389593, -0.112179995, -0.0035784708, 0.055935167, 0.039090015, -0.010248957, 0.028841682, 0.013109589, 0.22484004, 0.11489462, 0.03138032, -0.4665301, 0.38245127) * input_4(1.0, 1.0); + result += mat4(0.11182505, 0.011233961, 0.0032065387, 0.100918725, -0.0067022284, 0.013038348, 0.057645563, 0.09874629, 0.030027278, 0.009302161, -0.102829635, 0.17357843, 0.1376862, 0.012396941, 0.0153040765, -0.15856054) * input_5(-1.0, -1.0); + result += mat4(-0.10540802, 0.0055468203, -0.028387021, -0.18802334, -0.027671983, -0.036645535, -0.0011651837, -0.043815177, -0.011182193, -0.019063001, 0.026086913, -0.09909651, 0.045543738, 0.01501762, -0.14391257, 0.20757176) * input_5(-1.0, 0.0); + result += mat4(-0.07347206, -0.021561092, 0.37920067, -0.38742074, 0.09139498, 0.017440014, -0.03438137, -0.04794505, -0.1274186, -0.027331095, 0.028696109, -0.07927764, 0.026846068, -0.0005810742, 0.08731699, -0.39359352) * input_5(-1.0, 1.0); + result += mat4(-0.31100568, -0.027542705, -0.16867562, -1.1675686, -0.2548962, -0.003313697, -0.049280357, -0.880744, 0.047219172, 0.044065926, 0.052363202, -0.6343862, -0.24060884, -0.033247303, -0.15576343, -0.55019057) * input_5(0.0, -1.0); + result += mat4(0.0005070464, 0.0018278324, -0.21209313, -0.084484324, -0.21797465, 0.054066617, -0.06889278, -0.079877704, 0.11553478, 0.08022597, -0.14521515, 0.068705, -0.36621863, 0.053862903, -0.2288639, -0.36059433) * input_5(0.0, 0.0); + result += mat4(0.3629679, 0.02810317, -0.057603903, 0.9522201, 0.03677672, -0.08288261, 0.0142252045, -0.6443216, -0.049535375, 0.034397636, 0.0011175481, 0.038786948, -0.099410005, -0.07867338, 0.069708645, -0.80992925) * input_5(0.0, 1.0); + result += mat4(-0.096885905, 0.012116056, 0.11707017, -0.15747905, 0.009216939, -0.02300198, -0.047163673, 0.062910594, 0.035587475, 0.01318772, 0.06992403, 0.38577273, -0.035531376, -0.023754597, 0.06554916, 0.32794327) * input_5(1.0, -1.0); + result += mat4(0.09840218, 0.005886006, 0.114159375, 0.13712294, 0.03343288, 0.0401408, -0.031776484, -0.1183564, -0.073688544, -0.13652293, 0.1976177, -0.35861194, -0.095363736, -0.11213779, -0.07644463, -0.73650795) * input_5(1.0, 0.0); + result += mat4(-0.06797604, 0.08652854, 0.054358784, 0.50632036, -0.027383955, -0.006325107, 0.05298256, 0.1432118, 0.06401009, -0.22509794, -0.15146264, 0.3486274, -0.067378454, -0.087193, 0.05572953, 0.36453867) * input_5(1.0, 1.0); + result += mat4(-0.053616095, -0.012409986, 0.018852139, 0.19715549, 0.117430024, -0.0060573, 0.03257477, 0.5400019, 0.013430464, 0.047264114, 0.058163177, 0.49008697, 0.088208094, -0.030261124, -0.002163558, 0.0065772836) * input_6(-1.0, -1.0); + result += mat4(-0.1395319, -0.037749175, -0.0024756002, 0.018202996, 0.0820301, 0.015368069, -0.12803647, 0.040027503, -0.18472393, 0.054206923, 0.09384063, 0.013870423, 0.12754431, -0.056644265, -0.2536006, 0.12555785) * input_6(-1.0, 0.0); + result += mat4(-0.07316531, -0.035488576, 0.23437399, -0.18281955, 0.06641187, -0.0028482452, -0.15951222, 0.20850846, 0.06612517, 0.056634698, 0.06892459, 0.09702131, -0.12759724, -0.035852477, -0.06332678, -0.012483417) * input_6(-1.0, 1.0); + result += mat4(0.21995352, 0.0052557, 0.087536946, 0.36883923, -0.17381826, 0.015212894, -0.03984095, -0.39042723, 0.0365622, 0.012339017, 0.034748588, 0.013166513, -0.23400027, 0.039537575, -0.07417509, -0.30940437) * input_6(0.0, -1.0); + result += mat4(0.008809477, -0.026296154, 0.021066798, -0.3158224, -0.003085037, -0.030226782, -0.09191259, 0.56288, -0.0481238, -0.013578018, -0.0017629985, -0.20484376, -0.43487307, 0.16888604, -0.12291305, -0.31382513) * input_6(0.0, 0.0); + result += mat4(0.16969754, 0.05153294, 0.05114098, 0.24255505, -0.043600336, 0.0014184752, -0.031141942, -0.26707006, 0.05760369, -0.012765346, 0.20509398, -0.3294778, 0.38738933, -0.04846177, 0.043010134, -0.01909267) * input_6(0.0, 1.0); + result += mat4(-0.12977792, 0.01825431, 0.14738557, 0.09902251, 0.09757962, -0.024337582, -0.12838773, 0.25525412, 0.039340697, 0.051384635, 0.12466482, 0.2558196, -0.16911337, 0.042553164, -0.06666853, -0.16243656) * input_6(1.0, -1.0); + result += mat4(0.0013088644, -0.012258166, 0.015649447, 0.24075639, -0.0154562155, 0.049892314, -0.11044152, -0.08877989, 0.15746135, 0.123318285, 0.04004425, -0.022573572, -0.05280126, -0.05538015, 0.05261141, -0.3800743) * input_6(1.0, 0.0); + result += mat4(0.05548824, -0.013958512, -0.03005541, 0.22031182, -0.0038383997, 0.06869114, 0.06886244, -0.10248616, 0.096951574, 0.09342113, -0.0061675454, 0.2596485, -0.03792169, 0.06806656, 0.02336686, -0.5812344) * input_6(1.0, 1.0); + result += mat4(-0.10253576, 0.0010328951, -0.014254074, -0.82872987, -0.007638217, 0.01068289, 0.013595995, -0.08107003, -0.0708935, -0.0040601576, 0.19685812, -0.18586321, -0.10596506, 0.03439454, 0.004905402, -0.009868355) * input_7(-1.0, -1.0); + result += mat4(-0.3195387, -0.04959133, -0.2037679, -0.49577156, 0.021253841, 0.011435347, -0.30694208, -0.18833078, -0.00020944892, 0.005417908, -0.015443318, 0.26527914, -0.036783915, -0.028743593, 0.03781849, 0.2821415) * input_7(-1.0, 0.0); + result += mat4(-0.01885801, -0.023373423, -0.116990544, -0.380214, -0.060229413, 0.033070143, -0.43243426, 0.14524686, 0.12164978, 0.017916879, 0.025631774, -0.12779357, -0.14024903, -0.0064828536, -0.018963292, -0.3452793) * input_7(-1.0, 1.0); + result += mat4(-0.22943334, -0.007381962, -0.100862026, -0.22379318, -0.30916286, -0.00679423, -0.11277905, -1.6536751, 0.14884946, -0.04859074, -0.20476918, -0.028484894, 0.15523829, 0.015388897, 0.118289314, 0.5252316) * input_7(0.0, -1.0); + result += mat4(-0.5147253, -0.09338502, -0.3563228, -0.49117026, -2.4722593, -0.09402436, -0.34650475, -1.0974513, -0.035953615, 0.06488132, 0.22270915, 0.016974622, 0.03889141, 0.043910623, -0.11209366, -0.4187441) * input_7(0.0, 0.0); + result += mat4(-0.14228605, -0.11306805, -0.24602577, -0.40348887, -0.3837747, -0.3558261, -0.1179351, -0.5573624, -0.11663493, 0.024345202, -0.054463446, -0.0012493338, 0.14007522, 0.061999347, -0.00769398, 0.347949) * input_7(0.0, 1.0); + result += mat4(-0.026837543, -0.0097663365, -0.22390532, -0.77108806, -0.06345346, 0.0063611334, 0.13175467, 0.34129733, -0.081787586, -0.0017398233, 0.16594641, -0.11406549, -0.11632913, 0.011452903, 0.047863696, -0.25627232) * input_7(1.0, -1.0); + result += mat4(-0.12092733, -0.13210347, -0.16375516, -0.49582958, -0.18417571, -0.30712613, 0.03725773, -0.24873325, 0.058905974, -0.053665232, -0.22022128, 0.08107539, -0.05973819, -0.074390724, -0.003180624, -0.7381795) * input_7(1.0, 0.0); + result += mat4(-0.07587329, -0.120033585, 0.023344165, -1.0283343, 0.008378717, -0.27027074, -0.06201576, -0.18248774, 0.027303902, 0.07283809, 0.12901054, 0.06703368, -0.03447612, -0.037317302, -0.0037468513, -0.59854364) * input_7(1.0, 1.0); + result += vec4(-0.0089152055, -0.027577035, -0.02159768, 0.01373126); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.026775077, -0.10451225, 0.63637996, -0.0006806506, 0.06480294, 0.014411686, -0.14911114, 0.01833382, 0.11375695, -0.035378378, 0.08934588, 0.06995646, -0.026459185, -0.011989524, 0.23034088, 0.03778081) * input_0(-1.0, -1.0); + result += mat4(0.0026258521, -0.018496413, -0.034914777, 0.009524895, -0.1403465, 0.0237635, -0.34010887, 0.033233747, -0.04676805, -0.0019193108, 0.11280913, -0.18324916, -0.0022050908, -0.019382332, 0.1174688, -0.039811794) * input_0(-1.0, 0.0); + result += mat4(-0.056186184, -0.005947744, 0.14853887, -0.019103106, 0.0020100423, 0.0007152818, -0.0064539136, -0.027507914, 0.024271583, 0.0027607274, 0.16718216, 0.013772157, 0.0123995105, -0.001519754, 0.19923826, -0.08654859) * input_0(-1.0, 1.0); + result += mat4(-0.033337086, -0.028737877, -0.6033469, -0.022498848, -0.2200395, -0.060617555, -0.054887198, -0.06347435, -0.026104292, -0.03600492, -0.062986985, -0.095990345, -0.016931381, 0.03889097, 0.052174065, -0.074576944) * input_0(0.0, -1.0); + result += mat4(-0.0069972626, 0.025527146, -0.15847707, -0.013187586, -0.023970656, 0.174417, -0.03142608, 0.08243798, 0.049810663, 0.013142979, 0.32470116, 0.018207453, -0.0035461262, -0.043915488, -0.069831975, -0.119738646) * input_0(0.0, 0.0); + result += mat4(-0.03332059, 0.008578185, -0.379132, -0.0268297, 0.00545431, -0.026141845, 0.061877143, -0.15354538, -0.0031905652, 0.004494792, 0.011409326, 0.02829918, -0.00067601213, -0.0033607075, -0.0745615, 0.012315099) * input_0(0.0, 1.0); + result += mat4(-0.017497856, 0.021556022, 0.72313714, -0.0155740455, -0.021491272, 0.052057493, 0.2295249, 0.005105787, 0.013585422, 0.041134365, -0.113063596, -0.033104, -0.010037182, -0.011175884, -0.020473516, -0.055451) * input_0(1.0, -1.0); + result += mat4(0.014962353, -0.016937993, -0.11794551, 0.021096418, 0.022805022, 0.056617796, 0.31248218, 0.079746634, -0.0017765634, -0.025737813, -0.18280798, 0.045985527, -0.0021875673, -0.0037705987, 0.00043804455, 0.0075337472) * input_0(1.0, 0.0); + result += mat4(-0.032230735, 0.015852634, 0.28823802, 0.01551817, -0.014205895, -0.016074084, 0.011752527, 0.040695764, -0.005317513, 0.012240592, -0.09058596, -0.01890404, -0.002526114, 0.0025134964, 0.11368577, -0.030420072) * input_0(1.0, 1.0); + result += mat4(0.018291488, -0.04095628, -1.0062692, -0.07698207, 0.03948614, -0.0047223964, 0.24689393, -0.05866227, -0.0148964515, 0.0068088286, 0.20632531, 0.015094062, 0.041546647, -0.0071414146, -0.068788074, 0.11742098) * input_1(-1.0, -1.0); + result += mat4(-0.017364265, -0.016920317, 0.036510788, -0.028874516, -0.031449486, -0.0323981, -0.42469093, -0.24339871, -0.0035898536, 0.009073207, -0.1296992, 0.0076357983, 0.035960548, 0.033070035, -0.7269506, 0.13690577) * input_1(-1.0, 0.0); + result += mat4(0.037100676, -0.0065941694, -0.54467314, -0.029831696, 0.017443823, 0.0027989314, -0.09978294, 0.058452044, 0.0061431844, 0.0058137127, 0.24223109, 0.07898723, -0.026112521, -0.00034889972, 0.10199004, 0.008912678) * input_1(-1.0, 1.0); + result += mat4(-0.025897201, -0.077153146, -0.07158385, -0.057080045, 0.046798535, -0.038294904, -0.03793452, 0.04913087, 0.03558903, -0.020595778, -0.18902032, -0.024002265, 0.025848942, 0.024338938, -0.25049788, 0.03482893) * input_1(0.0, -1.0); + result += mat4(0.022637667, -0.008772003, -0.5226556, 0.009763827, 0.016889134, 0.03297427, -0.37221813, -0.030069787, 0.010168321, -0.03811082, -0.16011861, -0.026048882, -0.008215277, -0.041163906, -0.48609376, -0.03144563) * input_1(0.0, 0.0); + result += mat4(0.012048091, -0.0007004535, -0.20702459, -0.046940003, 0.0012355626, 0.010449735, 0.18379934, -0.014368034, -0.0027609817, -0.015093744, -0.05337284, -0.115656085, 0.015267805, 0.02344082, -0.13926275, 0.17286651) * input_1(0.0, 1.0); + result += mat4(0.0050251586, 0.033614647, -1.1684568, 0.009723657, 0.0094180405, -0.042932335, -0.33860978, -0.02323323, 0.0053887055, -0.03611732, -0.8315971, 0.0153936455, -0.01148311, -0.01661055, 0.42666414, 0.001757658) * input_1(1.0, -1.0); + result += mat4(0.000829059, 0.0009644186, 0.12877542, -0.037322566, -0.012451366, 0.006937212, 0.07429492, -0.043712996, 0.007892208, -0.0022085134, -0.18187861, -0.026949467, 0.005853695, 0.0010762013, -0.06954393, -0.034812424) * input_1(1.0, 0.0); + result += mat4(0.011282351, 0.0027042003, -0.20019339, -0.005223172, 0.0031022644, 0.010003274, -0.11300031, -0.010738444, 0.00016677579, 0.005117278, 0.11301708, -0.0034310282, 0.0028743313, -0.02117912, 0.117983446, -0.0054688286) * input_1(1.0, 1.0); + result += mat4(-0.07317378, 0.019599304, -1.1894667, -0.011550807, 0.049044862, -0.018554166, -0.1269798, 0.071285024, -0.091242366, 0.016567802, -0.47022647, -0.019755296, 0.03442774, 0.0024140931, 0.26245904, -0.021570474) * input_2(-1.0, -1.0); + result += mat4(0.04856048, -0.01835135, -0.08841418, -0.2511028, 0.014342965, 0.03827314, -0.10028176, 0.03272212, -0.016479466, 0.0076341196, -0.15472856, -0.07503416, -0.097539134, 0.06888834, -0.17368099, -0.2918311) * input_2(-1.0, 0.0); + result += mat4(0.029494353, 0.010362336, 0.14942998, 0.10174313, -0.0074492353, -0.016867409, -0.047257084, -0.15205835, -0.0017977441, -0.006021908, -0.20656912, 0.018411076, 0.015935453, 0.024961814, 0.23194376, -0.0018686355) * input_2(-1.0, 1.0); + result += mat4(-0.0063168276, -0.15417789, -0.6873481, -0.037877303, -0.0276701, -0.15785095, -0.19479732, -0.18137658, -0.023984227, -0.03264262, 0.16554016, 0.01115481, -0.03558511, -0.095639594, -0.14772126, -0.042979818) * input_2(0.0, -1.0); + result += mat4(0.027083399, 0.025564997, -0.08832013, -0.04101201, -0.017549723, -0.11251874, -0.108856514, 0.04091822, 0.0034223013, -0.030924747, -0.5805583, 0.066661775, -0.0056445333, 0.15698475, -0.086302325, 0.055377074) * input_2(0.0, 0.0); + result += mat4(0.002326764, -0.023597566, -0.16339844, -0.024625503, -0.008192385, 0.016196096, 0.18431117, -0.05195284, 0.006446618, 0.004930823, -0.2807844, -0.00822737, -0.0357179, -0.03882509, -0.058221925, -0.14944243) * input_2(0.0, 1.0); + result += mat4(0.0077810613, 0.021281652, -0.8425275, 0.005295004, 0.027198726, 0.05582312, -0.09090666, -0.006416392, 0.0006388569, -0.054477375, 0.07622551, 0.023336982, 0.004164922, 0.034233045, -0.115130976, 0.0022290477) * input_2(1.0, -1.0); + result += mat4(0.014780375, -0.022050867, 0.0021225591, 0.002043188, 0.008685954, 0.037626483, -0.21294923, -0.013233031, 0.013441077, 0.020807263, 0.038936242, -0.04579951, 0.0024561079, -0.006347079, 0.2669026, 0.015078683) * input_2(1.0, 0.0); + result += mat4(-0.005062156, 0.008993396, -0.04063369, -0.00043310376, 0.004644297, 0.006971992, -0.30699483, 0.01588504, 0.002166559, -0.0010990695, -0.088468, 0.019001214, -0.0023735736, 0.015702752, 0.21002482, -0.029907957) * input_2(1.0, 1.0); + result += mat4(0.021317046, 0.01162776, -0.069086395, -0.021854179, 0.054370552, -0.01734782, -0.45021465, -0.026121974, -0.115231246, 0.0073996275, 0.45390922, -0.012751566, 0.055050924, -0.015642669, 0.20137627, -0.05347232) * input_3(-1.0, -1.0); + result += mat4(-0.015444449, -0.0061568744, -0.031596772, -0.0150065385, -0.032196473, -0.031955965, -0.043733098, 0.0303641, 0.010286239, 0.00092729356, -0.22244757, -0.048889868, -0.059018433, -0.0007737891, 0.13114724, 0.1498781) * input_3(-1.0, 0.0); + result += mat4(0.0058798175, 0.0041970513, -0.13339485, 0.029731086, -0.0032766892, 0.00323454, 0.14617729, 0.06610184, 0.0004022916, 0.0052211685, 0.05695132, -0.06664231, 0.002018398, 0.0030567974, 0.08103253, 0.034140147) * input_3(-1.0, 1.0); + result += mat4(0.001028205, 0.030622883, -0.26253653, 0.045133986, -0.035430808, -0.044486105, -0.40659198, -0.0020681883, 0.10694462, 0.029807437, 0.1841654, -0.008306971, 0.045207262, -0.0023711112, 0.41593438, 0.07812701) * input_3(0.0, -1.0); + result += mat4(-0.03246934, -0.0061986237, -0.15562542, -0.19580883, -0.01160665, 0.025909238, 0.24598622, 0.050662953, 0.06220134, 0.006903786, -0.15065719, -0.07539607, -0.0006510621, 0.012574493, -0.24478297, 0.009019613) * input_3(0.0, 0.0); + result += mat4(0.004330399, -0.018311253, -0.34672523, -0.06269214, 0.0023203793, -0.011325793, 0.026941432, -0.016753335, 0.03239812, 0.0020195628, 0.26308486, 0.08772332, -0.0012208114, -0.013924197, -0.019944072, -0.069846526) * input_3(0.0, 1.0); + result += mat4(-0.008444039, -0.022165276, -0.8584854, 0.0083313845, 0.009772712, -0.0007303008, 0.07921344, 0.020291131, -0.034971252, -0.05335783, -0.07706982, -0.035416365, 0.016933251, -0.019983219, 0.34881768, 0.02947193) * input_3(1.0, -1.0); + result += mat4(0.013221147, 0.023170494, 0.14593132, 0.02200601, 0.008138883, -0.020996014, 0.05419822, -0.041255355, -0.016641557, -0.003086961, -0.48142052, 0.04347356, -0.007814596, 0.018574428, 0.47213978, -0.0052595777) * input_3(1.0, 0.0); + result += mat4(0.016036049, 0.008106842, -0.17660402, 0.0003704931, -0.0024050162, 0.014270309, 0.22041792, 0.03015584, -0.00248576, 0.0010752784, -0.32105392, 0.0064309128, 0.018676046, -0.001327228, 0.18187001, -0.029307138) * input_3(1.0, 1.0); + result += mat4(0.0044432557, -0.023248963, -0.3697202, 0.0133649185, 0.0062878067, -0.004000242, 0.43487197, -0.06104426, 0.14541021, -0.0070360997, 0.13287751, -0.07842065, -0.029131075, -0.059876, 0.1258801, -0.04464565) * input_4(-1.0, -1.0); + result += mat4(0.07602337, -0.0039343727, -0.7909939, 0.11535889, 0.10441343, -0.016628668, -0.12186435, -0.24829252, 0.022740398, 0.008459903, -0.28465146, -0.007971193, -0.054832112, -0.045410912, -0.26674914, -0.2543656) * input_4(-1.0, 0.0); + result += mat4(-0.0077774455, 0.010828733, -0.055548068, -0.07393003, -0.0051479894, 0.019352278, 0.23584604, 0.06515249, -0.008279552, 0.0014545, 0.19790024, -0.051807612, -0.014711021, -0.0022453875, 0.13019101, -0.18328287) * input_4(-1.0, 1.0); + result += mat4(0.04488535, 0.118301935, -0.56021273, 0.022223005, 0.033041503, -0.021575212, 0.053212944, 0.12617812, 0.028424697, -0.08720728, -0.41927427, 0.015373099, -0.03797162, -0.16920757, -0.25203332, -0.051640745) * input_4(0.0, -1.0); + result += mat4(-0.025379106, -0.011821347, -0.23073015, -0.06893992, -0.0015812014, 0.028762719, 0.23298056, -0.041622076, -0.0074926703, 0.0125635695, 0.09430101, -0.027792402, 0.0073732594, 0.034376174, -0.06811245, -0.022838835) * input_4(0.0, 0.0); + result += mat4(0.016529165, 0.013822622, -0.2723077, -0.041995443, -0.008385161, -0.001382584, 0.15861253, 0.1301023, -0.022204492, 0.0046967347, -0.16423863, 0.037612546, -0.029045615, 0.0010534839, 0.014973917, -0.23129353) * input_4(0.0, 1.0); + result += mat4(0.01811687, 0.006836132, -0.2111228, 0.032873396, -0.02342666, -0.025675545, -0.31545898, 0.0058144643, -0.017249689, -0.060442254, -0.05607239, -0.012454605, -0.005980317, -0.07634355, 0.38236687, 0.0041638645) * input_4(1.0, -1.0); + result += mat4(0.0108949905, 0.00808731, -0.22184569, 0.0008679946, 0.00802669, -0.022148397, -0.1420252, 0.028402703, -0.018784093, 0.0025369765, -0.12293782, 0.027082585, -0.03150546, -0.061829776, -0.48215783, 0.012106779) * input_4(1.0, 0.0); + result += mat4(0.011501927, -0.00878177, -0.06306604, -0.0039047855, 0.015235023, -0.011784084, 0.17563717, -0.014177415, -0.0020188142, 0.007863811, 0.18027158, -0.018658325, -0.022397513, 0.0036049662, 0.19536892, 0.0041639283) * input_4(1.0, 1.0); + result += mat4(-0.020906996, 0.020843498, -0.41538152, 0.06353069, -0.008772805, 0.02016718, -0.8495666, -0.043281127, 0.063633576, -0.029668918, 0.34058446, 0.020447591, -0.12787485, 0.025098016, 0.14102131, 0.015633836) * input_5(-1.0, -1.0); + result += mat4(0.09830071, 0.011987298, 0.3984776, -0.11553312, 0.0012390484, -0.016145755, 0.254416, 0.021546721, 0.025977958, 0.014082099, 0.24635416, -0.079304986, -0.022485282, -0.026778806, -0.28699866, -0.28838423) * input_5(-1.0, 0.0); + result += mat4(-0.043403674, 0.004511031, 0.115847595, -0.00026470853, 0.0005258191, 0.011479068, -0.12831093, 0.00718786, -0.014169628, -0.00971292, -0.23966086, 0.043887105, 0.013349194, 0.0037555539, 0.06079621, 0.008248653) * input_5(-1.0, 1.0); + result += mat4(0.030223988, -0.13646252, -0.3981878, -0.026762808, -0.00726619, -0.018975753, 0.039561927, 0.027239641, 0.026870843, -0.07634871, 0.1087826, 0.022095416, -0.025062453, -0.21060774, -1.4651464, 0.001802812) * input_5(0.0, -1.0); + result += mat4(0.022620616, -0.017691454, -0.033703133, 0.036125727, 0.008545755, -0.012281177, 0.09972737, 0.00918758, -0.011747216, -0.0139996, 0.25393793, 0.17776708, 0.011952604, 0.019810995, -0.081987105, -0.017745622) * input_5(0.0, 0.0); + result += mat4(-0.01379362, -0.013102465, 0.10381385, -0.06682407, -0.010635521, -0.015884345, -0.21544199, 0.009317384, -0.017519765, 0.02988566, -0.34971094, -0.19994369, 0.021268701, 0.0025875368, -0.086434945, 0.0316168) * input_5(0.0, 1.0); + result += mat4(-0.0004682125, -0.02412804, -0.35965896, -0.025448209, -0.017787278, -6.535966e-05, -0.5875499, 0.0055481475, 0.052261908, 0.07059323, 0.3278669, -0.01479555, 0.010218139, 0.009951865, -0.55235285, 0.0067458297) * input_5(1.0, -1.0); + result += mat4(-0.0031640178, -0.003313397, -0.21752416, 0.007922752, -0.009356233, 0.008400949, -0.1153115, 0.008852001, -0.015799617, -0.07131684, -0.120734096, -0.18456534, 0.0013742674, 0.0041988, -0.0512416, 0.035398748) * input_5(1.0, 0.0); + result += mat4(-0.018430686, -0.006267711, 0.08125446, -0.009421034, -0.0019677775, 0.0009625223, 0.052202392, -0.0128696235, -0.019062374, -0.026400222, -0.36149484, 0.017310036, 0.012653123, -0.013326011, 0.055099156, 0.01425421) * input_5(1.0, 1.0); + result += mat4(0.085895814, 0.010930043, 0.4064712, -0.07033769, 0.08515571, -0.029045217, -0.17579782, -0.095337555, -0.030074656, 0.034692034, 0.21952851, 0.089526474, -0.20175736, -0.060765274, 0.019863147, 0.033094116) * input_6(-1.0, -1.0); + result += mat4(-0.013676981, 0.012424723, 0.12610707, 0.12828273, -0.0026392539, -0.04227594, 0.21451089, -0.007917721, -0.018101428, 0.01619558, 0.32851782, 0.12963106, -0.023552163, -0.03413355, -0.19106445, -0.09457437) * input_6(-1.0, 0.0); + result += mat4(0.00800219, 0.0051927324, -0.109592624, 0.06481245, 0.021153532, 0.0038712728, 0.021521965, -0.0010185929, 0.007955137, 0.005633194, 0.2309027, 0.09800527, -0.01881873, -0.0054870537, -0.0005230485, 0.010763998) * input_6(-1.0, 1.0); + result += mat4(-0.0077177384, -0.059574712, 0.1445612, 0.06977072, 0.0038419527, 0.012164147, -0.027048977, -0.065440625, -0.03133933, -0.024017794, 0.070116915, 0.07457943, -0.05623605, -0.016394427, -0.31793258, -0.09224832) * input_6(0.0, -1.0); + result += mat4(-0.007605948, 0.027084487, 0.1388344, 0.060386524, -0.0039116177, 0.036745083, 0.21956106, -0.14047654, -0.0080816345, -0.019003639, 0.11900905, 0.08581742, 0.0021272888, -0.001268751, 0.029632408, 0.0073218457) * input_6(0.0, 0.0); + result += mat4(-0.004852307, -0.0034594839, -0.27971685, -0.12147681, 0.016969781, -0.014290795, -0.0154893175, -0.0022230742, -0.00869109, -0.0016019101, 0.07625607, -0.049466204, 0.016177002, -0.0032172399, -0.50094014, -0.0108294645) * input_6(0.0, 1.0); + result += mat4(0.018177683, 0.030663697, 0.36486167, 0.02040913, -0.0009196615, -0.048053715, -0.18916018, -0.053888746, 0.0022225305, 0.027562024, 0.34088162, 0.036287606, -0.016548842, 0.009173897, 0.019120453, -0.0065970123) * input_6(1.0, -1.0); + result += mat4(-0.009423682, -0.0043202704, 0.025023062, -0.016417854, -0.0020454796, -0.019186309, 0.0525002, 0.015519505, -0.010432189, -0.008746944, 0.44086388, 0.019795235, -0.005344897, -0.039503712, 0.05785775, -0.017486554) * input_6(1.0, 0.0); + result += mat4(-0.010687773, 0.001337412, -0.016755147, 0.0025760345, -0.008162431, -0.0019693493, -0.07485133, -0.06324334, 0.008998383, -0.0031509064, 0.29332292, -0.009851714, -0.026127186, 0.00064309884, -0.06494559, -0.032815274) * input_6(1.0, 1.0); + result += mat4(-0.037705835, -0.0130758025, 0.5850358, -0.009746759, -0.071314685, 0.0016759513, 0.004428721, 0.118870445, 0.14588675, 0.16455339, -0.7024222, 0.25498018, 0.03281113, 0.017175011, -0.1781448, -0.021931939) * input_7(-1.0, -1.0); + result += mat4(0.009581822, -0.025477687, 0.09010108, -0.053881437, 0.01686741, 0.014939854, -0.5093557, -0.26347882, 0.008028051, 0.004096393, -0.09447917, -0.094785616, -0.018960407, -0.016394764, -0.49230388, -0.091785304) * input_7(-1.0, 0.0); + result += mat4(-0.004202115, 0.010778368, -0.010181873, 0.011650989, -0.0007817899, 0.0029690021, -0.08104999, -0.19282201, 0.013219971, -0.0190985, 0.08299891, 0.0392517, -0.0009831722, 0.012620727, 0.096635126, 0.06319454) * input_7(-1.0, 1.0); + result += mat4(-0.013643092, -0.04096998, 0.052113153, -0.06323635, -0.055489387, -0.1567693, -0.34956598, -0.05666713, -0.016738947, -0.06316308, -0.040698215, -0.117831014, -0.030078983, -0.01137924, -0.024948454, -0.0005349433) * input_7(0.0, -1.0); + result += mat4(0.041701175, 0.006105934, 0.20424835, -0.040454734, -0.015955452, -0.072707854, -0.12693776, -0.032015707, -0.010331479, 0.0451668, -0.055228025, 0.13327964, -0.027539195, 0.008147118, 0.27286094, -0.01982614) * input_7(0.0, 0.0); + result += mat4(0.0013776226, -0.0037501485, -0.07725415, 0.027642729, -0.001847548, 0.009984105, -0.015755186, 0.040859766, 0.014047259, 0.027685784, 0.33161235, -0.008946241, -0.0084895035, -0.0069940323, -0.14262004, -0.0243468) * input_7(0.0, 1.0); + result += mat4(0.012261197, -0.092437446, 0.21983312, -0.017054792, -0.0041544777, 0.03488337, -0.36886647, 0.019028611, -0.011325939, -0.018692404, 0.17516465, -0.050251745, 0.006516534, 0.016488947, -0.1459805, 0.014168921) * input_7(1.0, -1.0); + result += mat4(0.010529883, 0.025845828, -0.0056617344, -0.014460548, 0.012765795, 0.026246132, -0.4768205, 0.011623695, 0.0019371015, 0.018050687, -0.12021107, 0.038618863, 0.0012001077, -0.0006548599, 0.33950573, 0.016518978) * input_7(1.0, 0.0); + result += mat4(0.0047477162, -0.0058974475, -0.17953986, -0.0046533975, -0.00936907, -0.007942567, 0.045295555, 0.026850987, 0.0032184157, -0.0059116217, 0.19023062, 0.01591873, 0.0038053694, 0.008933438, -0.06081983, -0.0141869355) * input_7(1.0, 1.0); + result += vec4(0.010886298, -0.00953048, -0.082913116, -0.008224302); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.018509306, -0.016989648, 0.060947526, -0.061505377, 0.02555421, 0.029824385, -0.025916928, 0.02095998, 0.012494755, 0.033671066, 0.0018065361, 0.0028585894, 0.03045373, 0.024398731, -0.027083753, 0.001032471) * input_0(-1.0, -1.0); + result += mat4(-0.063230455, 0.024843657, -0.061856125, -0.019287568, -0.025488637, -0.017435363, -0.012066332, 0.074053116, -0.05639635, -0.019290503, -0.04796161, 0.022770917, -0.04955368, -0.042646084, -0.028731512, -0.011422883) * input_0(-1.0, 0.0); + result += mat4(0.032104414, -0.015186094, -0.02113679, -0.044792123, 0.022647124, 0.03037333, 0.019250048, -0.018114362, 0.029622015, 0.0011232247, 0.018968418, -0.0042950353, -0.017603293, -0.010073768, -0.008965572, 0.0139052095) * input_0(-1.0, 1.0); + result += mat4(-0.043465897, -0.014678908, 0.020687064, -0.09132519, -0.046298668, -0.034502648, 0.06207456, -0.045374673, -0.0350833, -0.046615154, 0.036088225, -0.04093242, -0.036402326, -0.027842997, 0.015742764, -0.035909645) * input_0(0.0, -1.0); + result += mat4(-0.0044085607, -0.0075735217, 0.002270973, -0.018166326, 0.15930125, 0.16426343, 0.25021443, 0.016013844, 0.07445789, 0.027535653, -0.02240983, 0.15151681, 0.01739672, 0.026912954, 0.017919099, 0.03994764) * input_0(0.0, 0.0); + result += mat4(-0.05732964, -0.04056134, -0.012789075, -0.0030813124, -0.021365754, -0.098692104, -0.100503206, 0.02539092, -0.019071335, 0.02786784, 0.002112742, -0.01277016, -0.047977384, 0.002819429, 0.016340915, -0.005532) * input_0(0.0, 1.0); + result += mat4(0.03291395, -0.0014109471, -0.0034851243, -0.06712021, 0.011441148, 0.060073968, -0.06713933, 0.041222114, -0.03199651, -0.00051302597, 0.016663622, -0.043217007, -0.035009116, -0.00484661, 0.00027474115, -0.0055191903) * input_0(1.0, -1.0); + result += mat4(0.007931837, -0.04304871, -0.13301109, 0.0026564356, 0.0800025, -0.049209718, -0.01509115, -0.0009359079, -0.033349916, -0.008151776, 0.020184264, 0.04812286, -0.05466179, 0.002312753, -0.020389399, 0.015764564) * input_0(1.0, 0.0); + result += mat4(-0.0130662415, -0.053033132, -0.017157728, -0.01157028, 0.0036462212, 0.024899906, 0.06672933, 0.006957157, -0.014271792, 0.046725735, -0.025137866, 0.032129478, 0.01586998, -0.015264078, -0.029262453, -0.0060468432) * input_0(1.0, 1.0); + result += mat4(-0.04344803, -0.028213866, -0.03438923, 0.0002445791, -0.015311072, 0.013650027, 0.006976195, 0.041542225, -0.032143906, -0.00950081, 0.011668949, 0.00047843478, 0.10198413, 0.034026284, 0.02055325, -0.029495958) * input_1(-1.0, -1.0); + result += mat4(-0.06455504, 0.023172392, 0.049558308, -0.03651735, -0.16778548, -0.037747208, 0.03129016, -0.030747691, 0.042508136, 0.033427548, 0.030055558, -0.027643112, -0.019111335, -0.027561417, -0.11547155, -0.0014736129) * input_1(-1.0, 0.0); + result += mat4(-0.009416737, -0.010453533, 0.015957952, 0.010967842, 0.024430115, -0.010276266, 0.03290257, -0.0071279462, -0.013531439, 0.018064618, 0.016049663, -0.029933857, 0.054284014, -0.015440814, -0.004178911, -0.02991771) * input_1(-1.0, 1.0); + result += mat4(-0.043240532, -0.033115603, 0.03304451, -0.020352999, 0.051518057, 0.034040973, -0.0011383167, 0.049781583, 0.06380326, 0.0044065076, -0.007197797, 0.039081927, -0.059381753, -0.060208995, 0.0475749, -0.07415264) * input_1(0.0, -1.0); + result += mat4(-0.08709769, -0.14159822, -0.04998247, 0.020396108, -0.024473093, 0.12816994, 0.027316162, 0.023835253, -0.12113, 0.006569146, 0.0023758989, 0.049026933, 0.113235764, -0.13375868, -0.030719267, 0.046942078) * input_1(0.0, 0.0); + result += mat4(0.024152907, -0.06906165, -0.027086198, 0.030466223, 0.052131142, -0.039514907, -0.036049977, 0.035116054, 0.026878238, -0.046621945, -0.02588701, 0.0016623819, -0.004088854, 0.09082654, 0.08195157, -0.08881434) * input_1(0.0, 1.0); + result += mat4(0.01163446, 0.005151139, -0.029096486, 0.019533766, -0.027461438, -0.030560002, 0.037055496, -0.013844701, -0.034122113, 0.0017041578, -0.0065688933, 0.0029633357, 0.059436925, -0.016889136, -0.010421414, -0.031788763) * input_1(1.0, -1.0); + result += mat4(-0.02190363, -0.017135499, 0.012982516, -0.021223035, -0.04328667, -0.0014447365, -0.029598566, 0.040600624, 0.041599583, -0.05386161, 0.04375701, 0.029875608, -0.053663433, 0.062094603, -0.16069217, 0.034048215) * input_1(1.0, 0.0); + result += mat4(-0.024028873, -0.004432854, 0.0016146688, 0.022071725, -0.0035967089, 0.020743743, 0.008880846, 0.026329871, -0.07290667, -0.049173854, -0.021079404, 0.011756328, 0.05088105, -0.11197305, -0.07454212, -0.02252235) * input_1(1.0, 1.0); + result += mat4(-0.08397028, 0.010121251, 0.014502736, -0.00957888, 0.0021019399, 0.027287697, 0.05351798, 0.017654097, -0.049915753, -0.045997214, 0.016719548, 0.01249058, 0.023048803, -0.0042370907, 0.00975843, -0.003969139) * input_2(-1.0, -1.0); + result += mat4(0.0822, -0.017566849, 0.014330036, -0.006379162, 0.058916703, 0.035066057, 0.031950366, 0.029078867, 0.07039384, 0.05792049, 0.068757236, -0.024996838, -0.21038316, -0.020629225, -0.056251798, -0.028522002) * input_2(-1.0, 0.0); + result += mat4(-0.03153732, 0.0058434624, 0.024161417, -0.009176779, -0.07752215, -0.03648366, -0.030915946, 0.022143636, -0.03247006, -0.0004668304, -0.010173497, 0.013798096, 0.12950674, -0.10428607, -0.06809903, 0.10988229) * input_2(-1.0, 1.0); + result += mat4(-0.12304064, 0.04626553, 0.014311653, 0.0011610746, -0.17038447, -0.048636936, -0.018478584, -0.022213044, 0.06674063, 0.043607466, -0.045160625, 0.038468316, -0.02736856, -0.0016738585, -0.0133850975, -0.03894152) * input_2(0.0, -1.0); + result += mat4(-0.1727031, -0.07479445, -0.010738743, -0.15722415, -0.14183982, 0.15641722, -0.064570576, 0.08124132, -0.15483294, -0.28565875, -0.19674729, -0.133284, -0.06105344, -0.13560292, -0.2272983, -0.024295693) * input_2(0.0, 0.0); + result += mat4(0.029483687, 0.025601616, -0.058458563, 0.06164105, -0.04234277, 0.023760233, 0.038071137, 0.005028029, 0.05311966, 0.04219334, 0.01972099, -0.053629145, 0.02081835, -0.016399289, -0.05590244, 0.09026553) * input_2(0.0, 1.0); + result += mat4(0.079356365, -0.04815375, -0.0038553425, 0.018902449, 0.040720887, 0.0283979, -0.047281366, 0.009503559, -0.024814857, -0.002420881, 0.020387582, -0.004055246, 0.026855264, 0.016720852, -0.017412538, -0.015983025) * input_2(1.0, -1.0); + result += mat4(-0.033271194, 0.02554759, 0.035275213, -0.018742716, 0.024434965, -0.037915688, 0.020553151, 0.02113535, -0.00465755, 0.04691561, -0.028371375, 0.015861062, 0.012566982, 0.02575086, 0.057624605, -0.013446252) * input_2(1.0, 0.0); + result += mat4(-0.010444097, 0.00045604556, 0.034868937, 0.013269227, -0.015528089, 0.018377382, 0.04352538, 0.009727126, 0.01986425, -0.07104542, 0.006432274, -0.01964197, -0.0862937, 0.05998923, 0.03196419, 0.038813956) * input_2(1.0, 1.0); + result += mat4(0.0045712795, 0.018650008, -0.014541706, 0.006683495, -0.100476824, -0.14640035, -0.06286792, -0.07783163, -0.011498544, 0.0135847805, -0.00080378744, 0.02398229, -0.061628368, -0.009107479, -0.010432573, 0.00066913594) * input_3(-1.0, -1.0); + result += mat4(0.007498701, -0.020174146, -0.017241271, 0.026998358, 0.051258627, -0.076599106, -0.09661145, -0.076504335, 0.01926698, 0.0007277607, 0.007614556, 0.020692036, 0.040415827, 0.09474772, 0.002643987, -0.01715372) * input_3(-1.0, 0.0); + result += mat4(0.01321247, -0.0127110565, -0.0019384949, -0.012545931, 0.0021394733, -0.004307379, -0.024937492, 0.046926342, 0.0048011676, 0.012862908, -0.00034739898, 0.043101806, 0.042840637, 0.03719215, 0.00046959397, -0.0043619256) * input_3(-1.0, 1.0); + result += mat4(0.061248887, 0.031810936, 0.026943944, 0.011301096, 0.0394127, 0.00080662966, 0.06439537, -0.0059852866, 0.030294158, 0.026660759, 0.013564704, 0.03957348, 0.11486404, 0.032428566, -0.047017273, 0.057783168) * input_3(0.0, -1.0); + result += mat4(-0.09267053, 0.09003267, 0.059152678, 0.0017201783, -0.044780444, -0.05533997, -0.050066676, 0.04857176, 0.10489547, -0.07664088, -0.003137372, -0.07172738, -0.080280006, -0.10683445, 0.12576558, -0.05544444) * input_3(0.0, 0.0); + result += mat4(-0.024122132, -0.045368463, -0.033367112, 0.0013462906, -0.0070945825, -0.019573972, -0.0067112395, 0.033583518, -0.06621987, 0.074190624, 0.01926285, 0.015072584, -0.03808825, -0.088281505, 0.045100924, 0.016701957) * input_3(0.0, 1.0); + result += mat4(-0.046723906, 0.00976675, -0.022940598, -0.0076086763, 0.011560751, -0.013783158, 0.014037614, -0.013962645, -0.048356857, -0.027907375, 0.0037570957, 0.005392473, -0.034336794, -0.01190735, 0.016558452, 0.028808393) * input_3(1.0, -1.0); + result += mat4(-0.016940132, 0.004777118, 0.02462222, 0.0022882354, -0.0113857025, -0.013523423, 0.025083432, -0.0592129, -0.07438847, 0.04212269, -0.057402346, 0.07754189, 0.023962423, -0.0048614414, 0.009449663, 0.002795318) * input_3(1.0, 0.0); + result += mat4(-0.01814406, 0.013466464, 0.024597052, -0.0014448721, -0.00054100394, -0.016912214, 0.01637635, -0.0031868792, 0.072361074, -0.06500604, -0.03920948, 0.035234246, -0.070431605, 0.04024217, -0.05987502, 0.04046401) * input_3(1.0, 1.0); + result += mat4(0.036558155, 0.03161505, 0.015283501, 0.00032647612, -0.02708649, -0.017865011, 0.014399453, -0.009985427, -0.07452277, -0.020940084, 0.0007518468, 0.0039330604, 0.04414042, 0.03209757, 0.011593134, -0.015718043) * input_4(-1.0, -1.0); + result += mat4(0.06086061, -0.0139030535, 0.023956968, 0.00090731867, 0.033169147, -0.022547603, 0.014459691, 0.0055611082, 0.06182588, 0.016631462, 0.050842058, -0.064650334, -0.15038984, -0.009447764, 0.0071947346, 0.0120341685) * input_4(-1.0, 0.0); + result += mat4(0.031824883, 0.008936567, -0.00083753513, -0.09131009, -0.041241176, -0.0069491193, -0.0037004235, -0.036172222, -0.044330414, -0.010710009, -0.02058313, -0.024655454, -0.07723921, 3.885603e-05, -0.006324579, -0.0005392309) * input_4(-1.0, 1.0); + result += mat4(0.026036104, 0.008426611, 0.000969154, -0.021169262, 0.08439833, -0.04965538, 0.05597713, 0.022137346, 0.049434032, 0.05209101, -0.028931318, 0.0668289, -0.105866134, 0.0032633177, 0.012328449, -0.015205858) * input_4(0.0, -1.0); + result += mat4(0.0062696896, 0.019086363, -0.17680538, -0.00059597415, 0.18132068, 0.319444, 0.054935154, 0.074897334, 0.030514784, -0.046910603, -0.077085234, -0.022977302, -0.077118866, 0.052090645, 0.056160536, 0.018176733) * input_4(0.0, 0.0); + result += mat4(-0.055041272, -0.054696843, 0.043600176, -0.016693886, 0.04616381, 0.007774866, 0.036792524, 0.030460572, -0.029302394, -0.036734123, 0.021332726, -0.013988529, -0.06209909, 0.025059711, -0.024676992, -0.025349444) * input_4(0.0, 1.0); + result += mat4(0.02326897, -0.010825639, -0.022029513, 0.018596629, 0.017298318, 0.0010963173, -0.020950772, 0.010062218, 0.0053892876, -0.005652686, -0.0055970345, -0.003706595, -0.020696286, 0.0077680415, -0.012279506, -0.005860807) * input_4(1.0, -1.0); + result += mat4(0.050036892, -0.025914177, 0.03580067, -0.026830835, 0.006683885, -0.040615868, -0.010365136, 0.009039749, -0.034890488, -0.046898175, -0.05759006, 0.021389231, -0.13870052, -0.019942317, 0.012552429, -0.024501797) * input_4(1.0, 0.0); + result += mat4(-0.03046694, 0.037143204, 0.05537688, 0.018494429, 0.023014976, 0.005118518, -0.014761254, -0.016365187, 0.019034905, 0.029445278, 0.00622176, 0.005829592, -0.06550006, 0.054715663, -0.01970012, -0.019139547) * input_4(1.0, 1.0); + result += mat4(-0.026513848, -0.054576587, 0.024376713, 0.002621203, -0.034184508, -0.024719235, -0.03872114, 0.005157789, 0.010905149, -0.018640846, 0.020399395, -0.0026165815, 0.051751953, 0.015778199, -0.022748008, -0.017892657) * input_5(-1.0, -1.0); + result += mat4(0.014123144, -0.013536821, 0.016743097, -0.003413806, 0.021359317, 0.0043130806, -0.14136459, -0.0025067448, 0.017409533, -0.035317272, -0.0033084666, -0.08857626, -0.03906768, -0.0077534975, 0.025006078, 0.067646064) * input_5(-1.0, 0.0); + result += mat4(-0.04725825, -0.049143415, -0.014458979, -0.036522496, 0.022508757, -0.119014435, -0.11210878, 0.010638653, -0.03189611, 0.012578061, 9.230775e-06, 0.033309046, -0.0048023043, 0.033061784, 0.011828473, -0.011424385) * input_5(-1.0, 1.0); + result += mat4(0.0027869833, -0.011330058, -0.04202105, 0.029171614, 0.0072965533, 0.033443652, -0.074801385, 0.011661379, 0.08668718, -0.06992334, -0.03076776, -0.026809815, -0.18551628, -0.0003424212, 0.070739515, -0.010318488) * input_5(0.0, -1.0); + result += mat4(-0.12200955, -0.030197332, -0.025593333, -0.13233261, -0.01178837, -0.1525183, -0.046370983, -0.06092995, -0.23076372, 0.0515398, -0.09354343, 0.11265243, -0.10647442, -0.012020639, -0.117239624, -0.123550266) * input_5(0.0, 0.0); + result += mat4(-0.029025408, 0.0791471, 0.10297297, -0.009708692, -0.0409675, -0.07326716, -0.0027085617, -0.0174124, 0.076448075, -0.0144508155, -0.027010055, -0.06807266, 0.03270289, -0.010780025, -0.019965643, 0.015170409) * input_5(0.0, 1.0); + result += mat4(-0.061995693, 0.0033670673, 0.030920109, -0.0010129241, 0.003348233, -0.15887496, -0.036873035, -0.010632873, -0.039906397, 0.0057717953, -0.03039562, -0.023997702, 0.0005438581, 0.019159822, -0.0021370207, 0.005818601) * input_5(1.0, -1.0); + result += mat4(0.03298607, 0.042903896, -0.037657533, 0.0026520821, 0.036388133, -0.06960884, -0.18445833, 0.018895695, -0.13300034, -0.21078715, 0.20823592, -0.08531657, 0.005027333, -0.027999243, 0.03809195, 0.0059803016) * input_5(1.0, 0.0); + result += mat4(-0.017271385, -0.038450204, -0.013705345, -0.0073992778, 0.017752381, -0.15109147, -0.14021611, -0.010838192, -0.037786134, -0.032070987, 0.15213025, -0.1205572, -0.042355623, 0.012225842, 0.04487134, 0.017127633) * input_5(1.0, 1.0); + result += mat4(-0.08320157, -0.051961087, 0.0028573077, -0.01267251, -0.029480038, 0.014412251, -0.012067669, -0.006419041, 0.018486617, 0.044940773, 0.013262222, -0.02101134, 0.04120171, 0.050513353, 0.028958384, 0.016754583) * input_6(-1.0, -1.0); + result += mat4(0.09896833, 0.057163365, 0.08427758, -0.03709883, -0.022261739, -0.016847728, -0.04919373, 0.059002522, 0.0517553, 0.051577244, 0.027498383, 0.0027601894, -0.17027487, -0.02609454, -0.09746812, 0.1199249) * input_6(-1.0, 0.0); + result += mat4(0.014355022, 0.00959018, -0.00463655, -0.046313427, 0.026411954, -0.029150218, -0.0113549195, 0.00767923, 0.050835073, 0.028776487, 0.008021022, -0.027662167, 0.03554179, -0.017494893, -0.009545535, 0.011479451) * input_6(-1.0, 1.0); + result += mat4(0.08301236, 0.048735283, -0.01535953, 0.018638546, -0.0052675214, 0.0038053878, 0.011282319, 0.014034396, 0.02695634, 0.03888661, 0.024647528, -0.012445905, -0.15870923, -0.02357646, 0.050646074, -0.063188545) * input_6(0.0, -1.0); + result += mat4(-0.025119945, -0.14558405, -0.1325011, 0.02830919, -0.003953523, 0.054627493, 0.026096813, 0.004854074, 0.14577846, 0.046783455, 0.01116061, 0.010557404, 0.027377132, -0.12479972, -0.17528844, -0.17789401) * input_6(0.0, 0.0); + result += mat4(-0.0092701325, -0.011898183, -0.037468344, 0.033702567, -0.012566423, -0.036586236, -0.024430295, 0.028265767, 0.024484975, 0.04611445, 0.041005354, -0.014832358, -0.10328663, -0.050757736, 0.05422795, 0.030792192) * input_6(0.0, 1.0); + result += mat4(0.031977363, -0.039901983, -0.0030728257, -0.004772814, -0.02242162, -0.0097302105, -0.051993128, 0.00050064654, 0.08103353, -0.002427115, -0.022763515, -0.011943429, 0.022362314, -0.0017419867, -0.029956669, -0.01376825) * input_6(1.0, -1.0); + result += mat4(0.015482887, -0.043501582, 0.056691367, -0.023570433, -0.07704026, -0.02716117, -0.054468427, 0.008323946, 0.042377554, 0.045513798, -0.0020785779, -0.011394915, 0.007474596, -0.008462074, -0.008595208, -0.030279888) * input_6(1.0, 0.0); + result += mat4(-0.045759786, 0.058834117, 0.014465497, -0.0061105476, -0.033043884, 0.014778594, -0.00013007852, 0.028940832, -0.020352002, 0.06523404, 0.017736144, -0.024122806, -0.020766348, -0.014419424, 0.0028250737, 0.01684294) * input_6(1.0, 1.0); + result += mat4(0.0036061115, 0.0020241267, -0.018909285, -0.012797526, 0.025493013, -0.016836377, -0.03024178, -0.01945271, 0.10863882, 0.025640728, -0.00618428, 0.054637916, -0.03791618, -0.049522776, 0.015439863, 0.004357588) * input_7(-1.0, -1.0); + result += mat4(-0.047207702, -0.054485753, -0.025936408, -0.033976186, -0.15105374, -0.074582584, -0.036856882, -0.00049877097, -0.014565087, 0.00081335934, 0.03635109, 0.13897598, 0.05920459, -0.031901762, -0.021383977, 0.0110276695) * input_7(-1.0, 0.0); + result += mat4(-0.05586401, 0.016130434, -0.00055949116, 0.03546842, -0.07931429, 0.05132545, -0.083999224, 0.0065410254, -0.017685547, -0.0326569, -0.019051278, -0.020814242, -0.05878625, -0.005455184, 0.0122939935, -0.025710061) * input_7(-1.0, 1.0); + result += mat4(-0.05450703, -0.021822868, -0.019645516, 0.0043590544, -0.03280121, 0.03850433, 0.043812927, -0.0038498633, -0.14204495, -0.12153157, 0.16666903, -0.021137092, 0.024669917, 0.02925336, -0.03262757, 0.02085861) * input_7(0.0, -1.0); + result += mat4(-0.077467054, -0.090258986, -0.14786725, -0.021917699, -0.14561267, -0.1912502, -0.1363453, -0.07657219, 0.16697174, 0.12378567, -0.11193125, -0.06660684, -0.06618886, 0.0248374, 0.004247437, 0.04317546) * input_7(0.0, 0.0); + result += mat4(0.0018830748, 0.03746397, -0.0073905583, -0.048083328, 0.03907653, -0.12704286, -0.046313148, -0.046580806, 0.0018516161, 0.039113402, -0.018860964, 0.08791008, 0.032379154, -0.012670803, -0.0033924303, -0.0010228129) * input_7(0.0, 1.0); + result += mat4(-0.015582473, 0.023575816, 0.038967304, 0.018641835, 0.011107918, -0.0076306215, 0.0027248536, 0.0045339577, -0.04858826, -0.014694197, 0.010881119, -0.003372734, 0.03350203, 0.007941755, 0.020935686, -0.016919265) * input_7(1.0, -1.0); + result += mat4(-0.09881677, -0.11595173, -0.10732212, 0.002560887, -0.015321629, -0.016389774, 0.047857422, -0.06087292, 0.045716062, 0.008342338, 0.05143101, -0.007467512, 0.01587953, -0.01230004, 0.030649487, -0.005144779) * input_7(1.0, 0.0); + result += mat4(0.057036355, -0.032681543, -0.003514492, -0.0071146246, 0.028650124, -0.0071496544, 0.026352359, -0.011611995, 0.012430976, 0.00882937, -0.03785929, 0.011619233, -0.0026628769, 0.02371188, 0.015239265, -0.004094583) * input_7(1.0, 1.0); + result += vec4(-0.017039588, -0.006085328, -0.01648731, -0.01028134); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.27578628, 0.0121225305, 0.010625174, -0.0061012977, -0.039581034, -0.021227747, -0.0033397388, -0.005415037, -0.00047932263, 0.008753966, -0.00013940793, -0.0024740864, -0.00067649456, -0.03493405, -0.005888841, 0.0004625063) * input_0(-1.0, -1.0); + result += mat4(0.12790234, -0.035600964, 0.008778726, -0.0031948048, 0.0021182133, 0.024407553, -0.035850804, 0.004535483, 0.11081955, 0.009419478, -0.017783435, 0.010110803, 0.039448217, 0.019816367, -0.0047741635, -9.5971875e-05) * input_0(-1.0, 0.0); + result += mat4(-0.057005253, -0.057844352, 0.017753186, -0.0019394985, -0.02843832, 0.0119207725, -0.02229353, 0.00076965743, 0.06076401, 0.06961173, -0.010391079, 0.0005508514, -0.06915806, 0.026122473, -0.0027313312, -0.0007146112) * input_0(-1.0, 1.0); + result += mat4(-0.34607276, 0.035638478, -0.0037541415, -0.0026755459, -0.024235452, 0.06986457, 0.07084214, 0.0072348043, -0.04777234, -0.050861545, 0.006495458, -0.0056991205, -0.125694, 0.016999852, 0.013462234, -0.0009465251) * input_0(0.0, -1.0); + result += mat4(0.11539661, -0.054890003, 0.04090696, 0.0048751477, 0.23405161, 0.074605584, 0.11882665, 0.029513566, 0.14143194, -0.003901645, 0.04017449, 0.014540593, 0.101057164, -0.058000658, -0.00549477, 0.0001437142) * input_0(0.0, 0.0); + result += mat4(-0.03527291, -0.0066969483, -0.007994144, -0.01071242, -0.0038900613, -0.06423303, -0.013753135, -0.022700293, 0.17612688, -0.08284576, 0.010574058, -0.0135954395, -0.1014619, 0.019216046, -0.0005779054, 0.0006098999) * input_0(0.0, 1.0); + result += mat4(-0.29782882, 0.023372056, -0.00498586, 7.991977e-06, -0.11896739, -0.055386256, -0.064423315, -0.009725225, -0.13590091, 0.005424374, 0.042906847, 0.0036595976, -0.044331342, 0.009007431, 0.0055864076, 0.0031278653) * input_0(1.0, -1.0); + result += mat4(0.092579015, 0.021556178, 0.0053395694, -0.005685232, -0.009177078, -0.08850509, 0.029807327, -0.060272574, 0.02896382, -0.032896172, 0.0077297296, -0.017138874, 0.08501902, 0.0150877815, 0.0044690697, -0.000818434) * input_0(1.0, 0.0); + result += mat4(-0.012723615, -0.025834927, -0.020049745, 0.07768767, 0.093275435, 0.06284314, 0.028204562, -2.655216, -0.08280847, 0.05529167, 0.005012112, -0.1461646, -0.13612881, -0.030363277, -0.012610734, 0.14755939) * input_0(1.0, 1.0); + result += mat4(-0.16280921, 0.007946133, 0.0035073482, -0.0012987092, 0.023843085, 0.0009989153, 0.019360788, -0.0008451168, 0.03255837, 0.014380423, 0.0017765267, 0.00052058266, 0.0022567878, -0.00044562266, -0.013190647, 0.0035089736) * input_1(-1.0, -1.0); + result += mat4(-0.14862545, 0.03859514, 0.022110142, -0.0021654824, -0.0682796, -0.0753303, 0.014380799, 0.0014642896, 0.05595864, -0.03608531, 0.009903274, 0.00035114159, 0.012444529, -0.013737784, -0.027377905, -0.006117491) * input_1(-1.0, 0.0); + result += mat4(0.022876712, -0.0054122615, -0.008898303, 0.00086547335, -0.04336834, 0.045257524, 0.0031812077, 0.00074586115, -0.0051379357, -0.015052207, 0.008053049, -0.003502786, -0.12654874, -0.0019546319, -0.008503869, 0.0014997232) * input_1(-1.0, 1.0); + result += mat4(-0.17776708, -0.032827172, -0.02338068, -0.0008158063, 0.13881107, -0.024934113, -0.0030494188, 0.0050868317, 0.0888842, -0.045067806, -0.009338026, 0.0022551597, -0.22509082, -0.020342154, -0.04116616, -0.004494186) * input_1(0.0, -1.0); + result += mat4(-0.25188282, -0.11663896, -0.034005698, 0.0026932717, -0.10876116, 0.03911327, 0.047067024, -0.008509453, -0.12479258, 0.12677142, 0.04025791, -0.01438536, 0.03658041, -0.1403573, 0.006758149, 0.017710533) * input_1(0.0, 0.0); + result += mat4(-0.057883248, -0.08418665, -0.014958698, 0.01914731, 0.019355642, -0.17606522, -0.020439822, 0.008068179, -0.06688443, -0.102655046, -0.018982785, -0.01230333, -0.16201955, 0.06665869, 0.013751586, -0.017369753) * input_1(0.0, 1.0); + result += mat4(-0.060382776, 0.010441985, 0.01957188, 0.0026858426, 0.049848564, -0.031871248, -0.0017810548, 0.0060551153, 0.08058957, 0.03464827, 0.0038464372, -0.0025463577, -0.074018456, 0.03969505, 0.0064175767, 0.0026683165) * input_1(1.0, -1.0); + result += mat4(-0.11290679, 0.03346276, 0.007704459, -0.0046309973, -0.007855851, 0.02514768, 0.032015324, 0.012504803, -0.1793795, -0.013715003, -0.02939892, -0.012499603, 0.11950248, 0.032737628, -0.022604018, -0.012972036) * input_1(1.0, 0.0); + result += mat4(0.0024114668, 0.009535042, -0.014787277, -0.6360062, 0.023864806, 0.018556027, 0.0020168165, -2.1839933, -0.024302544, -0.004038048, -0.0067018038, -0.6541761, -0.067970805, -0.037878837, -0.0036173395, -0.92348444) * input_1(1.0, 1.0); + result += mat4(0.013094162, -0.0005659468, 0.024189891, -0.0013157005, 0.017429665, -0.022939164, 0.006362027, 0.00055357575, 0.036682792, 0.0026199697, -0.00032784409, 0.001038714, 0.020816864, -0.031733055, -0.0036696412, -0.0033408392) * input_2(-1.0, -1.0); + result += mat4(-0.100228734, 0.016642068, 0.023907153, 7.102996e-05, 0.007957472, -0.025047941, 0.015478125, 0.0014355863, 0.02273178, 0.013923176, 0.016605001, -0.0037324508, -0.08523468, 0.03758099, 0.0016944426, 0.016240582) * input_2(-1.0, 0.0); + result += mat4(0.06816874, 0.036379643, -0.004106781, 0.0014552447, -0.011905337, -0.124927096, -0.007167423, 0.010002183, 0.06744024, -0.010566163, -0.009162073, 0.0034568473, 0.058723856, 0.031529896, -0.025306785, -0.0034929202) * input_2(-1.0, 1.0); + result += mat4(-0.33819818, 0.026933633, 0.0017642421, 0.010834874, -0.17235446, 0.0030367281, 0.040317483, -0.0022484097, 0.06820035, 0.050157137, -0.0069306367, -0.0036453276, -0.12191722, 0.0057811947, -0.022682767, 0.0049409475) * input_2(0.0, -1.0); + result += mat4(-0.5133845, -0.12121552, 0.0003209149, -0.020537913, 0.0026043665, -0.124072656, -0.003968605, 0.000365989, -0.30651972, -0.07001624, -0.089459814, -0.0050600893, -0.24071102, -0.14987373, -0.023524337, -0.013083204) * input_2(0.0, 0.0); + result += mat4(-0.032684695, -0.08956238, -0.003979724, 0.020689886, -0.125919, 0.062300064, 0.020535357, -0.014482708, -0.018330194, -0.02768999, 0.00465369, -0.010285225, 0.20010246, -0.054369226, 0.04541769, 0.007578437) * input_2(0.0, 1.0); + result += mat4(-0.03127266, -0.025700206, 0.027585633, -0.003371407, -0.09858132, 0.029393079, -0.0011610052, -0.006718794, 0.03343313, -0.019256221, -0.020136325, 0.0012451661, 0.04405709, 0.034847222, 0.0010711146, 0.0018797795) * input_2(1.0, -1.0); + result += mat4(-0.13742775, 0.05844658, 0.020082835, -0.0026078098, -0.03810044, -0.19223022, 0.036560014, -0.0053157834, -0.12796684, -0.09991505, -0.06468747, 0.0018506867, 0.13111728, -0.014782628, -0.033166654, -0.006612872) * input_2(1.0, 0.0); + result += mat4(-0.04618762, 0.017466739, 0.00011533018, -1.4492706, -0.10877959, -0.024476504, 0.010476658, 0.006502373, 0.002781739, 0.008241884, 0.010543738, -1.3460143, 0.07540812, 0.027030528, -0.029567586, -1.6733948) * input_2(1.0, 1.0); + result += mat4(0.116723694, -0.0066354466, -0.035412423, -0.0044309166, 0.016421607, -0.011908279, -0.02287827, -0.0036501463, -0.054644015, 0.01401104, -0.008191969, 0.00735577, 0.06891352, 0.036889687, -0.017169854, 0.00055579736) * input_3(-1.0, -1.0); + result += mat4(-0.025140103, 0.03095952, -0.020033583, 0.0002071432, -0.11625045, -0.15243062, 0.0014574254, 0.006564949, 0.031117942, -0.04048833, -0.004312289, -0.009024313, -0.04370102, 0.028455889, -0.0029273194, -0.004741756) * input_3(-1.0, 0.0); + result += mat4(0.07058334, 0.061867874, -0.016249925, -0.0031651945, -0.05826861, 0.053654537, -0.010303647, 0.010203831, -0.029043224, 0.0037185377, -0.0033330668, 0.0057925885, 0.055340096, -0.06897334, 0.024621785, 0.0011059719) * input_3(-1.0, 1.0); + result += mat4(0.10165874, 0.027891811, -0.0072439346, 0.0061024316, -0.10398517, -0.054664835, -0.09420122, -0.0072436845, -0.039161768, 0.012757689, 0.008960896, -0.0065366062, 0.18208563, -0.032284327, -0.046501834, -0.006532609) * input_3(0.0, -1.0); + result += mat4(-0.13847741, -0.009718622, -0.005163456, -0.002756305, -0.112454586, 0.07941556, 0.0035949128, -0.021411162, -0.07540932, -0.086732164, 0.0046659918, 0.0048053763, 0.070630774, 0.073810115, 0.05555716, 0.019580666) * input_3(0.0, 0.0); + result += mat4(-0.0019921288, -0.009560529, -0.00889745, 0.013084215, 0.04620533, -0.055497784, -0.013281395, 0.0070214514, 0.003372688, -0.060665447, 0.016369304, 0.007688266, 0.1672983, 0.0068032774, -0.045294404, -0.00812386) * input_3(0.0, 1.0); + result += mat4(0.09347155, 0.0028143805, -0.017561996, 0.003085259, -0.02531675, 0.010428232, -0.0014480199, 0.0014434602, -0.067073405, -0.017805932, -0.0034717075, -0.0048296116, 0.13236743, -0.018944152, -0.03396653, -9.155673e-05) * input_3(1.0, -1.0); + result += mat4(-0.100768544, 0.015336358, 0.0019566163, -0.0036588602, 0.06917054, -0.020119332, 0.00056638155, 0.016919984, -0.011077761, 0.015338878, -0.04805522, -0.0081623085, 0.01928804, 0.031067556, 0.0085508125, 0.0005899201) * input_3(1.0, 0.0); + result += mat4(0.058604773, -0.055803638, -0.0062856073, 0.16655236, 0.05264193, -0.013331316, -0.0090780845, -0.065675296, -0.015457585, -0.015229235, -0.0073919385, -0.52359736, 0.16995203, 0.0629763, -0.009293289, -1.5021889) * input_3(1.0, 1.0); + result += mat4(-0.0030227487, -0.037434004, -0.004081395, -0.0019406782, -0.001120537, 0.005874328, 0.0009887072, 0.0058116615, 0.021174375, 0.04319418, 0.0060978723, 0.0039906655, -0.057040248, -0.09195471, -0.01975247, -0.0036244127) * input_4(-1.0, -1.0); + result += mat4(-0.061187502, 0.050357416, 0.0032400922, 0.005228992, 0.098750405, -0.02906802, 0.0316493, -0.010683718, -0.019558037, -0.07568701, 0.029849244, -0.0056221527, 0.11900831, -0.046847455, -0.012699468, 0.002373457) * input_4(-1.0, 0.0); + result += mat4(-0.075368725, -0.031147743, 0.013177409, -0.0022575587, 0.060857754, -0.00859099, 0.013778914, 0.014552406, 0.025491199, -0.0466404, -0.0068467828, 3.6867423e-06, 0.056071907, 0.07780441, -0.0049749305, -0.0030662173) * input_4(-1.0, 1.0); + result += mat4(-0.11674848, 0.032712087, 0.044208653, 0.0012902899, 0.18967563, -0.040595338, 0.045935836, -0.008024212, 0.11053984, -0.026755761, -0.049690314, -0.006602102, -0.12934676, -0.12853439, -0.0029993844, -0.002221725) * input_4(0.0, -1.0); + result += mat4(-0.27206266, -0.00059972174, -0.08662701, -0.010336278, 0.08058504, 0.22896084, -0.00071799924, -0.00079364085, -0.054738957, 0.12540673, -0.019987142, 0.003333219, 0.058792874, -0.14332215, 0.0021383779, -0.0014828066) * input_4(0.0, 0.0); + result += mat4(-0.10960906, 0.07091781, 0.028430771, 0.0013513503, 0.017364344, 0.025595576, 0.0053258054, 0.0039592474, -0.013168944, 0.019447617, -0.011778063, -0.004343667, -0.09928194, -0.24846855, -0.009287605, 0.0059847888) * input_4(0.0, 1.0); + result += mat4(-0.0055105053, 0.0014097193, -0.008771095, -0.0054572485, 0.091301985, -0.00811003, -0.030716954, -0.0021688922, -0.0101913195, -0.0055673434, 0.014570199, -0.0010834358, -0.00072659337, -0.052132484, -0.006290152, -0.0021253203) * input_4(1.0, -1.0); + result += mat4(-0.13174038, 0.034170732, 0.05663651, -0.014474108, -0.014809813, 0.058391888, -0.04488109, 0.0071549634, 0.0765, 0.014411758, 0.04421414, 0.015389076, 0.10351992, -0.04387175, -0.01759257, 0.005367791) * input_4(1.0, 0.0); + result += mat4(0.1146118, -0.047033634, -0.018344427, -0.95473105, -0.06832266, -0.06259988, 0.0024340842, -1.8300622, -0.04482604, 0.05425842, 0.014935592, -0.47404656, -0.2099909, 0.05375453, 0.0029138287, -0.51627856) * input_4(1.0, 1.0); + result += mat4(0.017628305, 0.0051468355, -0.0058901296, -0.002827283, -0.020630067, 0.0025387178, 0.002281083, 0.0003398299, 0.021899737, -0.0013207678, 0.017174827, 0.00941245, -0.12490227, -0.02450487, -0.0057751546, -0.0008881743) * input_5(-1.0, -1.0); + result += mat4(0.024725731, 0.056195483, 0.02271856, -0.0038720898, -0.11782894, -0.051412173, -0.023841923, -0.00011238294, 0.038846668, 0.036929682, 0.010804888, 0.0030851283, 0.12572666, -0.0017040047, 0.009558475, 0.002702369) * input_5(-1.0, 0.0); + result += mat4(-0.01902195, -0.059284866, 0.003893039, -0.002139445, 0.06373433, 0.026405072, -0.018803015, -0.00046367044, -0.0029464585, -0.055697612, 0.012838167, -0.0064311246, -0.07558278, 0.02690948, 0.0019174975, -0.001712259) * input_5(-1.0, 1.0); + result += mat4(-0.044525247, -0.01657942, -0.043836262, 0.0018997141, 0.11881553, 0.034479048, -0.0044193645, 0.0009370542, -0.13549878, -0.119772814, -0.019351037, -0.0017777532, -0.020754699, 0.046439372, 0.017831326, 0.0045093275) * input_5(0.0, -1.0); + result += mat4(-0.41005543, -0.07615779, 0.010060058, -0.0017349074, -0.16508892, -0.018678093, 0.0031712067, 0.001130535, 0.077710226, 0.08836453, -0.100571156, 0.07434148, -0.38019976, -0.0832159, 0.029190177, 0.005496704) * input_5(0.0, 0.0); + result += mat4(-0.15324512, 0.121979356, 0.024024516, -0.009706843, -0.059098452, 0.020082572, -0.00036961676, -0.00037148048, -0.10667995, -0.007651946, -0.004209668, -0.037185457, 0.03257479, -0.095291555, 0.015656022, -0.0031347375) * input_5(0.0, 1.0); + result += mat4(0.03616793, 0.015584882, -0.031145195, -0.0020833542, 0.047690168, -0.012219414, -0.006651687, -0.0014108495, -0.13557804, 0.033213865, 0.06738813, -0.0063050855, 0.034241453, 0.009202262, -0.0106135085, -0.0026094597) * input_5(1.0, -1.0); + result += mat4(0.046285782, 0.041349996, 0.0318317, 0.006644957, -0.06101983, 0.013318948, -0.024082756, -0.0009353895, 0.18375222, -0.1611372, 0.28519374, 0.18767573, -0.15979445, -0.05448229, 0.0030246763, -0.0046520876) * input_5(1.0, 0.0); + result += mat4(-0.1675626, -0.023644041, 0.032133624, -0.24742866, -0.039672207, -0.034120496, -0.0022970021, -1.1572562, 0.0016893842, 0.021391857, 0.035609104, 0.27024528, 0.089234635, -0.0031635, -0.009501135, -1.3759104) * input_5(1.0, 1.0); + result += mat4(0.059075, 0.016437938, -0.0010678065, 7.761749e-05, -0.036594965, -0.05852117, -0.03084261, 0.0004689703, 0.04744536, 0.023891762, 0.0052370294, -0.0018394674, 0.027295072, -0.042270552, -0.024962155, -0.0023260913) * input_6(-1.0, -1.0); + result += mat4(0.049604744, -0.01504419, 0.007898627, 0.0026099053, -0.011800369, 0.00135119, 0.004356952, -0.0022399942, 0.08761654, 0.0049498435, 0.004313822, 0.0007273144, 0.080626994, -0.027698476, -0.05080859, -0.007994403) * input_6(-1.0, 0.0); + result += mat4(0.017386274, -0.011061079, -0.014446858, 0.0011932357, 0.02389924, 0.070641406, -0.00073542865, -0.0003748208, 0.08016608, 0.034339942, -0.0112223, -0.0058516464, -0.051622372, 0.09330633, -0.023278806, 0.015797792) * input_6(-1.0, 1.0); + result += mat4(0.12271391, 0.035880588, -0.048332267, 0.005039153, -0.058214683, 0.002199026, -0.01917364, 0.004200936, 0.1223032, 0.025386538, -0.009804239, -0.002201784, -0.23711184, 0.01549849, 0.111209914, -0.004295105) * input_6(0.0, -1.0); + result += mat4(0.01360674, 0.07531278, 0.011233136, -0.013482569, -0.1377257, -0.07031145, 0.0569199, 0.00057526794, 0.09947479, 0.015542018, -0.013056265, -0.012083219, -0.23336028, -0.15074195, 0.012750164, 0.05723943) * input_6(0.0, 0.0); + result += mat4(0.019495813, -0.010956433, -0.0058627366, -0.0010181839, 0.062022913, -0.0052415575, -0.012969628, -0.0007336179, -0.033141136, 0.037591353, -0.016127307, -0.008500654, -0.07301134, 0.04498796, 0.021192405, -0.02559582) * input_6(0.0, 1.0); + result += mat4(0.13335523, 0.017858416, -0.0034185036, 0.0027607684, -0.036220286, -0.02492331, -0.05458117, 0.005084105, 0.05720121, 0.015785277, -0.0069457926, 0.0019537397, 0.037653558, 0.09211936, 0.050970417, 0.013005553) * input_6(1.0, -1.0); + result += mat4(0.03419088, -0.008216269, 0.023973297, 0.006610975, -0.1636157, -0.019634819, 0.0060852417, -0.007069068, 0.17578416, 0.06983467, 0.0055166553, -0.0036391516, -0.016164543, -0.078935474, -0.009752395, 0.015301931) * input_6(1.0, 0.0); + result += mat4(0.060657267, 0.0577458, -0.020053297, -0.25764263, 0.028433481, -0.056947924, -0.020932756, -0.27603048, 0.0562833, 0.066464916, -0.008195478, 0.5730163, -0.014172591, -0.061230518, -0.0015082477, -1.673264) * input_6(1.0, 1.0); + result += mat4(-0.06401694, 0.0031264417, 0.025790809, 0.0012727958, 0.038932055, 0.02019697, -0.014455798, -0.0018968266, -0.0395283, 0.026220629, 0.029989839, -0.015556782, -0.14811574, 0.02023297, -0.022859741, 0.0021152715) * input_7(-1.0, -1.0); + result += mat4(0.020095866, -0.031200882, 0.011999498, -0.0062620994, -0.16618823, -0.0038902508, -0.022874242, 0.0016389696, -0.096902885, -0.0022641332, -0.0018466789, 0.016922146, 0.052521866, -0.08340896, -0.009848826, 0.0054208166) * input_7(-1.0, 0.0); + result += mat4(0.02571211, -0.07163983, -0.004991194, 0.0027551046, -0.02467803, -0.047194775, -0.020558707, -0.0012762519, 0.03494831, 0.048131872, 0.0016296033, -0.031757984, -0.08475397, -0.0072194138, -0.0031137115, -0.00034042957) * input_7(-1.0, 1.0); + result += mat4(-0.04549482, 0.043915372, -0.011587199, -0.006101935, -0.019786082, 0.0071629784, -0.00050986314, 6.659411e-05, 0.09958367, 0.01680286, 0.096062236, -0.015933588, 0.013839777, 0.02146509, -0.015249538, -0.008781187) * input_7(0.0, -1.0); + result += mat4(0.041511647, -0.1489435, -0.012755963, 0.0018242759, -0.32710472, -0.1280885, -0.060459793, 0.00029825215, -0.06778582, 0.0654459, -0.04582764, 0.24903594, 0.073489636, 0.107100815, -0.004083888, 0.009536755) * input_7(0.0, 0.0); + result += mat4(-0.012628808, -0.0777161, 0.03824877, -0.012930329, -0.15631203, -0.12171231, -0.028264444, -0.001525453, 0.044160057, -0.04902599, -0.029008085, 0.28476217, -0.0021558888, 0.0026096536, -0.017499425, -0.00035680586) * input_7(0.0, 1.0); + result += mat4(-0.04508985, -0.040204354, -0.022708343, -0.00047163366, -0.027166761, 0.015976992, 0.004380345, 0.0030794293, -0.041254256, -0.0248063, 0.04699349, -0.0075169806, 0.076706395, -0.028412437, 0.005061149, -0.00031784267) * input_7(1.0, -1.0); + result += mat4(-0.011064264, -0.08422908, -0.053511664, 0.018820249, -0.044160128, -0.088603556, -0.018196752, -0.0019257767, 0.041127574, -0.0039071906, -0.053967793, 0.16266057, 0.04326402, -0.041606367, -0.0045363577, -0.005413961) * input_7(1.0, 0.0); + result += mat4(0.08091177, -0.019675918, 0.025179503, -2.3768895, -0.0239217, 0.00829099, 0.010903377, -2.453809, 0.035138432, 0.026246144, 0.0061875666, -0.08008006, 0.047461007, 0.012247078, -0.0033450671, -1.255269) * input_7(1.0, 1.0); + result += vec4(-0.012234143, -0.00836323, 8.422019e-05, 0.004255854); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf4 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.02389548, -0.00774343, -0.0814028, 0.008770291, 0.032156624, -0.02532577, -0.03399355, -0.030789, -0.009147152, -0.00012549783, 0.05632879, 0.03872125, -0.0016637084, -0.017460864, -0.016161606, -0.02249141) * input_0(-1.0, -1.0); + result += mat4(0.002605343, 0.030325083, 0.06577547, 0.023861038, -0.05011171, -0.013064025, 0.05912438, -0.0020152903, -0.025255298, 0.02641399, -0.011861473, 0.03905392, -0.013406437, 0.03966153, 0.017516121, 0.033751786) * input_0(-1.0, 0.0); + result += mat4(0.005026917, 0.07625337, 0.047292996, 0.0065855477, -0.013891191, -0.09933192, 0.015432027, 0.011062503, 0.011606958, 0.026003981, -0.012626479, 0.022800125, -0.007433788, -0.0034462002, -0.038238686, 0.030061057) * input_0(-1.0, 1.0); + result += mat4(-0.028761124, -0.0070372457, -0.043425202, 0.03434272, -0.011087638, 0.0069844346, 0.10191849, 0.02357048, -0.055198997, -0.05121544, -0.02558473, -0.009495578, -0.026489425, 0.009368162, 0.057368882, 0.032462828) * input_0(0.0, -1.0); + result += mat4(-0.0068483227, 0.050081637, 0.06640812, 0.020373186, 0.23464255, 0.09030832, 0.1627649, 0.3115221, 0.10960227, 0.010094926, 0.056369398, -0.16245568, 0.036107566, -0.021166686, -0.022724576, -0.057247777) * input_0(0.0, 0.0); + result += mat4(-0.013443984, 0.059648853, -0.07452699, 0.0059818216, 0.11182785, -0.21577191, -0.092279315, -0.04561496, -0.01883711, 0.014241237, -0.11917438, -0.020918338, -0.0039960146, -0.12392488, -0.0011719083, 0.00631158) * input_0(0.0, 1.0); + result += mat4(-0.06996454, 0.0005620512, -0.015580338, 0.0074416003, 0.010157349, 0.005035681, -0.068544745, -0.12128062, -0.0074824295, -0.0050237705, 0.0043079457, -0.009227931, -0.024362978, 0.0044751614, -0.030828595, 0.0042790184) * input_0(1.0, -1.0); + result += mat4(-0.0081559345, 0.03299076, 0.09985629, 0.0152566265, 0.02816839, 0.0024586334, 0.17556337, -0.058855627, 0.040611263, -0.020007899, 0.032876074, 0.06009162, -0.008088261, 0.0129034035, 0.028770385, 0.0146101015) * input_0(1.0, 0.0); + result += mat4(-0.049821183, 0.09608432, -0.2735255, -0.01906071, -0.013404506, -0.0649924, 0.3149313, 0.019227047, -0.05802015, -0.0036574383, -0.13645753, -0.022859413, -0.014373374, -0.022679873, 0.021207305, -0.02311984) * input_0(1.0, 1.0); + result += mat4(-0.02025163, -0.023412181, -0.04276296, 0.007903897, 0.00071620144, -0.028165516, 0.018056877, -0.057796802, 0.0038644068, 0.0007585212, -0.008313351, 0.053302698, 0.026811816, -0.0010949941, 0.012631973, -0.07440224) * input_1(-1.0, -1.0); + result += mat4(0.0013666771, -0.17443237, 0.06834559, -0.015216451, -0.03607828, 0.026297769, 0.0022441607, -0.008597265, 0.023726007, 0.018796649, 0.046110634, -0.091913566, -0.008761656, 0.018456813, -0.06569971, -0.012799772) * input_1(-1.0, 0.0); + result += mat4(0.0010690384, -0.1327454, -0.055921543, -0.042560335, 0.009909115, -0.061623145, 0.00034268943, -0.0409042, 0.0073874323, 0.053992517, -0.039197545, 0.0010770813, -0.00021083612, 0.0811384, 0.04455579, 0.010973754) * input_1(-1.0, 1.0); + result += mat4(-0.010510377, -0.024608638, 0.0072615417, -0.05831338, 0.0054529365, 0.0005890053, -0.006160807, -0.07427582, 0.015175305, -0.0012771242, -0.0062244334, -0.049910422, -0.03215891, -0.036925364, -0.0041823466, 0.030586857) * input_1(0.0, -1.0); + result += mat4(-0.022079354, -0.04163541, -0.11865848, -0.06418674, 0.0011670921, -0.034087036, 0.08047305, -0.1348079, 0.06910766, 0.0586979, -0.04660666, -0.004796465, 0.06477682, 0.13995929, -0.063434556, -0.12555146) * input_1(0.0, 0.0); + result += mat4(0.008046133, -0.13952817, -0.04262659, -0.09966327, -0.012287425, -0.0021900523, -0.2529509, -0.041402522, -0.0005860744, -0.08384117, -0.08842845, -0.006770764, -0.017138254, 0.14711982, 0.061743602, 0.030477786) * input_1(0.0, 1.0); + result += mat4(-0.007335795, 0.00788975, -0.07116687, -0.010594453, 0.011064082, -0.018507885, 0.010041483, 0.027698928, 0.021324106, 0.0015893326, 0.041948248, 0.035825793, -0.018326629, -0.018225854, -0.1094049, 0.01155338) * input_1(1.0, -1.0); + result += mat4(0.0052596154, -0.036407545, 0.009865742, 0.041217543, -0.0077315588, -0.014461531, -0.08999888, 0.0575812, -0.002895678, 0.011428701, -0.21217148, 0.0049369484, 0.0064634015, 0.04729725, 0.06578962, -0.028886689) * input_1(1.0, 0.0); + result += mat4(0.0056764963, -0.06485207, -0.20998098, -0.011425548, -0.029232739, 0.01563031, 0.08505461, 0.020116493, 0.007225203, -0.060755998, -0.12675002, 0.008240969, 0.0040105153, 0.018869173, -0.11065918, -0.069586866) * input_1(1.0, 1.0); + result += mat4(-0.0015851295, -0.025605952, -0.015975002, -0.009353461, -0.0029006044, -0.0020317007, -0.023038134, -0.0032774985, 0.0054939426, 0.023976406, 0.02471304, 0.038035747, -0.017633596, 0.0029921923, -0.0055964543, 0.033887595) * input_2(-1.0, -1.0); + result += mat4(0.011958679, -0.07295665, 0.03809456, -0.041178685, 0.043089937, 0.037588965, 0.018016353, -0.17839745, 0.029464068, -0.14712866, 0.0039991154, -0.043295726, -0.055986334, 0.05653732, -0.0067059286, -0.056869354) * input_2(-1.0, 0.0); + result += mat4(-0.00041678705, -0.042975847, -0.09822136, 0.04164425, -0.010471196, 0.017994238, -0.038805015, -0.062241495, 0.0003360408, 0.008047462, 0.013895096, -0.011285693, 0.066530176, -0.54218405, -0.18467893, 0.04428079) * input_2(-1.0, 1.0); + result += mat4(0.026895646, 0.006538977, -0.03603301, -0.0055475105, -0.04128554, -0.0013031018, -0.015350126, 0.00048672405, 0.012440598, 0.039203484, 0.018964192, -0.007954962, -0.008671649, -0.013701391, -0.012214102, -0.033008385) * input_2(0.0, -1.0); + result += mat4(-0.08657956, -0.0262184, -0.088460535, -0.03599527, 0.024985166, 0.061659623, -0.0075098667, -0.0141829215, -0.15779586, -0.15118779, -0.153548, -0.1913631, -0.07025957, 0.101165846, -0.24514315, -0.2431238) * input_2(0.0, 0.0); + result += mat4(0.04673782, -0.025552774, -0.38007677, -0.067183614, -0.041641846, 0.08594154, 0.059586223, 0.012355838, -0.045001335, 0.05862416, 0.13700151, 0.014938073, 0.16824041, -0.21328805, -0.080617264, 0.024519252) * input_2(0.0, 1.0); + result += mat4(0.019479878, 0.0022432655, -0.15347895, -0.029769797, -0.00572178, 0.017865522, -0.101995565, -0.09899308, 0.016781747, 0.0121864, 0.009621332, -0.032087468, 0.0002670205, -0.016740585, -0.088256404, 0.0082494635) * input_2(1.0, -1.0); + result += mat4(0.013768804, -0.009389633, 0.115856394, 0.039197568, 0.014830983, -0.037260868, 0.019630436, -0.16640662, -0.007756282, -0.042286977, -0.07144841, 0.0007312506, 0.015464081, -0.008643112, -0.017758701, 0.014653213) * input_2(1.0, 0.0); + result += mat4(-0.015951514, -0.011178362, -0.052425537, 0.025865663, -0.017177384, 0.006130332, -0.023891184, -0.023214903, -0.02390828, 0.009334604, -0.20430246, -0.018158441, -0.033156794, -0.020300359, -0.20724273, 0.05334479) * input_2(1.0, 1.0); + result += mat4(-0.025059866, -0.023247503, 0.04240196, 0.015574309, -0.022966165, 0.0029139896, -0.008859912, -0.0019172684, 0.013565452, 0.010946739, -0.019907823, 0.0051607587, 0.0061561535, -0.0032343129, 0.0011744744, 0.04308353) * input_3(-1.0, -1.0); + result += mat4(-0.005508625, 0.05752658, -0.054878537, 0.097194634, -0.032531843, -0.1641955, -0.05747641, -0.16150737, 0.008439208, -0.050426617, 0.021256696, -0.065507926, -0.002070177, -0.083684415, -0.065536104, 0.0060725682) * input_3(-1.0, 0.0); + result += mat4(-0.012209297, -0.049532026, 0.09240235, 0.005264136, -0.016012043, -0.012989188, 0.0003346728, 0.03716833, 0.003515961, -0.07362262, 0.00828347, 0.008090399, -0.011987292, 0.1855405, 0.13913906, -0.096457295) * input_3(-1.0, 1.0); + result += mat4(0.020093968, -0.011664452, -0.024252763, -0.03756664, -0.03043907, -0.008529955, -0.00523508, 0.040490255, 0.028890133, 0.018368997, 0.04023195, -0.038170304, 0.031868413, 0.0290039, -0.03204818, -0.060358264) * input_3(0.0, -1.0); + result += mat4(0.0055670314, 0.03427107, 0.036331818, 0.032354306, -0.016315376, -0.007564048, -0.16822383, 0.023445517, 0.04970126, -0.03884134, -0.0552931, -0.13303414, -0.04131086, -0.071704775, 0.11223943, 0.29524958) * input_3(0.0, 0.0); + result += mat4(0.019287532, -0.07673019, -0.0747636, 0.011788463, 0.018629055, -0.039509375, -0.116795905, -0.03616367, 0.038896013, 0.008528454, 0.022861557, 0.04728625, -0.0045928922, 0.08200724, 0.04567201, -0.015027085) * input_3(0.0, 1.0); + result += mat4(0.028681643, 0.0050308434, 0.022150347, 0.035187144, 0.0052427803, 0.0064399783, -0.052717395, -0.015364779, 0.011124951, 0.019525701, -0.032677133, 0.012713197, 0.0012619881, -0.012764166, 0.08457261, 0.022693858) * input_3(1.0, -1.0); + result += mat4(-0.024906142, 0.013049323, -0.098111734, -0.05156838, 0.021969667, 0.019689875, 0.024145084, -0.0062103034, -0.027603267, -0.008726888, -0.04087396, 0.060981877, -0.017507207, -0.02320419, -0.08460462, -0.09321069) * input_3(1.0, 0.0); + result += mat4(0.01673064, -0.013603614, -0.010530905, -0.020068908, -0.023107454, 0.0065123285, -0.03589647, 0.014113229, -0.009106457, -0.04073597, -0.05022443, -0.058139473, 0.033717718, 0.08370277, -0.006211466, 0.009209057) * input_3(1.0, 1.0); + result += mat4(-0.011609972, -0.0035262185, 0.021453543, -0.06424324, -0.0377914, -0.0045636552, 0.0109291375, 0.06295226, 0.010552618, 0.022015093, 0.017659115, 0.058372144, -0.004730003, 0.040928558, 0.032151744, -0.12416849) * input_4(-1.0, -1.0); + result += mat4(0.018645583, 0.029733377, -0.00049209694, 0.111369655, 0.047996897, 0.18721747, 0.08468154, 0.019465528, 0.053998165, -0.058968503, 0.040082343, -0.17105776, -0.03471407, 0.0022805526, 0.03186472, 0.050820313) * input_4(-1.0, 0.0); + result += mat4(0.026148278, -0.045971815, -0.13120514, -0.02675446, -0.0133253215, -0.051793724, -0.021201083, 0.07076798, -0.00595133, 0.09165831, -0.085259125, -0.0099019045, -0.038634572, 0.004662513, 0.010297878, -0.023099184) * input_4(-1.0, 1.0); + result += mat4(-0.0057632374, -0.00413543, -0.024337472, 0.08214243, 0.012973941, -0.028646389, 0.031643733, 0.116342604, 0.038012944, 0.0023522915, 0.049420454, -0.056248702, -0.025898896, -0.03701072, 0.037939362, -0.09925988) * input_4(0.0, -1.0); + result += mat4(-0.06099313, -0.0027348378, -0.06966261, -0.004373442, -0.037563365, 0.1678737, 0.0011884151, -0.2376631, -0.05864263, -0.019266674, -0.10659782, 0.14338474, 0.032230664, 0.03992982, 0.02828903, -0.29751295) * input_4(0.0, 0.0); + result += mat4(-0.013384704, -0.045893654, 0.023922313, 0.046213266, -0.017002147, 0.013821579, 0.29436183, -0.018323697, -0.042547505, 0.12360707, -0.064315215, -0.011415512, -0.028537426, 0.026591485, -0.04372539, -0.33247232) * input_4(0.0, 1.0); + result += mat4(0.0052868137, -0.025811834, -0.06072381, 0.046985447, -0.010873348, -0.015858693, 0.15273908, 0.050114986, 0.021989118, 0.001762402, -0.028840812, 0.001318748, -0.024187874, 0.02533546, -0.033601224, -0.05993039) * input_4(1.0, -1.0); + result += mat4(-0.010628134, 0.0019503774, 0.024996644, -0.02670598, -0.059290525, 0.048697833, -0.10184303, 0.00707945, -0.019802483, 0.0001059684, -0.12611273, 0.028628282, -0.019748608, 0.025507318, 0.06180936, 0.033090692) * input_4(1.0, 0.0); + result += mat4(0.016552554, -0.010256088, -0.18990292, 0.032933764, 0.01777835, -0.018467963, -0.056090627, -0.01995153, -0.021655988, -0.0075637056, 0.17697605, 0.0071863136, -0.038877897, 0.012690989, -0.011224158, 0.019947145) * input_4(1.0, 1.0); + result += mat4(-0.008184669, -0.0076002623, -0.04955537, 0.019677375, 0.009139372, 0.04066311, 0.029961962, -0.0024792403, -0.013381748, 0.001713651, 0.017354649, 0.059962817, -0.008608209, -0.03547226, -0.0010021977, -0.03611055) * input_5(-1.0, -1.0); + result += mat4(0.023807378, -0.0885672, 0.025123106, 0.031260572, 0.0022287283, -0.09464576, -0.0063515035, -0.023026811, 0.019551078, 0.020632086, -0.007923339, -0.017893968, -0.013615644, -0.0078356145, 0.012632361, 0.017571041) * input_5(-1.0, 0.0); + result += mat4(-0.011483869, 0.09446759, 0.032161072, -0.02172891, -0.013437727, 0.0051687984, -0.004671579, 0.005297258, 0.017378306, 0.07333006, -0.04213149, -0.05437635, 0.015287982, -0.0029528784, 0.0048117796, 0.022745462) * input_5(-1.0, 1.0); + result += mat4(0.018355342, 0.03648334, -0.033662915, -0.009143178, -0.00021797192, 0.007860995, -0.019359568, 0.025703626, -0.050907098, -0.054309227, -0.047092374, -0.10352626, -0.008752603, -0.0060682027, 0.059124194, 0.0052918107) * input_5(0.0, -1.0); + result += mat4(-0.121547595, -0.030952375, -0.05506929, -0.10816023, -0.006186564, 0.0297207, -0.11918883, -0.033429004, -0.13428813, 0.23241067, -0.07640268, 0.02607472, -0.11357316, -0.045648366, -0.06931212, -0.066486) * input_5(0.0, 0.0); + result += mat4(-0.007920337, 0.05313394, -0.17478855, 0.08023013, 0.014433483, -0.049133535, -0.2153931, 0.032207865, -0.02906954, -0.111420676, 0.0095503805, -0.079872616, -0.014131019, -0.1904765, 0.056864023, -0.03136935) * input_5(0.0, 1.0); + result += mat4(-0.013594689, -0.004482104, 0.08396082, 0.016487213, -0.00038420077, -0.022021392, -3.2538483e-06, -0.011455361, 0.04086411, -0.010776266, -0.0066183736, -0.033376247, -0.015052522, -0.0050448235, 0.010738776, 0.03153415) * input_5(1.0, -1.0); + result += mat4(-0.018755773, 0.015031416, -0.2504878, 0.027862115, -0.010107387, 0.0156052755, -0.1858757, 0.022784248, 0.14481731, 0.032372203, -0.020600744, -0.024059942, 0.00105359, -0.016509643, 0.07181673, 0.010729783) * input_5(1.0, 0.0); + result += mat4(-0.012402923, 0.0095439805, 0.12047513, -0.023150675, 0.008814116, 0.0064560417, -0.37058705, -0.047114518, 0.052076843, 0.024776548, -0.09065802, 0.084195435, 0.040875405, -0.016746992, 0.0012097185, 0.072070815) * input_5(1.0, 1.0); + result += mat4(-0.012485042, 0.010104217, 0.0009993605, 0.07741389, -0.0012868056, -0.009845706, 0.016616298, -0.05003529, -0.01679326, -0.02019538, 0.041357014, 0.0061685676, 0.050835285, 0.015266457, 0.05286158, -0.11190338) * input_6(-1.0, -1.0); + result += mat4(0.027551802, -0.0501282, 0.042350594, -0.05395175, -0.03935914, 0.0234072, -0.013448237, 0.12158456, -0.023411302, 0.023926947, 0.031538695, 0.024296368, -0.043174498, 0.09762381, -0.042344157, 0.17151424) * input_6(-1.0, 0.0); + result += mat4(0.018398575, 0.06161473, -0.088245824, 0.02983327, -0.018068835, -0.011678921, -0.0018590916, 0.01985819, -0.02861218, 0.08160528, 0.079548195, 0.06349283, -0.007423867, -0.0823844, 0.03736073, 0.01849082) * input_6(-1.0, 1.0); + result += mat4(0.034501124, -0.01911598, -0.041868877, 0.0147447875, -0.017520541, 0.03291662, -0.05741786, -0.13655487, -0.017848767, -0.027969256, 0.059609745, 0.015984172, -0.022419633, -0.0120428335, -0.065155745, 0.097198606) * input_6(0.0, -1.0); + result += mat4(0.0030370068, 0.031057049, -0.055750106, 0.13090187, 0.09721641, -0.058014363, 0.042177398, -0.07656439, -0.002697654, 0.023709124, 0.16769807, 0.039160665, -0.019984374, 0.12234669, -0.02181138, -0.18421458) * input_6(0.0, 0.0); + result += mat4(0.023837082, -0.05683256, -0.06565693, 0.031996332, 0.03853919, -0.008837577, -0.12249924, 0.00035335656, -0.00052717497, 0.08831169, 0.08649786, 0.000837344, 0.1303016, -0.037036832, -0.20018092, -0.0095668975) * input_6(0.0, 1.0); + result += mat4(0.03901908, -0.033156514, -0.015396523, 0.048294615, -0.025347328, -0.0045437627, -0.014615246, 0.043629188, -0.017118996, 0.006685487, 0.037289582, 0.022583196, -0.014151304, 0.017604183, -0.10762521, -0.008680008) * input_6(1.0, -1.0); + result += mat4(0.0427555, -0.012089204, -0.0434288, 0.03559877, -0.054328796, 0.018515132, -0.105042264, -0.0194797, -0.0068089776, 0.019787475, 0.016629351, -0.0076153097, 0.1226028, -0.03516089, 0.05725162, -0.07474666) * input_6(1.0, 0.0); + result += mat4(0.002326467, 0.016178323, -0.043826718, 0.053317647, -0.00045874968, -0.020544544, 0.03752291, -0.019558838, -0.022014216, 0.028736835, 0.16789342, 0.0046391934, -0.027334016, -0.05888252, -0.23419566, -0.026832528) * input_6(1.0, 1.0); + result += mat4(-0.0023785038, 0.005721008, -0.008422394, -0.008420215, -0.005374351, -0.0041707717, 0.016907472, -0.012979405, -0.01878764, 0.017721653, -0.048019957, -0.028412294, 0.007068152, 0.010626468, -0.051531248, 0.011391705) * input_7(-1.0, -1.0); + result += mat4(0.0008376976, 0.027860885, 0.00311813, -0.09750357, -0.04710109, 0.010168494, 0.008375627, 0.029824875, -0.04918759, -0.068262614, 0.07947498, 0.1481983, -0.004753277, -0.022531463, -0.092908256, -0.08789345) * input_7(-1.0, 0.0); + result += mat4(-0.014248965, 0.033956822, -0.09478441, -0.043562908, -0.012080469, -0.11602352, -0.063606024, -0.051883206, 0.000248201, -0.06044441, 0.19782718, 0.05081634, -0.00015867098, 0.04760781, 0.07351917, 0.009201481) * input_7(-1.0, 1.0); + result += mat4(-0.00482447, -0.008773642, -0.001649642, -0.04297373, -0.0040731197, -0.021251895, 0.021271504, 0.07529511, -0.0023591316, 0.02426591, 0.09613944, 0.26697853, -0.0067757335, 0.01565077, -0.0698755, 0.05356197) * input_7(0.0, -1.0); + result += mat4(-0.011983808, -0.009651093, -0.08005982, -0.22293526, -0.053267974, -0.0021050032, -0.15222436, -0.117965996, 0.056661278, -0.063486725, 0.33867007, -0.2368518, -0.00096134783, 0.05073725, 0.15527575, 0.050192602) * input_7(0.0, 0.0); + result += mat4(-0.038322005, 0.08685852, 0.010585568, -0.07365524, -0.06758348, -0.1348069, -0.21252057, -0.099133, -0.031672303, 0.047999393, -0.37758297, 0.018955264, -0.014766996, -0.008981568, -0.092716694, -0.020573566) * input_7(0.0, 1.0); + result += mat4(-0.010061973, 0.017422043, 0.013954468, -0.037449516, -0.0036245051, -0.0048530586, 0.012088855, -0.02320508, 0.027478606, 0.021382619, 0.12395453, -0.059872907, 0.00015796111, -0.0008837243, 0.053988196, -0.044267744) * input_7(1.0, -1.0); + result += mat4(-0.017688427, -0.027357884, -0.009962669, -0.013005527, 0.005517946, -0.0063490504, 0.06007707, 0.0016813752, -0.018936671, -0.035996232, -0.33785173, 0.09986613, 0.011899574, -0.006505089, -0.06289009, -0.0040891482) * input_7(1.0, 0.0); + result += mat4(0.0020828776, 0.031214481, -0.07874525, -0.069389075, 0.02064844, -0.020292208, -0.17766385, 0.033143155, 0.0024061457, 0.026854029, 0.30295512, -0.03560859, -0.0034636087, 0.0070390073, 0.04113082, 0.031168897) * input_7(1.0, 1.0); + result += vec4(-0.01531239, -0.02951154, -0.026131965, -0.0073898607); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf5 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.1290137, -0.06839725, -0.017099353, 0.28361616, -0.1879636, -0.015679965, 0.14526267, -0.0142944455, 0.21236415, -0.017317642, -0.11531066, -0.008679918, -0.11696221, -0.0115455985, 0.089499615, 0.014413824) * input_0(-1.0, -1.0); + result += mat4(-0.16151574, 0.028628355, -0.11997962, 0.24523586, 0.32196587, 0.08710497, 0.0656823, 0.01900554, -0.041310765, 0.007865188, -0.16203356, -0.06636919, 0.0040357457, -0.012221928, -0.01668233, -0.052956525) * input_0(-1.0, 0.0); + result += mat4(0.18033546, -0.011623027, -0.098241694, 0.26680332, -0.039170418, -0.015082703, -0.06862231, -0.016987063, -0.41057715, 0.026427777, -0.03313224, -0.031425644, 0.069392756, -0.003487697, -0.0807878, -0.020122671) * input_0(-1.0, 1.0); + result += mat4(0.31012708, 0.038163066, -0.13415015, -0.033042498, 0.11989002, 0.119656704, -0.287366, 0.00044674875, -0.6697783, 0.043908857, -0.06966605, -0.03802066, 0.021214716, 0.0031169944, 0.016428407, -0.016696762) * input_0(0.0, -1.0); + result += mat4(0.10178, -0.05517301, 0.013039519, -0.065890364, 0.15707017, -0.020405268, 0.36016396, 0.1557006, -1.67502, 0.029694244, 0.11502719, -0.006614361, -0.03773535, 0.03165765, 0.022372589, -0.064656414) * input_0(0.0, 0.0); + result += mat4(0.20028111, -0.012092823, 0.0012970451, -0.104327425, -0.22369398, 0.081862636, 0.22667822, -0.08141233, -0.6258047, 0.014183983, -0.1818568, -0.047699936, 0.010288551, -0.03773159, 0.013252222, -0.0042512636) * input_0(0.0, 1.0); + result += mat4(-0.00669186, 0.02308431, -0.09767717, 0.015309485, -0.10729389, 0.0012384965, 0.12318409, -0.03945968, -0.16314548, 0.05652029, 0.029816147, -0.023407036, 0.06988548, 0.007163783, -0.02116829, -0.00846377) * input_0(1.0, -1.0); + result += mat4(-0.10288257, -0.11089763, -0.0055759046, -0.0016181871, 0.13858035, 0.14053458, -0.026399018, -0.049619377, 0.36603197, -0.048396993, -0.5324923, 0.01354743, -0.09021968, -0.024828471, -0.007830469, 0.01157398) * input_0(1.0, 0.0); + result += mat4(-0.12014638, -0.027636398, -0.002574958, 0.021807462, 0.25291106, -0.057364438, -0.20705274, -0.04958586, -0.06464252, 0.022308037, -0.24322198, 0.0030404697, -0.03313059, -0.018481746, -0.031612914, -0.018774828) * input_0(1.0, 1.0); + result += mat4(0.026468104, -0.055717677, 0.04291363, -0.0032474443, -0.1385554, 0.034059037, -0.026344439, 0.026704667, 0.24115393, 0.024097638, -0.018612664, 0.011163458, -0.6875323, -0.12755731, 0.09704271, -0.031858277) * input_1(-1.0, -1.0); + result += mat4(0.12875342, -0.016552547, 0.049859837, 0.040819205, -0.20128478, -0.060126703, -0.02699357, -0.032073993, 0.07478893, -0.03430635, -0.081639215, 0.077131376, -0.73457795, 0.037595008, 0.26088175, -0.1121544) * input_1(-1.0, 0.0); + result += mat4(-0.13962923, -0.022432562, -0.00713102, -0.0029700163, -0.11081347, -0.08864311, -0.048942447, 0.060306728, -0.026622588, 0.015549724, 0.04188353, -0.0028624942, -0.03936528, 0.004925492, -0.12489315, 0.035558544) * input_1(-1.0, 1.0); + result += mat4(0.45034203, -0.042745, 0.025524825, -0.023504885, 0.11441731, -0.04354664, 0.05882665, -0.080400296, 0.004015209, -0.027842974, 0.006891144, 0.014542748, -0.17282127, 0.020187007, -0.231019, -0.037347116) * input_1(0.0, -1.0); + result += mat4(0.09698953, -0.02612515, 0.06002412, 0.02302217, -0.18066017, 0.04908445, -0.11590705, -0.10415017, -0.27867046, -0.05359724, 0.055864777, -0.09439383, -0.26080865, -0.09727866, -0.44190305, -0.045305833) * input_1(0.0, 0.0); + result += mat4(-0.36565712, -0.047015402, -0.00784785, 0.003403126, -0.027496979, -0.022098765, -0.046905935, -0.020496737, 0.010549272, 0.016330443, 0.06693558, 0.0001853876, -0.13083509, -0.13504384, -0.22418474, -0.041541927) * input_1(0.0, 1.0); + result += mat4(-0.084313445, -0.01983136, 0.007130944, -0.0005183633, -0.02806097, -0.0034746327, -0.0024011305, 0.019310806, -0.04918597, -0.051271975, 0.026673099, -0.0016564863, -0.02699668, 0.022437017, -0.11994807, -0.03822049) * input_1(1.0, -1.0); + result += mat4(-0.17063026, -0.0011736152, 0.11795962, -0.04984254, -0.19234872, -0.035202336, -0.039663233, -0.003620292, 0.19419013, 0.0023798235, -0.060226988, 0.021689199, -0.8937384, -0.03308623, 0.11180336, 0.042997457) * input_1(1.0, 0.0); + result += mat4(0.37357897, -0.06253913, -0.12128588, -0.026561063, -0.113242894, -0.0017285186, 0.059527997, 0.0015146878, -0.09456309, -0.04379467, -0.08086822, -0.026468145, -0.46902052, 0.048027966, 0.16702148, 0.021594876) * input_1(1.0, 1.0); + result += mat4(0.10616247, -0.017990576, 0.063024394, 0.006055188, 0.12339893, 0.048130587, 0.021316404, 0.020556789, 0.12516832, 0.031765312, -0.099644735, 0.031032957, 0.20972876, -0.041510604, -0.09165894, 0.021349283) * input_2(-1.0, -1.0); + result += mat4(-0.23243594, -0.0040745493, 0.060904965, 0.039516103, -0.06998445, -0.0212531, -0.023065632, 0.14773779, 0.022287255, 0.00055585586, -0.099970296, 0.16432124, 0.11991417, -0.23604773, -0.26762286, -0.09177212) * input_2(-1.0, 0.0); + result += mat4(0.060150106, -0.0022460052, 0.024305273, -0.058149032, 0.11668332, 0.032855157, 0.09347142, -0.0081668645, -0.12832679, -0.025504878, 0.034015354, 0.04589273, 0.23618487, 0.019363038, 0.02514279, 0.018629001) * input_2(-1.0, 1.0); + result += mat4(0.11517036, -0.11259486, 0.0053362045, 0.094005875, -0.006817081, 0.0127401985, 0.02678426, -0.030993072, -0.49157697, -0.025621625, 0.10017665, -0.054824557, -0.25363278, -0.024006775, 0.028056592, 0.030911677) * input_2(0.0, -1.0); + result += mat4(-0.11555826, -0.26364443, -0.16258475, 0.08296644, -0.39085242, 0.15764624, 0.020099258, 0.10736437, -0.29228547, -0.08229414, -0.20056081, -0.10989344, -0.64920545, -0.03837528, -0.05131088, 0.13292868) * input_2(0.0, 0.0); + result += mat4(0.023615094, 0.081926614, 0.056490865, 0.0029933464, 0.0800932, -0.04491689, -0.023417223, 0.047753774, -0.27293047, 0.034978833, -0.051004827, -0.06280047, 0.119662225, -0.05876381, 0.15965548, -0.088456005) * input_2(0.0, 1.0); + result += mat4(0.19123018, -0.052761357, 0.10829999, -0.017822675, -0.06468227, -0.058956236, 0.10580887, -0.022104932, 0.14177969, 0.010965999, 0.01566728, -0.01817589, -0.0667095, -0.01692304, 0.05813705, -0.0041697524) * input_2(1.0, -1.0); + result += mat4(-0.11388282, 0.041541655, -0.06105298, -0.011088822, -0.09750057, 0.06667192, -0.028789168, -0.05822752, -0.26829967, 0.00951973, -0.026157329, 0.044338096, 0.14406691, 0.048900627, -0.1106078, -0.06008262) * input_2(1.0, 0.0); + result += mat4(-0.029061737, -0.037537646, -0.10132219, -0.0024700577, -0.03154983, 0.015847262, -0.013815717, -0.046370003, -0.25053394, 0.0057759467, -0.002110343, 0.015536197, 0.3284687, -0.035575405, 0.046443507, -0.00034925668) * input_2(1.0, 1.0); + result += mat4(0.10427498, 0.0126044275, 0.07391813, -0.03087857, -0.14533792, -0.0574585, -0.12157403, 0.021109352, 0.11458933, 0.012042836, -0.0049854903, 0.012115284, -0.072200306, 0.021361617, -0.022352884, 0.04026692) * input_3(-1.0, -1.0); + result += mat4(-0.09814302, 0.012867012, 0.12433015, -0.041027144, -0.222164, -0.10938203, -0.06230566, 0.018118002, 0.044128492, 0.0063602575, -0.020158384, -0.009513108, -0.3327867, 0.028385619, 0.19197108, 0.05528708) * input_3(-1.0, 0.0); + result += mat4(0.08478557, 0.017902989, -0.0064466456, -0.0009335251, -0.018045004, -0.020000745, -0.098094575, 0.023076722, 0.053252585, 0.029415056, 0.008841134, -0.028586568, 0.20089632, -0.0011819764, -0.073608726, 0.006487299) * input_3(-1.0, 1.0); + result += mat4(0.12722111, 0.0062319743, 0.16331531, 0.109343044, 0.45115912, -0.06392042, 0.013989812, 0.05873459, -0.19442543, -0.015638014, 0.08834764, -0.04752854, 0.055744942, -0.056427628, 0.086201325, -0.026957147) * input_3(0.0, -1.0); + result += mat4(0.054069757, -0.015565068, 0.0724682, 0.057401706, -0.120737284, -0.04192142, -0.018540207, 0.05904044, -0.18812388, -0.008113565, -0.03528602, -0.104344554, 0.5602464, 0.081155896, -0.14575034, -0.048228435) * input_3(0.0, 0.0); + result += mat4(-0.02939282, -0.00745179, 0.041295327, 0.040945802, 0.083974324, 0.037191365, 0.070550516, -0.0070101535, -0.31101644, 0.026333459, 0.0032690112, -0.062176373, -0.044124156, 0.0802487, -0.028645372, -0.037499607) * input_3(0.0, 1.0); + result += mat4(-0.029173901, -0.030257508, -0.053543463, -0.005357609, -0.03226327, 0.01651912, 0.06327428, 0.007933226, 0.14367978, 0.007279718, -0.12734237, 0.0131970635, 0.14593773, 0.016713876, -0.05339444, 0.0011386329) * input_3(1.0, -1.0); + result += mat4(0.17361663, 0.0024623042, -0.04049533, -0.029892527, -0.08802621, 0.027597185, 0.026051113, -0.040410463, -0.18232852, -0.036680225, -0.10731306, 0.05311646, -0.10151655, 0.002793815, 0.09203975, -0.06411633) * input_3(1.0, 0.0); + result += mat4(0.049109004, -0.008152831, 0.005877637, 0.000809376, 0.18547985, 0.0027571006, 0.0037884768, -0.015027345, -0.4307925, -0.0014817953, 0.029463941, 0.044678595, -0.34137774, -0.04495871, -0.068195276, -0.03632553) * input_3(1.0, 1.0); + result += mat4(0.22018008, 0.014074303, 0.01353429, -0.030459572, 0.33142686, 0.048413236, -0.07602369, -0.034339525, 0.24742728, 0.043755677, -0.17580464, 0.05581646, -0.09151648, 0.014687664, 0.02456996, 0.009476043) * input_4(-1.0, -1.0); + result += mat4(0.096971996, 0.016182195, 0.13531172, -0.022779932, 0.42959172, -0.020950459, -0.12575044, -0.13700947, -0.11265524, -0.08694949, -0.16336593, 0.09143752, -0.014153753, 0.037755605, 0.053236764, -0.06586433) * input_4(-1.0, 0.0); + result += mat4(0.05623776, -0.06385086, -0.020360142, -0.03882489, -0.13017678, 0.023079876, 0.105978034, -0.11690378, -0.23263969, 0.016325042, 0.07749056, -0.027774151, 0.11860087, 0.008610303, -0.07635944, 0.0016089017) * input_4(-1.0, 1.0); + result += mat4(-0.28291267, 0.007945532, 0.10152237, -0.018177845, 0.19489907, 0.06516578, 0.030042127, 0.060947485, -0.2756445, -0.07210355, -0.026600821, 0.009040765, 0.07322998, 0.01407507, 0.073519275, -0.011602628) * input_4(0.0, -1.0); + result += mat4(-0.28621766, -0.058499772, -0.08751562, -0.009857563, -0.03021634, -0.19784665, -0.039807133, 0.15149724, 0.14107013, 0.089629225, 0.07783624, 0.013993804, -0.1253092, 0.021855375, 0.05453983, -0.069314204) * input_4(0.0, 0.0); + result += mat4(0.126378, 0.012431961, 0.10954746, -0.042931125, 0.057251163, 0.034967124, 0.053888883, 0.08709338, 0.19375221, -0.076917686, -0.107513994, -0.08731435, 0.006909737, -0.052722488, -0.010126907, 0.040827733) * input_4(0.0, 1.0); + result += mat4(-0.14679013, -0.013375469, -0.013718565, -0.009144157, -0.009902712, 0.018426636, -0.022851063, 0.021018624, -0.016222885, -0.034929827, 0.041959006, -0.043667294, 0.07436546, 0.027866121, 0.030117162, -0.024988296) * input_4(1.0, -1.0); + result += mat4(0.06649206, 0.024246354, -0.035349462, -0.033328716, -0.2561867, -0.033350784, 0.19039558, 0.09597917, 0.012725083, 0.0037545925, 0.042229537, 0.02141858, -0.054203846, -0.019258404, -0.015381402, 0.017489722) * input_4(1.0, 0.0); + result += mat4(0.20350443, 0.0060268184, 0.03463187, 0.014402595, -0.14466575, 0.06006305, 0.13716154, 0.037867993, -0.16880576, 0.0078262715, 0.01834477, -0.058178872, -0.10246598, 0.0063361786, 0.012673037, 0.08498583) * input_4(1.0, 1.0); + result += mat4(-0.48822176, 0.012194412, 0.053632244, -0.06185686, -0.82097644, 0.0057864212, -0.20286275, 0.022935102, -0.08688444, 0.025211815, -0.12091335, -0.048765574, -0.39901182, -0.044905495, 0.17169371, -0.033509996) * input_5(-1.0, -1.0); + result += mat4(0.15380354, 0.024260454, 0.010307294, 0.03710676, -0.6483247, -0.057804566, 0.19639133, -0.058298353, 0.052677035, -0.09171587, -0.029728904, 0.04915125, 0.101046614, 0.08805808, -0.06493879, -0.1266887) * input_5(-1.0, 0.0); + result += mat4(0.073653825, -0.08281124, -0.0042872354, 0.06399469, -1.5572608, -0.018847812, -0.06892836, -0.022222023, -0.007202455, 0.028636904, 0.07394248, 0.006901518, -0.07621879, -0.018862186, -0.02035059, 0.03322365) * input_5(-1.0, 1.0); + result += mat4(-0.039934166, 0.017145323, -0.02559243, 0.018981235, -0.71604717, -0.21664175, -0.83514506, 0.03542434, -0.0050042192, 0.011866571, 0.0978534, -0.0908234, 0.23530035, 0.08596222, -0.1769396, -0.03565111) * input_5(0.0, -1.0); + result += mat4(-0.04228982, -0.11583186, -0.3192709, -0.04180709, 0.15635891, -0.030177448, -0.6313143, -0.041075774, -0.05331734, -0.17207608, -0.24376373, 0.11218232, -0.49854383, -0.13437301, -0.12412135, -0.114999786) * input_5(0.0, 0.0); + result += mat4(0.49246275, 0.024004506, -0.10480346, 0.120818876, -0.07916963, -0.15747634, -0.8528865, -0.05283866, 0.07593327, 0.025758972, -0.023070823, -0.02679117, -0.30046257, 0.09351747, 0.106698856, -0.01964854) * input_5(0.0, 1.0); + result += mat4(-0.021936456, 0.0048580333, 0.00868419, 0.022586124, -0.98112106, -0.09899109, -0.94025815, 0.015254422, -0.0983654, -0.0061685173, 0.020905044, -0.05332323, -0.014883908, -0.0052199992, 0.015749183, 0.043032315) * input_5(1.0, -1.0); + result += mat4(-0.23136535, -0.02089291, 0.034929067, 0.0046515786, -0.72995305, -0.16933279, 0.05413278, 0.052715037, 0.34563702, 0.05908472, -0.12153645, -0.010953613, -0.10773229, 0.073963135, 0.010100532, -0.002257053) * input_5(1.0, 0.0); + result += mat4(-0.23489112, 0.03952578, 0.3145764, 0.005857613, -0.90943986, 0.018230554, 0.06345421, 0.0069728494, 0.035943426, -0.12398415, -0.008843061, -0.02711249, 0.34749997, -0.044520248, -0.20009981, 0.01823023) * input_5(1.0, 1.0); + result += mat4(0.20651044, 0.04549611, -0.038154285, 0.00739578, -0.38025174, -0.02435737, 0.109138265, 0.0054702754, 0.15956742, 0.04624067, 0.065410614, 0.054466303, -0.337072, -0.06601779, 0.09514914, -0.025947848) * input_6(-1.0, -1.0); + result += mat4(0.12835285, -0.04210153, -0.08535099, 0.20230514, -0.06965551, 0.04975683, 0.0110907825, -0.06943983, 0.33611506, 0.07365019, 0.101055704, 0.11805246, -0.20540367, 0.09807476, 0.12209408, -0.37076387) * input_6(-1.0, 0.0); + result += mat4(0.04602141, -0.021590907, 0.048827372, 0.04275734, 0.05562174, -0.014988903, -0.06696122, 0.026098903, 0.304379, 0.00074560934, -0.0026744737, 0.07304141, 0.18819147, 0.008069784, -0.16447952, -0.09552952) * input_6(-1.0, 1.0); + result += mat4(0.33376113, 0.0035166475, 0.037800953, 0.105220035, -0.15627423, -0.036404073, -0.015308681, -0.051754, 0.40808004, 0.09322622, -0.012477649, 0.074350245, 0.0053399834, 0.03465211, 0.014683291, 0.059001893) * input_6(0.0, -1.0); + result += mat4(0.49089912, -0.1062599, -0.009597673, 0.19959931, -0.1983095, 0.085204, -0.13376316, -0.009942172, -0.050696548, 0.07499521, 0.015137911, 0.046474982, -0.36794752, -0.22067869, -0.26645502, 0.267002) * input_6(0.0, 0.0); + result += mat4(0.295671, 0.054547925, -0.0064802105, -0.0031871528, 0.1467484, 0.029896706, 0.039266083, 0.003349513, 0.20529823, 0.057144225, 0.102691, 0.05015216, 0.10089266, -0.09757243, -0.045515757, 0.121707976) * input_6(0.0, 1.0); + result += mat4(0.15765437, -0.035262268, 0.018059464, -0.062711656, -0.07482689, 0.004403971, -0.07438639, -0.0019275201, -0.010664012, -0.0046005086, 0.08248138, 0.009165164, -0.30050322, -0.021886569, 0.081875004, 0.0052472325) * input_6(1.0, -1.0); + result += mat4(0.38938218, 0.010222572, -0.1182609, -0.024597134, -0.1637757, -0.04527994, -0.027524836, 0.012321286, 0.023679413, 0.021219807, 0.1273509, -0.008103767, 0.16934544, -0.030069841, -0.15521891, -0.098741785) * input_6(1.0, 0.0); + result += mat4(0.026623853, -0.053007424, -0.036409795, -0.009793851, -0.038086724, 0.0046494463, 0.0456872, -0.008021966, 0.24860325, 0.05117159, 0.0576392, -0.0031445858, 0.07395405, 0.004192178, 0.047512725, -0.04554757) * input_6(1.0, 1.0); + result += mat4(-0.3868543, -0.01927288, -0.08999135, -0.09921986, -0.9092015, -0.026121056, 0.025932558, -0.0515, 0.15817854, -0.03451262, 0.30645913, -0.05730063, -0.30129188, -0.011499281, -0.031813417, 0.101132974) * input_7(-1.0, -1.0); + result += mat4(-0.20610209, -0.02151333, -0.17670923, -0.23197855, -0.97129256, -0.17147897, 0.027889753, -0.018319909, 0.028576642, 0.18390864, 0.04533711, 0.045752674, 0.09216005, 0.00439284, -0.07190622, -0.002846383) * input_7(-1.0, 0.0); + result += mat4(-0.17008966, 0.027797868, -0.04125464, -0.1499652, 0.018793246, -0.03504897, 0.030713843, -0.20551535, 0.12533304, -0.05025612, -0.005550658, 0.024753885, 0.042230308, -0.033612203, 0.023246106, 0.0387083) * input_7(-1.0, 1.0); + result += mat4(-0.46838355, -0.005500803, -0.103785686, -0.09837079, -0.069592625, 0.049828652, -0.056213904, 0.027223848, 0.038265046, 0.06488884, -0.17588112, 0.095846765, -0.08035958, -0.0014360662, -0.04899777, 0.06905231) * input_7(0.0, -1.0); + result += mat4(-0.5564736, -0.14597704, -0.32237896, -0.38469225, -0.62836987, -0.3002055, -0.61288804, -0.07625467, -0.015974618, -0.06889799, 0.09889233, -0.16033013, 0.037885435, -0.02206467, 0.038199406, -1.8157873e-05) * input_7(0.0, 0.0); + result += mat4(-0.29261178, -0.039465886, -0.12118729, -0.08452985, -0.4067494, -0.22226433, -0.21408659, 0.00050292665, -0.15398942, 0.046411198, 0.07595716, 0.023528397, -0.1006585, 0.013763942, 0.073200546, 0.01563153) * input_7(0.0, 1.0); + result += mat4(-0.05626743, 0.018943936, -0.10738987, 0.038293507, -0.0041422495, -0.017439397, 0.04963493, -0.011422037, 0.111129224, -0.008415908, -0.040963396, -0.0579375, -0.060222417, 0.005312066, 0.06871665, -0.044801507) * input_7(1.0, -1.0); + result += mat4(-0.676545, -0.047794335, -0.19567138, 0.01273945, -0.17015837, 0.078004226, -0.0877758, -0.016309014, -0.11031485, -0.02216853, 0.100667916, 0.059742186, 0.25142, -0.0037553874, -0.07603966, -0.02186319) * input_7(1.0, 0.0); + result += mat4(-0.25307554, -0.002607744, -0.12810639, 0.028689867, -0.052198038, -0.08248226, -0.098791614, 0.008019996, 0.014927013, 0.053961676, -0.050327238, -0.0067534293, 0.038961805, -0.0038967724, -0.07404836, -0.011040196) * input_7(1.0, 1.0); + result += vec4(-0.057408456, -0.0074031004, -0.0330268, -0.033488765); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf6 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.36052, 0.022477834, 0.06979624, 0.1031177, -0.13538693, -0.021500133, -0.011750609, -0.02724178, -0.25151536, 0.0030647432, -0.018708332, -0.0064937654, 0.06901145, 0.00789062, 0.009823003, -0.019902853) * input_0(-1.0, -1.0); + result += mat4(0.010614831, 0.0072391797, -0.14907841, 0.05807403, 0.08989804, -0.016492464, -0.01694657, -0.022006718, -0.39207262, 0.048844486, 0.0048087933, -0.03305524, 0.047111154, -0.008197534, -0.059287943, -0.04889698) * input_0(-1.0, 0.0); + result += mat4(0.4251848, -0.079933494, 0.00423437, 0.006581883, 0.14593205, 0.0906852, -0.0014003753, -0.08537966, -0.2314726, 0.06308186, -0.0049074283, 0.008717578, 0.16169871, -0.06815848, 0.005292781, -0.042216014) * input_0(-1.0, 1.0); + result += mat4(0.027658412, 0.03028851, 0.0043753386, 0.06519392, 0.24873738, -0.013121755, 0.044636592, -0.026117904, 0.08282227, 0.032548305, -0.09196848, 0.061938904, -0.21957904, 0.022043027, 0.043776475, 0.02409008) * input_0(0.0, -1.0); + result += mat4(-0.091790095, -0.030288966, -0.07376123, -0.029727966, -0.038402256, 0.067055374, 0.023179194, 0.09544887, 0.12001326, -0.07278843, 0.14362761, 0.024015132, 0.0026233476, -0.0055603837, -0.10703273, 0.0005992991) * input_0(0.0, 0.0); + result += mat4(-0.066835135, -0.033628598, -0.003812111, 0.06770658, -0.053370785, -0.091794774, -0.04869501, -0.024435872, -0.17332707, 0.021536794, -0.07362124, -0.0044849208, -0.044874534, -0.048291393, 0.022723872, 0.011150625) * input_0(0.0, 1.0); + result += mat4(0.47692865, 0.00822261, 0.015389415, 0.045366447, -0.3147933, 0.0011198696, 0.022353351, -0.040622983, 0.06533366, 0.018016752, 0.008844341, -0.06717237, 0.075438626, 0.0078033693, 0.07594761, -0.01634917) * input_0(1.0, -1.0); + result += mat4(-0.8383138, 0.046523623, -0.09244759, 0.119731955, 0.061676573, 0.027607843, -0.031304207, 0.025374144, -0.3008859, 0.02935745, -0.026495486, 0.030994793, 0.05479866, 0.0007226191, -0.11628185, 0.0066025467) * input_0(1.0, 0.0); + result += mat4(0.5403236, -0.01531996, -0.036449738, -0.0032914416, -0.09707762, -0.017691152, 0.015085348, -0.08219911, 0.12170628, -0.032692946, 0.02200638, 0.033106953, 0.049944967, -0.018213518, -0.0795533, -0.009698406) * input_0(1.0, 1.0); + result += mat4(0.37626597, -0.048987363, -0.031739507, 0.038741995, 0.054737445, -0.06717995, -0.031386215, 0.022683516, 0.050114233, -0.044264253, 0.0345531, 0.023456192, 0.14411034, 0.052928045, 0.04507443, 0.012233521) * input_1(-1.0, -1.0); + result += mat4(0.12040192, -0.07081814, -0.009449354, 0.035790935, 0.043351736, -0.0054366062, -0.08371321, -0.07438415, -0.1495959, 0.029684601, 0.008728876, 0.043086212, -0.30297413, -0.010108536, 0.043202456, -0.01999407) * input_1(-1.0, 0.0); + result += mat4(-0.68929875, -0.03195204, -0.00525484, 0.033002593, -0.066182986, 0.111669086, -0.03560773, 0.0068470566, -0.18691783, -0.036404055, 0.00973112, 0.03266104, 0.08248582, -0.11824826, 0.042650655, 0.0565456) * input_1(-1.0, 1.0); + result += mat4(-0.031863354, -0.00055179646, -0.07590306, -0.053015027, -0.02495942, -0.014489498, -0.0033485293, 0.10621705, 0.17002748, -0.055441942, 0.026302619, -0.032455795, -0.32145953, 0.05597968, -0.049910553, -0.021395305) * input_1(0.0, -1.0); + result += mat4(0.14591032, -0.031187288, -0.038676456, -0.028299771, -0.12130166, 0.06662377, -0.034676895, -0.037725426, 0.053629957, 0.021749884, -0.014435621, -0.02064363, -0.16946052, -0.038058534, 0.026588261, 0.098950915) * input_1(0.0, 0.0); + result += mat4(0.3569523, -0.102145955, -0.015340908, -0.057321846, -0.2240648, 0.029037125, -0.054727368, -0.07750399, 0.15916355, -0.026837599, -0.021566724, -0.027957523, -0.06941015, -0.081891045, 0.06258525, 0.05143659) * input_1(0.0, 1.0); + result += mat4(0.028291268, -0.020596797, -0.053432662, 0.042565297, 0.06102898, 0.004330375, -0.024760166, 0.027961338, -0.012079152, 2.0493964e-05, -0.025280498, 0.009533858, 0.047754303, 0.0013455569, 0.110309064, -0.0401886) * input_1(1.0, -1.0); + result += mat4(0.022275934, -0.022811178, -0.00044923183, 0.048676994, -0.06049611, 0.009446047, -0.009109679, 0.030194039, -0.08954147, -0.015302161, 0.031514242, -0.03958188, 0.12477837, -0.009276784, -0.03739162, 0.045487512) * input_1(1.0, 0.0); + result += mat4(-0.15409403, -0.032179665, -0.023456555, -0.014125209, 0.0047182417, -0.015129983, -0.0495187, 0.02469184, -0.18257056, -0.014920251, -0.051727697, -0.0041811545, 0.07957542, 0.019849032, 0.0242451, -0.008838385) * input_1(1.0, 1.0); + result += mat4(0.042895753, -0.03128429, -0.002542421, 0.02827763, -0.22336946, 0.0045744646, -0.041843615, -0.011492204, -0.19986737, 0.018604789, -0.039793286, 0.05663524, 0.14150357, 0.06297684, 0.043149892, 0.026781134) * input_2(-1.0, -1.0); + result += mat4(0.33849844, -0.0819814, -0.016206395, 0.022608288, -0.30493858, 0.07404071, 0.006995561, 0.109853886, -0.053748667, -0.04679454, 0.066192456, 0.07791862, -0.20062903, -0.19216034, -0.023579886, 0.14278945) * input_2(-1.0, 0.0); + result += mat4(-0.009797044, 0.059736397, 0.004965643, 0.0046230317, -0.16162276, -0.02462097, -0.03679602, 2.858734e-05, -0.19505042, 0.05873397, -0.016412377, 0.043919906, -0.046987854, 0.15514053, -0.027355513, -0.10445366) * input_2(-1.0, 1.0); + result += mat4(0.15003334, -0.023792027, -0.122482724, -0.04539095, -0.088679254, 0.020072585, 0.011465324, 0.013607834, 0.09904262, -0.009285613, -0.0032991841, 0.0071958993, -0.2806038, 0.011112277, -0.1039368, -0.018857133) * input_2(0.0, -1.0); + result += mat4(-0.028388854, -0.1549545, 0.009800763, 0.03462603, -0.013690213, -0.024283871, -0.1670335, -0.091432765, -0.040155448, -0.02618999, -0.029389163, -0.5222385, -0.04169552, -0.036266148, -0.031926814, -0.19787548) * input_2(0.0, 0.0); + result += mat4(-0.2503498, -0.05505866, -0.015980266, 0.03553097, -0.019550435, -0.015554712, 0.0384006, -0.06934941, -0.2785652, -0.045775447, -0.03755926, 0.009760305, 0.07258234, 0.061892763, -0.16341248, -0.045951944) * input_2(0.0, 1.0); + result += mat4(-0.13072224, -0.037036836, -0.2771454, 0.004589667, -0.031802274, -0.014053201, 0.08035319, 0.031561427, 0.08817671, -0.028120019, -0.115896106, -0.026973844, 0.13743256, -0.020861365, -0.01186744, 0.051238827) * input_2(1.0, -1.0); + result += mat4(-0.0030462625, -0.010141443, 0.09156276, 0.0074734087, -0.27400246, 0.04066789, -0.07543767, 0.008789369, -0.12872113, 0.016769834, -0.025980033, -0.09301612, -0.12029423, 0.037035245, -0.032976102, 0.007164741) * input_2(1.0, 0.0); + result += mat4(0.013842911, 0.010277979, -0.024397569, -0.013194621, 0.021464711, 0.017888095, 0.01072516, 0.008991645, 0.009283071, 0.019014392, 0.002750316, 0.02674663, 0.07482858, -0.00040936825, -0.047255125, 0.03980877) * input_2(1.0, 1.0); + result += mat4(0.21267231, 0.014128189, 0.017248668, -0.08541814, 0.08143838, 0.01570785, -0.02067868, 0.02995182, -0.12223235, -0.052169744, -0.0037316924, -0.040563587, 0.14762309, -0.039316792, -0.0067617525, 0.027681146) * input_3(-1.0, -1.0); + result += mat4(0.18859786, 0.008314993, -0.06320336, -0.011372619, -0.09592316, -0.052654393, -0.062366128, -0.05380023, 0.176009, 0.018072084, 0.009156228, 0.012588225, 0.13335375, 0.017274654, 0.02086099, -0.038987562) * input_3(-1.0, 0.0); + result += mat4(0.107398465, 0.023863634, -0.011615486, -0.02245002, 0.20127946, -0.031243619, 0.013131497, -0.05982625, -0.096456036, 0.06618699, -0.018975684, -0.048614424, -0.23326491, 0.063411705, -0.010800835, 0.0017565627) * input_3(-1.0, 1.0); + result += mat4(0.28518912, -0.01225049, 0.035425134, 0.092113495, -0.13696262, -0.0021213328, -0.0985149, 0.0766074, -0.102599524, -0.03320761, -0.026991611, -0.042160083, 0.0018558769, -0.030289248, 0.06968105, -0.023289572) * input_3(0.0, -1.0); + result += mat4(0.042844806, 0.07483368, 0.03449629, 0.20158805, -0.12653978, -0.03255867, -0.027282596, 0.084200166, -0.03817301, 0.07804658, 0.03506673, -0.34297135, 0.2046878, 0.17868409, 0.045066275, -0.04076826) * input_3(0.0, 0.0); + result += mat4(0.14319524, -0.019176798, -0.041716143, 0.06225607, 0.12137724, -0.004401518, 0.007726069, 0.010000443, -0.12790415, -0.06373207, 0.048048526, -0.0005737708, 0.3240383, 0.05629819, 0.01460592, 0.03185873) * input_3(0.0, 1.0); + result += mat4(-0.104125164, -0.014506117, 0.029927682, 0.051806174, 0.06216411, -0.028820861, -0.004134866, 0.014655852, 0.14810103, 0.008402911, -0.03605034, 0.0055021048, -0.0051838104, -0.003903343, 0.11438503, 0.027284915) * input_3(1.0, -1.0); + result += mat4(-0.036812954, -0.0050312574, -0.0012654078, 0.046760257, 0.115706846, 0.02063729, 0.049228247, -0.007169996, 0.002027184, -0.058374316, -0.0425161, 0.06310797, -0.039052904, 0.03354258, 0.11957896, -0.023882529) * input_3(1.0, 0.0); + result += mat4(0.00555059, 0.0028166235, -0.019149508, 0.04010211, -0.07934599, 0.015833408, -0.017243834, 0.044518713, 0.116791, 0.0008763402, 0.025156436, -0.056984965, -0.09525182, 0.044488903, -0.013549931, 0.0069809738) * input_3(1.0, 1.0); + result += mat4(0.0109926015, 0.008272756, -0.047981285, -0.053482175, 0.051828466, 0.031498678, 0.0672365, -0.035445288, -0.07911989, -0.040412582, 0.015088952, 0.07003967, 0.1600915, 0.032056507, -0.027193671, -0.07212599) * input_4(-1.0, -1.0); + result += mat4(-0.08816267, -0.01460075, -0.029512426, 0.015342735, 0.0495615, -0.018046783, 0.008665804, 0.09800708, -0.39444897, 0.06273019, 0.05135816, 0.08802115, -0.04605619, 0.053393453, -0.12808594, -0.07285249) * input_4(-1.0, 0.0); + result += mat4(-0.48483968, -0.1286776, 0.019121591, 0.038633734, -0.007213258, -0.10207397, 0.04864064, 0.021323908, 0.15141213, -0.11228241, -0.039359435, 0.0067022126, -0.02842602, 0.053539924, -0.016815284, 0.03099334) * input_4(-1.0, 1.0); + result += mat4(-0.020567613, 0.007075523, -0.014007957, 0.031976514, 0.006420991, -0.00014338075, 0.058860846, 0.043377236, -0.14797205, -0.05285566, 0.050807543, -0.08097335, -0.20183763, 0.048585024, -0.075315036, 0.03371805) * input_4(0.0, -1.0); + result += mat4(-0.3334856, 0.02279318, -0.12863599, -0.018068664, 0.023122331, -0.0441921, 0.051790193, 0.05618905, -0.4782983, 0.007971452, -0.034051616, -0.15323453, 0.12349475, -0.047592264, -0.09716343, 0.058048613) * input_4(0.0, 0.0); + result += mat4(-0.041441143, -0.01969857, 0.029774753, -0.009713653, -0.002163772, 0.037960533, 0.1311511, 0.0064069247, -0.19316123, -0.0403876, -0.036348127, -0.017426958, -0.52790827, -0.023299474, -0.026524737, 0.034463417) * input_4(0.0, 1.0); + result += mat4(-0.08841292, -0.0025955723, 0.064066544, 0.0038778621, 0.22365391, 0.018830335, -0.052056063, -0.008742514, 0.015073204, -0.0005679721, -0.0207269, 0.017140433, 0.0061130314, -0.0059179286, -0.044082064, -0.0015413223) * input_4(1.0, -1.0); + result += mat4(0.13801272, 0.009690105, 0.022488907, -0.06737127, 0.24041489, -0.028398376, -0.023487167, -0.10233053, -0.024716023, 0.0039392444, 0.031977735, 0.17685783, -0.027832441, 0.03354169, -0.29144815, 0.024802666) * input_4(1.0, 0.0); + result += mat4(-0.009772045, -0.051517345, -0.01430583, -0.06645572, 0.1813356, 0.04147772, 0.07248901, 0.04231334, -0.03747521, -0.0033805552, 0.018447902, 0.04220241, 0.18291326, 0.030457389, 0.0749951, -0.02795771) * input_4(1.0, 1.0); + result += mat4(-0.54865324, 0.020922897, 0.057697874, -0.0019233304, -0.058864664, -0.017170506, 0.00072996103, 0.0059210216, 0.14598559, 0.034410696, 0.029086413, -0.00382758, -0.29230848, 0.038921107, 0.006341542, -0.032354683) * input_5(-1.0, -1.0); + result += mat4(-0.038377903, -0.02336533, -0.013081139, -0.022846486, -0.26381433, -0.010597867, 0.05332068, 0.001146581, -0.09289739, 0.014569339, -0.010220767, 0.06278014, -0.8274261, -0.10893498, -0.029900417, -0.038034912) * input_5(-1.0, 0.0); + result += mat4(0.48583305, -0.07153621, 0.033610806, 0.03985025, 0.13528393, 0.0026141894, -0.041310225, -0.043137215, -0.026327439, -0.10490663, -0.009157209, 0.031413782, -0.36608014, 0.053022884, 0.012232424, 0.013836699) * input_5(-1.0, 1.0); + result += mat4(0.07986187, -0.03907952, -0.0699684, -0.023720808, -0.50752306, -0.028935201, 0.013168224, -0.005429495, -0.19418192, 0.09332245, 0.0994145, -0.034059584, -0.08912331, 0.00830118, 0.022773853, 0.008309672) * input_5(0.0, -1.0); + result += mat4(-0.17241932, 0.10302946, -0.07621486, -0.06610041, -0.13598795, 0.009663492, 0.0133633865, -0.01279571, 0.10635539, 0.12364427, -0.23918478, 0.034349773, -0.038563125, -0.029881556, 0.037628654, 0.06745773) * input_5(0.0, 0.0); + result += mat4(0.020844672, -0.023577593, 0.023457484, 0.0013911028, -0.14878216, -0.023812728, -0.038008053, 0.062415127, 0.032454383, -0.17568044, 0.1106003, -0.029987305, 0.20580234, 0.0027955845, -0.011209824, 0.009285997) * input_5(0.0, 1.0); + result += mat4(0.015609362, 0.010315635, -0.24073443, -0.010764132, 0.16178076, -0.0018762926, -0.009439989, -0.16787936, 0.06315682, 0.016327433, 0.1381098, -0.12870137, 0.049950454, -0.00044538773, 0.023921331, -0.03896241) * input_5(1.0, -1.0); + result += mat4(0.058725275, 0.00882803, -0.09156857, 0.027212933, 0.14422143, 0.025934765, 0.00043976225, -0.0033642591, 0.033055156, -0.035993584, 0.0059396727, -0.12473719, 0.004323308, 0.033998687, -0.10338265, -0.030805027) * input_5(1.0, 0.0); + result += mat4(-0.013316291, 0.027683469, -0.005323308, 0.102042146, -0.042147513, -0.019763844, 0.029849812, 0.019193094, 0.009092222, -0.0672471, -0.09128327, -0.033487275, 0.10229927, -0.037135284, -0.03352434, -0.081384405) * input_5(1.0, 1.0); + result += mat4(0.09545689, -0.043131854, 0.023063019, -0.0028719113, 0.16797899, -0.024428414, 0.0053941696, -0.033079166, 0.4434077, 0.027664054, 0.036435243, -0.055159107, 0.0331403, 0.052551534, -0.024422318, -0.035997827) * input_6(-1.0, -1.0); + result += mat4(0.16676399, 0.011518462, 0.08829881, 0.05876783, -0.09745436, -0.012690021, -0.028384695, -0.09428942, -0.02911474, 0.0049327444, 0.017479226, -0.03397121, -0.49556705, -0.09702266, 0.0225452, -0.12462698) * input_6(-1.0, 0.0); + result += mat4(0.08025717, -0.0065992903, -0.031471025, 0.031103145, 0.12002004, 0.05574284, 0.009175571, -0.021782119, 0.09798081, 0.025234241, 0.028604772, -0.06768007, -0.0035405827, -0.0017374913, -0.014512013, -0.040145703) * input_6(-1.0, 1.0); + result += mat4(0.21337786, -0.03482093, 0.12952733, -0.043294184, -0.061884005, -0.021533612, 0.0037432108, 0.15639074, -0.13364449, 0.0009893726, -0.007141888, 0.07238094, -0.060945597, 0.08500795, -0.09470654, 0.058565535) * input_6(0.0, -1.0); + result += mat4(0.16864623, 0.01991819, 0.09181388, -0.025728034, 0.10131019, 0.08591099, 0.14054759, 0.14389732, -0.31126988, 0.010855626, 0.008369723, 0.00933458, 0.19039807, -0.20882629, 0.21774888, 0.22502916) * input_6(0.0, 0.0); + result += mat4(0.20069046, -0.021221148, -0.072617985, 0.016467541, 0.03236098, 0.026110778, -0.06553432, 0.0120896455, -0.40480787, 0.051314894, 0.016843706, 0.042303253, 0.22882847, -0.010203691, -0.11231337, 0.0012295473) * input_6(0.0, 1.0); + result += mat4(-0.27047825, -0.01792824, -0.0022488914, -0.022764483, 0.18812932, 0.0044514486, -0.12101215, 0.034450576, 0.06452458, -0.0055910773, 0.031691693, 0.06275974, -0.1031608, -0.0112026725, -0.10461731, -0.035285275) * input_6(1.0, -1.0); + result += mat4(-0.1443797, 0.010706134, 0.066971295, -0.016909856, 0.08684996, 0.0044196895, 0.058292944, -0.060466923, -0.030941056, 0.008884146, -0.105859436, 0.1089876, -0.31544575, -0.0740187, 0.11661991, -0.17748117) * input_6(1.0, 0.0); + result += mat4(0.041316334, -0.02444901, -0.047633983, -0.0030408571, 0.044390026, -0.011967254, -0.01693507, 0.0099650575, 0.095223084, 0.04076159, 0.006546422, 0.06981427, -0.16249296, -0.016996874, -0.039841216, 0.025786294) * input_6(1.0, 1.0); + result += mat4(-0.62008077, -0.0026604063, 0.03517849, -0.010141682, -0.5010524, 0.034704376, 0.04507258, -0.012993526, -0.20746394, 0.03198931, 0.033102836, -0.0038047547, 0.12324782, 0.05270512, -0.023563566, 0.015399074) * input_7(-1.0, -1.0); + result += mat4(-0.63448, 0.0068627736, -0.06129867, 0.0033725614, -0.14698806, -0.05583985, -0.021364044, -0.007566428, 0.12916571, 0.044332527, -0.025449485, -0.03352203, -0.2889485, -0.029223604, -0.01993875, -0.08118289) * input_7(-1.0, 0.0); + result += mat4(-0.78606474, -0.061989244, 0.03194812, 0.009282592, -0.4981422, -0.16923861, 0.032765187, -0.004825584, 0.29075488, 0.10617975, -0.06131468, 0.0068021943, 0.059704855, 0.07952913, 0.008004553, -0.009309839) * input_7(-1.0, 1.0); + result += mat4(-0.22268222, 0.05859345, 0.106754944, -0.031451292, 0.05172755, -0.008850977, -0.15594488, -0.02058925, 0.32560205, -0.012445785, -0.2167873, 0.031413574, 0.12281582, 0.018056702, 0.0024288353, -0.0013698258) * input_7(0.0, -1.0); + result += mat4(-0.4410049, -0.05109154, -0.12066272, -0.26307136, -0.1361863, -0.1402767, -0.10320257, -0.23837179, -0.16457583, -0.061705776, 0.22169752, -0.016231004, -0.049249325, -0.0061243945, -0.02698471, -0.047392074) * input_7(0.0, 0.0); + result += mat4(-0.43780422, -0.05617595, 0.05355061, -0.048800733, -0.012761029, -0.0893344, 0.04270869, -0.11214302, -0.28489652, 0.085476086, 0.0057757087, 0.0032644009, 0.14790484, 0.021736735, 0.043071035, -0.040214125) * input_7(0.0, 1.0); + result += mat4(0.09611411, 0.0014957456, 0.050163288, -0.08996632, 0.035177343, -0.009711232, -0.24052887, -0.042867057, -0.13383971, -0.011429574, 0.08858495, -0.097904205, -0.11548037, 0.027052874, 0.06803133, -0.0337876) * input_7(1.0, -1.0); + result += mat4(0.1368074, 0.009100961, 0.04989554, -0.40037885, -0.14229424, 0.043687068, -0.03244055, -0.51777166, 0.10368473, 0.03537124, -0.16044557, 0.05224189, -0.14442348, 0.011040127, -0.0023258908, -0.010525483) * input_7(1.0, 0.0); + result += mat4(0.18905607, -0.0030055665, -0.014552692, -0.06889482, 0.09289182, 0.0074988697, -0.017185375, -0.07797634, 0.037157204, -0.001638638, 0.073632546, 0.0051369355, -0.091237, 0.0012511209, -0.013752709, 0.014185636) * input_7(1.0, 1.0); + result += vec4(0.016743636, -0.004605423, -0.015359358, -0.018222775); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-4-ReLU) +//!HOOK LUMA +//!BIND conv2d_3_tf +//!BIND conv2d_3_tf1 +//!BIND conv2d_3_tf2 +//!BIND conv2d_3_tf3 +//!BIND conv2d_3_tf4 +//!BIND conv2d_3_tf5 +//!BIND conv2d_3_tf6 +//!BIND conv2d_3_tf7 +//!SAVE conv2d_4_tf7 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_3_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_3_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_3_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_3_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_3_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_3_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_3_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_3_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.009767738, 0.028083336, 0.117292136, -0.082196936, -0.031331077, 0.0032792478, -0.0013058429, 0.03480737, 0.026074711, 0.032895923, 0.15782328, -0.024032554, -0.00232221, -0.0073289853, 0.25121564, -0.027597606) * input_0(-1.0, -1.0); + result += mat4(0.009436283, -0.11367398, 0.056758523, 0.05633637, -0.079553224, -0.056903247, -0.26117933, -0.019316368, 0.04314238, -0.033023357, 0.2316663, 0.1044259, -0.0056863776, 0.009259117, 0.0817305, -0.032006808) * input_0(-1.0, 0.0); + result += mat4(-0.010772673, -0.026076576, 0.3787764, 0.014939611, -0.07360967, -0.10023792, 0.20330213, 0.05104547, 0.030151846, -0.012444084, 0.2108375, 0.0050166445, -0.0154603915, 0.001851527, 0.16299748, -0.0008178432) * input_0(-1.0, 1.0); + result += mat4(0.028971026, 0.048636287, -0.124708235, -0.06929567, -0.031044735, 0.03841199, -0.0027760686, 0.043614395, 0.0091403695, 0.005012017, -0.113005705, -0.099481076, 0.004011234, 0.06278751, 0.08647785, -0.10895443) * input_0(0.0, -1.0); + result += mat4(-0.026578052, -0.09543255, -0.21434622, 0.0010498747, 0.21606156, 0.16317569, 0.2319411, 0.019535352, -0.020797161, -0.017317768, 0.21881026, 0.13621394, -0.0032938772, -0.039146833, -0.10936781, -0.016337797) * input_0(0.0, 0.0); + result += mat4(0.001820368, 0.031186448, -0.26929903, 0.035298694, 0.0056719696, -0.1725087, 0.18542184, -0.028345197, -0.017949479, -0.033927884, -0.021603761, -0.045041144, 0.014455715, -0.013442465, -0.41966256, -0.026300617) * input_0(0.0, 1.0); + result += mat4(0.008568139, 0.0056195995, 0.2603996, -0.100455664, 0.023361992, -0.03278408, 0.32128248, 0.0833958, -0.005254124, -0.013149009, -0.13022077, -0.058455694, 0.002640977, 0.03596962, 0.15729308, -0.06676974) * input_0(1.0, -1.0); + result += mat4(-0.017879242, -0.010226843, -0.11996739, 0.09591689, -0.022736592, 0.045278706, 0.12213539, -0.0955973, 0.020077717, -0.09939464, -0.3605291, 0.08368949, -0.0017112757, -0.022179212, 0.01941105, -0.008741901) * input_0(1.0, 0.0); + result += mat4(0.002627866, 0.012813203, 0.53291726, 0.02864801, -0.006678288, -0.074860156, -0.094527945, 0.07146014, -0.0044014216, 0.037885003, -0.06912333, 0.01153007, 0.0006454904, -0.032800067, -0.30126253, -0.026806647) * input_0(1.0, 1.0); + result += mat4(0.014472594, -0.06676357, -0.1172193, -0.07121474, -0.0062968265, -0.050729934, -0.004501601, 0.09567862, -0.01328717, 0.01684749, -0.20111574, 0.0103852935, 0.037773583, -0.035663527, 0.0042511197, -0.06463728) * input_1(-1.0, -1.0); + result += mat4(0.037477087, -0.07577786, -0.38043582, -0.09315274, -0.0012290461, 0.028020946, -0.0186824, -0.10776485, 0.01695048, 0.04298703, 0.14774829, -0.008674184, -0.1727911, 0.029700594, -0.41866165, 0.010737699) * input_1(-1.0, 0.0); + result += mat4(0.043691363, -0.024942376, -0.40180942, 0.024751144, -0.099613115, -0.013235075, -0.2176596, -0.028985713, -0.008860408, 0.023026863, 0.22988303, -0.052170828, -0.038337536, 0.114174776, -0.11907819, -0.03993005) * input_1(-1.0, 1.0); + result += mat4(0.008369089, -0.05531984, -0.12064776, -0.09785276, 0.015107117, -0.104122855, -0.10582262, 0.114765994, -0.007323711, -0.087468185, -0.09145283, 0.027947972, 0.015556554, 0.07826678, 0.124097735, -0.08157211) * input_1(0.0, -1.0); + result += mat4(0.014171618, -0.05912929, -0.5266465, -0.10962794, -0.0060553025, 0.13592783, -0.24524121, 0.073500484, -0.003444217, 0.08409931, -0.14889726, -0.09079546, -0.015583083, -0.10613379, -0.2907834, 0.022034042) * input_1(0.0, 0.0); + result += mat4(-0.0014175004, -0.16804785, -0.52196777, 0.021504872, 0.008367161, -0.054300975, -0.20489801, -0.02446443, -0.0022835522, -0.007874119, -0.20467155, -0.006608939, 0.015588495, 0.11219535, -0.014513553, 0.0010208619) * input_1(0.0, 1.0); + result += mat4(-0.01014904, -0.03980752, -0.029182209, -0.020964634, 0.0030947633, -0.03891429, -0.16857429, -0.020589978, -0.0057487744, -0.051451378, -0.2416329, 0.0057255644, 0.0021132464, 0.046489682, 0.07296683, 0.02747186) * input_1(1.0, -1.0); + result += mat4(-0.0007414045, 0.05069167, -0.15177128, -0.07554349, -0.0029215065, 0.062092073, 0.3016165, 0.007597494, -0.0050048074, -0.012575554, -0.34947437, -0.015126463, 0.0011889887, 0.075210445, -0.10896144, -0.020161156) * input_1(1.0, 0.0); + result += mat4(0.0070138, -0.07550576, -0.21055454, 0.015012238, -0.00088750705, -0.03833459, -0.103269644, -0.0026108748, 0.015076575, -0.012678404, -0.13564649, -0.035582528, -0.010213997, 0.030546345, 0.06315722, -0.011681439) * input_1(1.0, 1.0); + result += mat4(0.019807586, -0.054480594, 0.0638429, -0.026756614, 0.012696323, -0.00774095, -0.0651928, 0.012153242, 0.005397985, -0.006508895, -0.15794206, 0.04866452, 0.011802856, 0.01404042, 0.103276834, -0.055889387) * input_2(-1.0, -1.0); + result += mat4(-0.012033845, -0.042631958, -0.2853521, -0.08423279, 0.06892259, -0.04142541, -0.22844464, -0.0057009393, 0.025231654, -0.054275442, -0.24283467, -0.04592198, -0.12327163, -0.0966796, -0.5607129, -0.08480408) * input_2(-1.0, 0.0); + result += mat4(0.024657587, -0.051048853, -0.03940476, 0.02365732, 0.008620944, 0.017064271, -0.0902809, -9.91499e-05, 0.037052575, 0.020337986, -0.08089496, 0.023134705, -0.21925075, -0.019491576, 0.068169266, -0.039493825) * input_2(-1.0, 1.0); + result += mat4(0.019561594, 0.060263097, 0.123222254, 0.08796681, 0.013997969, 0.045180086, 0.119747974, -0.07042688, -0.009579711, 0.020125845, -0.16564976, 0.0666591, 0.010671836, 0.038253877, 0.051076192, -0.011053561) * input_2(0.0, -1.0); + result += mat4(-0.027414534, -0.2132148, -0.6336372, -0.054258507, 0.0043366146, -0.06818477, -0.29344422, 0.011199482, -0.026372787, -0.2551109, -0.69208527, -0.122003354, 0.018458797, -0.124194264, -0.09553482, 0.042086378) * input_2(0.0, 0.0); + result += mat4(0.012948209, -0.1109686, -0.27032012, 0.011253079, 0.016120046, 0.055723384, 0.047160942, -0.027577445, -0.036112588, 0.050025117, -0.047435824, 0.054831363, 0.00012054466, -0.050003868, -0.29347408, -0.03678958) * input_2(0.0, 1.0); + result += mat4(0.0059402306, 0.02071031, 0.146026, 0.047411993, -0.004929958, 0.004856024, -0.051825963, -0.082945526, -0.0041749477, -0.010538961, 0.07810009, 0.024601141, -0.009235133, -0.01208594, -0.0026626326, 0.0027069356) * input_2(1.0, -1.0); + result += mat4(0.00076174963, -0.054037854, 0.15148367, -0.08127962, -0.004172344, -0.016577441, 0.028451625, 0.000361179, -0.013939051, -0.05171687, -0.22120814, -0.10081982, 0.009989312, 0.0049067014, -0.098012246, 0.07267576) * input_2(1.0, 0.0); + result += mat4(-0.00016321338, -0.0399993, -0.21164522, 0.008088987, 0.004293945, 0.025488993, -0.13071035, -0.03740453, 0.0038035125, 0.018751724, -0.052391205, 0.02038646, -0.0020915174, 0.009012649, 0.40598074, 0.013107116) * input_2(1.0, 1.0); + result += mat4(-0.040385693, 0.05141459, 0.08861817, 0.018044608, 0.020509532, -0.15821716, 0.23911768, 0.06722244, -0.0059111086, -0.027758282, 0.011208871, 0.03849189, -0.012074721, -0.059709802, -0.19252464, -0.017214859) * input_3(-1.0, -1.0); + result += mat4(-0.0419202, 0.005621272, 0.14742503, -0.013189435, 0.0619895, -0.21579692, -0.17289408, -0.0718947, -0.03915765, 0.0055856016, 0.0015988789, -0.013225857, 0.043660205, 0.08299689, 0.65212923, 0.019736521) * input_3(-1.0, 0.0); + result += mat4(-0.03227635, -0.04574327, -0.08496394, 0.0002962959, 0.024555346, 0.0016549652, 0.13402955, -0.011568261, -0.030892093, -0.041891295, 0.14478844, 0.008717122, 0.08060027, 0.06897762, 0.16072854, 0.034765344) * input_3(-1.0, 1.0); + result += mat4(-0.021930486, -0.10604549, -0.42546335, 0.047016773, 0.0139411455, -0.029780501, -0.23475684, 0.09427326, -0.011242231, -0.0587395, -0.16003034, 0.051387582, -0.005277844, -0.08055536, -0.07084039, 0.089402385) * input_3(0.0, -1.0); + result += mat4(0.039328657, 0.06295743, -0.01284369, -0.036247045, 0.0019986597, -0.04792677, 0.16896601, 0.020468157, 0.017723437, -0.15641163, -0.37700474, 0.009359818, 0.031056318, 0.21126823, 0.34252334, 0.12430154) * input_3(0.0, 0.0); + result += mat4(0.013944146, -0.07684405, -0.41900778, -0.03339555, -0.0031651764, -0.043629885, -0.20405796, -0.02012497, 0.011303021, 0.042346768, 0.103729956, -0.017401377, -0.0098653985, 0.06586227, -0.051718682, 0.015448909) * input_3(0.0, 1.0); + result += mat4(-2.910156e-05, -0.050431512, -0.045209978, 0.034862258, -0.0071824696, 0.03092123, 0.15638709, 0.047371496, -0.005001012, 0.0073404633, 0.02831445, -0.009672738, 0.0003397384, -0.064405, 0.037077494, -0.0027299272) * input_3(1.0, -1.0); + result += mat4(-0.00038593716, 0.014009949, 0.25456324, -0.015325951, 0.0071800407, -0.0074141086, 0.098046824, -0.038434003, -0.006590447, -0.033685, -0.15664902, -0.049095694, -0.004703839, 0.08915682, 0.4550077, 0.048380673) * input_3(1.0, 0.0); + result += mat4(0.0015672616, -0.048074685, -0.05528466, -0.023264932, -0.00653574, 0.016483739, 0.22864324, 0.032964155, -0.007935286, -0.0017971093, -0.1593742, 0.020926856, 0.0076857447, 0.06392807, 0.3222486, 0.029556902) * input_3(1.0, 1.0); + result += mat4(-0.0062284134, 0.028854081, 0.012844846, 0.0020106712, 0.016836515, 0.095432915, 0.099894, 0.031265363, -0.0045970776, -0.013500818, -0.09836522, 0.06572371, -0.0061683096, 0.037604775, 0.25059953, 0.047153175) * input_4(-1.0, -1.0); + result += mat4(0.0010577438, -0.004668594, -0.5091478, -0.14785782, 0.034240216, 0.10524756, 0.2558527, 0.021652676, 0.034695033, 0.025989464, 0.1569733, -0.017992586, -0.012486073, 0.023776991, -0.45500898, 0.021282857) * input_4(-1.0, 0.0); + result += mat4(0.0028857323, 0.029207014, -0.24540792, -0.026834365, 0.0699195, 0.04566663, 0.07975861, 0.027366137, 0.065327294, -0.004324969, -0.061253697, -0.0300964, -0.012602274, -0.0064852294, 0.02772854, -0.013372636) * input_4(-1.0, 1.0); + result += mat4(-0.013338573, 0.015107377, -0.15718365, -0.14349815, -0.007888375, -0.005618137, 0.10819122, -0.034955308, -0.02107753, -0.074630104, -0.12418712, 0.14222282, -0.0049297577, 0.08414789, 0.17422709, -0.04323821) * input_4(0.0, -1.0); + result += mat4(0.0009336037, -0.15251753, -1.1828578, 0.046221487, 0.00928878, -0.08109754, 0.06964747, 0.00786031, -0.024030443, 0.12950619, 0.16041912, -0.13859949, -0.0027058055, -0.12056577, -0.1835884, -0.066042274) * input_4(0.0, 0.0); + result += mat4(0.012961227, -0.02924829, -0.53245705, 0.0025678752, -0.0071107596, 0.14327551, 0.40823478, 0.044911597, 0.044777386, 0.01747307, 0.1637983, -0.039241925, -0.014002994, 0.024299586, -0.23010352, 0.06607188) * input_4(0.0, 1.0); + result += mat4(-0.0069054035, -0.0387153, -0.22632606, -0.021774493, -0.0032715346, 0.03011518, -0.3078768, -0.05794812, 0.0006611997, -0.027511196, -0.098070264, 0.023631, 0.0018640867, 0.018382994, -0.052306928, -0.005926069) * input_4(1.0, -1.0); + result += mat4(-0.010759853, 0.02922438, 0.22986723, 0.014471579, 0.01164296, -0.0060620094, -0.06704885, 0.040007632, -0.012080679, 0.083360285, 0.13567914, -0.011287956, 0.0017318919, -0.086904466, -0.26743183, 0.080228075) * input_4(1.0, 0.0); + result += mat4(0.007504613, -0.05721188, 0.08947868, -0.054036852, -0.0006175399, 0.023419403, 0.083010234, -0.05763577, 0.004204799, 0.038968675, -0.11935085, -0.027101723, -0.002431573, 0.07877071, 0.30849653, -0.07083747) * input_4(1.0, 1.0); + result += mat4(-0.007237587, -0.028863562, -0.08798066, -0.013171031, -0.042360425, 0.010927118, -0.29587322, 0.040189665, 0.013695173, 0.028630745, 0.018862894, 0.008914911, -0.0059158225, 0.04520794, 0.13086382, -0.03675303) * input_5(-1.0, -1.0); + result += mat4(-0.021301495, 0.010807728, 0.0016651317, 0.005500821, -0.018928505, 0.033063117, 0.22957717, -0.08747279, 0.06650179, 0.03937654, 0.28353053, -0.016652001, -0.015177734, -0.06835292, -0.4817732, 0.072153375) * input_5(-1.0, 0.0); + result += mat4(-0.02946237, 0.104647584, -0.10655283, -0.02034019, -0.030482894, -0.032859292, -0.34503034, -0.012880071, 0.02904897, 0.017180685, -0.2044783, -0.027155627, -0.002130286, 0.02088656, 0.17285927, -0.029060174) * input_5(-1.0, 1.0); + result += mat4(0.0061935154, -0.091087736, -0.42433277, -0.13929118, -0.020481817, -0.06977498, -0.07949116, 0.026555507, 0.05106084, 0.018099725, 0.1348228, -0.09673342, -0.007928024, -0.01908264, 0.042772394, -0.28411782) * input_5(0.0, -1.0); + result += mat4(0.011907279, -0.16889164, -0.112170026, -0.06899823, 0.008434946, 0.08386465, 0.009001524, 0.009117561, 0.23343703, 0.022187583, -0.09683406, 0.08617455, 0.026503572, -0.11435145, -0.74728876, -0.049508825) * input_5(0.0, 0.0); + result += mat4(0.00804989, 0.025247071, 0.02091528, -0.0465055, 0.003044973, -0.031351484, -0.12091104, -0.0144201685, 0.060285524, -0.029412137, -0.35722366, -0.0018914461, -0.020385362, 0.022226188, -0.3569772, 0.002862318) * input_5(0.0, 1.0); + result += mat4(-0.0009918199, 0.023960717, 0.0866777, -0.05717031, -0.0010247875, -0.004266649, -0.37254745, -0.021687075, 0.002603375, 0.05682999, 0.23553611, -0.008070534, 0.00053742295, -0.0030951768, 0.0070512425, 0.006266896) * input_5(1.0, -1.0); + result += mat4(-0.0018893431, 0.031281967, -0.30562395, 0.04439531, -0.012905528, -0.02666063, -0.11854652, 0.015506387, -0.05238846, 0.06558003, -0.04069429, -0.10386247, -0.009425094, -0.018872311, -0.35164362, -0.0053488575) * input_5(1.0, 0.0); + result += mat4(-0.002507222, 0.048874367, 0.12176514, 0.007027942, 0.003959397, 0.009149029, 0.09028094, -0.015794668, 0.002528259, -0.013076949, 0.022378184, 0.008083385, 0.01323623, -0.095252, -0.16446748, 0.002052138) * input_5(1.0, 1.0); + result += mat4(-0.010290491, 0.0072620586, 0.12850915, 0.035436716, -0.0015015411, 0.002042652, 0.016044945, -0.032200705, -0.008971196, -0.0074715125, 0.16141962, 0.033186533, 0.0035892194, 0.035545822, 0.081084415, 0.08552566) * input_6(-1.0, -1.0); + result += mat4(0.0075292406, 0.05672196, 0.21912393, 0.039222546, -0.03452124, 0.077338316, 0.10759903, 0.060865086, 0.014572654, 0.011690992, 0.25500908, 0.06225823, -0.070113964, 0.111849986, -0.24820729, 0.054138914) * input_6(-1.0, 0.0); + result += mat4(0.0086675985, 0.01593265, -0.039509173, -0.026304176, -0.018217994, -0.014520345, -0.05004774, -0.025143325, -0.008124293, 0.043649014, 0.23878461, 0.033558473, -0.021970704, 0.054870263, -0.070968494, -0.024027264) * input_6(-1.0, 1.0); + result += mat4(-0.01937088, -0.08230516, 0.17485751, 0.13899298, 0.004445943, -0.087656565, -0.14264789, -0.030481244, 0.0040324647, -0.0005805831, 0.19310778, 0.106352925, 0.018743502, 0.1295907, 0.26571882, -0.19737524) * input_6(0.0, -1.0); + result += mat4(0.01929684, 0.0976119, -0.021161139, 0.10737881, -0.034287997, 0.1134256, -0.11429826, 0.057953943, -0.005136341, 0.04199246, 0.093952045, 0.04714887, -0.07726444, -0.27094182, -0.7651259, 0.15598938) * input_6(0.0, 0.0); + result += mat4(-0.0197404, -0.002685816, -0.1111419, -0.0107678, 0.024473382, -0.09870822, -0.19307639, -0.021219863, -0.011290927, 0.026276963, 0.11561621, -0.014446593, 0.001039282, -0.13602774, -0.4094642, -0.051873058) * input_6(0.0, 1.0); + result += mat4(0.003322261, -0.07579749, -0.23997143, 0.06965221, -0.0011119184, -0.060270924, -0.1619617, -0.050391775, 0.0063534547, 0.022056496, 0.13065237, 0.03882543, -0.025802419, 0.028668871, -0.16078213, -0.01600491) * input_6(1.0, -1.0); + result += mat4(-0.013941808, 0.06114065, 0.17847086, 0.033473775, 0.008332965, 0.014226407, 0.065939784, 0.068593696, 0.009662864, 0.078916684, 0.29260686, 0.07647485, 0.0200669, 0.06697532, 0.21706931, -0.008330622) * input_6(1.0, 0.0); + result += mat4(0.01770986, 0.0014778394, 0.13176517, 0.0022325288, 0.005128974, -0.0028655082, -0.13761126, -0.0150261065, 0.0015732358, 0.0019559767, 0.2608423, 0.02075978, 0.0023731708, -0.040510897, 0.014645526, -0.026865283) * input_6(1.0, 1.0); + result += mat4(-0.02643883, 0.022665603, 0.20178051, -0.009933486, 0.0053162226, 0.016951598, -0.112570904, -0.027032318, 0.04093469, 0.0780234, -0.18433844, -0.15539072, 0.0072440645, 0.021737682, 0.0875118, -0.07254068) * input_7(-1.0, -1.0); + result += mat4(-0.017293943, -0.0036146883, 0.08920372, 0.04136465, -0.067765124, 0.0064260256, -0.40890208, -0.20117097, -0.17088251, 0.055821214, -0.13365915, -0.042666834, 0.03311957, -0.043551724, -0.5342019, 0.00704497) * input_7(-1.0, 0.0); + result += mat4(-0.06791211, 0.033748463, -0.046590343, 0.017015332, -0.05508342, -0.017857594, -0.5372909, 0.022307886, -0.0151811065, -0.05142376, 0.050491806, 0.012714472, 0.014641869, 0.03727823, 0.0012611174, -0.044437215) * input_7(-1.0, 1.0); + result += mat4(0.019606506, 0.05366582, 0.12260372, -0.02239915, 0.0006907637, 0.04363351, -0.17128733, -0.18978423, -0.0122361835, 0.0916565, -0.06450273, 0.010461086, -0.002714399, 0.073619686, -0.027247116, 0.030364104) * input_7(0.0, -1.0); + result += mat4(-0.022392152, -0.059402443, 0.28255394, 0.035878345, 0.010147119, -0.31913516, -0.6064511, -0.17351611, 0.0438225, -0.06808177, 0.16594778, -0.032263618, -0.012997119, 0.034153126, 0.34915468, 0.05553591) * input_7(0.0, 0.0); + result += mat4(-0.006389311, 0.081104234, 0.12015897, 0.017711218, -0.01467527, -0.16397274, 0.0070503983, 0.059200816, -0.029142814, 0.04173555, 0.25822082, 0.021120563, -0.004320215, 0.026394278, -0.08538392, -0.010887709) * input_7(0.0, 1.0); + result += mat4(0.0075600166, 0.008832258, -0.007919651, 0.000510058, -0.0009250561, 0.02734932, -0.06344091, -0.015679145, 0.0016500007, 0.032906182, -0.09913989, -0.040609613, 0.009305278, 0.0028281999, 0.12345558, -0.0032230213) * input_7(1.0, -1.0); + result += mat4(-0.021396628, 0.039543428, 0.11182526, 0.011410811, 0.0009626016, -0.02789732, -0.1373921, -0.050328158, 0.0033270137, -0.054173097, 0.048861146, 0.06282644, 0.0029904782, 0.04063142, 0.20930812, 0.0072177765) * input_7(1.0, 0.0); + result += mat4(-0.008756, 0.011595141, -0.050369363, -0.005534685, 0.00038458203, 0.0056804996, -0.3468515, 0.027971491, -0.0037697798, 0.035402447, 0.11246388, -0.02235944, -0.0005545668, 0.009041413, -0.07888816, -0.0037682806) * input_7(1.0, 1.0); + result += vec4(-0.0077036507, -0.039730497, -0.095943965, -0.036262862); + return max(result, vec4(0.0)); +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.066767, 0.013760728, 0.111056745, -0.016685935, -0.04630556, -0.1985683, 0.07495485, -0.0497129, 0.0038227108, 0.04376694, -0.20344599, 0.021953505, -0.08477107, -0.053691387, -0.048204575, -0.082111046) * input_0(-1.0, -1.0); + result += mat4(-0.2078385, -0.14036772, 0.0976056, 0.014882093, -0.15847264, 0.115319476, 0.06502945, -0.1523832, 0.014180739, -0.14920518, 0.06570087, 0.025168339, 0.049236327, 0.044943422, 0.122916065, 0.064822696) * input_0(-1.0, 0.0); + result += mat4(0.17831106, 0.10558586, -0.16591628, 0.026867013, 0.30897903, 0.20771845, 0.0069123367, -0.0023208961, -0.051410705, -0.049160417, -0.09667391, 0.0066233804, -0.1330817, 0.09190657, -0.07604774, -0.024306143) * input_0(-1.0, 1.0); + result += mat4(-0.03694473, 0.21106645, 0.003678431, -0.02236197, 0.032319404, -0.036544383, 0.10571578, 0.071872525, 0.033165094, 0.018541928, -0.018485375, 0.0513938, 0.20895214, 0.2604134, -0.21864457, 0.28240824) * input_0(0.0, -1.0); + result += mat4(0.097155355, -0.26461515, 0.014956485, 0.003268012, -0.14693218, 0.0674181, -0.20393136, 0.35899717, -0.08265093, 0.12457553, 0.06683939, -0.15311992, -0.17340915, 0.044416204, 0.20095725, -0.0861491) * input_0(0.0, 0.0); + result += mat4(-0.042778928, 0.100217514, 0.1097675, -0.0772546, -0.070987724, 0.098250814, -0.15223956, -0.02258469, 0.07897659, -0.119414344, -0.0349432, -0.03515548, 0.029678257, -0.2770657, -0.04295152, -0.14563777) * input_0(0.0, 1.0); + result += mat4(-0.006838269, -0.118386544, 0.12704097, 0.033628304, -0.062009834, -0.03532806, -0.015295052, 0.015401669, -0.010818375, 0.24572684, -0.038484816, -0.042835526, -0.070619576, 0.054702353, 0.025416315, 0.08788327) * input_0(1.0, -1.0); + result += mat4(8.0476806e-05, 0.045949496, -0.11518171, 0.024814162, 0.080984764, -0.016623178, -0.010340704, 0.09769749, -0.07209466, 0.03167459, -0.03272566, -0.02752917, 0.009596676, -0.027303511, -0.058491796, 0.12734665) * input_0(1.0, 0.0); + result += mat4(-0.010504606, 0.012615416, -0.004712587, 0.040841423, -0.011046809, 0.026296783, 0.066552155, 0.056893762, 0.026558194, -0.16940126, 0.19185495, -0.086607665, 0.14179291, -0.1324252, 0.10150794, 0.102339506) * input_0(1.0, 1.0); + result += mat4(-0.04779195, 0.051068895, -0.09961703, 0.017489616, 0.023393841, 0.06061694, -0.011784839, -0.013982713, 0.04736615, 0.039683092, -0.01284277, -0.0007957704, -0.012768981, 0.008344932, 0.14032009, 0.061064284) * input_1(-1.0, -1.0); + result += mat4(0.0504287, -0.11846876, 0.087383755, 0.08554199, 0.16965139, 0.15545662, -0.15542784, -0.07584813, 0.18790972, -0.02781316, 0.30621642, 0.15518416, 0.08167409, 0.12601446, 0.049325354, 0.029582357) * input_1(-1.0, 0.0); + result += mat4(0.012727814, -0.041222457, 0.08079164, 0.025674399, -0.12579456, 0.056906264, -0.8184756, 0.040516365, 0.6571114, 0.161864, -0.5787315, 0.08270593, -0.20593907, -0.11557901, 0.010322273, 0.010703766) * input_1(-1.0, 1.0); + result += mat4(-0.026933212, 0.015558794, -0.06523855, 0.08159697, -0.046230193, 0.056616478, -0.051163815, 0.02141202, -0.04741546, -0.046487883, -0.13530616, -0.00971685, -0.090271026, -0.011330656, 0.12195134, -0.04309196) * input_1(0.0, -1.0); + result += mat4(-0.08114182, 0.04288551, 0.047292937, 0.07768586, -0.12542427, -0.1770469, 0.13340557, -0.19833066, -0.08121348, 0.13072729, -0.074069075, 0.0068246946, 0.3699786, -0.07373246, 0.44997856, 0.1351363) * input_1(0.0, 0.0); + result += mat4(-0.06037974, -0.11543357, 0.067921914, -0.046212226, -0.29177064, -0.007969115, -1.0957156, 0.29222947, -0.5141527, 0.019486599, 0.051844683, 0.27111435, -0.12031318, -0.23109639, -0.1585202, -0.121361166) * input_1(0.0, 1.0); + result += mat4(0.034452282, -0.056608137, 0.09986411, 0.003744635, 0.025574205, -0.123109385, 0.061976273, 0.025499407, -0.0258998, 0.15509127, 0.067269035, -0.015713684, 0.0009139249, 0.23980908, -0.16712444, 0.060052305) * input_1(1.0, -1.0); + result += mat4(0.11896864, 0.13439624, 0.053068776, -0.01916109, -0.045968108, 0.044267032, 0.029716287, -0.07865047, -0.053832736, 0.033053715, -0.19899444, 0.08357695, -0.019108985, -0.063269936, -0.060526557, -0.007728301) * input_1(1.0, 0.0); + result += mat4(-0.042047232, -0.02537174, -0.42798448, -0.1821315, -0.12189269, 0.29635975, -0.1942765, 0.22037871, -0.24727269, 0.25201535, 0.3217811, 0.15633778, -0.012524615, -0.10207187, 0.034148823, -0.028990854) * input_1(1.0, 1.0); + result += mat4(-0.09622151, -0.049832273, -0.051627304, -0.019160002, 0.024102632, 0.07621432, 0.24195038, 0.061577708, 0.05188404, -0.06460831, -0.19272892, -0.025264658, 0.015150285, 0.0171515, 0.07965291, 0.034899175) * input_2(-1.0, -1.0); + result += mat4(-0.11472861, -0.09703665, 0.07095315, -0.087346904, -0.20111956, -0.08398457, 0.17562573, 0.044989813, -0.0195177, 0.12412536, -0.12907979, -0.12891981, 0.092007115, 0.08985328, -0.11881803, 0.048983335) * input_2(-1.0, 0.0); + result += mat4(0.05899501, 0.048889168, 0.22497766, 0.04178184, -0.10054874, -0.007575658, 0.055739183, -0.025095169, 0.017920153, 0.08099809, 0.036149636, -0.020654403, -0.013829696, 0.0012343111, -0.055353977, 0.0002684681) * input_2(-1.0, 1.0); + result += mat4(0.10775972, 0.011588417, -0.14275302, -0.019705612, 0.05797609, 0.015974417, 0.14246833, 0.030489638, -0.042055406, -0.04910457, -0.11227801, 0.018358516, -0.009191839, -0.115870506, 0.0029862553, 0.029119195) * input_2(0.0, -1.0); + result += mat4(0.12703845, 0.44657046, 0.4416201, 0.19848704, 0.05643994, -0.19491428, -0.28672376, -0.15522072, -0.09169321, -0.17398201, -0.18048418, -0.07039816, -0.04973174, -0.07869154, 0.122401774, 0.20245084) * input_2(0.0, 0.0); + result += mat4(0.28905895, -0.025049852, 0.23835549, -0.044869192, -0.040423963, 0.044026446, 0.02732726, 0.10698109, -0.08752771, -0.031396165, 0.08602027, 0.019717751, 0.025479171, 0.083911516, -0.079935, 0.049856238) * input_2(0.0, 1.0); + result += mat4(-0.20308611, -0.15589921, -0.11106297, -0.016339453, 0.097600415, -0.028028833, -0.06536539, -0.07897195, 0.14895166, 0.24687132, -0.03028676, -0.05863551, -0.059909362, 0.067296706, 0.016106226, 0.11250365) * input_2(1.0, -1.0); + result += mat4(0.016923895, 0.09291911, 0.13758, -0.16297564, -0.05874171, 0.072976515, -0.15489918, 0.051234987, 0.036079906, 0.009031832, -0.00081757637, -0.010852125, 0.0017613814, 0.01059925, 0.06885076, 0.066785485) * input_2(1.0, 0.0); + result += mat4(0.015982842, -0.11309989, 0.18034582, -0.1320163, 0.082535446, 0.10393337, -0.2454525, 0.058803216, -0.08445539, 0.013313439, 0.21084413, -0.00801398, -0.03285919, 0.039181974, -0.1224456, -0.0019299801) * input_2(1.0, 1.0); + result += mat4(-0.07418251, -0.09682539, 0.17001536, 0.085469864, -0.2608181, -0.038852576, -0.2527378, -0.1345708, 0.0058190753, 0.1516287, -0.022539267, 0.024887417, -0.82815915, -0.07657988, 2.5586631, 0.7436108) * input_3(-1.0, -1.0); + result += mat4(-0.22045103, -0.024824524, -0.005668008, 0.13771312, 0.04938271, 0.03386965, -0.023831544, -0.13114747, -0.00013957423, -0.055736385, 0.1749639, -0.06801279, 0.0921412, 0.15054764, 0.2863539, 0.17805175) * input_3(-1.0, 0.0); + result += mat4(0.033066005, -0.09573862, 0.0709089, 0.008006666, 0.0052971975, 0.059521917, -0.05894607, 0.042701356, 0.00796551, 0.017632665, -0.13112396, 0.020140626, -0.023754045, -0.044674568, -0.13840514, 0.016964862) * input_3(-1.0, 1.0); + result += mat4(0.122856334, 0.2147246, -0.0013933295, 0.063844085, 0.011424785, -0.14054608, -0.22506636, -0.06094045, -0.01564148, -0.043927178, -0.06711152, -0.035006937, 0.003985596, 0.2020869, 0.28148216, 0.018065872) * input_3(0.0, -1.0); + result += mat4(0.1465325, 0.018953552, -0.097543746, 0.017950526, -0.1473329, 0.32441753, 0.43838337, 0.21833804, 0.086535126, 0.084948875, 0.017617585, -0.1007702, -0.14843778, -0.085462414, -0.36069492, 0.1827742) * input_3(0.0, 0.0); + result += mat4(0.061440688, 0.30547848, -0.05460202, 0.111038245, 0.18267825, -0.00404018, -0.0046369135, -0.05867972, -0.029875986, 0.03546037, -0.081052184, -0.039952558, 0.15066259, -0.11897001, 0.069298506, 0.056665238) * input_3(0.0, 1.0); + result += mat4(-0.083838776, -0.28128004, -0.1073403, 0.14872438, 0.1452969, -0.2792206, -0.06479985, 0.037688978, -0.012236358, -0.012079845, 0.0037198027, 0.014370286, 0.078292735, -0.11849429, -0.15816751, 0.018049477) * input_3(1.0, -1.0); + result += mat4(-0.020406287, -0.00942963, 0.07821108, -0.04974682, -0.011191705, 0.074557036, -0.02948354, 0.042562604, -0.036154035, -0.059928507, 0.0280618, 0.05028089, 0.048652165, -0.05606566, 0.07506533, 0.11911012) * input_3(1.0, 0.0); + result += mat4(-0.014282732, -0.16372202, -0.019613968, -0.031754274, 0.029594814, -0.04696885, -0.014460713, -0.07182375, 0.048192933, -0.027341194, 0.041931543, -0.019719055, -0.121185616, 0.16456625, 0.074993365, 0.022879155) * input_3(1.0, 1.0); + result += mat4(0.039013796, -0.08019159, 0.07072878, 0.054719698, 0.07900169, 0.10869394, -0.12043537, 0.024206862, 0.23254575, -0.16262195, -0.24069901, -0.0020601116, 0.124749966, 0.04773649, 0.06737853, 0.0050425567) * input_4(-1.0, -1.0); + result += mat4(-0.061855495, -0.053589694, 0.15629181, 0.07834129, -0.030160349, -0.064689934, -0.22036977, 0.03919053, 0.2839136, -0.20829801, -0.29924154, 0.12333608, 0.223945, 0.14437109, -0.18436153, 0.13118465) * input_4(-1.0, 0.0); + result += mat4(0.00074125436, -0.055929918, 0.08329334, -0.04194008, 0.005399064, 0.07544337, 0.011706825, 0.03972895, -0.19262953, -0.15277557, 0.19324218, -0.0059250984, -0.12227933, 0.040182807, 0.02954669, -0.0022779512) * input_4(-1.0, 1.0); + result += mat4(0.0107254805, 0.18838543, -0.19392142, 0.016137205, -0.26659027, 0.042316884, -0.096385375, -0.017245974, 0.2004223, -0.30878642, -0.0014635697, -0.046238754, -0.09255643, -0.018000424, 0.19709316, -0.028446633) * input_4(0.0, -1.0); + result += mat4(0.09947997, -0.08528776, 0.2001563, -0.039320964, 0.04606693, 0.25365147, -0.003467823, 0.23371872, 0.13415052, -0.17707926, -0.32659337, -0.04226382, 0.0008269302, -0.27395377, -0.008540131, 0.097614646) * input_4(0.0, 0.0); + result += mat4(-0.11743816, 0.01665716, 0.17160366, 0.061315343, -0.022002365, 0.025943676, 0.01510077, 0.10780268, -0.014214605, 0.14881307, 0.044540305, 0.028140696, -0.090875916, 0.06742185, -0.28009477, 0.0093059195) * input_4(0.0, 1.0); + result += mat4(0.020920942, -0.08271307, -0.102326185, 0.012456241, 0.13964304, 0.121300556, 0.048475407, 0.102407046, -0.16056804, 0.03494483, -0.031407766, -0.063947745, 0.100363895, -0.005100753, 0.22779132, 0.006488482) * input_4(1.0, -1.0); + result += mat4(0.032062914, -0.06529343, -0.08262309, -0.012739505, -0.022872642, 0.12270048, 0.17308044, 0.12362141, -0.12496287, 0.0039523374, 0.070608824, 0.016101724, -0.092956685, 0.06928189, 0.19896911, 0.02069963) * input_4(1.0, 0.0); + result += mat4(0.011393133, 0.014606031, -0.035273455, 0.014735931, -0.02929957, 0.046427265, -0.015007097, 0.071943626, -0.2478536, 0.20220733, 0.18348654, -0.004542514, -0.007965704, -0.008797524, -0.10480587, 0.09863357) * input_4(1.0, 1.0); + result += mat4(0.13465872, 0.05978243, -0.08703423, 0.020609943, -0.08235886, -0.09929205, -0.109393954, -0.1034961, 0.19794987, -0.13994777, -0.03220466, -0.07119346, 0.06667245, -0.07566442, 0.004371129, 0.005681655) * input_5(-1.0, -1.0); + result += mat4(-0.0062169824, -0.042896524, 0.06899547, -0.013270181, 0.090142034, -0.010600239, 0.12901203, -0.034366816, 0.031348836, 0.021660926, 0.033291463, -0.014094283, 0.030660963, 0.007700478, -0.0039111823, 0.011912435) * input_5(-1.0, 0.0); + result += mat4(-0.07966958, -0.06905341, -0.078870535, -0.013042334, 0.11143538, 0.052557025, -0.123636134, 0.019301912, -0.00028604246, 0.08052399, 0.14722492, 0.027748253, -0.059991766, 0.048401408, -0.003584795, -0.015637701) * input_5(-1.0, 1.0); + result += mat4(-0.025340982, 0.017895313, -0.06701147, 0.024802787, -0.03248554, -0.17150758, 0.12138185, -0.013464663, -0.030912308, 0.16388649, 0.18307184, -0.050276283, 0.12547772, 0.017140696, -0.13603882, -0.07017018) * input_5(0.0, -1.0); + result += mat4(0.025138231, 0.04305574, 0.003985052, -0.03706426, -0.008025809, 0.59593153, 0.53903514, 0.16260791, 0.07314449, -0.124581695, -0.06486732, 0.19349374, -0.14599293, -0.012002113, 0.17454816, 0.037678704) * input_5(0.0, 0.0); + result += mat4(-0.13060437, -0.1416685, -0.08844518, 0.03300658, -0.07864808, -0.0024339904, -0.13710245, 0.018107958, -0.066534616, 0.09018102, -0.0059062066, 0.0043682572, 0.07523507, -0.039204605, -0.10168496, -0.08669535) * input_5(0.0, 1.0); + result += mat4(0.03327256, 0.06822847, 0.050558623, 0.024275258, -0.06243839, -0.22727893, 0.1272146, 0.086544655, 0.022623355, -0.16448544, 0.07517188, 0.030828556, 0.086346745, -0.08024162, -0.22481245, 0.0061071813) * input_5(1.0, -1.0); + result += mat4(-0.02099979, -0.06409627, -0.0321425, -0.21285637, 0.05458417, 0.040795878, 0.1686201, -0.057695813, -0.044996087, -0.09619347, 0.03199904, 0.05712917, -0.17024021, 0.04313474, 0.19273181, -0.047102813) * input_5(1.0, 0.0); + result += mat4(-0.064427085, 0.026003845, -0.060899626, -0.0008913503, 0.027597275, -0.13728324, -0.0432875, -0.1022251, 0.062128402, 0.060212817, -0.15554722, 0.03128105, 0.21561886, -0.025512027, -0.080259636, -0.07408103) * input_5(1.0, 1.0); + result += mat4(0.046093162, -0.04393583, 0.03412493, -0.008352119, 0.06709235, -0.06256416, 0.10408034, 0.01924626, 0.06484533, 0.063645825, -0.10959807, -0.029838609, 0.061634846, 0.04587952, -0.08146103, 0.050265215) * input_6(-1.0, -1.0); + result += mat4(-0.06103088, 0.17856617, 0.043425206, -0.00988616, 0.014362892, 0.11702172, 0.021184621, -0.0074192835, 0.0052531785, -0.18516247, 0.119140126, 0.047692224, 0.017459644, 0.05465239, -0.16454746, -0.07311109) * input_6(-1.0, 0.0); + result += mat4(0.031011676, -0.10563824, -0.019184373, -0.06457898, -0.01613403, -0.05003873, -0.05014763, 0.0034482786, 0.22391066, 0.2380517, -0.11810434, 0.063780814, -0.14670467, -0.12094225, 0.062334124, 0.108784005) * input_6(-1.0, 1.0); + result += mat4(-0.087949835, -0.033784177, -0.033769287, 0.012134566, -0.18133995, 0.15388191, -0.18737444, -0.001419794, -0.07743487, -0.051076975, 0.057867095, -0.013390242, 0.21432, -0.012177232, -0.007402492, -0.029865544) * input_6(0.0, -1.0); + result += mat4(0.09307007, 0.21723565, 0.049825687, -0.020174114, 0.17078118, -0.22108737, -0.044370655, -0.07641328, 0.15081789, 0.26363382, 0.2932253, -0.20727117, -0.27753407, -0.06255819, 0.046776738, -0.08148485) * input_6(0.0, 0.0); + result += mat4(-0.049574282, -0.03341542, 0.05976719, 0.010769841, -0.024474133, 0.03532627, 0.16077882, -0.08892185, -0.1906096, -0.0027784538, -0.19155684, 0.1086217, 0.10187462, 0.060949225, 0.02182672, -0.0794262) * input_6(0.0, 1.0); + result += mat4(0.23956288, -0.2367845, 0.3296044, -0.0018393457, 0.01094253, 0.41048953, -0.3759328, -0.07576356, -0.016095929, 0.02201202, -0.02939215, 0.02257138, 0.06546787, 0.024052402, -0.021719374, 0.0047305534) * input_6(1.0, -1.0); + result += mat4(0.06813517, 0.16780561, -0.2676296, 0.16630517, -0.11078726, 0.15085179, 0.042416904, 0.09349055, -0.08272806, -0.05974388, -0.13040116, -0.016277459, 0.035290636, 0.025835533, -0.019500067, 0.08272738) * input_6(1.0, 0.0); + result += mat4(-0.27381864, 0.011572429, -0.04914211, 0.15146905, 0.07328643, -0.16106829, -0.020186625, -0.092923015, -0.003655719, 0.116490595, -0.1572503, 0.06511761, -0.113555476, 0.04781186, 0.0146769285, -0.039373476) * input_6(1.0, 1.0); + result += mat4(-0.16289385, 0.06400038, 0.09478538, 0.027642656, 0.041409552, 0.05392205, -0.22694138, -0.083704814, 0.07222647, 0.051347803, -0.17266737, -0.11212662, -0.019500745, -0.011676449, -0.10632365, -0.03571393) * input_7(-1.0, -1.0); + result += mat4(0.10522772, -0.03591191, -0.04643097, -0.0014927738, 0.093682766, 0.07243811, -0.17605908, -0.06766158, -0.19067144, 0.0076511907, 0.14719576, -0.12461699, -0.11828624, 0.06970736, 0.19382413, -0.13351186) * input_7(-1.0, 0.0); + result += mat4(0.05234134, -0.03163707, -0.053317316, 0.0039021792, 0.07433044, 0.004978097, -0.13613519, -0.025885424, 0.02597753, 0.08340436, -0.013637878, -0.038613204, -0.17952326, -0.17442761, 0.3110643, -0.011234256) * input_7(-1.0, 1.0); + result += mat4(0.110430025, 0.13601106, -0.10236153, -0.07894379, -0.113785595, -0.310372, 0.20006631, 0.046244606, -0.065609835, -0.24877654, 0.1841343, 0.037238095, 0.026475126, 0.07835977, 0.18069023, 0.014307988) * input_7(0.0, -1.0); + result += mat4(-0.23694617, -0.12443639, 0.0569657, -0.090195514, -0.13858259, -0.10264788, 0.22576903, -0.07669564, 0.093922526, 0.14931054, -0.04734431, -0.08630518, 0.2560429, -0.18667369, -0.1759292, -0.0067619137) * input_7(0.0, 0.0); + result += mat4(0.12321345, -0.00816708, 0.03413501, -0.028331507, 0.014030393, -0.2604333, 0.11770908, -0.047559768, 0.062294576, -0.17482294, 0.08446289, -0.008106217, 0.22218683, 0.0006635545, -0.021215362, -0.23077853) * input_7(0.0, 1.0); + result += mat4(-0.14536726, 0.076443024, -0.14772446, 0.02441641, 0.07857666, 0.06968184, 0.13438255, -0.10297381, 0.02725716, 0.07369537, -0.041944455, -0.13227762, 0.0019313955, -0.06250903, -0.05693531, -0.112165116) * input_7(1.0, -1.0); + result += mat4(0.05319995, -0.16079132, 0.15083098, 0.16776085, 0.046053883, -0.072413854, 0.029973108, -0.0134031335, 0.038884524, -0.11006356, -0.110666975, -0.06266493, -0.12012889, 0.065959625, -0.041492864, -0.09555577) * input_7(1.0, 0.0); + result += mat4(0.13872446, -0.09617434, 0.34856722, 0.005445599, -0.08949508, 0.121330045, 0.019937098, 0.068256736, -0.12470534, 0.0382333, 0.045194432, 0.00056432217, -0.0627504, -0.08809704, -0.13456823, -0.03574752) * input_7(1.0, 1.0); + result += vec4(0.00016549029, -0.00021840203, 0.00033196775, -0.045188054); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf1 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.21125253, -0.024820616, 0.0465453, 0.17838265, -0.06614161, -0.009706404, 0.06175231, 0.063120626, 0.15939835, -0.107727915, -0.025876965, 0.013114526, 0.25232428, 0.006757984, -0.015190075, 0.20502391) * input_0(-1.0, -1.0); + result += mat4(0.09355086, -0.056324318, 0.012136576, 0.017130872, 0.035695765, -0.2298362, -0.10278403, -0.0725769, 0.06197174, 0.071139574, -0.009629197, -0.09928168, 0.036522474, 0.08936393, -0.0007187838, 0.056915537) * input_0(-1.0, 0.0); + result += mat4(0.10369461, 0.0248856, -0.04463459, -0.10751648, -0.14426413, 0.13143012, 0.002864707, -0.08175945, -0.16187756, -0.103247926, -0.03475397, 0.23530966, 0.117318034, -0.037119675, 0.07205359, -0.08785777) * input_0(-1.0, 1.0); + result += mat4(0.1147573, -0.09020236, -0.0061383103, 0.029725662, -0.09159583, -0.04504979, -0.038888533, 0.0036717686, -0.09002624, 0.106957026, 0.029732166, -0.00079115864, 0.34393898, 0.0007274222, -0.13210544, 0.07174188) * input_0(0.0, -1.0); + result += mat4(-0.027586155, 0.21791027, 0.07088907, -0.060797676, -0.11378554, -0.21634692, 0.38341254, 0.08461495, -0.16269512, -0.17640582, 0.24044733, 0.10722286, -0.043850712, 0.16623329, -0.020831216, -0.05249266) * input_0(0.0, 0.0); + result += mat4(-0.07880465, -0.13064997, 0.016361821, 0.018826298, -0.06356443, 0.13099349, 0.049602993, -0.0105603, 0.032358997, 0.17480396, 0.007503519, 0.06885767, -0.33551127, -0.0046467013, 0.17137037, 0.08916921) * input_0(0.0, 1.0); + result += mat4(-0.16958982, 0.029217636, -0.14036793, 0.12908131, 0.0012070682, -0.03207241, -0.031703167, -0.08175426, 0.40637523, -0.025152909, 0.09367024, -0.00141942, 0.028899731, -0.10429351, -0.24591364, 0.0809589) * input_0(1.0, -1.0); + result += mat4(0.27771702, -0.023290267, -0.08901573, -0.10308698, -0.088262476, 0.0704088, 0.049841624, 0.0912164, -0.11105629, 0.22231464, -0.06762571, -0.05999702, -0.01487655, -0.053099375, 0.007226701, 0.1182279) * input_0(1.0, 0.0); + result += mat4(-0.060166046, 0.00097369007, 0.22678883, -0.002950034, 0.008937347, -0.033120666, -0.03330837, -0.00871478, -0.031567972, -0.092165016, -0.22217813, 0.16009851, -0.035382416, 0.11207072, 0.13580878, -0.086981334) * input_0(1.0, 1.0); + result += mat4(-0.047377035, -0.038353406, -0.03898871, 0.011872778, 0.08091169, 0.039209373, -0.07989616, 0.05731964, 0.15391064, -0.08275441, -0.058396555, 0.044553213, -0.17386287, 0.018249612, 0.11564, -0.13106324) * input_1(-1.0, -1.0); + result += mat4(0.025643878, 0.06268423, 0.06388267, -0.039361052, -0.43890303, -0.12551463, -0.2674029, 0.020749545, 0.51075304, -0.031118244, 0.19767345, 0.025486927, -0.01924694, 0.11560253, -0.04687788, -0.13496353) * input_1(-1.0, 0.0); + result += mat4(-0.014299509, -0.06512707, 0.045196746, 0.040090322, -0.060450025, 0.024032418, -0.15420575, -0.3009211, -0.2933259, -0.28432974, -0.1561143, 0.01582587, -0.043954756, -0.16587959, 0.13182323, 0.11914795) * input_1(-1.0, 1.0); + result += mat4(-0.014326971, -0.0043102102, -0.1490081, -0.02465499, -0.018071461, 0.0893566, 0.14248468, -0.020264959, 0.07961619, 0.08891083, 0.21677227, -0.25514036, 0.3896632, 0.048527993, 0.34877554, 0.0066801524) * input_1(0.0, -1.0); + result += mat4(0.459629, 0.037074473, 0.08720665, -0.21462107, 0.585627, 0.5136459, 0.20639095, 0.09365315, 0.08048474, 0.039547633, 0.061901577, -0.14267096, 0.39305127, 0.40380305, -0.03390415, -0.08291443) * input_1(0.0, 0.0); + result += mat4(-0.17124745, -0.15590915, 0.035851862, 0.021375652, -0.3361882, 0.5032264, -0.5394833, 0.0063770963, 0.15577035, 0.22120826, 0.11062028, -0.32244062, 0.3897538, -0.09650446, 0.09940879, -0.11082779) * input_1(0.0, 1.0); + result += mat4(0.012495122, -0.047157634, -0.0068322443, 0.035804912, -0.045584314, -0.12556773, -0.05370288, -0.045028012, 0.10240992, 0.034338806, -0.091018, 0.17565557, -0.46442777, -0.67645276, 0.015549756, -0.1990394) * input_1(1.0, -1.0); + result += mat4(-0.32055393, 0.17990775, 0.07818838, -0.11462471, -0.16892923, -0.40510997, 0.07483659, -0.131079, -0.07447935, 0.1306727, -0.15566733, 0.08583846, -0.24927205, -0.5202334, -0.20170239, 0.15041752) * input_1(1.0, 0.0); + result += mat4(-7.954226e-05, -0.101562046, 0.24060217, 0.25397894, -0.0074966387, -0.067081995, -0.6194755, -0.1279403, 0.16413012, 0.046009995, -0.0879787, 0.20927295, -0.02179612, 0.039794106, 0.28209302, -0.124539934) * input_1(1.0, 1.0); + result += mat4(0.11220719, -0.08407826, -0.002651848, 0.20639126, 0.069826074, 0.08906626, 0.08439592, -0.21261932, 0.115985066, -0.03726243, -0.058909602, -0.12500484, -0.08568509, 0.10764928, 0.039629154, 0.07839977) * input_2(-1.0, -1.0); + result += mat4(-0.029604817, -0.058288645, 0.04046734, 0.18523173, 0.27802438, 0.1105276, 0.13151559, -0.06548178, -0.15918942, 0.068478934, 0.0395077, -0.14864399, 0.028098017, 0.045173872, 0.019361097, 0.14174645) * input_2(-1.0, 0.0); + result += mat4(0.05638986, -0.04407097, 0.019480826, 0.20493497, 0.16326055, 0.19977531, -0.17197767, -0.08905153, -0.08762292, 0.008017433, 0.01633885, 0.1767325, -0.009905996, 0.087775394, -0.03191707, 0.023367299) * input_2(-1.0, 1.0); + result += mat4(0.060590584, -0.029366506, -0.075212464, 0.03186406, 0.06207219, 0.100000195, 0.05711326, -0.1326969, 0.057590477, -0.097681634, 0.1778892, 0.13457851, -0.023568768, 0.037635725, -0.055786043, 0.014386253) * input_2(0.0, -1.0); + result += mat4(-0.21672691, 0.18138884, 0.11847634, -0.16200048, -0.1652201, -0.47892967, 0.09774663, 0.2178258, 0.037218504, 0.4133317, -0.08574334, -0.0015597171, 0.14061946, -0.042991545, -0.16049972, 0.13007078) * input_2(0.0, 0.0); + result += mat4(-0.027807524, 0.03411935, 0.099512145, 0.0328837, -0.07169477, -0.13336022, -0.122005664, 0.1552406, -0.02606292, -0.023591366, 0.0035142032, 0.13418895, -0.19482368, -0.014396546, 0.07549269, -0.060044765) * input_2(0.0, 1.0); + result += mat4(0.08550956, 0.17022838, -0.1989165, 0.07331699, 0.0033753044, 0.17026433, 0.22873019, 0.018919654, 0.25785562, -0.15039663, 0.27718782, -0.08561034, 0.0018678532, -0.123151965, -0.15795316, -0.0481964) * input_2(1.0, -1.0); + result += mat4(0.070697404, 0.19972628, 0.12957157, 0.1522106, -0.11014891, -0.13231467, 0.11469501, -0.1333214, -0.060599767, 0.36144444, -0.062550195, -0.12271025, -0.005260688, -0.022914255, 0.047592726, 0.0718037) * input_2(1.0, 0.0); + result += mat4(-0.11967126, -0.042352714, 0.025400503, 0.042503953, 0.085516244, 0.12569854, 0.12224462, -0.19774805, -0.01164575, -0.2904191, -0.17341647, 0.25934187, 0.0018568074, 0.054825023, 0.098045774, -0.090665534) * input_2(1.0, 1.0); + result += mat4(0.24007367, 0.07709654, 0.17372794, -0.012797274, -0.28192386, -0.13099954, -0.092906795, 0.45126092, 0.066443026, -0.07509562, -0.059216395, 0.02427491, 0.98355305, 0.79491407, 1.6005281, 2.6324244) * input_3(-1.0, -1.0); + result += mat4(0.11244558, 0.004217456, 0.09379545, 0.12907852, -0.26743793, -0.024343329, -0.18943553, -0.07203136, 0.025593102, 0.10891558, -0.13919508, 0.031596903, 0.43343395, 0.2189015, 0.049110375, 0.0069700587) * input_3(-1.0, 0.0); + result += mat4(0.13363981, 0.07289791, -0.032096215, -0.1469384, -0.17191702, -0.22232419, 0.0010496563, -0.019424621, -0.10778568, -0.09741582, 0.08270158, 0.020639991, -0.12629691, -0.104381554, 0.3414522, -0.012757475) * input_3(-1.0, 1.0); + result += mat4(-0.13819931, -0.14199078, -0.061558045, -0.123497054, 0.012788641, -0.16343957, 0.01617488, 0.3354093, -0.07680469, 0.030933307, 0.030423312, 0.04929989, 0.3738087, -0.17260954, 0.3356295, -0.100884214) * input_3(0.0, -1.0); + result += mat4(-0.15879966, 0.08024698, -0.05832688, -0.12674585, 0.40154496, 0.025994202, -0.16438735, -0.1752126, 0.04651382, -0.031480704, 0.260014, -0.12216102, -0.38216737, 0.41727492, -0.102344945, 0.14576577) * input_3(0.0, 0.0); + result += mat4(-0.015392506, -0.1627804, -0.0557775, 0.33724073, 0.0045685964, 0.06563641, -0.017072681, -0.099989496, -0.091294035, 0.062761106, -0.10989303, 0.041477304, 0.030530283, -0.27073625, -0.229417, -0.042643245) * input_3(0.0, 1.0); + result += mat4(-0.310605, 0.09266331, -0.0034856016, 0.06646137, -0.060711462, 0.06184551, -0.042709224, 0.062345147, -0.046406794, 0.019063301, -0.0426913, 0.01790793, -0.02559111, 0.2709689, 0.042549577, 0.12009054) * input_3(1.0, -1.0); + result += mat4(0.024876429, 0.090795465, 0.015123432, -0.024457017, 0.02155429, 0.06511309, -0.010767174, 0.10356615, -0.028897045, -0.106342934, 0.0027026546, -0.09350616, -0.041465186, -0.65118533, 0.05667744, -0.16562632) * input_3(1.0, 0.0); + result += mat4(-0.12742998, -0.02345725, 0.066331424, -0.27500713, -0.017574236, 0.13932922, 0.031654917, -0.04494067, 0.09457827, 0.07078665, 0.01321826, 0.077220276, 0.08904954, 0.38943958, -0.10588507, 0.054977726) * input_3(1.0, 1.0); + result += mat4(0.17209554, 0.02341762, 0.068439126, -0.13673899, -0.04425253, -0.030369898, -0.1469629, -0.068748444, -0.33228537, -0.15455633, -0.33210647, 0.19545351, -0.35738006, 0.1250873, -0.068634145, -0.059910562) * input_4(-1.0, -1.0); + result += mat4(-0.07853693, -0.012152933, 0.12134994, 0.033568196, -0.048818775, -0.03436324, -0.025153667, -0.06013226, -0.4423887, -0.27133128, -0.021631315, 0.0037481028, 0.38604075, 0.09446446, 0.03322753, -0.22294767) * input_4(-1.0, 0.0); + result += mat4(0.071842924, -0.034488004, -0.044002015, 0.06365586, -0.027256675, 0.0012365424, -0.024843004, 0.019711535, 0.14221047, 0.006037037, 0.18866517, -0.12621401, 0.08407565, 0.11525839, 0.00203143, 0.019418214) * input_4(-1.0, 1.0); + result += mat4(-0.0012156896, -0.13514231, -0.08318418, -0.103083834, -0.059156552, -0.08879088, 0.056137715, -0.055314366, 0.09011803, -0.16334341, -0.09101809, 0.40254876, -0.03433457, 0.0504126, 0.06546957, -0.0037069004) * input_4(0.0, -1.0); + result += mat4(0.035276, -0.0003406114, 0.07532812, -0.15357584, -0.10365303, 0.20778668, 0.10155083, -0.18328066, -0.35166013, -0.06906858, -0.15441212, 0.008563099, 0.17444584, 0.041950412, -0.18047881, -0.10233477) * input_4(0.0, 0.0); + result += mat4(0.15753259, -0.04255373, -0.08918746, 0.13556628, -0.06206264, -0.057893652, 0.0029138632, 0.009118773, 0.26523823, 0.1397587, -0.16483168, 0.10997646, -0.033403788, 0.017569399, 0.001587964, -0.10649655) * input_4(0.0, 1.0); + result += mat4(-0.116282105, 0.06996892, 0.019319972, 0.028696708, 0.0173643, 0.03143074, 0.14499418, 0.22680701, 0.21598181, 0.09147894, 0.037397504, -0.0394016, -0.0688468, 0.027825594, 0.05427523, -0.025965847) * input_4(1.0, -1.0); + result += mat4(-0.11324995, -0.041448046, 0.26609218, -0.07838032, 0.2125199, -0.27992004, -0.040626705, 0.24000442, 0.018053561, -0.18067184, 0.011796662, -0.00830117, 0.04562119, -0.113391295, -0.012815259, 0.07888167) * input_4(1.0, 0.0); + result += mat4(-0.016201058, 0.032746967, -0.097574405, 0.039852574, 0.051314764, 0.023750639, 0.05756303, -0.021210281, 0.041329317, 0.11579893, -0.10264565, 0.005424021, 0.06018604, -0.10414233, 0.07201672, -0.032320935) * input_4(1.0, 1.0); + result += mat4(0.026026698, -0.021812655, 0.0146876555, 0.016259117, -0.17066826, -0.09669121, -0.062108412, 0.033077728, -0.40663573, 0.07566967, 0.07089548, -0.018306427, -0.09425952, -0.016511505, -0.004618353, 0.09305235) * input_5(-1.0, -1.0); + result += mat4(-0.03114763, 0.056436885, 0.019182278, 0.05577641, 0.06581789, -0.21475859, -0.039639954, 0.018433847, -0.009811621, -0.27906838, 0.018504992, 0.13706663, 0.0019766784, 0.06561579, -0.013421678, -0.13363336) * input_5(-1.0, 0.0); + result += mat4(0.01887506, -0.10782918, -0.02178562, 0.1128495, 0.0024129988, -0.110643245, 0.15476121, -0.09267461, 0.12137251, 0.12628059, -0.07897079, -0.15694265, 0.040232226, 0.022333004, 6.0961975e-06, 0.0064132176) * input_5(-1.0, 1.0); + result += mat4(0.022825077, 0.14208503, -0.025495334, -0.06832347, 0.034581758, 0.06974625, -0.15567243, -0.01583839, 0.12932758, -0.17416751, -0.045677844, 0.078967944, -0.033755414, -0.052217543, -0.18849497, 0.06411605) * input_5(0.0, -1.0); + result += mat4(-0.076833926, 0.12737499, -0.12462748, -0.16718914, 0.013323486, 0.19476755, 0.37850514, -0.086897574, -0.116786614, -0.10222061, 0.3628917, -0.1328483, 0.05843661, 0.12295418, 0.2884457, -0.1259118) * input_5(0.0, 0.0); + result += mat4(0.0029289066, 0.045307487, -0.12402232, -0.08378065, -0.13738032, -0.006879803, 0.06654807, -0.08103727, 0.135374, 0.06496198, -0.0064542885, 0.11968392, 0.15483235, -0.02911838, -0.19579175, 0.03698511) * input_5(0.0, 1.0); + result += mat4(0.1301871, -0.14079112, -0.06252282, 0.05907652, -0.039857604, 0.03524263, -0.3562536, 0.060657367, -0.16662243, 0.04884457, -0.121145554, 0.051898338, -0.034239016, -0.044324845, -0.1115483, 0.21578076) * input_5(1.0, -1.0); + result += mat4(-0.064243846, 0.3095769, 0.051225595, 0.10549325, 0.031183172, 0.031893846, 0.006929192, -0.020917455, 0.022883259, -0.11827107, -0.048624143, -0.030642604, -0.007616225, -0.08000153, 0.13568766, -0.36246186) * input_5(1.0, 0.0); + result += mat4(-0.08872161, -0.19687326, -0.15608783, 0.010376226, -0.11426856, 0.0682072, -0.023042925, 0.0035939545, 0.15833485, 0.12933229, 0.23321551, -0.13599537, -0.06315418, 0.029857477, 0.10852632, 0.37374926) * input_5(1.0, 1.0); + result += mat4(-0.13004164, 0.025872853, 0.05016923, -0.11972797, 0.0587029, 0.0045948643, 0.13578407, 0.055423174, -0.024396725, 0.001579172, -0.17201677, -0.1050147, -0.17123275, -0.12116302, -0.13101071, -0.05636107) * input_6(-1.0, -1.0); + result += mat4(0.06512682, -0.13072784, -0.11350653, 0.13347194, 0.025024854, -0.055265166, 0.082704015, -0.006652263, 0.08108082, 0.03739894, 0.049943525, 0.29805154, 0.20923609, 0.119204715, -0.04869099, -0.056750167) * input_6(-1.0, 0.0); + result += mat4(-0.016340945, 0.11870115, 0.04804889, -0.017158352, 0.07705144, -0.081691824, 0.0016887333, -0.051511332, 0.040295225, -0.17554095, -0.22566335, 0.004712791, 0.036855243, -0.00989299, 0.118699126, 0.09124754) * input_6(-1.0, 1.0); + result += mat4(0.17624499, 0.033666413, -0.08974883, -0.27008685, -0.29305723, 0.0019231297, -0.1621861, -0.046926595, -0.1364917, 0.010520731, 0.15044843, 0.052645434, 0.20562385, 0.03377072, 0.13809054, 0.14054993) * input_6(0.0, -1.0); + result += mat4(-0.16942127, 0.027160887, 0.05437065, -0.034685582, 0.22853865, 0.1723898, 0.06812071, -0.054019574, 0.30781305, -0.17698097, 0.39122918, -0.15919235, -0.30884752, 0.002741393, -0.34716076, 0.0893872) * input_6(0.0, 0.0); + result += mat4(-0.25122893, 0.07514616, 0.12333154, 0.20170973, -0.030277928, -0.1149268, -0.063851595, 0.16829504, -0.10715971, -0.15093352, -0.04396347, -0.025752638, 0.14671215, 0.06569528, -0.017121898, -0.25323486) * input_6(0.0, 1.0); + result += mat4(-0.46836972, 0.09905654, -0.03280533, -0.15080124, 0.023577834, 0.01900258, 0.22269996, 0.18326499, -0.0034116302, 0.019317463, -0.06988842, 0.02053879, 0.029048722, -0.01603214, 0.06707597, -0.077299535) * input_6(1.0, -1.0); + result += mat4(0.18708503, -0.19944869, -0.25921568, 0.1465916, -0.07099152, -0.27692437, -0.221899, 0.106050186, 0.17587924, 0.20899384, -0.15291624, 0.11401032, -0.024553485, 0.02196344, -0.031109408, 0.007499924) * input_6(1.0, 0.0); + result += mat4(0.06795024, 0.017021399, 0.048656885, -0.33858165, -0.038344335, 0.17045383, 0.18880211, -0.15999432, 0.064987406, 0.16538885, -0.030528117, -0.07957673, -0.0026760781, 0.027911382, -0.053535182, 0.0485223) * input_6(1.0, 1.0); + result += mat4(-0.10917376, -0.056712378, 0.05323055, -0.104975656, -0.24222867, -0.060207035, -0.2258533, 0.016272439, -0.24736972, -0.03919762, -0.07954933, -0.09505528, -0.0063878563, -0.15794985, -0.069477685, 0.08033046) * input_7(-1.0, -1.0); + result += mat4(0.07091285, 0.04238508, -0.007140302, 0.15944384, 0.0588474, 0.020439496, -0.10303489, -0.118879355, -0.030541474, -0.0344446, -0.13875587, 0.076923534, -0.31023765, 0.10986886, 0.01160499, -0.14110337) * input_7(-1.0, 0.0); + result += mat4(0.04991933, 0.017499454, -0.032222528, -0.055481132, -0.14842993, -0.029331993, 0.039965298, 0.034005586, 0.00557091, 0.130122, -0.073912024, -0.023617009, 0.22576432, 0.01235034, 0.12596175, 0.12772897) * input_7(-1.0, 1.0); + result += mat4(-0.052787073, -0.0191801, -0.029850338, -0.14997949, 0.11763606, 0.1053032, 0.0974584, 0.06438054, 0.038758423, 0.01235252, 0.06422162, 0.32441464, 0.030359844, 0.1464579, 0.036437575, 0.06290401) * input_7(0.0, -1.0); + result += mat4(-0.106061324, -0.07694239, 0.3646233, 0.30556738, -0.08409559, 0.10802776, -0.0386238, -0.13038252, -0.09968054, -0.0765331, 0.1857369, -0.0038705654, 0.22862484, 0.075304225, -0.17925043, -0.02256476) * input_7(0.0, 0.0); + result += mat4(0.14504309, 0.089246884, -0.3450838, -0.15863533, 0.08526454, 0.14889967, -0.028031409, -0.16392492, 0.032695383, -0.08730878, 0.0030399722, 0.05861766, -0.1783148, -0.040368326, 0.030143432, -0.07330865) * input_7(0.0, 1.0); + result += mat4(-0.16356888, 0.088571176, -0.38694575, 0.05836575, 0.16518568, -0.061148785, 0.018855268, -0.05498841, 0.17742322, -0.12641041, 0.015139741, -0.1466308, 0.07020095, -0.0071799844, 0.02390675, -0.058087546) * input_7(1.0, -1.0); + result += mat4(0.44840422, -0.02880366, -0.3251058, -0.13267888, 0.0633427, 0.06539548, -0.059771996, 0.17590657, -0.025815925, 0.10133511, -0.06349992, -0.039225668, 0.023867752, -0.24083658, -0.11448381, -0.014332047) * input_7(1.0, 0.0); + result += mat4(0.24330445, 0.03977511, -0.033160564, -0.35548523, 0.083148025, -0.04736361, 0.005850127, 0.050172642, 0.029218167, -0.0967105, -0.005496412, 0.018465769, -0.06449151, 0.08545749, -0.04395164, -0.07078015) * input_7(1.0, 1.0); + result += vec4(0.00018086612, -0.00044200142, 4.029084e-05, 0.00051963236); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf2 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.05860322, 0.08081587, -0.16249222, 0.0882508, -0.010375, 0.0060022837, 0.06357495, 0.10285307, -0.041020162, -0.115068436, 0.059174623, -0.05355243, 0.16214718, 0.0035334262, -0.02208767, 0.18945938) * input_0(-1.0, -1.0); + result += mat4(0.08074975, 0.102752164, 4.183923e-05, 0.04125402, 0.063601986, 0.1303478, 0.06848794, -0.20503706, -0.08439122, -0.16297048, -0.022206374, -0.1387915, 0.009495144, 0.05901193, -0.0915247, 0.038278997) * input_0(-1.0, 0.0); + result += mat4(-0.016997155, 0.0643506, 0.046738546, 0.15149315, -0.08364297, 0.07428804, 0.0062541054, 0.072027, 0.075610936, -0.13387081, 0.002852275, -0.18782215, -0.13036165, 0.067558706, -0.032432485, 0.04912885) * input_0(-1.0, 1.0); + result += mat4(0.13431856, 0.09665859, 0.06057214, 0.14708254, -0.12168615, -0.010736591, 0.007044461, 0.039643466, -0.012614524, 0.01933514, -0.014649386, -0.007055623, -0.35500032, 0.2724873, -0.06276734, 0.48212153) * input_0(0.0, -1.0); + result += mat4(-0.002028416, 0.20920129, -0.2163243, 0.6067116, -0.2589742, -0.24518915, -0.14665969, 0.01918613, -0.09012806, -0.4328361, -0.11874486, -0.71006256, -0.09648697, 0.15932505, -0.044042878, 0.4501217) * input_0(0.0, 0.0); + result += mat4(0.17135634, 0.13393085, 0.108756214, 0.2957131, -0.06242775, -0.023207683, -0.08793151, 0.02420368, -0.012324815, 0.043512024, -0.0785625, -0.09628178, 0.41797316, -0.008142524, 0.37591323, 0.53902423) * input_0(0.0, 1.0); + result += mat4(0.097616956, -0.07524975, 0.0977145, 0.13500638, 0.005401886, 0.016075, 0.021185393, -0.04882391, -0.09883056, 0.05143283, 0.048345193, -0.12527606, 0.19464172, -0.044134915, -0.08329352, 0.24065897) * input_0(1.0, -1.0); + result += mat4(0.05106044, 0.026082782, -0.10247989, 0.07217802, -0.1155588, -0.11620854, -0.0024763201, -0.032232832, -0.029964112, 0.012821981, -0.07395334, -0.11791863, -0.0853704, -0.053495083, -0.06499483, 0.07464679) * input_0(1.0, 0.0); + result += mat4(0.01829638, -0.03302728, 0.077278666, 0.25892067, -0.0040189, 0.038799997, -0.01353198, -0.03437373, 0.12579209, -0.019222995, 0.0044977097, -0.062438667, -0.113626234, 0.045673545, -0.037311055, 0.22880179) * input_0(1.0, 1.0); + result += mat4(0.029973978, -0.022573298, -0.019615617, -0.018012822, -0.013032352, 0.005752674, -0.054732963, 0.033292048, -0.10560068, -0.019538805, 0.076553226, -0.077272795, -0.027880564, 0.037779447, 0.0055647586, -0.03658501) * input_1(-1.0, -1.0); + result += mat4(-0.045514137, 0.042645883, -0.04074847, 0.089241885, -0.0026450395, -0.03880906, -0.20534751, -0.1591032, -0.11945251, 0.06250645, 0.21749985, -0.03166684, -0.08143932, 0.0041721123, 0.076125965, -0.09958764) * input_1(-1.0, 0.0); + result += mat4(-0.01821925, 0.064564295, -0.0025440173, 0.1472132, -0.09335794, -0.008772737, -0.16937879, -0.079136804, -0.06955852, -0.052205957, -0.19420666, 0.10190628, 0.05495008, -0.04996884, -0.051750816, -0.06652037) * input_1(-1.0, 1.0); + result += mat4(0.07718388, 0.11869404, 0.015999941, -0.08971733, 0.01576168, -0.08795463, 0.047254264, -0.020970412, -0.06246844, 0.084571935, 0.051908553, -0.017668433, 0.06630934, -0.19114268, -0.009236055, -0.041807365) * input_1(0.0, -1.0); + result += mat4(-0.024138555, -0.1670288, 0.28426108, -0.085793585, -0.044288285, -0.057698984, -0.07052018, -0.11889368, -0.2335038, -0.10696242, 0.067331664, -0.0646462, 0.05649705, 0.31994605, 0.10446313, 0.18043947) * input_1(0.0, 0.0); + result += mat4(0.029805742, -0.059668627, 0.104212455, -0.021734195, -0.11701355, -0.10353955, -0.43162647, -0.41726488, -0.27256584, 0.2711771, -0.013216682, 0.09865732, -0.07854924, 0.035693835, 0.082886346, 0.10490388) * input_1(0.0, 1.0); + result += mat4(0.04826145, 0.037765037, 0.06915921, -0.031396933, 0.031656742, -0.0023920317, 0.034011982, 0.02018833, -0.16773, -0.032011457, -0.01699398, -0.04332028, -0.063900754, 0.008834045, -0.12292573, 0.003984445) * input_1(1.0, -1.0); + result += mat4(-0.06094473, -0.042057563, -0.30869797, 0.034681745, 0.021263566, 0.06562801, 0.2706462, 0.09082034, 0.08724961, 0.13111153, -0.197774, 0.015062351, -0.03682096, 0.06102247, -0.19350627, 0.2885178) * input_1(1.0, 0.0); + result += mat4(0.028916704, -0.20038031, -0.21729267, 0.14272861, -0.33266866, 0.13055359, -0.45033053, -0.4054081, 0.0010586865, 0.030789228, 0.04051037, 0.025784308, -0.039941214, -0.020392466, 0.009378402, 0.15780261) * input_1(1.0, 1.0); + result += mat4(-0.05878633, 0.00081922894, 0.024897026, 0.011838327, 0.0013135166, -0.0513708, 0.096297115, -0.02529272, -0.038480677, -0.05151287, -0.03580412, 0.03528805, -0.03851241, 0.09953785, 0.011276066, -0.026328202) * input_2(-1.0, -1.0); + result += mat4(0.06129001, -0.14291972, 0.0455098, 0.015944926, -0.08867338, 0.07110712, 0.022813883, -0.0128561845, 0.07397276, -0.16087896, -0.14826217, -0.22477007, -0.14180084, 0.12906195, -0.21377268, 0.10926355) * input_2(-1.0, 0.0); + result += mat4(0.013369439, 0.014852368, 0.0018983426, 0.010449088, -0.14259826, 0.087684065, 0.087631345, 0.14746855, 0.13318281, -0.01118137, -0.121165074, -0.05562363, -0.1599942, 0.057624716, 0.007946317, 0.09299363) * input_2(-1.0, 1.0); + result += mat4(0.08386785, 0.16529919, -0.056314666, 0.1312077, 0.04112818, 0.02492489, -0.04699346, -0.10902996, -0.2356372, 0.007336029, 0.020362679, -0.13995703, 0.043712076, 0.008688051, 0.174523, 0.066409394) * input_2(0.0, -1.0); + result += mat4(-0.109491676, -0.30304056, 0.35053304, -0.3645121, 0.32402664, -0.03850254, -0.47790554, 0.42590615, 0.06985356, -0.45380142, -0.18273558, -0.9137395, 0.020479277, 0.21818282, 0.024596883, 0.6135843) * input_2(0.0, 0.0); + result += mat4(0.013450706, 0.16450505, 0.07844251, 0.080478154, -0.033342313, 0.05602608, 0.17820354, 0.03493049, -0.005839412, -0.06282217, -0.15044476, -0.043473326, 0.02029938, 0.031763583, -0.036177993, -0.04770864) * input_2(0.0, 1.0); + result += mat4(0.07846197, -0.012775257, -0.019094715, 0.07522369, -0.06551525, -0.0070684534, 0.20274861, -0.09178376, -0.020999193, -0.0034203855, 0.043697875, -0.133898, -0.040166847, 0.0033597508, -0.07792765, 0.043952383) * input_2(1.0, -1.0); + result += mat4(0.054053668, -0.03430802, 0.15302137, -0.21519616, -0.06800552, -0.022970485, 0.14022614, -0.011452016, 0.05263724, 0.110168256, -0.032314256, -0.050842676, -0.142433, -0.04561878, -0.025502078, 0.038350195) * input_2(1.0, 0.0); + result += mat4(0.08460682, -0.05712222, 0.0123733245, 0.04545321, -0.0621169, 0.024475813, 0.13157672, -0.0104057, 0.12232519, -0.037327908, 0.01189133, -0.053652946, -0.078278504, -0.028901514, -0.12888288, -0.03220613) * input_2(1.0, 1.0); + result += mat4(0.014654383, -0.011297874, 0.12197839, 0.008151382, -0.049033944, 0.08450745, -0.07362734, 0.096224435, -0.10950951, 0.0091979075, 0.0024976218, -0.05224086, 0.114787675, -0.27593195, -2.222463, -1.0172788) * input_3(-1.0, -1.0); + result += mat4(-0.19766924, 0.05242117, 0.05681893, 0.13758302, 0.1442949, -0.027692819, 0.055087056, 0.03492847, 0.026578236, -0.063598454, -0.014268576, -0.03133684, 0.3890719, -0.23479746, -0.039961256, 0.023348723) * input_3(-1.0, 0.0); + result += mat4(-0.18856572, 0.018827057, 0.14949243, 0.16083267, 0.068094835, -0.052557684, -0.04793278, -0.054795664, 0.075242884, -0.043677233, -0.055800702, -0.11088111, 0.14185683, 0.053899318, 0.0076813097, 0.0057820673) * input_3(-1.0, 1.0); + result += mat4(0.061626207, 0.1149734, -0.123053655, 0.020883659, 0.06909394, 0.10757321, -0.05929083, 0.14052302, 0.053517364, 0.008690265, 0.06864552, 0.106046215, -0.08478355, -0.13871741, -0.009667152, -0.07250419) * input_3(0.0, -1.0); + result += mat4(0.02809682, 0.035027806, 0.028829103, 0.4096854, -0.06921379, 0.04826276, 0.36071312, 0.09193951, 0.06374147, 0.015203129, 0.12824406, -0.3502842, 0.18574017, -0.033122223, 0.09668386, -0.12596709) * input_3(0.0, 0.0); + result += mat4(-0.10295863, 0.030389365, 0.04878631, 0.062047254, 0.1380219, -0.038782652, 0.006188685, -0.01496018, 0.038410768, -0.0595221, -0.10911726, -0.035691436, -0.056271393, -0.13433366, -0.09173323, -0.048989438) * input_3(0.0, 1.0); + result += mat4(0.09083129, 0.118430115, -0.08823165, 0.1698237, 0.09076038, -0.027393533, -0.06553662, 0.098806374, -0.013610186, -0.0069139437, -0.014949189, 0.030359378, -0.07605294, -0.07184125, -0.068594374, 0.10532407) * input_3(1.0, -1.0); + result += mat4(-0.12262623, 0.02064851, -0.009330499, -0.04655583, -0.017375503, -0.06481525, 0.06312052, 0.07614259, 0.036831085, 0.04368823, -0.0012530616, 0.032247737, 0.13962562, 0.06876535, -0.025523791, 0.042845897) * input_3(1.0, 0.0); + result += mat4(-0.12820914, 0.018390736, -0.22381297, 0.007457047, 0.0071471427, 0.01502963, 0.035151254, 0.0077340645, 0.03225377, 0.02763704, 0.014521242, 0.03385238, -0.050800305, 0.026028456, 0.08274833, -0.051556416) * input_3(1.0, 1.0); + result += mat4(-0.01717578, -0.036797542, 0.112762354, -0.045756664, -0.01583003, 0.057896517, -0.04189715, -0.020744832, 0.061332185, 0.12827216, 0.18118317, -0.16718094, 0.018398562, 0.07499126, -0.15651046, -0.02680828) * input_4(-1.0, -1.0); + result += mat4(-0.11221531, -0.010931258, 0.18614312, -0.0762247, -0.010742774, -0.07051856, 0.09557894, -0.03960626, -0.24928461, -0.1261276, 0.36925647, 0.15021996, 0.040555947, 0.21279858, -0.0794997, 0.10935714) * input_4(-1.0, 0.0); + result += mat4(-0.054520905, 0.019084606, 0.034734897, 0.057576157, -0.02893439, -0.031273954, 0.010785378, 0.05354344, -0.038797505, 0.0220804, 0.10227927, 0.009742187, 0.012870871, 0.021774976, -0.10629084, 0.086578935) * input_4(-1.0, 1.0); + result += mat4(-0.067794174, 0.018643964, -0.12522402, 0.0075634737, -0.17420992, 0.02599043, 0.018506171, 0.03925698, 0.38175473, 0.1595323, -0.21036185, 0.27819416, -0.04832502, -0.08720803, 0.22378482, -0.15357353) * input_4(0.0, -1.0); + result += mat4(-0.06259655, -0.14506188, -0.048687782, -0.31205687, 0.27386045, 0.14380631, -0.13473457, 0.17162487, -0.19061783, -0.034025658, -0.29521734, -0.09415235, 0.108285025, 0.3870079, 0.13503349, 0.45675835) * input_4(0.0, 0.0); + result += mat4(-0.07419784, 0.029173069, 0.21942145, 0.060459916, -0.012202111, 0.081200145, 0.002379887, -0.044206064, 0.08178065, -0.111820795, 0.08761559, 0.021319352, 0.015751928, -0.054900628, -0.14453326, 0.05205361) * input_4(0.0, 1.0); + result += mat4(-0.013562547, 0.1139192, -0.09279282, 0.046569876, -0.095192045, 0.05978112, -0.09256578, -0.011589148, 0.13197745, -0.011370593, -0.068495706, -0.01806915, -0.04678412, -0.042057134, 0.023223309, -0.02511927) * input_4(1.0, -1.0); + result += mat4(-0.06546758, 0.0532272, -0.024589289, -0.13299926, -0.080825925, 0.14171606, 0.07505187, -0.051061414, 0.01999367, -0.07165123, -0.096092306, 0.053669497, -0.024789782, -0.06627736, 0.032990668, 0.1327834) * input_4(1.0, 0.0); + result += mat4(-0.04252946, -0.03534234, -0.09896065, -0.045991745, -0.032529313, 0.027449293, 0.0093558105, 0.045818552, -0.07864463, 0.036328226, 0.02316115, -0.06020094, -0.032688815, 0.04147515, 0.021926757, 0.032531265) * input_4(1.0, 1.0); + result += mat4(-0.050705887, -0.047908977, 0.04580878, -0.04370945, -0.035739377, 0.005839984, 0.06364577, 0.0056665232, 0.17269062, 0.090888076, -0.14763187, 0.13989818, 0.06901188, 0.055289082, -0.04632558, 0.025523786) * input_5(-1.0, -1.0); + result += mat4(-0.049450785, -0.12513918, 0.029697819, -0.06906058, 0.29099652, 0.063935496, 0.07626791, 0.025630178, 0.12208165, 0.10085471, 0.08970749, -0.00072944886, -0.013234279, -0.04762294, 0.042145606, 0.059445728) * input_5(-1.0, 0.0); + result += mat4(0.067755066, -0.054619905, -0.04912456, -0.10142734, 0.06323186, -0.09349734, -0.056137368, -0.055568893, -0.114846595, 0.10074356, 0.045011863, 0.12425167, 0.077441126, 0.012134861, -0.015369942, 0.05960456) * input_5(-1.0, 1.0); + result += mat4(-0.06335925, 0.034358177, 0.049131714, -0.087080464, 0.011879596, -0.013559663, -0.13655181, 0.19005065, 0.05350112, -0.044428874, 0.060696755, 0.035862494, 0.06554877, -0.031007972, -0.03361113, 0.06852945) * input_5(0.0, -1.0); + result += mat4(-0.03027107, -0.47831187, 0.05445432, -0.5926563, -0.19290704, 0.22298782, 0.6192373, 0.011379388, -0.0770369, 0.21266934, -0.13395436, 0.7485347, 0.15864159, 0.22801596, -0.03660925, 0.3146196) * input_5(0.0, 0.0); + result += mat4(-0.04903572, -0.12116789, -0.16213526, -0.112450354, -0.1834353, -0.01377651, -0.15759678, -0.08529665, -0.07022062, 0.12731758, 0.079108596, -0.05494986, -0.006041861, -0.048111197, 0.22137058, 0.10295782) * input_5(0.0, 1.0); + result += mat4(-0.0057046385, 0.057692777, -0.09802817, -0.062235013, 0.06202611, 0.0093100285, -0.17975162, 0.12006226, 0.041146465, -0.039409135, 0.0031297375, 0.07800683, 0.10131692, 0.0027105433, 0.046901617, 0.033469263) * input_5(1.0, -1.0); + result += mat4(0.1021572, -0.007447129, 0.04450172, -0.1063998, 0.08319939, -0.060556374, -0.042278368, -0.0058373236, -0.022419807, -0.044835076, -0.0075273747, 0.075040065, 0.04637157, 0.13353947, -0.46421143, 0.2580798) * input_5(1.0, 0.0); + result += mat4(0.11826146, 0.04212035, -0.14542724, -0.12032519, 0.011566832, -0.008960005, -0.15731022, -0.023602989, -0.029661901, 0.03164733, 0.22525005, 0.03533899, 0.12649897, -0.06371419, 0.1434282, 0.092251845) * input_5(1.0, 1.0); + result += mat4(-0.08716771, 0.04456476, 0.028306438, -0.025685677, 0.025870396, 0.059207734, -0.058342203, 0.030588135, -0.030965565, 0.003979101, -0.025559023, -0.052887898, -0.19059595, -0.12160705, 0.17606492, -0.15425174) * input_6(-1.0, -1.0); + result += mat4(-0.02412418, 0.025503276, 0.043836508, -0.09197971, 0.05713973, 0.007503389, 0.02353672, -0.09879923, -0.05112769, -0.09297639, 0.18706009, -0.038262356, -0.017752592, -0.10160894, -0.006074703, -0.28232446) * input_6(-1.0, 0.0); + result += mat4(-0.07199216, 0.036830522, -0.06693019, 0.02289005, 0.0111506805, 0.051163033, 0.0050230813, -0.026187824, 0.13221033, 0.096346974, -0.031524833, 0.02213622, -0.22631282, 0.014443185, -0.13842203, -0.095920175) * input_6(-1.0, 1.0); + result += mat4(-0.08052673, 0.06249115, 0.08433407, 0.029378261, -0.1096946, 0.0050462685, -0.3698276, -0.090287454, -0.018896235, 0.005398275, 0.04993168, 0.04549309, 0.033633273, 0.0601152, 0.025359076, -0.046125762) * input_6(0.0, -1.0); + result += mat4(-0.083320454, 0.2043473, -0.028801179, 0.14814094, -0.011881513, -0.17072646, 0.009035805, -0.006706988, -0.12103418, -0.1779122, 0.15430756, -0.22974788, -0.048696995, -0.25518963, 0.016614014, -0.392821) * input_6(0.0, 0.0); + result += mat4(-0.018548358, -0.0050432766, -0.19371456, -0.028972872, 0.07901509, -0.011111768, -0.03599145, 0.076925226, -0.029380342, 0.013521681, -0.05809726, 0.039589085, -0.030141883, -0.0012615209, -0.060587324, -0.24626511) * input_6(0.0, 1.0); + result += mat4(0.018853005, -0.055857528, 0.01696519, 0.0077885916, -0.13942261, -0.08374478, 0.06182181, -0.14639522, 0.0009587537, -0.010814609, -0.04265227, -0.018981824, -0.052617833, -0.0003433834, 0.005414861, -0.03626857) * input_6(1.0, -1.0); + result += mat4(0.08634399, 0.04234329, 0.290498, -0.29494318, -0.12444026, -0.008501498, 0.0036076056, 0.035359263, 0.03753746, -0.02092916, -0.08663976, 0.05208117, -0.035179198, 0.028637856, -0.06442157, -0.025439799) * input_6(1.0, 0.0); + result += mat4(-0.3864529, 0.056766838, -0.21670379, 0.037449293, -0.03508908, 0.015933234, -0.006599727, 0.12120772, 0.026182333, 0.06317596, -0.06530308, -0.03331417, 0.023630807, 0.0006090448, 0.03725231, -0.040326297) * input_6(1.0, 1.0); + result += mat4(0.0016873279, 0.01066725, 0.0063106674, -0.034078013, 0.02564295, -0.019956803, -0.12743989, 0.03607277, 0.07142805, -0.02314599, -0.12935257, 0.06984886, 0.043408565, -0.03540373, 0.0054072095, 0.03136562) * input_7(-1.0, -1.0); + result += mat4(-0.038728982, -0.08195091, 0.029669294, -0.09367216, 0.20997408, 0.010096891, -0.05703822, 0.010945709, 0.14423518, -0.082080886, 0.051234502, -0.1077125, 0.08896341, 0.0021814173, 0.17792009, -0.08554061) * input_7(-1.0, 0.0); + result += mat4(0.06788724, 0.03429637, -0.039421625, -0.005267386, 0.080856234, -0.051214762, -0.068922065, -0.07307867, 0.07944854, -0.028327122, -0.025463834, -0.1185208, -0.020191116, 0.12394197, -0.027059656, 0.048885655) * input_7(-1.0, 1.0); + result += mat4(0.038089793, -0.120960414, 0.014895801, 0.13322322, 0.026140897, -0.038627554, 0.12438268, -0.006920069, 0.067480214, -0.045158815, -0.14176519, 0.048823267, 0.018940264, -0.00089474616, -0.16550036, -0.05048254) * input_7(0.0, -1.0); + result += mat4(0.04848792, 0.015952364, -0.08353834, 0.23462792, -0.03105337, 0.025063897, 0.059786744, -0.30059782, 0.006304959, -0.07310078, -0.031047095, -0.23293898, 0.16846904, 0.011578559, -0.4342783, -0.0902832) * input_7(0.0, 0.0); + result += mat4(-0.0023021267, -0.04315309, 0.07672572, 0.08866478, 0.06360489, -0.034144156, -0.10364818, -0.028574409, 0.22082159, -0.0066090813, -0.013027878, -0.1424807, 0.042992022, -0.18752493, 0.08787684, -0.12690262) * input_7(0.0, 1.0); + result += mat4(-0.10629076, -0.028570978, 0.16453911, -0.037585627, -0.0009747389, -0.078981414, 0.09567935, -0.116311, -0.0009435599, -0.09392512, 0.18028562, -0.13982815, 0.034599647, -0.08751685, 0.14282462, -0.06015671) * input_7(1.0, -1.0); + result += mat4(-0.016194787, 0.123494186, 0.2753469, 0.26062587, 0.12962691, -0.06288918, 0.018785791, 0.13046515, 0.011439011, -0.13893957, -0.035664804, -0.021706339, -0.0077261743, -0.09126069, 0.2989599, -0.0046987543) * input_7(1.0, 0.0); + result += mat4(0.16183275, 0.32378402, 0.35969272, 0.027304977, 0.0302214, 0.027527701, 0.20462434, -0.011950262, 0.06979301, -0.019032098, 0.19650427, -0.047937285, 0.1667744, -0.04889457, 0.062072556, -0.022899192) * input_7(1.0, 1.0); + result += vec4(-0.0035503812, 0.004342929, -0.0009509998, 0.0059583616); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf3 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.07967278, 0.073706955, -0.03339422, 0.09688098, 0.13660657, -0.0726135, 0.07505835, -0.080523245, -0.08401602, -0.025680456, 0.08655778, -0.032430742, 0.035569165, 0.047258366, -0.14414348, 0.029779272) * input_0(-1.0, -1.0); + result += mat4(0.0181985, -0.055346917, 0.13323088, -0.18709707, 0.28866813, -0.024933873, 0.22098103, -0.14321901, 0.11531384, -0.03658131, -0.056977574, 0.027599683, -0.115428016, 0.03518309, 0.20271936, 0.00979098) * input_0(-1.0, 0.0); + result += mat4(-0.1968708, 0.05818659, -0.2029723, 0.036470544, 0.08489514, -0.107170016, -0.0971742, 0.15287665, -0.12918602, -0.00021787254, 0.18744856, -0.09748867, -0.0033079446, -0.0036034512, 0.09946088, -0.11035286) * input_0(-1.0, 1.0); + result += mat4(-0.011990526, 0.04250131, -0.16938668, 0.09170849, -0.0031533423, -0.0022677013, 0.28401968, -0.20118512, -0.06970051, 0.009358192, -0.2363097, 0.04079452, 0.171549, 0.023254473, -0.28086072, 0.089434) * input_0(0.0, -1.0); + result += mat4(-0.22018294, 0.02654566, 0.03189302, 0.23597118, 0.3725344, 0.098358616, -0.1160395, 0.2771789, -0.034412246, -0.057449132, 0.09274473, 0.1878819, 0.022432894, -0.017253425, -0.007827193, -0.034179144) * input_0(0.0, 0.0); + result += mat4(-0.18310656, -0.031734917, 0.049859893, -0.21941224, -0.1276339, -0.0716337, 0.049851287, -0.14651272, -0.12910266, 0.083528325, 0.11758683, -0.058774166, 0.15879536, -0.025789004, 0.39620206, -0.5061269) * input_0(0.0, 1.0); + result += mat4(-0.04364341, -0.01111106, 0.0954614, -0.033011593, 0.18903555, 0.045627903, -0.0849578, -0.03296012, 0.02768591, -0.025403162, -0.20476201, 0.09415816, -0.10573696, 0.0091512995, -0.17100818, -0.04350027) * input_0(1.0, -1.0); + result += mat4(0.036114488, -0.036640473, -0.29275945, 0.084988564, -0.0007800435, 0.060603976, 0.08160508, -0.09327748, -0.028724737, 0.030326296, 0.00969733, -0.0846698, -0.12975171, -0.0004921903, 0.15148397, 0.0013855926) * input_0(1.0, 0.0); + result += mat4(-0.19452287, -0.07188496, 0.20742439, -0.209753, 0.10384417, 0.073383234, -0.03415945, 0.014281382, 0.09583963, 0.025933176, -0.0023977035, -0.053661287, -0.04047618, -0.07248125, 0.066271506, -0.09041674) * input_0(1.0, 1.0); + result += mat4(0.021366734, 0.102453955, -0.04966094, 0.01780586, 0.0021150948, -0.0132883685, 0.042362664, -0.20805943, -0.11969124, -0.044599574, 0.047141254, -0.12821414, 0.101879224, 0.015731763, -0.06695098, 0.086539954) * input_1(-1.0, -1.0); + result += mat4(-0.21757936, -0.06077926, 0.017302021, -0.049568262, -0.1393286, 0.058799043, -0.0022850889, 0.021695036, -0.35864976, 0.0110263815, -0.12571323, 0.1490216, 0.14517777, 0.021103743, -0.13926299, 0.12438688) * input_1(-1.0, 0.0); + result += mat4(-0.019853452, 0.08014533, -0.008175792, 0.11820509, -0.72794366, -0.10275463, -0.2606892, 0.31870192, -0.25939444, 0.122933485, -0.4233443, 0.059710566, 0.029726893, 0.0031850743, 0.06904976, 0.24502492) * input_1(-1.0, 1.0); + result += mat4(0.0961469, 0.05238465, -0.008580834, 0.016859185, -0.062894754, 0.08396599, -0.11389094, 0.21901311, -0.019987877, -0.0788069, -0.04602995, 0.14733095, 0.103866555, -0.16942114, 0.34152353, -0.25699398) * input_1(0.0, -1.0); + result += mat4(-0.0018117789, -0.2844716, -0.01964819, -0.037590753, 0.07397197, 0.08638559, 0.10132756, -0.014017207, -0.07729842, -0.06629724, 0.07319894, -0.22037733, 0.366823, 0.16162096, -0.08775358, -0.19748911) * input_1(0.0, 0.0); + result += mat4(-0.06242943, -0.09856452, 0.16313367, -0.18875608, -0.7260548, -0.23872712, 0.06929044, 0.10322197, -0.2466578, 0.021489816, 0.106592216, -0.115069956, 0.24567299, 0.035187025, 0.18053441, -0.12989523) * input_1(0.0, 1.0); + result += mat4(0.040111665, 0.046951983, -0.014854638, 0.0092564635, 0.084006116, -0.017494375, 0.08081447, -0.022035906, -0.24854134, -0.048139166, 0.20740545, -0.16913305, -0.046800785, 0.121678166, 0.13003862, 0.20747475) * input_1(1.0, -1.0); + result += mat4(-0.36058223, 0.0698847, 0.23138908, 0.0039950823, 0.052312367, 0.06077695, -0.11165129, -0.0057018697, -0.43025553, -0.0017152323, 0.100966625, -0.14417778, 0.47474706, -0.20913859, -0.024887033, 0.47145376) * input_1(1.0, 0.0); + result += mat4(-0.18336515, 0.081944056, -0.18823418, 0.07387956, -0.60725594, 0.0883943, 0.23829925, 0.45378464, -0.6344229, 0.09826027, 0.23463121, -0.14737105, 0.4930793, 0.019928994, 0.22066392, -0.1657074) * input_1(1.0, 1.0); + result += mat4(-0.03277762, -0.004061616, -0.021106448, 0.063745454, 0.072374724, 0.028750416, 0.08321062, -0.0018593678, 0.035409573, -0.080924116, 0.09203828, -0.10226069, -0.074702226, 0.04481102, -0.016790975, 0.1220125) * input_2(-1.0, -1.0); + result += mat4(0.027725454, -0.022641404, 0.15740709, 0.05099701, 0.08943808, 0.006223491, -0.10960444, 0.19234762, -0.19746375, -0.028924594, -0.22678588, -0.036406092, -0.12731011, -0.032597665, 0.051692747, -0.11824087) * input_2(-1.0, 0.0); + result += mat4(0.0053403093, 0.06831966, 0.16244705, -0.1927327, 0.04542741, -0.028258542, -0.035375435, -0.028454784, 0.07027102, -0.027680704, 0.072370544, -0.0821731, 0.047930695, 0.0075717242, -0.025624704, 0.15861495) * input_2(-1.0, 1.0); + result += mat4(0.006526659, 0.0047028163, -0.10894201, -0.103057206, 0.15746771, 0.004818529, -0.101867944, 0.15482657, -0.032823984, -0.036944002, -0.058250718, 0.207265, -0.0128918, 0.0141536165, -0.085621715, -0.10141782) * input_2(0.0, -1.0); + result += mat4(-0.10076686, 0.026743008, 0.05294148, -0.22313356, 0.10180153, 0.010337912, -0.14817362, 0.2447759, -0.40879902, 0.030238014, -0.03410298, -0.094089545, 0.01772292, -0.022260476, 0.27960238, 0.0039029745) * input_2(0.0, 0.0); + result += mat4(0.121686995, -0.0008308253, -0.061657082, -0.08830407, 0.15017755, -0.01780386, 0.04294339, 0.10852534, -0.061319564, -0.018083613, 0.19733319, -0.065601036, -0.19532448, -0.08847401, -0.21542943, -0.18283622) * input_2(0.0, 1.0); + result += mat4(0.16732414, -0.0662898, -0.14245564, 0.029549757, -0.032500394, -0.02682235, -0.18985032, -0.220411, -0.068296626, 0.057426386, -0.08555077, 0.16997553, -0.041314945, 0.022424798, 0.108369485, -0.013653692) * input_2(1.0, -1.0); + result += mat4(-0.04708195, -0.0007885562, -0.13682002, -0.14480291, -0.08987751, 0.023205394, -0.054072715, 0.043225676, -0.22053844, 0.008061072, 0.055953845, -0.016840225, -0.014886263, 0.031362906, -0.08047942, -0.020686226) * input_2(1.0, 0.0); + result += mat4(0.038618967, -0.0095707625, -0.04984928, -0.18643454, -0.007932116, -0.0011200843, 0.07516508, 0.15297997, -0.067595944, 0.100146145, -0.099499956, -0.07844516, -0.038215313, 0.030585805, -0.029826645, -0.009598741) * input_2(1.0, 1.0); + result += mat4(0.12369584, -0.03478535, -0.031769194, 0.07303016, 0.0031162985, 0.038135577, -0.1706536, 0.1207389, -0.056448173, 0.03521493, -0.011963932, 0.017657172, -0.737564, -0.69318664, -0.64200914, 0.11076995) * input_3(-1.0, -1.0); + result += mat4(-0.15013598, 0.05941866, 0.17870371, 0.18134016, 0.04508441, -0.048839975, -0.2344129, 0.30719614, 0.14336231, -0.057502013, -0.033057224, -0.10073891, -0.053312093, 0.2239991, -0.26174152, 0.2182033) * input_3(-1.0, 0.0); + result += mat4(-0.08808066, 0.035584405, 0.0065143746, 0.09218073, -0.1751493, 0.0062512844, -0.094931975, -0.02872688, 0.042746186, -0.0112776775, 0.035271894, 0.029154235, 0.012805579, -0.00991359, 0.07136086, -0.1860981) * input_3(-1.0, 1.0); + result += mat4(0.034327783, -0.054871183, 0.13376465, 0.112870924, 0.05727803, -0.054502193, 0.06524066, -0.027624574, 0.15148821, -0.058063578, 0.035483252, 0.026862547, 0.29743448, 0.10227044, -0.12639458, 0.18306023) * input_3(0.0, -1.0); + result += mat4(0.16412523, 0.11111867, -0.20249808, -0.22432125, 0.27854475, 0.04119277, 0.1728624, -0.05241839, -0.10332973, 0.0018547163, 0.08491792, 0.20212464, -0.05321642, 0.39370772, 0.32527035, -0.38759384) * input_3(0.0, 0.0); + result += mat4(0.012165549, -0.035132144, 0.1760178, 0.018035833, -0.2721327, 0.0053713624, 0.026378866, -0.1974657, 0.116744764, 0.09837979, -0.12259837, 0.032424636, -0.12371753, 0.061007503, -0.21748506, 0.18996003) * input_3(0.0, 1.0); + result += mat4(0.03186691, -0.035017475, -0.14332847, -0.022292173, -0.10214644, 0.012101079, -0.08732393, -0.053738844, 0.033842992, 0.0009964039, 0.04807428, -0.029087247, -0.1418679, -0.03327539, -0.09441204, -0.15185373) * input_3(1.0, -1.0); + result += mat4(-0.041701887, -0.056209914, 0.17514397, 0.11394052, 0.12504557, 0.0402171, 0.06303089, 0.06943194, -0.11233679, 0.010245139, 0.05743154, 0.06710598, 0.07132154, 0.090642765, -0.05565703, 0.17349109) * input_3(1.0, 0.0); + result += mat4(0.004492013, 0.008255116, -0.1728582, -0.12414958, -0.05687314, -0.042735633, 0.08173649, 0.005001412, 0.0022951744, -0.028804453, -0.08546807, -0.049389202, 0.10505114, -0.028072115, 0.14485647, 0.0007314727) * input_3(1.0, 1.0); + result += mat4(0.016340641, -0.049035285, 0.036791645, 0.0012724448, -0.07852722, 0.014629806, -0.08910168, 0.12290479, 0.28320542, 0.15175435, 0.037239417, 0.4144353, 0.09901258, 0.045815844, 0.1810105, -0.041870706) * input_4(-1.0, -1.0); + result += mat4(0.114201285, 0.045408353, 0.0007613223, 0.17780931, -0.15220733, -0.0012786316, -0.22299819, 0.26463094, -0.24352627, -0.17689273, -0.05278332, 0.01960221, 0.07001821, 0.026328526, -0.07983993, -0.054494955) * input_4(-1.0, 0.0); + result += mat4(0.031430796, -0.00077214406, 0.06921481, 0.016717914, -0.057485294, 0.048602294, 0.053933535, -0.06386596, -0.06770636, 0.027911898, 0.11969371, 0.05477494, -0.026520297, 0.014766831, -0.10963672, -0.01473894) * input_4(-1.0, 1.0); + result += mat4(0.057311583, 0.015141784, -0.026850102, -0.28606218, -0.030075464, -0.19589753, -0.0002492779, -0.18659255, -0.058300376, -0.12917064, 0.21885654, 0.06678012, 0.1972775, -0.007911973, 0.075027086, -0.12779057) * input_4(0.0, -1.0); + result += mat4(-0.028652743, 0.030036109, -0.15868968, -0.07080348, -0.42163283, 0.09317382, 0.12024762, -0.5584502, -0.0037306058, 0.11130186, 0.10478715, -0.011161789, 0.17868201, -0.09784728, -0.11395799, 0.08269834) * input_4(0.0, 0.0); + result += mat4(0.10793634, -0.03554318, 0.03738547, 0.07197258, -0.06308863, 0.01114216, -0.10789172, 0.0065525905, -0.123965025, 0.030051949, -0.061084908, 0.1465802, -0.0054600053, 0.023058979, -0.12803696, 0.12096804) * input_4(0.0, 1.0); + result += mat4(0.04578989, -0.014651887, -0.022648204, 0.10227056, -0.5238045, 0.009222157, -0.01305803, -0.028726961, 0.16448747, -0.038119204, -0.3595154, 0.007392407, -0.08254025, 0.010345035, 0.13290219, -0.14029638) * input_4(1.0, -1.0); + result += mat4(-0.09494592, -0.035260998, -0.00269529, -0.040645592, 0.040978786, -0.029831238, 0.051988445, 0.2337433, 0.10945189, 0.07162777, -0.04665372, 0.008686779, 0.05272636, 0.007138042, 0.06790884, 0.089120165) * input_4(1.0, 0.0); + result += mat4(-0.07218731, 0.051891435, 0.0045691365, 0.09451846, -0.06869523, 0.052849382, -0.012266597, -0.060098376, 0.06517042, -0.054640174, 0.14372775, -0.027164822, 0.047971793, -0.019704787, -0.07698148, 0.06043821) * input_4(1.0, 1.0); + result += mat4(-0.02275185, -0.048066616, 0.16575846, -0.059160583, 0.04863561, -0.032669526, -0.040971655, -0.1796144, -0.027320353, 0.03703694, -0.085760355, 0.121847145, -0.02287627, 0.061554346, -0.04900104, 0.14923544) * input_5(-1.0, -1.0); + result += mat4(-0.16766855, -0.029739365, -0.18897961, 0.012871863, 0.15354641, 0.026717614, 0.23078777, 0.041172028, 0.120855056, 0.009221682, 0.091804825, 0.07438856, -0.14642513, -0.026639864, 0.010539931, -0.1319672) * input_5(-1.0, 0.0); + result += mat4(-0.0021619317, -0.010632486, 0.10971901, -0.061519053, -0.04980449, -0.0006546821, 0.00721986, -0.053377423, 0.037834354, -0.01735264, -0.21624254, 0.11113112, -0.12067592, 0.03931577, -0.056845553, -0.052068852) * input_5(-1.0, 1.0); + result += mat4(-0.22158553, -4.788943e-05, 0.1505423, 0.10121759, -0.11772688, 0.037049808, 0.12150808, 0.015308078, 0.2049562, -0.0042376006, -0.112925485, -0.041415922, -0.06761157, -0.004052789, -0.1971384, -0.1163854) * input_5(0.0, -1.0); + result += mat4(-0.17678845, -0.039695513, -0.10843475, -0.24875323, -0.257242, -0.024527675, 0.22204643, -0.47666705, -0.11929938, 0.06978903, -0.02424895, 0.13078813, -0.11721524, 0.0721598, -0.03958178, 0.13032371) * input_5(0.0, 0.0); + result += mat4(-0.2929939, 0.044873744, -0.023251537, -0.048995133, -0.020727966, -3.3352026e-05, -0.19580337, 0.028710496, 0.0732402, -0.06572348, 0.16791713, -0.074929275, -0.1926417, 0.023845235, 0.20175299, -0.033076115) * input_5(0.0, 1.0); + result += mat4(-0.024807358, 0.027363596, -0.14943245, 0.09201069, 0.115727276, -0.013003099, 0.26467994, 0.16060133, 0.01084929, -0.0011183311, -0.016369492, -0.13581306, -0.2697071, 0.022578992, -0.1517564, 0.17590292) * input_5(1.0, -1.0); + result += mat4(-0.19008698, -0.03223868, 0.19656822, -0.084800616, 0.03436713, 0.02458117, 0.2883338, -0.11502831, 0.023753632, -0.012195767, -0.08949099, -0.10548819, -0.47394082, -0.10691187, 0.08278552, -0.11465806) * input_5(1.0, 0.0); + result += mat4(-0.059808806, 0.095443465, -0.12080911, 0.01378275, -0.086046636, -0.018813256, -0.16884482, -0.11100613, -0.15742902, -0.016019052, 0.16648562, 0.090833284, -0.27367353, -0.08479209, 0.042084906, -0.03545774) * input_5(1.0, 1.0); + result += mat4(0.10008958, -0.04960187, 0.026256071, 0.08494078, 0.10616778, -0.032741252, -0.14064337, 0.101526216, -0.052089613, 0.020219943, 0.049888402, -0.06926185, 0.05383584, -0.016285285, 0.22653301, -0.13623841) * input_6(-1.0, -1.0); + result += mat4(0.10303907, 0.014498965, 0.0070703337, -0.0063974545, 0.13304403, 0.05012826, 0.16535988, -0.06789742, -0.27991, -0.088045, -0.09847515, 0.22261749, 0.09030479, -0.0663649, -0.41745812, 0.2575513) * input_6(-1.0, 0.0); + result += mat4(0.15700117, -0.08362525, 0.028181326, 0.15614107, 0.01275877, -0.040314186, -0.017264549, -0.13221408, -0.25747928, 0.081541345, -0.19212975, 0.10492247, 0.18138857, -0.051585287, 0.26799846, -0.023484416) * input_6(-1.0, 1.0); + result += mat4(0.29384023, -0.0766379, 0.14700092, -0.21945468, -0.20786875, -0.04754422, -0.05672368, -0.08952427, -0.008515891, -0.057512917, -0.11875604, -0.04775566, 0.05311737, -0.06257732, 0.003485067, 0.1054225) * input_6(0.0, -1.0); + result += mat4(0.097361274, 0.15494893, -0.3158212, 0.20107758, -0.1490918, 0.12308231, -0.13324147, 0.30464914, -0.13718809, 0.051763695, 0.18539572, -0.21614255, 0.2606568, 0.13944635, -0.015092056, -0.020151358) * input_6(0.0, 0.0); + result += mat4(0.35813847, -0.11667163, 0.13607323, 0.19804458, -0.033637866, -0.0037734706, -0.016944593, 0.12127495, 0.19787401, -0.026180867, -0.0695511, -0.022489164, 0.0467879, 0.010872021, -0.034706797, 0.13970618) * input_6(0.0, 1.0); + result += mat4(0.34350806, 0.019516636, 0.4448923, -0.14911732, -0.34433293, 0.067070976, -0.08184886, -0.1877203, -0.06944958, 0.030450843, 0.045208715, 0.057187337, 0.06434222, -0.0021467921, -0.02266928, -0.055451687) * input_6(1.0, -1.0); + result += mat4(0.6145261, 0.08056045, -0.2911057, 0.25228068, 0.37911832, -0.08028397, -0.20563138, -0.28652292, 0.0013966246, -0.045228843, 0.1403054, -0.010878145, 0.05684796, 0.04805513, 0.019733496, 0.09229007) * input_6(1.0, 0.0); + result += mat4(0.26835978, 0.05695943, -0.07038257, 0.24043103, 0.17574166, -0.039267205, 0.16957419, -0.06973592, -0.12367122, 0.038051143, -0.1716707, -0.06854913, -0.010876997, -0.00012242445, 0.005908299, 0.021056589) * input_6(1.0, 1.0); + result += mat4(-0.0696745, 0.010884665, -0.033055995, -0.029064048, 0.047846973, 0.038115904, -0.15493599, -0.12663382, 0.023891337, 0.01759193, 0.044711575, -0.046566885, 0.026065988, 0.009968717, -0.013705501, -0.07820088) * input_7(-1.0, -1.0); + result += mat4(-0.037475485, -0.034448702, 0.18803282, 0.011135801, 0.097311966, -0.0009216228, -0.14776643, -0.015746081, 0.15288045, -0.039024927, 0.13003056, -0.27878326, 0.027786944, -0.013177109, -0.039668333, -0.16088599) * input_7(-1.0, 0.0); + result += mat4(0.070794575, 0.021711247, -0.16132839, 0.04456411, 0.086956955, -0.02524781, -0.048636775, 0.021706661, 0.17610483, -0.011761969, 0.043395597, -0.09881966, 0.07634734, -0.082428366, 0.23482902, -0.21374734) * input_7(-1.0, 1.0); + result += mat4(0.0057486775, 0.0951463, -0.08161084, 0.17933348, 0.24533026, 0.036434956, 0.05381696, 0.18005079, -0.0004824212, 0.07003307, -0.08496658, -0.013215741, -0.054733224, 0.101282135, 0.04437779, 0.1382375) * input_7(0.0, -1.0); + result += mat4(-0.02087666, 0.19023377, -0.017886838, -0.007486557, 0.17986812, -0.118264936, 0.21247841, 0.057280924, -0.18156987, -0.10265778, 0.0042668763, 0.21374819, -0.10557905, 0.13364236, 0.18300562, 0.27475893) * input_7(0.0, 0.0); + result += mat4(0.012164649, 0.2099971, 0.1051061, -0.13340469, -0.050841726, 0.009729056, -0.006115747, -0.024128132, 0.08345658, -0.019071639, -0.14588076, 0.044116322, 0.16543996, -0.1426822, 0.0045056613, 0.10422474) * input_7(0.0, 1.0); + result += mat4(0.263581, -0.0658219, -0.079811625, -0.21079515, 0.079391256, 0.01702984, 0.046490453, -0.040830374, 0.15995815, 0.044115808, 0.051325507, 0.0114656715, 0.12922403, -0.009558665, -0.024226326, -0.029237542) * input_7(1.0, -1.0); + result += mat4(0.59692144, -0.29580384, -0.022233002, -0.04579075, 0.18091398, 0.022575608, -0.044233162, -0.057014897, 0.24431954, -0.0019749443, -0.14006247, -0.04372047, 0.49841166, -0.020959284, -0.2232167, -0.06284345) * input_7(1.0, 0.0); + result += mat4(0.3390375, -0.13097298, 0.054395977, -0.13170949, 0.08206464, 0.017730167, 0.13964398, 0.08381694, 0.086796775, 0.04260257, 0.058490478, 0.029452339, -0.0017087647, 0.015334709, -0.019322148, 0.15304902) * input_7(1.0, 1.0); + result += vec4(-0.0005317833, -0.038465388, -0.00014123945, -0.00079992216); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf4 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.14087738, -0.0714531, 0.0037238256, -0.08351542, -0.14381982, -0.07610705, 0.3415314, 0.033212222, -0.048991267, 0.10433306, -0.08537309, 0.16122803, -0.015116369, 0.34403965, -0.2623689, 0.14258446) * input_0(-1.0, -1.0); + result += mat4(-0.029768389, 0.120842285, 0.07296883, 0.120158434, -0.043073025, 0.123728454, 0.06983616, -0.11398203, -0.017227853, -0.23716438, -0.045195438, -0.015856573, -0.19050822, -0.025156789, 0.12768677, 0.12134391) * input_0(-1.0, 0.0); + result += mat4(-0.13016301, -0.0035805232, -0.04161102, -0.09180493, -0.051741697, -0.101465836, -0.12840942, -0.0057487325, -0.13094945, 0.00794179, 0.2269653, 0.1676287, 0.05708504, -0.13837644, 0.035277173, -0.103025034) * input_0(-1.0, 1.0); + result += mat4(-0.3102788, 0.009523504, -0.011673844, 0.1275784, 0.22674048, 0.12421991, 0.013030986, 0.12343873, 0.039165907, 0.11773179, -0.08749844, -0.13177605, -0.12976536, -0.11036755, 0.0005381098, 0.4184766) * input_0(0.0, -1.0); + result += mat4(0.47245717, 0.12682761, 0.123476915, -0.2713617, -0.32820037, 0.026062261, -0.11630843, -0.29459912, -0.11161379, -0.21353726, -0.0126474025, 0.20599051, 0.25456867, 0.03141539, 0.114048414, -0.10047495) * input_0(0.0, 0.0); + result += mat4(-0.20669618, -0.13774073, -0.102905095, 0.17323837, 0.28822973, 0.0052036215, -0.01794054, 0.011505752, 0.08814574, 0.044034816, 0.20248987, -0.009910211, -0.3775118, 0.12867317, -0.21339294, -0.2654668) * input_0(0.0, 1.0); + result += mat4(-0.078420505, 0.028296655, -0.023003826, -0.04750006, -0.025014777, -0.0671571, -0.06236102, -0.02172676, 0.07067278, -0.012481789, -0.19896485, 0.11651514, -0.09429325, 0.202734, -0.016850645, 0.13708735) * input_0(1.0, -1.0); + result += mat4(0.11167106, -0.0893892, -0.015522203, 0.18049483, 0.0139596285, 0.093918495, 0.055406503, 0.05895074, -0.10766593, -0.03333406, 0.030223811, 0.036490105, 0.0714715, -0.1497957, -0.045359146, 0.11120734) * input_0(1.0, 0.0); + result += mat4(-0.10969908, 0.09036682, 0.07543687, -0.2119068, 0.056628168, -0.041419737, -0.03314608, 0.006608887, 0.06476013, 0.010391159, -0.038708664, 0.111764796, -0.07363066, -0.08965274, 0.0453061, -0.07994754) * input_0(1.0, 1.0); + result += mat4(0.036372934, 0.077002354, -0.0032170666, -0.050569624, 0.11949397, -0.01422533, 0.10348871, 0.114842184, 0.0974879, -0.17023621, -0.035632208, -0.052558668, -0.09708546, -0.2064127, -0.085120864, 0.061905332) * input_1(-1.0, -1.0); + result += mat4(-0.06623992, -0.0249111, -0.011545082, -0.026908806, -0.0013187885, 0.048024226, -0.15843394, -0.24190444, -0.085741594, -0.10644155, 0.26658487, -0.16916503, -0.041536935, -0.093174055, -0.1428888, 0.12213479) * input_1(-1.0, 0.0); + result += mat4(0.07911341, -0.05167833, 0.09527935, 0.0021348493, -0.14781739, -0.4446784, 0.38132486, -0.5417531, 0.20750184, 0.027495423, -0.28900325, 0.20223953, 0.14746496, -0.031862766, 0.12308284, 0.12538853) * input_1(-1.0, 1.0); + result += mat4(-0.067987114, -0.015420972, -0.026643328, 0.0643544, -0.03958135, 0.055417866, -0.1448322, 0.052755743, -0.037204925, 0.17335439, 0.05424573, -0.09146199, 0.26357722, -0.04172768, 0.09433906, 0.32967618) * input_1(0.0, -1.0); + result += mat4(-0.44046918, 0.13546994, -0.08315709, 0.1306494, -0.0785335, -0.33959278, 0.03052012, 0.35337052, 0.52276075, -0.10887025, -0.20272078, 0.003504072, -0.5252904, 0.10140528, -0.2996309, 0.39937434) * input_1(0.0, 0.0); + result += mat4(0.5211354, -0.1616883, 0.008718265, 0.21474175, -0.43672445, -0.17779997, 1.101597, -1.1190336, -0.0118144015, -0.2117687, -0.042265985, -0.14181022, -0.08965362, -0.015532458, -0.10384737, 0.12841943) * input_1(0.0, 1.0); + result += mat4(-0.018429678, 0.035919167, 0.11884297, 0.02375051, -0.08292271, -0.03825763, 0.042767443, -0.18711393, 0.14656349, -0.06540315, 0.045466974, -0.08236846, -0.09365553, 0.549267, 0.045906346, -0.22039153) * input_1(1.0, -1.0); + result += mat4(-0.22490355, -0.2866495, -0.121172704, -0.13454364, 0.10835426, 0.29849017, 0.124406785, -0.119376615, 0.22046418, 0.18527351, 0.1629139, 0.14876674, -0.013818726, -0.23147541, 0.20121054, -0.05696473) * input_1(1.0, 0.0); + result += mat4(-0.12388159, 0.30991262, -0.051376816, 0.17278914, 0.34874293, -0.48487175, 0.2090036, -0.23951858, 0.060182463, 0.19053146, 0.33326486, -0.1290845, 0.014286556, 0.103422925, 0.084855445, 0.0060285036) * input_1(1.0, 1.0); + result += mat4(0.071732536, 0.07862731, 0.15228711, -0.1567882, -0.18598165, -0.072542444, 0.0052047498, 0.10898532, 0.0006095714, -0.074606575, 0.02117548, 0.2591474, -0.049904745, -0.010580156, 0.11911754, -0.13500807) * input_2(-1.0, -1.0); + result += mat4(0.20296843, 0.102233686, 0.1079772, 0.08489417, -0.21369343, -0.13524503, -0.10959631, -0.13317762, 0.009809184, 0.06506776, -0.1742639, -0.023004238, -0.031940855, 0.06699001, -0.05822097, -0.07546978) * input_2(-1.0, 0.0); + result += mat4(0.019452404, 0.040303253, -0.0080863945, 0.1314403, -0.10167382, 0.14466012, -0.16535556, -0.0064556925, 0.14530277, -0.019439379, -0.048362583, -0.105191626, -0.065826625, -0.03610567, -0.21747865, -0.10333292) * input_2(-1.0, 1.0); + result += mat4(-0.24121067, -0.056312572, -0.11118437, -0.09621123, 0.10590924, -0.10319334, 0.008625205, 0.14491707, 0.28900158, 0.080526404, -0.053778023, -0.06448816, -0.045413744, 0.014349279, 0.09287128, -0.0011337703) * input_2(0.0, -1.0); + result += mat4(0.27463055, 0.18900657, -0.644623, -0.20715058, -0.22040653, -0.23225188, 0.34292883, 0.07477893, -0.2031191, 0.05216127, 0.1721689, 0.212528, 0.13645254, -0.08660187, -0.098129995, -0.067175314) * input_2(0.0, 0.0); + result += mat4(-0.11107584, 0.053580116, -0.18922067, 0.21023405, -0.05927857, 0.22264722, 0.050562803, 0.20151775, -0.047847733, 0.0025456573, -0.074194536, -0.07311215, 0.023067372, -0.040422283, 0.15826714, 0.17637117) * input_2(0.0, 1.0); + result += mat4(0.09987651, 0.09656978, 0.0022556935, 0.2966311, 0.022902822, -0.05390962, -0.08035552, 0.122592546, -0.0958014, 0.019185755, -0.08533768, -0.09881006, 0.050344184, 0.056833424, 0.011241074, -0.018482568) * input_2(1.0, -1.0); + result += mat4(0.18593724, -0.28586048, -0.17693466, 0.22729295, -0.21868774, 0.07658923, -0.061419033, 0.041533813, -0.16009101, -0.114600286, 0.16737096, -0.042905577, 0.06311242, 0.09027873, -0.033357855, 0.05202147) * input_2(1.0, 0.0); + result += mat4(0.05504449, 0.09734942, 0.028593728, 0.30802274, 0.11797937, 0.2853861, -0.053105745, -0.10921559, -0.06687815, -0.12798607, 0.083031386, 0.08657259, 0.0075621656, -0.04574375, 0.005630226, -0.023450231) * input_2(1.0, 1.0); + result += mat4(-0.2675988, 0.043864854, 0.07987573, 0.10342446, 0.23114434, 0.17757808, 0.2758711, -0.27042663, 0.07067341, -0.087441094, -0.04082227, -0.08440911, -0.16048495, 0.40193483, 1.2773502, 3.1117995) * input_3(-1.0, -1.0); + result += mat4(-0.013780358, -0.18199554, 0.19812097, 0.015442616, 0.0838682, 0.14001623, 0.13272215, -0.05086387, -0.25752723, 0.03258425, 0.012938878, 0.010977251, 0.08085313, 0.05317577, 0.1671136, 0.18948221) * input_3(-1.0, 0.0); + result += mat4(-0.13637966, 0.011056128, 0.1939659, -0.0978132, -0.019674445, -0.14458601, 0.08123553, -0.008486247, -0.026430454, -0.11911585, 0.039443813, -0.024478603, -0.004285469, -0.029105807, -0.2327621, 0.013303119) * input_3(-1.0, 1.0); + result += mat4(0.1196027, -0.26023674, -0.2958968, -0.18552989, -0.21162707, 0.19863969, 0.06258532, -0.20956855, 0.00030572043, 0.07324575, -0.028880684, 0.008922767, 0.077220485, -0.15902977, -0.0016141603, 0.07684815) * input_3(0.0, -1.0); + result += mat4(-0.1046287, 0.10214855, -0.30430996, -0.2787466, 0.31398425, 0.21363278, -0.6132761, -0.05288116, 0.13768797, -0.07914778, -0.08250049, -0.037802536, -0.0028290555, -0.17501095, -0.38349226, -0.16951863) * input_3(0.0, 0.0); + result += mat4(0.27128908, -0.10242613, -0.2963179, -0.21776873, 0.17179605, 0.17392427, 0.16171235, 0.11821475, 0.037767835, 0.08000982, 0.060010538, 0.0861819, -0.08309859, 0.3344352, 0.3961967, 0.076702885) * input_3(0.0, 1.0); + result += mat4(0.051110603, 0.19640784, 0.1999297, 0.27105868, -0.13971488, 0.14110605, 0.18163936, 0.09663911, 0.026333213, 0.044493344, 0.032740876, -0.02677874, -0.04282109, 0.18815441, -0.054499596, 0.11920529) * input_3(1.0, -1.0); + result += mat4(0.12833071, -0.08892581, 0.07722635, 0.13902266, 0.14219691, -0.3416406, -0.12868577, 0.11322867, -0.032939162, -0.02731151, 0.038669337, -0.0021482424, -0.053199816, 0.12052888, 0.22476815, -0.025553618) * input_3(1.0, 0.0); + result += mat4(0.09227685, 0.04525169, 0.14624941, 0.23804064, 0.09133923, -0.14928219, 0.011842877, 0.0886285, 0.029987108, 0.055482056, 0.019823112, 0.03416038, 0.0909515, -0.30947703, -0.16863939, -0.096432425) * input_3(1.0, 1.0); + result += mat4(-0.0936202, -0.025059849, -0.03865098, 0.082085446, 0.052939553, -0.13772312, -0.020362634, -0.07624347, 0.33777553, 0.17408913, -0.37225717, -0.76783943, 0.12770408, -0.123109676, -0.03392775, -0.13322623) * input_4(-1.0, -1.0); + result += mat4(0.05845067, 0.023362936, 0.22434276, -0.0011619455, 0.25910112, -0.017226303, 0.11373178, -0.20203482, 0.86675984, -0.112036474, -0.26668224, -0.17336304, -0.17264701, -0.008636429, -0.21948795, 0.040473063) * input_4(-1.0, 0.0); + result += mat4(0.07884674, 0.1329802, -0.036086753, 0.08869566, -0.09362952, 0.08142504, 0.025777975, 0.048068706, -0.13183765, 0.12276527, 0.122220926, 0.44350848, 0.031738497, 0.051218145, -0.18114465, 0.021978365) * input_4(-1.0, 1.0); + result += mat4(0.14477375, 0.060939893, -0.11717381, -0.12439752, 0.36511192, 0.20157968, -0.053740997, -0.06867482, -0.6322409, 0.13458093, 0.028468272, -0.013337991, 0.023184422, -0.114906386, 0.04326746, -0.019503783) * input_4(0.0, -1.0); + result += mat4(-0.1346973, -0.11035523, -0.0660928, 0.23957048, 0.037228614, 0.09873485, -0.18233332, -0.06378632, -0.04454808, 0.3735417, 0.35959414, -0.11390092, 0.03974117, 0.008985213, 0.39086923, 0.05226363) * input_4(0.0, 0.0); + result += mat4(-0.044217523, 0.10586285, -0.058580294, -0.19505545, 0.074003115, -0.030628633, -0.013330437, -0.106147975, -0.17489773, 0.16144443, 0.1248407, 0.0072707594, -0.074584715, -0.16108339, 0.030725777, -0.058522012) * input_4(0.0, 1.0); + result += mat4(0.075545155, -0.09824271, -0.060132097, 0.06871949, -0.10747594, 0.0036038558, 0.11086173, -0.0800427, -0.116100386, -0.124906175, 0.02699433, 0.14023212, -0.06735738, -0.07299771, 0.06734684, -0.17780335) * input_4(1.0, -1.0); + result += mat4(0.006150417, 0.14843522, 0.0052783927, 0.05200708, -0.14356844, 0.040037483, 0.13745637, 0.017826263, 0.025050415, -0.21268596, 0.011004854, -0.078178406, -0.059475, 0.022369415, -0.02676234, -0.10925598) * input_4(1.0, 0.0); + result += mat4(-0.02198281, -0.058486655, -0.010681506, -0.002239954, 0.04172033, 0.02483077, 0.0069983755, 0.0525052, -0.044733103, -0.372174, -0.06247639, -0.10794299, -0.27439517, 0.13668746, -0.07454784, -0.15833491) * input_4(1.0, 1.0); + result += mat4(-0.17212379, 0.03901862, -0.11670126, 0.23748216, 0.118294716, 0.063015625, 0.13722545, -0.30276805, 0.06930306, 0.17891891, 0.20274499, -0.18047135, 0.023128746, -0.017793743, -0.0033900766, -0.110365525) * input_5(-1.0, -1.0); + result += mat4(0.09046146, -0.031836286, -0.045380156, 0.035563566, -0.03208844, 0.2738694, 0.18390517, 0.15580954, 0.1804981, 0.0032698193, 0.1756334, 0.031548865, 0.059811927, -0.012500487, -0.07885247, 0.050750665) * input_5(-1.0, 0.0); + result += mat4(0.061721988, 0.075054094, 0.041734196, 0.056236323, 0.21855976, -0.20130849, 0.34140214, -0.071910776, -0.21429576, -0.0917767, -0.07612879, -0.029849201, -0.022560129, 0.034665417, 0.059997912, 0.002491315) * input_5(-1.0, 1.0); + result += mat4(0.16922839, 0.11623379, -0.052204475, -0.06544294, -0.027301969, -0.016758662, 0.083958946, 0.009487392, -0.21283364, 0.0035464899, -0.023445949, 0.040670726, -0.06280507, 0.20519824, -0.20332396, -0.015592667) * input_5(0.0, -1.0); + result += mat4(-0.44355753, -0.25679904, -0.11151419, 0.16105075, 0.15823905, 0.056470055, -0.66369647, 0.27143657, 0.26996616, -0.04334272, 0.08420017, -0.19322205, 0.37289187, -0.071438484, 0.10297775, -0.06986173) * input_5(0.0, 0.0); + result += mat4(0.31575072, 0.12828271, -0.0355006, -0.15965916, -0.022627339, -0.3081783, -0.064585984, -0.26263908, -0.03264573, -0.13851482, -0.25213182, 0.10120762, -0.19658805, -0.058149032, 0.028114518, 0.064576484) * input_5(0.0, 1.0); + result += mat4(0.06996014, 0.07443523, 0.060310375, 0.0029859568, -0.0048600854, -0.03613782, -0.0001571991, -0.10077672, -0.042078838, -0.14074425, -0.019976499, -0.0065751784, 0.11492401, 0.17758052, -0.16929623, 0.2193083) * input_5(1.0, -1.0); + result += mat4(-0.15076573, -0.11328237, 0.065040976, -0.061587848, 0.21814038, 0.18887576, -0.06757711, -0.0035648216, -0.0061730584, 0.03897952, -0.04280731, 0.055320498, 0.04388515, -0.22280736, -0.043243587, -0.036501963) * input_5(1.0, 0.0); + result += mat4(-0.11027575, 0.03165994, 0.13209072, 0.11202912, 0.1074368, -0.1437263, 0.018689495, 0.22229832, 0.14329338, 0.16317947, -0.0014251989, -0.15979001, -0.24860007, -0.032553043, 0.14539105, -0.026032377) * input_5(1.0, 1.0); + result += mat4(-0.055562716, -0.13351834, 0.005892585, -0.06416902, -0.096799545, -0.054219604, 0.1902626, 0.12131406, 0.053440344, 0.045015007, 0.09546015, -0.009021485, 0.006129556, -0.16185303, 0.009881499, -0.053250186) * input_6(-1.0, -1.0); + result += mat4(0.11740287, 0.20918597, 0.059422635, -0.048083145, 0.15720063, 0.10474009, 0.11986572, -0.065468736, 0.058100928, 0.15808146, 0.370476, 0.02842716, 0.11072853, 0.2949397, -0.22182362, -0.04498902) * input_6(-1.0, 0.0); + result += mat4(-0.07899619, -0.06436338, -0.05491815, 0.022344772, 0.08713512, 0.005758141, -0.067531876, -0.084493145, 0.21359695, 0.0014751176, 0.41660574, 0.07261706, 0.04628062, -0.12021957, -0.0068774456, 0.11839639) * input_6(-1.0, 1.0); + result += mat4(0.09704399, -0.1970088, -0.018951047, -0.23518924, 0.56877387, -0.035718378, -0.077133484, 0.083330765, 0.0059703374, -0.031233927, -0.048508048, 0.09872041, 0.060518548, -0.09047914, 0.085458115, -0.13111252) * input_6(0.0, -1.0); + result += mat4(-0.05748076, 0.12806869, -0.02851695, -0.2977838, 0.048583537, 0.004077018, -0.104643784, -0.21866402, -0.17835923, -0.21165723, -0.24337555, -0.19195764, -0.37124616, -0.24493758, -0.16649115, 0.12090763) * input_6(0.0, 0.0); + result += mat4(-0.06323412, 0.06480397, -0.036538582, 0.121031605, -0.22715648, 0.20902742, -0.15210113, 0.3795041, -0.20766321, 0.20599183, -0.10695803, 0.05646975, 0.28865296, 0.21072061, 0.08553818, 0.10648124) * input_6(0.0, 1.0); + result += mat4(-0.12919211, -0.31897417, 0.12160363, -0.28041425, -0.040406406, 0.042359237, -0.12554067, -0.20128036, 0.015824601, -0.02927081, -0.040451586, -0.025941964, -0.008211861, -0.017510718, 0.021266343, -0.026738895) * input_6(1.0, -1.0); + result += mat4(-0.012297969, 0.42798766, -0.017282467, 0.08727622, -0.16064692, -0.0065345513, 0.035399493, 0.06176927, 0.120876975, 0.098841734, -0.08875212, -0.067761905, 0.013871576, 0.07351701, 0.035212215, -0.059015278) * input_6(1.0, 0.0); + result += mat4(0.47686777, -0.267792, -0.048822653, 0.076951765, 0.028317573, -0.13045986, 0.18150018, -0.03704204, -0.06341192, -0.07168837, -0.08319445, 0.013552097, -0.07115131, -0.07003818, 0.012901793, 0.057883322) * input_6(1.0, 1.0); + result += mat4(0.14999732, 0.057058845, -0.053402893, -0.06772619, 0.26561278, 0.0130242715, -0.110394225, -0.012249226, 0.15863442, 0.108564675, -0.11587992, 0.047150068, 0.10609501, 0.14799741, -0.0024794484, 0.0106259845) * input_7(-1.0, -1.0); + result += mat4(-0.14020135, -0.018826611, 0.1304268, 0.11857709, -0.08383754, 0.08238138, -0.1674782, 0.09624782, -0.1894812, 0.04701671, -0.06430107, 0.09536978, -0.16291519, 0.07888379, 0.023654724, -0.100295655) * input_7(-1.0, 0.0); + result += mat4(-0.014284049, -0.05040281, -0.07955344, -0.051315904, 0.06325287, -0.16438828, -0.026814751, -0.03145539, -0.0069641857, 0.07513987, -0.039388128, 0.074256144, -0.18856518, 0.111861944, -0.2185507, 0.109346405) * input_7(-1.0, 1.0); + result += mat4(-0.21936278, -0.10409919, -0.14701928, 0.024094017, -0.10991005, 0.08998002, 0.18450533, 0.34122992, -0.15957385, 0.037819427, 0.19122955, 0.21620168, -0.08426491, -0.066578, 0.025135797, 0.08772193) * input_7(0.0, -1.0); + result += mat4(0.52193844, -0.05903723, 0.14867872, -0.08899206, -0.08195977, -0.2091612, 0.13022968, 0.011825555, -0.0040596756, 0.020531872, 0.14087063, -0.1259982, -0.22716458, -0.1021725, -0.047102604, 0.08669491) * input_7(0.0, 0.0); + result += mat4(-0.30475342, 0.15380552, 0.014766272, 0.07471526, 0.016792666, 0.14362848, 0.0991722, 0.1411524, -0.17982908, -0.0050269146, 0.11450171, 0.052285146, -0.09226913, -0.20116568, 0.017662225, -0.095164604) * input_7(0.0, 1.0); + result += mat4(0.23078875, -0.15038419, -0.037914444, -0.051339313, -0.14876616, -0.066287234, 0.02517311, -0.29551932, -0.082162395, -0.09805152, -0.17177282, -0.16959068, -0.09379811, -0.05313426, -0.04592286, -0.14060867) * input_7(1.0, -1.0); + result += mat4(-0.0013705468, 0.37115607, 0.10242575, -0.073088735, -0.08106692, 0.057068616, 0.0321619, -0.098943725, 0.006780987, 0.012101055, -0.19459964, 0.09762065, 0.09731643, 0.062473524, 0.028051173, 0.09871365) * input_7(1.0, 0.0); + result += mat4(-0.18270347, -0.19675504, -0.028543526, -0.05715819, -0.109967984, -0.07314423, -0.12826636, -0.19400422, 0.054146618, -0.045523703, -0.122891955, -0.019835398, 0.17642017, 0.06454736, 0.1637059, 0.12811229) * input_7(1.0, 1.0); + result += vec4(0.0005628957, 0.002147792, -0.0010965874, 0.0003018106); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf5 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.10716307, -0.054633208, 0.0586605, -0.07869216, -0.02674947, 0.16338632, -0.10304621, -0.009658676, 0.18157741, 0.05542617, -0.09606084, 0.01069707, 0.030123537, 0.007782995, 0.04618515, -0.20651771) * input_0(-1.0, -1.0); + result += mat4(-0.010633461, 0.039621882, 0.088157654, 0.10299514, 0.048776086, -0.09631124, -0.075241745, -0.112224996, -0.021598259, -0.0342373, 0.04695712, -0.062218226, 0.059281874, -0.11601152, -0.11242053, -0.06672147) * input_0(-1.0, 0.0); + result += mat4(-0.014050043, 0.05231418, -0.07541893, -0.005027104, 0.010370962, -0.023881854, 0.012783007, 0.014745438, -0.02270319, 0.056803714, -0.09350409, 0.08502698, -0.15152888, 0.18714373, -0.13989335, -0.1134389) * input_0(-1.0, 1.0); + result += mat4(-0.22110733, 0.121749416, -0.008152554, -0.045280963, -0.00844773, -0.11004225, -0.15976702, 0.056941718, 0.1260948, -0.030136805, -0.050602622, -0.015818667, -0.49473867, -0.05750337, 0.20888598, 0.066085584) * input_0(0.0, -1.0); + result += mat4(0.0010283417, -0.11770454, 0.12207132, 0.19034192, 0.033606898, 0.20082508, 0.12779446, -0.055606335, 0.08967292, 0.17374481, 0.18119946, 0.0894451, -0.10507361, 0.009817169, 0.04602151, 0.1833541) * input_0(0.0, 0.0); + result += mat4(-0.07600917, 0.07336457, -0.26412377, -0.12723191, 0.13728584, -0.1618387, 0.1836996, 0.17234816, -0.04139106, -0.070539474, -0.019499462, -0.040368076, 0.26210552, 0.066285335, -0.12148606, -0.44079664) * input_0(0.0, 1.0); + result += mat4(-0.14217314, -0.058046535, -0.007736296, -0.09683365, 0.04542605, 0.16214678, 0.041474804, 0.072737485, 0.025783075, -0.008572482, 0.07822382, 0.1903406, -0.06395282, 8.8108936e-05, 0.19859433, 0.14733732) * input_0(1.0, -1.0); + result += mat4(0.06935063, -0.057306103, -0.1022105, 0.06760277, -0.08141934, -0.005453041, 0.037098162, 0.01725984, -0.00094759226, 0.11308904, 0.22672032, -0.09516714, -0.03499613, -0.010474463, -0.19935511, -0.064817905) * input_0(1.0, 0.0); + result += mat4(-0.1397647, -0.041423813, 0.1953145, 0.058029294, 0.07854438, -0.069855236, -0.07505833, -0.063322954, 0.100064956, -0.10146973, -0.20887792, -0.044564042, -0.20688288, 0.04200071, -0.0495873, 0.04727122) * input_0(1.0, 1.0); + result += mat4(-0.0075831073, -0.040138744, -0.010772645, -0.0763905, 0.036504526, 0.077502824, 0.012991055, -0.10850954, -0.04139206, 0.02890304, -0.028375737, 0.024120092, -0.04008628, -0.26829588, 0.030553112, 0.064136945) * input_1(-1.0, -1.0); + result += mat4(-0.038130444, 0.0028384698, 0.033278167, 0.1044568, 0.024365522, 0.062483802, -0.0013759295, -0.04889929, -0.060854595, 0.10509634, -0.039705593, 0.35274035, -0.03841899, -0.286121, -0.058131266, -0.04254462) * input_1(-1.0, 0.0); + result += mat4(-0.116413556, 0.0337238, 0.03174845, 0.029759547, 0.0960907, -0.106953025, -0.195746, -0.18349892, -0.026900182, 0.3913619, -0.20259686, 0.010903259, 0.0409723, -0.12791422, 0.084235474, 0.044994317) * input_1(-1.0, 1.0); + result += mat4(0.0454746, 0.07309702, -0.023501176, -0.08243552, -0.061935317, -0.106318004, 0.03357413, 0.0792492, 0.14631122, -0.02242366, -0.049129587, 0.13772339, 0.2570041, -0.27801675, 0.046797745, 0.10491451) * input_1(0.0, -1.0); + result += mat4(0.22277138, 0.15358315, -0.035498302, 0.14320388, -0.020357465, 0.21455628, 0.20653723, 0.07247154, -0.116404675, 0.07428526, -0.30857864, 0.029417861, -0.06664729, -0.6480897, 0.0060570813, 0.24722983) * input_1(0.0, 0.0); + result += mat4(-0.29119894, -0.37288275, -0.0974886, -0.05990695, -0.01854161, -1.0042716, -0.40819538, -0.12277096, 0.11381075, -0.035435032, -0.050369456, 0.32810265, -0.32436308, -0.21098362, -0.022246545, -0.04317644) * input_1(0.0, 1.0); + result += mat4(0.01801188, 0.016497077, 0.029116144, -0.07178687, 0.02548311, 0.034860387, -0.047571246, 0.04466828, 0.05556608, -0.09149685, -0.017266795, -0.03775887, 0.062923074, -0.8781609, -0.6393894, -0.25483823) * input_1(1.0, -1.0); + result += mat4(-0.09659839, 0.079106234, 0.13708247, -0.24715523, -0.020954182, -0.29394048, -0.22152792, -0.039524555, 0.090131134, -0.055091146, 0.08243138, -0.21752688, 0.15889896, -0.8788461, -0.14137734, -0.5869986) * input_1(1.0, 0.0); + result += mat4(0.061683718, -0.18423934, -0.13608487, 0.04797726, -0.114070155, -1.1862893, -0.062136766, -0.34532306, -0.11345683, -0.13396126, 0.23443075, 0.059047844, -0.07682057, -0.49665114, -0.022468228, 0.070685185) * input_1(1.0, 1.0); + result += mat4(0.036957182, 0.20431045, -0.050059807, 0.051551525, 0.04913686, -0.26370454, 0.09311206, -0.03755235, 0.14649686, 0.13803174, -0.044238675, -0.061298758, -0.06763972, 0.11028954, 0.041736413, 0.029065084) * input_2(-1.0, -1.0); + result += mat4(0.015664587, 0.35018724, 0.17555739, -0.10698001, -0.07992395, -0.5444167, 0.00893651, -0.11302445, -0.07628189, -0.10132418, -0.12815864, -0.09424049, 0.0778462, 0.10413678, 0.09836918, -0.014023729) * input_2(-1.0, 0.0); + result += mat4(-0.107202895, 0.14928946, 0.04839607, 0.13073097, -0.012800175, -0.272999, 0.047123607, 0.03563559, 0.10253111, 0.112628095, -0.042166878, 0.006406433, -0.047869302, -0.015352853, 0.030913312, -0.018672535) * input_2(-1.0, 1.0); + result += mat4(-0.04093014, 0.2307438, -0.067036845, -0.15194817, -0.16532075, -0.36245367, 0.216471, 0.19766098, 0.08814553, 0.0034771499, -0.17415768, 0.26554805, -0.12885797, 0.11280883, 0.027659891, -0.08384045) * input_2(0.0, -1.0); + result += mat4(0.35533166, 0.53730625, 0.5974551, -0.1983735, 0.016650908, -0.8353421, -0.47289363, 0.12318421, -0.09371753, 0.044244748, -0.14760278, -0.25335723, -0.12465877, 0.03150823, 0.050790213, -0.059368934) * input_2(0.0, 0.0); + result += mat4(-0.023685565, 0.5907631, -0.009286046, 0.10145307, 0.032025535, -0.36162278, -0.08005944, 0.17355265, 0.0179242, 0.14766014, 0.19781987, 0.01386345, -0.03184439, -0.1292963, -0.20317937, 0.057231806) * input_2(0.0, 1.0); + result += mat4(-0.28778896, 0.48603466, 0.011932413, 0.2801848, 0.11290081, -0.15915485, 0.19945928, -0.01717966, 0.13528265, 0.025450159, 0.05713414, 0.19893311, -0.042273343, 0.024957007, -0.12673077, 0.014763353) * input_2(1.0, -1.0); + result += mat4(0.20855206, 0.37564647, 0.12134727, 0.11499968, 0.2561332, -0.297229, 0.13000499, -0.12616765, -0.21723433, 0.014642886, -0.058265653, -0.3211359, 0.08993084, 0.016245967, 0.017105963, 0.08343012) * input_2(1.0, 0.0); + result += mat4(0.10472961, 0.34738106, -0.31957036, 0.17898466, -0.08251274, -0.1849182, 0.17273189, -0.08887059, 0.095138304, -0.09375213, -0.018571181, -0.013913665, 0.017985163, 0.0012069944, -0.014611198, -0.021916721) * input_2(1.0, 1.0); + result += mat4(0.00084030314, 0.024924878, 0.04701463, 0.06503559, -0.072669834, 0.33096462, -0.05226951, -0.12811013, 0.025055682, -0.050417256, -0.07961593, 0.07061937, 0.14152619, 1.6716423, -1.6634676, 0.5470825) * input_3(-1.0, -1.0); + result += mat4(-0.013453873, 0.015120247, -0.035993062, 0.07110105, 0.00016135149, 0.60589445, 0.23325801, -0.09577494, 0.0426365, 0.0066889483, 0.1333378, -0.037294682, 0.067759715, -0.0827883, 0.10609717, -0.477394) * input_3(-1.0, 0.0); + result += mat4(-0.05934018, 0.11654933, 0.07876372, -0.06948649, -0.008776739, 0.105906464, -0.052464943, 0.025932154, 0.08329489, -0.041601058, -0.031187605, 0.02403585, 0.028707055, 0.035370175, -0.39676216, 0.0713644) * input_3(-1.0, 1.0); + result += mat4(-0.0664211, -0.20222287, 0.030164124, 0.097346544, 0.038913064, 0.35061514, -0.20884737, -0.0022712226, 0.037715863, 0.18542476, -0.11086265, -0.044893835, 0.028035214, -0.19173364, -0.100131296, -0.16242965) * input_3(0.0, -1.0); + result += mat4(0.008685107, -0.14864805, -0.02047557, 0.06731653, 0.027350057, 0.82123363, 0.8273359, -0.08592242, -0.024594348, 0.0057891635, 0.2814347, 0.09549596, -0.06769752, 0.16707486, -0.5447553, 0.21779492) * input_3(0.0, 0.0); + result += mat4(-0.06458343, -0.1539926, 0.11863412, -0.07665165, 0.00023640781, 0.085965514, -0.013795788, 0.1022323, -0.018125229, 0.047849204, -0.11896645, -0.036978245, -0.04295644, -0.01375889, 0.6502447, -0.0644105) * input_3(0.0, 1.0); + result += mat4(-0.00045893196, 0.17001928, -0.048311073, -0.16499212, -0.031059014, 0.07647119, -0.049027707, 0.010484869, 0.010179134, -0.07340638, -0.026858274, 0.0012756214, -0.013881905, 0.038975958, -0.19560567, -0.2683679) * input_3(1.0, -1.0); + result += mat4(0.09644591, -0.005832974, 0.044471573, -0.19342306, -0.08550276, 0.22947268, -0.137978, 0.09544651, -0.07663196, -0.03405661, -0.017438442, -0.0064216275, 0.0068705576, -0.05887886, 0.45712465, 0.26672056) * input_3(1.0, 0.0); + result += mat4(-0.010796137, 0.07469858, -0.1597234, 0.18534008, -0.111795016, 0.008746015, -0.18957978, 0.055345412, -0.014831508, -0.004776558, -0.0062724296, -0.040474504, 0.0033535503, -0.013830926, -0.26378578, -0.0055087637) * input_3(1.0, 1.0); + result += mat4(0.06413477, -0.047533955, -0.028605562, -0.0030474034, -0.024142183, 0.03861496, -0.022742238, 0.07409628, -0.21027382, -0.36179656, 0.17369707, 0.34014702, -0.07293633, -0.18639329, 0.07172143, -0.029193524) * input_4(-1.0, -1.0); + result += mat4(-0.15438075, -0.09025577, -0.005192985, 0.025976157, -0.0020363522, 0.115003556, -0.034712937, 0.06286342, 0.075185075, 0.060685832, 0.06919082, 0.18847884, 0.11575944, -0.20519128, -0.20947173, 0.22384855) * input_4(-1.0, 0.0); + result += mat4(-0.008883663, 0.10586657, 0.074459784, 0.005191513, 0.04817626, 0.13185143, 0.030931132, 0.046778053, -0.0886283, 0.12059714, 0.04392122, -0.033256203, -0.0075763636, -0.23632485, 0.0673249, -0.030171396) * input_4(-1.0, 1.0); + result += mat4(0.15182723, -0.1397122, -0.07407765, 0.03634885, 0.014207648, 0.109535456, 0.013406319, 0.278049, 0.28902546, -0.23273908, -0.040365875, 0.15562187, 0.0199733, -0.11379378, 0.10363898, 0.06675517) * input_4(0.0, -1.0); + result += mat4(-0.00877402, -0.21267056, -0.0752547, 0.0049393033, 0.018266927, 0.021035297, 0.06484032, 0.04498609, -0.2160509, 0.032940038, -0.004103612, 0.15701371, -0.1356978, -0.36232263, -0.39809108, 0.22893706) * input_4(0.0, 0.0); + result += mat4(0.08909849, 0.032896817, 0.25853577, -0.07195679, -0.011688201, -0.02492883, 0.048174214, -0.14618887, 0.11783361, -0.10405437, 0.30414757, 0.10023797, -0.0036773959, -0.26350132, 0.061398327, -0.021940727) * input_4(0.0, 1.0); + result += mat4(0.05226193, 0.1024513, -0.022104938, -0.023582462, 0.14491034, -0.1971995, -0.08786478, -0.43606934, 0.0073549054, -0.0044767656, 0.26894367, 0.32107562, -0.036418308, -0.12807196, -0.010989405, -0.13105169) * input_4(1.0, -1.0); + result += mat4(0.028468303, 0.25175095, -0.0737296, 0.13216877, 0.1076079, -0.068965726, 0.045103624, -0.20349918, -0.07811144, -0.14256667, -0.011548782, 0.14581949, 0.0008717042, -0.18149956, -0.12927987, 0.05333789) * input_4(1.0, 0.0); + result += mat4(-0.050052315, -0.040138196, 0.009044934, -0.06131922, -0.026544105, -0.0117708575, -0.11558519, 0.09253259, 0.059635628, 0.033237595, 0.0044242525, -0.09970064, 0.0125888735, -0.031521387, 0.26825285, -0.16007276) * input_4(1.0, 1.0); + result += mat4(0.068805814, -0.06717438, -0.036617793, 0.06829478, 0.036242623, 0.12440313, -0.13268305, -0.03910622, -0.11049249, 0.06002915, -0.03184202, -0.15640773, -0.120678745, -0.031434048, 0.036301006, 0.062402464) * input_5(-1.0, -1.0); + result += mat4(-0.08373581, 0.029941604, 0.11382262, -0.026924364, 0.04290929, 0.51869446, 0.016724626, -0.14393085, -0.056631234, 0.061505593, 0.049533453, 0.18420298, 0.037101954, -0.025325535, 0.0050923256, 0.04877447) * input_5(-1.0, 0.0); + result += mat4(0.096626796, 0.1386235, -0.022525266, 0.027093172, -0.04859831, 0.17418458, 0.0037137796, -0.17791653, -0.001673626, -0.09315489, 0.009814194, -0.03385989, -0.005652895, 0.030020341, 0.007409526, -0.07608103) * input_5(-1.0, 1.0); + result += mat4(0.06529418, 0.066700295, 0.009290575, 0.078098126, -0.13945127, 0.53132653, -0.18047783, -0.1892275, -0.099063955, 0.08738719, -0.04546752, 0.096510805, -0.07312789, -0.06220178, -0.1798779, 0.0364288) * input_5(0.0, -1.0); + result += mat4(-0.039254956, -0.16043493, -0.011032085, -0.060497787, 0.017057637, 0.9765204, 0.52613807, 0.040175438, 0.069240384, 0.04508213, 0.16710697, -0.0010083643, -0.031180162, -0.13325188, 0.094971485, -0.14690961) * input_5(0.0, 0.0); + result += mat4(-0.058790352, -0.03598309, -0.0662852, 0.1128996, -0.11837356, 0.30177617, 0.0040954826, -0.004401151, -0.11547223, 0.002868844, -0.10337195, 0.12841605, -0.124088705, 0.1581617, 0.038766097, 0.12236766) * input_5(0.0, 1.0); + result += mat4(-0.009413503, 0.1372213, -0.061921295, 0.06813006, -0.234995, 0.29110503, -0.22150107, -0.16564317, -0.06232497, -0.057066903, 0.060358677, -0.1300508, -0.096683115, -0.0057029426, -0.038586143, -0.2677486) * input_5(1.0, -1.0); + result += mat4(0.03442981, -0.15799525, -0.04669406, -0.21372232, 0.034203693, 0.46228644, -0.11801805, 0.025173647, 0.119461745, 0.0023473934, -0.027289625, 0.049855273, -0.020006761, -0.17090261, -0.18653601, 0.12635195) * input_5(1.0, 0.0); + result += mat4(0.09415219, 0.032113317, -0.18350537, 0.004711859, -0.008618453, 0.24400815, -0.40790775, 0.09590581, -0.08107462, -0.032312732, 0.1926691, 0.033243254, -0.19247817, 0.058802508, 0.07519299, 0.028263345) * input_5(1.0, 1.0); + result += mat4(0.048125457, 0.010603877, -0.005364868, 0.04286214, 0.06133668, 0.19960678, 0.0010285961, -0.025395844, -0.075551115, 0.06352162, -0.093702406, -0.027261743, 0.10993364, 0.12283047, 0.003969117, 0.14884055) * input_6(-1.0, -1.0); + result += mat4(-0.04642754, 0.074534535, 0.08701446, -0.05230755, 0.026745232, -0.0012032811, 0.03535057, -0.056441832, -0.16443352, -0.038806755, 0.06024424, 0.2255297, 0.16093561, 0.010210104, 0.14197154, -0.29659432) * input_6(-1.0, 0.0); + result += mat4(0.0075478693, -0.09476481, -0.011518552, -0.015860058, 0.009595649, -0.109904386, -0.053569403, 0.08178595, 0.0147726685, 0.25000936, -0.072696075, -0.06422736, -0.076370426, -0.11310367, 0.027995016, 0.23825264) * input_6(-1.0, 1.0); + result += mat4(-0.019377664, 0.20967111, 0.007940935, 0.15541598, -0.09918995, 0.0017753448, -0.07455635, 0.04690365, 0.11904706, 0.04881008, 0.055133983, 0.06829301, 0.08537111, -0.04439197, 0.06378429, 0.20857614) * input_6(0.0, -1.0); + result += mat4(-0.08905708, -0.14007547, 0.16429241, -0.2518303, -0.0344527, -0.14697185, 0.015862208, -0.18422851, 0.19763815, -0.19970404, 0.25628954, -0.1723401, -0.11346414, 0.30023864, -0.1827819, -0.37351087) * input_6(0.0, 0.0); + result += mat4(0.08765342, -0.027023638, 0.022132702, 0.12629229, -0.045958046, -0.005340381, 0.018835386, -0.07992076, -0.20032297, 0.07905662, 0.11084425, 0.07404964, 0.17633611, -0.1505935, 0.019489264, 0.069468774) * input_6(0.0, 1.0); + result += mat4(0.15704082, 0.1448074, 0.16655031, -0.0116534205, 0.3601315, -0.271364, 0.17581543, -0.118040346, -0.027153792, 0.0022804472, -0.018471329, -0.083199725, 0.06958922, 0.003952722, 0.0007548078, 0.06080661) * input_6(1.0, -1.0); + result += mat4(0.071736835, -0.12051969, -0.10079115, -0.10373147, 0.1418369, 0.015880244, -0.011036442, 0.08101387, -0.066514954, 0.1211643, -0.14026688, -0.0038957752, -0.047483936, 0.013792774, 0.03487672, -0.040651213) * input_6(1.0, 0.0); + result += mat4(-0.059286606, 0.099667, -0.02353973, 0.31989497, -0.029511288, 0.08090826, -0.0011501164, 0.08581848, 0.07870503, -0.033390928, -0.05343136, -0.004190631, 0.051052254, 0.0029695956, -0.06939086, 0.008483567) * input_6(1.0, 1.0); + result += mat4(0.045136876, -0.088268496, 0.0010146627, -0.024378162, -0.11683662, -0.14447479, -0.0657977, -0.12419735, 0.04304087, -0.044487152, -0.079916246, -0.10543021, 0.038789548, -0.02691768, -0.08142025, -0.077979825) * input_7(-1.0, -1.0); + result += mat4(-0.037926346, 0.07299342, 0.016620802, -0.03088621, 0.10963105, 0.073371336, -0.0812371, 0.048103094, 0.041705973, -0.18451719, 0.135947, -0.09489163, -0.11488007, -0.07113682, 0.080018796, -0.0015888854) * input_7(-1.0, 0.0); + result += mat4(-0.005355822, -0.010178947, -0.017012274, 0.05502973, 0.00397686, -0.013494365, -0.07710052, 0.010348549, 0.048348144, -0.105590306, 0.03197631, -0.062314086, -0.012664526, -0.11103893, 0.054491937, 0.20028588) * input_7(-1.0, 1.0); + result += mat4(0.0491439, -0.18240958, 0.16108201, -0.14158799, -0.013313664, 0.123608395, 0.06793263, -0.028415307, 0.0778705, 0.19813809, 0.06845464, -0.123059355, -0.05385499, -0.1587502, 0.041728858, -0.11522358) * input_7(0.0, -1.0); + result += mat4(-0.018349549, 0.09154647, -0.19425143, -0.011089395, 0.027941408, 0.23039375, 0.012696347, 0.087832674, 0.086689144, 0.044119485, -0.014833383, -0.11031199, 0.21812311, 0.14888616, -0.11265932, -0.17738046) * input_7(0.0, 0.0); + result += mat4(0.010312717, 0.083695374, 0.029053388, 0.15313296, -0.01010465, -0.037757434, -0.002179478, 0.13588871, 0.03529501, 0.20254354, 0.016566508, 0.018345324, 0.09536322, 0.15619029, -0.21520625, -0.1514928) * input_7(0.0, 1.0); + result += mat4(-0.02910995, -0.3609142, 0.12967211, 0.02071685, -0.0006880264, -0.08716734, 0.061202046, 0.16445614, -0.03763533, -0.13457267, 0.0045127426, 0.15141246, -0.013126647, 0.12660201, 0.123546384, 0.2168616) * input_7(1.0, -1.0); + result += mat4(0.21168807, 0.052952282, 0.3245918, 0.024434704, -0.06939317, -0.07540156, -0.042535167, -0.008470737, -0.107011214, 0.089859456, 0.030817246, 0.034670867, -0.19156766, -0.06654054, -0.05383693, 0.23114839) * input_7(1.0, 0.0); + result += mat4(0.025479335, 0.2243708, -0.27583292, 0.041066967, 0.014910135, -0.044221677, 0.13359614, -0.103221454, 0.0052954233, -0.13205469, -0.04782928, -0.0598079, -0.062849544, -0.07583182, 0.0732715, -0.02589945) * input_7(1.0, 1.0); + result += vec4(0.00020346258, 0.00095246214, -0.00013483127, 0.0010082611); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf6 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(-0.029285757, -0.012464377, -0.038384, -0.14874122, -0.06940562, 0.07414913, 0.031588227, 0.042432554, 0.04526297, -0.01328972, 0.00025213696, 0.10468998, 0.20756418, 0.12085584, -0.019898022, -0.2293858) * input_0(-1.0, -1.0); + result += mat4(-0.18905438, 0.013884485, 0.082787745, -0.20721671, 0.07879659, 0.115889855, 0.18099879, 0.074073836, 0.012562369, 0.08689843, -0.03121456, 0.061064642, -0.024005616, 0.055547144, 0.010878805, -0.1773419) * input_0(-1.0, 0.0); + result += mat4(0.17188188, 0.025786085, -0.11332587, 0.073661625, 0.05922612, -0.21248071, -0.018583506, 0.28648594, -0.10572059, -0.0672952, 0.07585622, -0.104375824, 0.060834955, -0.12291208, -0.07433704, 0.16721272) * input_0(-1.0, 1.0); + result += mat4(-0.007209583, -0.1673291, -0.13966095, -0.011136985, -0.024793716, 0.005437685, 0.1531493, 0.073288955, -0.15616275, -0.05387211, -0.005410369, 0.0358182, -0.041666824, -0.09562576, -0.20990172, 0.47184566) * input_0(0.0, -1.0); + result += mat4(0.057307187, 0.11350142, -0.16109756, -0.23260616, -0.18667632, 0.19037889, 0.28645858, 0.28607076, -0.109340854, 0.10044323, 0.15253046, 0.021621607, 0.006381095, 0.012510804, -0.11576583, -0.22999553) * input_0(0.0, 0.0); + result += mat4(0.05011145, 0.04880035, -0.113112964, -0.11734432, 0.14200701, -0.15362066, 0.1268366, 0.14912596, 0.08745706, -0.1046824, 0.003957636, -0.06952273, 0.0025437293, -0.025486456, 0.015700638, -0.28991023) * input_0(0.0, 1.0); + result += mat4(-0.046219286, -0.04014788, 0.0041982424, -0.113801755, 0.027781306, 0.09365478, -0.00596797, -0.057915717, -0.03468913, 0.0988016, -0.0025294994, 0.047268838, -0.16163994, -0.12591486, -0.024515983, -0.14981084) * input_0(1.0, -1.0); + result += mat4(-0.1227086, 0.18602985, 0.033382546, -0.06311866, 0.023495033, -0.075767614, -0.0030374161, -0.0027308946, 0.25852495, -0.12128696, -0.008125535, 0.090930305, 0.08660773, 0.123970464, 0.05831969, 0.07086526) * input_0(1.0, 0.0); + result += mat4(0.011203009, -0.16517226, -0.029012589, 0.15800306, -0.006123355, 0.038068496, -0.061095808, -0.059550185, 0.066162065, 0.056669965, 0.039334957, -0.15833178, -0.054070573, -0.17329305, -0.045594875, 0.1507993) * input_0(1.0, 1.0); + result += mat4(0.090517424, -0.021214003, -0.025751023, -0.13564228, -0.10208806, -0.08192471, 0.0019924298, 0.0407725, -0.0069604977, -0.09405474, 0.02625603, 0.11290302, 0.012109839, -0.033687234, 0.019032426, 0.05885085) * input_1(-1.0, -1.0); + result += mat4(-0.2531736, -0.044087492, -0.02063043, -0.20182556, -0.16123977, 0.08675837, 0.09168303, -0.1485911, 0.10329281, -0.23421371, -0.15963943, 0.5061096, 0.018067935, 0.06084682, -0.028129427, 0.100989275) * input_1(-1.0, 0.0); + result += mat4(0.19881423, 0.032838106, -0.086425096, 0.09470033, -0.64521617, 0.15127958, -0.031033076, 0.011488619, 0.06158329, 0.06303491, -0.13104844, 0.11986508, -0.016704693, -0.05566757, 0.029703654, -0.06493516) * input_1(-1.0, 1.0); + result += mat4(0.014306394, -0.050403245, -0.09066544, -0.13025463, 0.056535464, 0.339172, 0.03584687, -0.07135866, -0.032365367, 0.026697025, 0.0066542947, 0.18529697, -0.026603626, -0.08560045, -0.0030394406, 0.09863612) * input_1(0.0, -1.0); + result += mat4(0.22267345, -0.16309826, 0.017056018, -0.2605254, 0.23110755, -0.11988986, 0.057121273, -0.1545085, 0.13170874, 0.09060424, -0.23687604, 0.5734973, 0.4324007, 0.27116305, -0.18418673, 0.2842497) * input_1(0.0, 0.0); + result += mat4(-0.1792016, 0.17455126, -0.042192236, 0.1854979, -0.5879181, -0.27022398, 0.3347076, -0.0031134689, -0.27401134, -0.009211088, -0.14901428, 0.077966854, 0.08919838, 0.027404051, -0.04838994, 0.00748298) * input_1(0.0, 1.0); + result += mat4(-0.0077387313, 0.13296618, -0.015604379, -0.07653421, 0.041564032, -0.269964, -0.019977575, 0.020583143, -0.04734952, 0.07143924, 0.015935568, 0.14255619, -0.20640928, 0.122078925, 0.06424811, -0.02898855) * input_1(1.0, -1.0); + result += mat4(0.041685104, -0.10719292, 0.22557923, -0.16416514, -0.07743729, 0.045621097, 0.07713833, -0.2776054, -0.015315826, 0.2190341, -0.16597424, 0.40382415, 0.06322132, -0.13757305, -0.11280565, -0.034340706) * input_1(1.0, 0.0); + result += mat4(0.15591615, -0.044176217, 0.123327985, 0.18114533, 0.41749483, -0.08024623, -0.07691725, 0.10463299, 0.0030755312, 0.009850004, -0.1575673, 0.12572546, -0.13092822, -0.08766705, -0.06479257, -0.2555856) * input_1(1.0, 1.0); + result += mat4(0.057542298, 0.026038151, -0.022665147, 0.012948724, 0.090512365, 0.10845637, -0.0033922156, -0.013692406, -0.07060225, -0.045392644, -0.0024870117, 0.11313229, 0.023607353, 0.03648906, 0.004521563, 0.0007090133) * input_2(-1.0, -1.0); + result += mat4(0.08987935, 0.02011072, 0.0044393665, -0.05316066, -0.019208502, 0.018964734, 0.019647231, -0.035484705, 0.19659592, -0.045906723, 0.0031757697, 0.26076904, -0.0924896, -0.0009975042, 0.01687785, -0.013678886) * input_2(-1.0, 0.0); + result += mat4(0.07931575, 0.10469508, -0.010584853, -0.11298147, 0.014224363, -0.052236717, -0.051859595, 0.13655445, 0.05289851, 0.12833151, 0.079749204, -0.069093354, 0.014076617, -0.054784704, -0.058704376, 0.036013935) * input_2(-1.0, 1.0); + result += mat4(-0.12541258, -0.2974415, 0.038329832, 0.0023777585, -0.0066901757, -0.2122409, -0.010043122, 0.006446635, 0.19921297, 0.050384797, 0.08002747, 0.07705181, 0.011631997, -0.03212838, -0.011639796, -0.04684913) * input_2(0.0, -1.0); + result += mat4(-0.19336288, -0.23962387, -0.13716556, 0.24372788, -0.20143706, 0.12398512, -0.049700893, -0.17784496, -0.07018463, 0.02164111, 0.5519167, -0.049192328, 0.033724695, 0.10125132, -0.18809502, 0.04317061) * input_2(0.0, 0.0); + result += mat4(0.15441439, -0.029057391, -0.10403463, 0.026294569, 0.010060196, 0.04859767, 0.015252914, 0.11380815, -0.10484369, -0.09090016, 0.029745433, 0.043311663, -0.074905284, -0.040777825, 0.0376883, 0.00566588) * input_2(0.0, 1.0); + result += mat4(0.0010048156, 0.3212602, -0.024604084, -0.0017054139, 0.046060797, 0.084671006, 0.025204008, 0.016569113, -0.10238059, 0.011865189, 0.014450909, -0.050137904, 0.014237626, -0.02998219, -0.004318012, 0.0876561) * input_2(1.0, -1.0); + result += mat4(0.25842577, -0.054665178, 0.043639924, 0.09925028, -0.044354156, 0.10515205, 0.04080652, 0.07660047, 0.08278985, -0.21401806, -0.09200276, -0.11062575, -0.04904183, 0.018533872, -0.0057916315, 0.0793211) * input_2(1.0, 0.0); + result += mat4(-0.02979512, 0.023915125, 0.06019811, -0.12749638, -0.00075595395, -0.11747892, -0.014292345, 0.043212008, 0.06390347, 0.1971485, -0.037906833, -0.11545414, 0.03373777, 0.0077073476, 0.02631968, -0.030047674) * input_2(1.0, 1.0); + result += mat4(0.096756786, 0.0028947575, -0.032024134, 0.1258214, -0.14913592, -0.2407923, 0.0077616265, -0.11848373, 0.05764214, 0.11712295, -0.0067986343, 0.037354786, -1.1067133, -1.4585907, 0.10310083, 1.4694254) * input_3(-1.0, -1.0); + result += mat4(0.07399024, 0.014704898, -0.10506687, 0.25619796, -0.04152392, -0.12170953, 0.07090702, -0.17751014, -0.072176754, -0.13164577, 0.04083751, -0.0703884, -0.10236448, 0.18770985, -0.10778918, -0.084829785) * input_3(-1.0, 0.0); + result += mat4(-0.114027806, 0.04160712, -0.13196497, 0.107026406, -0.00021668238, 0.09472922, 0.025144884, -0.036943812, 0.010182299, 0.06869849, 0.06912421, -0.035935372, 0.233603, -0.11603001, 0.014422187, 0.006645775) * input_3(-1.0, 1.0); + result += mat4(-0.28764853, -0.031005636, 0.05627622, 0.15721184, -0.3051743, 0.062378943, 0.08310605, -0.048436873, -0.014979844, -0.08389692, -0.032715667, 0.03589251, 0.10006238, 0.038371827, 0.11071348, 0.12386235) * input_3(0.0, -1.0); + result += mat4(-0.06691325, 0.035826996, -0.52143884, 0.2787913, -0.26216173, 0.042863872, -0.09923455, 0.26630795, 0.111788824, -0.040446784, 0.16515712, 0.015268891, -0.15678625, -0.24531315, -0.1671053, -0.15131316) * input_3(0.0, 0.0); + result += mat4(-0.052616253, -0.05288123, 0.039639793, -0.05172991, 0.114162676, -0.09884284, 0.0034489005, 0.0725149, 0.13783263, -0.017319981, -0.061596118, -0.028025769, 0.050936706, 0.215907, 0.025512101, 0.16193171) * input_3(0.0, 1.0); + result += mat4(-0.0018133189, 0.05050472, -0.08529682, 0.19490916, 0.030755274, 0.15105213, -0.011272135, -0.030808706, -0.029891199, 0.02065469, -0.031283524, -0.03468812, 0.012771564, 0.047162972, 0.0068581775, -0.027042678) * input_3(1.0, -1.0); + result += mat4(0.22881486, -0.23379421, -0.00051653537, 0.24834266, -0.0761376, 0.0430697, 0.047700875, 0.028566223, 0.024788398, 0.030320656, -0.05074115, -0.05378297, 0.26053214, 0.055683866, -0.079909444, 0.19891231) * input_3(1.0, 0.0); + result += mat4(0.24053653, 0.05415118, -0.013890923, 0.10276033, 0.084425196, -0.13851258, 0.025725653, 0.017619096, -0.09888061, 0.017573284, -0.029041993, -0.047986954, -0.28803632, -0.10134921, 0.022644076, -0.07389134) * input_3(1.0, 1.0); + result += mat4(0.13184713, -0.027270002, -0.0010280834, 0.13357097, 0.041277457, -0.00043338616, -0.035239026, 0.0375304, 0.012065204, -0.19637376, -0.025870873, -0.16215935, -0.057507195, 0.06278308, 0.019750003, -0.04929781) * input_4(-1.0, -1.0); + result += mat4(-0.012869523, 0.007811688, -0.0048172693, 0.15657397, 0.11613836, 0.014813984, -0.045919307, 0.3016594, -0.37458763, 0.29494637, 0.08397459, 0.2202327, 0.2621359, 0.06564075, -0.052752476, 0.052930616) * input_4(-1.0, 0.0); + result += mat4(-0.114600904, 0.0056121442, -0.029436495, -0.060110383, -0.08122992, 0.010553093, -0.03213862, -0.0622234, -0.16615927, -0.34425646, -0.06691836, -0.12022256, 0.119060084, -0.07500466, -0.028038805, 0.06432706) * input_4(-1.0, 1.0); + result += mat4(-0.030020699, 0.0051407455, 0.05376147, 0.06279666, -0.15189692, 0.042517252, -0.03852228, 0.32731506, -0.57161194, 0.3201241, -0.19894087, 0.019770076, 0.08045814, -0.054579876, -0.0369119, -0.106093675) * input_4(0.0, -1.0); + result += mat4(0.19450378, 0.014518247, -0.10013694, 0.08298949, -0.00029682857, -0.06628979, -0.28392833, 0.32630855, 0.16915122, -0.085825525, -0.020881016, -0.124335684, -0.045548074, 0.1414092, -0.11269885, -0.20168406) * input_4(0.0, 0.0); + result += mat4(-0.18520324, 0.15091726, 0.039204434, -0.033623468, 0.10349208, -0.050892577, -0.036038842, 0.10312089, -0.18298228, 0.1112244, 0.026026577, 0.115336694, -0.032090135, -0.11409076, -0.020345587, 0.008575582) * input_4(0.0, 1.0); + result += mat4(0.00568006, 0.07904698, -0.075950585, 0.043089222, 0.08080496, 0.10175694, 0.0043666176, 0.20484272, -0.111381985, -0.069994204, -0.012110709, -0.067933954, 0.02901379, -0.062082905, 0.026189985, 0.025815316) * input_4(1.0, -1.0); + result += mat4(-0.03633165, -0.09844944, -0.009937295, 0.11376287, -0.12793174, 0.056577805, -0.22032365, 0.5159411, 0.12916325, -0.020413935, 0.054600094, -0.010466974, -0.15822883, 0.042222712, -0.012140761, -0.0057421844) * input_4(1.0, 0.0); + result += mat4(0.10992545, -0.00065876695, 0.0007475113, -0.09928418, -0.03131875, 0.046719816, -0.0523894, -0.05422297, -0.124435395, -0.039038487, 0.029472606, 0.036598768, -0.12351571, 0.07777497, -0.03615549, 0.12549193) * input_4(1.0, 1.0); + result += mat4(-0.040184535, -0.07271183, 0.0104586035, 0.103041686, 0.04062624, -0.07213089, 0.053164467, -0.03998401, -0.103630565, 0.05087974, -0.030703796, -0.17151825, -0.009853303, -0.057144783, -0.026713258, -0.092693284) * input_5(-1.0, -1.0); + result += mat4(0.048557054, 0.0027263665, -0.046563387, 0.1797916, 0.11704478, -0.20344104, 0.027279085, -0.112662785, -0.08203695, 0.085297264, 0.1265643, -0.26853657, -0.13100573, 0.034303684, -0.0018710062, -0.12131754) * input_5(-1.0, 0.0); + result += mat4(-0.08537789, 0.0032087609, 0.066784285, -0.10521746, -0.030172069, 0.07357314, 0.016859915, -0.0105606895, 0.018711932, 0.010435487, -0.06932093, 0.16928339, 0.063737184, -0.020204667, -0.036964264, -0.06323314) * input_5(-1.0, 1.0); + result += mat4(-0.004853862, -0.019852558, 0.06633202, 0.021264302, 0.038714997, 0.07762417, 0.01884173, -0.011924246, -0.156195, 0.12213049, 0.011564563, -0.021870881, -0.016258761, -0.17132936, -0.10585322, -0.059280124) * input_5(0.0, -1.0); + result += mat4(0.12007989, -0.047922313, 0.15967001, -0.05375178, 0.18817243, -0.20443982, -0.20504948, 0.2479131, -0.11742235, -0.10178377, -0.24372855, 0.16346578, 0.08098582, 0.12147456, -0.18901058, -0.09689701) * input_5(0.0, 0.0); + result += mat4(0.008177058, 0.044196703, 0.055709787, -0.06414581, 0.12072545, 0.23358652, 0.012750844, 0.06305932, 0.20556147, -0.05027363, 0.03411821, 0.024276717, -0.08630656, 0.093526594, -0.07678226, -0.09584897) * input_5(0.0, 1.0); + result += mat4(-0.054700136, 0.12181595, -0.030012649, 0.040645666, 0.09488172, -0.04113247, -0.014342345, -0.0046232413, 0.062568285, -0.085423, -0.004023166, -0.0635021, 0.13989988, 0.011588428, -0.051071186, -0.072231874) * input_5(1.0, -1.0); + result += mat4(0.16071844, -0.011626121, -0.030742759, -0.14863113, -0.033497095, 0.020059852, 0.06310968, -0.0043445197, -0.06803173, 0.07586178, 0.041263234, -0.008475312, -0.06206563, -0.102464385, 0.010348131, -0.11177557) * input_5(1.0, 0.0); + result += mat4(0.07262034, 0.26542306, -0.032893594, -0.10338737, 0.100251436, 0.08794136, 0.040059023, -0.05515344, 0.011678372, -0.12183756, -0.020829193, 0.1002468, -0.034523733, 0.10288866, -0.011260733, -0.020707523) * input_5(1.0, 1.0); + result += mat4(-0.017135924, 0.008744819, 0.018100973, 0.10493707, 0.028386366, 0.00067395123, 0.027015267, 0.0003475072, -0.0822231, -0.09606454, -0.015599573, -0.04017475, -0.054046765, -0.05028669, 0.04391043, 0.09500358) * input_6(-1.0, -1.0); + result += mat4(0.12592643, 0.022576548, 0.054130144, 0.13840364, 0.17544599, 0.00979422, 0.012066112, 0.040773053, 0.019136557, 0.31239805, 0.07196102, 0.012472061, -0.019087195, 0.14279948, 0.06664332, 0.106075) * input_6(-1.0, 0.0); + result += mat4(-0.042150714, -0.02541067, 0.028187137, 0.10421733, 0.085451856, 0.1477143, 0.0331692, 0.010291513, 0.099326454, 0.06456022, -0.10231022, 0.10677228, -0.14471558, -0.11976065, 0.029219965, 0.17025459) * input_6(-1.0, 1.0); + result += mat4(0.08702133, 0.20459695, 0.12893982, 0.1554503, 0.03399459, -0.13065045, -0.03254076, 0.12188002, -0.11482519, 0.045290355, 0.048320077, 0.07153484, -0.08514854, 0.13183421, 0.10647474, 0.07889302) * input_6(0.0, -1.0); + result += mat4(0.16245012, -0.06751712, 0.15116929, 0.23753786, -0.16336335, -0.0010059095, 0.0063014175, -0.16416283, 0.25234637, -0.46351248, -0.066477016, 0.0034187303, 0.29589146, 0.06764479, 0.23127982, 0.060819067) * input_6(0.0, 0.0); + result += mat4(-0.11525109, -0.18984666, 0.1872957, 0.08414146, -0.044027437, -0.13400999, -0.016196573, -0.08204248, -0.15011418, 0.2761422, 0.0019407925, 0.01816141, -0.058716655, -0.1675979, 0.07096163, 0.030794952) * input_6(0.0, 1.0); + result += mat4(0.04132159, 0.013628245, 0.0653251, -0.08811345, -0.015911471, 0.19030875, 0.0275555, -0.045120526, 0.046240203, 0.03166319, 0.009638069, -0.01067298, -0.01626206, 0.024170825, -0.003839702, 0.030616848) * input_6(1.0, -1.0); + result += mat4(-0.24878943, -0.023308484, 0.018552551, 0.11773697, -0.19294807, -0.09165767, 0.0454791, -0.043964572, -0.011920394, 0.006101122, -0.010511055, 0.02110314, 0.05872023, -0.14636041, -0.042081054, 0.12785758) * input_6(1.0, 0.0); + result += mat4(0.14744098, -0.056270324, -0.073231034, 0.23973855, 0.17096744, -0.057970684, 0.028418494, -0.034192014, -0.061139118, 0.00499353, -0.016276697, -0.030173536, -0.025283804, 0.0664102, -0.0021540776, -0.042698562) * input_6(1.0, 1.0); + result += mat4(-0.010483857, 0.096328296, 0.029325621, -0.013502299, -0.11181624, 0.020567603, 0.015969759, -0.14351034, -0.08987789, 0.11293203, 0.020914435, -0.15503848, -0.02682946, -0.05724721, 0.0052431985, -0.085810676) * input_7(-1.0, -1.0); + result += mat4(-0.14918745, -0.09552081, -0.052070532, 0.059789427, 0.10916885, -0.05198672, 0.035888225, -0.26862332, -0.09393381, 0.03491155, 0.13306418, -0.31985041, -0.068925835, 0.12065355, 0.12336533, -0.2571575) * input_7(-1.0, 0.0); + result += mat4(0.15812849, -0.0009893816, 0.03491369, -0.064192355, 0.02730654, -0.03816884, 0.07837725, -0.099868275, -0.04060345, -0.06184368, 0.078963555, -0.08528477, -0.046422396, 0.01931214, 0.032905243, 0.0070358505) * input_7(-1.0, 1.0); + result += mat4(-0.09747967, -0.073913805, -0.12255138, 0.031914413, 0.06889295, 0.05484042, -0.046332363, -0.11115964, 0.040450763, -0.118530765, -0.025155002, -0.15191126, 0.03333609, 0.114471205, -0.013264528, -0.14316602) * input_7(0.0, -1.0); + result += mat4(0.054018907, 0.2147922, -0.12759839, -0.105380334, -0.07071586, -0.11143705, 0.32674858, -0.32705078, 0.17953925, -0.18510933, 0.31469914, -0.29384464, -0.026900874, -0.28976163, 0.24567986, -0.44855738) * input_7(0.0, 0.0); + result += mat4(0.06303808, -0.14762174, -0.18005653, -0.098804384, 0.080243096, -0.03051494, 0.02026447, 0.10013639, 0.02807203, 0.11365772, 0.057707686, -0.02699323, -0.06594992, -0.02505763, 0.21173452, -0.07397371) * input_7(0.0, 1.0); + result += mat4(0.03648538, -0.16460039, -0.061280377, -0.054795943, -0.0068731676, -0.0071983063, 0.07227077, -0.13892567, 0.089482866, 0.01520621, 0.0514549, -0.2260382, 0.071102284, -0.07228943, 0.035612352, -0.13136233) * input_7(1.0, -1.0); + result += mat4(-0.226747, 0.22254212, -0.12204417, 0.049881145, -0.13023032, 0.1485723, 0.0074030235, -0.17609489, -0.03543789, 0.124251306, 0.11532386, -0.3650222, -0.10350683, 0.25700116, 0.14368346, -0.2531148) * input_7(1.0, 0.0); + result += mat4(-0.22370586, -0.1558255, -0.13894312, -0.07053189, -0.15339698, 0.01602399, -0.01815185, -0.0059113223, -0.045830403, 0.0011529983, 0.005394648, -0.09519897, 0.27043805, -0.100201204, 0.08542762, -0.052349083) * input_7(1.0, 1.0); + result += vec4(-0.0010140355, 0.0003556102, 0.038259048, 0.011082351); + return result; +} + +//!DESC ArtCNN C4F32 (Conv-5) +//!HOOK LUMA +//!BIND conv2d_4_tf +//!BIND conv2d_4_tf1 +//!BIND conv2d_4_tf2 +//!BIND conv2d_4_tf3 +//!BIND conv2d_4_tf4 +//!BIND conv2d_4_tf5 +//!BIND conv2d_4_tf6 +//!BIND conv2d_4_tf7 +//!SAVE conv2d_5_tf7 +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) (conv2d_4_tf_texOff(vec2(x_off, y_off))) +#define input_1(x_off, y_off) (conv2d_4_tf1_texOff(vec2(x_off, y_off))) +#define input_2(x_off, y_off) (conv2d_4_tf2_texOff(vec2(x_off, y_off))) +#define input_3(x_off, y_off) (conv2d_4_tf3_texOff(vec2(x_off, y_off))) +#define input_4(x_off, y_off) (conv2d_4_tf4_texOff(vec2(x_off, y_off))) +#define input_5(x_off, y_off) (conv2d_4_tf5_texOff(vec2(x_off, y_off))) +#define input_6(x_off, y_off) (conv2d_4_tf6_texOff(vec2(x_off, y_off))) +#define input_7(x_off, y_off) (conv2d_4_tf7_texOff(vec2(x_off, y_off))) +vec4 hook() { + vec4 result = mat4(0.18748428, -0.04605549, -0.15522398, 0.035607163, 0.046246115, 0.032331195, -0.13622104, -0.051455077, -0.09752729, 0.043023396, 0.10443981, -0.17208064, 0.035216205, 0.049966384, -0.087291226, 0.11512416) * input_0(-1.0, -1.0); + result += mat4(-0.17615914, 0.035706114, 0.055715587, -0.08579743, -0.106876634, -0.006688288, 0.06767295, -0.17058575, -0.04056672, -0.0017680242, 0.10316955, 0.04076491, 0.020075718, -0.030003916, -0.0425117, -0.02750586) * input_0(-1.0, 0.0); + result += mat4(0.11307793, -0.05974447, -0.008511191, 0.07993109, 0.22217785, -0.05179475, 0.032725077, 0.17790097, -0.1338398, 0.07541703, 0.025482591, 0.027031304, 0.124109305, -0.03588712, 0.07786252, -0.02120998) * input_0(-1.0, 1.0); + result += mat4(0.17351697, -0.06288583, 0.0005935089, -0.03243029, -0.08202285, 0.060662646, 0.10827901, 0.10492268, -0.089853086, -0.07882079, 0.057041075, 0.057332925, 0.30768326, -0.2006596, -0.3213723, 0.34860152) * input_0(0.0, -1.0); + result += mat4(-0.27494127, -0.2669006, -0.48400056, -0.13221584, -0.48787716, 0.12872204, -0.02620476, 0.03906361, -0.08366321, 0.35886267, 0.6336079, 0.0741627, -0.19896303, -0.24985862, -0.4431821, -0.19983426) * input_0(0.0, 0.0); + result += mat4(0.24002835, -0.14118862, -0.19418834, 0.028007874, 0.040925592, 0.05331531, 0.01936274, -0.074631654, -0.023462437, 0.06688187, 0.20163359, -0.037401002, 0.15183507, -0.050760873, -0.25147736, 0.13768116) * input_0(0.0, 1.0); + result += mat4(0.092738464, -0.021451121, -0.096348554, 0.041167207, 0.028542288, 0.022614773, -0.0705802, -0.052673925, 0.03192614, 0.028527796, -0.025374232, 0.07366579, 0.18840998, -0.08177902, -0.18190488, -0.14333569) * input_0(1.0, -1.0); + result += mat4(-0.08846826, -0.07977279, -0.014427762, -0.012063188, 0.0145990485, 0.07566945, -0.0768063, -0.035423458, 0.05715467, 0.045433067, 0.07184719, 0.035028007, -0.0055054883, -0.07416106, -0.077528045, -0.03525563) * input_0(1.0, 0.0); + result += mat4(-0.17247728, -0.09805118, -0.14154263, 0.059322633, 0.04090638, -0.004808991, -0.0046236017, 0.03407141, 0.08744801, 0.06992075, 0.1329037, -0.044902418, -0.10585385, -0.14029174, -0.1647799, 0.2562531) * input_0(1.0, 1.0); + result += mat4(0.029418321, 0.021849016, -0.056968562, -0.016820736, -0.17486887, -0.020813378, -0.051469393, 0.1014137, -0.055278976, 0.02355425, -0.010481712, 0.22362784, 0.22064501, -0.0087507395, 0.009432594, -0.00198138) * input_1(-1.0, -1.0); + result += mat4(0.006997559, -0.06143264, 0.0934218, 0.06721092, 0.041560795, 0.056456216, -0.12409137, 0.009433302, -0.015912289, 0.016279584, 0.07165761, 0.008268266, 0.11696166, -0.008453589, -0.07515281, -0.044030286) * input_1(-1.0, 0.0); + result += mat4(-0.08605807, -0.004161411, 0.080130376, 0.01680455, 0.9527501, -0.05988397, -0.24505879, 0.35882327, -0.12746541, -0.0059730858, -0.063271955, 0.4437169, 0.066800125, 0.012805621, 0.004442519, -0.0073073725) * input_1(-1.0, 1.0); + result += mat4(-0.015081863, -0.005058557, -0.004318064, -0.098701194, 0.16584347, -0.12016358, 0.020916402, -0.047328446, 2.7262227e-05, -0.05972721, 0.15153103, -0.043617085, -0.14113285, 0.06314556, 0.19133906, 0.32849094) * input_1(0.0, -1.0); + result += mat4(-0.081801794, -0.1265215, 0.27658668, -0.19706027, 0.20932868, 0.26528084, -0.29906163, 0.099904865, 0.080086984, 0.19229524, -0.20709333, 0.012923005, -0.4238061, -0.09611031, 0.07347663, -0.1767598) * input_1(0.0, 0.0); + result += mat4(-0.41159123, -0.010023765, 0.06223273, 0.11951723, 1.2513798, 0.15638922, 0.16417453, 0.19429602, -0.15950473, -0.1366037, 0.22637215, -0.020305837, 0.21755838, -0.008065414, 0.13587992, -0.17539479) * input_1(0.0, 1.0); + result += mat4(-0.113982856, 0.023114478, -0.039580956, 0.13254721, -0.002359817, -0.042762566, 0.08334606, -0.05393584, -0.031104915, -0.0003688349, -0.11196133, 0.13848868, -0.13976312, 0.00091101596, 0.16101013, -0.0056573213) * input_1(1.0, -1.0); + result += mat4(-0.07844653, -0.05751889, 0.3145413, 0.0014807074, -0.2566145, -0.03568299, -0.09709116, -0.10350262, -0.066492684, -0.04765998, 0.0049882573, 0.45532754, -0.1328647, -0.073221706, 0.27302027, 0.07851812) * input_1(1.0, 0.0); + result += mat4(-0.10694174, 0.13485493, 0.47212932, 0.09570716, 0.7743815, 0.05928944, -0.06999433, 0.009422689, 0.15955211, -0.01924839, 0.033975936, 0.121343486, -0.17041044, -0.035135657, 0.048778497, 0.08742427) * input_1(1.0, 1.0); + result += mat4(0.0026276978, -0.0026725614, -0.054527834, -0.0874575, 0.19843262, -0.008945604, 0.08916026, -0.18203016, -0.17720556, 0.036579013, -0.0068991715, 0.065678954, 0.17231038, -0.021951346, -0.047927663, 0.16347365) * input_2(-1.0, -1.0); + result += mat4(-0.020114169, 0.03924504, 0.033480633, -0.15142468, -0.15343487, -0.074808314, 0.12244975, -0.007837914, -0.22777155, 0.018716494, 0.01156155, 0.0029183445, 0.25043526, -0.0057834224, 0.06288758, -0.0660446) * input_2(-1.0, 0.0); + result += mat4(-0.1602113, -0.00033873567, -0.010339203, -0.15323053, -0.03737162, -0.012346182, 0.025391709, -0.10766024, 0.07379615, 0.012438134, -0.11750413, 0.15905729, -0.050916173, -0.026717061, 0.0065793884, 0.047295034) * input_2(-1.0, 1.0); + result += mat4(-0.14854158, -0.052430317, 0.009426351, 0.01732295, -0.14660795, -0.04219723, 0.12430814, 0.2276268, 0.014237179, -0.015339159, -0.22458987, -0.06372464, 0.031215893, 0.043578427, -0.009831288, 0.11944321) * input_2(0.0, -1.0); + result += mat4(-0.3044724, -0.09410961, 0.6669306, -0.077001676, -0.0004168993, -0.03913186, 0.14091814, 0.13120319, 0.27684906, 0.5928637, 0.206845, -0.09731482, -0.33784163, -0.2529002, 0.065183066, 0.036490973) * input_2(0.0, 0.0); + result += mat4(-0.36818787, -0.066435836, -0.10980827, -0.009447694, 0.18450205, -0.018669194, 0.022286827, 0.14693102, -0.016430875, 0.022636926, 0.0101275, -0.07799504, 0.17379743, -0.00067336264, -0.007366629, -0.023316812) * input_2(0.0, 1.0); + result += mat4(-0.19522065, -0.008327288, -0.030180162, -0.010829077, 0.043345097, 0.034006055, -0.016589005, 0.13530652, -0.10112908, 0.07416903, 0.019684428, 0.16591293, -0.051279366, -0.062606476, 0.023377482, -0.037971094) * input_2(1.0, -1.0); + result += mat4(0.01919401, 0.11691406, 0.0061380896, 0.053534172, -0.03394594, -0.010196558, -0.15073206, -0.045832913, 0.15260476, 0.042038552, 0.2372258, -0.09467952, 0.0007380944, 0.0075443983, -0.0891984, 0.004220329) * input_2(1.0, 0.0); + result += mat4(-0.13964629, 0.03373655, 0.16870214, -0.014056043, 0.06484414, -0.03165646, -0.15051793, -0.042188447, -0.015814949, 0.052695733, 0.09830447, 0.049699195, -0.0018682993, 0.017396701, 0.00031327317, -0.13010956) * input_2(1.0, 1.0); + result += mat4(-0.059118386, -0.027204517, 0.35753912, -0.055100873, 0.24522065, 0.041871477, -0.41098866, -0.07943363, 0.049982883, 0.00023255704, -0.10985854, -0.12118178, -3.107771, 1.0177227, 1.3062171, 0.809657) * input_3(-1.0, -1.0); + result += mat4(-0.10614293, -0.055235714, 0.24510142, 0.2304624, 0.19993612, 0.06450677, -0.16673535, -0.22346789, 0.18504614, 0.03244496, -0.045288373, -0.048209812, 0.14251216, 0.045659285, 0.08916112, 0.054198354) * input_3(-1.0, 0.0); + result += mat4(-0.039854124, -0.039604723, 0.14631604, -0.0046064174, 0.0570889, 0.025410479, 0.0050761937, 0.07050757, -0.040589117, 0.047358193, -0.03499052, -0.1690712, -0.19060837, 0.01635581, 0.00704014, 0.022710182) * input_3(-1.0, 1.0); + result += mat4(-0.15962236, -0.03143451, 0.23156266, -0.066236734, 0.027291315, 0.016841393, -0.11001908, 0.11907143, -0.0011710678, -0.020944541, -0.037578147, 0.020941893, -0.15275723, 0.17511693, 0.028205201, 0.13500936) * input_3(0.0, -1.0); + result += mat4(0.2141324, -0.32271957, 0.93513465, -0.32301423, -0.07850163, -0.18285601, -0.60283667, -0.2702691, 0.05989453, 0.24846564, -0.017742952, -0.12820813, 0.106238335, 0.22167094, 0.16324383, -0.14600232) * input_3(0.0, 0.0); + result += mat4(0.027499197, 0.009024598, 0.06808955, -0.12623796, 0.17092754, 0.005942699, -0.009346498, -0.17897473, 0.090626694, -0.009022552, 0.08839724, 0.1091102, 0.055781778, 0.053058624, -0.02312893, 0.017557338) * input_3(0.0, 1.0); + result += mat4(-0.13659965, -0.12830359, 0.2983706, -0.055172812, -0.10966227, 0.0020741504, 0.09866452, 0.14793001, 0.032065913, -0.014637485, -0.016602961, 0.0071280254, 0.14041221, -0.005968587, 0.022015993, -0.077188924) * input_3(1.0, -1.0); + result += mat4(-0.08617684, -0.0003494784, 0.13824148, -0.034260318, -0.0743784, -0.04439942, -0.035039153, 0.09794369, -0.05417487, -0.0006067513, 0.033564713, 0.05832913, -0.24960339, -0.059197918, -0.053378027, 0.11460391) * input_3(1.0, 0.0); + result += mat4(0.094435394, 0.0033050303, 0.07246374, 0.12581156, 0.0028535824, 0.0021685006, 0.080285355, 0.037109103, -0.043274887, -0.025450207, 0.019005168, -0.08523751, 0.13047059, -0.005648652, -0.03415759, -0.027251232) * input_3(1.0, 1.0); + result += mat4(-0.012539057, -0.018160108, 0.20070826, 0.034524422, 0.19943817, -0.03064601, -0.12287426, 0.07504573, -0.061018977, -0.15431614, -0.008767564, 0.4858711, 0.09175249, 0.0014705135, -0.09737117, 0.1406451) * input_4(-1.0, -1.0); + result += mat4(-0.07817707, -0.009949546, 0.09649783, 0.055177163, 0.014439161, 0.05583345, 0.06331276, 0.08514023, -0.028967192, 0.1445007, 0.33801055, 0.13857313, -0.006949777, -0.008354384, -0.08292307, 0.06960562) * input_4(-1.0, 0.0); + result += mat4(0.04227717, -0.020480357, 0.0022489808, 0.023778586, 0.04218256, 0.012828034, 0.011271413, -0.06757142, -0.09776884, -0.03645275, 0.07701067, -0.17882045, -0.06812506, -0.017899303, 0.012964835, 0.056832068) * input_4(-1.0, 1.0); + result += mat4(-0.10829954, 0.019215316, 0.015874218, -0.09247317, -0.18898526, 0.01970988, 0.22399427, 0.07378518, -0.34697443, -0.13747412, 0.33354166, 0.48769817, 0.21166848, 0.11200888, -0.067849554, 0.0210159) * input_4(0.0, -1.0); + result += mat4(-0.22897339, 0.09659531, 0.8135581, 0.16500744, 0.17958958, -0.0833807, 0.22029445, -0.23994946, -0.077371255, 0.06512139, 0.29512393, 0.019327162, 0.09170533, -0.27183273, -0.8740588, -0.07204068) * input_4(0.0, 0.0); + result += mat4(-0.1361519, 0.016574424, -0.017045561, -0.030188723, 0.06732785, -0.0067110592, -0.0017281623, -0.0053793094, -0.0065643424, 0.046378564, -0.08476531, -0.059326902, 0.13464351, 0.0076571293, 0.0037067824, 0.013454252) * input_4(0.0, 1.0); + result += mat4(0.13336918, -0.07481676, -0.0363467, -0.059985038, 0.15338105, -0.020176388, 0.13894334, -0.1335172, -0.043888595, 0.04193159, 0.094334625, -0.14783013, -0.017327381, 0.035731312, 0.012489729, 0.024777919) * input_4(1.0, -1.0); + result += mat4(-6.121845e-06, 0.04086349, 0.03028756, -0.08828595, 0.13075627, -0.0685412, 0.051496163, 0.12208564, -0.081585936, 0.005138062, -0.0019031828, -0.06792875, -0.037969194, -0.032492217, -0.0075681005, 0.02987573) * input_4(1.0, 0.0); + result += mat4(-0.011090222, 0.036881924, 0.024639532, 0.041659255, 0.011507844, -0.02943237, -0.07794281, 0.09653544, 0.07308395, -0.02494316, -0.069022305, -0.10997276, 0.004016396, -0.06250121, -0.14869249, -0.056648243) * input_4(1.0, 1.0); + result += mat4(-0.090487175, 0.0056792228, 0.06739725, 0.18092726, 0.048348635, 0.030950101, -0.23063204, -0.27547145, 0.06639562, -0.028921213, -0.15514053, -0.074177265, 0.10938024, -0.030702453, -0.07847564, 0.047400538) * input_5(-1.0, -1.0); + result += mat4(-0.03876695, 0.007621317, 0.096907854, -0.027162239, 0.02958352, 0.062173482, -0.16280012, 0.19919705, 0.015152286, 0.017325845, -0.0065795574, -0.03619448, -0.03959555, 0.0324656, 0.031074058, -0.02225015) * input_5(-1.0, 0.0); + result += mat4(-0.0717682, 0.041676596, -0.0402182, 0.05550433, 0.1262726, 0.026505867, 0.04286856, -0.019346505, 0.095685504, -0.047489803, 0.026797378, -0.035726532, -0.0033224295, -0.018984655, -0.04264225, 0.0043759514) * input_5(-1.0, 1.0); + result += mat4(-0.03527698, 0.04052761, 0.050213475, 0.03333879, 0.03074294, 0.027556477, 0.065415055, -0.035150684, 0.0022599415, 0.039984223, 0.13470459, -0.058530267, -0.077683635, -0.05858647, -0.05939012, -0.006696811) * input_5(0.0, -1.0); + result += mat4(0.025446665, 0.31086656, 0.5541302, 0.16376224, -0.17772402, -0.27222353, 0.044773377, -0.1806051, -0.108791076, -0.32051474, -0.61667407, 0.086197145, 0.02618639, -0.22067809, -0.2662051, 0.0403532) * input_5(0.0, 0.0); + result += mat4(-0.20301516, 0.09426619, 0.09964226, -0.009111954, -0.3350493, 0.017721254, 0.03340545, -0.10220832, -0.04441792, -0.03204391, -0.035471965, -0.029896745, 0.19835937, -0.11060948, -0.06955977, -0.12774469) * input_5(0.0, 1.0); + result += mat4(-0.06830885, 0.0043079676, 0.035599746, -0.0672662, 0.030310255, -0.05642907, -0.024698643, -0.1527434, 0.09610401, -0.019558378, -0.057179373, 0.03209265, 0.14048424, -0.045980427, -0.013346958, 0.037923105) * input_5(1.0, -1.0); + result += mat4(0.05404937, 0.123066835, 0.23466645, 0.03378277, -0.12644331, 0.021328857, -0.016490327, -0.059122957, -0.029490832, -0.059528235, -0.1085042, 0.015143536, 0.08555648, -0.117763855, -0.06595343, -0.037966065) * input_5(1.0, 0.0); + result += mat4(0.04533449, 0.061572127, 0.17062077, -0.09105961, -0.047620222, 0.03344021, 0.19079974, -0.061020847, -0.11052307, -0.028871462, -0.1282306, -0.04761964, -0.37530914, -0.016326368, 0.059378326, -0.10418705) * input_5(1.0, 1.0); + result += mat4(0.107386254, -0.018072143, 0.005701876, -0.058361333, 0.13862143, 0.031008318, -0.004225253, -0.07989645, -0.12446232, 0.008164007, -0.12256693, -0.040525798, -0.041996982, 0.030684916, 0.011878658, -0.039323747) * input_6(-1.0, -1.0); + result += mat4(-0.04057345, -0.0148840295, 0.034931373, 0.09540005, 0.027400317, -0.04703915, -0.06508688, 0.08152501, 0.17571451, 0.059820127, 0.025060631, -0.023350883, 0.21325178, -0.0031530408, 0.21475375, -0.11020789) * input_6(-1.0, 0.0); + result += mat4(0.06976501, -0.016589452, -0.00246838, -0.05166465, -0.048837557, 0.0017108319, -0.058800064, 0.009332457, 0.34475458, -0.04580045, -0.104920745, 0.082870126, -0.3774295, 0.017801732, 0.089133404, 0.19519718) * input_6(-1.0, 1.0); + result += mat4(-0.10203033, 0.08607084, 0.15213211, -0.1490586, -0.34070554, 0.01482211, -0.09061546, 0.35126525, 0.07176885, 0.0121609345, 0.07545862, -0.032317705, -0.24801402, 0.043464046, 0.18292041, -0.051778562) * input_6(0.0, -1.0); + result += mat4(0.15602538, 0.056640383, -0.032058425, 0.37239224, -0.18022308, 0.026189279, -0.31648263, -0.26733637, 0.22111182, 0.20191832, -0.36641592, 0.029684946, 0.15247625, 0.27921283, 0.348099, 0.09440445) * input_6(0.0, 0.0); + result += mat4(0.09604745, 0.102692, 0.06690914, -0.25996524, 0.041048586, -0.032512337, -0.0114734145, -0.13016875, -0.12204078, -0.017694773, -0.16779599, -0.039186016, 0.36326084, 0.059721295, 0.08881077, -0.14921051) * input_6(0.0, 1.0); + result += mat4(0.07064315, 0.041497085, -0.01486013, -0.20022964, 0.1882113, 0.10927892, -0.12136937, -0.12653087, 0.022003504, 0.0072505483, 0.0012847062, 0.008429051, -0.05113097, 0.021094386, 0.036679607, -0.05311396) * input_6(1.0, -1.0); + result += mat4(-0.009966107, 0.013647607, 0.18059312, -0.17634004, 0.31823388, -0.08846381, -0.10173668, 0.13848424, 0.020215213, -0.032482773, -0.006039812, -0.0612341, 0.007869933, -0.0058648787, -0.0015009725, 0.03971207) * input_6(1.0, 0.0); + result += mat4(-0.027379865, -0.03342232, 0.011669194, 0.5319874, -0.26885235, -0.0024602718, 0.10188675, 0.28499103, 0.155945, -0.0040140096, -0.030112216, 0.0756686, 0.0660744, 0.02276587, 0.04077831, 0.033266917) * input_6(1.0, 1.0); + result += mat4(0.042711895, -0.015634412, 0.01527693, -0.08083986, -0.13141085, 0.049801458, -0.27822813, -0.0721793, -0.011866261, 0.031865794, -0.26763752, -0.25539055, -0.1273403, 0.0318976, -0.09952763, 0.0715031) * input_7(-1.0, -1.0); + result += mat4(-0.037811473, -0.03303677, 0.06856406, 0.044475324, 0.08601623, -0.0066251345, -0.05504793, -0.19494109, 0.09324096, 0.08678511, -0.21751007, -0.139253, 0.12899458, -0.044929594, -0.08833598, -0.10784201) * input_7(-1.0, 0.0); + result += mat4(-0.006356983, -0.006462598, -0.029824737, 0.03768828, -0.05250172, 0.021794064, -0.05086067, 0.052773483, 0.0897631, 0.0134851765, -0.1214403, -0.079755686, -0.049643673, -0.05058213, 0.06743456, -0.12669449) * input_7(-1.0, 1.0); + result += mat4(0.14023206, -0.1054485, 0.08018018, 0.14111516, 0.07273483, -0.030262996, 0.013688528, 0.11788255, 0.06052511, -0.023575353, 0.0278727, 0.15104066, 0.13915156, -0.07133365, -0.08361108, -0.026880875) * input_7(0.0, -1.0); + result += mat4(-0.07782443, 0.0513534, -0.19137847, -0.12884009, -0.04586325, 0.1514582, -0.99630886, 0.20695445, -0.0031605626, 0.21689515, -0.5751043, 0.1759276, -0.02866146, -0.03432848, -0.31518987, 0.13841122) * input_7(0.0, 0.0); + result += mat4(-0.06537398, -0.093377344, -0.17777199, -0.0015198998, -0.047408823, 0.050708473, 0.066447385, 0.017636064, -0.027277267, 0.04689052, -0.10553338, 0.12901445, -0.13119061, 0.13908014, -0.27810383, 0.12890835) * input_7(0.0, 1.0); + result += mat4(0.52159745, -0.002675315, -0.27586064, -0.44493014, -0.0018720324, 0.10284531, -0.11108876, 0.0053667277, 0.037994266, 0.11660394, -0.24712609, -0.024909865, 0.016474772, 0.08630532, -0.09150918, -0.0125788925) * input_7(1.0, -1.0); + result += mat4(-0.1692639, -0.21415134, -0.5171998, 0.24706295, -0.051621262, 0.00092004467, 0.10956069, -0.02506276, -0.05280511, 0.094391786, -0.22164275, -0.14734302, -0.11465952, 0.036086526, -0.27057293, -0.049921058) * input_7(1.0, 0.0); + result += mat4(0.042868234, -0.15191281, -0.2292827, 0.23622762, -0.061978884, -0.019642226, -0.10331459, -0.007591499, 0.047054384, 0.01397022, -0.057383988, -0.1830775, -0.0984223, 0.014310008, -0.0020077373, 0.04686664) * input_7(1.0, 1.0); + result += vec4(0.00023437799, -0.019400852, 0.0011313506, -0.0022503573); + return result; +} + +//!DESC ArtCNN C4F32 (Long-Skip-Conv-6) +//!HOOK LUMA +//!BIND conv2d_5_tf +//!BIND conv2d_tf +//!BIND conv2d_5_tf1 +//!BIND conv2d_tf1 +//!BIND conv2d_5_tf2 +//!BIND conv2d_tf2 +//!BIND conv2d_5_tf3 +//!BIND conv2d_tf3 +//!BIND conv2d_5_tf4 +//!BIND conv2d_tf4 +//!BIND conv2d_5_tf5 +//!BIND conv2d_tf5 +//!BIND conv2d_5_tf6 +//!BIND conv2d_tf6 +//!BIND conv2d_5_tf7 +//!BIND conv2d_tf7 +//!SAVE conv2d_6_tf +//!WIDTH LUMA.w +//!HEIGHT LUMA.h +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * +#define input_0(x_off, y_off) ((conv2d_5_tf_texOff(vec2(x_off, y_off)))+(conv2d_tf_texOff(vec2(x_off, y_off)))) +#define input_1(x_off, y_off) ((conv2d_5_tf1_texOff(vec2(x_off, y_off)))+(conv2d_tf1_texOff(vec2(x_off, y_off)))) +#define input_2(x_off, y_off) ((conv2d_5_tf2_texOff(vec2(x_off, y_off)))+(conv2d_tf2_texOff(vec2(x_off, y_off)))) +#define input_3(x_off, y_off) ((conv2d_5_tf3_texOff(vec2(x_off, y_off)))+(conv2d_tf3_texOff(vec2(x_off, y_off)))) +#define input_4(x_off, y_off) ((conv2d_5_tf4_texOff(vec2(x_off, y_off)))+(conv2d_tf4_texOff(vec2(x_off, y_off)))) +#define input_5(x_off, y_off) ((conv2d_5_tf5_texOff(vec2(x_off, y_off)))+(conv2d_tf5_texOff(vec2(x_off, y_off)))) +#define input_6(x_off, y_off) ((conv2d_5_tf6_texOff(vec2(x_off, y_off)))+(conv2d_tf6_texOff(vec2(x_off, y_off)))) +#define input_7(x_off, y_off) ((conv2d_5_tf7_texOff(vec2(x_off, y_off)))+(conv2d_tf7_texOff(vec2(x_off, y_off)))) +vec4 hook() { + vec4 result = mat4(-0.0005290672, 0.008682239, -0.007172968, 0.00055263913, -0.015364266, 0.0054185847, -0.0012926481, 0.019438036, 0.018646192, -0.0049380576, 0.0080864215, -0.010219066, -0.14132726, 0.017841946, -0.02984048, 0.027361581) * input_0(-1.0, -1.0); + result += mat4(0.0029242528, -0.007403481, 0.0048930384, -0.0049584624, -0.006217337, 0.010603427, -0.028345928, -0.016036019, -0.0002639996, 0.011045326, -0.018933477, -0.0036380745, -0.0070602037, 0.052777115, -0.010571301, 0.04076247) * input_0(-1.0, 0.0); + result += mat4(-0.006070135, -0.0012218776, 0.0050640805, 0.010157687, 0.024524134, -0.01494973, 0.036901277, -0.0028084635, -0.010723546, -0.008379216, 0.0029880838, 0.015588923, 0.013700158, 0.046047244, -0.117701195, 0.026823407) * input_0(-1.0, 1.0); + result += mat4(-0.0060717887, -0.007840586, -0.00019937134, -0.0024012239, 0.006276249, -0.008215001, -0.02284174, -0.031438775, 0.0016002723, -0.00608426, -0.0062702075, 0.0150264045, -0.044263445, -0.12125225, -0.011646566, -0.030653715) * input_0(0.0, -1.0); + result += mat4(0.003191042, 0.0062185316, 0.007744175, 0.0046516876, -0.024775162, 0.004943837, 0.038088094, 0.007691358, -0.009136764, 0.01258006, 0.015197456, -0.034105923, 0.21096419, 0.19549003, 0.26078612, 0.2128014) * input_0(0.0, 0.0); + result += mat4(0.00066325115, 0.0034742674, -0.0076310104, -0.008500944, 0.0037305418, 0.0008010718, -0.013092714, 0.022369044, 0.00990676, 0.0023258694, -0.009101218, 0.014131038, 0.030122343, 0.035434447, 0.008533451, -0.005293883) * input_0(0.0, 1.0); + result += mat4(0.007851791, 0.00068842166, 0.008916279, 0.0042098304, -0.004096104, -0.0077510816, 0.01865833, 0.017115312, -0.0111595625, 0.0073367087, 0.005737543, -0.008644267, -0.06397433, -0.1394835, 0.012276082, 0.0012855482) * input_0(1.0, -1.0); + result += mat4(0.0004932199, -0.005212697, -0.014737233, 0.0011411979, 0.015615946, 0.01035685, -0.011566941, 0.0043625003, 0.00801708, -0.020823782, 0.017837439, 0.025451433, -0.033565845, -0.085411794, -0.06207036, -0.06640197) * input_0(1.0, 0.0); + result += mat4(-0.004839844, 0.0058029094, 0.005944737, -0.0026450213, -0.0068270448, -0.002589738, -0.013700251, -0.018808704, -0.008246235, 0.0112528615, -0.016877336, -0.017024586, 0.0116086835, -0.014087585, -0.04934072, -0.18910947) * input_0(1.0, 1.0); + result += mat4(-0.0115928175, -0.0017168887, -0.0032007142, -0.005297188, -0.0094533255, -0.014195467, -0.026727095, 2.6445417e-05, -0.029103307, 0.0098167965, -0.008359453, 0.0052984087, -0.005170164, -0.013211898, 0.00020477858, -0.0008680322) * input_1(-1.0, -1.0); + result += mat4(0.0048851147, 0.011259377, 0.0055422788, 0.0034326816, 0.01738159, 0.004191405, 0.03248386, 0.0061162557, 0.017728938, -0.0071378644, -0.017868284, 0.009028455, -0.001450199, 0.009246138, 0.0004473515, -0.005797772) * input_1(-1.0, 0.0); + result += mat4(-0.0060230535, -0.012156183, 0.017381523, 0.0031112353, -0.0051341155, 0.009414956, -0.011902581, -0.008824766, -0.002759393, -0.000986172, 0.042798083, -0.0055056643, 0.0014014326, 0.017870398, 0.003925962, -0.0047691124) * input_1(-1.0, 1.0); + result += mat4(0.008170984, -0.026346091, 0.0040931604, 0.009673324, 0.014721026, -0.00054071966, 0.0131681515, 0.010412275, 0.01985195, 0.05159474, -0.0050098724, -0.0035525716, 0.018174982, 0.013218723, 0.0015525932, 0.0011362766) * input_1(0.0, -1.0); + result += mat4(0.022504285, 0.00085667503, -0.018575205, -0.022767873, -0.015529196, 0.010670563, -0.020748347, -0.02253407, -0.0054205363, -0.027527526, 0.0045827725, -0.031155633, 0.007836547, -0.008189013, -0.004229431, 0.008538927) * input_1(0.0, 0.0); + result += mat4(-0.013212582, 0.024945289, -0.009801387, 0.012223014, 0.0072522466, -0.011130343, 0.006198768, 0.010632424, -0.0023152602, -0.011749293, -0.012156925, 0.024187678, -0.023252541, -0.011982965, -0.003924958, -0.0024507383) * input_1(0.0, 1.0); + result += mat4(0.012327577, 0.015085802, -0.010956347, 0.0077537377, -0.0067051253, 0.011806838, 0.010770737, -0.0071157333, -0.0035259256, -0.04572794, -0.0009957486, 0.004771714, 0.00266844, -0.01647926, 0.011516328, -0.012454715) * input_1(1.0, -1.0); + result += mat4(-0.026151404, -0.009655581, 0.00623493, 0.030544426, -0.00089275744, -0.015000589, -0.002144355, 0.013024082, 0.0048777503, 0.016528768, 0.02014204, 0.020164121, -0.017337203, 0.006608888, -0.0018825444, -0.0005706033) * input_1(1.0, 0.0); + result += mat4(0.010553049, -0.0020937256, 0.009820446, -0.041365974, -0.003461733, 0.006026044, 0.00078129553, -0.00080759125, -0.0015032974, 0.012863919, -0.023414398, -0.023853032, 0.01658103, 0.0050922483, -0.0063840672, 0.013274041) * input_1(1.0, 1.0); + result += mat4(-0.00905341, -0.019966649, 0.01958305, 0.0069465376, 0.015932137, -0.029923914, 0.0093160095, 0.011483139, -0.007262996, -0.024942061, -0.009783761, 0.014911559, 0.010296031, 0.018965269, -0.028799452, 0.027360499) * input_2(-1.0, -1.0); + result += mat4(0.025618069, 0.0682887, 0.021005342, 0.0050213714, 0.037406653, -0.12979372, 0.020261906, -0.08925259, -0.0036656768, -0.016180288, -0.011647117, -0.0039660437, -0.048977207, 0.07965945, -0.022587435, 0.049847648) * input_2(-1.0, 0.0); + result += mat4(-0.015582696, -0.027666435, -0.04034399, -0.03405182, 0.023904003, 0.020444768, 0.044559408, -0.014585123, 0.0012710553, 0.02126543, 0.01610348, 0.0017351406, 0.016090011, 0.023966832, 0.00027406853, 0.03840295) * input_2(-1.0, 1.0); + result += mat4(-0.049684495, 0.0012939669, 0.079924956, 0.12328228, -0.001407013, 0.021794423, -0.02862456, 0.003782762, -0.0036647737, -0.0013125926, -0.006482859, 0.011087673, 0.05575159, -0.035467565, -0.038037334, -0.047057435) * input_2(0.0, -1.0); + result += mat4(0.0028267966, -0.04436452, -0.024424998, -0.059480958, 0.14185688, 0.09707144, 0.14974935, 0.05267279, -0.0027301994, 0.03647953, 0.027789319, -0.016684307, 0.12149522, -0.17506006, 0.16136149, -0.018159028) * input_2(0.0, 0.0); + result += mat4(0.048129253, 0.037055656, -0.050263364, -0.04898124, 0.0097750705, 0.009677877, 0.04379349, -0.06936877, -0.004758218, -0.026235245, -0.0017477897, 0.00022477843, 0.006044487, -0.0139768515, 0.092046075, -0.03911659) * input_2(0.0, 1.0); + result += mat4(-0.0054069567, -0.049624614, 0.01788596, 0.040676832, -0.024105355, 0.0066121463, -0.015364461, -0.03678826, 0.010543097, 0.037739612, -0.003487633, -0.0004255394, -0.00023157324, 0.09574391, -0.0067548165, 0.011674692) * input_2(1.0, -1.0); + result += mat4(0.036065377, 0.019655555, -0.0046592504, -0.025660982, -0.17105259, -0.010309336, -0.16568711, 0.035469647, -0.0028834124, -0.021355858, -0.011735342, -0.00022508275, -0.113779545, 0.01946353, -0.10165879, -0.009974024) * input_2(1.0, 0.0); + result += mat4(-0.020165903, 0.0029607913, 0.0007997273, -0.016458632, -0.03456371, 0.0031365855, -0.06133015, 0.10428261, 0.015932208, -0.0032379217, -0.002928176, -0.0119417, -0.040440157, -0.021262834, -0.048595812, -0.016944839) * input_2(1.0, 1.0); + result += mat4(-0.01350015, -5.7935307e-05, -0.0016963154, -0.005458568, 0.10626139, -0.013340898, 0.015309906, -0.03128296, -0.007977423, -0.0015477487, 0.0014256667, 0.009150434, -0.0024388125, -0.00054603216, 0.005404484, 0.01220673) * input_3(-1.0, -1.0); + result += mat4(-0.029843597, 0.0115340855, -0.015088752, -0.014717087, 0.21628174, 0.08222484, 0.20240472, 0.18003152, 0.007126584, -0.0019387068, 0.0063609695, -0.009178185, -0.012379817, -0.009263448, -0.0013519011, -0.00040281023) * input_3(-1.0, 0.0); + result += mat4(-0.0019290199, -0.008572962, -0.016299497, -0.01786061, 0.032412868, 0.044163484, 0.13049135, 0.041510355, 0.0020241512, -0.0074919006, -0.014901647, 0.014209776, 0.010188563, -0.013113905, 0.0029743873, 0.008906242) * input_3(-1.0, 1.0); + result += mat4(0.020202033, 0.0065253302, 0.00581703, -0.006008811, 0.19377787, 0.22677946, 0.12722006, 0.15257005, 0.0021927406, 0.011852798, -0.0011560102, 0.0037909965, 0.016047888, -0.01502144, -0.0073972205, -0.008982558) * input_3(0.0, -1.0); + result += mat4(0.0065568015, -0.0054784934, -0.002053829, 0.0155803375, 0.15404192, 0.23891719, 0.20764066, 0.19906828, -0.0015005765, 0.0040447535, 0.0039696353, -0.007750943, 0.02059121, -0.007257164, -0.017847944, 0.01965671) * input_3(0.0, 0.0); + result += mat4(0.005811374, 0.006117471, -0.0009818765, 0.0083911205, 0.21505237, 0.16349943, 0.22122493, 0.114537045, 0.0044821543, -0.0028474925, -0.0042808345, -0.005807237, -0.00919723, 0.0040935054, -0.0024087057, 0.002491676) * input_3(0.0, 1.0); + result += mat4(0.0096903145, 0.0016592445, 0.010024554, 0.011757014, 0.10130371, 0.18164684, -0.014929506, -0.028217094, 0.013577333, -0.013060942, -0.00357957, -0.008799417, -0.012462951, 0.01279559, 0.0054829894, -0.0013406932) * input_3(1.0, -1.0); + result += mat4(0.00058220176, 0.017475355, 0.0016599827, 0.022664987, -0.024530103, 0.040680595, 0.061173845, 0.16703047, -0.013958642, 0.005935337, -0.0050028954, 0.011040158, -0.0049232836, 0.012127471, 0.023744278, -0.027382268) * input_3(1.0, 0.0); + result += mat4(0.0018034054, -0.0035660418, -0.004981512, -0.01148439, -0.0001254819, 0.037578367, 0.037785854, 0.20114687, -0.0028419069, 0.005851449, 0.01732598, -0.003507347, -0.003070422, 0.015235289, -0.010662747, -0.00394841) * input_3(1.0, 1.0); + result += mat4(0.012681012, -0.0012065177, -0.020750277, 0.003479688, -0.0055289804, 0.0208856, -0.000562111, -0.0065966463, 0.019293947, 0.009876957, -0.00082923356, 0.008916868, 0.025108434, -0.0017470472, 0.0013383098, -0.0011626619) * input_4(-1.0, -1.0); + result += mat4(-0.0057180338, -0.00209357, 0.012915475, -0.007610611, -0.00632938, -0.010661316, -0.0063712075, -0.00855838, -0.021833291, -0.009524908, -0.0065048905, -0.016200654, -0.020719437, -0.021584079, -0.0024877216, 0.015222322) * input_4(-1.0, 0.0); + result += mat4(0.0043086247, 0.010441726, -0.002517458, 0.00088726013, 0.019213976, -0.0007397181, -0.0002915097, 0.0070228376, 0.0067606336, 0.0054562245, 0.0034623959, 0.00575775, 0.010050829, 0.016542125, -0.0038695578, -0.0023462977) * input_4(-1.0, 1.0); + result += mat4(0.010249948, 0.0017910337, -0.015968947, 0.018510537, 0.008333434, -0.015446142, -0.005568802, 0.017813206, -0.02761018, -0.001914343, 0.004321517, -0.020254357, -0.011805197, -0.0083144205, 0.005532311, 0.0020977135) * input_4(0.0, -1.0); + result += mat4(-0.006524093, -0.01057495, 0.03138246, -0.021403927, -0.0018783674, 0.0147627415, 0.004716184, 0.0015244295, 0.048582673, -0.0059857387, -0.030410282, 0.029592376, 0.0028824415, 0.014740801, 0.007912573, -0.032777876) * input_4(0.0, 0.0); + result += mat4(-0.012777204, 0.005606167, -0.0031101822, 0.01131966, -0.017698906, -0.0077287946, 0.005565268, -0.016242305, -0.0152790565, 0.0067833927, 0.017974094, -0.009203603, 0.0004458323, 0.0021791272, -0.0142613975, 0.023509312) * input_4(0.0, 1.0); + result += mat4(-0.009569025, -0.013327925, -0.009006646, 0.015755834, -0.00825931, -0.0014635733, 0.0023912694, -0.0105898045, 0.012166409, -0.007717028, -0.0015886184, 0.015410189, 0.012017388, -0.0033227152, 0.004611461, -0.012049592) * input_4(1.0, -1.0); + result += mat4(0.01213523, 0.014283831, 0.0077578234, -0.029640455, 0.0041383314, -0.005415387, -2.2099324e-05, 0.007077015, -0.023926817, 0.007440917, 0.03301765, -0.009315014, 0.005465303, 0.018295227, -0.0011125286, 0.023709098) * input_4(1.0, 0.0); + result += mat4(-0.0052024904, -0.0031992893, 0.0037223594, 0.0124294525, 0.004812383, 0.0012035677, -0.003870958, 0.0039437, 0.0017320431, -0.0061397715, -0.017861169, -0.0037893015, -0.01843281, -0.01589746, -0.00061815407, -0.021350963) * input_4(1.0, 1.0); + result += mat4(0.016976, -0.020781372, -0.0056952434, -0.007619025, -0.004904623, -0.00011210068, 0.0015698874, -0.004174703, -0.01027582, 0.032340843, 0.029151574, 0.0136033455, 0.026965452, 0.0068686106, -0.017023113, 0.0043191356) * input_5(-1.0, -1.0); + result += mat4(0.0321967, -0.015976317, -0.045443144, 0.025885265, 0.0030796162, -0.0077119353, 0.0062130583, 0.020162899, 0.025463143, -0.019716177, -0.03086146, 0.0066470946, -0.018554045, 0.017081657, 0.0012208733, 0.020769723) * input_5(-1.0, 0.0); + result += mat4(-0.009140058, 0.01335149, 0.011241203, 0.004142845, -0.002771678, -0.0029395164, -0.009469566, -0.008292158, -0.015562702, -0.0037684646, 0.0023835688, -0.0231727, -0.014972555, -0.029234692, 0.015623572, -0.023594555) * input_5(-1.0, 1.0); + result += mat4(0.009858972, 0.005229909, -0.011335683, 0.01064159, 0.0059281164, 0.0031976395, -0.0077635795, 0.0026462507, 0.0029474243, -0.036527015, -0.019587753, -0.0011772857, -0.012637993, 0.00671683, 0.007309821, 0.010058989) * input_5(0.0, -1.0); + result += mat4(-0.015781661, -0.0026711745, 0.014037646, 0.005825622, -0.024649605, 0.025124183, 0.0135536725, -0.027943447, -0.015712595, 0.03263586, 0.034678496, -0.0061306637, 0.014686597, 0.0040920656, 0.01150805, -0.014295035) * input_5(0.0, 0.0); + result += mat4(-0.013725477, -0.0056053447, 0.0049027046, -0.01816228, 0.006254682, -0.0073138517, 0.010054176, 0.005057725, 0.017892634, -0.008008264, -0.020352995, 0.012328711, 0.00044051302, -5.3687872e-06, -0.018474683, 0.0006155871) * input_5(0.0, 1.0); + result += mat4(-0.021783732, 0.001987864, 0.012813344, 0.0017785128, 0.006013163, -0.004305525, 0.0009712307, 0.003798746, 0.0062982235, 0.00688825, -0.009606728, -0.0074339802, -0.008888289, -0.009735719, 0.0046836995, -0.013876669) * input_5(1.0, -1.0); + result += mat4(-0.015210112, 0.022521766, 0.005669307, -0.00052370504, -0.010398323, 0.011920613, -0.0012880225, -0.0041636736, -0.010985219, -0.0107009765, 0.0042825514, -0.010785438, -0.006934829, -0.016048053, -0.022493212, 0.001987578) * input_5(1.0, 0.0); + result += mat4(0.014527493, 0.00063720724, 0.015206323, -0.023383664, 0.0048734373, 0.00020961251, -0.0017071095, -0.0038119457, -0.0002770366, 0.010775349, 0.009962154, 0.017050672, 0.019703435, 0.025053067, 0.014064327, 0.0133901285) * input_5(1.0, 1.0); + result += mat4(0.021519788, 0.01834882, 0.011530863, 0.018556643, -6.020238e-05, -0.0060630194, 0.00960742, -0.007332743, 0.037915852, 0.038500458, -0.0071727308, 0.02975078, 0.02174412, 0.0121616395, 0.034717266, -0.008185978) * input_6(-1.0, -1.0); + result += mat4(-0.0072959587, -0.026694365, 0.007235331, -0.021872506, -0.011039813, 0.004821001, -0.0077307206, 0.008171875, 0.074524775, 0.121200114, 0.08426564, 0.20290448, 0.014183431, 0.037942745, -0.014347633, 0.0565731) * input_6(-1.0, 0.0); + result += mat4(-0.004324743, 0.002985276, -0.022093855, 0.008529274, 0.013591306, 0.0026674154, 0.0011493346, -0.007132035, 0.11546898, 0.120050855, 0.11486619, 0.13257967, -0.00054871675, 0.006851076, 0.019231787, -0.0023779185) * input_6(-1.0, 1.0); + result += mat4(0.0019293824, 0.008360437, -0.022070754, -0.028452247, -0.0012165164, 0.0060473755, -0.006393039, -0.003429901, -0.1245539, -0.10445056, 0.020656534, 0.015514163, 0.08331659, 0.050540797, 0.14104605, 0.11299013) * input_6(0.0, -1.0); + result += mat4(0.0059080627, 0.0033534565, 0.0066643176, -0.013432332, 0.0113015985, 0.00015052668, 0.0052906554, 0.00012373613, -0.21068299, -0.18475424, -0.37130603, -0.3614552, -0.19698133, -0.15819226, -0.14604814, -0.13845658) * input_6(0.0, 0.0); + result += mat4(-0.015977684, -0.013293619, 0.016795134, 0.04324235, -0.0101825325, -0.008726423, -0.0010967292, 0.007018598, 0.25294706, 0.21738096, 0.206175, 0.028984943, 0.015859852, 0.017865676, -0.0021207752, 0.014034255) * input_6(0.0, 1.0); + result += mat4(-0.02964454, -0.02205722, 0.020236505, 0.0055659837, 0.0017386029, -0.0018821565, -0.0035994214, 0.012438534, -0.008002315, -0.028151315, -0.0011125418, 0.0067585767, 0.028936684, 0.07314298, 0.009729006, 0.014204666) * input_6(1.0, -1.0); + result += mat4(0.003244664, 0.020013956, -0.016436344, 0.03833169, 0.005574605, -0.012196829, -0.0015045002, -0.0050816806, -0.1451263, -0.12743326, -0.1054706, -0.08776425, -0.0075382995, -0.033693004, -0.03215869, -0.0050966498) * input_6(1.0, 0.0); + result += mat4(0.023771727, 0.008474527, -0.0028393012, -0.052323073, -0.0106170885, 0.013821145, 0.0066430173, -0.0055054273, 0.018269517, 0.04656355, -0.022100128, 0.044581972, -0.023906766, -0.016878944, 0.004438853, 0.027979638) * input_6(1.0, 1.0); + result += mat4(0.007351863, -0.0016566073, -0.012676105, -0.014872946, 0.020076228, -0.007986675, -0.0087281335, 0.009283302, 0.04867084, -0.011828243, -0.015990354, -0.0066566938, 0.0053265905, 0.0031643852, -0.0028352658, -0.0049766516) * input_7(-1.0, -1.0); + result += mat4(0.009552637, 0.013055036, 0.007073702, -0.012303995, 0.16040283, -0.020481292, 0.070902936, -0.1009772, 0.024216475, -0.0051671923, 0.07733596, -0.039047245, -0.006595722, -4.0306168e-05, -0.0016593224, 0.0035495867) * input_7(-1.0, 0.0); + result += mat4(-0.0070906207, 0.0031617018, -0.001483508, -0.0014344354, -0.09979225, -0.08422159, 0.050864387, -0.050991423, 0.031242361, 0.013208905, 0.008336514, -0.0058304723, -0.00091593876, 0.00033874295, 0.009594082, 0.0031786181) * input_7(-1.0, 1.0); + result += mat4(-0.015579655, -0.032253433, 0.016686479, 0.008385931, 0.11321325, 0.07533738, 0.03528678, 0.060284298, 0.01180261, 0.037045583, -0.04647487, -0.04253637, 0.00746144, -6.848844e-05, -0.0009090469, -0.006272973) * input_7(0.0, -1.0); + result += mat4(-0.0061550643, -0.005466384, -0.014170943, 0.02760223, 0.37528118, 0.461584, 0.22125736, 0.42179236, -0.2145708, -0.03986143, 0.03768903, 0.20107527, 0.008971613, 0.0109699555, -0.0035950958, 0.0030756749) * input_7(0.0, 0.0); + result += mat4(0.0013258819, -0.018897466, 0.019358255, 0.0106830355, -0.21884598, -0.27052805, 0.0060374886, -0.018340284, 0.04215211, 0.032296643, -0.06372204, -0.051916137, 0.009269782, -0.0035168272, -0.01680118, -0.007573975) * input_7(0.0, 1.0); + result += mat4(0.017142018, 0.0045828726, -0.010500295, 0.014746363, -0.049401168, 0.008474932, -0.0020257605, -0.011729814, 0.014354018, 0.021649016, -0.015533202, 0.0026933153, -0.0024518848, -0.0056007584, 0.0023159303, 0.013584352) * input_7(1.0, -1.0); + result += mat4(-0.015802369, 0.013517823, 0.0020836473, -0.01788178, -0.19763486, -0.022353593, -0.23516068, -0.17272219, -0.0014204415, -0.07765815, 0.0060033887, -0.02045103, -0.010751424, 0.0007329739, 0.006914228, -0.009526807) * input_7(1.0, 0.0); + result += mat4(0.012841238, 0.01987222, -0.0048346384, -0.009712644, -0.15772997, -0.14214385, -0.17418885, -0.10760677, 0.03680443, 0.030025331, 0.013969166, -0.032035217, 0.001923658, -0.0034901316, 0.0065347156, 0.006737697) * input_7(1.0, 1.0); + result += vec4(0.1236271, 0.1179189, 0.12833944, 0.1232868); + return result; +} + +//!PARAM ar_strength +//!TYPE float +//!MINIMUM 0.0 +//!MAXIMUM 1.0 +0.25 + +//!DESC ArtCNN C4F32 (Pixel-Shuffle) +//!HOOK LUMA +//!BIND LUMA +//!BIND conv2d_6_tf +//!WIDTH LUMA.w 2 * +//!HEIGHT LUMA.h 2 * +//!COMPONENTS 4 +//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * + +vec4 hook() { + vec4 output_pix = vec4(0.0, 0.0, 0.0, 1.0); + vec2 f0 = fract(conv2d_6_tf_pos * conv2d_6_tf_size); + ivec2 i0 = ivec2(f0 * vec2(2.0)); + output_pix.x = conv2d_6_tf_tex((vec2(0.5) - f0) * conv2d_6_tf_pt + conv2d_6_tf_pos)[i0.y * 2 + i0.x]; + + vec2 pp = LUMA_pos * LUMA_size - vec2(0.5); + vec2 fp = floor(pp); + + vec2 pix_idx[4] = {{0.5, 0.5}, {1.5, 0.5}, + {0.5, 1.5}, {1.5, 1.5}}; + + float luma_pixels[4]; + + for (int i = 0; i < 4; i++) { + luma_pixels[i] = LUMA_tex(vec2((fp + pix_idx[i]) * LUMA_pt)).x; + } + + float luma_min = min(min(min(luma_pixels[0], luma_pixels[1]), luma_pixels[2]), luma_pixels[3]); + float luma_max = max(max(max(luma_pixels[0], luma_pixels[1]), luma_pixels[2]), luma_pixels[3]); + + output_pix.x = mix(output_pix.x, clamp(output_pix.x, luma_min, luma_max), ar_strength); + return clamp(output_pix, 0.0, 1.0); +} diff --git a/.config/mpv/scripts/shaders/adaptive-sharpen.glsl b/.config/mpv/scripts/shaders/adaptive-sharpen.glsl new file mode 100644 index 0000000..f776fae --- /dev/null +++ b/.config/mpv/scripts/shaders/adaptive-sharpen.glsl @@ -0,0 +1,233 @@ +// Revised 06/19/22 +// https://gist.github.com/igv/8a77e4eb8276753b54bb94c1c50c317e +// +// Copyright (c) 2015-2021, bacondither +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// 1. Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer +// in this position and unchanged. +// 2. Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in the +// documentation and/or other materials provided with the distribution. +// +// THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR +// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Adaptive sharpen - version 2021-10-17 +// Tuned for use post-resize + +//!HOOK OUTPUT +//!BIND HOOKED +//!DESC adaptive-sharpen + +//--------------------------------------- Settings ------------------------------------------------ + +#define curve_height 1.0 // Main control of sharpening strength [>0] + // 0.3 <-> 2.0 is a reasonable range of values + +#define overshoot_ctrl false // Allow for higher overshoot if the current edge pixel + // is surrounded by similar edge pixels + +// Defined values under this row are "optimal" DO NOT CHANGE IF YOU DO NOT KNOW WHAT YOU ARE DOING! + +#define curveslope 0.5 // Sharpening curve slope, high edge values + +#define L_compr_low 0.167 // Light compression, default (0.167=~6x) +#define L_compr_high 0.334 // Light compression, surrounded by edges (0.334=~3x) + +#define D_compr_low 0.250 // Dark compression, default (0.250=4x) +#define D_compr_high 0.500 // Dark compression, surrounded by edges (0.500=2x) + +#define scale_lim 0.1 // Abs max change before compression [>0.01] +#define scale_cs 0.056 // Compression slope above scale_lim + +#define pm_p 1.0 // Power mean p-value [>0-1.0] +//------------------------------------------------------------------------------------------------- + +#define max4(a,b,c,d) ( max(max(a, b), max(c, d)) ) + +// Soft if, fast linear approx +#define soft_if(a,b,c) ( sat((a + b + c + 0.056/2.5)/(maxedge + 0.03/2.5) - 0.85) ) + +// Soft limit, modified tanh approx +#define soft_lim(v,s) ( sat(abs(v/s)*(27.0 + pow(v/s, 2.0))/(27.0 + 9.0*pow(v/s, 2.0)))*s ) + +// Weighted power mean +#define wpmean(a,b,w) ( pow(w*pow(abs(a), pm_p) + abs(1.0-w)*pow(abs(b), pm_p), (1.0/pm_p)) ) + +// Get destination pixel values +#define get(x,y) ( HOOKED_texOff(vec2(x, y)).rgb ) +#define sat(x) ( clamp(x, 0.0, 1.0) ) +#define dxdy(val) ( length(fwidth(val)) ) // =~1/2.5 hq edge without c_comp + +#ifdef LUMA_tex +#define CtL(RGB) RGB.x +#else +#define CtL(RGB) ( sqrt(dot(sat(RGB)*sat(RGB), vec3(0.2126, 0.7152, 0.0722))) ) +#endif + +#define b_diff(pix) ( (blur-luma[pix])*(blur-luma[pix]) ) + +vec4 hook() { + + // [ c22 ] + // [ c24, c9, c23 ] + // [ c21, c1, c2, c3, c18 ] + // [ c19, c10, c4, c0, c5, c11, c16 ] + // [ c20, c6, c7, c8, c17 ] + // [ c15, c12, c14 ] + // [ c13 ] + vec3 c[25] = vec3[](get( 0, 0), get(-1,-1), get( 0,-1), get( 1,-1), get(-1, 0), + get( 1, 0), get(-1, 1), get( 0, 1), get( 1, 1), get( 0,-2), + get(-2, 0), get( 2, 0), get( 0, 2), get( 0, 3), get( 1, 2), + get(-1, 2), get( 3, 0), get( 2, 1), get( 2,-1), get(-3, 0), + get(-2, 1), get(-2,-1), get( 0,-3), get( 1,-2), get(-1,-2)); + + float e[13] = float[](dxdy(c[0]), dxdy(c[1]), dxdy(c[2]), dxdy(c[3]), dxdy(c[4]), + dxdy(c[5]), dxdy(c[6]), dxdy(c[7]), dxdy(c[8]), dxdy(c[9]), + dxdy(c[10]), dxdy(c[11]), dxdy(c[12])); + + // RGB to luma + float luma[25] = float[](CtL(c[0]), CtL(c[1]), CtL(c[2]), CtL(c[3]), CtL(c[4]), CtL(c[5]), CtL(c[6]), + CtL(c[7]), CtL(c[8]), CtL(c[9]), CtL(c[10]), CtL(c[11]), CtL(c[12]), + CtL(c[13]), CtL(c[14]), CtL(c[15]), CtL(c[16]), CtL(c[17]), CtL(c[18]), + CtL(c[19]), CtL(c[20]), CtL(c[21]), CtL(c[22]), CtL(c[23]), CtL(c[24])); + + float c0_Y = luma[0]; + + // Blur, gauss 3x3 + float blur = (2.0 * (luma[2]+luma[4]+luma[5]+luma[7]) + (luma[1]+luma[3]+luma[6]+luma[8]) + 4.0 * luma[0]) / 16.0; + + // Contrast compression, center = 0.5 + float c_comp = sat(0.266666681f + 0.9*exp2(blur * blur * -7.4)); + + // Edge detection + // Relative matrix weights + // [ 1 ] + // [ 4, 5, 4 ] + // [ 1, 5, 6, 5, 1 ] + // [ 4, 5, 4 ] + // [ 1 ] + float edge = ( 1.38*b_diff(0) + + 1.15*(b_diff(2) + b_diff(4) + b_diff(5) + b_diff(7)) + + 0.92*(b_diff(1) + b_diff(3) + b_diff(6) + b_diff(8)) + + 0.23*(b_diff(9) + b_diff(10) + b_diff(11) + b_diff(12)) ) * c_comp; + + vec2 cs = vec2(L_compr_low, D_compr_low); + + if (overshoot_ctrl) { + float maxedge = max4( max4(e[1],e[2],e[3],e[4]), max4(e[5],e[6],e[7],e[8]), + max4(e[9],e[10],e[11],e[12]), e[0] ); + + // [ x ] + // [ z, x, w ] + // [ z, z, x, w, w ] + // [ y, y, y, 0, y, y, y ] + // [ w, w, x, z, z ] + // [ w, x, z ] + // [ x ] + float sbe = soft_if(e[2],e[9], dxdy(c[22]))*soft_if(e[7],e[12],dxdy(c[13])) // x dir + + soft_if(e[4],e[10],dxdy(c[19]))*soft_if(e[5],e[11],dxdy(c[16])) // y dir + + soft_if(e[1],dxdy(c[24]),dxdy(c[21]))*soft_if(e[8],dxdy(c[14]),dxdy(c[17])) // z dir + + soft_if(e[3],dxdy(c[23]),dxdy(c[18]))*soft_if(e[6],dxdy(c[20]),dxdy(c[15])); // w dir + + cs = mix(cs, vec2(L_compr_high, D_compr_high), sat(2.4002*sbe - 2.282)); + } + + // Precalculated default squared kernel weights + const vec3 w1 = vec3(0.5, 1.0, 1.41421356237); // 0.25, 1.0, 2.0 + const vec3 w2 = vec3(0.86602540378, 1.0, 0.54772255751); // 0.75, 1.0, 0.3 + + // Transition to a concave kernel if the center edge val is above thr + vec3 dW = pow(mix( w1, w2, sat(2.4*edge - 0.82)), vec3(2.0)); + + // Use lower weights for pixels in a more active area relative to center pixel area + // This results in narrower and less visible overshoots around sharp edges + float modif_e0 = 3.0 * e[0] + 0.02/2.5; + + float weights[12] = float[](( min(modif_e0/e[1], dW.y) ), + ( dW.x ), + ( min(modif_e0/e[3], dW.y) ), + ( dW.x ), + ( dW.x ), + ( min(modif_e0/e[6], dW.y) ), + ( dW.x ), + ( min(modif_e0/e[8], dW.y) ), + ( min(modif_e0/e[9], dW.z) ), + ( min(modif_e0/e[10], dW.z) ), + ( min(modif_e0/e[11], dW.z) ), + ( min(modif_e0/e[12], dW.z) )); + + weights[0] = (max(max((weights[8] + weights[9])/4.0, weights[0]), 0.25) + weights[0])/2.0; + weights[2] = (max(max((weights[8] + weights[10])/4.0, weights[2]), 0.25) + weights[2])/2.0; + weights[5] = (max(max((weights[9] + weights[11])/4.0, weights[5]), 0.25) + weights[5])/2.0; + weights[7] = (max(max((weights[10] + weights[11])/4.0, weights[7]), 0.25) + weights[7])/2.0; + + // Calculate the negative part of the laplace kernel and the low threshold weight + float lowthrsum = 0.0; + float weightsum = 0.0; + float neg_laplace = 0.0; + + for (int pix = 0; pix < 12; ++pix) + { + float lowthr = sat((20.*4.5*c_comp*e[pix + 1] - 0.221)); + + neg_laplace += luma[pix+1] * luma[pix+1] * weights[pix] * lowthr; + weightsum += weights[pix] * lowthr; + lowthrsum += lowthr / 12.0; + } + + neg_laplace = sqrt(neg_laplace / weightsum); + + // Compute sharpening magnitude function + float sharpen_val = curve_height/(curve_height*curveslope*edge + 0.625); + + // Calculate sharpening diff and scale + float sharpdiff = (c0_Y - neg_laplace)*(lowthrsum*sharpen_val + 0.01); + + // Calculate local near min & max, partial sort + float temp; + + for (int i1 = 0; i1 < 24; i1 += 2) + { + temp = luma[i1]; + luma[i1] = min(luma[i1], luma[i1+1]); + luma[i1+1] = max(temp, luma[i1+1]); + } + + for (int i2 = 24; i2 > 0; i2 -= 2) + { + temp = luma[0]; + luma[0] = min(luma[0], luma[i2]); + luma[i2] = max(temp, luma[i2]); + + temp = luma[24]; + luma[24] = max(luma[24], luma[i2-1]); + luma[i2-1] = min(temp, luma[i2-1]); + } + + float min_dist = min(abs(luma[24] - c0_Y), abs(c0_Y - luma[0])); + min_dist = min(min_dist, scale_lim*(1.0 - scale_cs) + min_dist*scale_cs); + + // Soft limited anti-ringing with tanh, wpmean to control compression slope + sharpdiff = wpmean(max(sharpdiff, 0.0), soft_lim( max(sharpdiff, 0.0), min_dist ), cs.x ) + - wpmean(min(sharpdiff, 0.0), soft_lim( min(sharpdiff, 0.0), min_dist ), cs.y ); + + float sharpdiff_lim = sat(c0_Y + sharpdiff) - c0_Y; + /*float satmul = (c0_Y + max(sharpdiff_lim*0.9, sharpdiff_lim)*0.3 + 0.03)/(c0_Y + 0.03); + vec3 res = c0_Y + sharpdiff_lim + (c[0] - c0_Y)*satmul; + */ + return vec4(sharpdiff_lim + c[0], HOOKED_texOff(0).a); +}