summaryrefslogtreecommitdiff
path: root/config/mpv/shaders/Anime4K_Restore_CNN_Light_M.glsl
diff options
context:
space:
mode:
Diffstat (limited to 'config/mpv/shaders/Anime4K_Restore_CNN_Light_M.glsl')
-rw-r--r--config/mpv/shaders/Anime4K_Restore_CNN_Light_M.glsl275
1 files changed, 275 insertions, 0 deletions
diff --git a/config/mpv/shaders/Anime4K_Restore_CNN_Light_M.glsl b/config/mpv/shaders/Anime4K_Restore_CNN_Light_M.glsl
new file mode 100644
index 0000000..fe8a166
--- /dev/null
+++ b/config/mpv/shaders/Anime4K_Restore_CNN_Light_M.glsl
@@ -0,0 +1,275 @@
+// 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-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x3
+//!HOOK MAIN
+//!BIND MAIN
+//!SAVE conv2d_tf
+//!WIDTH MAIN.w
+//!HEIGHT MAIN.h
+//!COMPONENTS 4
+#define go_0(x_off, y_off) (MAIN_texOff(vec2(x_off, y_off)))
+vec4 hook() {
+ vec4 result = mat4(-0.09709998, 0.17991322, -0.036683373, -0.032066066, -0.21948554, -0.063844875, 0.36619532, 0.30837518, 0.055405047, -0.0071294764, 0.080545194, 0.119062684, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, -1.0);
+ result += mat4(-0.037787594, -0.03952807, 0.10557879, 0.40262488, -0.17052671, 0.04158473, -0.122604266, 0.012176063, -0.10906717, 0.007542204, 0.052121036, -0.1251418, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, 0.0);
+ result += mat4(-0.07803277, 0.07055846, 0.00433389, 0.044240773, -0.45787147, -0.08468576, -0.27326742, -0.14203307, -0.107503824, -0.016588815, -0.020200841, -0.07443835, 0.0, 0.0, 0.0, 0.0) * go_0(-1.0, 1.0);
+ result += mat4(0.068800315, -0.2052895, 0.3867845, 0.12745382, 0.25083932, 0.016802998, 0.121021606, 0.19103573, -0.06598493, 0.08632577, 0.028708672, 0.009565671, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, -1.0);
+ result += mat4(0.35367677, -0.053451214, -0.35649762, -0.4661092, 0.20096229, 0.15684816, -0.48833102, -0.51248497, 0.19786645, -0.056842145, -0.50186646, 0.04110097, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, 0.0);
+ result += mat4(-0.1175278, -0.020173768, 0.044194657, -0.02657476, -0.12427749, 0.011114709, 0.425566, -0.42752287, -0.0846849, 0.015565299, 0.2598939, -0.068786405, 0.0, 0.0, 0.0, 0.0) * go_0(0.0, 1.0);
+ result += mat4(0.031009387, -0.49932784, 0.041454315, 0.07649908, -0.19120674, 0.08356587, 0.29435334, -0.0134079, 0.047049787, -0.08750151, 0.1285903, 0.06775757, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, -1.0);
+ result += mat4(-0.0728252, -0.17804736, 0.104218505, -0.1889987, 0.52637136, 0.010428257, 0.006047261, 0.067757174, -0.107639134, 0.08543306, 0.06780435, -0.0880498, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, 0.0);
+ result += mat4(-0.13521922, 0.17284626, -0.18072073, 0.059284758, -0.083602324, -0.053604826, 0.030447632, 0.06568615, 0.12331391, -0.027581286, -0.030349897, 0.046692863, 0.0, 0.0, 0.0, 0.0) * go_0(1.0, 1.0);
+ result += vec4(-0.05022612, 0.3896549, 0.056405354, -0.0802331);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x8
+//!HOOK MAIN
+//!BIND conv2d_tf
+//!SAVE conv2d_1_tf
+//!WIDTH conv2d_tf.w
+//!HEIGHT conv2d_tf.h
+//!COMPONENTS 4
+#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_tf_texOff(vec2(x_off, y_off))), 0.0))
+vec4 hook() {
+ vec4 result = mat4(-0.07106301, -0.109022714, 0.17634465, 0.104929455, 0.0691878, -0.07449295, -0.03284004, -0.23894098, 0.053605445, -0.0864185, 0.028510416, 0.06644521, -0.14358306, 0.23390263, 0.004019108, -0.24486752) * go_0(-1.0, -1.0);
+ result += mat4(-0.12265022, 0.20389713, -0.034846652, 0.0864939, -0.0072617736, -0.01246677, 0.06463848, 0.11492041, 0.13818675, -0.11381648, 0.117427886, 0.3457089, -0.0475576, 0.048688352, -0.049106292, 0.14172423) * go_0(-1.0, 0.0);
+ result += mat4(0.11451285, -0.08761258, -0.19160801, 0.052384745, -0.12807328, -0.012658553, -0.12793215, 0.31795773, 0.14830011, 0.0048496574, -0.0025811756, 0.07821052, -0.0465103, -0.0662331, 0.34832782, 0.0897812) * go_0(-1.0, 1.0);
+ result += mat4(0.21101987, -0.21197839, 0.18381841, 0.08183331, 0.12852196, -0.16937202, -0.05502151, -0.111239724, 0.1465015, 0.099055395, 0.1656377, 0.12575783, -0.094509214, -0.1924263, -0.62660545, 0.10928183) * go_0(0.0, -1.0);
+ result += mat4(0.40231335, -0.14812736, 0.3156157, -0.45809957, 0.08260446, 0.54668975, 0.29459107, 0.13806061, 0.02948111, -0.19029732, -0.14764029, 0.1048599, -0.38438222, 0.008674224, -0.09203484, -0.6314467) * go_0(0.0, 0.0);
+ result += mat4(-0.12068732, 0.16853248, -0.15250207, -0.34993175, -0.12893099, -0.28517574, -0.0043147053, -0.10054386, 0.16102342, -0.052441034, -0.0350969, -0.09676306, 0.19712912, -0.0470154, 0.092037424, 0.13185243) * go_0(0.0, 1.0);
+ result += mat4(-0.1397228, -0.022695424, -0.41523713, 0.24701627, -0.17900862, 0.16702354, -0.0642977, -0.017502043, -0.15936996, -0.035188694, -0.12205803, -0.048247457, 0.14359997, -0.068022765, -0.06902936, 0.10307144) * go_0(1.0, -1.0);
+ result += mat4(-0.01993575, -0.092246756, -0.48835853, -0.03605963, 0.18718164, -0.13172218, -0.123892814, 0.037284203, 0.057015978, 0.31006688, 0.07463552, 0.08102144, 0.38942882, 0.13773094, -0.15092209, 0.13735552) * go_0(1.0, 0.0);
+ result += mat4(-0.19775134, -0.03225049, 0.00964203, -0.20523529, 0.11306243, 0.10655219, 0.11049985, 0.009771184, 0.16152409, 0.024498368, 0.095191, -0.026358476, -0.03014831, 0.07661504, 0.094110034, 0.13093399) * go_0(1.0, 1.0);
+ result += mat4(0.11737078, 0.018844323, -0.12013737, -0.063765496, 0.048529066, -0.09280356, -0.24826503, -0.4629027, -0.119391344, 0.1590914, -0.17331989, 0.22313793, 0.1634309, -0.08644592, -0.01081882, 0.1361955) * go_1(-1.0, -1.0);
+ result += mat4(0.025425542, -0.043594237, -0.31101227, 0.13380487, 0.13624388, 0.21574984, -0.15038645, 0.5744972, -0.048237674, 0.27500567, -0.15219563, -0.19258781, 0.077609815, 0.017032558, 0.06592608, -0.123821974) * go_1(-1.0, 0.0);
+ result += mat4(-0.043407988, 0.0031165418, 0.03847366, 0.07882751, -0.24572605, -0.13669391, 0.7043344, 0.506161, -0.04981202, 0.04028537, -0.052646525, 0.16950652, 0.08023993, 0.041427456, -0.30964556, -0.15177035) * go_1(-1.0, 1.0);
+ result += mat4(-0.2097973, 0.4055574, 0.042477284, 0.08730677, -0.18602863, -0.07191009, -0.18819845, 0.069949895, -0.19060141, 0.06362849, -0.16135445, -0.17059065, 0.075185575, 0.040793914, 0.4171722, -0.005844296) * go_1(0.0, -1.0);
+ result += mat4(-0.1978394, 0.17348862, 0.00013661307, -0.034537368, -0.13668838, 0.30500183, 0.14152265, -0.033370823, 0.33000922, 0.4249162, -0.11071156, 0.7766173, 0.02973988, -0.19435878, 0.17642874, 0.18241726) * go_1(0.0, 0.0);
+ result += mat4(-0.035593044, -0.14777133, 0.27195564, -0.0983579, 0.025975078, 0.08743875, -0.119490735, -0.44978482, -0.04618282, -0.28454003, 0.040401425, -0.016276961, -0.28996783, 0.06533692, 0.057142098, -0.33113798) * go_1(0.0, 1.0);
+ result += mat4(0.013085453, 0.2771091, 0.25437734, 0.14159423, 0.19019252, -0.065199666, 0.09018957, 0.09005385, 0.0702677, 0.09789211, -0.09898252, 0.15424614, -0.0048328186, -0.15551662, 0.12719543, -0.010606667) * go_1(1.0, -1.0);
+ result += mat4(-0.07690734, 0.22266103, 0.21590742, 0.098618954, -0.041566074, -0.2466432, -0.07570071, -0.23278408, 0.039249934, -0.17816794, 0.15590529, 0.18152235, -0.27600402, -0.29088914, 0.14649656, -0.16827333) * go_1(1.0, 0.0);
+ result += mat4(0.15101463, 0.0631011, -0.04290432, -0.01117221, 0.086299576, -0.21204823, -0.34050676, -0.2792841, 0.35605514, -0.20951502, -0.0725899, 0.1327561, -0.29270756, -0.03198107, -0.3107267, -0.23377752) * go_1(1.0, 1.0);
+ result += vec4(-0.07256012, -0.013987753, -0.10089665, -0.04645479);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x8
+//!HOOK MAIN
+//!BIND conv2d_1_tf
+//!SAVE conv2d_2_tf
+//!WIDTH conv2d_1_tf.w
+//!HEIGHT conv2d_1_tf.h
+//!COMPONENTS 4
+#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_tf_texOff(vec2(x_off, y_off))), 0.0))
+vec4 hook() {
+ vec4 result = mat4(0.43073454, 0.29259518, 0.02670975, -0.6516657, 0.11059423, 0.2241261, -0.11521807, 0.028951766, -0.06474589, -0.16255803, 0.028715452, -0.058573123, 0.02395382, -0.054638773, -0.089213364, -0.011727899) * go_0(-1.0, -1.0);
+ result += mat4(-0.19867207, -0.07014852, 0.3275893, 0.004720377, -0.010513083, -0.16937262, 0.48988542, -0.34917814, -0.13709664, 0.13961747, -0.13968979, 0.26192752, -0.07907034, -0.0828234, -0.14106955, 0.19425565) * go_0(-1.0, 0.0);
+ result += mat4(-0.015139617, -0.025049128, -0.012052735, -0.061295882, -0.17898859, 0.05007766, 0.27305576, -0.03979439, -0.06403836, 0.056140747, 0.13635713, -0.10439373, -0.06930825, 0.05331053, 0.04819592, 0.022803074) * go_0(-1.0, 1.0);
+ result += mat4(-0.1373713, 0.3812494, 0.24039012, -0.17772225, -0.120928764, -0.008843026, -0.07321897, 0.042670477, -0.18042834, 0.12192152, -0.12483623, 0.22771999, -0.010945944, 0.090681486, 0.085704416, 0.18778944) * go_0(0.0, -1.0);
+ result += mat4(0.22348826, -0.04055612, 0.031981576, 0.20397244, -0.08771157, -0.3325481, 0.17063624, 0.010115784, 0.015501242, -0.056368425, -0.11084576, 0.30398795, 0.0040640794, 0.17310637, -0.3179272, 0.36237735) * go_0(0.0, 0.0);
+ result += mat4(0.3206778, -0.53087467, 0.07032445, -0.36624724, -0.16014266, -0.026966507, 0.60811317, 0.41324246, 0.10279535, -0.09550397, 0.2496701, -0.033651125, -0.16615233, 0.31660047, -0.106470585, 0.09834597) * go_0(0.0, 1.0);
+ result += mat4(0.13486348, 0.17608619, -0.059957933, -0.10195491, -0.055792477, -0.0142300585, -0.20539227, -0.08074659, 0.060855277, -0.15018594, 0.015727244, -0.15938923, 0.0029665364, -0.025436612, 0.082559854, 0.115477644) * go_0(1.0, -1.0);
+ result += mat4(0.16261092, 0.18641874, -0.12126823, -0.51797706, 0.0661485, 0.026543953, -0.01950142, -0.066284746, 0.18521117, 0.051515006, 0.013098103, 0.26902404, -0.43118453, -0.21114086, -0.115325816, -0.01583113) * go_0(1.0, 0.0);
+ result += mat4(-0.0267878, 0.02634007, 0.013347007, 0.0010958986, 0.08393327, 0.04962131, 0.045859173, -0.08516853, 0.13506079, -0.026673293, -0.022106972, -0.170829, -0.0888859, 0.06530107, -0.059383996, 0.33419085) * go_0(1.0, 1.0);
+ result += mat4(0.11330576, -0.2835718, 0.19225326, -0.0812135, -0.013878049, 0.022633083, 0.109749846, -0.11440219, -0.0012186517, 0.09993214, 0.057527237, -0.17304467, 0.08531428, -0.09438308, 0.047440667, -0.03937764) * go_1(-1.0, -1.0);
+ result += mat4(0.20007686, -0.22766681, 0.07008629, -0.26547617, -0.043585848, -0.06609152, -0.536322, 0.24814901, 0.057777114, 0.16878702, 0.20360905, -0.13559179, 0.0007638883, 0.11424397, 0.008691246, -0.030681133) * go_1(-1.0, 0.0);
+ result += mat4(0.0016942607, 0.022295125, 0.014280363, 0.08904752, -0.111990206, -0.29128718, -0.14091033, 0.03673595, -0.055010963, -0.08402448, 0.02711375, 0.08910218, 0.05918231, 0.03991422, 0.028205158, -0.028013019) * go_1(-1.0, 1.0);
+ result += mat4(0.08369865, -0.3934298, 0.013801817, -0.2609461, -0.049536996, 0.2562202, 0.20897968, -0.03512693, 0.1167605, 0.19976471, 0.22190018, -0.17219828, 0.07193709, -0.087979764, -0.023434335, -0.1551851) * go_1(0.0, -1.0);
+ result += mat4(-0.030879408, 0.16174243, 0.11785928, 0.10044399, 0.103491396, 0.4970167, 0.24234916, -0.06493323, -0.5077681, -0.2898029, -0.6628284, -0.13648084, -0.33522972, 0.11469954, 0.12131968, 0.09109707) * go_1(0.0, 0.0);
+ result += mat4(-0.08034709, 0.25998107, -0.06379842, 0.028442152, 0.015869953, 0.007683708, -0.40094435, -0.40611044, -0.27008733, 0.18364936, -0.3281637, -0.041977413, 0.1140125, -0.10856202, -0.09578836, -0.09218048) * go_1(0.0, 1.0);
+ result += mat4(0.123026, 0.008327435, 0.030305773, -0.2096839, 0.10336505, 0.16097684, 0.12322485, 0.118030734, 0.03299963, 0.16040866, -0.13148704, 0.008340433, -0.19695988, 0.15638165, -0.12755659, 0.1052091) * go_1(1.0, -1.0);
+ result += mat4(-0.14509329, 0.10795783, 0.04776709, 0.1912766, -0.13356347, 0.40317923, -0.044436198, -0.007739418, -0.08302831, -0.24656269, -0.043884385, -0.19904497, 0.18501812, 0.31247875, 0.22118801, 0.32205984) * go_1(1.0, 0.0);
+ result += mat4(-0.20988077, 0.16350421, -0.007065226, 0.068370156, -0.29017743, 0.31741127, -0.16304238, 0.09301682, 0.0064070835, -0.2200368, 0.08667949, 0.08893528, 0.012185525, 0.061563402, -0.022603845, -0.13980137) * go_1(1.0, 1.0);
+ result += vec4(0.0035223463, -0.01800009, -0.066120304, 0.036444645);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x8
+//!HOOK MAIN
+//!BIND conv2d_2_tf
+//!SAVE conv2d_3_tf
+//!WIDTH conv2d_2_tf.w
+//!HEIGHT conv2d_2_tf.h
+//!COMPONENTS 4
+#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_tf_texOff(vec2(x_off, y_off))), 0.0))
+vec4 hook() {
+ vec4 result = mat4(0.029730745, -0.20354259, -0.024866842, 0.6142018, -0.057904582, 0.14690976, 0.13911796, -0.17684475, -0.038984187, 0.2293552, -0.24492607, -0.09876552, -0.121840954, 0.104167365, -0.2002596, 0.22906633) * go_0(-1.0, -1.0);
+ result += mat4(-0.15601651, -0.45408654, 0.0056328066, 0.14931375, 0.106355265, -0.28766543, 0.20275597, 0.17117989, 0.2024125, -0.018220399, 0.20537418, -0.2512628, 0.08677818, -0.16528296, 0.030618055, 0.34206986) * go_0(-1.0, 0.0);
+ result += mat4(0.21757701, -0.22766693, -0.17851825, 0.24328357, -0.100302644, -0.18905696, -0.093859665, 0.037495647, -0.113302775, -0.14138012, -0.121963784, -0.19603981, -0.1467065, -0.048658233, -0.08733205, -0.014680143) * go_0(-1.0, 1.0);
+ result += mat4(0.027129084, 0.60998553, -0.13606413, -0.020992711, -0.1280572, 0.028858734, -0.17035899, 0.05273753, -0.010767519, -0.06716242, -0.25056425, -0.021200106, 0.056819234, 0.15256874, -0.19965693, 0.107559614) * go_0(0.0, -1.0);
+ result += mat4(0.0028911002, -0.35740444, 0.2843486, -0.12525088, 0.26718062, 0.23529604, 0.12323213, 0.11953701, 0.39812037, 0.5952236, 0.15077014, 0.3307451, -0.3343234, -0.17851308, -0.06977201, -0.12142983) * go_0(0.0, 0.0);
+ result += mat4(0.07701983, -0.22213547, -0.12679085, 0.44733852, 0.039350715, -0.049265213, -0.07835633, 0.049468227, 0.18374628, 0.09862826, -0.11012867, 0.093963236, -0.3815284, -0.026604578, -0.08666777, -0.37242416) * go_0(0.0, 1.0);
+ result += mat4(0.046480864, 0.15402529, 0.32454342, 0.31195897, 0.026019637, -0.015518116, 0.07184704, -0.048576623, -0.085313536, -0.30335206, -0.03538302, 0.038998444, -0.24336591, 0.29591933, 0.13635361, -0.06170926) * go_0(1.0, -1.0);
+ result += mat4(0.001583326, 0.19926873, 0.09061996, 0.17656757, -0.13213804, -0.09110825, 0.011066273, -0.045457568, -0.15433206, -0.059767917, -0.2217692, -0.20250633, -0.15929422, 0.13225617, 0.16918668, -0.17976558) * go_0(1.0, 0.0);
+ result += mat4(0.09133335, -0.11491876, 0.31630117, 0.33301303, -0.12336098, -0.00014819889, -0.065846935, -0.13708568, 0.0035713776, 0.11209328, -0.14600556, -0.18329898, -0.042813618, -0.19695571, 0.12939772, 0.13125424) * go_0(1.0, 1.0);
+ result += mat4(0.2456668, -0.11443734, 0.12422317, -0.027963439, -0.08805979, -0.048815556, 0.0014141081, -0.12905598, 0.20813434, 0.18589915, -0.043605257, -0.15992135, 0.16021228, -0.16261728, 0.1674875, -0.023042863) * go_1(-1.0, -1.0);
+ result += mat4(-0.11225962, -0.071019575, -0.14753854, -0.0009393687, 0.0119493175, 0.026390098, -0.014246224, -0.08896128, 0.09049977, 0.19628789, -0.48795873, -0.041901037, -0.1813657, 0.066677205, -0.21432005, -0.42496857) * go_1(-1.0, 0.0);
+ result += mat4(0.10766945, 0.006226188, -0.012340791, 0.019740941, -0.03640494, -0.016588463, -0.09767383, -0.16572453, 0.06490563, 0.025969552, -0.15540385, -0.122341186, 0.31073248, 0.05249395, -0.0046123094, 0.01558059) * go_1(-1.0, 1.0);
+ result += mat4(-0.10691572, -0.28608066, 0.33238873, 0.17061576, 0.2170227, -0.27571657, 0.17465565, 0.058572497, 0.013369914, 0.23030497, -0.22371663, 0.07939733, -0.080862634, -0.089835435, -0.11843333, -0.22716998) * go_1(0.0, -1.0);
+ result += mat4(0.1535432, 0.08586301, -0.03297764, 0.2708656, -0.34709668, -0.39958808, -0.117504485, -0.092964694, -0.27288464, -0.22971107, -0.5726414, -0.35902455, 0.4006547, 0.268567, -0.046572585, 0.050332587) * go_1(0.0, 0.0);
+ result += mat4(0.28097537, 0.07980737, 0.2785986, 0.29948357, -0.16748494, 0.033513438, 0.110592, -0.091253154, 0.07602271, -0.037091415, -0.020117491, -0.030363379, 0.26614565, 0.32125637, -0.12646365, 0.17033416) * go_1(0.0, 1.0);
+ result += mat4(0.23831208, -0.119880676, -0.026467795, 0.04704721, -0.12816072, -0.031220568, -0.03868793, -0.081885815, -0.131821, 0.4186022, -0.13877043, -0.2375658, 0.16681801, -0.1307046, -0.17400736, 0.096226044) * go_1(1.0, -1.0);
+ result += mat4(0.2773903, -0.22027758, 0.0030509788, 0.3435321, -0.05497512, -0.011639071, -0.005496613, -0.11578529, 0.041013945, 0.34382713, 0.018552745, 0.13336766, 0.06131117, -0.1984314, -0.2911384, 0.068716556) * go_1(1.0, 0.0);
+ result += mat4(0.19681007, 0.059428286, -0.14293098, 0.07646572, -0.0042802105, -0.072092056, -0.022017395, 0.07925259, 0.09995534, 0.113992825, 0.064496525, 0.13215977, -0.073556885, 0.15372708, -0.18688017, -0.16318361) * go_1(1.0, 1.0);
+ result += vec4(-0.078918606, -0.013616599, 0.121114455, -0.007394566);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x8
+//!HOOK MAIN
+//!BIND conv2d_3_tf
+//!SAVE conv2d_4_tf
+//!WIDTH conv2d_3_tf.w
+//!HEIGHT conv2d_3_tf.h
+//!COMPONENTS 4
+#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_tf_texOff(vec2(x_off, y_off))), 0.0))
+vec4 hook() {
+ vec4 result = mat4(-0.33288512, -0.15803969, 0.17338711, 0.018119233, 0.18848094, 0.04828137, 0.04167987, 0.10153319, 0.006678046, -0.11307704, -0.0048856554, -0.16344042, 0.17466842, 0.03921792, -0.118544005, 0.04087426) * go_0(-1.0, -1.0);
+ result += mat4(0.26681697, -0.31588024, -0.34071353, -0.110618204, -0.05312831, 0.09571441, 0.0810767, -0.19150293, 0.01305583, -0.20638268, 0.109889574, -0.010942737, -0.15917115, -0.08626845, -0.15540522, -0.009457729) * go_0(-1.0, 0.0);
+ result += mat4(-0.1563914, -0.21768026, -0.027371667, 0.055773217, -0.021275163, 0.062318746, 0.100512475, -0.078119546, -0.07571395, 0.124615386, 0.0651123, 0.007903074, 0.08571498, 0.25418788, 0.012053583, -0.07085148) * go_0(-1.0, 1.0);
+ result += mat4(-0.3058217, 0.06070873, -0.00049557135, 0.18138395, -0.23065093, 0.27658948, -0.24727888, -0.10904367, 0.285091, 0.09323982, 0.24295941, 0.21966098, -0.19596295, -0.007894711, -0.46418977, 0.0052628745) * go_0(0.0, -1.0);
+ result += mat4(0.0007711554, 0.113898434, 0.015175396, -0.074053444, -0.2677401, -0.5111278, -0.16162181, 0.71557075, 0.07512027, -0.041650485, 0.3182583, 0.23331177, 0.1685735, -0.6634232, -0.30525675, 0.21660347) * go_0(0.0, 0.0);
+ result += mat4(0.143833, 0.31382763, 0.22012949, 0.07490133, -0.18129745, 0.11867449, -0.05270555, -0.3529549, 0.21240157, -0.071940415, -0.3189873, 0.5332682, 0.19207504, -0.18741386, 0.08259377, 0.07224836) * go_0(0.0, 1.0);
+ result += mat4(0.052493718, 0.3087592, 0.06671387, 0.18065302, -0.13658898, 0.2171751, 0.08001096, 0.15605465, 0.016860174, -0.05868321, -0.2994103, -0.21949327, -0.05054982, -0.08310298, -0.13963486, -0.06424931) * go_0(1.0, -1.0);
+ result += mat4(0.17395268, -0.039895482, -0.092843585, -0.08124045, 0.16145493, 0.23876984, 0.36327857, -0.038699627, -0.32057023, -0.040961683, -0.29388076, -0.06374889, 0.55040497, 0.22109656, 0.46143904, 0.09395761) * go_0(1.0, 0.0);
+ result += mat4(0.06819964, -0.3056182, 0.10998293, 0.19924651, 0.07584925, 0.1950524, 0.22587568, 0.051529408, -0.13332917, -0.0023051738, 0.07852185, 0.14793536, 0.11313901, -0.050528888, -0.045762416, -0.10246604) * go_0(1.0, 1.0);
+ result += mat4(0.26360223, 0.1179566, -0.072963014, -0.07630527, -0.25929797, -0.08453742, -0.05884328, 0.045528516, -0.049709257, -0.04776677, -0.0758732, 0.060439188, -0.1499551, 0.07805919, 0.14726914, 0.01674206) * go_1(-1.0, -1.0);
+ result += mat4(0.085942134, 0.20974249, 0.34983695, 0.35980797, -0.18109371, -0.12866193, -0.17411673, -0.07728266, 0.027946737, 0.11053567, -0.14778402, -0.030466458, 0.1601492, 0.10508433, -0.1778435, -0.011546951) * go_1(-1.0, 0.0);
+ result += mat4(0.096729584, 0.26251787, 0.12339151, 0.3671544, 0.18069862, -0.23071703, -0.08078179, -0.058212195, 0.0125408, -0.100975156, -0.0081129605, 0.020297451, -0.16438073, -0.16909626, 0.070500694, -0.06460654) * go_1(-1.0, 1.0);
+ result += mat4(0.29824758, -0.20313914, 0.25777665, -0.21163733, 0.13291514, -0.043194193, -0.20092732, 0.14542949, -0.29002336, -0.00038937133, -0.013509278, -0.13880645, 0.4725973, 0.041589536, -0.03343898, 0.023269547) * go_1(0.0, -1.0);
+ result += mat4(0.13267769, 0.040841874, 0.04168816, -0.11158846, 0.13400188, 0.77035034, -0.016570223, -0.5350408, 0.11024834, -0.11410004, 0.03161968, -0.22341995, 0.06421405, 0.37909347, 0.15977849, -0.12460664) * go_1(0.0, 0.0);
+ result += mat4(-0.14856589, -0.10833532, -0.341762, 0.12166409, 0.29829827, -0.036768775, -0.062233344, 0.17576863, -0.45058337, -0.09807014, 0.0014251738, -0.13357787, 0.12853612, 0.086034484, 0.058277555, -0.0008216036) * go_1(0.0, 1.0);
+ result += mat4(-0.051831685, -0.3570293, -0.13489977, -0.174827, 0.13697852, 0.16465914, 0.063983284, -0.08438696, -0.15154143, -0.07587261, 0.18052123, 0.35167688, 0.31880412, 0.070352145, -0.041555207, -0.035372037) * go_1(1.0, -1.0);
+ result += mat4(-0.35493064, -0.14786021, -0.055600256, 0.024723098, -0.17032997, 0.2501284, -0.102881916, 0.07806893, 0.41634327, -0.10507911, 0.40161237, 0.25389627, 0.1102981, -0.41443413, -0.36168, -0.06707928) * go_1(1.0, 0.0);
+ result += mat4(-0.32634667, 0.11545513, -0.08757775, -0.17719054, 0.031288594, 0.0016022983, 0.029765902, 0.11951411, 0.019432139, -0.00999595, -0.12925546, -0.25843588, 0.018210126, -0.035298157, 0.20754048, 0.20309253) * go_1(1.0, 1.0);
+ result += vec4(-0.056945603, 0.016010601, 0.011157268, -0.06757666);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x8
+//!HOOK MAIN
+//!BIND conv2d_4_tf
+//!SAVE conv2d_5_tf
+//!WIDTH conv2d_4_tf.w
+//!HEIGHT conv2d_4_tf.h
+//!COMPONENTS 4
+#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_tf_texOff(vec2(x_off, y_off))), 0.0))
+vec4 hook() {
+ vec4 result = mat4(0.052159667, -0.041820996, -0.057003014, -0.068232864, 0.09536034, -0.3346974, 0.02044675, 0.17749998, 0.22340004, -0.07385933, 0.18096723, -0.054693084, -0.022506878, 0.029750917, -0.13725623, -0.26340714) * go_0(-1.0, -1.0);
+ result += mat4(0.069541946, -0.21794018, 0.29497987, -0.05281428, 0.24873401, -0.3583056, -0.17314917, 0.3238703, -0.060436837, -0.31660917, -0.074332766, 0.35311633, 0.17505018, 0.3037061, -0.18913741, -0.1323129) * go_0(-1.0, 0.0);
+ result += mat4(0.024252703, 0.19490977, 0.20630325, -0.16888621, 0.26968384, 0.09881516, -0.14243007, 0.20449692, 0.10020064, -0.010257581, 0.07982331, -0.008375402, 0.0814757, -0.0655126, -0.0620161, -0.016772218) * go_0(-1.0, 1.0);
+ result += mat4(0.10882436, -0.17181146, 0.16860223, -0.2126255, -0.23057322, 0.007887495, -0.47815466, -0.36427057, 0.29888117, -0.41054067, -0.24495918, -0.10783801, -0.11383268, -0.02698339, -0.19339776, -0.015334463) * go_0(0.0, -1.0);
+ result += mat4(0.26212507, 0.09869678, 0.11404824, 0.49513778, 0.31116238, -0.23560561, -0.18968593, 0.303081, -0.13317975, -0.16740055, -0.25550172, -0.30525732, -0.17780562, 0.15645207, 0.28195503, 0.60347307) * go_0(0.0, 0.0);
+ result += mat4(0.05692596, 0.050095394, -0.14425641, 0.3188089, 0.4716343, -0.09475429, 0.27608445, 0.15398689, -0.039951224, 0.079101615, 0.30836922, -0.021434302, -0.121865846, 0.29446837, 0.0971001, -0.2896358) * go_0(0.0, 1.0);
+ result += mat4(0.11234514, -0.01977439, 0.08805328, -0.042952925, -0.04248709, -0.050519798, 0.20671679, 0.021841977, -0.027995298, 0.21781583, 0.033257857, -0.33707783, 0.24060863, -0.47070536, -0.26218283, 0.19765186) * go_0(1.0, -1.0);
+ result += mat4(-0.29430357, 0.30840075, -0.09959777, -0.22775958, -0.12925388, 0.05443079, -0.21106608, 0.2776738, -0.2237732, 0.111547075, -0.09602802, 0.047543436, -0.28587416, 0.15707256, 0.15018779, 0.10369703) * go_0(1.0, 0.0);
+ result += mat4(-0.08975911, -0.10209212, 0.3132954, -0.003759261, 0.33627248, -0.21999413, 0.36878604, 0.15821058, -0.0070507852, -0.001138724, 0.09438848, 0.039481573, -0.17703871, 0.11029851, -0.30019668, -0.114378445) * go_0(1.0, 1.0);
+ result += mat4(-0.046679534, 0.09008392, 0.10543806, -0.11113449, 0.033736516, -0.028995255, 0.04945433, -0.050876312, -0.049709253, -0.23492016, -0.005091305, 0.015841596, 0.098169304, 0.28864223, -0.09167097, 0.10716883) * go_1(-1.0, -1.0);
+ result += mat4(-0.023341915, -0.26965767, -0.2956636, -0.12833685, 0.0049547288, -0.013791635, -0.02143965, -0.23689996, 0.09835852, -0.18684486, -0.08930728, 0.22989658, -0.13132983, 0.35830107, 0.20288011, 0.025204457) * go_1(-1.0, 0.0);
+ result += mat4(-0.11712631, -0.0054217363, -0.11548828, 0.33120272, -0.13256621, 0.2674577, -0.022758495, -0.29764673, -0.14689317, -0.08247762, -0.2270516, 0.1620217, -0.0055040685, 0.13778222, 0.21611828, -0.16880597) * go_1(-1.0, 1.0);
+ result += mat4(-0.051992953, -0.124879874, -0.07360768, 0.07978811, 0.024262372, -0.038970206, -0.03275422, -0.19379528, -0.41286692, -0.031443242, -0.12807505, 0.05834968, 0.31249416, -0.09534288, 0.041031476, 0.11475795) * go_1(0.0, -1.0);
+ result += mat4(-0.08339046, -0.12685254, -0.16816244, -0.5309422, -0.12481663, -0.3166854, 0.023763519, -0.17931996, -0.041186657, 0.26602304, -0.05438286, -0.06582214, 0.15401813, 0.6058907, 0.07503089, 0.22416481) * go_1(0.0, 0.0);
+ result += mat4(0.12253474, 0.054325968, 0.099281035, 0.10469708, 0.007676551, -0.021487443, -0.043130834, 0.023591902, 0.11114966, 0.29464898, -0.20194164, -0.23088434, -0.12759209, -0.0010518925, -0.29906237, 0.109640606) * go_1(0.0, 1.0);
+ result += mat4(-0.032506756, 0.09745738, 0.02737343, 0.072900176, 0.075788684, 0.14780855, 0.20574768, -0.04917854, 0.016049447, -0.23050278, -0.22940713, 0.3620587, -0.401535, 0.06093326, -0.44494846, -0.5550858) * go_1(1.0, -1.0);
+ result += mat4(-0.006061289, -0.042501535, 0.12032573, 0.4071377, -0.05734201, -0.032250192, 0.33268663, -0.36518642, 0.4747453, 0.11878494, 0.48362148, -0.07276982, 0.2904439, 0.029373558, -0.3671745, -0.29710492) * go_1(1.0, 0.0);
+ result += mat4(-0.027749823, 0.1495733, 0.34969, -0.21835077, -0.055747934, 0.049208727, -0.12306907, -0.050918046, 0.062568754, -0.09445172, 0.051502462, -0.04531759, -0.017427323, 0.3598651, -0.103714466, -0.11527737) * go_1(1.0, 1.0);
+ result += vec4(0.02008657, 0.01823038, 0.18561745, -0.048123475);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-4x3x3x8
+//!HOOK MAIN
+//!BIND conv2d_5_tf
+//!SAVE conv2d_6_tf
+//!WIDTH conv2d_5_tf.w
+//!HEIGHT conv2d_5_tf.h
+//!COMPONENTS 4
+#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_tf_texOff(vec2(x_off, y_off))), 0.0))
+vec4 hook() {
+ vec4 result = mat4(-0.25473398, -0.028407138, -0.0007933401, -0.08232748, -0.1425428, 0.00089956186, -0.24028184, 0.010822339, 0.048977587, 0.18277793, -0.097755805, -0.06224535, 0.09490957, -0.1547448, 0.10830683, 0.3170698) * go_0(-1.0, -1.0);
+ result += mat4(0.17818734, -0.10023386, 0.22121345, 0.25037986, 0.09604289, 0.07865084, 0.020644143, -0.14466804, 0.4180106, -0.16156708, 0.15954085, 0.1264051, -0.10977669, -0.16085592, 0.39157993, -0.035544675) * go_0(-1.0, 0.0);
+ result += mat4(-0.3173534, -0.13745941, -0.24617237, 0.2393006, 0.075480305, 0.11701763, -0.17041577, -0.10759083, -0.046630267, 0.31506947, 0.08847315, -0.1336195, -0.35967085, -0.51072663, 0.21051311, 0.12673977) * go_0(-1.0, 1.0);
+ result += mat4(-0.133922, -0.14344501, 0.30775613, 0.07918534, 0.120424084, -0.1448542, 0.051927164, 0.053818088, 0.01596096, 0.33233374, -0.23345645, -0.15402249, -0.118151076, -0.1930877, 0.26836047, -0.17307247) * go_0(0.0, -1.0);
+ result += mat4(-0.22351453, 0.21770354, 0.26537132, -0.22712417, 0.25041655, 0.26610997, -0.20806356, -0.5892193, 0.3597405, -0.24591586, 0.22623707, 0.18799196, -0.08515747, 0.34089553, -0.32509258, 0.028907761) * go_0(0.0, 0.0);
+ result += mat4(-0.32000643, 0.09370203, -0.22273755, -0.1232059, -0.028876282, 0.0069199903, 0.20560403, -0.018314848, 0.2730861, 0.09376223, 0.047379874, 0.054252557, 0.2499714, -0.447377, 0.392801, 0.17543222) * go_0(0.0, 1.0);
+ result += mat4(-0.20871703, -0.1717396, 0.052421775, -0.17394121, -0.14755413, 0.10637341, -0.08902109, -0.24319547, -0.04288679, 0.09541489, 0.013148817, 0.0061077876, 0.08515972, -0.17981218, 0.38778135, 0.08433772) * go_0(1.0, -1.0);
+ result += mat4(-0.11481966, -0.23211667, 0.01456032, 0.15794465, 0.3048381, 0.091852054, -0.20622432, 0.06759865, -0.11446707, 0.19387178, -0.13612545, -0.16928646, 0.2885096, 0.10722402, -0.19789721, -0.08469645) * go_0(1.0, 0.0);
+ result += mat4(-0.18036972, -0.21177955, 0.1474873, -0.01597115, 0.04241241, -0.050583262, -0.17662829, -0.015383409, 0.068435945, 0.10963893, -0.19333598, -0.14035946, 0.09157182, -0.1676966, 0.38438258, 0.05546814) * go_0(1.0, 1.0);
+ result += mat4(-0.0052495277, -0.016189767, 0.010906696, -0.09554607, 0.15183115, 0.33431938, -0.052687485, -0.11673394, 0.08800913, -0.2000162, 0.116232574, 0.19929427, -0.10126059, -0.006227706, -0.20455727, -0.008410618) * go_1(-1.0, -1.0);
+ result += mat4(0.0013282335, 0.19145088, -0.19633842, 0.012348995, 0.41588664, 0.12920669, -0.24117337, 0.029718535, -0.34403735, 0.70419526, 0.18841441, -0.2736334, -0.056642596, -0.061897337, -0.24886008, 0.308231) * go_1(-1.0, 0.0);
+ result += mat4(-0.09741567, 0.53030056, 0.40056005, -0.094865754, 0.58442384, 0.027269462, -0.25056544, 0.0767113, 0.44901383, -0.18718153, -0.14450903, -0.053677864, -0.14473139, 0.16354595, 0.1494857, -0.1853034) * go_1(-1.0, 1.0);
+ result += mat4(-0.13120279, 0.049597383, 0.0619216, -0.23385774, 0.0951867, 0.36651376, -0.09255381, -0.3294161, 0.21876813, -0.025555203, -0.034680225, -0.030050896, 0.024637511, -0.07437661, 0.03839798, 0.08881474) * go_1(0.0, -1.0);
+ result += mat4(-0.19653368, -0.1564135, -0.13832954, 0.23248176, 0.024198275, -0.06286068, -0.013511925, 0.28301218, 0.0529042, 0.60009265, 0.54424703, -0.3836471, 0.34203842, -0.20863667, 0.810904, 0.2638843) * go_1(0.0, 0.0);
+ result += mat4(0.33991838, -0.22583437, 0.066825494, 0.1059499, 0.43802965, 0.20008968, -0.19446743, -0.18062733, 0.04635362, -0.108694986, -0.4400076, -0.37915388, -0.5271838, 0.036458965, -0.3077106, 0.05611058) * go_1(0.0, 1.0);
+ result += mat4(0.081538014, -0.08475121, 0.23085584, 0.19080167, 0.15911122, 0.331633, 0.032517504, -0.08391852, -0.054986853, 0.0195544, -0.07186168, -0.14636797, 0.07233911, -0.0031875793, -0.35588586, 0.07955779) * go_1(1.0, -1.0);
+ result += mat4(-0.1666487, 0.04838774, 0.19548106, -0.21279196, 0.15876065, 0.2676183, 0.1578397, -0.4236469, 0.093407914, -0.14021605, -0.10710352, 0.41490397, -0.09284001, -0.41722137, 0.2370269, 0.24756356) * go_1(1.0, 0.0);
+ result += mat4(0.2980511, 0.11123493, 0.058016215, 0.053665955, 0.22625992, 0.2837797, -0.13747248, 0.055340663, -0.18094735, -0.0812216, 0.31676784, -0.15251358, -0.17401353, -0.008878492, 0.05071887, -0.16338257) * go_1(1.0, 1.0);
+ result += vec4(-0.063434325, -0.11713739, -0.030753389, 0.2545001);
+ return result;
+}
+//!DESC Anime4K-v4.0-Restore-CNN-Light-(M)-Conv-3x1x1x56
+//!HOOK MAIN
+//!BIND MAIN
+//!BIND conv2d_tf
+//!BIND conv2d_1_tf
+//!BIND conv2d_2_tf
+//!BIND conv2d_3_tf
+//!BIND conv2d_4_tf
+//!BIND conv2d_5_tf
+//!BIND conv2d_6_tf
+//!SAVE MAIN
+//!WIDTH conv2d_tf.w
+//!HEIGHT conv2d_tf.h
+#define g_0 (max((conv2d_tf_tex(conv2d_tf_pos)), 0.0))
+#define g_1 (max(-(conv2d_tf_tex(conv2d_tf_pos)), 0.0))
+#define g_2 (max((conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0))
+#define g_3 (max(-(conv2d_1_tf_tex(conv2d_1_tf_pos)), 0.0))
+#define g_4 (max((conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0))
+#define g_5 (max(-(conv2d_2_tf_tex(conv2d_2_tf_pos)), 0.0))
+#define g_6 (max((conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0))
+#define g_7 (max(-(conv2d_3_tf_tex(conv2d_3_tf_pos)), 0.0))
+#define g_8 (max((conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0))
+#define g_9 (max(-(conv2d_4_tf_tex(conv2d_4_tf_pos)), 0.0))
+#define g_10 (max((conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0))
+#define g_11 (max(-(conv2d_5_tf_tex(conv2d_5_tf_pos)), 0.0))
+#define g_12 (max((conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0))
+#define g_13 (max(-(conv2d_6_tf_tex(conv2d_6_tf_pos)), 0.0))
+vec4 hook() {
+ vec4 result = mat4(-0.034986928, -0.029716207, 0.0005856687, 0.0, 0.007477787, 0.01283386, 0.018382637, 0.0, 0.07947544, 0.02265172, 0.024876056, 0.0, -0.09644291, 0.026047127, 0.033856377, 0.0) * g_0;
+ result += mat4(0.02803931, 0.018812822, 0.03374183, 0.0, -0.03829769, 0.0013198045, -0.008904364, 0.0, -0.029290266, 0.104609475, 0.12553765, 0.0, 0.06384005, -0.08800987, -0.10811211, 0.0) * g_1;
+ result += mat4(0.2500315, 0.034096524, -0.012574463, 0.0, 0.045560513, -0.07177408, -0.100014046, 0.0, -0.20908193, 0.038641814, 0.052575886, 0.0, -0.13983153, -0.01554853, 0.002414759, 0.0) * g_2;
+ result += mat4(-0.1268256, 0.07602051, 0.101247676, 0.0, 0.063316, 0.18018687, 0.17934647, 0.0, 0.08259552, 0.05704657, 0.012539, 0.0, 0.17838185, 0.025077831, 0.006329234, 0.0) * g_3;
+ result += mat4(-0.06870703, 0.01671236, 0.008004935, 0.0, -0.1398016, -0.11103728, -0.084981166, 0.0, -0.034943204, 0.076756604, 0.0951566, 0.0, -0.107946925, -0.07350513, -0.06012678, 0.0) * g_4;
+ result += mat4(0.13025245, 0.0977561, 0.0834748, 0.0, 0.018569823, -0.015847888, -0.030140083, 0.0, 0.06554332, -0.025953712, -0.0438648, 0.0, 0.13082612, 0.046049908, 0.04658793, 0.0) * g_5;
+ result += mat4(-0.10749636, -0.12193612, -0.123640515, 0.0, -0.07361566, -0.050406873, -0.03955042, 0.0, -0.062129375, -0.026894726, -0.017668307, 0.0, 0.0040475368, 0.0047840504, 0.006694778, 0.0) * g_6;
+ result += mat4(0.07634295, 0.101415105, 0.095704705, 0.0, 0.040679377, 0.024775917, 0.011515234, 0.0, 0.09189788, 0.0420609, 0.02615154, 0.0, -0.02213569, -0.028231231, -0.022946764, 0.0) * g_7;
+ result += mat4(0.042908613, 0.04783125, 0.04420148, 0.0, -0.045854457, -0.06266048, -0.05966703, 0.0, 0.002843439, 0.030005816, 0.030412288, 0.0, 0.023838965, 0.00065911206, 0.0019302816, 0.0) * g_8;
+ result += mat4(-0.004781878, 0.0058402717, 0.0072678966, 0.0, 0.060339577, 0.08688526, 0.08030723, 0.0, -0.04013362, -0.06458791, -0.058970768, 0.0, -0.016838295, 0.01074944, 0.015516271, 0.0) * g_9;
+ result += mat4(0.012301688, 0.009368208, 0.009704443, 0.0, -0.05777586, -0.06671318, -0.06127254, 0.0, -0.025209086, -0.022393715, -0.022577194, 0.0, 0.114519976, 0.14299808, 0.1303851, 0.0) * g_10;
+ result += mat4(0.02724772, 0.031648725, 0.027312174, 0.0, 0.032571245, 0.03815237, 0.040981837, 0.0, 0.10516138, 0.11523303, 0.10841371, 0.0, -8.820248e-05, 0.0032331785, 0.006362298, 0.0) * g_11;
+ result += mat4(0.016520036, 0.0193462, 0.017838286, 0.0, -0.06750134, -0.09072626, -0.07969454, 0.0, -0.081530124, -0.08510578, -0.08061842, 0.0, -0.06866735, -0.07916455, -0.07402003, 0.0) * g_12;
+ result += mat4(0.06997193, 0.07740686, 0.07153717, 0.0, -0.036306426, -0.037059125, -0.039196912, 0.0, 0.022912787, 0.02231042, 0.025527384, 0.0, -7.710575e-05, 0.0021875908, 0.007248598, 0.0) * g_13;
+ result += vec4(0.00022327522, 0.016025754, 0.014006479, 0.0);
+ return result + MAIN_tex(MAIN_pos);
+}