diff --git a/README.md b/README.md index d0da70a..7605bcc 100644 --- a/README.md +++ b/README.md @@ -93,10 +93,6 @@ Based on [codeopshq/dotfiles](https://github.com/codeopshq/dotfiles), also serve Based on [vinceliuice/Elegant-grub2-themes](https://github.com/vinceliuice/Elegant-grub2-themes) with an [illustration from 紺屋](https://www.pixiv.net/artworks/119683453). -## MPV - -Based on [noelsimbolon/mpv-config](https://github.com/noelsimbolon/mpv-config.git). - ## Fonts See [fontconfig.md](https://github.com/Uyanide/dotfiles/blob/main/memo/fontconfig.md). diff --git a/config/mpv/.config/mpv/.gitignore b/config/mpv/.config/mpv/.gitignore deleted file mode 100644 index b7706ee..0000000 --- a/config/mpv/.config/mpv/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -# Shaders cache directory -shaders/cache diff --git a/config/mpv/.config/mpv/LICENSE b/config/mpv/.config/mpv/LICENSE deleted file mode 100644 index ff4ea6b..0000000 --- a/config/mpv/.config/mpv/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 noelsimbolon - -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. diff --git a/config/mpv/.config/mpv/README.md b/config/mpv/.config/mpv/README.md deleted file mode 100644 index 96d7682..0000000 --- a/config/mpv/.config/mpv/README.md +++ /dev/null @@ -1,121 +0,0 @@ -# mpv config - -![mpv logo](https://raw.githubusercontent.com/mpv-player/mpv.io/master/source/images/mpv-logo-128.png) - -## Overview - -**mpv** is a free (as in freedom and free beer), open-source, and cross-platform media player. It supports -a wide variety of media file formats, audio and video codecs, and subtitle types. - -This repo contains my personal mpv configurations and scripts that I use and are significantly better than default mpv, VLC, and MPC. Before installing, please take your time to read this whole README as common issues can be easily solved by simply reading carefully. - - -## Preview - -[![preview.png](https://i.postimg.cc/8zNHHPHy/preview.png)](https://postimg.cc/VdZnsw2M) - -## Installation - -### Windows - -Here are the steps to install mpv and to use my configuration files on Windows: -* Download the latest 64bit mpv Windows build by shinchiro from [mpv.io/installation](https://mpv.io/installation/) or directly from [here](https://sourceforge.net/projects/mpv-player-windows/files/) and extract it wherever you please. This is now your mpv folder -* Run `mpv-install.bat`, which is located in `installer` folder, with administrator priviledges by right-clicking and selecting Run as administrator -* Download this repository as a ZIP file (or you can clone it using git) -* Create a folder named `portable_config` (**this is important**), located at the same directory as `mpv.exe` -* Extract or copy the contents of this repository that you have downloaded to the `portable_config` folder -* To make some scripts work, you need to modify them from the release a little bit: - * In order for the `mpv-gif.lua` script to work, it requires [FFmpeg](https://ffmpeg.org/) with libass enabled and accessible via terminal. See the [installation instructions](https://github.com/Scheliux/mpv-gif-generator#installation) from the script's source repository for further info. - * **(Optional)** By default, the `mpv-gif.lua` script saves GIFs to `C:/Program Files/mpv/gifs`. To modify this, open `gif.conf`, which is located in `portable_config/script-opts` folder, with a text editor and specify the `dir`, which is output directory for GIFs, as you please. For example `dir="C:/Users/USERNAME/Pictures/mpv-gifs"`. -* **(Optional)** Make your own mpv configuration. You can do that by modifying my configuration files and/or making your own from scratch or modifying others' configurations. Check out the [useful links](#useful-links) section for mpv configuration guides. -* You're all set up. - -### Linux - -Here are the steps to install mpv and to use my configuration files on Linux: - -* Install mpv and xclip (clipboard CLI interface) using the package manager that comes with your Linux distribution. xclip is needed for [copy-time.lua](https://github.com/noelsimbolon/mpv-config/blob/linux/scripts/copy-time.lua) and [seek-to.lua](https://github.com/noelsimbolon/mpv-config/blob/linux/scripts/seek-to.lua) scripts to work properly. The package name for mpv and xclip might also vary depending on your Linux distribution. Here, I will make Arch Linux, that comes with `pacman` as its package manager, as an example - - ``` - sudo pacman -S mpv xclip - ``` - - If you, for example, use Fedora Linux, that comes with `dnf` as its package manager, you can install mpv and xclip with the following command instead. - ``` - sudo dnf install mpv xclip - ``` - - If you use other Linux distributions, please refer to the documentation of your Linux distribution's package manager on how to install packages. - -* Download this repository as a ZIP file (or you can clone it using git) and extract/copy it to your standard mpv configuration directory which is `~/.config/mpv` -* Some things to highlight: - * In order for the `mpv-gif.lua` script to work, it requires [FFmpeg](https://ffmpeg.org/) with libass enabled and accessible via terminal. See the [installation instructions](https://github.com/Scheliux/mpv-gif-generator#installation) from the script's source repository for further info. - * **(Optional)** By default, the `mpv-gif.lua` script saves GIFs to `~/Videos/mpv-gifs`. To modify this, open `gif.conf`, which is located in `portable_config/script-opts` folder, with a text editor and specify the `dir`, which is output directory for GIFs, as you please. For example `dir="~/Videos"`. -* **(Optional)** Make your own mpv configuration. You can do that by modifying my configuration files and/or making your own from scratch or modifying others' configurations. Check out the [useful links](#useful-links) section for mpv configuration guides. -* You're all set up. - -## Scripts - -Scripts from external sources: - -* audio-visualizer.lua ([source](https://github.com/mfcc64/mpv-scripts#visualizerlua))\ - Various audio visualization. It only works if you open audio files. - -* autoload.lua ([source](https://github.com/mpv-player/mpv/blob/master/TOOLS/lua/autoload.lua))\ - Automatically load playlist entries before and after the currently playing file, by scanning the directory. - -* copy-time.lua ([source](https://github.com/linguisticmind/mpv-scripts/tree/master/copy-time))\ - Copies current timecode in HH:MM:SS.MS format to clipboard. Cross-platform (Mac, Windows, Linux). - -* cycle-commands.lua ([source](https://github.com/CogentRedTester/mpv-scripts#cycle-commands))\ - Cycles through a series of commands on a keypress. Each iteration of the cycle can contain as many commands as one wants. Syntax details are at the top of the file. - -* cycle-profile.lua ([source](https://github.com/CogentRedTester/mpv-scripts#cycle-profile))\ - Cycles through a list of profiles sent via a script message and prints the profile-desc to the OSD. More details at the top of the file. - -* modernz.lua ([source](https://github.com/Samillion/ModernZ))\ - A modern OSC UI replacement for MPV that retains the functionality of the default OSC. - -* mpv-gif.lua ([source](https://github.com/Scheliux/mpv-gif-generator))\ - Script to generate GIFs from video playback. Requires FFmpeg with libass enabled. The exporting GIFs with subtitled currently doesn't work properly. - -* playlistmanager.lua ([source](https://github.com/jonniek/mpv-playlistmanager))\ - Allows you to see and interact with your playlist in an intuitive way. - -* seek-to.lua ([source](https://github.com/dexeonify/mpv-config/blob/main/scripts/seek-to.lua))\ - Seek to an absolute timestamp specified via keyboard input or pasted from clipboard. - -* sponsorblock-minimal.lua ([source](https://codeberg.org/jouni/mpv_sponsorblock_minimal))\ - Skip sponsor segments in YouTube videos. - -* thumbfast.lua ([source](https://github.com/po5/thumbfast))\ - High-performance on-the-fly thumbnailer for mpv. **The script does not display thumbnails on its own**, it is meant to be used alongside a UI script that calls thumbfast. - -Configuration files for these scripts can be found in the `script-opts` folder. I also modified some of these scripts' default keybindings. To see my modifications, look for script keybindings in `input.conf`. - -## Shaders - -The shaders included in the `shaders` folder: - -* ArtCNN_C4F32 ([source](https://github.com/Artoriuz/ArtCNN/blob/main/GLSL/ArtCNN_C4F32.glsl))\ - Used for luma upscaling. - -* nnedi3-nns128-win8x4 ([source](https://github.com/bjin/mpv-prescalers/tree/master))\ - Used for luma upscaling. - -Use shaders based on your preference and system capabilities. For more info about shaders, read the resources in the [useful links](#useful-links) section. - -## Useful Links - -* [mpv tutorial](https://thewiki.moe/tutorials/mpv/) by The Wiki -* [mpv.conf guide](https://iamscum.wordpress.com/guides/videoplayback-guide/mpv-conf/) by iamscum -* [mpv Configuration Guide for Watching Videos](https://kokomins.wordpress.com/2019/10/14/mpv-config-guide/) by Kokomins -* [mpv Resampling](https://artoriuz.github.io/blog/mpv_upscaling.html) by João Vitor Chrisóstomo - -## Official Links - -* [mpv homepage](https://mpv.io/) -* [mpv wiki](https://github.com/mpv-player/mpv/wiki) -* [mpv FAQ](https://github.com/mpv-player/mpv/wiki/FAQ) -* [mpv manual](https://mpv.io/manual/stable/) -* [mpv User Scripts](https://github.com/mpv-player/mpv/wiki/User-Scripts) diff --git a/config/mpv/.config/mpv/fonts/Netflix Sans Bold.otf b/config/mpv/.config/mpv/fonts/Netflix Sans Bold.otf deleted file mode 100644 index e774680..0000000 Binary files a/config/mpv/.config/mpv/fonts/Netflix Sans Bold.otf and /dev/null differ diff --git a/config/mpv/.config/mpv/fonts/Netflix Sans Light.otf b/config/mpv/.config/mpv/fonts/Netflix Sans Light.otf deleted file mode 100644 index 66b9761..0000000 Binary files a/config/mpv/.config/mpv/fonts/Netflix Sans Light.otf and /dev/null differ diff --git a/config/mpv/.config/mpv/fonts/Netflix Sans Medium.otf b/config/mpv/.config/mpv/fonts/Netflix Sans Medium.otf deleted file mode 100644 index 2b60813..0000000 Binary files a/config/mpv/.config/mpv/fonts/Netflix Sans Medium.otf and /dev/null differ diff --git a/config/mpv/.config/mpv/fonts/fluent-system-icons.ttf b/config/mpv/.config/mpv/fonts/fluent-system-icons.ttf deleted file mode 100644 index 2696a0b..0000000 Binary files a/config/mpv/.config/mpv/fonts/fluent-system-icons.ttf and /dev/null differ diff --git a/config/mpv/.config/mpv/input.conf b/config/mpv/.config/mpv/input.conf deleted file mode 100644 index 273feb6..0000000 --- a/config/mpv/.config/mpv/input.conf +++ /dev/null @@ -1,49 +0,0 @@ -# Check the following link for mpv's default keybindings: -# https://github.com/mpv-player/mpv/blob/master/etc/input.conf - -# ========== CUSTOM KEYBINDINGS ========== - -# GENERAL -k cycle ontop - -# VIDEO -d cycle deband -D cycle deinterlace -n cycle video-unscaled -C cycle-values video-aspect-override "16:9" "4:3" "2.35:1" "-1" # cycle the video aspect ratio ("-1" is the container aspect) - -# AUDIO -a cycle audio -A cycle audio down -WHEEL_UP add volume 2 -WHEEL_DOWN add volume -2 -UP add volume 2 -DOWN add volume -2 -x add audio-delay -0.05 -X add audio-delay +0.05 - -# SUBTITLES -Shift+g add sub-scale +0.05 # increase the subtitle font size -Shift+f add sub-scale -0.05 # decrease the subtitle font size -E add sub-gauss +0.1 # https://mpv.io/manual/stable/#options-sub-gauss -R add sub-gauss -0.1 -z add sub-delay -0.05 # shift subtitles 50 ms earlier -Z add sub-delay +0.05 # shift subtitles 50 ms later -u cycle sub-gray # https://mpv.io/manual/stable/#options-sub-gray -U cycle blend-subtitles # https://mpv.io/manual/stable/#options-blend-subtitles -p cycle sub-fix-timing # https://mpv.io/manual/stable/#options-sub-fix-timing -g sub-reload # https://mpv.io/manual/stable/#command-interface-sub-reload -l cycle-values sub-ass-override "yes" "force" "no" # https://mpv.io/manual/stable/#options-sub-ass-override - -# SCRIPT KEYBINDINGS -~ script-message cycle-commands "apply-profile HDR ; show-text 'HDR profile applied'" "apply-profile HDR restore ; show-text 'HDR profile restored'" -# ~ script-message cycle-commands "apply-profile Clip ; show-text 'Clip profile applied'" "apply-profile Mobius ; show-text 'Mobius profile applied'" "apply-profile Reinhard ; show-text 'Reinhard profile applied'" "apply-profile Hable ; show-text 'Hable profile applied'" "apply-profile bt.2390 ; show-text 'bt.2390 profile applied'" "apply-profile Gamma ; show-text 'Gamma profile applied'" "apply-profile Linear ; show-text 'Linear profile applied'" -c script-binding cycle-visualizer # cycle audio visualizer (audio-visualizer.lua) -b script-binding set_gif_start # set the start timestamp for to make GIF (mpv-gif.lua) -B script-binding set_gif_end # set the stop timestamp for to make GIF (mpv-gif.lua) -ctrl+b script-binding make_gif # make the GIF using start and stop timestamps (mpv-gif.lua) -ctrl+B script-binding make_gif_with_subtitles # make the GIF using start and stop timestamps with subtitles (doesn't seem to work) (mpv-gif.lua) -ctrl+c script-binding copy-time # copy current timestamp to clipboard in HH:MM:SS.MS format (copy-time.lua) -ctrl+S script-binding toggle-seeker # toggle keyboard input to seek to inputted timestamp (seek-to.lua) -ctrl+v script-binding paste-timestamp # automatically seek to pasted timestamp from clipboard (seek-to.lua) -alt+b script-binding sponsorblock # toggle sponsorblock on/off (sponsorblock-minimal.lua) diff --git a/config/mpv/.config/mpv/mpv.conf b/config/mpv/.config/mpv/mpv.conf deleted file mode 100644 index b7548dd..0000000 --- a/config/mpv/.config/mpv/mpv.conf +++ /dev/null @@ -1,130 +0,0 @@ -# ========== GENERAL ========== - -profile=high-quality # Allows for higher quality playback on mpv -vo=gpu-next # https://mpv.io/manual/stable/#video-output-drivers-gpu - -# gpu-api=vulkan offers better overall performance, but it sometimes breaks playback -# For displaying HDR content (not HDR -> SDR) "d3d11" is recommended (Windows only) -gpu-api=vulkan # https://mpv.io/manual/stable/#options-gpu-api -fullscreen=no # Start in fullscreen -force-seekable=yes # If the player thinks that the media is not seekable, force enable seeking -keep-open=always # Don't close the player after finishing the video, - # and playback will never automatically advance to the next file in the playlist -reset-on-next-file=pause # After playing the next file in the playlist, - # it will automatically play the file instead of a paused state -hwdec=vulkan # https://mpv.io/manual/stable/#options-hwdec -dither-depth=8 # This must be set to match your monitor's bit depth -scale-antiring=0.6 # https://mpv.io/manual/stable/#options-scale-antiring - - -# ========== SCALERS AND SHADERS ========== - -scale=ewa_lanczossharp # Luma upscaler -dscale=mitchell # Luma downscaler -cscale=ewa_lanczossharp # Chroma up&downscaler -gpu-shader-cache-dir='~~/shaders/cache' # https://mpv.io/manual/stable/#options-gpu-shader-cache-dir - -# Only use these if you have high-end hardware -# glsl-shader="~~/shaders/nnedi3-nns128-win8x4.hook" -# glsl-shader="~~/shaders/ArtCNN_C4F32.glsl" - - -# ========== DEBANDING ========== - -# Banding is a visual artifact, visual artifacts should never be in a video. -# Example of banding: https://imgur.com/32d77H0 -# Debanding is the process of removing said banding. -# 6 minute explanation of what causes banding: https://www.youtube.com/watch?v=h9j89L8eQQk - -deband=no # Turn on only for videos with banding. (Keybind=d) -deband-iterations=2 # https://mpv.io/manual/stable/#options-deband-iterations -deband-threshold=64 # https://mpv.io/manual/stable/#options-deband-threshold -deband-range=17 # https://mpv.io/manual/stable/#options-deband-range -deband-grain=12 # https://mpv.io/manual/stable/#options-deband-grain - - -# ========== ON SCREEN DISPLAY AND ON SCREEN CONTROLLER ========== - -osd-bar=no # Don't show a huge volume box on screen when turning the volume up/down -osc=no # Allows for custom OSC to be used https://github.com/cyl0/mpv-osc-morden-x -border=no # Optional for modern OSC, but recommended -cursor-autohide-fs-only=yes # If this option is given, the cursor is always visible in windowed mode - # In fullscreen mode, the cursor is shown or hidden according to --cursor-autohide -cursor-autohide=300 # Cursor hide in ms -osd-level=1 # https://mpv.io/manual/stable/#options-osd-level -osd-duration=1000 # Set the duration of the OSD messages in ms -hr-seek=yes # Select when to use precise seeks that are not limited to keyframes - # https://mpv.io/manual/stable/#options-hr-seek - -osd-font='Verdana' -osd-font-size=20 -osd-color='#FFFFFF' # Hex code for white -osd-border-color='#000000' # Hex code for black -osd-border-size=0.6 # Size for osd text and progress bar -osd-blur=0.2 # Gaussian blur factor. 0 means no blur applied (default) - - -# ========== LANGUAGE PRIORITY ========== - -alang=ja,jp,jpn,en,eng # Audio language priority -slang=zh_cn,zh_tw,zh,chi,en,eng # Subtitle language priority - - -# ========== AUDIO ========== - -volume=100 # default volume, 100 = unchanged -audio-file-auto=fuzzy # Load external audio with (almost) the same name as the video -volume-max=200 # Max volume of the player -audio-pitch-correction=yes # https://mpv.io/manual/stable/#options-audio-pitch-correction - - -# ========== SUBTITLES ========== - -demuxer-mkv-subtitle-preroll=yes # https://mpv.io/manual/stable/#options-demuxer-mkv-subtitle-preroll -sub-fix-timing=no # https://mpv.io/manual/stable/#options-sub-fix-timing -sub-auto=all # https://mpv.io/manual/stable/#options-sub-auto - -# The following options only apply to subtitles without own styling -sub-font='Noto Sans CJK SC' # Specify font to use for subtitles that do not themselves specify a particular font -sub-font-size=40 -sub-color='#FFFFFFFF' -sub-border-color='#FF000000' -sub-border-size=2.0 -sub-shadow-offset=0 -sub-spacing=0.0 - - -# ========== SCREENSHOT ========== - -screenshot-format=png # Output format of screenshots -screenshot-high-bit-depth=yes # Same output bitdepth as the video. Set it "no" if you want to save disc space -screenshot-png-compression=1 # Compression of the PNG picture (1-9). - # Higher value means better compression, but takes more time -screenshot-directory="~/Pictures/mpv-screenshots" # Output directory -screenshot-template="%f-%wH.%wM.%wS.%wT-#%#00n" # Name format (filename-hour-minute-second-milisecond-number) - - -# ========== INTERPOLATION ========== - -# blend-subtitles=yes # Subtitle blending in scenechanges (smoother effect) -# video-sync=display-resample # Set the fps as the max of your monitor refresh rate (only useful and needed with "interpolation=yes) -# interpolation=yes # Enable interpolation -# tscale=oversample # Interpolation method - - -# ========== CACHE ========== -# cache=yes -# cache-on-disk=yes -# cache-dir="C:\mpv-cache" -# demuxer-max-bytes=1000MiB -# demuxer-readahead-secs=300 -# demuxer-max-back-bytes=200MiB - - -# ========== AUTO PROFILES ========== - -# Auto profile that automatically applies for WEB-DL anime that need some debanding -[WEB-DL] - profile-desc=WEB-DL Anime (HatSubs, SubsPlease, HorribleSubs, Erai-raws) - profile-cond=string.match(p.filename, "HatSubs")~=nil or string.match(p.filename, "SubsPlease")~=nil or string.match(p.filename, "HorribleSubs")~=nil or string.match(p.filename, "Erai%-raws")~=nil - deband=yes diff --git a/config/mpv/.config/mpv/script-opts/gif.conf b/config/mpv/.config/mpv/script-opts/gif.conf deleted file mode 100644 index 06d92e3..0000000 --- a/config/mpv/.config/mpv/script-opts/gif.conf +++ /dev/null @@ -1,10 +0,0 @@ -# ========== CONFIGURATION FILE FOR MPV-GIF.LUA ========== - -# Sets the output directory -dir="$HOME/Videos/mpv-gifs" - -# Sets the resolution of the output GIFs -rez=1920 - -# Sets the framerate of the output gifs. Default is 15. Don't go too overboard or the filesize will balloon -fps=23.976 diff --git a/config/mpv/.config/mpv/script-opts/modernz.conf b/config/mpv/.config/mpv/script-opts/modernz.conf deleted file mode 100644 index 22d0953..0000000 --- a/config/mpv/.config/mpv/script-opts/modernz.conf +++ /dev/null @@ -1,382 +0,0 @@ -# Language and display -# set language (for available options, see: https://github.com/Samillion/ModernZ/blob/main/docs/TRANSLATIONS.md) -language=en -# font for the OSC (default: mpv-osd-symbols or the one set in mpv.conf) -font=mpv-osd-symbols - -# show mpv logo when idle -idlescreen=yes -# show OSC window top bar: "auto", "yes", or "no" (borderless/fullscreen) -window_top_bar=auto -# show OSC when windowed -showwindowed=yes -# show OSC when fullscreen -showfullscreen=yes -# show OSC when paused -showonpause=no -# disable OSC hide timeout when paused -keeponpause=yes -# disable Santa hat in December -greenandgrumpy=no - -# OSC behaviour and scaling -# time (in ms) before OSC hides if no mouse movement -hidetimeout=1500 -# if seeking should reset the hidetimeout -seek_resets_hidetimeout=yes -# fade-out duration (in ms), set to 0 for no fade -fadeduration=200 -# whether to enable fade-in effect -fadein=no -# minimum mouse movement (in pixels) required to show OSC -minmousemove=0 -# show OSC only when hovering at the bottom -bottomhover=yes -# height of hover zone for bottomhover (in pixels) -bottomhover_zone=130 -# show OSC when seeking -osc_on_seek=no -# show OSC on start of every file -osc_on_start=no -# pause video while seeking with mouse move (on button hold) -mouse_seek_pause=yes -# force show seekbar tooltip on mouse drag, even if not hovering seekbar -force_seek_tooltip=no - -# scale osc with the video -vidscale=auto -# osc scale factor when windowed -scalewindowed=1.0 -# osc scale factor when fullscreen -scalefullscreen=1.0 - -# Elements display -# show title in the OSC (above seekbar) -show_title=yes -# title above seekbar format: "${media-title}" or "${filename}" -title=${media-title} -# font size of the title text (above seekbar) -title_font_size=24 -# chapter title font size -chapter_title_font_size=14 -# show cached time information -cache_info=no -# show cache speed per second -cache_info_speed=no -# font size of the cache information -cache_info_font_size=12 - -# show chapter title alongside timestamp (below seekbar) -show_chapter_title=yes -# format for chapter display on seekbar hover (set to "no" to disable) -chapter_fmt=%s - -# show total time instead of remaining time -timetotal=yes -# show timecodes with milliseconds -timems=no -# use the Unicode minus sign in remaining time -unicodeminus=no -# "dynamic" or "fixed". dynamic shows MM:SS when possible, fixed always shows HH:MM:SS -time_format=dynamic -# font size of the time display -time_font_size=16 -# tooltips font size -tooltip_font_size=14 - -# Title bar settings -# show window title in borderless/fullscreen mode -window_title=no -# show window controls (close, minimize, maximize) in borderless/fullscreen -window_controls=yes -# same as title but for window_top_bar -windowcontrols_title=${media-title} - -# Subtitle display settings -# raise subtitles above the OSC when shown -raise_subtitles=yes -# amount by which subtitles are raised when the OSC is shown (in pixels) -raise_subtitle_amount=125 - -# Buttons display and functionality -# show the jump backward and forward buttons -jump_buttons=yes -# change the jump amount in seconds -jump_amount=10 -# change the jump amount in seconds when right-clicking jump buttons and shift-clicking chapter skip buttons -jump_more_amount=60 -# show different icon when jump_amount is set to 5, 10, or 30 -jump_icon_number=yes -# seek mode for jump buttons -jump_mode=relative -# enable continuous jumping when holding down seek buttons -jump_softrepeat=yes -# show the chapter skip backward and forward buttons -chapter_skip_buttons=no -# enable continuous skipping when holding down chapter skip buttons -chapter_softrepeat=yes -# show next/previous playlist track buttons -track_nextprev_buttons=yes - -# show mute button and volume slider -volume_control=yes -# volume scale type: "linear" or "logarithmic" -volume_control_type=linear -# show playlist button: Left-click for simple playlist, Right-click for interactive playlist -playlist_button=yes -# hide playlist button when no playlist exists -hide_empty_playlist_button=no -# gray out the playlist button when no playlist exists -gray_empty_playlist_button=no - -# show download button on web videos (requires yt-dlp and ffmpeg) -download_button=yes -# default download directory for videos (https://mpv.io/manual/master/#paths) -download_path=~/Videos/mpv Downloads/ -# show screenshot button -screenshot_button=yes -# flag for screenshot button: "subtitles", "video", "window", "each-frame" -screenshot_flag=subtitles - -# show window on top button -ontop_button=yes -# show loop button -loop_button=yes -# show speed control button -speed_button=yes -# speed change amount per click -speed_button_click=1 -# speed change amount on scroll -speed_button_scroll=0.25 -# show info button -info_button=yes -# show fullscreen toggle button -fullscreen_button=yes - -# enable looping by right-clicking pause -loop_in_pause=yes - -# force buttons to always be active. can add: playlist_prev,playlist_next -buttons_always_active=none - -# icon size for the play/pause button -playpause_size=28 -# icon size for the middle buttons -midbuttons_size=24 -# icon size for the side buttons -sidebuttons_size=24 - -# show zoom controls in image viewer mode -zoom_control=yes -# maximum zoom in value -zoom_in_max=4 -# minimum zoom out value -zoom_out_min=-1 - -# Colors and style -# accent color of the OSC and title bar -osc_color=#000000 -# color of the title in borderless/fullscreen mode -window_title_color=#FFFFFF -# color of the window controls (close, minimize, maximize) in borderless/fullscreen mode -window_controls_color=#FFFFFF -# color of close window control on hover -windowcontrols_close_hover=#F45C5B -# color of maximize window controls on hover -windowcontrols_max_hover=#F8BC3A -# color of minimize window controls on hover -windowcontrols_min_hover=#43CB44 -# color of the title (above seekbar) -title_color=#FFFFFF -# color of the cache information -cache_info_color=#FFFFFF -# color of the seekbar progress and handle -seekbarfg_color=#FB8C00 -# color of the remaining seekbar -seekbarbg_color=#94754F -# color of the cache ranges on the seekbar -seekbar_cache_color=#918F8E -# match volume bar color with seekbar color (ignores side_buttons_color) -volumebar_match_seek_color=no -# color of the timestamps (below seekbar) -time_color=#FFFFFF -# color of the chapter title next to timestamp (below seekbar) -chapter_title_color=#FFFFFF -# color of the side buttons (audio, subtitles, playlist, etc.) -side_buttons_color=#FFFFFF -# color of the middle buttons (skip, jump, chapter, etc.) -middle_buttons_color=#FFFFFF -# color of the play/pause button -playpause_color=#FFFFFF -# color of the element when held down (pressed) -held_element_color=#999999 -# color of a hovered button when hover_effect includes "color" -hover_effect_color=#FB8C00 -# color of the border for thumbnails (with thumbfast) -thumbnail_border_color=#111111 -# color of the border outline for thumbnails -thumbnail_border_outline=#404040 - -# alpha of the OSC background box -fade_alpha=130 -# blur strength for the OSC alpha fade. caution: high values can take a lot of CPU time to render -fade_blur_strength=100 -# use with "fade_blur_strength=0" to create a transparency box -fade_transparency_strength=0 -# alpha of the window title bar (0 to disable) -window_fade_alpha=100 -# blur strength for the window title bar. caution: high values can take a lot of CPU time to render -window_fade_blur_strength=100 -# use with "window_fade_blur_strength=0" to create a transparency box -window_fade_transparency_strength=0 -# width of the thumbnail border (for thumbfast) -thumbnail_border=3 -# rounded corner radius for thumbnail border (0 to disable) -thumbnail_border_radius=3 - -# Button hover effects -# active button hover effects: "glow", "size", "color"; can use multiple separated by commas -hover_effect=size,glow,color -# relative size of a hovered button if "size" effect is active -hover_button_size=115 -# glow intensity when "glow" hover effect is active -button_glow_amount=5 -# apply hover size effect to slider handle -hover_effect_for_sliders=yes - -# Tooltips and hints -# enable tooltips for disabled buttons and elements -tooltips_for_disabled_elements=yes -# enable text hints for info, loop, ontop, and screenshot buttons -tooltip_hints=yes - -# Progress bar settings -# size ratio of the seekbar handle (range: 0 ~ 1) -seek_handle_size=0.8 -# show seek range overlay -seekrange=yes -# transparency of the seek range -seekrangealpha=150 -# update chapter markers on the seekbar when duration changes -livemarkers=yes -# use keyframes when dragging the seekbar -seekbarkeyframes=no -# top chapter nibbles above seekbar -nibbles_top=yes -# bottom chapter nibbles below seekbar -nibbles_bottom=yes -# chapter nibble style. "triangle", "bar" or "single-bar" -nibbles_style=triangle - -# automatically set keyframes for the seekbar based on video length -automatickeyframemode=yes -# videos longer than this (in seconds) will have keyframes on the seekbar -automatickeyframelimit=600 - -# always show a small progress line at the bottom of the screen -persistentprogress=no -# height of the persistent progress bar -persistentprogressheight=17 -# show buffer status on web videos in the persistent progress line -persistentbuffer=no - -# Miscellaneous settings -# only used at init to set visibility_mode(...) -visibility=auto -# visibility modes to cycle through, modes are separated by _ -visibility_modes=never_auto_always -# minimum interval between OSC redraws (in seconds) -tick_delay=0.03 -# use display FPS as the minimum redraw interval -tick_delay_follow_display_fps=no - -# Elements Position -# Useful when adjusting font size or type - -# title height position above seekbar -title_height=96 -# title height position if a chapter title is below it -title_with_chapter_height=108 -# chapter title height position above seekbar -chapter_title_height=91 -# time codes height position -time_codes_height=35 -# time codes height position with portrait window -time_codes_centered_height=57 -# tooltip height position offset -tooltip_height_offset=2 -# if tooltip contains many characters, it is moved to the left by offset -tooltip_left_offset=5 -# portrait window width trigger to move some elements -portrait_window_trigger=1000 -# hide volume bar trigger window width -hide_volume_bar_trigger=1150 -# osc height offset if title above seekbar is disabled -notitle_osc_h_offset=25 -# osc height offset if chapter title is disabled or doesn't exist -nochapter_osc_h_offset=10 -# seek hover timecodes tooltip height position offset -seek_hover_tooltip_h_offset=0 -# osc height without offsets -osc_height=132 - -## Mouse commands -## details: https://github.com/Samillion/ModernZ#mouse-commands-user-options - -# title above seekbar mouse actions -title_mbtn_left_command=script-binding stats/display-page-5 -title_mbtn_mid_command=show-text ${path} -title_mbtn_right_command=script-binding select/select-watch-history; script-message-to modernz osc-hide - -# playlist button mouse actions -playlist_mbtn_left_command=script-binding select/menu; script-message-to modernz osc-hide -playlist_mbtn_right_command=script-binding select/select-playlist; script-message-to modernz osc-hide - -# volume mouse actions -vol_ctrl_mbtn_left_command=no-osd cycle mute -vol_ctrl_mbtn_right_command=script-binding select/select-audio-device; script-message-to modernz osc-hide -vol_ctrl_wheel_down_command=no-osd add volume -5 -vol_ctrl_wheel_up_command=no-osd add volume 5 - -# audio button mouse actions -audio_track_mbtn_left_command=script-binding select/select-aid; script-message-to modernz osc-hide -audio_track_mbtn_mid_command=cycle audio down -audio_track_mbtn_right_command=cycle audio -audio_track_wheel_down_command=cycle audio -audio_track_wheel_up_command=cycle audio down - -# subtitle button mouse actions -sub_track_mbtn_left_command=script-binding select/select-sid; script-message-to modernz osc-hide -sub_track_mbtn_mid_command=cycle sub down -sub_track_mbtn_right_command=cycle sub -sub_track_wheel_down_command=cycle sub -sub_track_wheel_up_command=cycle sub down - -# chapter skip buttons mouse actions -chapter_prev_mbtn_left_command=add chapter -1 -chapter_prev_mbtn_mid_command=show-text ${chapter-list} 3000 -chapter_prev_mbtn_right_command=script-binding select/select-chapter; script-message-to modernz osc-hide - -chapter_next_mbtn_left_command=add chapter 1 -chapter_next_mbtn_mid_command=show-text ${chapter-list} 3000 -chapter_next_mbtn_right_command=script-binding select/select-chapter; script-message-to modernz osc-hide - -# chapter title (below seekbar) mouse actions -chapter_title_mbtn_left_command=script-binding select/select-chapter; script-message-to modernz osc-hide -chapter_title_mbtn_right_command=show-text ${chapter-list} 3000 - -# playlist skip buttons mouse actions -playlist_prev_mbtn_left_command=playlist-prev -playlist_prev_mbtn_mid_command=show-text ${playlist} 3000 -playlist_prev_mbtn_right_command=script-binding select/select-playlist; script-message-to modernz osc-hide - -playlist_next_mbtn_left_command=playlist-next -playlist_next_mbtn_mid_command=show-text ${playlist} 3000 -playlist_next_mbtn_right_command=script-binding select/select-playlist; script-message-to modernz osc-hide - -# fullscreen button mouse actions -fullscreen_mbtn_left_command=cycle fullscreen -fullscreen_mbtn_right_command=cycle window-maximized - -# info button mouse actions -info_mbtn_left_command=script-binding stats/display-page-1-toggle diff --git a/config/mpv/.config/mpv/script-opts/thumbfast.conf b/config/mpv/.config/mpv/script-opts/thumbfast.conf deleted file mode 100644 index b0ae90a..0000000 --- a/config/mpv/.config/mpv/script-opts/thumbfast.conf +++ /dev/null @@ -1,17 +0,0 @@ -# This is configuration file for thumbfast.lua -# The default options are listed in thumbfast.lua - -# Maximum thumbnail size in pixels (scaled down to fit) -# Values are scaled when hidpi is enabled -max_height=250 -max_width=250 - -# Spawn thumbnailer on file load for faster initial thumbnails -spawn_first=yes - -# Enable on network playback -# This allows thumbnailing in videos played over network, e.g. YouTube -network=yes - -# Enable hardware decoding -hwdec=yes diff --git a/config/mpv/.config/mpv/scripts/audio-visualizer.lua b/config/mpv/.config/mpv/scripts/audio-visualizer.lua deleted file mode 100644 index ea986ed..0000000 --- a/config/mpv/.config/mpv/scripts/audio-visualizer.lua +++ /dev/null @@ -1,352 +0,0 @@ --- various audio visualization - -local opts = { - mode = "novideo", - -- off disable visualization - -- noalbumart enable visualization when no albumart and no video - -- novideo enable visualization when no video - -- force always enable visualization - - name = "showcqt", - -- off - -- showcqt - -- avectorscope - -- showspectrum - -- showcqtbar - -- showwaves - - quality = "medium", - -- verylow - -- low - -- medium - -- high - -- veryhigh - - height = 6, - -- [4 .. 12] - - forcewindow = true, - -- true (yes) always run visualizer regardless of force-window settings - -- false (no) does not run visualizer when force-window is no -} - --- key bindings --- cycle visualizer -local cycle_key = "c" - -if not (mp.get_property("options/lavfi-complex", "") == "") then - return -end - -local visualizer_name_list = { - "off", - "showcqt", - "avectorscope", - "showspectrum", - "showcqtbar", - "showwaves", -} - -local axis_0 = "image/png;base64," .. -"iVBORw0KGgoAAAANSUhEUgAAB4AAAAAgCAQAAABZEK0tAAAACXBIWXMAAA7EAAAOxAGVKw4bAAASO0lEQVR42u2de2wU1xXGV/IfSJEqVUJCQrIUISFFiiqhSFWkKFKFokpB1TqxHROT8ApueDgEE9u4MW4TSqFA" .. -"3TSUQmkSChRwII6BkAQCDSYlBtc1hiSA4/CyMcYGtsZvY3t3vXu719vVPjxzz71zd+wBvnOkdvHZ78w5v7mZmbt7Z9blgsFgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWCw+9HYBFbKboe8lE1A" .. -"HHHEEUccccQRRxxxxBFHHPEHNe4KBSJWijjiiCOOOOKII4444ogjjjjiD1icwWAwGAwGg8FgMBgM9hAYJsAwGAwGg8FgMBgMBnsozOVyR7zuQOSPdQeif0UcccQRRxxxxBFHHHHEEUcc8QciHn05KaPuwGDHYEfd" .. -"gUkZRgkQRxxxxBFHHHHEEUccccQRR/w+jhu9FQ6Hw+FwOBwOh8Ph8AfOx3Zz07LTXpmYzl89McuJOJ6e/czcCWkP7u4Gf/AHf/AHf/AHf/AHf/AHf/B/iPm73D99qaW2u7n7RqI/8lz4LWbxw1tVNjQh7dgH/Z6R" .. -"JdjBzmuXKxl7b42sdvqctrORCjqvTc1S3elx9V9vOXNy1+gcP3r+5K6Bu7y8YW/jqZO7PPU5S+Tyx/Fp9lysO/CLV1TqA3/wB3/wB3/wB3/wB3/wB3/wB/8x4e9yL37N+PlYP3o+/BazePVe+c089XL7D4n6qjJZ" .. -"dUlhrO7TLWo7wKj+gbvxkGbMv3sl8T3Ht8vlL8hLVPr6dq7Xqw/8wR/8wR/8wR/8wR/8wR/8wR/8k86f/89bK26eYazjSsXGsJ8ui90Bo+MVG7ua1HZAY1VoZj9Utacof8b8DSU15cGAmn5tcfnG/zaE2+tqUtsB" .. -"8fXv33T6w8EOxpprYt9xs46xgK9qT0Hes/M2rbr13cgA2SOfP+hnrLacZ68t72sNiYNvrbBWH/iDP/iDP/iDP/iDP/iDP/iDP/jbxD/8f3UVjF2v5q8ef9HlXpQbyjAcuxY7Gp8y8uV1878ZO7lLtsDNv+Ul/e5X" .. -"0b9cqlT9JGFypq+XscZTHM3bRaq7IFo/9z+/zZivPxrdsY7Xt35l5N8paV3XGavcLp8/4GMs0t+UrFvf8mESWcKgVh/4gz/4gz/4gz/4gz/4gz/4gz/428Q/vsC1xQFf9b5JGXcvf3/UqIE1bw57az5yuff/uadl" .. -"eZ5sefzzh8ZTsX+ZPmfvO5MzVRCWv8tXhz8xi6O5+pXeDqjaw1hvazTaFNqtjV/Hvn/Xho4ruUut7QCXO/vV4DBja95Ur0+Ff+Fy8Ad/8Ad/8Ad/8Ad/8Ad/8Ad/8FfgHy2wt7Wugs+d284aNxCJ36xTbb+7mbGj" .. -"76uq4p2vYb9U6XIf3sq/LH/qZfUdwOuvq/juM89F/nnD3ndi6gvt1C+06ovfAaGMN9Q6Bn/wB3/wB3/wB3/wB3/wB3/wB3/b+UcLjFjbOeMGRPFHnpu7yBzKPQ9jkduSH39xweKcJTlLFiz+Sbas3uVe9jrf8soC" .. -"rh8eZOzETpXtx9cfvgm7IOb76/6Y+sw8Je3Jl+R3AF/TfrpMXq/LX5yf5k/VR/FX6c8K/4npOUvi61XjT+l1+Yvz0/yp+ij+Kv1Z4f/oC4tyfz7POn9Kr8tfnJ/mT9VH8Vfpz9rxR+0EMPr4Q5+g9I4/Ipc5/oid" .. -"Pv7I9wf+9yf/1MxXc/kCQav8Rfpk8DfPL8dfVJ8Mf9n+MP7vv/HPr29/Nts6f0qfjOt/8/xy1/+i+mSu/2X7szb+017JWWK+qJYe/2K9/vgX5ZcZ/+L66PEv35/Djj/RAgfaG6u6Gs0/gTCPry4aaOdtNf/70ReM" .. -"NtJ/i7GyUv6qII/ffv1/Cxbly+ld7otH+Kr469Xcvd2M9d+OXSFP60fqv8vVzdWe+oCXsYA3+hV5/23GPvyjGaKfZB/a0nTK211/VH4H3DkfGiQ75PU6/On8Yv4y9Yn4S/dnkX9KWs1HXMEXUZj9epmIv4xehz+d" .. -"X8xfpj4Rf+n+LPJPzfz+GOfLWOfVuYvU+cvodfjT+cX8ZeoT8ZfuzyL/sJcU+geHB+ctVucvo9c7/lP5qeM/XZ/4+C/Zn0X+0+cEfGEf9n77qTp/Gb0Ofzq/mL9MfSL+0v1pjP8JabUf8wsvFvzkL1bGP6XXHf/i" .. -"/PT4p+qjxr9Ufxb5tzdE9i/3jBxV/jJ6Hf50fjF/mfpE/KX7szz+95R6e3jBd86b/cCLePzTer3xT+Wnxj9dn3j8S/Znmf9rr/e08Pz9HmvnX1qvx5/KT/Gn6xPzl+xP6/pHbQI8+vpHYgLM12i/t4axugMu94aS" .. -"tm8W5cY3wON/X8fYuYOJF6D3PN7ek7svf8VYTbnRRtrOMla1m796Zm74t564+e+FPwWg9VOz/AOJj7revEp++4lr0J98qb2BsfYfIv/mzzerrTBDdO4gX/3OmPwEeELaUGeowt/K63X40/nF/Gm9mL9Kf1b4f7mN" .. -"sdvnj29vrmbBq1+r85fR6/Cn84v503oxf5X+rPCv2MhYS+2xbRePDA92XlPnL6PX4U/nF/On9WL+Kv1Z4R8m2nmNb9Xst/FE/GX0Ovzp/GL+tF7MX6U/K/yfmcsfqXG58nLlD8e3rlbnL6PX4U/nF/On9WL+Kv1Z" .. -"G/+pmfwpop3Xaj769tDqIvXxT+v1xj+Vnxr/lJ4a//L9WeHf3jDQwffu5cq+NsaM17mI+MvodfjT+cX8ab2Yv0p/Vvgvez043Nd6uqzhy4DPU69+/JHR6/Cn84v503oxf5X+rPBPSeu+4R+s3ne6zD8w0G5856yI" .. -"v4xehz+dX8yf1ov5q/Rn9fpHbQI8+vpHegLscucuTQnN7fnTvmK/5o7G85alpI2+AA3jaP5PwBt9eHfUa/kK8JsRNFOypmbxXRJ5DDetP7QltLsG+ArysPe2hi45z8hvP3EHuNzb1jLm7Y386/SHoX/1zJgfjU9M" .. -"L3931sLI7nq7aGK6ygT4c75O3v/MXHm9Dn86v5g/rRfzV+tPnX/bue7m8OdNjaeGBxO/+aH5y+h1+NP5xfxpvZi/Wn/q/KdmrS0Ovzr/GWPGP4Mu4i+j1+FP5xfzp/Vi/mr9qfPnzu+84ZdXchPgeP4yeh3+dH4x" .. -"f1ov5q/Wnzp/PsGjfjJCxF9Gr8Ofzi/mT+vF/NX6szL++c+CfHPI+MgmM/5pvd74p/JT45/SU+NfpT91/sX5kUl1b2t3szp/Gb0Ofzq/mD+tF/NX60+d/4kdjIUnQ98eYsx4kbuIv4xehz+dX8yf1ov5q/Wnzn/m" .. -"Lxk7/eFIH+WM7Vinyl9Gr8Ofzi/mT+vF/NX6s3b9ozYBHn39Q0yAfzabPxb79vmi/Ih7vo89QEfjK94YfaftuU+CgfC0k4My+hJ8xnz/YGjG31BakprJPzFYnsefJRbJT+mfnce/+G89G/ls7cmX6vYzFgwW54eH" .. -"Ar39+P7eWlGx0VPPF0xE4o/N7LvFv9bfUxr+z6cg785Fxm7GXWKJJnjTsgN+xg5uKsovzt/2+4tHWHD0CnSRXo8/nT+Rf96yWP6UnuKv2p8q/6deDt/dMTG9+8Y9jyz/aHe0Xo8/nV/Mn9JT/FX7szb+p8/ZvGqw" .. -"o7NRnT+tT8b4F+WXGf/mernxL9+fOv+nZ/v6Oq9+9Q+zCR7Fn9Lr8qfyU/zFepq/Wn+q/PkEr/1Sc03LmSPvGU8yxPxpvR5/Or+YP6Wn+Kv2p8p/UoZ/sKvx6dkbSqbPkT//RunRej3+dH4xf0pP8Vftz9rxn196" .. -"m91XJ3P8F+mTcfwX5Zc5/pvr5Y7/8v2p8t+6mrHPt05Ie2LWnfP3/qvOn9br8afzi/lTeoq/an+q/GctDH8r63Lvfcf4m0oxf1qvx5/OL+ZP6Sn+qv1ZPf6Yu9zxx3QCnLuUPzR6tEVShOLRdeMsGEicmTediszl" .. -"d65nrLTEaDOfbuFFcbm3h/9oMbfIwUKsX1v8f2XI+CdtM+aH73fkFl7wTG0/vv6IBXwlhdH3FC739ob/7usN5w8Gd/9BboI4a+Fofo1f/zhddoKqy5+egIr5i/WJ/J+dF+Vf+7Fkf0ngPymj5Qxjxz6Q4990amJ6" .. -"4mWKmT45/M3zy/E308vyF/anzX/Lav63oU6jB03I8Bfpk8FflF+Gv7lejj/Rnyb/H44Hg0X5lduNJ3g0f7Fen784P81fpJfhT/anxf+JWSMLxgYHOxJ/rEGOP6XX5U/lp/iL9TR/if60+OcuDV0sXeCXcEG/0ZM9" .. -"Kf6UXpc/lZ/iL9bT/CX6S8L51+Wu/djq8UesT8751zy/3PnXTC97/hX2p8mf32Tm7Q0O+/tXvGGFv1ivz1+cn+Yv0svwJ/vT4p+S1tfq69+/6eRufpc9fxKyGn9Kr8ufyk/xF+tp/hL9JeX4Y+ayxx/TCfC07PAt" .. -"zGY7ID7e70m8zb/pdOwE9I+/Nt5QacmdC1EQnVc/+lOkRLF+1kK+tG3k8rKLD+/JmXevhHfJ8ODx7TLbT+wvGLznaTr12uuJlxEXDocfZcOt7WxkWSM9wZuW3R3NH/T3tzfsKVWZoOryl5kAi/iL9Yn8J2Uk8lft" .. -"zwr/adn8AfDG9wmM5l9WOvo9Ir0+f1F+Gf7mejn+Kv1Z4f/YzENbQtOMQHP16AOLDH+xXp+/KL8Mf3O9HH+V/lT5/6aQBS8cdrnNJngUf1qvx5/KT/EX62n+qv2pj/+y0tKSiekpafVfMBb74C7Z8U/pdce/OD89" .. -"/kV6mfGv1p8q/02r+F+aq/f+6e6lYDD26aFy/Gm9Hn8qP8VfrKf5q/Zn7fqHP6rGeIGvzPFfrE/G9Y95frnrHzO97PWPfH+q/FMz275hbLAj4AsGyt9V50/r9fhT+Sn+Yj3NX7U/9fFflD/QMfLX0DVWzT718U/p" .. -"dce/OD89/kV6mfGv1p/V44+Zyx5/TCfAuv7NoeBw+AHYfAnygsXm73xs5sqCzauK8uO/xpfX626f8tTMksLNqwryjB6QT00wKdfVJyO/MX/n9GfGf/ZCftdBVZnVvLr6ZOU34++U/kTjn/snf9F7Wp+uXje/aPw7" .. -"oT9j/vyjjb62riZ+kmk7a/yMA5Hr6pOX35i/c/qjxn9BHmOf/dV6fl29bn5q/I93f8b8V7zBHzLHX5UUMnZyl2pWXX3y8hvzd05/ovFflK93htHVJyO/aPw7oT9j/l+8z9i2tSlpU7MaqwL+KVmqWXX1yctvzN85" .. -"/ZmP/ylZ61fmLj25m2/JSmZdfXLym49/Z/RHnX9tcf0U+zcxtvEt/up6dcCnfgEy3no5fxAmwPdnf+uKfb1BP/9s76mX/75u7PVOr8/u/qK+Yx1j5p/x2q93en329Hf5q86r3PlPvd08o35809U7vT67+5ucGbnX" .. -"74M1jO3aMNZ6p9dnd39TsoaHum/wVzlLGPvXP8Za7/T67O4v7GcPitZ32K93en329dfwZdCfOvIAoyN/Y8xskbF9eqfXZ3d/EV/zZsDXdV30qDl79U6vz+7+bPJknAAG2oe6jm///hhjdfvvPz3lxfkXDtcfZay7" .. -"pf5obYX02vKk6Z1en739PTuP37PQ1VR/tP6o5yJjks92S5re6fXZ3Z/L3VzdXP351oObqvcNdfv6jX/mwU690+uzu7+wn9jZfinysInx0Du9Pvv662rsaancvn9TzT5vz1D3tOyx1ju9Prv7c7n5mb3hn59u6bjC" .. -"TJcY26l3en1298f9nqf7+njqnV6fff2Vv8t/4urEzu8+8/V7e1Izx1rv9Prs7u/xF2srTuy4+q9gYKizcPnY651en9392ezJSLJ+5VAXX4DdenZq1v2oF3vl9uhN1v7+2Id1j43e6fXZ29/shfF3RryQM7Z6p9dn" .. -"d38ud/W+yL0Zva3rV4693un12d0f9x+n8x+zZ+yeZ1LGeOidXp+d/ZVv9PaE9293i9kdtnbqnV6f3f3x59u3/Cf84JQv3h8PvdPrs7s/l/uR5/pu6Sxu19U7vT57+6v9OHyG6WuL/tTLWOqdXp+9/WXk8AfMMea5" .. -"+ItXxkPv9Prs7s9mT9YpIHepTvvjrYfD4Waempm7tDj/+QVWl7fo6p1en939wcfXH3luweKifLMfmbFf7/T67O6Pe/ary/MefWH89E6vz+7+4OPpU7Pyls38pfXzi67e6fXZ29/kzOV5OrMLXb3T67O7P1sdBxc4" .. -"HA6Hw+FwOBwOhz8UDgRwOBwOh8PhcDgcDn8oHAjgcDgcDofD4XA4HP4w+P8AQEuXMXpD8/kAAAAASUVORK5CYII=" - -local axis_1 = "image/png;base64," .. -"iVBORw0KGgoAAAANSUhEUgAAB4AAAAAwCAQAAABaxq+2AAAACXBIWXMAAA7EAAAOxAGVKw4bAAATVklEQVR42u2df0xUZ7rHJ+EPkiabbGJiYkLSmJg0aTYxTTZNmiYb09ykZjO0QLHY+quy9Qe1YgG5Re62rlev" .. -"etluXVevt62rrkq1FLG21epW7FqUZRFtq1LqLxAR1FnkNwIzw8x752V27gzDOe/zvuedA0f5fp9kd+SZ7zPv8zlvz5x35pwzLhcEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAE" .. -"QRAEQRAEQRAEQRAEQRAEQRAEQRBkq1gyK2F3Q1HCkpFHHnnkkUceeeSRRx555JFH/lHNu0KJiEqQRx555JFHHnnkkUceeeSRR/4RyzMIgiAIgiAIgiAImgTCAhiCIAiCIAiCIAiaFHK53JGoq4j8sa4i+lfkkUce" .. -"eeSRRx555JFHHnnkkX8k8tGHU9PrKgY7BjvqKqamGxVAHnnkkUceeeSRRx555JFHHvmHOG/0VAQCgUAgEAgEAoFAIB65AAIEAoFAIBAIBAKBQEyKAAIEAoFAIBAIBAKBQEyKGN+Xm5mV+tqUNP7oqblOxPHsvOcW" .. -"JKc+upsb/MEf/MEf/MEf/MEf/MEf/MF/EvN3uX/5Skttd3P3rfh47IXwU8zyR3eovFBy6omP+j0jN+EKdt64WsnYB+tlvbPmt52PjKDzxoxM1Y0+avw3W86d3ju2xs9ePL134D4f3rC38czpvZ767OVy9UfxafZc" .. -"rqv49Wsq4wN/8Ad/8Ad/8Ad/8Ad/8Ad/8Af/ceHvci97w/gXkn72YvgpZvnqA/Iv88yr7T/F+6tKZd3FBbG+z7erbQCj8Q/cHw1p9qL71+Kfc3KXXP383Hinr2/PJr3xgT/4gz/4gz/4gz/4gz/4gz/4g3/C+fP/" .. -"eWf17XOMdVwr3xKOs6WxG2BsvnxLV5PaBmisCq3sh6r2F+bNXrS5uKYsGFDzbygq2/LPhnB7XU1qG2D0+A9tPfvxYAdjzTWxz7hdx1jAV7U/P/f5hVvX3vlhZILsl68f9DNWW8ar15b1tYbMwXdWWxsf+IM/+IM/" .. -"+IM/+IM/+IM/+IM/+NvEP/x/deWM3azmj5582eVemhOqMBx7LnY0P33ky+vmvzN2eq/sALf9jg/pP/89+pcrlaqfJEzL8PUy1niGo3m3UHUTRMfP44/vMubrj2Z3b+Tj27Qm8u+k1K6bjFXukq8f8DEW6W965p3v" .. -"+TSJnMKgNj7wB3/wB3/wB3/wB3/wB3/wB3/wt4n/6AFuKAr4qg9OTb9/9cfjRg2sf3vYW/OJy33ojz0tq3Jlh8c/f2g8E/uXWfMPvDctQwVh2fv87PCn5nI017/R2wBV+xnrbY1mm0KbtfHb2Ofv3dxxLWeFtQ3g" .. -"cme9HhxmbP3b6uNT4V+wCvzBH/zBH/zBH/zBH/zBH/zBH/wV+EcH2NtaV87Xzm3njRuI5G/Xqbbf3czY8Q9VXaODn8N+pdLlPrqDf1n+zKvqG4CPv678hy88l/nnDQfeixlfaKN+pTW+0RsgVPGWWsfgD/7gD/7g" .. -"D/7gD/7gD/7gD/7gbzv/6AAjartg3IAo/9gLC5aaQ3ngYSxyWfKTLy9elr08e/niZb/IkvW73Cvf5K+8Jp/7hwcZO7VH5fVHjz98EXZ+zPfX/THjM4uk1Kdfkd8A/Jz2s6Xyfl3+4vo0f2p8FH+V/qzwn5KWvXz0" .. -"eNX4U35d/uL6NH9qfBR/lf6s8H/8paU5/7bQOn/Kr8tfXJ/mT42P4q/Sn7X9j9obwNj9D/0Gpbf/EYXM/kcc9P5Hvj/wfzj5p2S8nsNPELTKX+RPBH/z+nL8ReOT4S/bH+b/wzf/+fHtr+ZZ50/5E3H8b15f7vhf" .. -"ND6Z43/Z/qzN/9TXspebn1RLz3+xX3/+i+rLzH/x+Oj5L9+fw/Y/0QEOtDdWdTWafwJhnl9XONDO22r+++MvGb1I/x3GSkv4o/xcfvn1vxQszJPzu9yXj/Gz4m9W8/B2M9Z/N/YMedo/Mv773N1c7akPeBkLeKNf" .. -"kfffZezj35sh+kXWke1NZ7zd9cflN8C9i6FJslver8Ofri/mLzM+EX/p/izyT0qt+YQ7+EkUZr9eJuIv49fhT9cX85cZn4i/dH8W+adk/HiC82Ws8/qCper8Zfw6/On6Yv4y4xPxl+7PIv9wFBf4B4cHFy5T5y/j" .. -"19v/U/Wp/T89PvH+X7I/i/xnzQ/4wjHs/f5zdf4yfh3+dH0xf5nxifhL96cx/5NTaz/lB14s+NmfrMx/yq87/8X16flPjY+a/1L9WeTf3hDZvjzSs1X5y/h1+NP1xfxlxifiL92f5fm/v8Tbwwd876LZD7yI5z/t" .. -"15v/VH1q/tPjE89/yf4s83/jzZ4WXr/fY+39l/br8afqU/zp8Yn5S/andfyjtgAee/wjsQDm52h/sJ6xugqXe3Nx23dLc0Y3wPN/3sjYhcPxB6APPN7e0/uufsNYTZnRi7SdZ6xqH3/03ILwbz1x+R+EPwWg/TMy" .. -"/QPxt7retlb+9ePPQX/6lfYGxtp/ivyb39+sttwM0YXD/Ox3xuQXwMmpQ52hEf5O3q/Dn64v5k/7xfxV+rPC/+udjN29eHJXczULXv9Wnb+MX4c/XV/Mn/aL+av0Z4V/+RbGWmpP7Lx8bHiw84Y6fxm/Dn+6vpg/" .. -"7RfzV+nPCv8w0c4b/FXNfhtPxF/Gr8Ofri/mT/vF/FX6s8L/uQX8lhpXK69W/nRyxzp1/jJ+Hf50fTF/2i/mr9KftfmfksHvItp5o+aT74+sK1Sf/7Rfb/5T9an5T/mp+S/fnxX+7Q0DHXzrXq3sa2PM+DwXEX8Z" .. -"vw5/ur6YP+0X81fpzwr/lW8Gh/taz5Y2fB3weerV9z8yfh3+dH0xf9ov5q/SnxX+Sandt/yD1QfPlvoHBtqNr5wV8Zfx6/Cn64v5034xf5X+rB7/qC2Axx7/SC+AXe6cFUmhtT2/21fs19zRfO7KpNSxB6BhHM3/" .. -"CHijN++ORi0/A/x2BM30zBmZfJNEbsNN+49sD22uAX4GeTh6W0OHnOfkXz9+A7jcOzcw5u2N/Ovsx6F/9cxeFM1PSSt7f+6SyOZ6t3BKmsoC+Et+nrz/uQXyfh3+dH0xf9ov5q/Wnzr/tgvdzeHPmxrPDA/Gf/ND" .. -"85fx6/Cn64v5034xf7X+1PnPyNxQFH508QvGjH8GXcRfxq/Dn64v5k/7xfzV+lPnz4NfecMPr+QWwKP5y/h1+NP1xfxpv5i/Wn/q/PkCj/rJCBF/Gb8Of7q+mD/tF/NX68/K/Oc/C/LdEeM9m8z8p/1685+qT81/" .. -"yk/Nf5X+1PkX5UUW1b2t3c3q/GX8Ovzp+mL+tF/MX60/df6ndjMWXgx9f4Qx45PcRfxl/Dr86fpi/rRfzF+tP3X+c37D2NmPR/ooY2z3RlX+Mn4d/nR9MX/aL+av1p+14x+1BfDY4x9iAfyrefy22HcvFuZFwvNj" .. -"7A46ml/91tgrbS98FgyEl50clNGX4LMX+QdDK/6GkuKUDP6Jwapcfi+xSH3K//xC/sV/6/nIZ2tPv1J3iLFgsCgvPBXo1x/d3zury7d46vkJE5H8E3P67vCv9feXhP/zyc+9d5mx26MOsUQLvJlZAT9jh7cW5hXl" .. -"7fyvy8dYcOwZ6CK/Hn+6fjz/3JWx/Ck/xV+1P1X+z7wavrpjSlr3rQceWf7R7mi/Hn+6vpg/5af4q/Znbf7Pmr9t7WBHZ6M6f9qfiPkvqi8z/839cvNfvj91/s/O8/V1Xv/mL2YLPIo/5dflT9Wn+Iv9NH+1/lT5" .. -"8wVe+5XmmpZzxz4wXmSI+dN+Pf50fTF/yk/xV+1Plf/UdP9gV+Oz8zYXz5ov//4bpUf79fjT9cX8KT/FX7U/a/t/fuhtdl2dzP5f5E/E/l9UX2b/b+6X2//L96fKf8c6xr7ckZz61Nx7Fx/8U50/7dfjT9cX86f8" .. -"FH/V/lT5z10S/lbW5T7wnvE3lWL+tF+PP11fzJ/yU/xV+7O6/zEPuf2P6QI4ZwW/afRYRUqE8tHzxlkwEL8ybzoTWcvv2cRYSbHRy3y+nQ+K2709/EeLuSI7C7F/Q9G/nCHxT9pmLwpf78gVPuGZev3R448o4Csu" .. -"iD6nYJW3N/x3X2+4fjC477/lFohzl4zl1/jtz9NkF6i6/OkFqJi/2B/P//mFUf61n0r2lwD+U9NbzjF24iM5/k1npqTFH6aY+RPD37y+HH8zvyx/YX/a/Lev438b6jS60YQMf5E/EfxF9WX4m/vl+BP9afL/6WQw" .. -"WJhXuct4gUfzF/v1+Yvr0/xFfhn+ZH9a/J+aO3LC2OBgR/yPNcjxp/y6/Kn6FH+xn+Yv0Z8W/5wVoYOlS/wQLug3urMnxZ/y6/Kn6lP8xX6av0R/CXj/dblrP7W6/xH7E/P+a15f7v3XzC/7/ivsT5M/v8jM2xsc" .. -"9vevfssKf7Ffn7+4Ps1f5JfhT/anxT8pta/V139o6+l9/Cp7fidkNf6UX5c/VZ/iL/bT/CX6S8j+xyxk9z+mC+CZWeFLmM02wOh8vyf+Mv+ms7EL0N//h/ELlRTfuxQF0Xn9kz9Ehij2z13CT20bObzs4tN7Wsb9" .. -"a+FNMjx4cpfM68f3Fww+8DSdeePN+MOIS0fDt7LhajsfOa2RXuDNzOqO1g/6+9sb9peoLFB1+cssgEX8xf54/lPT4/mr9meF/8wsfgN44+sExvIvLRn7HJFfn7+ovgx/c78cf5X+rPB/Ys6R7aFlRqC5euyORYa/" .. -"2K/PX1Rfhr+5X46/Sn+q/H9bwIKXjrrcZgs8ij/t1+NP1af4i/00f9X+1Od/aUlJ8ZS0pNT6rxiLvXGX7Pyn/LrzX1yfnv8iv8z8V+tPlf/WtfwvzdUH/nD/SjAYe/dQOf60X48/VZ/iL/bT/FX7s3b8w29VY3yC" .. -"r8z+X+xPxPGPeX254x8zv+zxj3x/qvxTMtq+Y2ywI+ALBsreV+dP+/X4U/Up/mI/zV+1P/X5X5g30DHy19AxVs1B9flP+XXnv7g+Pf9Ffpn5r9af1f2PWcjuf0wXwLrx3ZHgcPgG2PwU5MXLzJ/5xJw1+dvWFuaN" .. -"/hpf3q/7+lSkZBQXbFubn2t0g3xqgUmFrj8R9Y35O6c/M/7zlvCrDqpKrdbV9Seqvhl/p/Qnmv88PvuT3t36dP269UXz3wn9GfPnH230tXU18TeZtvPG9zgQha4/cfWN+TunP2r+5+cy9sX/WK+v69etT83/ie7P" .. -"mP/qt/hN5vij4gLGTu9VrarrT1x9Y/7O6U80/wvz9N5hdP2JqC+a/07oz5j/Vx8ytnNDUuqMzMaqgH96pmpVXX/i6hvzd05/5vN/euamNTkrTu/jr2Slsq4/MfXN578z+qPef20J/RKHtjK25R3+6GZ1wKd+ADLR" .. -"frl4FBbAD2d/G4t8vUE//2zvmVf/vHH8/U4fn939RWP3RsbMP+O13+/08dnT39VvOq/z4D/1dvuc+v5N1+/08dnd37SMyLV+H61nbO/m8fY7fXx29zc9c3io+xZ/lL2csb/9Zbz9Th+f3f2F4/xh0fkd9vudPj77" .. -"+mv4OuhPGbmB0bH/ZczsJGP7/E4fn939RWL92wFf103Rrebs9Tt9fHb3Z1Mk4g1goH2o6+SuH08wVnfo4fNTUZR36Wj9cca6W+qP15ZLn1ueML/Tx2dvf88v5NcsdDXVH68/7rnMmOS93RLmd/r47O7P5W6ubq7+" .. -"csfhrdUHh7p9/cY/82Cn3+njs7u/cJza034lcrOJifA7fXz29dfV2NNSuevQ1pqD3p6h7plZ4+13+vjs7s/l5u/sDX/9fHvHNWZ6irGdfqePz+7+eDzwdN+cSL/Tx2dff2Xv85+4OrXnhy98/d6elIzx9jt9fHb3" .. -"9+TLteWndl//WzAw1Fmwavz9Th+f3f3ZHIkosmnNUBc/Abv1/IzMh9Evjspd0Yus/f2xN+seH7/Tx2dvf/OWjL4y4qXs8fU7fXx29+dyVx+MXJvR27ppzfj7nT4+u/vj8fM0/mP2jD3wTE2fCL/Tx2dnf2VbvD3h" .. -"7dvdYnaFrZ1+p4/P7v74/e1b/hG+ccpXH06E3+njs7s/l/uxF/ru6Jzcrut3+vjs7a/20/A7TF9b9KdextPv9PHZ2196Nr/BHGOey79+bSL8Th+f3f3ZHIl6C8hZodP+RPsRCIRZpGTkrCjKe3Gx1dNbdP1OH5/d" .. -"/SEmNh57YfGywjyzH5mx3+/08dndH4+s11flPv7SxPmdPj67+0NMZMzIzF055zfW3190/U4fn739TctYlauzutD1O318dvdna2DngkAgEAgEAoFAIBCISRFAgEAgEAgEAoFAIBCISRHRh1PT6yqGOoc66yqMr6NC" .. -"HnnkkUceeeSRRx555JFHHvmHOB99WFcRuZGO8b00kUceeeSRRx555JFHHnnkkUf+Ic4zCIIgCIIgCIIgCJoEwgIYgiAIgiAIgiAImhRyRcVK/v+vJS4DIY888sgjjzzyyCOPPPLII4/8o5B3seTQU+6EooQlI488" .. -"8sgjjzzyyCOPPPLII4/8o5qHIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCEqf/A/SNfayCCBqGAAAAAElFTkSuQmCC" - -local options = require 'mp.options' -local msg = require 'mp.msg' - -options.read_options(opts) -opts.height = math.min(12, math.max(4, opts.height)) -opts.height = math.floor(opts.height) - -if not opts.forcewindow and mp.get_property('force-window') == "no" then - return -end - -local function get_visualizer(name, quality, vtrack) - local w, h, fps - - if quality == "verylow" then - w = 640 - fps = 30 - elseif quality == "low" then - w = 960 - fps = 30 - elseif quality == "medium" then - w = 1280 - fps = 60 - elseif quality == "high" then - w = 1920 - fps = 60 - elseif quality == "veryhigh" then - w = 2560 - fps = 60 - else - msg.log("error", "invalid quality") - return "" - end - - h = w * opts.height / 16 - - if name == "showcqt" then - local count = math.ceil(w * 180 / 1920 / fps) - - return "[aid1] asplit [ao]," .. - "aformat = channel_layouts = stereo," .. - "firequalizer =" .. - "gain = '1.4884e8 * f*f*f / (f*f + 424.36) / (f*f + 1.4884e8) / sqrt(f*f + 25122.25)':" .. - "scale = linlin:" .. - "wfunc = tukey:" .. - "zero_phase = on:" .. - "fft2 = on," .. - "showcqt =" .. - "fps =" .. fps .. ":" .. - "size =" .. w .. "x" .. h .. ":" .. - "count =" .. count .. ":" .. - "csp = bt709:" .. - "bar_g = 2:" .. - "sono_g = 4:" .. - "bar_v = 9:" .. - "sono_v = 17:" .. - "axisfile = data\\\\:'" .. axis_0 .. "':" .. - "font = 'Nimbus Mono L,Courier New,mono|bold':" .. - "fontcolor = 'st(0, (midi(f)-53.5)/12); st(1, 0.5 - 0.5 * cos(PI*ld(0))); r(1-ld(1)) + b(ld(1))':" .. - "tc = 0.33:" .. - "attack = 0.033:" .. - "tlength = 'st(0,0.17); 384*tc / (384 / ld(0) + tc*f /(1-ld(0))) + 384*tc / (tc*f / ld(0) + 384 /(1-ld(0)))'," .. - "format = yuv420p [vo]" - - - elseif name == "avectorscope" then - return "[aid1] asplit [ao]," .. - "aformat =" .. - "sample_rates = 192000," .. - "avectorscope =" .. - "size =" .. w .. "x" .. h .. ":" .. - "r =" .. fps .. "," .. - "format = rgb0 [vo]" - - - elseif name == "showspectrum" then - return "[aid1] asplit [ao]," .. - "showspectrum =" .. - "size =" .. w .. "x" .. h .. ":" .. - "win_func = blackman [vo]" - - - elseif name == "showcqtbar" then - local axis_h = math.ceil(w * 12 / 1920) * 4 - - return "[aid1] asplit [ao]," .. - "aformat = channel_layouts = stereo," .. - "firequalizer =" .. - "gain = '1.4884e8 * f*f*f / (f*f + 424.36) / (f*f + 1.4884e8) / sqrt(f*f + 25122.25)':" .. - "scale = linlin:" .. - "wfunc = tukey:" .. - "zero_phase = on:" .. - "fft2 = on," .. - "showcqt =" .. - "fps =" .. fps .. ":" .. - "size =" .. w .. "x" .. (h + axis_h)/2 .. ":" .. - "count = 1:" .. - "csp = bt709:" .. - "bar_g = 2:" .. - "sono_g = 4:" .. - "bar_v = 9:" .. - "sono_v = 17:" .. - "sono_h = 0:" .. - "axisfile = data\\\\:'" .. axis_1 .. "':" .. - "axis_h =" .. axis_h .. ":" .. - "font = 'Nimbus Mono L,Courier New,mono|bold':" .. - "fontcolor = 'st(0, (midi(f)-53.5)/12); st(1, 0.5 - 0.5 * cos(PI*ld(0))); r(1-ld(1)) + b(ld(1))':" .. - "tc = 0.33:" .. - "attack = 0.033:" .. - "tlength = 'st(0,0.17); 384*tc / (384 / ld(0) + tc*f /(1-ld(0))) + 384*tc / (tc*f / ld(0) + 384 /(1-ld(0)))'," .. - "format = yuv420p," .. - "split [v0]," .. - "crop =" .. - "h =" .. (h - axis_h)/2 .. ":" .. - "y = 0," .. - "vflip [v1];" .. - "[v0][v1] vstack [vo]" - - - elseif name == "showwaves" then - return "[aid1] asplit [ao]," .. - "showwaves =" .. - "size =" .. w .. "x" .. h .. ":" .. - "r =" .. fps .. ":" .. - "mode = p2p," .. - "format = rgb0 [vo]" - elseif name == "off" then - local hasvideo = false - for id, track in ipairs(mp.get_property_native("track-list")) do - if track.type == "video" then - hasvideo = true - break - end - end - if hasvideo then - return "[aid1] asetpts=PTS [ao]; [vid1] setpts=PTS [vo]" - else - return "[aid1] asetpts=PTS [ao];" .. - "color =" .. - "c = Black:" .. - "s =" .. w .. "x" .. h .. "," .. - "format = yuv420p [vo]" - end - end - - msg.log("error", "invalid visualizer name") - return "" -end - -local function select_visualizer(vtrack) - if opts.mode == "off" then - return "" - elseif opts.mode == "force" then - return get_visualizer(opts.name, opts.quality, vtrack) - elseif opts.mode == "noalbumart" then - if vtrack == nil then - return get_visualizer(opts.name, opts.quality, vtrack) - end - return "" - elseif opts.mode == "novideo" then - if vtrack == nil or vtrack.albumart then - return get_visualizer(opts.name, opts.quality, vtrack) - end - return "" - end - - msg.log("error", "invalid mode") - return "" -end - -local function visualizer_hook() - local count = mp.get_property_number("track-list/count", -1) - if count <= 0 then - return - end - - local atrack = mp.get_property_native("current-tracks/audio") - local vtrack = mp.get_property_native("current-tracks/video") - - --no tracks selected (yet) - if atrack == nil and vtrack == nil then - for id, track in ipairs(mp.get_property_native("track-list")) do - if track.type == "video" and (vtrack == nil or vtrack.albumart == true) and mp.get_property("vid") ~= "no" then - vtrack = track - elseif track.type == "audio" then - atrack = track - end - end - end - - local lavfi = select_visualizer(vtrack) - --prevent endless loop - if lavfi ~= mp.get_property("options/lavfi-complex", "") then - mp.set_property("options/lavfi-complex", lavfi) - end -end - -mp.add_hook("on_preloaded", 50, visualizer_hook) -mp.observe_property("current-tracks/audio", "native", visualizer_hook) -mp.observe_property("current-tracks/video", "native", visualizer_hook) - -local function cycle_visualizer() - local i, index = 1 - for i = 1, #visualizer_name_list do - if (visualizer_name_list[i] == opts.name) then - index = i + 1 - if index > #visualizer_name_list then - index = 1 - end - break - end - end - opts.name = visualizer_name_list[index] - visualizer_hook() -end - -mp.add_key_binding(cycle_key, "cycle-visualizer", cycle_visualizer) diff --git a/config/mpv/.config/mpv/scripts/autoload.lua b/config/mpv/.config/mpv/scripts/autoload.lua deleted file mode 100644 index b4d40b5..0000000 --- a/config/mpv/.config/mpv/scripts/autoload.lua +++ /dev/null @@ -1,221 +0,0 @@ --- This script automatically loads playlist entries before and after the --- the currently played file. It does so by scanning the directory a file is --- located in when starting playback. It sorts the directory entries --- alphabetically, and adds entries before and after the current file to --- the internal playlist. (It stops if it would add an already existing --- playlist entry at the same position - this makes it "stable".) --- Add at most 5000 * 2 files when starting a file (before + after). - ---[[ -To configure this script use file autoload.conf in directory script-opts (the "script-opts" -directory must be in the mpv configuration directory, typically ~/.config/mpv/). - -Example configuration would be: - -disabled=no -images=no -videos=yes -audio=yes -ignore_hidden=yes - ---]] - -MAXENTRIES = 5000 - -local msg = require 'mp.msg' -local options = require 'mp.options' -local utils = require 'mp.utils' - -o = { - disabled = false, - images = true, - videos = true, - audio = true, - ignore_hidden = true -} -options.read_options(o) - -function Set (t) - local set = {} - for _, v in pairs(t) do set[v] = true end - return set -end - -function SetUnion (a,b) - local res = {} - for k in pairs(a) do res[k] = true end - for k in pairs(b) do res[k] = true end - return res -end - -EXTENSIONS_VIDEO = Set { - '3g2', '3gp', 'avi', 'flv', 'm2ts', 'm4v', 'mj2', 'mkv', 'mov', - 'mp4', 'mpeg', 'mpg', 'ogv', 'rmvb', 'webm', 'wmv', 'y4m' -} - -EXTENSIONS_AUDIO = Set { - 'aiff', 'ape', 'au', 'flac', 'm4a', 'mka', 'mp3', 'oga', 'ogg', - 'ogm', 'opus', 'wav', 'wma' -} - -EXTENSIONS_IMAGES = Set { - 'avif', 'bmp', 'gif', 'j2k', 'jp2', 'jpeg', 'jpg', 'jxl', 'png', - 'svg', 'tga', 'tif', 'tiff', 'webp' -} - -EXTENSIONS = Set {} -if o.videos then EXTENSIONS = SetUnion(EXTENSIONS, EXTENSIONS_VIDEO) end -if o.audio then EXTENSIONS = SetUnion(EXTENSIONS, EXTENSIONS_AUDIO) end -if o.images then EXTENSIONS = SetUnion(EXTENSIONS, EXTENSIONS_IMAGES) end - -function add_files_at(index, files) - index = index - 1 - local oldcount = mp.get_property_number("playlist-count", 1) - for i = 1, #files do - mp.commandv("loadfile", files[i], "append") - mp.commandv("playlist-move", oldcount + i - 1, index + i - 1) - end -end - -function get_extension(path) - match = string.match(path, "%.([^%.]+)$" ) - if match == nil then - return "nomatch" - else - return match - end -end - -table.filter = function(t, iter) - for i = #t, 1, -1 do - if not iter(t[i]) then - table.remove(t, i) - end - end -end - --- alphanum sorting for humans in Lua --- http://notebook.kulchenko.com/algorithms/alphanumeric-natural-sorting-for-humans-in-lua - -function alphanumsort(filenames) - local function padnum(n, d) - return #d > 0 and ("%03d%s%.12f"):format(#n, n, tonumber(d) / (10 ^ #d)) - or ("%03d%s"):format(#n, n) - end - - local tuples = {} - for i, f in ipairs(filenames) do - tuples[i] = {f:lower():gsub("0*(%d+)%.?(%d*)", padnum), f} - end - table.sort(tuples, function(a, b) - return a[1] == b[1] and #b[2] < #a[2] or a[1] < b[1] - end) - for i, tuple in ipairs(tuples) do filenames[i] = tuple[2] end - return filenames -end - -local autoloaded = nil - -function get_playlist_filenames() - local filenames = {} - for n = 0, pl_count - 1, 1 do - local filename = mp.get_property('playlist/'..n..'/filename') - local _, file = utils.split_path(filename) - filenames[file] = true - end - return filenames -end - -function find_and_add_entries() - local path = mp.get_property("path", "") - local dir, filename = utils.split_path(path) - msg.trace(("dir: %s, filename: %s"):format(dir, filename)) - if o.disabled then - msg.verbose("stopping: autoload disabled") - return - elseif #dir == 0 then - msg.verbose("stopping: not a local path") - return - end - - pl_count = mp.get_property_number("playlist-count", 1) - -- check if this is a manually made playlist - if (pl_count > 1 and autoloaded == nil) or - (pl_count == 1 and EXTENSIONS[string.lower(get_extension(filename))] == nil) then - msg.verbose("stopping: manually made playlist") - return - else - autoloaded = true - end - - local pl = mp.get_property_native("playlist", {}) - local pl_current = mp.get_property_number("playlist-pos-1", 1) - msg.trace(("playlist-pos-1: %s, playlist: %s"):format(pl_current, - utils.to_string(pl))) - - local files = utils.readdir(dir, "files") - if files == nil then - msg.verbose("no other files in directory") - return - end - table.filter(files, function (v, k) - -- The current file could be a hidden file, ignoring it doesn't load other - -- files from the current directory. - if (o.ignore_hidden and not (v == filename) and string.match(v, "^%.")) then - return false - end - local ext = get_extension(v) - if ext == nil then - return false - end - return EXTENSIONS[string.lower(ext)] - end) - alphanumsort(files) - - if dir == "." then - dir = "" - end - - -- Find the current pl entry (dir+"/"+filename) in the sorted dir list - local current - for i = 1, #files do - if files[i] == filename then - current = i - break - end - end - if current == nil then - return - end - msg.trace("current file position in files: "..current) - - local append = {[-1] = {}, [1] = {}} - local filenames = get_playlist_filenames() - for direction = -1, 1, 2 do -- 2 iterations, with direction = -1 and +1 - for i = 1, MAXENTRIES do - local file = files[current + i * direction] - if file == nil or file[1] == "." then - break - end - - local filepath = dir .. file - -- skip files already in playlist - if filenames[file] then break end - - if direction == -1 then - if pl_current == 1 then -- never add additional entries in the middle - msg.info("Prepending " .. file) - table.insert(append[-1], 1, filepath) - end - else - msg.info("Adding " .. file) - table.insert(append[1], filepath) - end - end - end - - add_files_at(pl_current + 1, append[1]) - add_files_at(pl_current, append[-1]) -end - -mp.register_event("start-file", find_and_add_entries) diff --git a/config/mpv/.config/mpv/scripts/copy-time.lua b/config/mpv/.config/mpv/scripts/copy-time.lua deleted file mode 100644 index d880ad2..0000000 --- a/config/mpv/.config/mpv/scripts/copy-time.lua +++ /dev/null @@ -1,33 +0,0 @@ --- copy-time (Linux version) --- Requires xclip installed - --- Copies current timecode in HH:MM:SS.MS format to clipboard - -------------------------------------------------------------------------------- --- Script adapted by Alex Rogers (https://github.com/linguisticmind) --- Modified from https://github.com/Arieleg/mpv-copyTime --- Released under GNU GPL 3.0 - -require "mp" - -local function set_clipboard(text) - command = string.format("echo -n %s | xclip -selection clipboard", text) - mp.commandv("run", "/bin/bash", "-c", command) -end - -function copy_time() - local time_pos = mp.get_property_number("time-pos") - local time_in_seconds = time_pos - local time_seg = time_pos % 60 - time_pos = time_pos - time_seg - local time_hours = math.floor(time_pos / 3600) - time_pos = time_pos - (time_hours * 3600) - local time_minutes = time_pos/60 - time_seg,time_ms=string.format("%.03f", time_seg):match"([^.]*).(.*)" - time = string.format("%02d:%02d:%02d.%s", time_hours, time_minutes, time_seg, time_ms) - set_clipboard(time) - mp.osd_message(string.format("Copied to clipboard: %s", time)) -end - --- the keybinding here is set to nil on purpose 'cause I modified the keybinding (in input.conf) -mp.add_key_binding(nil, "copy-time", copy_time) diff --git a/config/mpv/.config/mpv/scripts/cycle-commands.lua b/config/mpv/.config/mpv/scripts/cycle-commands.lua deleted file mode 100644 index e288632..0000000 --- a/config/mpv/.config/mpv/scripts/cycle-commands.lua +++ /dev/null @@ -1,58 +0,0 @@ ---[=====[ - script to cycle commands with a keybind, accomplished through script messages - available at: https://github.com/CogentRedTester/mpv-scripts - - syntax: - script-message cycle-commands "command1" "command2" "command3" - - The syntax of each command is identical to the standard input.conf syntax, but each command must be within - a pair of double quotes. - - Commands with mutiword arguments require you to send double quotes just like normal command syntax, however, - you will need to escape the quotes with a backslash so that they are sent as part of the string. - Semicolons also work exactly like they do normally, so you can easily send multiple commands each cycle. - - Here is an example of a standard input.conf entry: - - script-message cycle-commands "show-text one 1000 ; print-text two" "show-text \"three four\"" - - This would, on keypress one, print 'one' to the OSD for 1 second and 'two' to the console, - and on keypress two 'three four' would be printed to the OSD. - Notice how the quotation marks around 'three four' are escaped using backslashes. - All other syntax details should be exactly the same as usual input commands. - - There are no limits to the number of commands, and the script message can be used as often as one wants, - the script stores the current iteration for each unique cycle command, so there should be no overlap - unless one binds the exact same command string (including spacing) -]=====]-- - -local mp = require 'mp' -local msg = require 'mp.msg' - ---keeps track of the current position for a specific cycle -local iterators = {} - ---main function to identify and run the cycles -local function main(...) - local commands = {...} - - --to identify the specific cycle we'll concatenate all the strings together to use as our table key - local str = table.concat(commands, " | ") - msg.trace('recieved:', str) - - if iterators[str] == nil then - msg.debug('unknown cycle, creating iterator') - iterators[str] = 1 - else - iterators[str] = iterators[str] + 1 - if iterators[str] > #commands then iterators[str] = 1 end - end - - --mp.command should run the commands exactly as if they were entered in input.conf. - --This should provide universal support for all input.conf command syntax - local cmd = commands[ iterators[str] ] - msg.verbose('sending command:', cmd) - mp.command(cmd) -end - -mp.register_script_message('cycle-commands', main) diff --git a/config/mpv/.config/mpv/scripts/cycle-profile.lua b/config/mpv/.config/mpv/scripts/cycle-profile.lua deleted file mode 100644 index 356ebf1..0000000 --- a/config/mpv/.config/mpv/scripts/cycle-profile.lua +++ /dev/null @@ -1,105 +0,0 @@ ---[[ - script to cycle profiles with a keybind, accomplished through script messages - available at: https://github.com/CogentRedTester/mpv-scripts - - syntax: - script-message cycle-profiles "profile1;profile2;profile3" - - You must use semicolons to separate the profiles, do not include any spaces that are not part of the profile name. - The script will print the profile description to the screen when switching, if there is no profile description, then it just prints the name -]]-- - ---change this to change what character separates the profile names -seperator = ";" - -msg = require 'mp.msg' - ---splits the profiles string into an array of profile names ---function taken from: https://stackoverflow.com/questions/1426954/split-string-in-lua/7615129#7615129 -function mysplit (inputstr, sep) - if sep == nil then - sep = "%s" - end - local t={} - for str in string.gmatch(inputstr, "([^"..sep.."]+)") do - table.insert(t, str) - end - return t -end - ---table of all available profiles and options -profileList = mp.get_property_native('profile-list') - ---keeps track of current profile for every unique cycle -iterator = {} - ---stores descriptions for profiles ---once requested a description is stored here so it does not need to be found again -profilesDescs = {} - ---if trying to cycle to an unknown profile this function is run to find a description to print -function findDesc(profile) - msg.verbose('unknown profile ' .. profile .. ', searching for description') - - for i = 1, #profileList, 1 do - if profileList[i]['name'] == profile then - msg.verbose('profile found') - local desc = profileList[i]['profile-desc'] - - if desc ~= nil then - msg.verbose('description found') - profilesDescs[profile] = desc - else - msg.verbose('no description, will use name') - profilesDescs[profile] = profile - end - return - end - end - - msg.verbose('profile not found') - profilesDescs[profile] = "no profile '" .. profile .. "'" -end - ---prints the profile description to the OSD ---if the profile has not been requested before during the session then it runs findDesc() -function printProfileDesc(profile) - local desc = profilesDescs[profile] - if desc == nil then - findDesc(profile) - desc = profilesDescs[profile] - end - - msg.verbose('profile description: ' .. desc) - mp.osd_message(desc) -end - -function main(profileStr) - --if there is not already an iterator for this cycle then it creates one - if iterator[profileStr] == nil then - msg.verbose('unknown cycle, creating new iterator') - iterator[profileStr] = 1 - end - local i = iterator[profileStr] - - --converts the string into an array of profile names - local profiles = mysplit(profileStr, seperator) - msg.verbose('cycling ' .. tostring(profiles)) - msg.verbose("number of profiles: " .. tostring(#profiles)) - - --sends the command to apply the profile - msg.info("applying profile " .. profiles[i]) - mp.commandv('apply-profile', profiles[i]) - - --prints the profile description to the OSD - printProfileDesc(profiles[i]) - - --moves the iterator - iterator[profileStr] = iterator[profileStr] + 1 - if iterator[profileStr] > #profiles then - msg.verbose('reached end of profiles, wrapping back to start') - iterator[profileStr] = 1 - end -end - -mp.register_script_message('cycle-profiles', main) diff --git a/config/mpv/.config/mpv/scripts/modernz.lua b/config/mpv/.config/mpv/scripts/modernz.lua deleted file mode 100644 index 0cd8fc9..0000000 --- a/config/mpv/.config/mpv/scripts/modernz.lua +++ /dev/null @@ -1,3717 +0,0 @@ --- ModernZ (https://github.com/Samillion/ModernZ) --- --- This script is a derivative of the original mpv-osc-modern by maoiscat --- and subsequent forks: --- * cyl0/ModernX --- * dexeonify/ModernX --- --- It is based on the official osc.lua from mpv, licensed under the --- GNU Lesser General Public License v2.1 (LGPLv2.1). --- Full license: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html - -local assdraw = require "mp.assdraw" -local msg = require "mp.msg" -local opt = require "mp.options" -local utils = require "mp.utils" - --- Parameters --- default user option values --- do not touch, change them in modernz.conf -local user_opts = { - -- Language and display - language = "en", -- set language (for available options, see: https://github.com/Samillion/ModernZ/blob/main/docs/TRANSLATIONS.md) - font = "mpv-osd-symbols", -- font for the OSC (default: mpv-osd-symbols or the one set in mpv.conf) - - idlescreen = true, -- show mpv logo when idle - window_top_bar = "auto", -- show OSC window top bar: "auto", "yes", or "no" (borderless/fullscreen) - showwindowed = true, -- show OSC when windowed - showfullscreen = true, -- show OSC when fullscreen - showonpause = true, -- show OSC when paused - keeponpause = true, -- disable OSC hide timeout when paused - greenandgrumpy = false, -- disable Santa hat in December - - -- OSC behaviour and scaling - hidetimeout = 1500, -- time (in ms) before OSC hides if no mouse movement - seek_resets_hidetimeout = true, -- if seeking should reset the hidetimeout - fadeduration = 200, -- fade-out duration (in ms), set to 0 for no fade - fadein = false, -- whether to enable fade-in effect - minmousemove = 0, -- minimum mouse movement (in pixels) required to show OSC - bottomhover = true, -- show OSC only when hovering at the bottom - bottomhover_zone = 130, -- height of hover zone for bottomhover (in pixels) - osc_on_seek = false, -- show OSC when seeking - osc_on_start = false, -- show OSC on start of every file - mouse_seek_pause = true, -- pause video while seeking with mouse move (on button hold) - force_seek_tooltip = false, -- force show seekbar tooltip on mouse drag, even if not hovering seekbar - - vidscale = "auto", -- scale osc with the video - scalewindowed = 1.0, -- osc scale factor when windowed - scalefullscreen = 1.0, -- osc scale factor when fullscreen - - -- Elements display - show_title = true, -- show title in the OSC (above seekbar) - title = "${media-title}", -- title above seekbar format: "${media-title}" or "${filename}" - title_font_size = 24, -- title font size (above seekbar) - chapter_title_font_size = 14, -- chapter title font size - - cache_info = false, -- show cached time information - cache_info_speed = false, -- show cache speed per second - cache_info_font_size = 12, -- font size of the cache information - - show_chapter_title = true, -- show chapter title (above seekbar) - chapter_fmt = "%s", -- format for chapter display on seekbar hover (set to "no" to disable) - - timetotal = true, -- show total time instead of remaining time - timems = false, -- show timecodes with milliseconds - unicodeminus = false, -- use the Unicode minus sign in remaining time - time_format = "dynamic", -- "dynamic" or "fixed". dynamic shows MM:SS when possible, fixed always shows HH:MM:SS - time_font_size = 16, -- font size of the time display - - tooltip_font_size = 14, -- tooltips font size - - -- Title bar settings - window_title = false, -- show window title in borderless/fullscreen mode - window_controls = true, -- show window controls (close, minimize, maximize) in borderless/fullscreen - windowcontrols_title = "${media-title}", -- same as title but for windowcontrols - - -- Subtitle display settings - raise_subtitles = true, -- raise subtitles above the OSC when shown - raise_subtitle_amount = 125, -- amount by which subtitles are raised when the OSC is shown (in pixels) - - -- Buttons display and functionality - jump_buttons = true, -- show the jump backward and forward buttons - jump_amount = 10, -- change the jump amount in seconds - jump_more_amount = 60, -- change the jump amount in seconds when right-clicking jump buttons and shift-clicking chapter skip buttons - jump_icon_number = true, -- show different icon when jump_amount is set to 5, 10, or 30 - jump_mode = "relative", -- seek mode for jump buttons - jump_softrepeat = true, -- enable continuous jumping when holding down seek buttons - chapter_skip_buttons = false, -- show the chapter skip backward and forward buttons - chapter_softrepeat = true, -- enable continuous skipping when holding down chapter skip buttons - track_nextprev_buttons = true, -- show next/previous playlist track buttons - - volume_control = true, -- show mute button and volume slider - volume_control_type = "linear", -- volume scale type: "linear" or "logarithmic" - playlist_button = true, -- show playlist button: Left-click for simple playlist, Right-click for interactive playlist - hide_empty_playlist_button = false, -- hide playlist button when no playlist exists - gray_empty_playlist_button = false, -- gray out the playlist button when no playlist exists - - fullscreen_button = true, -- show fullscreen toggle button - info_button = true, -- show info button - ontop_button = true, -- show window on top button - screenshot_button = false, -- show screenshot button - screenshot_flag = "subtitles", -- flag for screenshot button: "subtitles", "video", "window", "each-frame" - -- https://mpv.io/manual/master/#command-interface-screenshot-%3Cflags%3E - - download_button = true, -- show download button on web videos (requires yt-dlp and ffmpeg) - download_path = "~~desktop/mpv", -- default download directory for videos (https://mpv.io/manual/master/#paths) - - loop_button = false, -- show loop button - speed_button = false, -- show speed control button - speed_button_click = 1, -- speed change amount per click - speed_button_scroll = 0.25, -- speed change amount on scroll - - loop_in_pause = true, -- enable looping by right-clicking pause - - buttons_always_active = "none", -- force buttons to always be active. can add: playlist_prev, playlist_next - - playpause_size = 28, -- icon size for the play/pause button - midbuttons_size = 24, -- icon size for the middle buttons - sidebuttons_size = 24, -- icon size for the side buttons - - zoom_control = true, -- show zoom controls in image viewer mode - zoom_in_max = 4, -- maximum zoom in value - zoom_out_min = -1, -- minimum zoom out value - - -- Colors and style - osc_color = "#000000", -- accent color of the OSC and title bar - window_title_color = "#FFFFFF", -- color of the title in borderless/fullscreen mode - window_controls_color = "#FFFFFF", -- color of the window controls (close, minimize, maximize) in borderless/fullscreen mode - windowcontrols_close_hover = "#F45C5B", -- color of close window control on hover - windowcontrols_max_hover = "#F8BC3A", -- color of maximize window controls on hover - windowcontrols_min_hover = "#43CB44", -- color of minimize window controls on hover - title_color = "#FFFFFF", -- color of the title (above seekbar) - cache_info_color = "#FFFFFF", -- color of the cache information - seekbarfg_color = "#FB8C00", -- color of the seekbar progress and handle - seekbarbg_color = "#94754F", -- color of the remaining seekbar - seekbar_cache_color = "#918F8E", -- color of the cache ranges on the seekbar - volumebar_match_seek_color = false, -- match volume bar color with seekbar color (ignores side_buttons_color) - time_color = "#FFFFFF", -- color of the timestamps (below seekbar) - chapter_title_color = "#FFFFFF", -- color of the chapter title (above seekbar) - side_buttons_color = "#FFFFFF", -- color of the side buttons (audio, subtitles, playlist, etc.) - middle_buttons_color = "#FFFFFF", -- color of the middle buttons (skip, jump, chapter, etc.) - playpause_color = "#FFFFFF", -- color of the play/pause button - held_element_color = "#999999", -- color of the element when held down (pressed) - hover_effect_color = "#FB8C00", -- color of a hovered button when hover_effect includes "color" - thumbnail_border_color = "#111111", -- color of the border for thumbnails (with thumbfast) - thumbnail_border_outline = "#404040", -- color of the border outline for thumbnails - - fade_alpha = 130, -- alpha of the OSC background (0 to disable) - fade_blur_strength = 100, -- blur strength for the OSC alpha fade. caution: high values can take a lot of CPU time to render - fade_transparency_strength = 0, -- use with "fade_blur_strength=0" to create a transparency box - window_fade_alpha = 100, -- alpha of the window title bar (0 to disable) - window_fade_blur_strength = 100, -- blur strength for the window title bar. caution: high values can take a lot of CPU time to render - window_fade_transparency_strength = 0, -- use with "window_fade_blur_strength=0" to create a transparency box - thumbnail_border = 3, -- width of the thumbnail border (for thumbfast) - thumbnail_border_radius = 3, -- rounded corner radius for thumbnail border (0 to disable) - - -- Button hover effects - hover_effect = "size,glow,color", -- active button hover effects: "glow", "size", "color"; can use multiple separated by commas - hover_button_size = 115, -- relative size of a hovered button if "size" effect is active - button_glow_amount = 5, -- glow intensity when "glow" hover effect is active - hover_effect_for_sliders = true, -- apply size hover effect to slider handles - - -- Tooltips and hints - tooltips_for_disabled_elements = true, -- enable tooltips for disabled buttons and elements - tooltip_hints = true, -- enable text hints for info, loop, ontop, and screenshot buttons - - -- Progress bar settings - seek_handle_size = 0.8, -- size ratio of the seek handle (range: 0 ~ 1) - seekrange = true, -- show seek range overlay - seekrangealpha = 150, -- transparency of the seek range - livemarkers = true, -- update chapter markers on the seekbar when duration changes - seekbarkeyframes = false, -- use keyframes when dragging the seekbar - - nibbles_top = true, -- top chapter nibbles above seekbar - nibbles_bottom = true, -- bottom chapter nibbles below seekbar - nibbles_style = "triangle", -- chapter nibble style. "triangle", "bar", or "single-bar" - - automatickeyframemode = true, -- automatically set keyframes for the seekbar based on video length - automatickeyframelimit = 600, -- videos longer than this (in seconds) will have keyframes on the seekbar - - persistentprogress = false, -- always show a small progress line at the bottom of the screen - persistentprogressheight = 17, -- height of the persistent progress bar - persistentbuffer = false, -- show buffer status on web videos in the persistent progress line - - -- Miscellaneous settings - visibility = "auto", -- only used at init to set visibility_mode(...) - visibility_modes = "never_auto_always",-- visibility modes to cycle through - tick_delay = 0.03, -- minimum interval between OSC redraws (in seconds) - tick_delay_follow_display_fps = false, -- use display FPS as the minimum redraw interval - - -- Elements Position - -- Useful when adjusting font size or type - title_height = 96, -- title height position above seekbar - title_with_chapter_height = 108, -- title height position if a chapter title is below it - chapter_title_height = 91, -- chapter title height position above seekbar - time_codes_height = 35, -- time codes height position - time_codes_centered_height = 57, -- time codes height position with portrait window - tooltip_height_offset = 2, -- tooltip height position offset - tooltip_left_offset = 5, -- if tooltip contains many characters, it is moved to the left by offset - portrait_window_trigger = 1000, -- portrait window width trigger to move some elements - hide_volume_bar_trigger = 1150, -- hide volume bar trigger window width - notitle_osc_h_offset = 25, -- osc height offset if title above seekbar is disabled - nochapter_osc_h_offset = 10, -- osc height offset if chapter title is disabled or doesn't exist - seek_hover_tooltip_h_offset = 0, -- seek hover timecodes tooltip height position offset - osc_height = 132, -- osc height without offsets - - -- Mouse commands - -- customize the button function based on mouse action - - -- title above seekbar mouse actions - title_mbtn_left_command = "script-binding stats/display-page-5", - title_mbtn_mid_command = "show-text ${path}", - title_mbtn_right_command = "script-binding select/select-watch-history; script-message-to modernz osc-hide", - - -- playlist button mouse actions - playlist_mbtn_left_command = "script-binding select/menu; script-message-to modernz osc-hide", - playlist_mbtn_right_command = "script-binding select/select-playlist; script-message-to modernz osc-hide", - - -- volume mouse actions - vol_ctrl_mbtn_left_command = "no-osd cycle mute", - vol_ctrl_mbtn_right_command = "script-binding select/select-audio-device; script-message-to modernz osc-hide", - vol_ctrl_wheel_down_command = "no-osd add volume -5", - vol_ctrl_wheel_up_command = "no-osd add volume 5", - - -- audio button mouse actions - audio_track_mbtn_left_command = "script-binding select/select-aid; script-message-to modernz osc-hide", - audio_track_mbtn_mid_command = "cycle audio down", - audio_track_mbtn_right_command = "cycle audio", - audio_track_wheel_down_command = "cycle audio", - audio_track_wheel_up_command = "cycle audio down", - - -- subtitle button mouse actions - sub_track_mbtn_left_command = "script-binding select/select-sid; script-message-to modernz osc-hide", - sub_track_mbtn_mid_command = "cycle sub down", - sub_track_mbtn_right_command = "cycle sub", - sub_track_wheel_down_command = "cycle sub", - sub_track_wheel_up_command = "cycle sub down", - - -- chapter skip buttons mouse actions - chapter_prev_mbtn_left_command = "add chapter -1", - chapter_prev_mbtn_mid_command = "show-text ${chapter-list} 3000", - chapter_prev_mbtn_right_command = "script-binding select/select-chapter; script-message-to modernz osc-hide", - - chapter_next_mbtn_left_command = "add chapter 1", - chapter_next_mbtn_mid_command = "show-text ${chapter-list} 3000", - chapter_next_mbtn_right_command = "script-binding select/select-chapter; script-message-to modernz osc-hide", - - -- chapter title (below seekbar) mouse actions - chapter_title_mbtn_left_command = "script-binding select/select-chapter; script-message-to modernz osc-hide", - chapter_title_mbtn_right_command = "show-text ${chapter-list} 3000", - - -- playlist skip buttons mouse actions - playlist_prev_mbtn_left_command = "playlist-prev", - playlist_prev_mbtn_mid_command = "show-text ${playlist} 3000", - playlist_prev_mbtn_right_command = "script-binding select/select-playlist; script-message-to modernz osc-hide", - - playlist_next_mbtn_left_command = "playlist-next", - playlist_next_mbtn_mid_command = "show-text ${playlist} 3000", - playlist_next_mbtn_right_command = "script-binding select/select-playlist; script-message-to modernz osc-hide", - - -- fullscreen button mouse actions - fullscreen_mbtn_left_command = "cycle fullscreen", - fullscreen_mbtn_right_command = "cycle window-maximized", - - -- info button mouse actions - info_mbtn_left_command = "script-binding stats/display-page-1-toggle", -} - -mp.observe_property("osc", "bool", function(name, value) if value == true then mp.set_property("osc", "no") end end) - -local osc_param = { -- calculated by osc_init() - playresy = 0, -- canvas size Y - playresx = 0, -- canvas size X - display_aspect = 1, - unscaled_y = 0, - areas = {}, - video_margins = { - l = 0, r = 0, t = 0, b = 0, -- left/right/top/bottom - }, -} - -local icons = { - window = { - maximize = "\238\159\171", - unmaximize = "\238\174\150", - minimize = "\238\175\144", - close = "\239\141\169", - }, - audio = "\238\175\139", - subtitle = "\238\175\141", - playlist = "\238\161\159", - menu = "\238\160\170", - volume_mute = "\238\173\138", - volume_quiet = "\238\172\184", - volume_low = "\238\172\189", - volume_high = "\238\173\130", - - play = "\238\166\143", - pause = "\238\163\140", - replay = "\238\189\191", - previous = "\239\152\167", - next = "\239\149\168", - rewind = "\238\168\158", - forward = "\238\152\135", - jump = { - [5] = {"\238\171\186", "\238\171\187"}, - [10] = {"\238\171\188", "\238\172\129"}, - [30] = {"\238\172\133", "\238\172\134"}, - default = {"\238\172\138", "\238\172\138"}, -- second icon is mirrored in layout() - }, - - fullscreen = "\239\133\160", - fullscreen_exit = "\239\133\166", - info = "\239\146\164", - ontop_on = "\238\165\190", - ontop_off = "\238\166\129", - screenshot = "\238\169\150", - loop_off = "\239\133\178", - loop_on = "\239\133\181", - speed = "\239\160\177", - download = "\239\133\144", - downloading = "\239\140\174", - - zoom_in = "\238\186\142", - zoom_out = "\238\186\143", -} - ---- localization -local language = { - ["en"] = { - idle = "Drop files or URLs here to play", - na = "Not available", - video = "Video", - audio = "Audio", - subtitle = "Subtitle", - no_subs = "No subtitles available", - no_audio = "No audio tracks available", - playlist = "Playlist", - no_playlist = "Playlist is empty", - chapter = "Chapter", - ontop = "Pin Window", - ontop_disable = "Unpin Window", - loop_enable = "Loop", - loop_disable = "Disable Loop", - speed_control = "Speed Control", - screenshot = "Screenshot", - stats_info = "Information", - cache = "Cache", - buffering = "Buffering", - zoom_in = "Zoom In", - zoom_out = "Zoom Out", - download = "Download", - download_in_progress = "Download in progress", - downloading = "Downloading", - downloaded = "Already downloaded", - menu = "Menu", - }, -} - --- locale JSON file handler -function get_locale_from_json(path) - local expand_path = mp.command_native({'expand-path', path}) - - local file_info = utils.file_info(expand_path) - if not file_info or not file_info.is_file then - return nil - end - - local json_file = io.open(expand_path, 'r') - if not json_file then - return nil - end - - local json = json_file:read('*all') - json_file:close() - - local json_table, parse_error = utils.parse_json(json) - if not json_table then - mp.msg.error("JSON parse error:" .. parse_error) - end - return json_table -end - --- load external locales if available -local locale_path = "~~/script-opts/modernz-locale.json" -local external = get_locale_from_json(locale_path) - -if external then - for lang, strings in pairs(external) do - if type(strings) == "table" then - language[lang] = strings - - -- fill in missing locales with English defaults - for key, value in pairs(language["en"]) do - if strings[key] == nil then - strings[key] = value or "" -- fallback to empty string if key is missing - end - - -- debug log to verify all keys are populated - if strings[key] == nil then - mp.msg.warn("Locale key '" .. key .. "' is nil in language: " .. lang) - end - end - else - mp.msg.warn("Locale data for language " .. lang .. " is not in the correct format.") - end - end -end - -local locale -local function set_osc_locale() - locale = language[user_opts.language] or language["en"] - local idle_ass_tags = "{\\fs24\\1c&H0&\\1c&HFFFFFF&}" - locale.idle = idle_ass_tags .. locale.idle -end - -local function contains(list, item) - local t = type(list) == "table" and list or {} - if type(list) ~= "table" then - for str in string.gmatch(list, '([^,]+)') do - t[#t + 1] = str:match("^%s*(.-)%s*$") -- trim spaces - end - end - for _, v in ipairs(t) do - if v == item then - return true - end - end - return false -end - -local thumbfast = { - width = 0, - height = 0, - disabled = true, - available = false -} - -local tick_delay = 1 / 60 -local audio_track_count = 0 -local sub_track_count = 0 -local window_control_box_width = 150 -local is_december = os.date("*t").month == 12 -local UNICODE_MINUS = string.char(0xe2, 0x88, 0x92) -- UTF-8 for U+2212 MINUS SIGN -local iconfont = "fluent-system-icons" - -local function osc_color_convert(color) - return color:sub(6,7) .. color:sub(4,5) .. color:sub(2,3) -end - -local osc_styles - -local function set_osc_styles() - local playpause_size = user_opts.playpause_size or 28 - local midbuttons_size = user_opts.midbuttons_size or 24 - local sidebuttons_size = user_opts.sidebuttons_size or 24 - osc_styles = { - osc_fade_bg = "{\\blur" .. user_opts.fade_blur_strength .. "\\bord" .. user_opts.fade_alpha .. "\\1c&H0&\\3c&H" .. osc_color_convert(user_opts.osc_color) .. "&}", - window_fade_bg = "{\\blur" .. user_opts.window_fade_blur_strength .. "\\bord" .. user_opts.window_fade_alpha .. "\\1c&H0&\\3c&H" .. osc_color_convert(user_opts.osc_color) .. "&}", - window_control = "{\\blur1\\bord0.5\\1c&H" .. osc_color_convert(user_opts.window_controls_color) .. "&\\3c&H0&\\fs25\\fn" .. iconfont .. "}", - window_title = "{\\blur1\\bord0.5\\1c&H" .. osc_color_convert(user_opts.window_title_color) .. "&\\3c&H0&\\fs26\\q2\\fn" .. user_opts.font .. "}", - title = "{\\blur1\\bord0.5\\1c&H" .. osc_color_convert(user_opts.title_color) .. "&\\3c&H0&\\fs".. user_opts.title_font_size .."\\q2\\fn" .. user_opts.font .. "}", - chapter_title = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.chapter_title_color) .. "&\\3c&H0&\\fs" .. user_opts.chapter_title_font_size .. "\\fn" .. user_opts.font .. "}", - seekbar_bg = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.seekbarbg_color) .. "&}", - seekbar_fg = "{\\blur1\\bord1\\1c&H" .. osc_color_convert(user_opts.seekbarfg_color) .. "&}", - thumbnail = "{\\blur0\\bord1\\1c&H" .. osc_color_convert(user_opts.thumbnail_border_color) .. "&\\3c&H" .. osc_color_convert(user_opts.thumbnail_border_outline) .. "&}", - time = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.time_color) .. "&\\3c&H0&\\fs" .. user_opts.time_font_size .. "\\fn" .. user_opts.font .. "}", - cache = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.cache_info_color) .. "&\\3c&H0&\\fs" .. user_opts.cache_info_font_size .. "\\fn" .. user_opts.font .. "}", - tooltip = "{\\blur1\\bord0.5\\1c&HFFFFFF&\\3c&H0&\\fs" .. user_opts.tooltip_font_size .. "\\fn" .. user_opts.font .. "}", - volumebar_bg = "{\\blur0\\bord0\\1c&H999999&}", - volumebar_fg = "{\\blur1\\bord1\\1c&H" .. osc_color_convert(user_opts.side_buttons_color) .. "&}", - control_1 = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.playpause_color) .. "&\\3c&HFFFFFF&\\fs" .. playpause_size .. "\\fn" .. iconfont .. "}", - control_2 = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.middle_buttons_color) .. "&\\3c&HFFFFFF&\\fs" .. midbuttons_size .. "\\fn" .. iconfont .. "}", - control_2_flip = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.middle_buttons_color) .. "&\\3c&HFFFFFF&\\fs" .. midbuttons_size .. "\\fn" .. iconfont .. "\\fry180}", - control_3 = "{\\blur0\\bord0\\1c&H" .. osc_color_convert(user_opts.side_buttons_color) .. "&\\3c&HFFFFFF&\\fs" .. sidebuttons_size .. "\\fn" .. iconfont .. "}", - element_down = "{\\1c&H" .. osc_color_convert(user_opts.held_element_color) .. "&}", - element_hover = "{" .. (contains(user_opts.hover_effect, "color") and "\\1c&H" .. osc_color_convert(user_opts.hover_effect_color) .. "&" or "") .."\\2c&HFFFFFF&" .. (contains(user_opts.hover_effect, "size") and string.format("\\fscx%s\\fscy%s", user_opts.hover_button_size, user_opts.hover_button_size) or "") .. "}", - } -end - --- internal states, do not touch -local state = { - showtime = nil, -- time of last invocation (last mouse move) - touchtime = nil, -- time of last invocation (last touch event) - osc_visible = false, - anistart = nil, -- time when the animation started - anitype = nil, -- current type of animation - animation = nil, -- current animation alpha - mouse_down_counter = 0, -- used for softrepeat - active_element = nil, -- nil = none, 0 = background, 1+ = see elements[] - active_event_source = nil, -- the "button" that issued the current event - tc_right_rem = not user_opts.timetotal, -- if the right timecode should display total or remaining time - tc_ms = user_opts.timems, -- Should the timecodes display their time with milliseconds - screen_sizeX = nil, screen_sizeY = nil, -- last screen-resolution, to detect resolution changes to issue reINITs - initREQ = false, -- is a re-init request pending? - marginsREQ = false, -- is a margins update pending? - last_mouseX = nil, last_mouseY = nil, -- last mouse position, to detect significant mouse movement - mouse_in_window = false, - fullscreen = false, - tick_timer = nil, - tick_last_time = 0, -- when the last tick() was run - hide_timer = nil, - cache_state = nil, - idle = false, - enabled = true, - input_enabled = true, - showhide_enabled = false, - windowcontrols_buttons = false, - windowcontrols_title = false, - dmx_cache = 0, - border = true, - maximized = false, - osd = mp.create_osd_overlay("ass-events"), - buffering = false, - new_file_flag = false, -- flag to detect new file starts - temp_visibility_mode = nil, -- store temporary visibility mode state - chapter_list = {}, -- sorted by time - visibility_modes = {}, -- visibility_modes to cycle through - mute = false, - looping = false, - sliderpos = 0, - touchingprogressbar = false, -- if the mouse is touching the progress bar - initialborder = mp.get_property("border"), - playtime_hour_force_init = false, -- used to force request_init() once - playtime_nohour_force_init = false, -- used to force request_init() once - playing_and_seeking = false, - persistent_progress_toggle = user_opts.persistentprogress, - original_subpos = mp.get_property_number("sub-pos") or 100, - downloaded_once = false, - downloading = false, - file_size_bytes = 0, - file_size_normalized = "Approximating size...", - is_URL = false, - is_image = false, - url_path = "", -- used for yt-dlp downloading -} - -local logo_lines = { - -- White border - "{\\c&HE5E5E5&\\p6}m 895 10 b 401 10 0 410 0 905 0 1399 401 1800 895 1800 1390 1800 1790 1399 1790 905 1790 410 1390 10 895 10 {\\p0}", - -- Purple fill - "{\\c&H682167&\\p6}m 925 42 b 463 42 87 418 87 880 87 1343 463 1718 925 1718 1388 1718 1763 1343 1763 880 1763 418 1388 42 925 42{\\p0}", - -- Darker fill - "{\\c&H430142&\\p6}m 1605 828 b 1605 1175 1324 1456 977 1456 631 1456 349 1175 349 828 349 482 631 200 977 200 1324 200 1605 482 1605 828{\\p0}", - -- White fill - "{\\c&HDDDBDD&\\p6}m 1296 910 b 1296 1131 1117 1310 897 1310 676 1310 497 1131 497 910 497 689 676 511 897 511 1117 511 1296 689 1296 910{\\p0}", - -- Triangle - "{\\c&H691F69&\\p6}m 762 1113 l 762 708 b 881 776 1000 843 1119 911 1000 978 881 1046 762 1113{\\p0}", -} - -local santa_hat_lines = { - -- Pompoms - "{\\c&HC0C0C0&\\p6}m 500 -323 b 491 -322 481 -318 475 -311 465 -312 456 -319 446 -318 434 -314 427 -304 417 -297 410 -290 404 -282 395 -278 390 -274 387 -267 381 -265 377 -261 379 -254 384 -253 397 -244 409 -232 425 -228 437 -228 446 -218 457 -217 462 -216 466 -213 468 -209 471 -205 477 -203 482 -206 491 -211 499 -217 508 -222 532 -235 556 -249 576 -267 584 -272 584 -284 578 -290 569 -305 550 -312 533 -309 523 -310 515 -316 507 -321 505 -323 503 -323 500 -323{\\p0}", - "{\\c&HE0E0E0&\\p6}m 315 -260 b 286 -258 259 -240 246 -215 235 -210 222 -215 211 -211 204 -188 177 -176 172 -151 170 -139 163 -128 154 -121 143 -103 141 -81 143 -60 139 -46 125 -34 129 -17 132 -1 134 16 142 30 145 56 161 80 181 96 196 114 210 133 231 144 266 153 303 138 328 115 373 79 401 28 423 -24 446 -73 465 -123 483 -174 487 -199 467 -225 442 -227 421 -232 402 -242 384 -254 364 -259 342 -250 322 -260 320 -260 317 -261 315 -260{\\p0}", - -- Main cap - "{\\c&H0000F0&\\p6}m 1151 -523 b 1016 -516 891 -458 769 -406 693 -369 624 -319 561 -262 526 -252 465 -235 479 -187 502 -147 551 -135 588 -111 1115 165 1379 232 1909 761 1926 800 1952 834 1987 858 2020 883 2053 912 2065 952 2088 1000 2146 962 2139 919 2162 836 2156 747 2143 662 2131 615 2116 567 2122 517 2120 410 2090 306 2089 199 2092 147 2071 99 2034 64 1987 5 1928 -41 1869 -86 1777 -157 1712 -256 1629 -337 1578 -389 1521 -436 1461 -476 1407 -509 1343 -507 1284 -515 1240 -519 1195 -521 1151 -523{\\p0}", - -- Cap shadow - "{\\c&H0000AA&\\p6}m 1657 248 b 1658 254 1659 261 1660 267 1669 276 1680 284 1689 293 1695 302 1700 311 1707 320 1716 325 1726 330 1735 335 1744 347 1752 360 1761 371 1753 352 1754 331 1753 311 1751 237 1751 163 1751 90 1752 64 1752 37 1767 14 1778 -3 1785 -24 1786 -45 1786 -60 1786 -77 1774 -87 1760 -96 1750 -78 1751 -65 1748 -37 1750 -8 1750 20 1734 78 1715 134 1699 192 1694 211 1689 231 1676 246 1671 251 1661 255 1657 248 m 1909 541 b 1914 542 1922 549 1917 539 1919 520 1921 502 1919 483 1918 458 1917 433 1915 407 1930 373 1942 338 1947 301 1952 270 1954 238 1951 207 1946 214 1947 229 1945 239 1939 278 1936 318 1924 356 1923 362 1913 382 1912 364 1906 301 1904 237 1891 175 1887 150 1892 126 1892 101 1892 68 1893 35 1888 2 1884 -9 1871 -20 1859 -14 1851 -6 1854 9 1854 20 1855 58 1864 95 1873 132 1883 179 1894 225 1899 273 1908 362 1910 451 1909 541{\\p0}", - -- Brim and tip pompom - "{\\c&HF8F8F8&\\p6}m 626 -191 b 565 -155 486 -196 428 -151 387 -115 327 -101 304 -47 273 2 267 59 249 113 219 157 217 213 215 265 217 309 260 302 285 283 373 264 465 264 555 257 608 252 655 292 709 287 759 294 816 276 863 298 903 340 972 324 1012 367 1061 394 1125 382 1167 424 1213 462 1268 482 1322 506 1385 546 1427 610 1479 662 1510 690 1534 725 1566 752 1611 796 1664 830 1703 880 1740 918 1747 986 1805 1005 1863 991 1897 932 1916 880 1914 823 1945 777 1961 725 1979 673 1957 622 1938 575 1912 534 1862 515 1836 473 1790 417 1755 351 1697 305 1658 266 1633 216 1593 176 1574 138 1539 116 1497 110 1448 101 1402 77 1371 37 1346 -16 1295 15 1254 6 1211 -27 1170 -62 1121 -86 1072 -104 1027 -128 976 -133 914 -130 851 -137 794 -162 740 -181 679 -168 626 -191 m 2051 917 b 1971 932 1929 1017 1919 1091 1912 1149 1923 1214 1970 1254 2000 1279 2027 1314 2066 1325 2139 1338 2212 1295 2254 1238 2281 1203 2287 1158 2282 1116 2292 1061 2273 1006 2229 970 2206 941 2167 938 2138 918{\\p0}", -} - --- --- Helper functions --- - -local function kill_animation() - state.anistart = nil - state.animation = nil - state.anitype = nil -end - -local function set_osd(res_x, res_y, text, z) - if state.osd.res_x == res_x and - state.osd.res_y == res_y and - state.osd.data == text then - return - end - state.osd.res_x = res_x - state.osd.res_y = res_y - state.osd.data = text - state.osd.z = z - state.osd:update() -end - -local function set_time_styles(timetotal_changed, timems_changed) - if timetotal_changed then - state.tc_right_rem = not user_opts.timetotal - end - if timems_changed then - state.tc_ms = user_opts.timems - end -end - --- scale factor for translating between real and virtual ASS coordinates -local function get_virt_scale_factor() - local w, h = mp.get_osd_size() - if w <= 0 or h <= 0 then - return 0, 0 - end - return osc_param.playresx / w, osc_param.playresy / h -end - --- return mouse position in virtual ASS coordinates (playresx/y) -local function get_virt_mouse_pos() - if state.mouse_in_window then - local sx, sy = get_virt_scale_factor() - local x, y = mp.get_mouse_pos() - return x * sx, y * sy - else - return -1, -1 - end -end - -local function set_virt_mouse_area(x0, y0, x1, y1, name) - local sx, sy = get_virt_scale_factor() - mp.set_mouse_area(x0 / sx, y0 / sy, x1 / sx, y1 / sy, name) -end - -local function scale_value(x0, x1, y0, y1, val) - local m = (y1 - y0) / (x1 - x0) - local b = y0 - (m * x0) - return (m * val) + b -end - --- returns hitbox spanning coordinates (top left, bottom right corner) --- according to alignment -local function get_hitbox_coords(x, y, an, w, h) - local alignments = { - [1] = function () return x, y-h, x+w, y end, - [2] = function () return x-(w/2), y-h, x+(w/2), y end, - [3] = function () return x-w, y-h, x, y end, - - [4] = function () return x, y-(h/2), x+w, y+(h/2) end, - [5] = function () return x-(w/2), y-(h/2), x+(w/2), y+(h/2) end, - [6] = function () return x-w, y-(h/2), x, y+(h/2) end, - - [7] = function () return x, y, x+w, y+h end, - [8] = function () return x-(w/2), y, x+(w/2), y+h end, - [9] = function () return x-w, y, x, y+h end, - } - - return alignments[an]() -end - -local function get_hitbox_coords_geo(geometry) - return get_hitbox_coords(geometry.x, geometry.y, geometry.an, - geometry.w, geometry.h) -end - -local function get_element_hitbox(element) - return element.hitbox.x1, element.hitbox.y1, - element.hitbox.x2, element.hitbox.y2 -end - -local function mouse_hit_coords(bX1, bY1, bX2, bY2) - local mX, mY = get_virt_mouse_pos() - return (mX >= bX1 and mX <= bX2 and mY >= bY1 and mY <= bY2) -end - -local function mouse_hit(element) - return mouse_hit_coords(get_element_hitbox(element)) -end - -local function limit_range(min, max, val) - if val > max then - val = max - elseif val < min then - val = min - end - return val -end - --- translate value into element coordinates -local function get_slider_ele_pos_for(element, val) - local ele_pos = scale_value( - element.slider.min.value, element.slider.max.value, - element.slider.min.ele_pos, element.slider.max.ele_pos, - val) - - return limit_range( - element.slider.min.ele_pos, element.slider.max.ele_pos, - ele_pos) -end - --- translates global (mouse) coordinates to value -local function get_slider_value_at(element, glob_pos) - if element then - local val = scale_value( - element.slider.min.glob_pos, element.slider.max.glob_pos, - element.slider.min.value, element.slider.max.value, - glob_pos) - - return limit_range( - element.slider.min.value, element.slider.max.value, - val) - end - -- fall back incase of loading errors - return 0 -end - --- get value at current mouse position -local function get_slider_value(element) - return get_slider_value_at(element, get_virt_mouse_pos()) -end - --- multiplies two alpha values, formular can probably be improved -local function mult_alpha(alphaA, alphaB) - return 255 - (((1-(alphaA/255)) * (1-(alphaB/255))) * 255) -end - -local function add_area(name, x1, y1, x2, y2) - -- create area if needed - if osc_param.areas[name] == nil then - osc_param.areas[name] = {} - end - table.insert(osc_param.areas[name], {x1=x1, y1=y1, x2=x2, y2=y2}) -end - -local function ass_append_alpha(ass, alpha, modifier, inverse) - local ar = {} - - for ai, av in pairs(alpha) do - av = mult_alpha(av, modifier) - if state.animation then - local animpos = state.animation - if inverse then - animpos = 255 - animpos - end - av = mult_alpha(av, animpos) - end - ar[ai] = av - end - - ass:append(string.format("{\\1a&H%X&\\2a&H%X&\\3a&H%X&\\4a&H%X&}", - ar[1], ar[2], ar[3], ar[4])) -end - -local function ass_draw_cir_cw(ass, x, y, r) - ass:round_rect_cw(x-r, y-r, x+r, y+r, r) -end - -local function ass_draw_rr_h_cw(ass, x0, y0, x1, y1, r1, hexagon, r2) - if hexagon then - ass:hexagon_cw(x0, y0, x1, y1, r1, r2) - else - ass:round_rect_cw(x0, y0, x1, y1, r1, r2) - end -end - -local function get_hidetimeout() - if user_opts.visibility == "always" then - return -1 -- disable autohide - end - return user_opts.hidetimeout -end - -local function get_touchtimeout() - if state.touchtime == nil then - return 0 - end - return state.touchtime + (get_hidetimeout() / 1000) - mp.get_time() -end - -local function cache_enabled() - return state.cache_state and #state.cache_state["seekable-ranges"] > 0 -end - -local function update_margins() - local margins = osc_param.video_margins - - -- Don't use margins if it's visible only temporarily. - if not state.osc_visible or get_hidetimeout() >= 0 or - (state.fullscreen and not user_opts.showfullscreen) or - (not state.fullscreen and not user_opts.showwindowed) - then - margins = {l = 0, r = 0, t = 0, b = 0} - end - - mp.set_property_native("user-data/osc/margins", margins) -end - -local tick --- Request that tick() is called (which typically re-renders the OSC). --- The tick is then either executed immediately, or rate-limited if it was --- called a small time ago. -local function request_tick() - if state.tick_timer == nil then - state.tick_timer = mp.add_timeout(0, tick) - end - - if not state.tick_timer:is_enabled() then - local now = mp.get_time() - local timeout = tick_delay - (now - state.tick_last_time) - if timeout < 0 then - timeout = 0 - end - state.tick_timer.timeout = timeout - state.tick_timer:resume() - end -end - -local function request_init() - state.initREQ = true - request_tick() -end - --- Like request_init(), but also request an immediate update -local function request_init_resize() - request_init() - -- ensure immediate update - state.tick_timer:kill() - state.tick_timer.timeout = 0 - state.tick_timer:resume() -end - -local function render_wipe() - msg.trace("render_wipe()") - state.osd.data = "" -- allows set_osd to immediately update on enable - state.osd:remove() -end - --- --- Tracklist Management --- - --- updates the OSC internal playlists, should be run each time the track-layout changes -local function update_tracklist() - audio_track_count, sub_track_count = 0, 0 - - for _, track in pairs(mp.get_property_native("track-list")) do - if track.type == "audio" then - audio_track_count = audio_track_count + 1 - elseif track.type == "sub" then - sub_track_count = sub_track_count + 1 - end - end -end - --- convert slider_pos to logarithmic depending on volume_control user_opts -local function set_volume(slider_pos) - local volume = slider_pos - if user_opts.volume_control_type == "logarithmic" then - volume = slider_pos^2 / 100 - end - return math.floor(volume) -end - --- WindowControl helpers -local function window_controls_enabled() - local val = user_opts.window_top_bar - if val == "auto" then - return not (state.border and state.title_bar) or state.fullscreen - else - return val == "yes" - end -end - --- --- Element Management --- -local elements = {} - -local function prepare_elements() - -- remove elements without layout or invisible - local elements2 = {} - for _, element in pairs(elements) do - if element.layout ~= nil and element.visible then - table.insert(elements2, element) - end - end - elements = elements2 - - local function elem_compare (a, b) - return a.layout.layer < b.layout.layer - end - - table.sort(elements, elem_compare) - - for _,element in pairs(elements) do - - local elem_geo = element.layout.geometry - - -- Calculate the hitbox - local bX1, bY1, bX2, bY2 = get_hitbox_coords_geo(elem_geo) - element.hitbox = {x1 = bX1, y1 = bY1, x2 = bX2, y2 = bY2} - - local style_ass = assdraw.ass_new() - - -- prepare static elements - style_ass:append("{}") -- hack to troll new_event into inserting a \n - style_ass:new_event() - style_ass:pos(elem_geo.x, elem_geo.y) - style_ass:an(elem_geo.an) - style_ass:append(element.layout.style) - - element.style_ass = style_ass - - local static_ass = assdraw.ass_new() - - if element.type == "box" then - --draw box - static_ass:draw_start() - ass_draw_rr_h_cw(static_ass, 0, 0, elem_geo.w, elem_geo.h, - element.layout.box.radius, element.layout.box.hexagon) - static_ass:draw_stop() - - elseif element.type == "slider" then - --draw static slider parts - local slider_lo = element.layout.slider - -- calculate positions of min and max points - element.slider.min.ele_pos = user_opts.seek_handle_size > 0 and (user_opts.seek_handle_size * elem_geo.h / 2) or slider_lo.border - element.slider.max.ele_pos = elem_geo.w - element.slider.min.ele_pos - element.slider.min.glob_pos = element.hitbox.x1 + element.slider.min.ele_pos - element.slider.max.glob_pos = element.hitbox.x1 + element.slider.max.ele_pos - - static_ass:draw_start() - -- a hack which prepares the whole slider area to allow center placements such like an=5 - static_ass:rect_cw(0, 0, elem_geo.w, elem_geo.h) - static_ass:rect_ccw(0, 0, elem_geo.w, elem_geo.h) - -- marker nibbles - if element.slider.markerF ~= nil and slider_lo.gap > 0 then - local markers = element.slider.markerF() - for _,marker in pairs(markers) do - if marker >= element.slider.min.value and - marker <= element.slider.max.value then - local s = get_slider_ele_pos_for(element, marker) - if slider_lo.gap > 5 then -- draw triangles / bars - local bar_h = 3 -- for "bar" and "single-bar" only - --top - if slider_lo.nibbles_top then - if slider_lo.nibbles_style == "triangle" then - static_ass:move_to(s - 3, slider_lo.gap - 5) - static_ass:line_to(s + 3, slider_lo.gap - 5) - static_ass:line_to(s, slider_lo.gap - 1) - elseif slider_lo.nibbles_style == "bar" then - static_ass:rect_cw(s - 1, slider_lo.gap - bar_h, s + 1, slider_lo.gap); - else - static_ass:rect_cw(s - 1, slider_lo.gap - bar_h, s + 1, elem_geo.h - slider_lo.gap); - end - end - --bottom - if slider_lo.nibbles_bottom then - if slider_lo.nibbles_style == "triangle" then - static_ass:move_to(s - 3, elem_geo.h - slider_lo.gap + 5) - static_ass:line_to(s, elem_geo.h - slider_lo.gap + 1) - static_ass:line_to(s + 3, elem_geo.h - slider_lo.gap + 5) - elseif slider_lo.nibbles_style == "bar" then - static_ass:rect_cw(s - 1, elem_geo.h - slider_lo.gap, s + 1, elem_geo.h - slider_lo.gap + bar_h); - else - static_ass:rect_cw(s - 1, slider_lo.gap, s + 1, elem_geo.h - slider_lo.gap + bar_h); - end - end - else -- draw 2x1px nibbles - --top - if slider_lo.nibbles_top then - static_ass:rect_cw(s - 1, 0, s + 1, slider_lo.gap); - end - --bottom - if slider_lo.nibbles_bottom then - static_ass:rect_cw(s - 1, elem_geo.h - slider_lo.gap, s + 1, elem_geo.h); - end - end - end - end - end - end - - element.static_ass = static_ass - - -- if the element is supposed to be disabled, - -- style it accordingly and kill the eventresponders - if not element.enabled then - element.layout.alpha[1] = 215 - if not (element.name == "sub_track" or element.name == "audio_track" or element.name == "tog_playlist") then -- keep these to display tooltips - element.eventresponder = nil - end - end - - -- gray out the element if it is toggled off - if element.off then - element.layout.alpha[1] = 100 - end - end -end - --- --- Element Rendering --- - --- returns nil or a chapter element from the native property chapter-list -local function get_chapter(possec) - local cl = state.chapter_list -- sorted, get latest before possec, if any - - for n=#cl,1,-1 do - if possec >= cl[n].time then - return cl[n] - end - end -end - --- Draws a handle on the seekbar according to user_opts --- Returns handle position and radius -local function draw_seekbar_handle(element, elem_ass, override_alpha) - local pos = element.slider.posF() - if not pos then - return 0, 0 - end - local display_handle = user_opts.seek_handle_size > 0 - local elem_geo = element.layout.geometry - local rh = display_handle and (user_opts.seek_handle_size * elem_geo.h / 2) or 0 -- handle radius - local xp = get_slider_ele_pos_for(element, pos) -- handle position - local handle_hovered = mouse_hit_coords(element.hitbox.x1 + xp - rh, element.hitbox.y1 + elem_geo.h / 2 - rh, element.hitbox.x1 + xp + rh, element.hitbox.y1 + elem_geo.h / 2 + rh) and element.enabled - - if display_handle then - -- Apply size hover_effect only if hovering over the handle - if handle_hovered and user_opts.hover_effect_for_sliders then - if contains(user_opts.hover_effect, "size") then - rh = rh * (user_opts.hover_button_size / 100) - end - end - - ass_draw_cir_cw(elem_ass, xp, elem_geo.h / 2, rh) - - if user_opts.hover_effect_for_sliders then - elem_ass:draw_stop() - elem_ass:merge(element.style_ass) - ass_append_alpha(elem_ass, element.layout.alpha, override_alpha or 0) - elem_ass:merge(element.static_ass) - end - - return xp, rh - end - return xp, 0 -end - --- Draws seekbar ranges according to user_opts -local function draw_seekbar_ranges(element, elem_ass, xp, rh, override_alpha) - local handle = xp and rh - xp = xp or 0 - rh = rh or 0 - local slider_lo = element.layout.slider - local elem_geo = element.layout.geometry - local seekRanges = element.slider.seekRangesF() - if not seekRanges then - return - end - elem_ass:draw_stop() - elem_ass:merge(element.style_ass) - ass_append_alpha(elem_ass, element.layout.alpha, override_alpha or user_opts.seekrangealpha) - elem_ass:append("{\\1cH&" .. osc_color_convert(user_opts.seekbar_cache_color) .. "&}") - elem_ass:merge(element.static_ass) - - for _, range in pairs(seekRanges) do - local pstart = math.max(0, get_slider_ele_pos_for(element, range["start"]) - slider_lo.gap) - local pend = math.min(elem_geo.w, get_slider_ele_pos_for(element, range["end"]) + slider_lo.gap) - - if handle and (pstart < xp + rh and pend > xp - rh) then - if pstart < xp - rh then - elem_ass:rect_cw(pstart, slider_lo.gap, xp - rh, elem_geo.h - slider_lo.gap) - end - pstart = xp + rh - end - - if pend > pstart then - elem_ass:rect_cw(pstart, slider_lo.gap, pend, elem_geo.h - slider_lo.gap) - end - end -end - --- Draw seekbar progress more accurately -local function draw_seekbar_progress(element, elem_ass) - local pos = element.slider.posF() - if not pos then - return - end - local xp = get_slider_ele_pos_for(element, pos) - local slider_lo = element.layout.slider - local elem_geo = element.layout.geometry - elem_ass:rect_cw(0, slider_lo.gap, xp, elem_geo.h - slider_lo.gap) -end - -local function render_elements(master_ass) - -- when the slider is dragged or hovered and we have a target chapter name - -- then we use it instead of the normal title. we calculate it before the - -- render iterations because the title may be rendered before the slider. - state.forced_title = nil - - -- disable displaying chapter name in title when thumbfast is available - -- because thumbfast will render it above the thumbnail instead - if thumbfast.disabled then - local se, ae = state.slider_element, elements[state.active_element] - if user_opts.chapter_fmt ~= "no" and state.touchingprogressbar then - local dur = mp.get_property_number("duration", 0) - if dur > 0 then - local ch = get_chapter(state.sliderpos * dur / 100) - if ch and ch.title and ch.title ~= "" then - state.forced_title = string.format(user_opts.chapter_fmt, ch.title) - end - end - end - end - - state.touchingprogressbar = false - - for n=1, #elements do - local element = elements[n] - local style_ass = assdraw.ass_new() - style_ass:merge(element.style_ass) - ass_append_alpha(style_ass, element.layout.alpha, 0) - - if element.eventresponder and (state.active_element == n) then - -- run render event functions - if element.eventresponder.render ~= nil then - element.eventresponder.render(element) - end - if mouse_hit(element) then - -- mouse down styling - if element.styledown then - style_ass:append(osc_styles.element_down) - end - if element.softrepeat and state.mouse_down_counter >= 15 - and state.mouse_down_counter % 5 == 0 then - - element.eventresponder[state.active_event_source.."_down"](element) - end - state.mouse_down_counter = state.mouse_down_counter + 1 - end - end - - local elem_ass = assdraw.ass_new() - elem_ass:merge(style_ass) - - if element.type ~= "button" then - elem_ass:merge(element.static_ass) - end - - if element.type == "slider" then - if element.name ~= "persistentseekbar" then - local slider_lo = element.layout.slider - local elem_geo = element.layout.geometry - local s_min = element.slider.min.value - local s_max = element.slider.max.value - - local xp, rh = draw_seekbar_handle(element, elem_ass) -- handle posistion, handle radius - draw_seekbar_progress(element, elem_ass) - draw_seekbar_ranges(element, elem_ass, xp, rh) - - elem_ass:draw_stop() - - -- add tooltip - if element.slider.tooltipF ~= nil and element.enabled then - local force_seek_tooltip = user_opts.force_seek_tooltip - and element.name == "seekbar" - and element.eventresponder["mbtn_left_down"] - and element.state.mbtnleft - and state.mouse_down_counter > 0 - and state.playing_and_seeking - if mouse_hit(element) or force_seek_tooltip then - local sliderpos = get_slider_value(element) - local tooltiplabel = element.slider.tooltipF(sliderpos) - local an = slider_lo.tooltip_an - local ty - if an == 2 then - ty = element.hitbox.y1 - user_opts.seek_hover_tooltip_h_offset - else - ty = element.hitbox.y1 + elem_geo.h / 2 - user_opts.seek_hover_tooltip_h_offset - end - - local tx = get_virt_mouse_pos() - if slider_lo.adjust_tooltip then - if an == 2 then - if sliderpos < (s_min + 3) then - an = an - 1 - elseif sliderpos > (s_max - 3) then - an = an + 1 - end - elseif (sliderpos > (s_max+s_min)/2) then - an = an + 1 - tx = tx - 5 - else - an = an - 1 - tx = tx + 10 - end - end - - if element.name == "seekbar" then - state.sliderpos = sliderpos - end - - -- chapter title tooltip on show_title=false and no thumbfast - -- add hovered chapter title above time code tooltip on seekbar hover - if thumbfast.disabled and not user_opts.show_title and not user_opts.show_chapter_title then - local osd_w = mp.get_property_number("osd-width") - local r_w, r_h = get_virt_scale_factor() - if osd_w then - if user_opts.chapter_fmt ~= "no" and state.touchingprogressbar then - local dur = mp.get_property_number("duration", 0) - if dur > 0 then - local ch = get_chapter(state.sliderpos * dur / 100) - if ch and ch.title and ch.title ~= "" then - local titleX = math.min(osd_w - (50 / r_w), math.max((60 / r_w), tx / r_w)) - local titleY = ty - (user_opts.time_font_size * 1.3) - - elem_ass:new_event() - elem_ass:pos(titleX * r_w, titleY) - elem_ass:an(2) - elem_ass:append(slider_lo.tooltip_style) - ass_append_alpha(elem_ass, slider_lo.alpha, 0) - elem_ass:append(string.format(user_opts.chapter_fmt, ch.title)) - end - end - end - end - -- thumbfast - elseif element.thumbnailable and not thumbfast.disabled then - local osd_w = mp.get_property_number("osd-width") - local r_w, r_h = get_virt_scale_factor() - - if osd_w then - local hover_sec = 0 - if mp.get_property_number("duration") then hover_sec = mp.get_property_number("duration") * sliderpos / 100 end - local thumbPad = user_opts.thumbnail_border - local thumbMarginX = 18 / r_w - local thumbMarginY = user_opts.time_font_size + thumbPad + 2 / r_h - local thumbX = math.min(osd_w - thumbfast.width - thumbMarginX, math.max(thumbMarginX, tx / r_w - thumbfast.width / 2)) - local thumbY = (ty - thumbMarginY) / r_h - thumbfast.height - - thumbX = math.floor(thumbX + 0.5) - thumbY = math.floor(thumbY + 0.5) - - if state.anitype == nil then - elem_ass:new_event() - elem_ass:append("{\\rDefault}") - elem_ass:pos(thumbX * r_w, ty - thumbMarginY - thumbfast.height * r_h) - elem_ass:an(7) - elem_ass:append(osc_styles.thumbnail) - elem_ass:draw_start() - if user_opts.thumbnail_border_radius and user_opts.thumbnail_border_radius > 0 then - elem_ass:round_rect_cw(-thumbPad * r_w, -thumbPad * r_h, (thumbfast.width + thumbPad) * r_w, (thumbfast.height + thumbPad) * r_h, user_opts.thumbnail_border_radius) - else - elem_ass:rect_cw(-thumbPad * r_w, -thumbPad * r_h, (thumbfast.width + thumbPad) * r_w, (thumbfast.height + thumbPad) * r_h) - end - elem_ass:draw_stop() - - -- force tooltip to be centered on the thumb, even at far left/right of screen - tx = (thumbX + thumbfast.width / 2) * r_w - an = 2 - - mp.commandv("script-message-to", "thumbfast", "thumb", hover_sec, thumbX, thumbY) - end - - -- chapter title tooltip - local se, ae = state.slider_element, elements[state.active_element] - if user_opts.chapter_fmt ~= "no" and state.touchingprogressbar then - local dur = mp.get_property_number("duration", 0) - if dur > 0 then - local ch = get_chapter(state.sliderpos * dur / 100) - if ch and ch.title and ch.title ~= "" then - elem_ass:new_event() - elem_ass:pos((thumbX + thumbfast.width / 2) * r_w, thumbY * r_h - user_opts.time_font_size / 2) - elem_ass:an(an) - elem_ass:append(slider_lo.tooltip_style) - ass_append_alpha(elem_ass, slider_lo.alpha, 0) - elem_ass:append(string.format(user_opts.chapter_fmt, ch.title)) - end - end - end - end - end - - -- tooltip label - elem_ass:new_event() - elem_ass:pos(tx, ty) - elem_ass:an(an) - elem_ass:append(slider_lo.tooltip_style) - ass_append_alpha(elem_ass, slider_lo.alpha, 0) - elem_ass:append(tooltiplabel) - elseif element.thumbnailable and thumbfast.available then - mp.commandv("script-message-to", "thumbfast", "clear") - end - end - end - - elseif element.type == "button" then - local buttontext - if type(element.content) == "function" then - buttontext = element.content() -- function objects - elseif element.content ~= nil then - buttontext = element.content -- text objects - end - - local maxchars = element.layout.button.maxchars - if maxchars ~= nil and #buttontext > maxchars then - local max_ratio = 1.25 -- up to 25% more chars while shrinking - local limit = math.max(0, math.floor(maxchars * max_ratio) - 3) - if #buttontext > limit then - while (#buttontext > limit) do - buttontext = buttontext:gsub(".[\128-\191]*$", "") - end - buttontext = buttontext .. "..." - end - buttontext = string.format("{\\fscx%f}", - (maxchars/#buttontext)*100) .. buttontext - end - - -- add hover effects - local button_lo = element.layout.button - local is_clickable = element.eventresponder and ( - element.eventresponder["mbtn_left_down"] ~= nil or - element.eventresponder["mbtn_left_up"] ~= nil - ) - local hovered = mouse_hit(element) and is_clickable and element.enabled and state.mouse_down_counter == 0 - local hoverstyle = button_lo.hoverstyle - if hovered and (contains(user_opts.hover_effect, "size") or contains(user_opts.hover_effect, "color")) then - -- remove font scale tags for these elements, it looks out of place - if element.name == "title" or element.name == "time_codes" or element.name == "chapter_title" or element.name == "cache_info" then - hoverstyle = hoverstyle:gsub("\\fscx%d+\\fscy%d+", "") - end - elem_ass:append(hoverstyle .. buttontext) - else - elem_ass:append(buttontext) - end - - -- apply blur effect if "glow" is in hover effects - if hovered and contains(user_opts.hover_effect, "glow") then - local shadow_ass = assdraw.ass_new() - shadow_ass:merge(style_ass) - shadow_ass:append("{\\blur" .. user_opts.button_glow_amount .. "}" .. hoverstyle .. buttontext) - elem_ass:merge(shadow_ass) - end - - -- add tooltip for button elements - if element.tooltipF ~= nil and (user_opts.tooltips_for_disabled_elements or element.enabled) then - if mouse_hit(element) then - local tooltiplabel = element.tooltipF - local an = 1 - local ty = element.hitbox.y1 - user_opts.tooltip_height_offset - local tx = get_virt_mouse_pos() - - if ty < osc_param.playresy / 2 then - ty = element.hitbox.y2 - user_opts.tooltip_height_offset - an = 7 - end - - -- tooltip label - if element.enabled then - if type(element.tooltipF) == "function" then - tooltiplabel = element.tooltipF() - else - tooltiplabel = element.tooltipF - end - else - tooltiplabel = element.nothingavailable - end - - if tx > osc_param.playresx / 2 then -- move tooltip to left side of mouse cursor - tx = tx - string.len(tooltiplabel) * user_opts.tooltip_left_offset - end - - elem_ass:new_event() - elem_ass:append("{\\rDefault}") - elem_ass:pos(tx, ty) - elem_ass:an(an) - elem_ass:append(element.tooltip_style) - elem_ass:append(tooltiplabel) - end - end - end - - master_ass:merge(elem_ass) - end -end - -local function render_persistentprogressbar(master_ass) - for n=1, #elements do - local element = elements[n] - if element.name == "persistentseekbar" then - local style_ass = assdraw.ass_new() - style_ass:merge(element.style_ass) - if state.animation or not state.osc_visible then - ass_append_alpha(style_ass, element.layout.alpha, 0, true) - - local elem_ass = assdraw.ass_new() - elem_ass:merge(style_ass) - if element.type ~= "button" then - elem_ass:merge(element.static_ass) - end - - -- draw pos marker - draw_seekbar_progress(element, elem_ass) - - if user_opts.persistentbuffer then - draw_seekbar_ranges(element, elem_ass, nil, nil) - end - - elem_ass:draw_stop() - master_ass:merge(elem_ass) - end - end - end -end - --- --- Initialisation and Layout --- -local function is_url(s) - if not s then - user_opts.download_button = false - return false - end - - local url_pattern = "^[%w]+://[%w%.%-_]+%.[%a]+[-%w%.%-%_/?&=]*" - return string.match(s, url_pattern) ~= nil -end - -local function exec_filesize(args) - for i = #args, 1, -1 do - if args[i] == nil or args[i] == "" then - table.remove(args, i) - end - end - - mp.command_native_async({ - name = "subprocess", - args = args, - capture_stdout = true, - capture_stderr = true - }, function(res, val) - local fileSizeString = val.stdout - state.file_size_bytes = tonumber(fileSizeString) - - if state.file_size_bytes then - state.file_size_normalized = utils.format_bytes_humanized(state.file_size_bytes) - msg.info("Download size: " .. state.file_size_normalized) - else - local fs_prop = mp.get_property_osd("file-size") - - if fs_prop and fs_prop ~= "" then - state.file_size_normalized = fs_prop - msg.info("Download size: " .. fs_prop) - else - state.file_size_normalized = "Unknown" - msg.info("Unable to retrieve file size.") - end - end - - request_tick() - end) -end - -local function download_done(success, result, error) - if success then - local download_path = mp.command_native({"expand-path", user_opts.download_path}) - mp.command("show-text 'Download saved to " .. download_path .. "'") - state.downloaded_once = true - msg.info("Download completed") - else - mp.command("show-text 'Download failed - " .. (error or "Unknown error") .. "'") - msg.info("Download failed") - end - state.downloading = false -end - -local function exec(args, callback) - for i = #args, 1, -1 do - if args[i] == nil or args[i] == "" then - table.remove(args, i) - end - end - - msg.info("Executing command: " .. table.concat(args, " ")) - - local ret = mp.command_native_async({ - name = "subprocess", - args = args, - capture_stdout = true, - capture_stderr = true - }, callback) - - return ret and ret.status or nil -end - -local function check_path_url() - state.is_URL = false - state.downloading = false - - local path = mp.get_property("path") - if not path then return nil end - - if string.find(path, "https://") then - path = string.gsub(path, "ytdl://", "") -- Remove "ytdl://" prefix - else - path = string.gsub(path, "ytdl://", "https://") -- Replace "ytdl://" with "https://" - end - - -- use current or default ytdl-format - local mpv_ytdl = mp.get_property("file-local-options/ytdl-format") or mp.get_property("ytdl-format") or "" - local ytdl_format = (mpv_ytdl and mpv_ytdl ~= "") and "-f " .. mpv_ytdl or "-f " .. "bestvideo+bestaudio/best" - - if is_url(path) then - state.is_URL = true - state.url_path = path - msg.info("URL detected.") - - if user_opts.download_button then - msg.info("Fetching file size...") - local command = { - "yt-dlp", - state.is_image and "" or ytdl_format, - "--no-download", - "-O", - "%(filesize,filesize_approx)s", -- Fetch file size or approximate size - path - } - exec_filesize(command) - end - end -end - -local function new_element(name, type) - elements[name] = {} - elements[name].type = type - elements[name].name = name - - -- add default stuff - elements[name].eventresponder = {} - elements[name].visible = true - elements[name].enabled = true - elements[name].softrepeat = false - elements[name].styledown = (type == "button") - elements[name].state = {} - - if type == "slider" then - elements[name].slider = {min = {value = 0}, max = {value = 100}} - elements[name].thumbnailable = false - end - - return elements[name] -end - -local function add_layout(name) - if elements[name] ~= nil then - -- new layout - elements[name].layout = {} - - -- set layout defaults - elements[name].layout.layer = 50 - elements[name].layout.alpha = {[1] = 0, [2] = 255, [3] = 255, [4] = 255} - - if elements[name].type == "button" then - elements[name].layout.button = { - maxchars = nil, - hoverstyle = osc_styles.element_hover, - } - elseif elements[name].type == "slider" then - -- slider defaults - elements[name].layout.slider = { - border = 1, - gap = 1, - nibbles_top = user_opts.nibbles_top, - nibbles_bottom = user_opts.nibbles_bottom, - nibbles_style = user_opts.nibbles_style, - adjust_tooltip = true, - tooltip_style = "", - tooltip_an = 2, - alpha = {[1] = 0, [2] = 255, [3] = 88, [4] = 255}, - hoverstyle = osc_styles.element_hover:gsub("\\fscx%d+\\fscy%d+", ""), -- font scales messes with handle positions in werid ways - } - elseif elements[name].type == "box" then - elements[name].layout.box = {radius = 0, hexagon = false} - end - - return elements[name].layout - else - msg.error("Can't add_layout to element '"..name.."', doesn't exist.") - end -end - --- Window Controls -local function window_controls() - local wc_geo = { - x = 0, - y = 50, - an = 1, - w = osc_param.playresx, - h = 50, - } - - local lo - local controlbox_w = window_control_box_width - local titlebox_w = wc_geo.w - controlbox_w - local controlbox_left = wc_geo.w - controlbox_w - local titlebox_left = wc_geo.x - local titlebox_right = wc_geo.w - controlbox_w - local button_y = wc_geo.y - (wc_geo.h / 2) - local first_geo = {x = controlbox_left + 25, y = button_y, an = 5, w = 50, h = wc_geo.h} - local second_geo = {x = controlbox_left + 75, y = button_y, an = 5, w = 49, h = wc_geo.h} - local third_geo = {x = controlbox_left + 125, y = button_y, an = 5, w = 50, h = wc_geo.h} - - -- Window controls - if user_opts.window_controls then - -- Close: 🗙 - lo = add_layout("close") - lo.geometry = third_geo - lo.style = osc_styles.window_control - lo.button.hoverstyle = "{\\c&H" .. osc_color_convert(user_opts.windowcontrols_close_hover) .. "&" .. (contains(user_opts.hover_effect, "size") and string.format("\\fscx%s\\fscy%s", user_opts.hover_button_size, user_opts.hover_button_size) or "") .. "}" - - -- Minimize: 🗕 - lo = add_layout("minimize") - lo.geometry = first_geo - lo.style = osc_styles.window_control - lo.button.hoverstyle = "{\\c&H" .. osc_color_convert(user_opts.windowcontrols_min_hover) .. "&" .. (contains(user_opts.hover_effect, "size") and string.format("\\fscx%s\\fscy%s", user_opts.hover_button_size, user_opts.hover_button_size) or "") .. "}" - - -- Maximize: 🗖 /🗗 - lo = add_layout("maximize") - lo.geometry = second_geo - lo.style = osc_styles.window_control - lo.button.hoverstyle = "{\\c&H" .. osc_color_convert(user_opts.windowcontrols_max_hover) .. "&" .. (contains(user_opts.hover_effect, "size") and string.format("\\fscx%s\\fscy%s", user_opts.hover_button_size, user_opts.hover_button_size) or "") .. "}" - - add_area("window-controls", get_hitbox_coords(controlbox_left, wc_geo.y, wc_geo.an, controlbox_w, wc_geo.h)) - end - - -- Window Title - if user_opts.window_title then - lo = add_layout("windowtitle") - lo.geometry = {x = 20, y = button_y + 14, an = 1, w = osc_param.playresx - 50, h = wc_geo.h} - lo.style = string.format("%s{\\clip(%f,%f,%f,%f)}", osc_styles.window_title, titlebox_left, wc_geo.y - wc_geo.h, titlebox_right, wc_geo.y + wc_geo.h) - - add_area("window-controls-title", titlebox_left, 0, titlebox_right, wc_geo.h) - end -end - --- --- ModernZ Layout --- - -local layouts = {} - --- Default layout -layouts["modern"] = function () - local no_title = - ((user_opts.title_mbtn_left_command == "" or user_opts.title_mbtn_left_command == "ignore") and - (user_opts.title_mbtn_right_command == "" or user_opts.title_mbtn_right_command == "ignore")) or - not user_opts.show_title - - local no_chapter = - ((user_opts.chapter_title_mbtn_left_command == "" or user_opts.chapter_title_mbtn_left_command == "ignore") and - (user_opts.chapter_title_mbtn_right_command == "" or user_opts.chapter_title_mbtn_right_command == "ignore")) or - not user_opts.show_chapter_title - - local chapter_index = user_opts.show_chapter_title and mp.get_property_number("chapter", -1) >= 0 - local osc_height_offset = (no_title and user_opts.notitle_osc_h_offset or 0) + ((no_chapter or not chapter_index) and user_opts.nochapter_osc_h_offset or 0) - - local osc_geo = { - w = osc_param.playresx, - h = user_opts.osc_height - osc_height_offset - } - - -- update bottom margin - osc_param.video_margins.b = math.max(user_opts.osc_height, user_opts.fade_alpha) / osc_param.playresy - - -- origin of the controllers, left/bottom corner - local posX = 0 - local posY = osc_param.playresy - - osc_param.areas = {} -- delete areas - - -- area for active mouse input - add_area("input", get_hitbox_coords(posX, posY, 1, osc_geo.w, osc_geo.h)) - - -- area for show/hide - add_area("showhide", 0, 0, osc_param.playresx, osc_param.playresy) - - -- fetch values - local osc_w, osc_h = osc_geo.w, osc_geo.h - - -- Controller Background - local lo, geo - - new_element("osc_fade_bg", "box") - lo = add_layout("osc_fade_bg") - lo.geometry = {x = posX, y = posY, an = 7, w = osc_w, h = 1} - lo.style = osc_styles.osc_fade_bg - lo.layer = 10 - lo.alpha[3] = user_opts.fade_transparency_strength - - local top_titlebar = window_controls_enabled() and (user_opts.window_title or user_opts.window_controls) - - -- Window bar alpha - if ((user_opts.window_top_bar == "yes" or not (state.border and state.title_bar)) or state.fullscreen) and top_titlebar then - new_element("window_bar_alpha_bg", "box") - lo = add_layout("window_bar_alpha_bg") - lo.geometry = {x = posX, y = -100, an = 7, w = osc_w, h = -1} - lo.style = osc_styles.window_fade_bg - lo.layer = 10 - lo.alpha[3] = user_opts.window_fade_transparency_strength - end - - -- Alignment - local refX = osc_w / 2 - local refY = posY - - -- Seekbar - new_element("seekbarbg", "box") - lo = add_layout("seekbarbg") - local seekbar_bg_h = 4 - lo.geometry = {x = refX, y = refY - 72, an = 5, w = osc_geo.w - 50, h = seekbar_bg_h} - lo.layer = 13 - lo.style = osc_styles.seekbar_bg - lo.alpha[1] = 128 - lo.alpha[3] = 128 - - lo = add_layout("seekbar") - local seekbar_h = 18 - lo.geometry = {x = refX, y = refY - 72, an = 5, w = osc_geo.w - 50, h = seekbar_h} - lo.layer = 51 - lo.style = osc_styles.seekbar_fg - lo.slider.gap = (seekbar_h - seekbar_bg_h) / 2.0 - lo.slider.tooltip_style = osc_styles.tooltip - lo.slider.tooltip_an = 2 - - if user_opts.persistentprogress or state.persistent_progress_toggle then - lo = add_layout("persistentseekbar") - lo.geometry = {x = refX, y = refY, an = 5, w = osc_geo.w, h = user_opts.persistentprogressheight} - lo.style = osc_styles.seekbar_fg - lo.slider.gap = (seekbar_h - seekbar_bg_h) / 2.0 - lo.slider.tooltip_an = 0 - end - - local audio_track = audio_track_count > 0 - local subtitle_track = sub_track_count > 0 - local jump_buttons = user_opts.jump_buttons - local chapter_skip_buttons = user_opts.chapter_skip_buttons - local track_nextprev_buttons = user_opts.track_nextprev_buttons - local fullscreen_button = user_opts.fullscreen_button - local info_button = user_opts.info_button - local ontop_button = user_opts.ontop_button - local screenshot_button = user_opts.screenshot_button - local loop_button = user_opts.loop_button - local speed_button = user_opts.speed_button - local download_button = user_opts.download_button and state.is_URL - local playlist_button = user_opts.playlist_button and (not user_opts.hide_empty_playlist_button or mp.get_property_number("playlist-count", 0) > 1) - - local offset = jump_buttons and 60 or 0 - local outeroffset = (chapter_skip_buttons and 0 or 100) + (jump_buttons and 0 or 100) - - -- OSC title - geo = {x = 25, y = refY - (chapter_index and user_opts.title_with_chapter_height or user_opts.title_height), an = 1, w = osc_geo.w - 50 - (loop_button and 45 or 0) - (speed_button and 45 or 0), h = user_opts.title_font_size} - lo = add_layout("title") - lo.geometry = geo - lo.style = string.format("%s{\\clip(0,%f,%f,%f)}", osc_styles.title, geo.y - geo.h, geo.x + geo.w, geo.y + geo.h) - lo.alpha[3] = 0 - - -- Chapter title (above seekbar) - if user_opts.show_chapter_title then - lo = add_layout("chapter_title") - lo.geometry = {x = 26, y = refY - user_opts.chapter_title_height, an = 1, w = osc_geo.w / 2, h = user_opts.chapter_title_font_size} - lo.style = string.format("%s{\\clip(0,%f,%f,%f)}", osc_styles.chapter_title, geo.y - geo.h, geo.x + geo.w, geo.y + geo.h) - end - - -- buttons - if track_nextprev_buttons then - lo = add_layout("playlist_prev") - lo.geometry = {x = refX - (60 + (chapter_skip_buttons and 60 or 0)) - offset, y = refY - 35, an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - if chapter_skip_buttons then - lo = add_layout("chapter_backward") - lo.geometry = {x = refX - 60 - offset, y = refY - 35, an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - if jump_buttons then - lo = add_layout("jump_backward") - lo.geometry = {x = refX - 60, y = refY - 35, an = 5, w = 30, h = 24} - lo.style = (user_opts.jump_icon_number and icons.jump[user_opts.jump_amount] ~= nil) and osc_styles.control_2 or osc_styles.control_2_flip - end - - lo = add_layout("play_pause") - lo.geometry = {x = refX, y = refY - 35, an = 5, w = 45, h = 28} - lo.style = osc_styles.control_1 - - if jump_buttons then - lo = add_layout("jump_forward") - lo.geometry = {x = refX + 60, y = refY - 35, an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - if chapter_skip_buttons then - lo = add_layout("chapter_forward") - lo.geometry = {x = refX + 60 + offset, y = refY - 35, an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - if track_nextprev_buttons then - lo = add_layout("playlist_next") - lo.geometry = {x = refX + (60 + (chapter_skip_buttons and 60 or 0)) + offset, y = refY - 35, an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - local start_x = 37 - - -- Playlist - if playlist_button then - lo = add_layout("tog_playlist") - lo.geometry = {x = start_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 600 - outeroffset) - start_x = start_x + 45 - end - - -- Audio - if audio_track then - lo = add_layout("audio_track") - lo.geometry = {x = start_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 500 - outeroffset) - start_x = start_x + 45 - end - - -- Subtitle - if subtitle_track then - lo = add_layout("sub_track") - lo.geometry = {x = start_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 600 - outeroffset) - start_x = start_x + 45 - end - - if audio_track then - -- Volume - lo = add_layout("vol_ctrl") - lo.geometry = {x = start_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 600 - outeroffset) - start_x = start_x + 28 - - -- Volumebar - lo = new_element("volumebarbg", "box") - lo.visible = (osc_param.playresx >= 1150 - outeroffset) and user_opts.volume_control - lo = add_layout("volumebarbg") - lo.geometry = {x = start_x, y = refY - 35, an = 4, w = 55, h = 4} - lo.layer = 13 - lo.alpha[1] = 128 - lo.style = user_opts.volumebar_match_seek_color and osc_styles.seekbar_bg or osc_styles.volumebar_bg - - lo = add_layout("volumebar") - lo.geometry = {x = start_x, y = refY - 35, an = 4, w = 55, h = 10} - lo.style = user_opts.volumebar_match_seek_color and osc_styles.seekbar_fg or osc_styles.volumebar_fg - lo.slider.gap = 3 - lo.slider.tooltip_style = osc_styles.tooltip - lo.slider.tooltip_an = 2 - start_x = start_x + 75 - end - - -- Time codes - local remsec = mp.get_property_number("playtime-remaining", 0) - local dur = mp.get_property_number("duration", 0) - local show_hours = mp.get_property_number("playback-time", 0) >= 3600 or user_opts.time_format ~= "dynamic" - local show_remhours = (state.tc_right_rem and remsec >= 3600) or (not state.tc_right_rem and dur >= 3600) or user_opts.time_format ~= "dynamic" - local auto_hide_volbar = (audio_track and user_opts.volume_control) and osc_param.playresx < (user_opts.hide_volume_bar_trigger - outeroffset) - local time_codes_x = start_x - - (auto_hide_volbar and 75 or 0) -- window width with audio track and elements - - (audio_track and not user_opts.volume_control and 115 or 0) -- audio track with no elements - - (not audio_track and 12 or 0) -- remove extra padding - local time_codes_width = 80 - + (state.tc_ms and 50 or 0) - + (state.tc_right_rem and 15 or 0) - + (show_hours and 20 or 0) - + (show_remhours and 20 or 0) - local narrow_win = osc_param.playresx < ( - user_opts.portrait_window_trigger - - outeroffset - - (playlist_button and 0 or 100) - - (subtitle_track and 0 or 100) - - (audio_track and 0 or 100) - ) - lo = add_layout("time_codes") - lo.geometry = {x = (narrow_win and refX or time_codes_x), y = refY - (narrow_win and user_opts.time_codes_centered_height or user_opts.time_codes_height), an = (narrow_win and 5 or 4), w = time_codes_width, h = user_opts.time_font_size} - lo.style = osc_styles.time - - -- Fullscreen/Info/Pin/Screenshot/Loop/Speed - local end_x = osc_geo.w - 37 - if fullscreen_button then - lo = add_layout("tog_fullscreen") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 250 - outeroffset) - end_x = end_x - 45 - end - - if info_button then - lo = add_layout("tog_info") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 300 - outeroffset) - end_x = end_x - 45 - end - - if ontop_button then - lo = add_layout("tog_ontop") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 500 - outeroffset) - end_x = end_x - 45 - end - - if screenshot_button then - lo = add_layout("screenshot") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 600 - outeroffset) - end_x = end_x - 45 - end - - if loop_button then - lo = add_layout("tog_loop") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 600 - outeroffset) and loop_button - end_x = end_x - 45 - end - - if speed_button then - lo = add_layout("tog_speed") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 600 - outeroffset) - end_x = end_x - 45 - end - - if download_button then - lo = add_layout("download") - lo.geometry = {x = end_x, y = refY - 35, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 400 - outeroffset) - end_x = end_x - 45 - end - - -- cache info - if user_opts.cache_info then - lo = add_layout("cache_info") - lo.geometry = {x = end_x + 7, y = refY - 35, an = 6, w = (user_opts.cache_info_speed and 70 or 45), h = 24} - lo.style = osc_styles.cache - end -end - -layouts["modern-image"] = function () - local osc_geo = { - w = osc_param.playresx, - h = 50 - } - - -- update bottom margin - osc_param.video_margins.b = math.max(50, user_opts.fade_alpha) / osc_param.playresy - - -- origin of the controllers, left/bottom corner - local posX = 0 - local posY = osc_param.playresy - - osc_param.areas = {} -- delete areas - - -- area for active mouse input - add_area("input", get_hitbox_coords(posX, posY, 1, osc_geo.w, osc_geo.h)) - - -- area for show/hide - add_area("showhide", 0, 0, osc_param.playresx, osc_param.playresy) - - -- fetch values - local osc_w, osc_h = osc_geo.w, osc_geo.h - - -- Controller Background - local lo, geo - - new_element("osc_fade_bg", "box") - lo = add_layout("osc_fade_bg") - lo.geometry = {x = posX, y = posY, an = 7, w = osc_w, h = 1} - lo.style = osc_styles.osc_fade_bg - lo.layer = 10 - lo.alpha[3] = user_opts.fade_transparency_strength - - local top_titlebar = window_controls_enabled() and (user_opts.window_title or user_opts.window_controls) - - -- Window bar alpha - if ((user_opts.window_top_bar == "yes" or not (state.border and state.title_bar)) or state.fullscreen) and top_titlebar then - new_element("window_bar_alpha_bg", "box") - lo = add_layout("window_bar_alpha_bg") - lo.geometry = {x = posX, y = -100, an = 7, w = osc_w, h = -1} - lo.style = osc_styles.window_fade_bg - lo.layer = 10 - lo.alpha[3] = user_opts.window_fade_transparency_strength - end - - -- Alignment - local refX = osc_w / 2 - local refY = posY - - local track_nextprev_buttons = user_opts.track_nextprev_buttons - local fullscreen_button = user_opts.fullscreen_button - local info_button = user_opts.info_button - local ontop_button = user_opts.ontop_button - local playlist_button = user_opts.playlist_button and (not user_opts.hide_empty_playlist_button or mp.get_property_number("playlist-count", 0) > 1) - local zoom_control = user_opts.zoom_control - - -- Playlist - if playlist_button then - lo = add_layout("tog_playlist") - lo.geometry = {x = 25, y = refY - 30, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = osc_param.playresx >= 250 - end - - if track_nextprev_buttons then - lo = add_layout("playlist_prev") - lo.geometry = {x = 55 - (playlist_button and 0 or 25), y = refY - 30 , an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - - lo = add_layout("playlist_next") - lo.geometry = {x = 80 - (playlist_button and 0 or 25), y = refY - 30 , an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - if zoom_control then - -- zoom control - lo = add_layout("zoom_out_icon") - lo.geometry = {x = 130 - (playlist_button and 0 or 25) - (track_nextprev_buttons and 0 or 70), y = refY - 30 , an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - - lo = new_element("zoom_control_bg", "box") - lo.visible = osc_param.playresx >= 400 and user_opts.zoom_control - lo = add_layout("zoom_control_bg") - lo.geometry = {x = 145 - (playlist_button and 0 or 25) - (track_nextprev_buttons and 0 or 70), y = refY - 30, an = 4, w = 80, h = 4} - lo.layer = 13 - lo.alpha[1] = 128 - lo.style = osc_styles.volumebar_bg - - lo = add_layout("zoom_control") - lo.geometry = {x = 145 - (playlist_button and 0 or 25) - (track_nextprev_buttons and 0 or 70), y = refY - 30, an = 4, w = 80, h = 10} - lo.style = osc_styles.volumebar_fg - lo.slider.gap = 3 - lo.slider.tooltip_style = osc_styles.tooltip - lo.slider.tooltip_an = 2 - - lo = add_layout("zoom_in_icon") - lo.geometry = {x = 240 - (playlist_button and 0 or 25) - (track_nextprev_buttons and 0 or 70), y = refY - 30 , an = 5, w = 30, h = 24} - lo.style = osc_styles.control_2 - end - - -- Fullscreen/Info/Pin/Download - if fullscreen_button then - lo = add_layout("tog_fullscreen") - lo.geometry = {x = osc_geo.w - 37, y = refY - 30, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 250) - end - - if info_button then - lo = add_layout("tog_info") - lo.geometry = {x = osc_geo.w - 82 + (fullscreen_button and 0 or 45), y = refY - 30, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 300) - end - - if ontop_button then - lo = add_layout("tog_ontop") - lo.geometry = {x = osc_geo.w - 127 + (info_button and 0 or 45) + (fullscreen_button and 0 or 45), y = refY - 30, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 500) - end - - if user_opts.download_button then - lo = add_layout("download") - lo.geometry = {x = osc_geo.w - 172 + (ontop_button and 0 or 45) + (info_button and 0 or 45) + (fullscreen_button and 0 or 45), y = refY - 30, an = 5, w = 24, h = 24} - lo.style = osc_styles.control_3 - lo.visible = (osc_param.playresx >= 400) - end -end - -local function adjust_subtitles(visible) - if not mp.get_property_native("sid") then return end - - local scale - if state.fullscreen then - scale = user_opts.scalefullscreen - else - scale = user_opts.scalewindowed - end - - if visible and user_opts.raise_subtitles and state.osc_visible == true then - local w, h = mp.get_osd_size() - if h > 0 then - local raise_factor = user_opts.raise_subtitle_amount - - -- adjust for extreme scales - if scale > 1 then - raise_factor = raise_factor * (1 + (scale - 1) * 0.2) -- slight increase when scale > 1 - elseif scale < 1 then - raise_factor = raise_factor * (0.8 + (scale - 0.5) * 0.5) -- slight decrease when scale < 1 - end - - local adjusted_subpos = math.floor((osc_param.playresy - raise_factor) / osc_param.playresy * 100) - if adjusted_subpos < 0 then - adjusted_subpos = state.original_subpos -- original position if out of bounds - end - mp.commandv("set", "sub-pos", adjusted_subpos) - end - elseif user_opts.raise_subtitles then - mp.commandv("set", "sub-pos", state.original_subpos) - end -end - -local function is_image() - local current_track = mp.get_property_native("current-tracks/video") - if current_track and current_track.image and not current_track.albumart then - state.is_image = true - else - state.is_image = false - end -end - -local function osc_visible(visible) - if state.osc_visible ~= visible then - state.osc_visible = visible - update_margins() - adjust_subtitles(true) - end - request_tick() -end - -local function command_callback(command) - if command ~= "" and command ~= "ignore" then - return function () - mp.command(command) - end - end -end - -local function osc_init() - msg.debug("osc_init") - - -- set canvas resolution according to display aspect and scaling setting - local baseResY = 720 - local _, display_h, display_aspect = mp.get_osd_size() - local scale - - if state.fullscreen then - scale = user_opts.scalefullscreen - else - scale = user_opts.scalewindowed - end - - local scale_with_video - if user_opts.vidscale == "auto" then - scale_with_video = mp.get_property_native("osd-scale-by-window") - else - scale_with_video = user_opts.vidscale == "yes" - end - - if scale_with_video then - osc_param.unscaled_y = baseResY - else - osc_param.unscaled_y = display_h - end - osc_param.playresy = osc_param.unscaled_y / scale - if display_aspect > 0 then - osc_param.display_aspect = display_aspect - end - osc_param.playresx = osc_param.playresy * osc_param.display_aspect - - -- stop seeking with the slider to prevent skipping files - state.active_element = nil - - elements = {} - - -- some often needed stuff - local pl_count = mp.get_property_number("playlist-count", 0) - local have_pl = pl_count > 1 - local pl_pos = mp.get_property_number("playlist-pos", 0) + 1 - local have_ch = mp.get_property_number("chapters", 0) > 0 - local loop = mp.get_property("loop-playlist", "no") - - local nojumpoffset = user_opts.jump_buttons and 0 or 100 - local noskipoffset = user_opts.chapter_skip_buttons and 0 or 100 - local outeroffset = (user_opts.chapter_skip_buttons and 0 or 100) + (user_opts.jump_buttons and 0 or 100) - local audio_offset = (audio_track_count == 0 or not mp.get_property_native("aid")) and 100 or 0 - local sub_offset = (sub_track_count == 0 or not mp.get_property_native("sid")) and 100 or 0 - local playlist_offset = not have_pl and 100 or 0 - - local ne - - -- Window controls - -- Close: 🗙 - ne = new_element("close", "button") - ne.content = icons.window.close - ne.eventresponder["mbtn_left_up"] = function () mp.commandv("quit") end - - -- Minimize: 🗕 - ne = new_element("minimize", "button") - ne.content = icons.window.minimize - ne.eventresponder["mbtn_left_up"] = function () mp.commandv("cycle", "window-minimized") end - - -- Maximize: 🗖 /🗗 - ne = new_element("maximize", "button") - ne.content = (state.maximized or state.fullscreen) and icons.window.unmaximize or icons.window.maximize - ne.eventresponder["mbtn_left_up"] = function () mp.commandv("cycle", (state.fullscreen and "fullscreen" or "window-maximized")) end - - -- Window Title - ne = new_element("windowtitle", "button") - ne.content = function () - local title = mp.command_native({"expand-text", user_opts.windowcontrols_title}) or "" - title = title:gsub("\n", " ") - return title ~= "" and mp.command_native({"escape-ass", title}) or "mpv" - end - - -- OSC title - ne = new_element("title", "button") - ne.visible = user_opts.show_title - ne.content = function () - local title = state.forced_title or mp.command_native({"expand-text", user_opts.title}) - title = title:gsub("\n", " ") - return title ~= "" and mp.command_native({"escape-ass", title}) or "mpv" - end - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.title_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.title_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.title_mbtn_mid_command) - - -- Chapter title (above seekbar) - ne = new_element("chapter_title", "button") - ne.visible = mp.get_property_number("chapter", -1) >= 0 - ne.content = function() - local chapter_index = mp.get_property_number("chapter", -1) - if user_opts.chapter_fmt == "no" or chapter_index < 0 then - return "" - end - - local chapters = mp.get_property_native("chapter-list", {}) - local chapter_data = chapters[chapter_index + 1] - local chapter_title = chapter_data and chapter_data.title ~= "" and chapter_data.title - or string.format("%s: %d/%d", locale.chapter, chapter_index + 1, #chapters) - - chapter_title = mp.command_native({"escape-ass", chapter_title}) - if thumbfast.disabled and not user_opts.show_title and state.forced_title then - chapter_title = state.forced_title - end - - return string.format(user_opts.chapter_fmt, chapter_title) - end - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.chapter_title_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.chapter_title_mbtn_right_command) - - -- playlist buttons - -- prev - ne = new_element("playlist_prev", "button") - ne.visible = (osc_param.playresx >= (state.is_image and 300 or 500) - nojumpoffset - noskipoffset*(nojumpoffset == 0 and 1 or 10)) - ne.content = icons.previous - ne.enabled = (pl_pos > 1) or (loop ~= "no") or contains(user_opts.buttons_always_active, "playlist_prev") - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.playlist_prev_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.playlist_prev_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.playlist_prev_mbtn_mid_command) - - --next - ne = new_element("playlist_next", "button") - ne.visible = (osc_param.playresx >= (state.is_image and 300 or 500) - nojumpoffset - noskipoffset*(nojumpoffset == 0 and 1 or 10)) - ne.content = icons.next - ne.enabled = (have_pl and (pl_pos < pl_count)) or (loop ~= "no") or contains(user_opts.buttons_always_active, "playlist_next") - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.playlist_next_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.playlist_next_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.playlist_next_mbtn_mid_command) - - --play control buttons - --play_pause - ne = new_element("play_pause", "button") - ne.content = function () - if mp.get_property("eof-reached") == "yes" then - return icons.replay - elseif mp.get_property("pause") == "yes" and not state.playing_and_seeking then - return icons.play - else - return icons.pause - end - end - ne.eventresponder["mbtn_left_up"] = function () - if mp.get_property("eof-reached") == "yes" then - mp.commandv("seek", 0, "absolute-percent") - mp.commandv("set", "pause", "no") - else - mp.commandv("cycle", "pause") - end - end - ne.eventresponder["mbtn_right_down"] = function () - if user_opts.loop_in_pause then - mp.command("show-text '" .. (state.looping and locale.loop_disable or locale.loop_enable) .. "'") - state.looping = not state.looping - mp.set_property_native("loop-file", state.looping) - end - end - - local jump_amount = user_opts.jump_amount - local jump_more_amount = user_opts.jump_more_amount - local jump_mode = user_opts.jump_mode - local jump_icon = user_opts.jump_icon_number and icons.jump[jump_amount] or icons.jump.default - - --jump_backward - ne = new_element("jump_backward", "button") - ne.softrepeat = user_opts.jump_softrepeat == true - ne.content = jump_icon[1] - ne.eventresponder["mbtn_left_down"] = function () mp.commandv("seek", -jump_amount, jump_mode) end - ne.eventresponder["mbtn_right_down"] = function () mp.commandv("seek", -jump_more_amount, jump_mode) end - ne.eventresponder["shift+mbtn_left_down"] = function () mp.commandv("frame-back-step") end - - --jump_forward - ne = new_element("jump_forward", "button") - ne.softrepeat = user_opts.jump_softrepeat == true - ne.content = jump_icon[2] - ne.eventresponder["mbtn_left_down"] = function () mp.commandv("seek", jump_amount, jump_mode) end - ne.eventresponder["mbtn_right_down"] = function () mp.commandv("seek", jump_more_amount, jump_mode) end - ne.eventresponder["shift+mbtn_left_down"] = function () mp.commandv("frame-step") end - - --chapter_backward - ne = new_element("chapter_backward", "button") - ne.visible = (osc_param.playresx >= 400 - nojumpoffset*10) - ne.softrepeat = user_opts.chapter_softrepeat == true - ne.content = icons.rewind - ne.enabled = (have_ch) -- disables button when no chapters available. - ne.eventresponder["mbtn_left_down"] = command_callback(user_opts.chapter_prev_mbtn_left_command) - ne.eventresponder["mbtn_right_down"] = command_callback(user_opts.chapter_prev_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.chapter_prev_mbtn_mid_command) - ne.eventresponder["shift+mbtn_right_down"] = function () mp.commandv("seek", -jump_more_amount, jump_mode) end - - --chapter_forward - ne = new_element("chapter_forward", "button") - ne.visible = (osc_param.playresx >= 400 - nojumpoffset*10) - ne.softrepeat = user_opts.chapter_softrepeat == true - ne.content = icons.forward - ne.enabled = (have_ch) -- disables button when no chapters available. - ne.eventresponder["mbtn_left_down"] = command_callback(user_opts.chapter_next_mbtn_left_command) - ne.eventresponder["mbtn_right_down"] = command_callback(user_opts.chapter_next_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.chapter_next_mbtn_mid_command) - ne.eventresponder["shift+mbtn_right_down"] = function () mp.commandv("seek", jump_more_amount, jump_mode) end - - update_tracklist() - - local visible_min_width = 550 - outeroffset - - --tog_playlist - ne = new_element("tog_playlist", "button") - ne.enabled = have_pl or not user_opts.gray_empty_playlist_button - ne.off = not have_pl and user_opts.gray_empty_playlist_button - ne.visible = (osc_param.playresx >= (state.is_image and 250 or visible_min_width) - outeroffset) - ne.content = icons.playlist - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = user_opts.tooltip_hints and locale.menu or "" - ne.nothingavailable = locale.no_playlist - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.playlist_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.playlist_mbtn_right_command) - visible_min_width = visible_min_width + (ne.enabled and 100 or 0) - - --audio_track - ne = new_element("audio_track", "button") - ne.enabled = audio_track_count > 0 - ne.off = audio_track_count == 0 or not mp.get_property_native("aid") - ne.visible = (osc_param.playresx >= visible_min_width) - ne.content = icons.audio - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = function () - local prop = mp.get_property("current-tracks/audio/title") or mp.get_property("current-tracks/audio/lang") or locale.na - return (locale.audio .. " " .. mp.get_property_number("aid", "-") .. "/" .. audio_track_count .. " [" .. prop .. "]") - end - ne.nothingavailable = locale.no_audio - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.audio_track_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.audio_track_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.audio_track_mbtn_mid_command) - ne.eventresponder["wheel_down_press"] = command_callback(user_opts.audio_track_wheel_down_command) - ne.eventresponder["wheel_up_press"] = command_callback(user_opts.audio_track_wheel_up_command) - visible_min_width = visible_min_width + (ne.enabled and 100 or 0) - - --sub_track - ne = new_element("sub_track", "button") - ne.enabled = sub_track_count > 0 - ne.off = sub_track_count == 0 or not mp.get_property_native("sid") - ne.visible = (osc_param.playresx >= visible_min_width - outeroffset) - ne.content = icons.subtitle - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = function () - local prop = mp.get_property("current-tracks/sub/title") or mp.get_property("current-tracks/sub/lang") or locale.na - return (locale.subtitle .. " " .. mp.get_property_number("sid", "-") .. "/" .. sub_track_count .. " [" .. prop .. "]") - end - ne.nothingavailable = locale.no_subs - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.sub_track_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.sub_track_mbtn_right_command) - ne.eventresponder["shift+mbtn_left_down"] = command_callback(user_opts.sub_track_mbtn_mid_command) - ne.eventresponder["wheel_down_press"] = command_callback(user_opts.sub_track_wheel_down_command) - ne.eventresponder["wheel_up_press"] = command_callback(user_opts.sub_track_wheel_up_command) - visible_min_width = visible_min_width + (ne.enabled and 100 or 0) - - -- vol_ctrl - local vol_visible_offset = sub_offset + playlist_offset - ne = new_element("vol_ctrl", "button") - ne.enabled = audio_track_count > 0 - ne.off = audio_track_count == 0 - ne.visible = (osc_param.playresx >= 900 - vol_visible_offset - outeroffset) and user_opts.volume_control - ne.content = function () - local volume = mp.get_property_number("volume", 0) - if state.mute then - return icons.volume_mute - else - if volume >= 75 then - return icons.volume_high - elseif volume >= 25 then - return icons.volume_low - else - return icons.volume_quiet - end - end - end - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = function () - local volume = mp.get_property_number("volume", 0) or 0 - -- show only one decimal, if decimals exist - volume = volume % 1 == 0 and string.format("%.0f", volume) or string.format("%.1f", volume) - return volume - end - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.vol_ctrl_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.vol_ctrl_mbtn_right_command) - ne.eventresponder["wheel_up_press"] = command_callback(user_opts.vol_ctrl_wheel_up_command) - ne.eventresponder["wheel_down_press"] = command_callback(user_opts.vol_ctrl_wheel_down_command) - - --volumebar - local volume_max = mp.get_property_number("volume-max") > 0 and mp.get_property_number("volume-max") or 100 - ne = new_element("volumebar", "slider") - ne.visible = (osc_param.playresx >= 1150 - outeroffset) and user_opts.volume_control - ne.enabled = audio_track_count > 0 - ne.slider = {min = {value = 0}, max = {value = volume_max}} - ne.slider.markerF = function () return {} end - ne.slider.seekRangesF = function() return nil end - ne.slider.posF = function () - local volume = mp.get_property_number("volume") - if user_opts.volume_control == "logarithmic" then - return math.sqrt(volume * 100) - else - return volume - end - end - ne.slider.tooltipF = function (pos) return (audio_track_count > 0) and set_volume(pos) or "" end - ne.eventresponder["mouse_move"] = function (element) - local pos = get_slider_value(element) - local setvol = set_volume(pos) - if element.state.lastseek == nil or element.state.lastseek ~= setvol then - mp.commandv("osd-msg", "set", "volume", setvol) - element.state.lastseek = setvol - end - end - ne.eventresponder["mbtn_left_down"] = function (element) - local pos = get_slider_value(element) - mp.commandv("osd-msg", "set", "volume", set_volume(pos)) - end - ne.eventresponder["reset"] = function (element) element.state.lastseek = nil end - ne.eventresponder["wheel_up_press"] = command_callback(user_opts.vol_ctrl_wheel_up_command) - ne.eventresponder["wheel_down_press"] = command_callback(user_opts.vol_ctrl_wheel_down_command) - - -- zoom control - -- zoom out icon - local current_zoom = mp.get_property_number("video-zoom") - ne = new_element("zoom_out_icon", "button") - ne.visible = (osc_param.playresx >= 400) - ne.content = icons.zoom_out - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = user_opts.tooltip_hints and locale.zoom_out or "" - ne.eventresponder["mbtn_left_up"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.max(user_opts.zoom_out_min, current_zoom - 0.05)) end - ne.eventresponder["mbtn_right_up"] = function () mp.commandv("osd-msg", "set", "video-zoom", 0) end - ne.eventresponder["wheel_up_press"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.min(user_opts.zoom_in_max, current_zoom + 0.05)) end - ne.eventresponder["wheel_down_press"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.max(user_opts.zoom_out_min, current_zoom - 0.05)) end - - -- zoom slider - ne = new_element("zoom_control", "slider") - ne.slider = {min = {value = user_opts.zoom_out_min}, max = {value = user_opts.zoom_in_max}} - ne.visible = (osc_param.playresx >= 400) and user_opts.zoom_control and state.is_image - ne.slider.markerF = function () return {} end - ne.slider.seekRangesF = function() return nil end - ne.slider.posF = function () return mp.get_property_number("video-zoom") end - ne.slider.tooltipF = function (pos) return string.format("%.3f", pos):gsub("%.?0*$", "") end - ne.eventresponder["mouse_move"] = function (element) - local pos = get_slider_value(element) - if element.state.lastseek == nil or element.state.lastseek ~= pos then - mp.commandv("osd-msg", "set", "video-zoom", pos) - element.state.lastseek = pos - end - end - ne.eventresponder["mbtn_left_down"] = function (element) mp.commandv("osd-msg", "set", "video-zoom", get_slider_value(element)) end - ne.eventresponder["reset"] = function (element) element.state.lastseek = nil end - ne.eventresponder["mbtn_right_up"] = function () mp.commandv("osd-msg", "set", "video-zoom", 0) end - ne.eventresponder["wheel_up_press"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.min(user_opts.zoom_in_max, current_zoom + 0.05)) end - ne.eventresponder["wheel_down_press"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.max(user_opts.zoom_out_min, current_zoom - 0.05)) end - - -- zoom in icon - ne = new_element("zoom_in_icon", "button") - ne.visible = (osc_param.playresx >= 400) - ne.content = icons.zoom_in - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = user_opts.tooltip_hints and locale.zoom_in or "" - ne.eventresponder["mbtn_left_up"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.min(user_opts.zoom_in_max, current_zoom + 0.05)) end - ne.eventresponder["mbtn_right_up"] = function () mp.commandv("osd-msg", "set", "video-zoom", 0) end - ne.eventresponder["wheel_up_press"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.min(user_opts.zoom_in_max, current_zoom + 0.05)) end - ne.eventresponder["wheel_down_press"] = function () mp.commandv("osd-msg", "set", "video-zoom", math.max(user_opts.zoom_out_min, current_zoom - 0.05)) end - - visible_min_width = 550 - outeroffset - --tog_fullscreen - ne = new_element("tog_fullscreen", "button") - ne.content = function () return state.fullscreen and icons.fullscreen_exit or icons.fullscreen end - ne.visible = (osc_param.playresx >= visible_min_width) - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.fullscreen_mbtn_left_command) - ne.eventresponder["mbtn_right_up"] = command_callback(user_opts.fullscreen_mbtn_right_command) - visible_min_width = visible_min_width + (user_opts.fullscreen_button and 100 or 0) - - --tog_info - ne = new_element("tog_info", "button") - ne.content = icons.info - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = user_opts.tooltip_hints and locale.stats_info or "" - ne.visible = (osc_param.playresx >= visible_min_width) - ne.eventresponder["mbtn_left_up"] = command_callback(user_opts.info_mbtn_left_command) - visible_min_width = visible_min_width + (user_opts.info_button and 100 or 0) - - --tog_ontop - ne = new_element("tog_ontop", "button") - ne.content = function () return mp.get_property("ontop") == "no" and icons.ontop_on or icons.ontop_off end - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = function () return user_opts.tooltip_hints and (mp.get_property("ontop") == "no" and locale.ontop or locale.ontop_disable) or "" end - ne.visible = (osc_param.playresx >= visible_min_width) - ne.eventresponder["mbtn_left_up"] = function () - mp.commandv("cycle", "ontop") - if state.initialborder == "yes" then - if mp.get_property("ontop") == "yes" then - mp.commandv("set", "border", "no") - else - mp.commandv("set", "border", "yes") - end - end - end - ne.eventresponder["mbtn_right_up"] = function () - mp.commandv("cycle", "ontop") - if mp.get_property("border") == "no" then - mp.commandv("set", "border", "yes") - end - end - visible_min_width = visible_min_width + (user_opts.ontop_button and 100 or 0) - - --screenshot - ne = new_element("screenshot", "button") - ne.content = icons.screenshot - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = user_opts.tooltip_hints and locale.screenshot or "" - ne.visible = (osc_param.playresx >= visible_min_width) - ne.eventresponder["mbtn_left_up"] = function () - local temp_sub_pos = mp.get_property("sub-pos") - if user_opts.screenshot_flag == "subtitles" or user_opts.screenshot_flag == "subtitles+each-frame" then - mp.commandv("set", "sub-pos", 100) - end - mp.commandv("osd-msg", "screenshot", user_opts.screenshot_flag) - mp.commandv("set", "sub-pos", temp_sub_pos) - end - visible_min_width = visible_min_width + (user_opts.screenshot_button and 100 or 0) - - --tog_loop - ne = new_element("tog_loop", "button") - ne.content = function() return state.looping and icons.loop_on or icons.loop_off end - ne.visible = (osc_param.playresx >= visible_min_width) - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = function() return user_opts.tooltip_hints and (state.looping and locale.loop_disable or locale.loop_enable) or "" end - ne.eventresponder["mbtn_left_up"] = function () - mp.command("show-text '" .. (state.looping and locale.loop_disable or locale.loop_enable) .. "'") - state.looping = not state.looping - mp.set_property_native("loop-file", state.looping) - end - visible_min_width = visible_min_width + (user_opts.loop_button and 100 or 0) - - --tog_speed - ne = new_element("tog_speed", "button") - ne.content = icons.speed - ne.visible = (osc_param.playresx >= visible_min_width) - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = user_opts.tooltip_hints and locale.speed_control or "" - ne.eventresponder["mbtn_left_up"] = function () - mp.commandv("osd-msg", "set", "speed", math.min(100, mp.get_property_number("speed") + user_opts.speed_button_click)) - end - ne.eventresponder["mbtn_right_up"] = function () mp.commandv("osd-msg", "set", "speed", 1) end - ne.eventresponder["wheel_up_press"] = function () - mp.commandv("osd-msg", "set", "speed", math.min(100, mp.get_property_number("speed") + user_opts.speed_button_scroll)) - end - ne.eventresponder["wheel_down_press"] = function () - mp.commandv("osd-msg", "set", "speed", math.max(0.25, mp.get_property_number("speed") - user_opts.speed_button_scroll)) - end - visible_min_width = visible_min_width + (user_opts.speed_button and 100 or 0) - - --download - ne = new_element("download", "button") - ne.content = function () return state.downloading and icons.downloading or icons.download end - ne.visible = (osc_param.playresx >= visible_min_width) and state.is_URL - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = function () return state.downloading and locale.downloading .. "..." or locale.download .. " (" .. state.file_size_normalized .. ")" end - ne.eventresponder["mbtn_left_up"] = function () - local localpath = mp.command_native({"expand-path", user_opts.download_path}) - - if state.downloaded_once then - mp.commandv("show-text", locale.downloaded) - elseif state.downloading then - mp.commandv("show-text", locale.download_in_progress) - else - mp.commandv("show-text", locale.downloading .. "...") - state.downloading = true - -- use current or default ytdl-format - local mpv_ytdl = mp.get_property("file-local-options/ytdl-format") or mp.get_property("ytdl-format") or "" - local ytdl_format = (mpv_ytdl and mpv_ytdl ~= "") and "-f " .. mpv_ytdl or "-f " .. "bestvideo+bestaudio/best" - local command = { - "yt-dlp", - state.is_image and "" or ytdl_format, - state.is_image and "" or "--remux", state.is_image and "" or "mp4", - "--add-metadata", - "--embed-subs", - "-o", "%(title)s.%(ext)s", - "-P", localpath, - state.url_path - } - - local status = exec(command, download_done) - end - end - visible_min_width = visible_min_width + (user_opts.download_button and 100 or 0) - - - -- cache info - ne = new_element("cache_info", "button") - ne.visible = (osc_param.playresx >= visible_min_width) - ne.content = function () - if not cache_enabled() then return "" end - local dmx_cache = state.cache_state["cache-duration"] - local thresh = math.min(state.dmx_cache * 0.05, 5) -- 5% or 5s - if dmx_cache and math.abs(dmx_cache - state.dmx_cache) >= thresh then - state.dmx_cache = dmx_cache - else - dmx_cache = state.dmx_cache - end - local min = math.floor(dmx_cache / 60) - local sec = math.floor(dmx_cache % 60) -- don't round e.g. 59.9 to 60 - local cache_time = (min > 0 and string.format("%sm%02.0fs", min, sec) or string.format("%3.0fs", sec)) - - local dmx_speed = state.cache_state["raw-input-rate"] or 0 - local cache_speed = utils.format_bytes_humanized(dmx_speed) - local number, unit = cache_speed:match("([%d%.]+)%s*(%S+)") - local cache_info = state.buffering and locale.buffering .. ": " .. mp.get_property("cache-buffering-state") .. "%" or cache_time - local cache_info_speed = string.format("%8s %4s/s", number, unit) - - return user_opts.cache_info_speed and cache_info .. "\\N" .. cache_info_speed or cache_info - end - ne.tooltip_style = osc_styles.tooltip - ne.tooltipF = (user_opts.tooltip_hints and cache_enabled()) and locale.cache or "" - ne.eventresponder["mbtn_left_up"] = function() mp.command("script-binding stats/display-page-3") end - - --seekbar - ne = new_element("seekbar", "slider") - ne.enabled = mp.get_property("percent-pos") ~= nil - ne.thumbnailable = true - state.slider_element = ne.enabled and ne or nil -- used for forced_title - ne.slider.markerF = function () - local duration = mp.get_property_number("duration") - if duration ~= nil then - local chapters = mp.get_property_native("chapter-list", {}) - local markers = {} - for n = 1, #chapters do - markers[n] = (chapters[n].time / duration * 100) - end - return markers - else - return {} - end - end - ne.slider.posF = function () - if mp.get_property_bool("eof-reached") then return 100 end - return mp.get_property_number("percent-pos") - end - ne.slider.tooltipF = function (pos) - state.touchingprogressbar = true - local duration = mp.get_property_number("duration") - if duration ~= nil and pos ~= nil then - local possec = duration * (pos / 100) - local time = mp.format_time(possec) - -- If video is less than 1 hour, and the time format is not fixed, strip the "00:" prefix - if possec < 3600 and user_opts.time_format ~= "fixed" then - time = time:gsub("^00:", "") - end - return time - else - return "" - end - end - ne.slider.seekRangesF = function() - if not user_opts.seekrange or not cache_enabled() then - return nil - end - local duration = mp.get_property_number("duration") - if duration == nil or duration <= 0 then - return nil - end - local nranges = {} - for _, range in pairs(state.cache_state["seekable-ranges"]) do - nranges[#nranges + 1] = { - ["start"] = 100 * range["start"] / duration, - ["end"] = 100 * range["end"] / duration, - } - end - return nranges - end - ne.eventresponder["mouse_move"] = function (element) - if not element.state.mbtnleft then return end -- allow drag for mbtnleft only! - -- mouse move events may pile up during seeking and may still get - -- sent when the user is done seeking, so we need to throw away - -- identical seeks - state.playing_and_seeking = true - if mp.get_property("pause") == "no" and user_opts.mouse_seek_pause then - mp.commandv("cycle", "pause") - end - local seekto = get_slider_value(element) - if element.state.lastseek == nil or - element.state.lastseek ~= seekto then - local flags = "absolute-percent" - if not user_opts.seekbarkeyframes then - flags = flags .. "+exact" - end - mp.commandv("seek", seekto, flags) - element.state.lastseek = seekto - end - end - ne.eventresponder["mbtn_left_down"] = function (element) - element.state.mbtnleft = true - mp.commandv("seek", get_slider_value(element), "absolute-percent+exact") - end - ne.eventresponder["shift+mbtn_left_down"] = function (element) - element.state.mbtnleft = true - mp.commandv("seek", get_slider_value(element), "absolute-percent") - end - ne.eventresponder["mbtn_left_up"] = function (element) - element.state.mbtnleft = false - end - ne.eventresponder["mbtn_right_down"] = function (element) - local chapter - local pos = get_slider_value(element) - local diff = math.huge - - for i, marker in ipairs(element.slider.markerF()) do - if math.abs(pos - marker) < diff then - diff = math.abs(pos - marker) - chapter = i - end - end - - if chapter then - mp.set_property("chapter", chapter - 1) - end - end - ne.eventresponder["reset"] = function (element) - element.state.lastseek = nil - if state.playing_and_seeking then - if mp.get_property("eof-reached") == "no" and user_opts.mouse_seek_pause then - mp.commandv("cycle", "pause") - end - state.playing_and_seeking = false - end - end - ne.eventresponder["wheel_up_press"] = function () mp.commandv("seek", 10) end - ne.eventresponder["wheel_down_press"] = function () mp.commandv("seek", -10) end - - --persistent seekbar - ne = new_element("persistentseekbar", "slider") - ne.enabled = mp.get_property("percent-pos") ~= nil - state.slider_element = ne.enabled and ne or nil -- used for forced_title - ne.slider.markerF = function () return {} end - ne.slider.posF = function () - if mp.get_property_bool("eof-reached") then return 100 end - return mp.get_property_number("percent-pos") - end - ne.slider.tooltipF = function() return "" end - ne.slider.seekRangesF = function() - if user_opts.persistentbuffer then - if not user_opts.seekrange then - return nil - end - local cache_state = state.cache_state - if not cache_state then - return nil - end - local duration = mp.get_property_number("duration") - if duration == nil or duration <= 0 then - return nil - end - local ranges = cache_state["seekable-ranges"] - if #ranges == 0 then - return nil - end - local nranges = {} - for _, range in pairs(ranges) do - nranges[#nranges + 1] = { - ["start"] = 100 * range["start"] / duration, - ["end"] = 100 * range["end"] / duration, - } - end - return nranges - end - return nil - end - - -- Helper function to format time - local function format_time(seconds) - if not seconds then return "--:--" end - - local hours = math.floor(seconds / 3600) - local minutes = math.floor((seconds % 3600) / 60) - local whole_seconds = math.floor(seconds % 60) - local milliseconds = state.tc_ms and math.floor((seconds % 1) * 1000) or nil - - -- Always show HH:MM:SS if user_opts.time_format is "fixed" - local force_hours = user_opts.time_format == "fixed" - - -- Format string templates - local format_with_ms = (hours > 0 or force_hours) and "%02d:%02d:%02d.%03d" or "%02d:%02d.%03d" - local format_without_ms = (hours > 0 or force_hours) and "%02d:%02d:%02d" or "%02d:%02d" - - if state.tc_ms then - return string.format(format_with_ms, - (hours > 0 or force_hours) and hours or minutes, - (hours > 0 or force_hours) and minutes or whole_seconds, - (hours > 0 or force_hours) and whole_seconds or milliseconds, - (hours > 0 or force_hours) and milliseconds or nil) - else - return string.format(format_without_ms, - (hours > 0 or force_hours) and hours or minutes, - (hours > 0 or force_hours) and minutes or whole_seconds, - (hours > 0 or force_hours) and whole_seconds or nil) - end - end - - -- Time codes display - local tc_visible_offset = audio_offset + sub_offset + playlist_offset - ne = new_element("time_codes", "button") - ne.visible = mp.get_property_number("duration", 0) > 0 - ne.content = function() - local playback_time = mp.get_property_number("playback-time", 0) - - -- call request_init() only when needed to update time code width - if user_opts.time_format ~= "fixed" and playback_time then - local hour_or_more = playback_time >= 3600 - if hour_or_more ~= state.playtime_hour_force_init then - request_init() - state.playtime_hour_force_init = hour_or_more - state.playtime_nohour_force_init = not hour_or_more - end - end - - local duration = mp.get_property_number("duration", 0) - if duration <= 0 then return "--:--" end - - local playtime_remaining = state.tc_right_rem and - mp.get_property_number("playtime-remaining", 0) or duration - - local prefix = state.tc_right_rem and - (user_opts.unicodeminus and UNICODE_MINUS or "-") or "" - - return format_time(playback_time) .. " / " .. prefix .. format_time(playtime_remaining) - end - ne.eventresponder["mbtn_left_up"] = function() - state.tc_right_rem = not state.tc_right_rem - end - ne.eventresponder["mbtn_right_up"] = function() - state.tc_ms = not state.tc_ms - request_init() - end - - -- load layout - if state.is_image then - layouts["modern-image"]() - else - layouts["modern"]() - end - - -- load window controls - if window_controls_enabled() then - window_controls() - end - - --do something with the elements - prepare_elements() - update_margins() -end - -local function show_osc() - -- show when disabled can happen (e.g. mouse_move) due to async/delayed unbinding - if not state.enabled then return end - - msg.trace("show_osc") - --remember last time of invocation (mouse move) - state.showtime = mp.get_time() - - if user_opts.fadeduration <= 0 then - osc_visible(true) - elseif user_opts.fadein then - if not state.osc_visible then - state.anitype = "in" - request_tick() - end - else - osc_visible(true) - state.anitype = nil - end -end - -local function hide_osc() - msg.trace("hide_osc") - if thumbfast.width ~= 0 and thumbfast.height ~= 0 then - mp.commandv("script-message-to", "thumbfast", "clear") - end - if not state.enabled then - -- typically hide happens at render() from tick(), but now tick() is - -- no-op and won't render again to remove the osc, so do that manually. - state.osc_visible = false - adjust_subtitles(false) - render_wipe() - elseif user_opts.fadeduration > 0 then - if state.osc_visible then - state.anitype = "out" - request_tick() - end - else - osc_visible(false) - end -end - -local function pause_state(_, enabled) - state.paused = enabled - request_tick() -end - -local function cache_state(_, st) - state.cache_state = st - request_tick() -end - -local function mouse_leave() - state.touchtime = nil - - if get_hidetimeout() >= 0 and get_touchtimeout() <= 0 then - local elapsed_time = mp.get_time() - state.showtime - - if elapsed_time >= (get_hidetimeout() / 1000) then - hide_osc() - end - end - - -- reset mouse position - state.last_mouseX, state.last_mouseY = nil, nil - state.mouse_in_window = false -end - -local function handle_touch() - --remember last time of invocation (touch event) - state.touchtime = mp.get_time() -end - --- --- Event handling --- -local function reset_timeout() - state.showtime = mp.get_time() -end - -local function element_has_action(element, action) - return element and element.eventresponder and - element.eventresponder[action] -end - -local function process_event(source, what) - local action = string.format("%s%s", source, - what and ("_" .. what) or "") - - if what == "down" or what == "press" then - reset_timeout() -- clicking resets the hideosc timer - - for n = 1, #elements do - if mouse_hit(elements[n]) and - elements[n].eventresponder and - (elements[n].eventresponder[source .. "_up"] or - elements[n].eventresponder[action]) then - - if what == "down" then - state.active_element = n - state.active_event_source = source - end - -- fire the down or press event if the element has one - if element_has_action(elements[n], action) then - elements[n].eventresponder[action](elements[n]) - end - end - end - elseif what == "up" then - if elements[state.active_element] then - local n = state.active_element - - if n == 0 then - --click on background (does not work) - elseif element_has_action(elements[n], action) and - mouse_hit(elements[n]) then - - elements[n].eventresponder[action](elements[n]) - end - - --reset active element - if element_has_action(elements[n], "reset") then - elements[n].eventresponder["reset"](elements[n]) - end - end - state.active_element = nil - state.mouse_down_counter = 0 - elseif source == "mouse_move" then - state.mouse_in_window = true - - local mouseX, mouseY = get_virt_mouse_pos() - if user_opts.minmousemove == 0 or - ((state.last_mouseX ~= nil and state.last_mouseY ~= nil) and - ((math.abs(mouseX - state.last_mouseX) >= user_opts.minmousemove) - or (math.abs(mouseY - state.last_mouseY) >= user_opts.minmousemove) - ) - ) then - if user_opts.bottomhover then -- if enabled, only show osc if mouse is hovering at the bottom of the screen (where the UI elements are) - local top_hover = window_controls_enabled() and (user_opts.window_title or user_opts.window_controls) - if mouseY > osc_param.playresy - (user_opts.bottomhover_zone or 130) - or ((user_opts.window_top_bar == "yes" or not (state.border and state.title_bar)) or state.fullscreen) and (mouseY < 40 and top_hover) then - show_osc() - else - state.touchtime = nil - - if get_hidetimeout() >= 0 and get_touchtimeout() <= 0 then - local elapsed_time = mp.get_time() - state.showtime - - if elapsed_time >= (get_hidetimeout() / 1000) then - hide_osc() - end - end - end - else - show_osc() - end - end - state.last_mouseX, state.last_mouseY = mouseX, mouseY - - local n = state.active_element - if element_has_action(elements[n], action) then - elements[n].eventresponder[action](elements[n]) - end - end - - -- ensure rendering after any (mouse) event - icons could change etc - request_tick() -end - -local function do_enable_keybindings() - if state.enabled then - if not state.showhide_enabled then - mp.enable_key_bindings("showhide", "allow-vo-dragging+allow-hide-cursor") - mp.enable_key_bindings("showhide_wc", "allow-vo-dragging+allow-hide-cursor") - end - state.showhide_enabled = true - end -end - -local function enable_osc(enable) - state.enabled = enable - if enable then - do_enable_keybindings() - else - hide_osc() -- acts immediately when state.enabled == false - if state.showhide_enabled then - mp.disable_key_bindings("showhide") - mp.disable_key_bindings("showhide_wc") - end - state.showhide_enabled = false - end -end - -local function render() - msg.trace("rendering") - local current_screen_sizeX, current_screen_sizeY = mp.get_osd_size() - local mouseX, mouseY = get_virt_mouse_pos() - local now = mp.get_time() - - -- check if display changed, if so request reinit - if state.screen_sizeX ~= current_screen_sizeX - or state.screen_sizeY ~= current_screen_sizeY then - - request_init_resize() - - state.screen_sizeX = current_screen_sizeX - state.screen_sizeY = current_screen_sizeY - end - - -- init management - if state.active_element then - -- mouse is held down on some element - keep ticking and ignore initReq - -- till it's released, or else the mouse-up (click) will misbehave or - -- get ignored. that's because osc_init() recreates the osc elements, - -- but mouse handling depends on the elements staying unmodified - -- between mouse-down and mouse-up (using the index active_element). - request_tick() - elseif state.initREQ then - osc_init() - state.initREQ = false - - -- store initial mouse position - if (state.last_mouseX == nil or state.last_mouseY == nil) - and not (mouseX == nil or mouseY == nil) then - - state.last_mouseX, state.last_mouseY = mouseX, mouseY - end - end - - -- fade animation - if state.anitype ~= nil then - if state.anistart == nil then - state.anistart = now - end - - if now < state.anistart + (user_opts.fadeduration / 1000) then - if state.anitype == "in" then --fade in - osc_visible(true) - state.animation = scale_value(state.anistart, - (state.anistart + (user_opts.fadeduration / 1000)), - 255, 0, now) - elseif state.anitype == "out" then --fade out - state.animation = scale_value(state.anistart, - (state.anistart + (user_opts.fadeduration / 1000)), - 0, 255, now) - end - else - if state.anitype == "out" then - osc_visible(false) - end - kill_animation() - end - else - kill_animation() - end - - --mouse show/hide area - for _, cords in pairs(osc_param.areas["showhide"]) do - set_virt_mouse_area(cords.x1, cords.y1, cords.x2, cords.y2, "showhide") - end - if osc_param.areas["showhide_wc"] then - for _, cords in pairs(osc_param.areas["showhide_wc"]) do - set_virt_mouse_area(cords.x1, cords.y1, cords.x2, cords.y2, "showhide_wc") - end - else - set_virt_mouse_area(0, 0, 0, 0, "showhide_wc") - end - do_enable_keybindings() - - --mouse input area - local mouse_over_osc = false - - for _,cords in ipairs(osc_param.areas["input"]) do - if state.osc_visible then -- activate only when OSC is actually visible - set_virt_mouse_area(cords.x1, cords.y1, cords.x2, cords.y2, "input") - end - if state.osc_visible ~= state.input_enabled then - if state.osc_visible then - mp.enable_key_bindings("input") - else - mp.disable_key_bindings("input") - end - state.input_enabled = state.osc_visible - end - - if mouse_hit_coords(cords.x1, cords.y1, cords.x2, cords.y2) then - mouse_over_osc = true - end - end - - if osc_param.areas["window-controls"] then - for _,cords in ipairs(osc_param.areas["window-controls"]) do - if state.osc_visible then -- activate only when OSC is actually visible - set_virt_mouse_area(cords.x1, cords.y1, cords.x2, cords.y2, "window-controls") - mp.enable_key_bindings("window-controls") - else - mp.disable_key_bindings("window-controls") - end - - if mouse_hit_coords(cords.x1, cords.y1, cords.x2, cords.y2) then - mouse_over_osc = true - end - end - end - - if osc_param.areas["window-controls-title"] then - for _,cords in ipairs(osc_param.areas["window-controls-title"]) do - if state.osc_visible then -- activate only when OSC is actually visible - set_virt_mouse_area(cords.x1, cords.y1, cords.x2, cords.y2, "window-controls-title") - end - if state.osc_visible ~= state.windowcontrols_title then - if state.osc_visible then - mp.enable_key_bindings("window-controls-title", "allow-vo-dragging") - else - mp.disable_key_bindings("window-controls-title", "allow-vo-dragging") - end - state.windowcontrols_title = state.osc_visible - end - - if mouse_hit_coords(cords.x1, cords.y1, cords.x2, cords.y2) then - mouse_over_osc = true - end - end - end - - -- autohide - if state.showtime ~= nil and get_hidetimeout() >= 0 then - local timeout = state.showtime + (get_hidetimeout() / 1000) - now - if timeout <= 0 and get_touchtimeout() <= 0 then - if state.active_element == nil and not mouse_over_osc then - hide_osc() - end - else - -- the timer is only used to recheck the state and to possibly run - -- the code above again - if not state.hide_timer then - state.hide_timer = mp.add_timeout(0, tick) - end - state.hide_timer.timeout = timeout - -- re-arm - state.hide_timer:kill() - state.hide_timer:resume() - end - end - - -- actual rendering - local ass = assdraw.ass_new() - - -- actual OSC - if state.osc_visible then - render_elements(ass) - end - - if user_opts.persistentprogress or state.persistent_progress_toggle then - render_persistentprogressbar(ass) - end - - -- submit - set_osd(osc_param.playresy * osc_param.display_aspect, - osc_param.playresy, ass.text, 1000) -end - --- called by mpv on every frame -tick = function() - if state.marginsREQ == true then - update_margins() - state.marginsREQ = false - end - - if not state.enabled then return end - - if state.idle then - -- render idle message - msg.trace("idle message") - local _, _, display_aspect = mp.get_osd_size() - if display_aspect == 0 then - return - end - local display_h = 360 - local display_w = display_h * display_aspect - -- logo is rendered at 2^(6-1) = 32 times resolution with size 1800x1800 - local icon_x, icon_y = (display_w - 1800 / 32) / 2, 140 - local line_prefix = ("{\\rDefault\\an7\\1a&H00&\\bord0\\shad0\\pos(%f,%f)}"):format(icon_x, icon_y) - - local ass = assdraw.ass_new() - -- mpv logo - if user_opts.idlescreen then - for _, line in ipairs(logo_lines) do - ass:new_event() - ass:append(line_prefix .. line) - end - end - - -- Santa hat - if is_december and user_opts.idlescreen and not user_opts.greenandgrumpy then - for _, line in ipairs(santa_hat_lines) do - ass:new_event() - ass:append(line_prefix .. line) - end - end - - if user_opts.idlescreen then - ass:new_event() - ass:pos(display_w / 2, icon_y + 65) - ass:an(8) - ass:append(locale.idle) - end - set_osd(display_w, display_h, ass.text, -1000) - - if state.showhide_enabled then - mp.disable_key_bindings("showhide") - mp.disable_key_bindings("showhide_wc") - state.showhide_enabled = false - end - elseif (state.fullscreen and user_opts.showfullscreen) - or (not state.fullscreen and user_opts.showwindowed) then - - -- render the OSC - render() - else - -- Flush OSD - render_wipe() - end - - state.tick_last_time = mp.get_time() - - if state.anitype ~= nil then - -- state.anistart can be nil - animation should now start, or it can - -- be a timestamp when it started. state.idle has no animation. - if not state.idle and - (not state.anistart or - mp.get_time() < 1 + state.anistart + user_opts.fadeduration/1000) - then - -- animating or starting, or still within 1s past the deadline - request_tick() - else - kill_animation() - end - end -end - --- duration is observed for the sole purpose of updating chapter markers --- positions. live streams with chapters are very rare, and the update is also --- expensive (with request_init), so it's only observed when we have chapters --- and the user didn't disable the livemarkers option (update_duration_watch). -local function on_duration() request_init() end - -local duration_watched = false -local function update_duration_watch() - local want_watch = user_opts.livemarkers and - (mp.get_property_number("chapters", 0) or 0) > 0 and - true or false -- ensure it's a boolean - - if want_watch ~= duration_watched then - if want_watch then - mp.observe_property("duration", "native", on_duration) - else - mp.unobserve_property(on_duration) - end - duration_watched = want_watch - end -end - -local function set_tick_delay(_, display_fps) - -- may be nil if unavailable or 0 fps is reported - if not display_fps or not user_opts.tick_delay_follow_display_fps then - tick_delay = user_opts.tick_delay - return - end - tick_delay = 1 / display_fps -end - -mp.register_event("file-loaded", function() - is_image() -- check if file is an image - state.new_file_flag = true - state.file_size_normalized = "Approximating size..." - check_path_url() - if user_opts.automatickeyframemode then - if mp.get_property_number("duration", 0) > user_opts.automatickeyframelimit then - user_opts.seekbarkeyframes = true - else - user_opts.seekbarkeyframes = false - end - end - if user_opts.osc_on_start then - show_osc() - end -end) -mp.register_event("start-file", request_init) -mp.observe_property("track-list", "native", request_init) -mp.observe_property("playlist-count", "native", request_init) -mp.observe_property("playlist-pos", "native", request_init) -mp.observe_property("chapter-list", "native", function(_, list) - list = list or {} -- safety, shouldn't return nil - table.sort(list, function(a, b) return a.time < b.time end) - state.chapter_list = list - update_duration_watch() - request_init() -end) -mp.observe_property("seeking", "native", function(_, seeking) - if user_opts.seek_resets_hidetimeout then - reset_timeout() - end - - if state.new_file_flag then - state.new_file_flag = false - return - end - - if seeking and user_opts.osc_on_seek then - mp.register_event("seek", show_osc) -- show OSC while seeking - else - mp.unregister_event(show_osc) -- remove event when seeking stops - end -end) -mp.observe_property("fullscreen", "bool", function(_, val) - state.fullscreen = val - state.marginsREQ = true - adjust_subtitles(state.osc_visible) - request_init_resize() -end) -mp.observe_property("border", "bool", function(_, val) - state.border = val - request_init_resize() -end) -mp.observe_property("title-bar", "bool", function(_, val) - state.title_bar = val - request_init_resize() -end) -mp.observe_property("window-maximized", "bool", function(_, val) - state.maximized = val - request_init_resize() -end) -mp.observe_property("idle-active", "bool", function(_, val) - state.idle = val - request_tick() -end) -mp.observe_property("display-fps", "number", set_tick_delay) -mp.observe_property("demuxer-cache-state", "native", cache_state) -mp.observe_property("vo-configured", "bool", request_tick) -mp.observe_property("playback-time", "number", request_tick) -mp.observe_property("osd-dimensions", "native", function() - -- (we could use the value instead of re-querying it all the time, but then - -- we might have to worry about property update ordering) - request_init_resize() - adjust_subtitles(state.osc_visible) -end) -mp.observe_property("osd-scale-by-window", "native", request_init_resize) -mp.observe_property("touch-pos", "native", handle_touch) -mp.observe_property("mute", "bool", function(_, val) - state.mute = val - request_tick() -end) -mp.observe_property("paused-for-cache", "bool", function(_, val) state.buffering = val end) --- ensure compatibility with auto looping scripts (eg: a script that sets videos under 2 seconds to loop by default) -mp.observe_property("loop-file", "bool", function(_, val) - if (val == nil) then - state.looping = true - else - state.looping = false - end -end) - --- mouse show/hide bindings -mp.set_key_bindings({ - {"mouse_move", function() process_event("mouse_move", nil) end}, - {"mouse_leave", mouse_leave}, -}, "showhide", "force") -mp.set_key_bindings({ - {"mouse_move", function() process_event("mouse_move", nil) end}, - {"mouse_leave", mouse_leave}, -}, "showhide_wc", "force") -do_enable_keybindings() - ---mouse input bindings -mp.set_key_bindings({ - {"mbtn_left", function() process_event("mbtn_left", "up") end, - function() process_event("mbtn_left", "down") end}, - {"shift+mbtn_left", function() process_event("shift+mbtn_left", "up") end, - function() process_event("shift+mbtn_left", "down") end}, - {"mbtn_right", function() process_event("mbtn_right", "up") end, - function() process_event("mbtn_right", "down") end}, - {"shift+mbtn_right", function(e) process_event("shift+mbtn_right", "up") end, - function(e) process_event("shift+mbtn_right", "down") end}, - -- alias to shift_mbtn_left for single-handed mouse use - {"mbtn_mid", function() process_event("shift+mbtn_left", "up") end, - function() process_event("shift+mbtn_left", "down") end}, - {"wheel_up", function() process_event("wheel_up", "press") end}, - {"wheel_down", function() process_event("wheel_down", "press") end}, - {"mbtn_left_dbl", "ignore"}, - {"shift+mbtn_left_dbl", "ignore"}, - {"mbtn_right_dbl", "ignore"}, -}, "input", "force") -mp.enable_key_bindings("input") - -mp.set_key_bindings({ - {"mbtn_left", function() process_event("mbtn_left", "up") end, - function() process_event("mbtn_left", "down") end}, -}, "window-controls", "force") -mp.enable_key_bindings("window-controls") - -local function always_on(val) - if state.enabled then - if val then - show_osc() - else - hide_osc() - end - end -end - --- mode can be auto/always/never/cycle --- the modes only affect internal variables and not stored on its own. -local function visibility_mode(mode, no_osd) - if mode == "cycle" then - for i, allowed_mode in ipairs(state.visibility_modes) do - if i == #state.visibility_modes then - mode = state.visibility_modes[1] - break - elseif user_opts.visibility == allowed_mode then - mode = state.visibility_modes[i + 1] - break - end - end - end - - if mode == "auto" then - always_on(false) - enable_osc(true) - elseif mode == "always" then - enable_osc(true) - always_on(true) - elseif mode == "never" then - enable_osc(false) - else - msg.warn("Ignoring unknown visibility mode '" .. mode .. "'") - return - end - - user_opts.visibility = mode - mp.set_property_native("user-data/osc/visibility", mode) - - if not no_osd and tonumber(mp.get_property("osd-level")) >= 1 then - mp.osd_message("OSC visibility: " .. mode) - end - - -- Reset the input state on a mode change. The input state will be - -- recalculated on the next render cycle, except in 'never' mode where it - -- will just stay disabled. - mp.disable_key_bindings("input") - mp.disable_key_bindings("window-controls") - state.input_enabled = false - - update_margins() - request_tick() -end - -local function idlescreen_visibility(mode, no_osd) - if mode == "cycle" then - if user_opts.idlescreen then - mode = "no" - else - mode = "yes" - end - end - - if mode == "yes" then - user_opts.idlescreen = true - else - user_opts.idlescreen = false - end - - mp.set_property_native("user-data/osc/idlescreen", user_opts.idlescreen) - - if not no_osd and tonumber(mp.get_property("osd-level")) >= 1 then - mp.osd_message("OSC logo visibility: " .. tostring(mode)) - end - - request_tick() -end - -mp.observe_property("pause", "bool", function(name, enabled) - pause_state(name, enabled) - if user_opts.showonpause and user_opts.visibility ~= "never" then - state.enabled = enabled - if enabled then - -- save mode if a temporary change is needed - if not state.temp_visibility_mode and user_opts.visibility ~= "always" then - state.temp_visibility_mode = user_opts.visibility - end - - if user_opts.keeponpause then - -- set visibility to "always" temporarily - visibility_mode("always", true) - else - show_osc() - end - else - -- restore mode if it was changed temporarily - if state.temp_visibility_mode then - visibility_mode(state.temp_visibility_mode, true) - state.temp_visibility_mode = nil - else - -- respect "always" mode on unpause - visibility_mode(user_opts.visibility, true) - end - end - end -end) - -mp.register_script_message("osc-visibility", visibility_mode) -mp.register_script_message("osc-show", show_osc) -mp.register_script_message("osc-hide", function() - if user_opts.visibility == "auto" then - osc_visible(false) - end -end) -mp.add_key_binding(nil, "visibility", function() visibility_mode("cycle") end) -mp.add_key_binding(nil, "progress-toggle", function() - user_opts.persistentprogress = not user_opts.persistentprogress - state.persistent_progress_toggle = user_opts.persistentprogress - request_init() -end) -mp.register_script_message("osc-idlescreen", idlescreen_visibility) -mp.register_script_message("thumbfast-info", function(json) - local data = utils.parse_json(json) - if type(data) ~= "table" or not data.width or not data.height then - msg.error("thumbfast-info: received json didn't produce a table with thumbnail information") - else - thumbfast = data - end -end) - --- validate string type user options -local function validate_user_opts() - if user_opts.window_top_bar ~= "auto" and - user_opts.window_top_bar ~= "yes" and - user_opts.window_top_bar ~= "no" then - msg.warn("window_top_bar cannot be '" .. user_opts.window_top_bar .. "'. Ignoring.") - user_opts.window_top_bar = "auto" - end - - if user_opts.seek_handle_size < 0 then - msg.warn("seek_handle_size must be 0 or higher. Setting it to 0 (minimum).") - user_opts.seek_handle_size = 0 - end - - if user_opts.volume_control_type ~= "linear" and - user_opts.volume_control_type ~= "logarithmic" then - msg.warn("volumecontrol cannot be '" .. user_opts.volume_control_type .. "'. Ignoring.") - user_opts.volume_control_type = "linear" - end - - if user_opts.screenshot_flag ~= "subtitles" and - user_opts.screenshot_flag ~= "video" and - user_opts.screenshot_flag ~= "window" and - user_opts.screenshot_flag ~= "each-frame" and - user_opts.screenshot_flag ~= "subtitles+each-frame" and - user_opts.screenshot_flag ~= "video+each-frame" and - user_opts.screenshot_flag ~= "window+each-frame" then - msg.warn("screenshot_flag cannot be '" .. user_opts.screenshot_flag .. "'. Ignoring.") - user_opts.screenshot_flag = "subtitles" - end - - if not language[user_opts.language] then - msg.warn("language '" .. user_opts.language .. "' not found. Ignoring.") - user_opts.language = "en" - if not language["en"] then - msg.warn("ERROR: can't find the default 'en' language or the one set by user_opts.") - end - end - - local colors = { - user_opts.osc_color, user_opts.seekbarfg_color, user_opts.seekbarbg_color, - user_opts.title_color, user_opts.time_color, user_opts.side_buttons_color, - user_opts.middle_buttons_color, user_opts.playpause_color, user_opts.window_title_color, - user_opts.window_controls_color, user_opts.held_element_color, user_opts.thumbnail_border_color, - user_opts.chapter_title_color, user_opts.seekbar_cache_color, user_opts.hover_effect_color, - user_opts.windowcontrols_close_hover, user_opts.windowcontrols_max_hover, user_opts.windowcontrols_min_hover, - user_opts.cache_info_color, user_opts.thumbnail_border_outline, - } - - for _, color in pairs(colors) do - if color:find("^#%x%x%x%x%x%x$") == nil then - msg.warn("'" .. color .. "' is not a valid color") - end - end - - for str in string.gmatch(user_opts.visibility_modes, "([^_]+)") do - if str ~= "auto" and str ~= "always" and str ~= "never" then - msg.warn("Ignoring unknown visibility mode '" .. str .."' in list") - else - table.insert(state.visibility_modes, str) - end - end -end - --- read options from config and command-line -opt.read_options(user_opts, "modernz", function(changed) - validate_user_opts() - set_osc_locale() - set_osc_styles() - set_time_styles(changed.timetotal, changed.timems) - if changed.tick_delay or changed.tick_delay_follow_display_fps then - set_tick_delay("display_fps", mp.get_property_number("display_fps")) - end - request_tick() - visibility_mode(user_opts.visibility, true) - update_duration_watch() - request_init() -end) - -validate_user_opts() -set_osc_locale() -set_osc_styles() -set_time_styles(true, true) -set_tick_delay("display_fps", mp.get_property_number("display_fps")) -visibility_mode(user_opts.visibility, true) -update_duration_watch() - -set_virt_mouse_area(0, 0, 0, 0, "input") -set_virt_mouse_area(0, 0, 0, 0, "window-controls") -set_virt_mouse_area(0, 0, 0, 0, "window-controls-title") diff --git a/config/mpv/.config/mpv/scripts/mpv-gif.lua b/config/mpv/.config/mpv/scripts/mpv-gif.lua deleted file mode 100644 index cfc2083..0000000 --- a/config/mpv/.config/mpv/scripts/mpv-gif.lua +++ /dev/null @@ -1,191 +0,0 @@ --- Original by Ruin0x11 --- Ported to Windows by Scheliux, Dragoner7 - --- Create animated GIFs with mpv --- Requires ffmpeg. --- Adapted from http://blog.pkh.me/p/21-high-quality-gif-with-ffmpeg.html --- Usage: "b" to set start frame, "B" to set end frame, "Ctrl+b" to create. - -require 'mp.options' -local msg = require 'mp.msg' - -local options = { - dir = "C:/Program Files/mpv/gifs", - rez = 600, - fps = 15, -} - -read_options(options, "gif") - - -local fps - --- Check for invalid fps values --- Can you believe Lua doesn't have a proper ternary operator in the year of our lord 2020? -if options.fps ~= nil and options.fps >= 1 and options.fps < 30 then - fps = options.fps -else - fps = 15 -end - --- Set this to the filters to pass into ffmpeg's -vf option. --- filters="fps=24,scale=320:-1:flags=spline" -filters=string.format("fps=%s,scale='trunc(ih*dar/2)*2:trunc(ih/2)*2',setsar=1/1,scale=%s:-1:flags=spline", fps, options.rez) --change spline to lanczos depending on preference - --- Setup output directory -output_directory=string.gsub(options.dir, '\"', '') - -start_time = -1 -end_time = -1 -palette="%TEMP%palette.png" - --- The roundabout way has to be used due to a some weird --- behavior with %TEMP% on the subtitles= parameter in ffmpeg --- on Windows–it needs to be quadruple backslashed -subs = "C:/Users/%USERNAME%/AppData/Local/Temp/subs.srt" - -function make_gif_with_subtitles() - make_gif_internal(true) -end - -function make_gif() - make_gif_internal(false) -end - -function table_length(t) - local count = 0 - for _ in pairs(t) do count = count + 1 end - return count -end - - -function make_gif_internal(burn_subtitles) - local start_time_l = start_time - local end_time_l = end_time - if start_time_l == -1 or end_time_l == -1 or start_time_l >= end_time_l then - mp.osd_message("Invalid start/end time.") - return - end - - mp.osd_message("Creating GIF.") - - -- shell escape - function esc(s) - return string.gsub(s, '"', '"\\""') - end - - function esc_for_sub(s) - s = string.gsub(s, [[\]], [[/]]) - s = string.gsub(s, '"', '"\\""') - s = string.gsub(s, ":", [[\\:]]) - s = string.gsub(s, "'", [[\\']]) - return s - end - - local pathname = mp.get_property("path", "") - local trim_filters = esc(filters) - - local position = start_time_l - local duration = end_time_l - start_time_l - - if burn_subtitles then - -- Determine currently active sub track - - local i = 0 - local tracks_count = mp.get_property_number("track-list/count") - local subs_array = {} - - -- check for subtitle tracks - - while i < tracks_count do - local type = mp.get_property(string.format("track-list/%d/type", i)) - local selected = mp.get_property(string.format("track-list/%d/selected", i)) - - -- if it's a sub track, save it - - if type == "sub" then - local length = table_length(subs_array) - subs_array[length] = selected == "yes" - end - i = i + 1 - end - - if table_length(subs_array) > 0 then - - local correct_track = 0 - - -- iterate through saved subtitle tracks until the correct one is found - - for index, is_selected in pairs(subs_array) do - if (is_selected) then - correct_track = index - end - end - - trim_filters = trim_filters .. string.format(",subtitles=%s:si=%s", esc_for_sub(pathname), correct_track) - - end - - end - - - -- first, create the palette - args = string.format('ffmpeg -v warning -ss %s -t %s -i "%s" -vf "%s,palettegen" -y "%s"', position, duration, esc(pathname), esc(trim_filters), esc(palette)) - msg.debug(args) - os.execute(args) - - -- then, make the gif - local filename = mp.get_property("filename/no-ext") - local file_path = output_directory .. "/" .. filename - - -- increment filename - for i=0,999 do - local fn = string.format('%s_%03d.gif',file_path,i) - if not file_exists(fn) then - gifname = fn - break - end - end - if not gifname then - mp.osd_message('No available filenames!') - return - end - - local copyts = "" - - if burn_subtitles then - copyts = "-copyts" - end - - args = string.format('ffmpeg -v warning -ss %s %s -t %s -i "%s" -i "%s" -lavfi "%s [x]; [x][1:v] paletteuse" -y "%s"', position, copyts, duration, esc(pathname), esc(palette), esc(trim_filters), esc(gifname)) - os.execute(args) - - local ok, err, code = os.rename(gifname, gifname) - if ok then - msg.info("GIF created: " .. gifname) - mp.osd_message("GIF created: " .. gifname) - else - mp.osd_message("Error creating file, check CLI for more info.") - end -end - -function set_gif_start() - start_time = mp.get_property_number("time-pos", -1) - mp.osd_message("GIF Start: " .. start_time) -end - -function set_gif_end() - end_time = mp.get_property_number("time-pos", -1) - mp.osd_message("GIF End: " .. end_time) -end - -function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end -end - --- all keybindings here are set to nil on purpose 'cause I modified the keybindings (in input.conf) -mp.add_key_binding(nil, "set_gif_start", set_gif_start) -mp.add_key_binding(nil, "set_gif_end", set_gif_end) -mp.add_key_binding(nil, "make_gif", make_gif) -mp.add_key_binding(nil, "make_gif_with_subtitles", make_gif_with_subtitles) -- making GIFs with subtitles doesn't seem to work diff --git a/config/mpv/.config/mpv/scripts/playlistmanager.lua b/config/mpv/.config/mpv/scripts/playlistmanager.lua deleted file mode 100644 index 7b8dbbd..0000000 --- a/config/mpv/.config/mpv/scripts/playlistmanager.lua +++ /dev/null @@ -1,1472 +0,0 @@ -local settings = { - - -- #### FUNCTIONALITY SETTINGS - - --navigation keybindings force override only while playlist is visible - --if "no" then you can display the playlist by any of the navigation keys - dynamic_binds = true, - - -- to bind multiple keys separate them by a space - - -- main key to show playlist - key_showplaylist = "SHIFT+ENTER", - - -- display playlist while key is held down - key_peek_at_playlist = "", - - -- dynamic keys - key_moveup = "UP", - key_movedown = "DOWN", - key_movepageup = "PGUP", - key_movepagedown = "PGDWN", - key_movebegin = "HOME", - key_moveend = "END", - key_selectfile = "RIGHT LEFT", - key_unselectfile = "", - key_playfile = "ENTER", - key_removefile = "BS", - key_closeplaylist = "ESC SHIFT+ENTER", - - -- extra functionality keys - key_sortplaylist = "", - key_shuffleplaylist = "", - key_reverseplaylist = "", - key_loadfiles = "", - key_saveplaylist = "", - - --replaces matches on filenames based on extension, put as empty string to not replace anything - --replace rules are executed in provided order - --replace rule key is the pattern and value is the replace value - --uses :gsub('pattern', 'replace'), read more http://lua-users.org/wiki/StringLibraryTutorial - --'all' will match any extension or protocol if it has one - --uses json and parses it into a lua table to be able to support .conf file - - filename_replace = [[ - [ - { - "protocol": { "all": true }, - "rules": [ - { "%%(%x%x)": "hex_to_char" } - ] - } - ] - ]], - ---[=====[ START OF SAMPLE REPLACE - Remove this line to use it - --Sample replace: replaces underscore to space on all files - --for mp4 and webm; remove extension, remove brackets and surrounding whitespace, change dot between alphanumeric to space - filename_replace = [[ - [ - { - "ext": { "all": true}, - "rules": [ - { "_" : " " } - ] - },{ - "ext": { "mp4": true, "mkv": true }, - "rules": [ - { "^(.+)%..+$": "%1" }, - { "%s*[%[%(].-[%]%)]%s*": "" }, - { "(%w)%.(%w)": "%1 %2" } - ] - },{ - "protocol": { "http": true, "https": true }, - "rules": [ - { "^%a+://w*%.?": "" } - ] - } - ] - ]], ---END OF SAMPLE REPLACE ]=====] - - --json array of filetypes to search from directory - loadfiles_filetypes = [[ - [ - "jpg", "jpeg", "png", "tif", "tiff", "gif", "webp", "svg", "bmp", - "mp3", "wav", "ogm", "flac", "m4a", "wma", "ogg", "opus", - "mkv", "avi", "mp4", "ogv", "webm", "rmvb", "flv", "wmv", "mpeg", "mpg", "m4v", "3gp" - ] - ]], - - --loadfiles at startup if 1 or more items in playlist - loadfiles_on_start = false, - -- loadfiles from working directory on idle startup - loadfiles_on_idle_start = false, - --always put loaded files after currently playing file - loadfiles_always_append = false, - - --sort playlist when files are added to playlist - sortplaylist_on_file_add = false, - - --default sorting method, must be one of: "name-asc", "name-desc", "date-asc", "date-desc", "size-asc", "size-desc". - default_sort = "name-asc", - - --"linux | windows | auto" - system = "auto", - - --Use ~ for home directory. Leave as empty to use mpv/playlists - playlist_savepath = "", - - -- constant filename to save playlist as. Note that it will override existing playlist. Leave empty for generated name. - playlist_save_filename = "", - - --save playlist automatically after current file was unloaded - save_playlist_on_file_end = false, - - - --show playlist or filename every time a new file is loaded - --2 shows playlist, 1 shows current file(filename strip applied) as osd text, 0 shows nothing - --instead of using this you can also call script-message playlistmanager show playlist/filename - --ex. KEY playlist-next ; script-message playlistmanager show playlist - show_playlist_on_fileload = 0, - - --sync cursor when file is loaded from outside reasons(file-ending, playlist-next shortcut etc.) - --has the sideeffect of moving cursor if file happens to change when navigating - --good side is cursor always following current file when going back and forth files with playlist-next/prev - sync_cursor_on_load = true, - - --allow the playlist cursor to loop from end to start and vice versa - loop_cursor = true, - - --youtube-dl executable for title resolving if enabled, probably "youtube-dl" or "yt-dlp", can be absolute path - youtube_dl_executable = "youtube-dl", - - -- allow playlistmanager to write watch later config when navigating between files - allow_write_watch_later_config = true, - - -- reset cursor navigation when closing or opening playlist - reset_cursor_on_close = true, - reset_cursor_on_open = true, - - --#### VISUAL SETTINGS - - --prefer to display titles for following files: "all", "url", "none". Sorting still uses filename. - prefer_titles = "url", - - --call youtube-dl to resolve the titles of urls in the playlist - resolve_url_titles = false, - - --call ffprobe to resolve the titles of local files in the playlist (if they exist in the metadata) - resolve_local_titles = false, - - -- timeout in seconds for url title resolving - resolve_title_timeout = 15, - - -- how many url titles can be resolved at a time. Higher number might lead to stutters. - concurrent_title_resolve_limit = 10, - - --osd timeout on inactivity in seconds, use 0 for no timeout - playlist_display_timeout = 0, - - -- when peeking at playlist, show playlist at the very least for display timeout - peek_respect_display_timeout = false, - - -- the maximum amount of lines playlist will render. Optimal value depends on font/video size etc. - showamount = 9, - - --font size scales by window, if false requires larger font and padding sizes - scale_playlist_by_window=true, - --playlist ass style overrides inside curly brackets, \keyvalue is one field, extra \ for escape in lua - --example {\\fnUbuntu\\fs10\\b0\\bord1} equals: font=Ubuntu, size=10, bold=no, border=1 - --read http://docs.aegisub.org/3.2/ASS_Tags/ for reference of tags - --undeclared tags will use default osd settings - --these styles will be used for the whole playlist - style_ass_tags = "{}", - --paddings from top left corner - text_padding_x = 10, - text_padding_y = 30, - - --screen dim when menu is open 0.0 - 1.0 (0 is no dim, 1 is black) - curtain_opacity=0, - - --set title of window with stripped name - set_title_stripped = false, - title_prefix = "", - title_suffix = " - mpv", - - --slice long filenames, and how many chars to show - slice_longfilenames = false, - slice_longfilenames_amount = 70, - - --Playlist header template - --%mediatitle or %filename = title or name of playing file - --%pos = position of playing file - --%cursor = position of navigation - --%plen = playlist length - --%N = newline - playlist_header = "[%cursor/%plen]", - - --Playlist file templates - --%pos = position of file with leading zeros - --%name = title or name of file - --%N = newline - --you can also use the ass tags mentioned above. For example: - -- selected_file="{\\c&HFF00FF&}➔ %name" | to add a color for selected file. However, if you - -- use ass tags you need to reset them for every line (see https://github.com/jonniek/mpv-playlistmanager/issues/20) - normal_file = "○ %name", - hovered_file = "● %name", - selected_file = "➔ %name", - playing_file = "▷ %name", - playing_hovered_file = "▶ %name", - playing_selected_file = "➤ %name", - - - -- what to show when playlist is truncated - playlist_sliced_prefix = "...", - playlist_sliced_suffix = "...", - - --output visual feedback to OSD for tasks - display_osd_feedback = true, -} -local opts = require("mp.options") -opts.read_options(settings, "playlistmanager", function(list) update_opts(list) end) - -local utils = require("mp.utils") -local msg = require("mp.msg") -local assdraw = require("mp.assdraw") - - ---check os -if settings.system=="auto" then - local o = {} - if mp.get_property_native('options/vo-mmcss-profile', o) ~= o then - settings.system = "windows" - else - settings.system = "linux" - end -end - ---global variables -local playlist_visible = false -local strippedname = nil -local path = nil -local directory = nil -local filename = nil -local pos = 0 -local plen = 0 -local cursor = 0 ---table for saved media titles for later if we prefer them -local title_table = {} --- table for urls and local file paths that we have requested to be resolved to titles -local requested_titles = {} - -local filetype_lookup = {} - -function update_opts(changelog) - msg.verbose('updating options') - - --parse filename json - if changelog.filename_replace then - if(settings.filename_replace~="") then - settings.filename_replace = utils.parse_json(settings.filename_replace) - else - settings.filename_replace = false - end - end - - --parse loadfiles json - if changelog.loadfiles_filetypes then - settings.loadfiles_filetypes = utils.parse_json(settings.loadfiles_filetypes) - - filetype_lookup = {} - --create loadfiles set - for _, ext in ipairs(settings.loadfiles_filetypes) do - filetype_lookup[ext] = true - end - end - - if changelog.resolve_url_titles then - resolve_titles() - end - - if changelog.resolve_local_titles then - resolve_titles() - end - - if changelog.playlist_display_timeout then - keybindstimer = mp.add_periodic_timer(settings.playlist_display_timeout, remove_keybinds) - keybindstimer:kill() - end - - if playlist_visible then showplaylist() end -end - -update_opts({filename_replace = true, loadfiles_filetypes = true}) - -local sort_modes = { - { - id="name-asc", - title="name ascending", - sort_fn=function (a, b, playlist) - return alphanumsort(playlist[a].string, playlist[b].string) - end, - }, - { - id="name-desc", - title="name descending", - sort_fn=function (a, b, playlist) - return alphanumsort(playlist[b].string, playlist[a].string) - end, - }, - { - id="date-asc", - title="date ascending", - sort_fn=function (a, b) - return (get_file_info(a).mtime or 0) < (get_file_info(b).mtime or 0) - end, - }, - { - id="date-desc", - title="date descending", - sort_fn=function (a, b) - return (get_file_info(a).mtime or 0) > (get_file_info(b).mtime or 0) - end, - }, - { - id="size-asc", - title="size ascending", - sort_fn=function (a, b) - return (get_file_info(a).size or 0) < (get_file_info(b).size or 0) - end, - }, - { - id="size-desc", - title="size descending", - sort_fn=function (a, b) - return (get_file_info(a).size or 0) > (get_file_info(b).size or 0) - end, - }, -} - -local sort_mode = 1 -for mode, sort_data in pairs(sort_modes) do - if sort_data.id == settings.default_sort then - sort_mode = mode - end -end - -function is_protocol(path) - return type(path) == 'string' and path:match('^%a[%a%d-_]+://') ~= nil -end - -function on_file_loaded() - refresh_globals() - filename = mp.get_property("filename") - path = mp.get_property('path') - local media_title = mp.get_property("media-title") - if is_protocol(path) and not title_table[path] and path ~= media_title then - title_table[path] = media_title - end - - if settings.sync_cursor_on_load then - cursor=pos - --refresh playlist if cursor moved - if playlist_visible then draw_playlist() end - end - - strippedname = stripfilename(mp.get_property('media-title')) - if settings.show_playlist_on_fileload == 2 then - showplaylist() - elseif settings.show_playlist_on_fileload == 1 then - mp.commandv('show-text', strippedname) - end - if settings.set_title_stripped then - mp.set_property("title", settings.title_prefix..strippedname..settings.title_suffix) - end -end - -function on_start_file() - refresh_globals() - filename = mp.get_property("filename") - path = mp.get_property('path') - --if not a url then join path with working directory - if not is_protocol(path) then - path = utils.join_path(mp.get_property('working-directory'), path) - directory = utils.split_path(path) - else - directory = nil - end - - if settings.loadfiles_on_start and plen == 1 then - local ext = filename:match("%.([^%.]+)$") - -- a directory or playlist has been loaded, let's not do anything as mpv will expand it into files - if ext and filetype_lookup[ext:lower()] then - msg.info("Loading files from playing files directory") - playlist() - end - end -end - -function on_end_file() - if settings.save_playlist_on_file_end then save_playlist() end - strippedname = nil - path = nil - directory = nil - filename = nil - if playlist_visible then showplaylist() end -end - -function refresh_globals() - pos = mp.get_property_number('playlist-pos', 0) - plen = mp.get_property_number('playlist-count', 0) -end - -function escapepath(dir, escapechar) - return string.gsub(dir, escapechar, '\\'..escapechar) -end - -function replace_table_has_value(value, valid_values) - if value == nil or valid_values == nil then - return false - end - return valid_values['all'] or valid_values[value] -end - -local filename_replace_functions = { - --decode special characters in url - hex_to_char = function(x) return string.char(tonumber(x, 16)) end -} - ---strip a filename based on its extension or protocol according to rules in settings -function stripfilename(pathfile, media_title) - if pathfile == nil then return '' end - local ext = pathfile:match("%.([^%.]+)$") - local protocol = pathfile:match("^(%a%a+)://") - if not ext then ext = "" end - local tmp = pathfile - if settings.filename_replace and not media_title then - for k,v in ipairs(settings.filename_replace) do - if replace_table_has_value(ext, v['ext']) or replace_table_has_value(protocol, v['protocol']) then - for ruleindex, indexrules in ipairs(v['rules']) do - for rule, override in pairs(indexrules) do - override = filename_replace_functions[override] or override - tmp = tmp:gsub(rule, override) - end - end - end - end - end - if settings.slice_longfilenames and tmp:len()>settings.slice_longfilenames_amount+5 then - tmp = tmp:sub(1, settings.slice_longfilenames_amount).." ..." - end - return tmp -end - ---gets the file info of an item -function get_file_info(item) - local path = mp.get_property('playlist/' .. item - 1 .. '/filename') - if is_protocol(path) then return {} end - local file_info = utils.file_info(path) - if not file_info then - msg.warn('failed to read file info for', path) - return {} - end - - return file_info -end - ---gets a nicename of playlist entry at 0-based position i -function get_name_from_index(i, notitle) - refresh_globals() - if plen <= i then msg.error("no index in playlist", i, "length", plen); return nil end - local _, name = nil - local title = mp.get_property('playlist/'..i..'/title') - local name = mp.get_property('playlist/'..i..'/filename') - - local should_use_title = settings.prefer_titles == 'all' or is_protocol(name) and settings.prefer_titles == 'url' - --check if file has a media title stored or as property - if not title and should_use_title then - local mtitle = mp.get_property('media-title') - if i == pos and mp.get_property('filename') ~= mtitle then - if not title_table[name] then - title_table[name] = mtitle - end - title = mtitle - elseif title_table[name] then - title = title_table[name] - end - end - - --if we have media title use a more conservative strip - if title and not notitle and should_use_title then - -- Escape a string for verbatim display on the OSD - -- Ref: https://github.com/mpv-player/mpv/blob/94677723624fb84756e65c8f1377956667244bc9/player/lua/stats.lua#L145 - return stripfilename(title, true):gsub("\\", '\\\239\187\191'):gsub("{", "\\{"):gsub("^ ", "\\h") - end - - --remove paths if they exist, keeping protocols for stripping - if string.sub(name, 1, 1) == '/' or name:match("^%a:[/\\]") then - _, name = utils.split_path(name) - end - return stripfilename(name):gsub("\\", '\\\239\187\191'):gsub("{", "\\{"):gsub("^ ", "\\h") -end - -function parse_header(string) - local esc_title = stripfilename(mp.get_property("media-title"), true):gsub("%%", "%%%%") - local esc_file = stripfilename(mp.get_property("filename")):gsub("%%", "%%%%") - return string:gsub("%%N", "\\N") - :gsub("%%pos", mp.get_property_number("playlist-pos",0)+1) - :gsub("%%plen", mp.get_property("playlist-count")) - :gsub("%%cursor", cursor+1) - :gsub("%%mediatitle", esc_title) - :gsub("%%filename", esc_file) - -- undo name escape - :gsub("%%%%", "%%") -end - -function parse_filename(string, name, index) - local base = tostring(plen):len() - local esc_name = stripfilename(name):gsub("%%", "%%%%") - return string:gsub("%%N", "\\N") - :gsub("%%pos", string.format("%0"..base.."d", index+1)) - :gsub("%%name", esc_name) - -- undo name escape - :gsub("%%%%", "%%") -end - -function parse_filename_by_index(index) - local template = settings.normal_file - - local is_idle = mp.get_property_native('idle-active') - local position = is_idle and -1 or pos - - if index == position then - if index == cursor then - if selection then - template = settings.playing_selected_file - else - template = settings.playing_hovered_file - end - else - template = settings.playing_file - end - elseif index == cursor then - if selection then - template = settings.selected_file - else - template = settings.hovered_file - end - end - - return parse_filename(template, get_name_from_index(index), index) -end - - -function draw_playlist() - refresh_globals() - local ass = assdraw.ass_new() - - local _, _, a = mp.get_osd_size() - local h = 360 - local w = h * a - - if settings.curtain_opacity ~= nil and settings.curtain_opacity ~= 0 and settings.curtain_opacity < 1.0 then - -- curtain dim from https://github.com/christoph-heinrich/mpv-quality-menu/blob/501794bfbef468ee6a61e54fc8821fe5cd72c4ed/quality-menu.lua#L699-L707 - local alpha = 255 - math.ceil(255 * settings.curtain_opacity) - ass.text = string.format('{\\pos(0,0)\\rDefault\\an7\\1c&H000000&\\alpha&H%X&}', alpha) - ass:draw_start() - ass:rect_cw(0, 0, w, h) - ass:draw_stop() - ass:new_event() - end - - ass:append(settings.style_ass_tags) - - -- TODO: padding should work even on different osd alignments - if mp.get_property("osd-align-x") == "left" and mp.get_property("osd-align-y") == "top" then - ass:pos(settings.text_padding_x, settings.text_padding_y) - end - - if settings.playlist_header ~= "" then - ass:append(parse_header(settings.playlist_header).."\\N") - end - - -- (visible index, playlist index) pairs of playlist entries that should be rendered - local visible_indices = {} - - local one_based_cursor = cursor + 1 - table.insert(visible_indices, one_based_cursor) - - local offset = 1; - local visible_indices_length = 1; - while visible_indices_length < settings.showamount and visible_indices_length < plen do - -- add entry for offset steps below the cursor - local below = one_based_cursor + offset - if below <= plen then - table.insert(visible_indices, below) - visible_indices_length = visible_indices_length + 1; - end - - -- add entry for offset steps above the cursor - -- also need to double check that there is still space, this happens if we have even numbered limit - local above = one_based_cursor - offset - if above >= 1 and visible_indices_length < settings.showamount and visible_indices_length < plen then - table.insert(visible_indices, 1, above) - visible_indices_length = visible_indices_length + 1; - end - - offset = offset + 1 - end - - -- both indices are 1 based - for display_index, playlist_index in pairs(visible_indices) do - if display_index == 1 and playlist_index ~= 1 then - ass:append(settings.playlist_sliced_prefix.."\\N") - elseif display_index == settings.showamount and playlist_index ~= plen then - ass:append(settings.playlist_sliced_suffix) - else - -- parse_filename_by_index expects 0 based index - ass:append(parse_filename_by_index(playlist_index - 1).."\\N") - end - end - - if settings.scale_playlist_by_window then w,h = 0, 0 end - mp.set_osd_ass(w, h, ass.text) -end - -local peek_display_timer = nil -local peek_button_pressed = false - -function peek_timeout() - peek_display_timer:kill() - if not peek_button_pressed and not playlist_visible then - remove_keybinds() - end -end - -function handle_complex_playlist_toggle(table) - local event = table["event"] - if event == "press" then - msg.error("Complex key event not supported. Falling back to normal playlist display.") - showplaylist() - elseif event == "down" then - showplaylist(1000000) - if settings.peek_respect_display_timeout then - peek_button_pressed = true - peek_display_timer = mp.add_periodic_timer(settings.playlist_display_timeout, peek_timeout) - end - elseif event == "up" then - -- set playlist state to not visible, doesn't actually hide playlist yet - -- this will allow us to check if other functionality has rendered playlist before removing binds - playlist_visible = false - - function remove_keybinds_after_timeout() - -- if playlist is still not visible then lets actually hide it - -- this lets other keys that interupt the peek to render playlist without peek up event closing it - if not playlist_visible then - remove_keybinds() - end - end - - if settings.peek_respect_display_timeout then - peek_button_pressed = false - if not peek_display_timer:is_enabled() then - mp.add_timeout(0.01, remove_keybinds_after_timeout) - end - else - -- use small delay to let dynamic binds run before keys are potentially unbound - mp.add_timeout(0.01, remove_keybinds_after_timeout) - end - end -end - -function toggle_playlist(show_function) - local show = show_function or showplaylist - if playlist_visible then - remove_keybinds() - else - -- toggle always shows without timeout - show(0) - end -end - -function showplaylist(duration) - refresh_globals() - if plen == 0 then return end - if not playlist_visible and settings.reset_cursor_on_open then - resetcursor() - end - - playlist_visible = true - add_keybinds() - - draw_playlist() - keybindstimer:kill() - - local dur = duration or settings.playlist_display_timeout - if dur > 0 then - keybindstimer = mp.add_periodic_timer(dur, remove_keybinds) - end -end - -function showplaylist_non_interactive(duration) - refresh_globals() - if plen == 0 then return end - if not playlist_visible and settings.reset_cursor_on_open then - resetcursor() - end - playlist_visible = true - draw_playlist() - keybindstimer:kill() - - local dur = duration or settings.playlist_display_timeout - if dur > 0 then - keybindstimer = mp.add_periodic_timer(dur, remove_keybinds) - end -end - -selection=nil -function selectfile() - refresh_globals() - if plen == 0 then return end - if not selection then - selection=cursor - else - selection=nil - end - showplaylist() -end - -function unselectfile() - selection=nil - showplaylist() -end - -function resetcursor() - selection = nil - cursor = mp.get_property_number('playlist-pos', 1) -end - -function removefile() - refresh_globals() - if plen == 0 then return end - selection = nil - if cursor==pos then mp.command("script-message unseenplaylist mark true \"playlistmanager avoid conflict when removing file\"") end - mp.commandv("playlist-remove", cursor) - if cursor==plen-1 then cursor = cursor - 1 end - if plen == 1 then - remove_keybinds() - else - showplaylist() - end -end - -function moveup() - refresh_globals() - if plen == 0 then return end - if cursor~=0 then - if selection then mp.commandv("playlist-move", cursor,cursor-1) end - cursor = cursor-1 - elseif settings.loop_cursor then - if selection then mp.commandv("playlist-move", cursor,plen) end - cursor = plen-1 - end - showplaylist() -end - -function movedown() - refresh_globals() - if plen == 0 then return end - if cursor ~= plen-1 then - if selection then mp.commandv("playlist-move", cursor,cursor+2) end - cursor = cursor + 1 - elseif settings.loop_cursor then - if selection then mp.commandv("playlist-move", cursor,0) end - cursor = 0 - end - showplaylist() -end - -function movepageup() - refresh_globals() - if plen == 0 or cursor == 0 then return end - local prev_cursor = cursor - cursor = cursor - settings.showamount - if cursor < 0 then cursor = 0 end - if selection then mp.commandv("playlist-move", prev_cursor, cursor) end - showplaylist() -end - -function movepagedown() - refresh_globals() - if plen == 0 or cursor == plen-1 then return end - local prev_cursor = cursor - cursor = cursor + settings.showamount - if cursor >= plen then cursor = plen-1 end - if selection then mp.commandv("playlist-move", prev_cursor, cursor+1) end - showplaylist() -end - -function movebegin() - refresh_globals() - if plen == 0 or cursor == 0 then return end - local prev_cursor = cursor - cursor = 0 - if selection then mp.commandv("playlist-move", prev_cursor, cursor) end - showplaylist() -end - -function moveend() - refresh_globals() - if plen == 0 or cursor == plen-1 then return end - local prev_cursor = cursor - cursor = plen-1 - if selection then mp.commandv("playlist-move", prev_cursor, cursor+1) end - showplaylist() -end - -function write_watch_later(force_write) - if settings.allow_write_watch_later_config then - if mp.get_property_bool("save-position-on-quit") or force_write then - mp.command("write-watch-later-config") - end - end -end - -function playlist_next(force_write) - write_watch_later(force_write) - mp.commandv("playlist-next", "weak") -end - -function playlist_prev(force_write) - write_watch_later(force_write) - mp.commandv("playlist-prev", "weak") -end - -function playfile() - refresh_globals() - if plen == 0 then return end - selection = nil - local is_idle = mp.get_property_native('idle-active') - if cursor ~= pos or is_idle then - write_watch_later() - mp.set_property("playlist-pos", cursor) - else - if cursor~=plen-1 then - cursor = cursor + 1 - end - write_watch_later() - mp.commandv("playlist-next", "weak") - end - if settings.show_playlist_on_fileload ~= 2 then - remove_keybinds() - end -end - -function file_filter(filenames) - local files = {} - for i = 1, #filenames do - local file = filenames[i] - local ext = file:match('%.([^%.]+)$') - if ext and filetype_lookup[ext:lower()] then - table.insert(files, file) - end - end - return files -end - -function get_playlist_filenames_set() - local filenames = {} - for n=0,plen-1,1 do - local filename = mp.get_property('playlist/'..n..'/filename') - local _, file = utils.split_path(filename) - filenames[file] = true - end - return filenames -end - ---Creates a playlist of all files in directory, will keep the order and position ---For exaple, Folder has 12 files, you open the 5th file and run this, the remaining 7 are added behind the 5th file and prior 4 files before it -function playlist(force_dir) - refresh_globals() - if not directory and plen > 0 then return end - local hasfile = true - if plen == 0 then - hasfile = false - dir = mp.get_property('working-directory') - else - dir = directory - end - - if dir == "." then dir = "" end - if force_dir then dir = force_dir end - - local files = file_filter(utils.readdir(dir, "files")) - table.sort(files, alphanumsort) - - if files == nil then - msg.verbose("no files in directory") - return - end - - local filenames = get_playlist_filenames_set() - local c, c2 = 0,0 - if files then - local cur = false - local filename = mp.get_property("filename") - for _, file in ipairs(files) do - if file == nil or file[1] == "." then - break - end - local appendstr = "append" - if not hasfile then - cur = true - appendstr = "append-play" - hasfile = true - end - if filename == file then - cur = true - elseif filenames[file] then - -- skip files already in playlist - elseif cur == true or settings.loadfiles_always_append then - mp.commandv("loadfile", utils.join_path(dir, file), appendstr) - msg.info("Appended to playlist: " .. file) - c2 = c2 + 1 - else - mp.commandv("loadfile", utils.join_path(dir, file), appendstr) - msg.info("Prepended to playlist: " .. file) - mp.commandv("playlist-move", mp.get_property_number("playlist-count", 1)-1, c) - c = c + 1 - end - end - if c2 > 0 or c>0 then - msg.info("Added "..c + c2.." files to playlist") - else - msg.info("No additional files found") - end - cursor = mp.get_property_number('playlist-pos', 1) - else - msg.error("Could not scan for files: "..(error or "")) - end - refresh_globals() - if playlist_visible then - showplaylist() - elseif settings.display_osd_feedback then - if c2 > 0 or c>0 then - mp.osd_message("Added "..c + c2.." files to playlist") - else - mp.osd_message("No additional files found") - end - end - return c + c2 -end - -function parse_home(path) - if not path:find("^~") then - return path - end - local home_dir = os.getenv("HOME") or os.getenv("USERPROFILE") - if not home_dir then - local drive = os.getenv("HOMEDRIVE") - local path = os.getenv("HOMEPATH") - if drive and path then - home_dir = utils.join_path(drive, path) - else - msg.error("Couldn't find home dir.") - return nil - end - end - local result = path:gsub("^~", home_dir) - return result -end - -local interactive_save = false -function activate_playlist_save() - if interactive_save then - remove_keybinds() - mp.command("script-message playlistmanager-save-interactive \"start interactive filenaming process\"") - else - save_playlist() - end -end - ---saves the current playlist into a m3u file -function save_playlist(filename) - local length = mp.get_property_number('playlist-count', 0) - if length == 0 then return end - - --get playlist save path - local savepath - if settings.playlist_savepath == nil or settings.playlist_savepath == "" then - savepath = mp.command_native({"expand-path", "~~home/"}).."/playlists" - else - savepath = parse_home(settings.playlist_savepath) - if savepath == nil then return end - end - - --create savepath if it doesn't exist - if utils.readdir(savepath) == nil then - local windows_args = {'powershell', '-NoProfile', '-Command', 'mkdir', savepath} - local unix_args = { 'mkdir', savepath } - local args = settings.system == 'windows' and windows_args or unix_args - local res = utils.subprocess({ args = args, cancellable = false }) - if res.status ~= 0 then - msg.error("Failed to create playlist save directory "..savepath..". Error: "..(res.error or "unknown")) - return - end - end - - local name = filename - if name == nil then - if settings.playlist_save_filename == nil or settings.playlist_save_filename == "" then - local date = os.date("*t") - local datestring = ("%02d-%02d-%02d_%02d-%02d-%02d"):format(date.year, date.month, date.day, date.hour, date.min, date.sec) - - name = datestring.."_playlist-size_"..length..".m3u" - else - name = settings.playlist_save_filename - end - end - - local savepath = utils.join_path(savepath, name) - local file, err = io.open(savepath, "w") - if not file then - msg.error("Error in creating playlist file, check permissions. Error: "..(err or "unknown")) - else - file:write("#EXTM3U\n") - local i=0 - while i < length do - local pwd = mp.get_property("working-directory") - local filename = mp.get_property('playlist/'..i..'/filename') - local fullpath = filename - if not is_protocol(filename) then - fullpath = utils.join_path(pwd, filename) - end - local title = mp.get_property('playlist/'..i..'/title') or title_table[filename] - if title then - file:write("#EXTINF:,"..title.."\n") - end - file:write(fullpath, "\n") - i=i+1 - end - local saved_msg = "Playlist written to: "..savepath - if settings.display_osd_feedback then mp.osd_message(saved_msg) end - msg.info(saved_msg) - file:close() - end -end - -function alphanumsort(a, b) - local function padnum(d) - local dec, n = string.match(d, "(%.?)0*(.+)") - return #dec > 0 and ("%.12f"):format(d) or ("%s%03d%s"):format(dec, #n, n) - end - return tostring(a):lower():gsub("%.?%d+",padnum)..("%3d"):format(#b) - < tostring(b):lower():gsub("%.?%d+",padnum)..("%3d"):format(#a) -end - --- fast sort algo from https://github.com/zsugabubus/dotfiles/blob/master/.config/mpv/scripts/playlist-filtersort.lua -function sortplaylist(startover) - local playlist = mp.get_property_native('playlist') - if #playlist < 2 then return end - - local order = {} - for i=1, #playlist do - order[i] = i - playlist[i].string = get_name_from_index(i - 1, true) - end - - table.sort(order, function(a, b) - return sort_modes[sort_mode].sort_fn(a, b, playlist) - end) - - for i=1, #playlist do - playlist[order[i]].new_pos = i - end - - for i=1, #playlist do - while true do - local j = playlist[i].new_pos - if i == j then - break - end - mp.commandv('playlist-move', (i) - 1, (j + 1) - 1) - mp.commandv('playlist-move', (j - 1) - 1, (i) - 1) - playlist[j], playlist[i] = playlist[i], playlist[j] - end - end - - for i = 1, #playlist do - local filename = mp.get_property('playlist/' .. i - 1 .. '/filename') - local ext = filename:match("%.([^%.]+)$") - if not ext or not filetype_lookup[ext:lower()] then - --move the directory to the end of the playlist - mp.commandv('playlist-move', i - 1, #playlist) - end - end - - cursor = mp.get_property_number('playlist-pos', 0) - if startover then - mp.set_property('playlist-pos', 0) - end - if playlist_visible then - showplaylist() - end - if settings.display_osd_feedback then - mp.osd_message("Playlist sorted with "..sort_modes[sort_mode].title) - end -end - -function reverseplaylist() - local length = mp.get_property_number('playlist-count', 0) - if length < 2 then return end - for outer=1, length-1, 1 do - mp.commandv('playlist-move', outer, 0) - end - if playlist_visible then - showplaylist() - elseif settings.display_osd_feedback then - mp.osd_message("Playlist reversed") - end -end - -function shuffleplaylist() - refresh_globals() - if plen < 2 then return end - mp.command("playlist-shuffle") - math.randomseed(os.time()) - mp.commandv("playlist-move", pos, math.random(0, plen-1)) - - local playlist = mp.get_property_native('playlist') - for i = 1, #playlist do - local filename = mp.get_property('playlist/' .. i - 1 .. '/filename') - local ext = filename:match("%.([^%.]+)$") - if not ext or not filetype_lookup[ext:lower()] then - --move the directory to the end of the playlist - mp.commandv('playlist-move', i - 1, #playlist) - end - end - - mp.set_property('playlist-pos', 0) - refresh_globals() - if playlist_visible then - showplaylist() - elseif settings.display_osd_feedback then - mp.osd_message("Playlist shuffled") - end -end - -function bind_keys(keys, name, func, opts) - if keys == nil or keys == "" then - mp.add_key_binding(keys, name, func, opts) - return - end - local i = 1 - for key in keys:gmatch("[^%s]+") do - local prefix = i == 1 and '' or i - mp.add_key_binding(key, name..prefix, func, opts) - i = i + 1 - end -end - -function bind_keys_forced(keys, name, func, opts) - if keys == nil or keys == "" then - mp.add_forced_key_binding(keys, name, func, opts) - return - end - local i = 1 - for key in keys:gmatch("[^%s]+") do - local prefix = i == 1 and '' or i - mp.add_forced_key_binding(key, name..prefix, func, opts) - i = i + 1 - end -end - -function unbind_keys(keys, name) - if keys == nil or keys == "" then - mp.remove_key_binding(name) - return - end - local i = 1 - for key in keys:gmatch("[^%s]+") do - local prefix = i == 1 and '' or i - mp.remove_key_binding(name..prefix) - i = i + 1 - end -end - -function add_keybinds() - bind_keys_forced(settings.key_moveup, 'moveup', moveup, "repeatable") - bind_keys_forced(settings.key_movedown, 'movedown', movedown, "repeatable") - bind_keys_forced(settings.key_movepageup, 'movepageup', movepageup, "repeatable") - bind_keys_forced(settings.key_movepagedown, 'movepagedown', movepagedown, "repeatable") - bind_keys_forced(settings.key_movebegin, 'movebegin', movebegin, "repeatable") - bind_keys_forced(settings.key_moveend, 'moveend', moveend, "repeatable") - bind_keys_forced(settings.key_selectfile, 'selectfile', selectfile) - bind_keys_forced(settings.key_unselectfile, 'unselectfile', unselectfile) - bind_keys_forced(settings.key_playfile, 'playfile', playfile) - bind_keys_forced(settings.key_removefile, 'removefile', removefile, "repeatable") - bind_keys_forced(settings.key_closeplaylist, 'closeplaylist', remove_keybinds) -end - -function remove_keybinds() - keybindstimer:kill() - keybindstimer = mp.add_periodic_timer(settings.playlist_display_timeout, remove_keybinds) - keybindstimer:kill() - mp.set_osd_ass(0, 0, "") - playlist_visible = false - if settings.reset_cursor_on_close then - resetcursor() - end - if settings.dynamic_binds then - unbind_keys(settings.key_moveup, 'moveup') - unbind_keys(settings.key_movedown, 'movedown') - unbind_keys(settings.key_movepageup, 'movepageup') - unbind_keys(settings.key_movepagedown, 'movepagedown') - unbind_keys(settings.key_movebegin, 'movebegin') - unbind_keys(settings.key_moveend, 'moveend') - unbind_keys(settings.key_selectfile, 'selectfile') - unbind_keys(settings.key_unselectfile, 'unselectfile') - unbind_keys(settings.key_playfile, 'playfile') - unbind_keys(settings.key_removefile, 'removefile') - unbind_keys(settings.key_closeplaylist, 'closeplaylist') - end -end - -keybindstimer = mp.add_periodic_timer(settings.playlist_display_timeout, remove_keybinds) -keybindstimer:kill() - -if not settings.dynamic_binds then - add_keybinds() -end - -if settings.loadfiles_on_idle_start and mp.get_property_number('playlist-count', 0) == 0 then - playlist() -end - -mp.observe_property('playlist-count', "number", function(_, plcount) - --if we promised to listen and sort on playlist size increase do it - if settings.sortplaylist_on_file_add and (plcount > plen) then - msg.info("Added files will be automatically sorted") - refresh_globals() - sortplaylist() - end - if playlist_visible then showplaylist() end - resolve_titles() -end) - - -url_request_queue = {} -function url_request_queue.push(item) table.insert(url_request_queue, item) end -function url_request_queue.pop() return table.remove(url_request_queue, 1) end -local url_titles_to_fetch = url_request_queue -local ongoing_url_requests = {} - -function url_fetching_throttler() - if #url_titles_to_fetch == 0 then - url_title_fetch_timer:kill() - end - - local ongoing_url_requests_count = 0 - for _, ongoing in pairs(ongoing_url_requests) do - if ongoing then - ongoing_url_requests_count = ongoing_url_requests_count + 1 - end - end - - -- start resolving some url titles if there is available slots - local amount_to_fetch = math.max(0, settings.concurrent_title_resolve_limit - ongoing_url_requests_count) - for index=1,amount_to_fetch,1 do - local file = url_titles_to_fetch.pop() - if file then - ongoing_url_requests[file] = true - resolve_ytdl_title(file) - end - end -end - -url_title_fetch_timer = mp.add_periodic_timer(0.1, url_fetching_throttler) -url_title_fetch_timer:kill() - -local_request_queue = {} -function local_request_queue.push(item) table.insert(local_request_queue, item) end -function local_request_queue.pop() return table.remove(local_request_queue, 1) end -local local_titles_to_fetch = local_request_queue -local ongoing_local_request = false - --- this will only allow 1 concurrent local title resolve process -function local_fetching_throttler() - if not ongoing_local_request then - local file = local_titles_to_fetch.pop() - if file then - ongoing_local_request = true - resolve_ffprobe_title(file) - end - end -end - -function resolve_titles() - if settings.prefer_titles == 'none' then return end - if not settings.resolve_url_titles and not settings.resolve_local_titles then return end - - local length = mp.get_property_number('playlist-count', 0) - if length < 2 then return end - -- loop all items in playlist because we can't predict how it has changed - local added_urls = false - local added_local = false - for i=0,length - 1,1 do - local filename = mp.get_property('playlist/'..i..'/filename') - local title = mp.get_property('playlist/'..i..'/title') - if i ~= pos - and filename - and not title - and not title_table[filename] - and not requested_titles[filename] - then - requested_titles[filename] = true - if filename:match('^https?://') then - url_titles_to_fetch.push(filename) - added_urls = true - elseif settings.prefer_titles == "all" then - local_titles_to_fetch.push(filename) - added_local = true - end - end - end - if added_urls then - url_title_fetch_timer:resume() - end - if added_local then - local_fetching_throttler() - end -end - -function resolve_ytdl_title(filename) - local args = { - settings.youtube_dl_executable, - '--no-playlist', - '--flat-playlist', - '-sJ', - '--no-config', - filename, - } - local req = mp.command_native_async( - { - name = "subprocess", - args = args, - playback_only = false, - capture_stdout = true - }, - function (success, res) - ongoing_url_requests[filename] = false - if res.killed_by_us then - msg.verbose('Request to resolve url title ' .. filename .. ' timed out') - return - end - if res.status == 0 then - local json, err = utils.parse_json(res.stdout) - if not err then - local is_playlist = json['_type'] and json['_type'] == 'playlist' - local title = (is_playlist and '[playlist]: ' or '') .. json['title'] - msg.verbose(filename .. " resolved to '" .. title .. "'") - title_table[filename] = title - refresh_globals() - if playlist_visible then showplaylist() end - else - msg.error("Failed parsing json, reason: "..(err or "unknown")) - end - else - msg.error("Failed to resolve url title "..filename.." Error: "..(res.error or "unknown")) - end - end - ) - - mp.add_timeout( - settings.resolve_title_timeout, - function() - mp.abort_async_command(req) - ongoing_url_requests[filename] = false - end - ) -end - -function resolve_ffprobe_title(filename) - local args = { "ffprobe", "-show_format", "-show_entries", "format=tags", "-loglevel", "quiet", filename } - local req = mp.command_native_async( - { - name = "subprocess", - args = args, - playback_only = false, - capture_stdout = true - }, - function (success, res) - ongoing_local_request = false - local_fetching_throttler() - if res.killed_by_us then - msg.verbose('Request to resolve local title ' .. filename .. ' timed out') - return - end - if res.status == 0 then - local title = string.match(res.stdout, "title=([^\n\r]+)") - if title then - msg.verbose(filename .. " resolved to '" .. title .. "'") - title_table[filename] = title - refresh_globals() - if playlist_visible then showplaylist() end - end - else - msg.error("Failed to resolve local title "..filename.." Error: "..(res.error or "unknown")) - end - end - ) -end - ---script message handler -function handlemessage(msg, value, value2) - if msg == "show" and value == "playlist" then - if value2 ~= "toggle" then - showplaylist(value2) - return - else - toggle_playlist(showplaylist) - return - end - end - if msg == "show" and value == "playlist-nokeys" then - if value2 ~= "toggle" then - showplaylist_non_interactive(value2) - return - else - toggle_playlist(showplaylist_non_interactive) - return - end - end - if msg == "show" and value == "filename" and strippedname and value2 then - mp.commandv('show-text', strippedname, tonumber(value2)*1000 ) ; return - end - if msg == "show" and value == "filename" and strippedname then - mp.commandv('show-text', strippedname ) ; return - end - if msg == "sort" then sortplaylist(value) ; return end - if msg == "shuffle" then shuffleplaylist() ; return end - if msg == "reverse" then reverseplaylist() ; return end - if msg == "loadfiles" then playlist(value) ; return end - if msg == "save" then save_playlist(value) ; return end - if msg == "playlist-next" then playlist_next(true) ; return end - if msg == "playlist-prev" then playlist_prev(true) ; return end - if msg == "enable-interactive-save" then interactive_save = true end - if msg == "close" then remove_keybinds() end -end - -mp.register_script_message("playlistmanager", handlemessage) - -bind_keys(settings.key_sortplaylist, "sortplaylist", function() - sortplaylist() - sort_mode = sort_mode + 1 - if sort_mode > #sort_modes then sort_mode = 1 end -end) -bind_keys(settings.key_shuffleplaylist, "shuffleplaylist", shuffleplaylist) -bind_keys(settings.key_reverseplaylist, "reverseplaylist", reverseplaylist) -bind_keys(settings.key_loadfiles, "loadfiles", playlist) -bind_keys(settings.key_saveplaylist, "saveplaylist", activate_playlist_save) -bind_keys(settings.key_showplaylist, "showplaylist", showplaylist) -bind_keys( - settings.key_peek_at_playlist, - "peek_at_playlist", - handle_complex_playlist_toggle, - { complex=true } -) - -mp.register_event("start-file", on_start_file) -mp.register_event("file-loaded", on_file_loaded) -mp.register_event("end-file", on_end_file) diff --git a/config/mpv/.config/mpv/scripts/seek-to.lua b/config/mpv/.config/mpv/scripts/seek-to.lua deleted file mode 100644 index ecf8e59..0000000 --- a/config/mpv/.config/mpv/scripts/seek-to.lua +++ /dev/null @@ -1,192 +0,0 @@ --- Original script from https://github.com/occivink/mpv-scripts/blob/master/scripts/seek-to.lua --- prerequisite: xclip (clipboard CLI interface) installed - -local assdraw = require 'mp.assdraw' -local utils = require 'mp.utils' -local msg = require 'mp.msg' -local active = false -local cursor_position = 1 -local time_scale = {60*60*10, 60*60, 60*10, 60, 10, 1, 0.1, 0.01, 0.001} - -local ass_begin = mp.get_property("osd-ass-cc/0") -local ass_end = mp.get_property("osd-ass-cc/1") - -local history = { {} } -for i = 1, 9 do - history[1][i] = 0 -end -local history_position = 1 - --- timer to redraw periodically the message --- to avoid leaving bindings when the seeker disappears for whatever reason --- pretty hacky tbh -local timer = nil -local timer_duration = 3 - -function show_seeker() - local prepend_char = {'','',':','',':','','.','',''} - local str = '' - for i = 1, 9 do - str = str .. prepend_char[i] - if i == cursor_position then - str = str .. '{\\b1}' .. history[history_position][i] .. '{\\r}' - else - str = str .. history[history_position][i] - end - end - mp.osd_message("Seek to: " .. ass_begin .. str .. ass_end, timer_duration) -end - -function copy_history_to_last() - if history_position ~= #history then - for i = 1, 9 do - history[#history][i] = history[history_position][i] - end - history_position = #history - end -end - -function change_number(i) - -- can't set above 60 minutes or seconds - if (cursor_position == 3 or cursor_position == 5) and i >= 6 then - return - end - if history[history_position][cursor_position] ~= i then - copy_history_to_last() - history[#history][cursor_position] = i - end - shift_cursor(false) -end - -function shift_cursor(left) - if left then - cursor_position = math.max(1, cursor_position - 1) - else - cursor_position = math.min(cursor_position + 1, 9) - end -end - -function current_time_as_sec(time) - local sec = 0 - for i = 1, 9 do - sec = sec + time_scale[i] * time[i] - end - return sec -end - -function time_equal(lhs, rhs) - for i = 1, 9 do - if lhs[i] ~= rhs[i] then - return false - end - end - return true -end - -function seek_to() - copy_history_to_last() - mp.commandv("osd-bar", "seek", current_time_as_sec(history[history_position]), "absolute") - --deduplicate consecutive timestamps - if #history == 1 or not time_equal(history[history_position], history[#history - 1]) then - history[#history + 1] = {} - history_position = #history - end - for i = 1, 9 do - history[#history][i] = 0 - end -end - -function backspace() - if history[history_position][cursor_position] ~= 0 then - copy_history_to_last() - history[#history][cursor_position] = 0 - end - shift_cursor(true) -end - -function history_move(up) - if up then - history_position = math.max(1, history_position - 1) - else - history_position = math.min(history_position + 1, #history) - end -end - -local key_mappings = { - LEFT = function() shift_cursor(true) show_seeker() end, - RIGHT = function() shift_cursor(false) show_seeker() end, - UP = function() history_move(true) show_seeker() end, - DOWN = function() history_move(false) show_seeker() end, - BS = function() backspace() show_seeker() end, - ESC = function() set_inactive() end, - ENTER = function() seek_to() set_inactive() end -} -for i = 0, 9 do - local func = function() change_number(i) show_seeker() end - key_mappings[string.format("KP%d", i)] = func - key_mappings[string.format("%d", i)] = func -end - -function set_active() - if not mp.get_property("seekable") then return end - -- find duration of the video and set cursor position accordingly - local duration = mp.get_property_number("duration") - if duration ~= nil then - for i = 1, 9 do - if duration > time_scale[i] then - cursor_position = i - break - end - end - end - for key, func in pairs(key_mappings) do - mp.add_forced_key_binding(key, "seek-to-"..key, func) - end - show_seeker() - timer = mp.add_periodic_timer(timer_duration, show_seeker) - active = true -end - -function set_inactive() - mp.osd_message("") - for key, _ in pairs(key_mappings) do - mp.remove_key_binding("seek-to-"..key) - end - timer:kill() - active = false -end - -function paste_timestamp() - -- get clipboard data - local clipboard = utils.subprocess({ - args = { "xclip", "-selection", "clipboard", "-o" }, - playback_only = false, - capture_stdout = true, - capture_stderr = true - }) - - -- error handling - if not clipboard.error then - timestamp = clipboard.stdout - else - msg.error("Error getting data from clipboard:") - msg.error(" stderr: " .. clipboard.stderr) - msg.error(" stdout: " .. clipboard.stdout) - return - end - - -- find timestamp from clipboard - match = timestamp:match("%d?%d?:?%d%d:%d%d%.?%d*") - - -- paste and seek to timestamp - if match ~= nil then - mp.osd_message("Timestamp pasted: " .. match) - mp.commandv("osd-bar", "seek", match, "absolute") - else - msg.warn("No pastable timestamp found!") - end -end - --- keybindings are set in input.conf -mp.add_key_binding(nil, "toggle-seeker", function() if active then set_inactive() else set_active() end end) -mp.add_key_binding(nil, "paste-timestamp", paste_timestamp) diff --git a/config/mpv/.config/mpv/scripts/sponsorblock-minimal.lua b/config/mpv/.config/mpv/scripts/sponsorblock-minimal.lua deleted file mode 100644 index 967348b..0000000 --- a/config/mpv/.config/mpv/scripts/sponsorblock-minimal.lua +++ /dev/null @@ -1,147 +0,0 @@ --- sponsorblock-minimal.lua --- source: https://codeberg.org/jouni/mpv_sponsorblock_minimal --- --- This script skips sponsored segments of YouTube videos --- using data from https://github.com/ajayyy/SponsorBlock - -local opt = require 'mp.options' -local utils = require 'mp.utils' - -local ON = false -local ranges = nil - -local options = { - server = "https://sponsor.ajay.app/api/skipSegments", - - -- Categories to fetch and skip - categories = '"sponsor"', - - -- Set this to "true" to use sha256HashPrefix instead of videoID - hash = "" -} - -opt.read_options(options) - -function get_ranges(youtube_id, url) - local luacurl_available, cURL = pcall(require,'cURL') - - local res = nil - if not(luacurl_available) then -- if Lua-cURL is not available on this system - local sponsors = mp.command_native{ - name = "subprocess", - capture_stdout = true, - playback_only = false, - args = {"curl", "-L", "-s", "-g", url} - } - res = sponsors.stdout - else -- otherwise use Lua-cURL (binding to libcurl) - local buf={} - local c = cURL.easy_init() - c:setopt_followlocation(1) - c:setopt_url(url) - c:setopt_writefunction(function(chunk) table.insert(buf,chunk); return true; end) - c:perform() - res = table.concat(buf) - end - - if res then - local json = utils.parse_json(res) - if type(json) == "table" then - if options.hash == "true" then - for _, i in pairs(json) do - if i.videoID == youtube_id then - return i.segments - end - end - else - return json - end - end - end - - return nil -end - -function skip_ads(name,pos) - if pos then - for _, i in pairs(ranges) do - v = i.segment[2] - if i.segment[1] <= pos and v > pos then - --this message may sometimes be wrong - --it only seems to be a visual thing though - mp.osd_message(("[sponsorblock] skipping forward %ds"):format(math.floor(v-mp.get_property("time-pos")))) - --need to do the +0.01 otherwise mpv will start spamming skip sometimes - --example: https://www.youtube.com/watch?v=4ypMJzeNooo - mp.set_property("time-pos",v+0.01) - return - end - end - end -end - -function file_loaded() - local video_path = mp.get_property("path", "") - local video_referer = string.match(mp.get_property("http-header-fields", ""), "Referer:([^,]+)") or "" - - local urls = { - "ytdl://youtu%.be/([%w-_]+).*", - "ytdl://w?w?w?%.?youtube%.com/v/([%w-_]+).*", - "https?://youtu%.be/([%w-_]+).*", - "https?://w?w?w?%.?youtube%.com/v/([%w-_]+).*", - "/watch.*[?&]v=([%w-_]+).*", - "/embed/([%w-_]+).*", - "^ytdl://([%w-_]+)$", - "-([%w-_]+)%." - } - local youtube_id = nil - local purl = mp.get_property("metadata/by-key/PURL", "") - for i,url in ipairs(urls) do - youtube_id = youtube_id or string.match(video_path, url) or string.match(video_referer, url) or string.match(purl, url) - if youtube_id then break end - end - - if not youtube_id or string.len(youtube_id) < 11 then return end - youtube_id = string.sub(youtube_id, 1, 11) - - local url = "" - if options.hash == "true" then - local sha = mp.command_native{ - name = "subprocess", - capture_stdout = true, - args = {"sha256sum"}, - stdin_data = youtube_id - } - url = ("%s/%s?categories=[%s]"):format(options.server, string.sub(sha.stdout, 0, 4), options.categories) - else - url = ("%s?videoID=%s&categories=[%s]"):format(options.server, youtube_id, options.categories) - end - - ranges = get_ranges(youtube_id, url) - if ranges then - ON = true - mp.add_key_binding("b","sponsorblock",toggle) - mp.observe_property("time-pos", "native", skip_ads) - end -end - -function end_file() - if not ON then return end - mp.unobserve_property(skip_ads) - ranges = nil - ON = false -end - -function toggle() - if ON then - mp.unobserve_property(skip_ads) - mp.osd_message("[sponsorblock] off") - ON = false - else - mp.observe_property("time-pos", "native", skip_ads) - mp.osd_message("[sponsorblock] on") - ON = true - end -end - -mp.register_event("file-loaded", file_loaded) -mp.register_event("end-file", end_file) diff --git a/config/mpv/.config/mpv/scripts/thumbfast.lua b/config/mpv/.config/mpv/scripts/thumbfast.lua deleted file mode 100644 index 723a402..0000000 --- a/config/mpv/.config/mpv/scripts/thumbfast.lua +++ /dev/null @@ -1,926 +0,0 @@ --- thumbfast.lua --- --- High-performance on-the-fly thumbnailer --- --- Built for easy integration in third-party UIs. - ---[[ -This Source Code Form is subject to the terms of the Mozilla Public -License, v. 2.0. If a copy of the MPL was not distributed with this -file, You can obtain one at https://mozilla.org/MPL/2.0/. -]] - -local options = { - -- Socket path (leave empty for auto) - socket = "", - - -- Thumbnail path (leave empty for auto) - thumbnail = "", - - -- Maximum thumbnail size in pixels (scaled down to fit) - -- Values are scaled when hidpi is enabled - max_height = 200, - max_width = 200, - - -- Apply tone-mapping, no to disable - tone_mapping = "auto", - - -- Overlay id - overlay_id = 42, - - -- Spawn thumbnailer on file load for faster initial thumbnails - spawn_first = false, - - -- Close thumbnailer process after an inactivity period in seconds, 0 to disable - quit_after_inactivity = 0, - - -- Enable on network playback - network = false, - - -- Enable on audio playback - audio = false, - - -- Enable hardware decoding - hwdec = false, - - -- Windows only: use native Windows API to write to pipe (requires LuaJIT) - direct_io = false, - - -- Custom path to the mpv executable - mpv_path = "mpv" -} - -mp.utils = require "mp.utils" -mp.options = require "mp.options" -mp.options.read_options(options, "thumbfast") - -local properties = {} -local pre_0_30_0 = mp.command_native_async == nil -local pre_0_33_0 = true - -function subprocess(args, async, callback) - callback = callback or function() end - - if not pre_0_30_0 then - if async then - return mp.command_native_async({name = "subprocess", playback_only = true, args = args}, callback) - else - return mp.command_native({name = "subprocess", playback_only = false, capture_stdout = true, args = args}) - end - else - if async then - return mp.utils.subprocess_detached({args = args}, callback) - else - return mp.utils.subprocess({args = args}) - end - end -end - -local winapi = {} -if options.direct_io then - local ffi_loaded, ffi = pcall(require, "ffi") - if ffi_loaded then - winapi = { - ffi = ffi, - C = ffi.C, - bit = require("bit"), - socket_wc = "", - - -- WinAPI constants - CP_UTF8 = 65001, - GENERIC_WRITE = 0x40000000, - OPEN_EXISTING = 3, - FILE_FLAG_WRITE_THROUGH = 0x80000000, - FILE_FLAG_NO_BUFFERING = 0x20000000, - PIPE_NOWAIT = ffi.new("unsigned long[1]", 0x00000001), - - INVALID_HANDLE_VALUE = ffi.cast("void*", -1), - - -- don't care about how many bytes WriteFile wrote, so allocate something to store the result once - _lpNumberOfBytesWritten = ffi.new("unsigned long[1]"), - } - -- cache flags used in run() to avoid bor() call - winapi._createfile_pipe_flags = winapi.bit.bor(winapi.FILE_FLAG_WRITE_THROUGH, winapi.FILE_FLAG_NO_BUFFERING) - - ffi.cdef[[ - void* __stdcall CreateFileW(const wchar_t *lpFileName, unsigned long dwDesiredAccess, unsigned long dwShareMode, void *lpSecurityAttributes, unsigned long dwCreationDisposition, unsigned long dwFlagsAndAttributes, void *hTemplateFile); - bool __stdcall WriteFile(void *hFile, const void *lpBuffer, unsigned long nNumberOfBytesToWrite, unsigned long *lpNumberOfBytesWritten, void *lpOverlapped); - bool __stdcall CloseHandle(void *hObject); - bool __stdcall SetNamedPipeHandleState(void *hNamedPipe, unsigned long *lpMode, unsigned long *lpMaxCollectionCount, unsigned long *lpCollectDataTimeout); - int __stdcall MultiByteToWideChar(unsigned int CodePage, unsigned long dwFlags, const char *lpMultiByteStr, int cbMultiByte, wchar_t *lpWideCharStr, int cchWideChar); - ]] - - winapi.MultiByteToWideChar = function(MultiByteStr) - if MultiByteStr then - local utf16_len = winapi.C.MultiByteToWideChar(winapi.CP_UTF8, 0, MultiByteStr, -1, nil, 0) - if utf16_len > 0 then - local utf16_str = winapi.ffi.new("wchar_t[?]", utf16_len) - if winapi.C.MultiByteToWideChar(winapi.CP_UTF8, 0, MultiByteStr, -1, utf16_str, utf16_len) > 0 then - return utf16_str - end - end - end - return "" - end - - else - options.direct_io = false - end -end - -local file = nil -local file_bytes = 0 -local spawned = false -local disabled = false -local force_disabled = false -local spawn_waiting = false -local spawn_working = false -local script_written = false - -local dirty = false - -local x = nil -local y = nil -local last_x = x -local last_y = y - -local last_seek_time = nil - -local effective_w = options.max_width -local effective_h = options.max_height -local real_w = nil -local real_h = nil -local last_real_w = nil -local last_real_h = nil - -local script_name = nil - -local show_thumbnail = false - -local filters_reset = {["lavfi-crop"]=true, ["crop"]=true} -local filters_runtime = {["hflip"]=true, ["vflip"]=true} -local filters_all = {["hflip"]=true, ["vflip"]=true, ["lavfi-crop"]=true, ["crop"]=true} - -local tone_mappings = {["none"]=true, ["clip"]=true, ["linear"]=true, ["gamma"]=true, ["reinhard"]=true, ["hable"]=true, ["mobius"]=true} -local last_tone_mapping = nil - -local last_vf_reset = "" -local last_vf_runtime = "" - -local last_rotate = 0 - -local par = "" -local last_par = "" - -local last_has_vid = 0 -local has_vid = 0 - -local file_timer = nil -local file_check_period = 1/60 - -local allow_fast_seek = true - -local client_script = [=[ -#!/usr/bin/env bash -MPV_IPC_FD=0; MPV_IPC_PATH="%s" -trap "kill 0" EXIT -while [[ $# -ne 0 ]]; do case $1 in --mpv-ipc-fd=*) MPV_IPC_FD=${1/--mpv-ipc-fd=/} ;; esac; shift; done -if echo "print-text thumbfast" >&"$MPV_IPC_FD"; then echo -n > "$MPV_IPC_PATH"; tail -f "$MPV_IPC_PATH" >&"$MPV_IPC_FD" & while read -r -u "$MPV_IPC_FD" 2>/dev/null; do :; done; fi -]=] - -local function get_os() - local raw_os_name = "" - - if jit and jit.os and jit.arch then - raw_os_name = jit.os - else - if package.config:sub(1,1) == "\\" then - -- Windows - local env_OS = os.getenv("OS") - if env_OS then - raw_os_name = env_OS - end - else - raw_os_name = subprocess({"uname", "-s"}).stdout - end - end - - raw_os_name = (raw_os_name):lower() - - local os_patterns = { - ["windows"] = "windows", - ["linux"] = "linux", - - ["osx"] = "darwin", - ["mac"] = "darwin", - ["darwin"] = "darwin", - - ["^mingw"] = "windows", - ["^cygwin"] = "windows", - - ["bsd$"] = "darwin", - ["sunos"] = "darwin" - } - - -- Default to linux - local str_os_name = "linux" - - for pattern, name in pairs(os_patterns) do - if raw_os_name:match(pattern) then - str_os_name = name - break - end - end - - return str_os_name -end - -local os_name = mp.get_property("platform") or get_os() - -local path_separator = os_name == "windows" and "\\" or "/" - -if options.socket == "" then - if os_name == "windows" then - options.socket = "thumbfast" - else - options.socket = "/tmp/thumbfast" - end -end - -if options.thumbnail == "" then - if os_name == "windows" then - options.thumbnail = os.getenv("TEMP").."\\thumbfast.out" - else - options.thumbnail = "/tmp/thumbfast.out" - end -end - -local unique = mp.utils.getpid() - -options.socket = options.socket .. unique -options.thumbnail = options.thumbnail .. unique - -if options.direct_io then - if os_name == "windows" then - winapi.socket_wc = winapi.MultiByteToWideChar("\\\\.\\pipe\\" .. options.socket) - end - - if winapi.socket_wc == "" then - options.direct_io = false - end -end - -local mpv_path = options.mpv_path - -if mpv_path == "mpv" and os_name == "darwin" and unique then - -- TODO: look into ~~osxbundle/ - mpv_path = string.gsub(subprocess({"ps", "-o", "comm=", "-p", tostring(unique)}).stdout, "[\n\r]", "") - if mpv_path ~= "mpv" then - mpv_path = string.gsub(mpv_path, "/mpv%-bundle$", "/mpv") - local mpv_bin = mp.utils.file_info("/usr/local/mpv") - if mpv_bin and mpv_bin.is_file then - mpv_path = "/usr/local/mpv" - else - local mpv_app = mp.utils.file_info("/Applications/mpv.app/Contents/MacOS/mpv") - if mpv_app and mpv_app.is_file then - mp.msg.warn("symlink mpv to fix Dock icons: `sudo ln -s /Applications/mpv.app/Contents/MacOS/mpv /usr/local/mpv`") - else - mp.msg.warn("drag to your Applications folder and symlink mpv to fix Dock icons: `sudo ln -s /Applications/mpv.app/Contents/MacOS/mpv /usr/local/mpv`") - end - end - end -end - -local function vo_tone_mapping() - local passes = mp.get_property_native("vo-passes") - if passes and passes["fresh"] then - for k, v in pairs(passes["fresh"]) do - for k2, v2 in pairs(v) do - if k2 == "desc" and v2 then - local tone_mapping = string.match(v2, "([0-9a-z.-]+) tone map") - if tone_mapping then - return tone_mapping - end - end - end - end - end -end - -local function vf_string(filters, full) - local vf = "" - local vf_table = properties["vf"] - - if vf_table and #vf_table > 0 then - for i = #vf_table, 1, -1 do - if filters[vf_table[i].name] then - local args = "" - for key, value in pairs(vf_table[i].params) do - if args ~= "" then - args = args .. ":" - end - args = args .. key .. "=" .. value - end - vf = vf .. vf_table[i].name .. "=" .. args .. "," - end - end - end - - if (full and options.tone_mapping ~= "no") or options.tone_mapping == "auto" then - if properties["video-params"] and properties["video-params"]["primaries"] == "bt.2020" then - local tone_mapping = options.tone_mapping - if tone_mapping == "auto" then - tone_mapping = last_tone_mapping or properties["tone-mapping"] - if tone_mapping == "auto" and properties["current-vo"] == "gpu-next" then - tone_mapping = vo_tone_mapping() - end - end - if not tone_mappings[tone_mapping] then - tone_mapping = "hable" - end - last_tone_mapping = tone_mapping - vf = vf .. "zscale=transfer=linear,format=gbrpf32le,tonemap="..tone_mapping..",zscale=transfer=bt709," - end - end - - if full then - vf = vf.."scale=w="..effective_w..":h="..effective_h..par..",pad=w="..effective_w..":h="..effective_h..":x=-1:y=-1,format=bgra" - end - - return vf -end - -local function calc_dimensions() - local width = properties["video-out-params"] and properties["video-out-params"]["dw"] - local height = properties["video-out-params"] and properties["video-out-params"]["dh"] - if not width or not height then return end - - local scale = properties["display-hidpi-scale"] or 1 - - if width / height > options.max_width / options.max_height then - effective_w = math.floor(options.max_width * scale + 0.5) - effective_h = math.floor(height / width * effective_w + 0.5) - else - effective_h = math.floor(options.max_height * scale + 0.5) - effective_w = math.floor(width / height * effective_h + 0.5) - end - - local v_par = properties["video-out-params"] and properties["video-out-params"]["par"] or 1 - if v_par == 1 then - par = ":force_original_aspect_ratio=decrease" - else - par = "" - end -end - -local info_timer = nil - -local function info(w, h) - local rotate = properties["video-params"] and properties["video-params"]["rotate"] - local image = properties["current-tracks/video"] and properties["current-tracks/video"]["image"] - local albumart = image and properties["current-tracks/video"]["albumart"] - - disabled = (w or 0) == 0 or (h or 0) == 0 or - has_vid == 0 or - (properties["demuxer-via-network"] and not options.network) or - (albumart and not options.audio) or - (image and not albumart) or - force_disabled - - if info_timer then - info_timer:kill() - info_timer = nil - elseif has_vid == 0 or (rotate == nil and not disabled) then - info_timer = mp.add_timeout(0.05, function() info(w, h) end) - end - - local json, err = mp.utils.format_json({width=w, height=h, disabled=disabled, available=true, socket=options.socket, thumbnail=options.thumbnail, overlay_id=options.overlay_id}) - if pre_0_30_0 then - mp.command_native({"script-message", "thumbfast-info", json}) - else - mp.command_native_async({"script-message", "thumbfast-info", json}, function() end) - end -end - -local function remove_thumbnail_files() - if file then - file:close() - file = nil - file_bytes = 0 - end - os.remove(options.thumbnail) - os.remove(options.thumbnail..".bgra") -end - -local activity_timer - -local function spawn(time) - if disabled then return end - - local path = properties["path"] - if path == nil then return end - - if options.quit_after_inactivity > 0 then - if show_thumbnail or activity_timer:is_enabled() then - activity_timer:kill() - end - activity_timer:resume() - end - - local open_filename = properties["stream-open-filename"] - local ytdl = open_filename and properties["demuxer-via-network"] and path ~= open_filename - if ytdl then - path = open_filename - end - - remove_thumbnail_files() - - local vid = properties["vid"] - has_vid = vid or 0 - - local args = { - mpv_path, "--no-config", "--msg-level=all=no", "--idle", "--pause", "--keep-open=always", "--really-quiet", "--no-terminal", - "--load-scripts=no", "--osc=no", "--ytdl=no", "--load-stats-overlay=no", "--load-osd-console=no", "--load-auto-profiles=no", - "--edition="..(properties["edition"] or "auto"), "--vid="..(vid or "auto"), "--no-sub", "--no-audio", - "--start="..time, allow_fast_seek and "--hr-seek=no" or "--hr-seek=yes", - "--ytdl-format=worst", "--demuxer-readahead-secs=0", "--demuxer-max-bytes=128KiB", - "--vd-lavc-skiploopfilter=all", "--vd-lavc-software-fallback=1", "--vd-lavc-fast", "--vd-lavc-threads=2", "--hwdec="..(options.hwdec and "auto" or "no"), - "--vf="..vf_string(filters_all, true), - "--sws-scaler=fast-bilinear", - "--video-rotate="..last_rotate, - "--ovc=rawvideo", "--of=image2", "--ofopts=update=1", "--o="..options.thumbnail - } - - if not pre_0_30_0 then - table.insert(args, "--sws-allow-zimg=no") - end - - if os_name == "darwin" and properties["macos-app-activation-policy"] then - table.insert(args, "--macos-app-activation-policy=accessory") - end - - if os_name == "windows" or pre_0_33_0 then - table.insert(args, "--input-ipc-server="..options.socket) - elseif not script_written then - local client_script_path = options.socket..".run" - local script = io.open(client_script_path, "w+") - if script == nil then - mp.msg.error("client script write failed") - return - else - script_written = true - script:write(string.format(client_script, options.socket)) - script:close() - subprocess({"chmod", "+x", client_script_path}, true) - table.insert(args, "--scripts="..client_script_path) - end - else - local client_script_path = options.socket..".run" - table.insert(args, "--scripts="..client_script_path) - end - - table.insert(args, "--") - table.insert(args, path) - - spawned = true - spawn_waiting = true - - subprocess(args, true, - function(success, result) - if spawn_waiting and (success == false or (result.status ~= 0 and result.status ~= -2)) then - spawned = false - spawn_waiting = false - options.tone_mapping = "no" - mp.msg.error("mpv subprocess create failed") - if not spawn_working then -- notify users of required configuration - if options.mpv_path == "mpv" then - if properties["current-vo"] == "libmpv" then - if options.mpv_path == mpv_path then -- attempt to locate ImPlay - mpv_path = "ImPlay" - spawn(time) - else -- ImPlay not in path - if os_name ~= "darwin" then - force_disabled = true - info(real_w or effective_w, real_h or effective_h) - end - mp.commandv("show-text", "thumbfast: ERROR! cannot create mpv subprocess", 5000) - mp.commandv("script-message-to", "implay", "show-message", "thumbfast initial setup", "Set mpv_path=PATH_TO_ImPlay in thumbfast config:\n" .. string.gsub(mp.command_native({"expand-path", "~~/script-opts/thumbfast.conf"}), "[/\\]", path_separator).."\nand restart ImPlay") - end - else - mp.commandv("show-text", "thumbfast: ERROR! cannot create mpv subprocess", 5000) - if os_name == "windows" then - mp.commandv("script-message-to", "mpvnet", "show-text", "thumbfast: ERROR! install standalone mpv, see README", 5000, 20) - mp.commandv("script-message", "mpv.net", "show-text", "thumbfast: ERROR! install standalone mpv, see README", 5000, 20) - end - end - else - mp.commandv("show-text", "thumbfast: ERROR! cannot create mpv subprocess", 5000) - -- found ImPlay but not defined in config - mp.commandv("script-message-to", "implay", "show-message", "thumbfast", "Set mpv_path=PATH_TO_ImPlay in thumbfast config:\n" .. string.gsub(mp.command_native({"expand-path", "~~/script-opts/thumbfast.conf"}), "[/\\]", path_separator).."\nand restart ImPlay") - end - end - elseif success == true and (result.status == 0 or result.status == -2) then - if not spawn_working and properties["current-vo"] == "libmpv" and options.mpv_path ~= mpv_path then - mp.commandv("script-message-to", "implay", "show-message", "thumbfast initial setup", "Set mpv_path=ImPlay in thumbfast config:\n" .. string.gsub(mp.command_native({"expand-path", "~~/script-opts/thumbfast.conf"}), "[/\\]", path_separator).."\nand restart ImPlay") - end - spawn_working = true - spawn_waiting = false - end - end - ) -end - -local function run(command) - if not spawned then return end - - if options.direct_io then - local hPipe = winapi.C.CreateFileW(winapi.socket_wc, winapi.GENERIC_WRITE, 0, nil, winapi.OPEN_EXISTING, winapi._createfile_pipe_flags, nil) - if hPipe ~= winapi.INVALID_HANDLE_VALUE then - local buf = command .. "\n" - winapi.C.SetNamedPipeHandleState(hPipe, winapi.PIPE_NOWAIT, nil, nil) - winapi.C.WriteFile(hPipe, buf, #buf + 1, winapi._lpNumberOfBytesWritten, nil) - winapi.C.CloseHandle(hPipe) - end - - return - end - - local command_n = command.."\n" - - if os_name == "windows" then - if file and file_bytes + #command_n >= 4096 then - file:close() - file = nil - file_bytes = 0 - end - if not file then - file = io.open("\\\\.\\pipe\\"..options.socket, "r+b") - end - elseif pre_0_33_0 then - subprocess({"/usr/bin/env", "sh", "-c", "echo '" .. command .. "' | socat - " .. options.socket}) - return - elseif not file then - file = io.open(options.socket, "r+") - end - if file then - file_bytes = file:seek("end") - file:write(command_n) - file:flush() - end -end - -local function draw(w, h, script) - if not w or not show_thumbnail then return end - if x ~= nil then - if pre_0_30_0 then - mp.command_native({"overlay-add", options.overlay_id, x, y, options.thumbnail..".bgra", 0, "bgra", w, h, (4*w)}) - else - mp.command_native_async({"overlay-add", options.overlay_id, x, y, options.thumbnail..".bgra", 0, "bgra", w, h, (4*w)}, function() end) - end - elseif script then - local json, err = mp.utils.format_json({width=w, height=h, x=x, y=y, socket=options.socket, thumbnail=options.thumbnail, overlay_id=options.overlay_id}) - mp.commandv("script-message-to", script, "thumbfast-render", json) - end -end - -local function real_res(req_w, req_h, filesize) - local count = filesize / 4 - local diff = (req_w * req_h) - count - - if (properties["video-params"] and properties["video-params"]["rotate"] or 0) % 180 == 90 then - req_w, req_h = req_h, req_w - end - - if diff == 0 then - return req_w, req_h - else - local threshold = 5 -- throw out results that change too much - local long_side, short_side = req_w, req_h - if req_h > req_w then - long_side, short_side = req_h, req_w - end - for a = short_side, short_side - threshold, -1 do - if count % a == 0 then - local b = count / a - if long_side - b < threshold then - if req_h < req_w then return b, a else return a, b end - end - end - end - return nil - end -end - -local function move_file(from, to) - if os_name == "windows" then - os.remove(to) - end - -- move the file because it can get overwritten while overlay-add is reading it, and crash the player - os.rename(from, to) -end - -local function seek(fast) - if last_seek_time then - run("async seek " .. last_seek_time .. (fast and " absolute+keyframes" or " absolute+exact")) - end -end - -local seek_period = 3/60 -local seek_period_counter = 0 -local seek_timer -seek_timer = mp.add_periodic_timer(seek_period, function() - if seek_period_counter == 0 then - seek(allow_fast_seek) - seek_period_counter = 1 - else - if seek_period_counter == 2 then - if allow_fast_seek then - seek_timer:kill() - seek() - end - else seek_period_counter = seek_period_counter + 1 end - end -end) -seek_timer:kill() - -local function request_seek() - if seek_timer:is_enabled() then - seek_period_counter = 0 - else - seek_timer:resume() - seek(allow_fast_seek) - seek_period_counter = 1 - end -end - -local function check_new_thumb() - -- the slave might start writing to the file after checking existance and - -- validity but before actually moving the file, so move to a temporary - -- location before validity check to make sure everything stays consistant - -- and valid thumbnails don't get overwritten by invalid ones - local tmp = options.thumbnail..".tmp" - move_file(options.thumbnail, tmp) - local finfo = mp.utils.file_info(tmp) - if not finfo then return false end - spawn_waiting = false - local w, h = real_res(effective_w, effective_h, finfo.size) - if w then -- only accept valid thumbnails - move_file(tmp, options.thumbnail..".bgra") - - real_w, real_h = w, h - if real_w and (real_w ~= last_real_w or real_h ~= last_real_h) then - last_real_w, last_real_h = real_w, real_h - info(real_w, real_h) - end - if not show_thumbnail then - file_timer:kill() - end - return true - end - - return false -end - -file_timer = mp.add_periodic_timer(file_check_period, function() - if check_new_thumb() then - draw(real_w, real_h, script_name) - end -end) -file_timer:kill() - -local function clear() - file_timer:kill() - seek_timer:kill() - if options.quit_after_inactivity > 0 then - if show_thumbnail or activity_timer:is_enabled() then - activity_timer:kill() - end - activity_timer:resume() - end - last_seek_time = nil - show_thumbnail = false - last_x = nil - last_y = nil - if script_name then return end - if pre_0_30_0 then - mp.command_native({"overlay-remove", options.overlay_id}) - else - mp.command_native_async({"overlay-remove", options.overlay_id}, function() end) - end -end - -local function quit() - activity_timer:kill() - if show_thumbnail then - activity_timer:resume() - return - end - run("quit") - spawned = false - real_w, real_h = nil, nil - clear() -end - -activity_timer = mp.add_timeout(options.quit_after_inactivity, quit) -activity_timer:kill() - -local function thumb(time, r_x, r_y, script) - if disabled then return end - - time = tonumber(time) - if time == nil then return end - - if r_x == "" or r_y == "" then - x, y = nil, nil - else - x, y = math.floor(r_x + 0.5), math.floor(r_y + 0.5) - end - - script_name = script - if last_x ~= x or last_y ~= y or not show_thumbnail then - show_thumbnail = true - last_x = x - last_y = y - draw(real_w, real_h, script) - end - - if options.quit_after_inactivity > 0 then - if show_thumbnail or activity_timer:is_enabled() then - activity_timer:kill() - end - activity_timer:resume() - end - - if time == last_seek_time then return end - last_seek_time = time - if not spawned then spawn(time) end - request_seek() - if not file_timer:is_enabled() then file_timer:resume() end -end - -local function watch_changes() - if not dirty or not properties["video-out-params"] then return end - dirty = false - - local old_w = effective_w - local old_h = effective_h - - calc_dimensions() - - local vf_reset = vf_string(filters_reset) - local rotate = properties["video-rotate"] or 0 - - local resized = old_w ~= effective_w or - old_h ~= effective_h or - last_vf_reset ~= vf_reset or - (last_rotate % 180) ~= (rotate % 180) or - par ~= last_par - - if resized then - last_rotate = rotate - info(effective_w, effective_h) - elseif last_has_vid ~= has_vid and has_vid ~= 0 then - info(effective_w, effective_h) - end - - if spawned then - if resized then - -- mpv doesn't allow us to change output size - local seek_time = last_seek_time - run("quit") - clear() - spawned = false - spawn(seek_time or mp.get_property_number("time-pos", 0)) - file_timer:resume() - else - if rotate ~= last_rotate then - run("set video-rotate "..rotate) - end - local vf_runtime = vf_string(filters_runtime) - if vf_runtime ~= last_vf_runtime then - run("vf set "..vf_string(filters_all, true)) - last_vf_runtime = vf_runtime - end - end - else - last_vf_runtime = vf_string(filters_runtime) - end - - last_vf_reset = vf_reset - last_rotate = rotate - last_par = par - last_has_vid = has_vid - - if not spawned and not disabled and options.spawn_first and resized then - spawn(mp.get_property_number("time-pos", 0)) - file_timer:resume() - end -end - -local function update_property(name, value) - properties[name] = value -end - -local function update_property_dirty(name, value) - properties[name] = value - dirty = true - if name == "tone-mapping" then - last_tone_mapping = nil - end -end - -local function update_tracklist(name, value) - -- current-tracks shim - for _, track in ipairs(value) do - if track.type == "video" and track.selected then - properties["current-tracks/video"] = track - return - end - end -end - -local function sync_changes(prop, val) - update_property(prop, val) - if val == nil then return end - - if type(val) == "boolean" then - if prop == "vid" then - has_vid = 0 - last_has_vid = 0 - info(effective_w, effective_h) - clear() - return - end - val = val and "yes" or "no" - end - - if prop == "vid" then - has_vid = 1 - end - - if not spawned then return end - - run("set "..prop.." "..val) - dirty = true -end - -local function file_load() - clear() - spawned = false - real_w, real_h = nil, nil - last_real_w, last_real_h = nil, nil - last_tone_mapping = nil - last_seek_time = nil - if info_timer then - info_timer:kill() - info_timer = nil - end - - calc_dimensions() - info(effective_w, effective_h) -end - -local function shutdown() - run("quit") - remove_thumbnail_files() - if os_name ~= "windows" then - os.remove(options.socket) - os.remove(options.socket..".run") - end -end - -local function on_duration(prop, val) - allow_fast_seek = (val or 30) >= 30 -end - -mp.observe_property("current-tracks/video", "native", function(name, value) - if pre_0_33_0 then - mp.unobserve_property(update_tracklist) - pre_0_33_0 = false - end - update_property(name, value) -end) - -mp.observe_property("track-list", "native", update_tracklist) -mp.observe_property("display-hidpi-scale", "native", update_property_dirty) -mp.observe_property("video-out-params", "native", update_property_dirty) -mp.observe_property("video-params", "native", update_property_dirty) -mp.observe_property("vf", "native", update_property_dirty) -mp.observe_property("tone-mapping", "native", update_property_dirty) -mp.observe_property("demuxer-via-network", "native", update_property) -mp.observe_property("stream-open-filename", "native", update_property) -mp.observe_property("macos-app-activation-policy", "native", update_property) -mp.observe_property("current-vo", "native", update_property) -mp.observe_property("video-rotate", "native", update_property) -mp.observe_property("path", "native", update_property) -mp.observe_property("vid", "native", sync_changes) -mp.observe_property("edition", "native", sync_changes) -mp.observe_property("duration", "native", on_duration) - -mp.register_script_message("thumb", thumb) -mp.register_script_message("clear", clear) - -mp.register_event("file-loaded", file_load) -mp.register_event("shutdown", shutdown) - -mp.register_idle(watch_changes) diff --git a/config/mpv/.config/mpv/shaders/ArtCNN_C4F32.glsl b/config/mpv/.config/mpv/shaders/ArtCNN_C4F32.glsl deleted file mode 100644 index 00a4872..0000000 --- a/config/mpv/.config/mpv/shaders/ArtCNN_C4F32.glsl +++ /dev/null @@ -1,3927 +0,0 @@ -// MIT License - -// Copyright (c) 2024 Joao Chrisostomo, Kacper Michajłow - -// 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 (Conv2D) -//!COMPUTE 48 32 12 16 -//!HOOK LUMA -//!BIND LUMA -//!SAVE conv2d -//!WIDTH LUMA.w 4.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared F inp[1][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(1, 1); - inp[0][y][x] = F(LUMA_mul * texelFetch(LUMA_raw, input_base + ivec2(0, 0), 0).x); - } - } - - barrier(); - V4 result0 = V4(0.00029719682, -0.0014720066, 8.162458e-05, -0.08328656); - V4 result1 = V4(-0.0013031764, -0.0004398726, -0.0018822165, 0.0008068186); - V4 result2 = V4(0.0028612618, 0.003681991, 0.000933314, 0.0032181526); - V4 result3 = V4(-0.002406673, -0.06238555, -0.0003887231, 0.00088146876); - V4 result4 = V4(-6.0637176e-06, -2.5410272e-05, 0.00071024057, 0.0010221201); - V4 result5 = V4(0.00030683735, 8.590639e-05, 0.0011228231, -0.0003569378); - V4 result6 = V4(-0.0012251337, 0.00022690487, 0.027825622, 0.03732215); - V4 result7 = V4(-0.0012781023, -0.002477305, 0.0087070875, 0.00023633029); - const F inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const F inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const F inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const F inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const F inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const F inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const F inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const F inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const F inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += V4(-0.03823595, -0.06965141, 0.057807874, -0.03770885) * inp_0_0_0; - result0 += V4(0.018986901, 0.19749214, -0.058446474, 0.0005390018) * inp_0_1_0; - result0 += V4(-0.013422343, -0.11547432, 0.026615717, 0.041784476) * inp_0_2_0; - result0 += V4(0.0689497, -0.0018005769, -0.016152069, -0.18712986) * inp_0_0_1; - result0 += V4(-0.01775814, -0.03113816, -0.03785366, 0.12528929) * inp_0_1_1; - result0 += V4(-0.006083886, 0.029609155, 0.009611117, 0.13607746) * inp_0_2_1; - result0 += V4(-0.014355586, 0.07624153, -0.02976815, -0.005620912) * inp_0_0_2; - result0 += V4(-0.026223402, -0.15436348, 0.08110813, 0.062548615) * inp_0_1_2; - result0 += V4(0.028161632, 0.07029042, -0.032889232, 0.08372451) * inp_0_2_2; - result1 += V4(0.015057175, 0.06048061, 0.082558945, 0.092912) * inp_0_0_0; - result1 += V4(0.05168004, -0.04345358, 0.05731101, -0.112354495) * inp_0_1_0; - result1 += V4(-0.036297154, 0.015417843, -0.12451414, -0.045905355) * inp_0_2_0; - result1 += V4(-0.0038541774, -0.030741142, -0.09108843, -0.13427265) * inp_0_0_1; - result1 += V4(-0.08127109, 0.047959723, 0.04351332, 0.16019344) * inp_0_1_1; - result1 += V4(0.034648877, -0.05474974, 0.030381644, 0.06842291) * inp_0_2_1; - result1 += V4(-0.017405175, -0.0568071, -0.007846174, 0.04576768) * inp_0_0_2; - result1 += V4(0.02778629, 0.016930273, -0.097900495, -0.04946804) * inp_0_1_2; - result1 += V4(0.011026718, 0.046053432, 0.10855338, -0.025562346) * inp_0_2_2; - result2 += V4(-0.020247115, 0.019655116, 0.056145806, -0.015038169) * inp_0_0_0; - result2 += V4(0.03074084, 0.08463694, -0.14912683, 0.0039739753) * inp_0_1_0; - result2 += V4(-0.036160152, -0.01721598, 0.041164864, -0.023051519) * inp_0_2_0; - result2 += V4(-0.07710085, -0.20408772, -0.05183754, -0.078683704) * inp_0_0_1; - result2 += V4(-0.33751717, 0.536409, 0.35220885, 0.09567589) * inp_0_1_1; - result2 += V4(0.0006857658, -0.33222365, -0.21403433, 0.10935543) * inp_0_2_1; - result2 += V4(0.12179155, -0.071092024, 0.00995113, 0.012694526) * inp_0_0_2; - result2 += V4(0.2607293, 0.005812557, -0.14984728, -0.1283972) * inp_0_1_2; - result2 += V4(0.049164157, -0.013817462, 0.105999656, 0.01731948) * inp_0_2_2; - result3 += V4(0.00070895697, 0.032472927, -0.013915315, -0.008157398) * inp_0_0_0; - result3 += V4(-0.041764982, 0.19321719, -0.0020123976, -0.022692956) * inp_0_1_0; - result3 += V4(0.04220856, 0.02334752, 0.036842328, 0.004516592) * inp_0_2_0; - result3 += V4(0.00755459, 0.107427396, -0.029543161, 0.01352713) * inp_0_0_1; - result3 += V4(-0.0198901, 0.241412, 0.020800307, 0.07489205) * inp_0_1_1; - result3 += V4(0.0557781, 0.18318829, -0.030219302, -0.04099845) * inp_0_2_1; - result3 += V4(0.022317365, 0.110984795, 0.023884825, -0.012716181) * inp_0_0_2; - result3 += V4(-0.095137745, 0.011959774, -0.002929218, -0.038076628) * inp_0_1_2; - result3 += V4(0.030417321, 0.08434808, -0.0023946634, 0.028739497) * inp_0_2_2; - result4 += V4(-0.00665234, 0.033866473, 0.0008190067, -0.010575895) * inp_0_0_0; - result4 += V4(0.020025166, -0.03722349, -0.057728786, -0.011012458) * inp_0_1_0; - result4 += V4(-0.01922099, 0.00394599, 0.06210346, 0.024697691) * inp_0_2_0; - result4 += V4(-0.011220356, -0.025387427, -0.006051429, -0.04012146) * inp_0_0_1; - result4 += V4(-0.05235222, 0.0395031, 0.10571346, 0.0034405796) * inp_0_1_1; - result4 += V4(0.06397409, -0.010557341, -0.09178192, 0.017660808) * inp_0_2_1; - result4 += V4(0.02457124, -0.0076957955, 0.014449284, 0.042195566) * inp_0_0_2; - result4 += V4(0.02437401, -0.008127155, -0.046804044, 0.030843958) * inp_0_1_2; - result4 += V4(-0.04345333, 0.011609933, 0.018816916, -0.05850401) * inp_0_2_2; - result5 += V4(-0.022652062, 0.00013649276, 0.02822522, 0.07449741) * inp_0_0_0; - result5 += V4(0.0036423136, -0.009622607, 0.019767707, -0.027863344) * inp_0_1_0; - result5 += V4(0.0047593894, 0.006462716, -0.042175345, -0.07397786) * inp_0_2_0; - result5 += V4(-0.020696703, -0.0044155456, -0.0014935521, -0.09446131) * inp_0_0_1; - result5 += V4(0.015226903, 0.020063741, -0.04530335, -0.008880305) * inp_0_1_1; - result5 += V4(0.017827976, -0.008952561, 0.070653915, 0.1327598) * inp_0_2_1; - result5 += V4(0.034625176, 0.006859942, -0.030471254, 0.023261195) * inp_0_0_2; - result5 += V4(0.010331661, -0.0090735, 0.028933162, 0.029970676) * inp_0_1_2; - result5 += V4(-0.043197736, -0.0015350957, -0.029467264, -0.055419024) * inp_0_2_2; - result6 += V4(-0.04285592, 0.032137595, 0.038754895, -0.02355173) * inp_0_0_0; - result6 += V4(-0.004131254, -0.02382099, 0.25016397, -0.12174118) * inp_0_1_0; - result6 += V4(0.0735344, -0.0069333985, 0.13412257, 0.009131789) * inp_0_2_0; - result6 += V4(-0.1240915, -0.03458629, -0.26730254, -0.016279092) * inp_0_0_1; - result6 += V4(0.18329464, 0.028393282, -0.36701146, -0.19068788) * inp_0_1_1; - result6 += V4(-0.024145238, 0.009975768, 0.19560878, 0.028512679) * inp_0_2_1; - result6 += V4(0.15766142, 0.0027180829, -0.05573896, 0.027096108) * inp_0_0_2; - result6 += V4(-0.16811287, -0.0067967945, -0.0039285277, 0.09254344) * inp_0_1_2; - result6 += V4(-0.04896356, -0.0015928819, -0.021381201, 0.11632843) * inp_0_2_2; - result7 += V4(0.010548004, -0.20011833, -0.04840889, 0.0013898173) * inp_0_0_0; - result7 += V4(0.0059627173, -0.20631418, -0.00069781486, 0.0459049) * inp_0_1_0; - result7 += V4(0.033312477, -0.025722466, -0.026746217, -0.04564476) * inp_0_2_0; - result7 += V4(-0.014621813, -0.21758953, 0.019623566, 0.047015008) * inp_0_0_1; - result7 += V4(-0.06413715, 0.51320696, 0.08983417, -0.046426684) * inp_0_1_1; - result7 += V4(0.0075579984, 0.12064985, 0.016194692, 0.013250015) * inp_0_2_1; - result7 += V4(-0.002768966, -0.040655017, -0.03014099, -0.049309503) * inp_0_0_2; - result7 += V4(0.04679788, 0.09697247, -0.021711005, 0.0033731493) * inp_0_1_2; - result7 += V4(-0.021387046, -0.0002126287, -0.009593423, 0.030040758) * inp_0_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(4, 2); - imageStore(out_image, output_base + ivec2(0, 0), result0); - imageStore(out_image, output_base + ivec2(1, 0), result1); - imageStore(out_image, output_base + ivec2(2, 0), result2); - imageStore(out_image, output_base + ivec2(3, 0), result3); - imageStore(out_image, output_base + ivec2(0, 1), result4); - imageStore(out_image, output_base + ivec2(1, 1), result5); - imageStore(out_image, output_base + ivec2(2, 1), result6); - imageStore(out_image, output_base + ivec2(3, 1), result7); -} - -//!DESC ArtCNN C4F32 (Conv2D-1-ReLU) -//!COMPUTE 48 32 12 16 -//!HOOK LUMA -//!BIND conv2d -//!SAVE conv2d_1 -//!WIDTH LUMA.w 4.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared V4 inp[8][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(4, 2); - inp[0][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(0, 0), 0)); - inp[1][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(1, 0), 0)); - inp[2][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(2, 0), 0)); - inp[3][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(3, 0), 0)); - inp[4][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(0, 1), 0)); - inp[5][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(1, 1), 0)); - inp[6][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(2, 1), 0)); - inp[7][y][x] = V4(conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(3, 1), 0)); - } - } - - barrier(); - V4 result0 = V4(-0.036708668, 0.009803089, 0.07100605, 0.031228224); - V4 result1 = V4(0.0083751995, -0.39129588, -0.0136721, -0.015397279); - V4 result2 = V4(0.0007296492, 0.028907454, 0.030560687, 0.03545163); - V4 result3 = V4(-0.017793126, 0.033940684, -0.022581689, -0.011070169); - V4 result4 = V4(0.015149839, -0.0011317565, -0.009786272, -1.2037389); - V4 result5 = V4(0.01574635, 0.011968867, 0.010605098, 0.0035551148); - V4 result6 = V4(0.00015080205, 0.023685815, 0.0069122887, -0.034166); - V4 result7 = V4(0.027082339, -0.009372878, -0.0019143005, 0.0038125508); - const V4 inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.029117657, 0.15278992, 0.035511564, -0.069105625, 0.006369743, 0.2259551, 0.12468564, 0.12450974, -0.044745825, -0.32993177, -0.06474103, 0.036587343, 0.0840745, 0.18598525, -0.11325942, -0.07834887) * inp_0_0_0; - result0 += M4(0.050953515, -0.055971455, -0.0131513085, -0.116995975, -0.050552785, -0.061043955, -0.0145839, 0.04261618, 0.09724737, 0.14906824, 0.0017026156, 0.072779305, -0.027736824, 0.09828163, 0.079543695, 0.094024375) * inp_0_1_0; - result0 += M4(-0.08117295, -0.036426485, -0.025784587, 0.16720803, -0.02682979, 0.007551605, 0.031716377, 0.060536437, -0.046471618, 0.05923041, 0.022100145, -0.12622148, 0.08883026, -0.067757666, 0.02177151, -0.024131637) * inp_0_2_0; - result0 += M4(0.008486673, 0.1920579, 0.022324793, -0.026947001, 0.15249395, 0.19629934, 0.039789997, -0.06733738, -0.05253199, 0.0010608191, 0.0067351395, 0.022407334, -0.10261732, 0.22493836, 0.1092603, -0.0200996) * inp_0_0_1; - result0 += M4(-0.06555002, -0.27245513, -0.015525575, 0.04365792, 0.045376386, -0.14303051, -0.01083897, -0.15582313, 0.08011162, -0.0445689, 0.049417928, -0.015426259, -0.07093686, 0.23037885, 0.003677679, 0.23484565) * inp_0_1_1; - result0 += M4(0.030999582, 0.04346085, 0.0051669446, 0.000204404, 0.07840567, 0.06261229, -0.10403258, -0.09781912, -0.03356733, 0.0314485, -0.0017596319, -0.0015214703, -0.2508654, -0.058963355, 0.17375277, -0.10000344) * inp_0_2_1; - result0 += M4(-0.022581747, -0.25256315, 0.033240687, 0.109959915, -0.012598234, -0.48140475, 0.11072217, 0.046623938, -0.0034096416, 0.38131836, -0.017777167, -0.08412503, -0.03156005, 0.21656287, -0.042210344, -0.14957134) * inp_0_0_2; - result0 += M4(0.013854406, 0.2346487, 0.005405472, -0.038428776, -0.16838437, 0.06394113, -0.06504332, 0.0275093, -0.06163706, -0.17177406, -0.0037234065, 0.016704468, 0.036147695, 0.09100768, 0.12141382, 0.040604927) * inp_0_1_2; - result0 += M4(0.06232801, -0.00014296349, -0.04961842, -0.065545365, -0.053641222, 0.05102975, 0.07639244, 0.031356677, 0.049776547, -0.058895964, -0.019280825, 0.06265533, 0.004528093, -0.01108221, -0.04274561, -0.06131042) * inp_0_2_2; - result1 += M4(-0.061955415, -0.0074608414, 0.008387431, -0.029722128, -0.066473834, -0.14350997, 0.038670573, 0.028662827, 0.019724203, 0.04887394, -0.10315431, 0.032167383, -0.17385277, 0.19776548, -0.007205856, 0.01334654) * inp_0_0_0; - result1 += M4(-0.04008445, 0.008087551, -0.021163763, 0.05022902, 0.2552994, 0.1629336, 0.025042403, 0.025843125, -0.08183508, 0.027813299, -0.19697353, 0.0040614954, -0.081016295, 0.15873921, 0.05058057, -0.0010450289) * inp_0_1_0; - result1 += M4(0.29363587, 0.0012574699, 0.022225322, -0.0693009, 0.076734886, -0.07974915, -0.0034639516, -0.049359225, -0.16797176, 0.027670532, 0.18292221, 0.020632438, -0.17925306, 0.100739986, -0.15428716, 0.1173548) * inp_0_2_0; - result1 += M4(0.18585098, -0.08856305, 0.0097429445, -0.02709298, -0.029271001, 0.02852805, -0.14683726, 0.034464955, 0.042308643, -0.03147208, 0.2897215, -0.025162503, 0.05712999, 0.18591258, -0.00059015455, 0.007894811) * inp_0_0_1; - result1 += M4(-0.029456716, 0.2050653, 0.016791, -0.21739303, -0.063161224, 0.10620588, 0.01751005, -0.04973402, -0.015750969, -0.06409288, -0.0777606, 0.17955518, -0.10619107, -0.04657716, 0.012679796, -0.043310706) * inp_0_1_1; - result1 += M4(-0.36948857, -0.047116503, -0.089184515, 0.3118221, -0.430664, 0.06475269, -0.23292147, 0.29643673, 0.29648998, -0.056595683, 0.018856967, -0.17669311, -0.22184189, 0.010021469, -0.13222241, -0.3424425) * inp_0_2_1; - result1 += M4(-0.093525164, 0.10046963, -0.028743194, 0.0090913605, 0.02045605, 0.107096896, 0.009170157, -0.008708529, -0.057404872, -0.11779025, -0.11144328, -0.04131108, 0.0133364275, 0.15096495, 0.05387508, -0.14186528) * inp_0_0_2; - result1 += M4(0.09217909, -0.22736537, 0.07116175, 0.17811428, 0.0064595966, -0.16636933, 0.30812424, 0.1505783, -0.0017814192, 0.07085839, -0.004884897, -0.12459457, -0.06574286, -0.003076085, -0.14239672, 0.18781582) * inp_0_1_2; - result1 += M4(0.04893608, 0.06613966, -0.0067619053, -0.187129, 0.18988952, -0.07255337, 0.04770958, -0.3365458, -0.035039615, 0.07832099, 0.0063732145, 0.09407837, 0.14316896, -0.05811109, 0.13013262, -0.12273439) * inp_0_2_2; - result2 += M4(0.05823393, 0.040896818, 0.10259213, -0.13545859, 0.025231943, 0.029138332, -0.014397809, 0.035174724, -0.17918754, -0.056359738, -0.10644024, 0.24783759, 0.18843524, 0.048254106, 0.04403621, -0.15066624) * inp_0_0_0; - result2 += M4(-0.03738047, -0.086819366, -0.112369925, 0.20637532, -0.09469994, 0.02192041, 0.053801175, 0.11037352, 0.1250041, 0.011857172, 0.0084201265, -0.1408437, -0.20776682, 0.079010904, 0.031063642, -0.020447314) * inp_0_1_0; - result2 += M4(-0.0015097833, -0.032189045, 0.027732585, -0.1252384, 0.04406319, 0.115871646, 0.070632, -0.20503758, -0.0062731546, 0.040348817, 0.0128217125, -0.04530808, 0.23256516, -0.06355108, 0.061075304, -0.048794743) * inp_0_2_0; - result2 += M4(0.13838938, 0.067288004, -0.09752138, -0.24783911, 0.05975331, 0.2029367, 0.022402102, -0.1117676, 0.10872649, -0.076139785, 0.064922504, 0.0937432, 0.020826072, -0.010752011, 0.037086133, -0.057829536) * inp_0_0_1; - result2 += M4(-0.044787407, 0.14157236, 0.22783619, -0.05750095, 0.16772036, 0.035153247, 0.07008345, -0.24945222, -0.21996894, -0.17815116, -0.060144454, 0.06366379, -0.19773977, -0.024750352, 0.11847824, 0.2983582) * inp_0_1_1; - result2 += M4(-0.11142352, -0.07467887, -0.1636651, 0.2340113, -0.07655404, -0.08695004, -0.09202517, 0.09586231, 0.06299052, 0.0739581, 0.058771692, -0.07210463, 0.24390805, -0.031492855, 0.3765972, -0.061904952) * inp_0_2_1; - result2 += M4(-0.09197055, -0.12641315, -0.0009929537, 0.3751517, -0.12102563, -0.3560746, -0.077692114, 0.46636716, 0.09947677, 0.2999262, 0.032379482, -0.38927096, 0.24767601, 0.13681959, 0.006760637, -0.13990667) * inp_0_0_2; - result2 += M4(0.09378135, 0.011033646, -0.12735608, -0.08940651, -0.09350715, 0.15414803, -0.2546008, -0.03308157, 0.06856281, -0.12216013, 0.20937388, 0.08595332, -0.17048416, 0.075281166, 0.11707726, 0.075662926) * inp_0_1_2; - result2 += M4(-0.01487069, 0.08873311, 0.12316278, -0.14859852, 0.09881245, -0.09266932, 0.14087382, -0.0044619814, -0.059305746, -0.03330552, -0.21049544, 0.09134987, 0.012854597, 0.08727, -0.017046794, -0.096979775) * inp_0_2_2; - result3 += M4(-0.01903734, -0.04141875, -0.093277976, 0.019640157, 0.07447134, -0.18525045, -0.24569201, -0.046986844, -0.07417373, 0.1497442, 0.061719663, -0.06998679, 0.048459854, -0.028750224, 0.12803786, -0.02030839) * inp_0_0_0; - result3 += M4(-0.039693106, 0.01158828, 0.119894415, 0.03793714, 0.054218654, 0.2715911, 0.054348577, 0.19871373, 0.1834479, -0.28203225, 0.040139433, -0.046791267, 0.047050178, -0.082257755, 0.11085956, 0.043953482) * inp_0_1_0; - result3 += M4(0.01945537, 0.09276553, 0.11205088, 0.16506399, -0.09077717, -0.1539875, 0.06659216, -0.108307615, -0.10124713, 0.031096438, -0.14926648, -0.11057436, -0.036617503, -0.15832724, 0.055009462, 0.07424042) * inp_0_2_0; - result3 += M4(0.08324787, 0.10798434, 0.07911015, 0.08326315, -0.13871695, 0.029166652, 0.16964644, 0.052657686, 0.0056859846, -0.087419584, -0.017614346, -0.10417239, -0.021369597, 0.092303984, 0.007682658, -0.014599172) * inp_0_0_1; - result3 += M4(-0.0947087, -0.061162297, -0.23867477, -0.10590701, 0.06594711, 0.09508775, -0.030074969, -0.041149653, -0.115990594, 0.1305272, 0.042969998, 0.08706499, -0.1174743, -0.019801153, -0.07939891, -0.059796486) * inp_0_1_1; - result3 += M4(0.036432013, -0.08475086, -0.056281473, -0.1174133, 0.016904566, -0.09513923, -0.05187326, -0.046877775, 0.017064892, 0.022405908, 0.09004965, 0.0067751785, -0.19974329, 0.075700946, -0.17897159, 0.013455055) * inp_0_2_1; - result3 += M4(-0.115330026, -0.04774222, 0.05173653, -0.22537693, 0.0678833, -0.07215173, -0.066759445, -0.29435718, 0.08570893, -0.0029652733, -0.02645297, 0.15495609, -0.07828734, -0.02754508, 0.1363753, 0.09623965) * inp_0_0_2; - result3 += M4(0.19748278, 0.08038828, 0.053277984, 0.10469429, 0.38683045, 0.066764995, 0.010804588, 0.1329057, -0.18634391, 0.015779724, -0.037211306, 0.0882103, -0.04872617, 0.03374351, -0.0024638637, -0.07852209) * inp_0_1_2; - result3 += M4(-0.06740114, -0.038398467, -0.00615466, 0.0014465569, -0.33904412, 0.018071927, 0.048203357, 0.053644437, 0.15413952, 0.044708353, 0.011485698, 0.046006598, 0.23145728, 0.06425962, 0.072863996, 0.032286424) * inp_0_2_2; - result4 += M4(-0.024016535, 0.019014806, 0.051369745, 0.07591172, -0.00022441645, 0.055820417, 0.07747362, -0.09528532, 0.017772954, -0.09189453, -0.12164637, -0.08554268, -0.16418299, 0.23239656, 0.14888592, -0.00080454553) * inp_0_0_0; - result4 += M4(-0.017231056, 0.009794432, -0.05533832, -0.05883874, 0.16928299, -0.30699167, -0.4542984, 0.035535183, -0.2253491, 0.2000138, 0.27542984, -0.04430685, 0.13443558, -0.08457535, 0.14233655, 0.10260671) * inp_0_1_0; - result4 += M4(0.14324425, -0.12442687, 0.0072970605, -0.015140436, 0.03562238, 0.15655662, -0.10168821, -0.04535325, -0.028123388, 0.056316692, 0.0050144973, 0.087802924, 0.022652913, 0.12678272, 0.02300762, 0.31237894) * inp_0_2_0; - result4 += M4(0.21419588, 0.027127882, -0.13539773, -0.14174183, -0.17397101, 0.040168945, 0.06544533, -0.010281511, -0.1574749, -0.014147739, 0.07083006, 0.07607683, 0.08161447, -0.092204876, -0.11170843, 0.003489766) * inp_0_0_1; - result4 += M4(-0.09245316, -0.016975626, 0.23408957, 0.1658086, 0.20071013, -0.11044899, 0.16290332, 0.057474125, 0.04612028, -0.050594907, -0.20566475, -0.0415586, -0.11360842, 0.1643801, -0.028887218, 0.20205614) * inp_0_1_1; - result4 += M4(-0.07863465, 0.0857191, -0.04307382, 0.04381525, -0.10341681, 0.042288233, 0.10517045, 0.016928157, 0.10332094, -0.065858394, -0.022224192, -0.06197895, 0.0050132, -0.03116755, -0.1646371, 0.47298467) * inp_0_2_1; - result4 += M4(-0.25254917, -0.02378411, 0.11109689, 0.09209409, -0.2911154, 0.10924462, 0.1464988, 0.08441656, 0.31665775, 0.012915524, -0.13378456, -0.022322325, 0.09815375, -0.06814098, 0.035321213, -0.075113714) * inp_0_0_2; - result4 += M4(0.22532119, 0.008861999, -0.15259159, -0.17074399, 0.37511373, -0.033234835, 0.10822253, -0.0075811315, -0.19475712, -0.023077546, 0.024239222, 0.095132835, -0.11968229, 0.022466177, -0.09667724, 0.044214573) * inp_0_1_2; - result4 += M4(-0.12820265, 0.017544815, -0.02343584, 0.04292099, -0.19672911, -0.022046972, -0.17840926, -0.048530165, 0.1279315, -0.00358011, 0.15181777, -0.029793201, 0.14620957, -0.09127029, 0.007170227, 0.1843006) * inp_0_2_2; - result5 += M4(-0.016395617, -0.016451696, 0.12339222, -0.04951499, -0.022202145, 0.23524804, 0.047031984, 0.040382314, 0.057996694, -0.10210428, 0.018417783, 0.011386578, 0.05073867, -0.046418246, -0.09922786, -0.03215044) * inp_0_0_0; - result5 += M4(-0.048540607, -0.20638369, 0.053651147, 0.0113698365, -0.13983555, -0.4571146, -0.024801789, 0.13051015, 0.1307028, 0.45851374, -0.018937927, -0.16538829, -0.16985914, 0.106658876, 0.03788532, -0.121699765) * inp_0_1_0; - result5 += M4(0.039437275, 0.16282336, -0.18642691, 0.024616202, 0.110127866, 0.34333184, -0.13612814, 0.06146586, -0.10927593, -0.37636045, 0.064992845, 0.062172886, 0.021849213, 0.05239257, 0.018309481, -0.033914097) * inp_0_2_0; - result5 += M4(0.03753844, -0.027555613, -0.055435866, 0.002633263, -0.05101454, -0.36626494, -0.2811788, 0.042501185, 0.076010585, 0.14673765, 0.23152916, 0.03530394, 0.0010333571, 0.053535532, -0.12501565, -0.067975946) * inp_0_0_1; - result5 += M4(-0.087831855, 0.25938675, 0.17731719, -0.052962273, 0.08487742, -0.062768154, 0.3654043, 0.08685005, -0.11227118, -0.10893518, -0.30329853, 0.02333357, -0.016496459, 0.08843028, -0.12682667, -0.040810026) * inp_0_1_1; - result5 += M4(0.12689659, -0.2703268, -0.08016987, -0.06429032, 0.0050466475, -0.34371153, -0.10426011, -0.053181563, -0.053249884, 0.35572645, 0.07401565, 0.065458536, -0.14140746, -0.06503886, 0.11991112, -0.08676428) * inp_0_2_1; - result5 += M4(-0.013359042, -0.082795516, -0.09041565, 0.021629494, 0.089711286, 0.4538, 0.38316938, -0.08850569, -0.114214465, -0.25306055, -0.17672779, -0.00955472, -0.00035556656, -0.030848127, -0.151991, -0.010489952) * inp_0_0_2; - result5 += M4(0.099413484, -0.20078152, -0.17051618, 0.055632614, 0.14439142, -0.3596457, -0.44518343, -0.30199566, -0.09968507, 0.37478063, 0.2773096, 0.09164125, -0.1446381, 0.085121855, 0.06351701, 0.04955615) * inp_0_1_2; - result5 += M4(-0.14828478, 0.3507335, 0.214353, 0.057855826, -0.21799572, 0.78426296, 0.17039578, -0.008077791, 0.23316975, -0.545482, -0.1532494, -0.097594336, 0.0777868, 0.030863712, 0.11128087, -0.017096974) * inp_0_2_2; - result6 += M4(-0.20957217, -0.108889244, -0.03890369, -0.10674102, 0.17676304, 0.08219358, -0.0051192176, -0.43986604, 0.0389291, 0.006508184, -0.05890772, -0.10185361, 0.004540674, 0.099010706, 0.06863881, 0.06044447) * inp_0_0_0; - result6 += M4(0.017170288, 0.003887947, 0.039859474, -0.062892675, -0.20792295, -0.14180836, -0.023282327, 0.060143486, 0.15639833, 0.078331746, 0.018817402, 0.37516558, -0.05969726, -0.0059866286, -0.017314922, -0.075184725) * inp_0_1_0; - result6 += M4(0.048123628, 0.039915044, 0.013850342, 0.13292845, 0.21778077, -0.11178467, 0.13628565, -0.033813965, -0.092053235, 0.018702244, 0.060767405, -0.08973021, 0.03184704, -0.028193474, -0.030922944, 0.23539121) * inp_0_2_0; - result6 += M4(0.2822058, 0.115022965, -0.0346225, 0.038459554, 0.09797564, 0.024244228, 0.019355156, 0.17557517, -0.30629095, 0.00025044603, 0.058719166, 0.27092934, 0.0027182612, -0.027483355, -0.020874329, 0.017920066) * inp_0_0_1; - result6 += M4(-0.011360204, 0.17791969, -0.009755946, 0.030387765, -0.09334685, 0.18975076, -0.03824666, 0.10107592, 0.018805014, -0.19998491, 0.04278764, -0.22315806, 0.040392164, -0.06051928, 0.14099665, -0.014130309) * inp_0_1_1; - result6 += M4(0.101197824, -0.21793586, 0.053858683, -0.04541862, 0.026120655, -0.057814326, 0.022933278, 0.22375308, 0.016481744, 0.14782867, -0.08418583, -0.044596013, -0.12455351, 0.14355354, -0.08554211, -0.014281464) * inp_0_2_1; - result6 += M4(-0.21440965, -0.043073688, 0.084217444, 0.23909481, -0.17217675, 0.079460315, -0.04518979, 0.11920478, 0.32160926, -0.042148326, -0.0036158373, -0.44447127, -0.024342012, 0.042997036, -0.055355284, 0.32711402) * inp_0_0_2; - result6 += M4(-0.003442748, -0.1219306, -0.004329449, -0.03143749, -0.13900343, -0.399716, 0.07718761, -0.070865355, 0.005409623, 0.1410372, -0.09660518, 0.1456919, 0.053750876, -0.092500396, -0.01419129, -0.06455394) * inp_0_1_2; - result6 += M4(-0.032126512, 0.13473941, -0.07480973, -0.17981249, -0.17400901, 0.24055961, -0.11601183, -0.0739797, -0.054067742, -0.11163765, 0.02505432, 0.09257788, 0.064943306, -0.058304552, -0.00021384307, -0.2541697) * inp_0_2_2; - result7 += M4(-0.047048252, 0.24521255, -0.17447047, -0.10128527, -0.00887792, 0.43303424, 0.0789298, -0.0064702597, -0.02514854, -0.35723528, 0.13395113, 0.19607803, -0.048769116, -0.06770387, -0.08176733, 0.06229839) * inp_0_0_0; - result7 += M4(0.026263328, -0.18660986, -0.032933265, 0.13196848, -0.050856147, -0.15367848, 0.0022883632, 0.023687594, 0.10283106, 0.14887585, 0.2189074, -0.07278549, 0.16965804, 0.03532702, -0.13433531, -0.033997826) * inp_0_1_0; - result7 += M4(0.007384207, -0.12053647, 0.2128867, 0.007810578, -0.03923929, -0.27602756, 0.40737197, 0.07060284, -0.045361634, 0.076715395, -0.38249263, -0.043011256, -0.11597638, 0.09833327, 0.027879132, -0.06466561) * inp_0_2_0; - result7 += M4(-0.031041512, -0.35479805, -0.0019659186, 0.1575544, -0.010053075, -0.3426591, -0.25966024, 0.25459036, 0.0059020454, 0.5738678, -0.06509489, -0.3149493, -0.09354883, 0.066042714, -0.12488268, 0.21131608) * inp_0_0_1; - result7 += M4(-0.03771986, -0.065066375, -0.002313822, -0.11556493, 0.060026176, 0.1617327, 0.0020216487, -0.14227511, -0.14487264, -0.16193086, -0.03152372, 0.077262886, -0.09474796, 0.018986855, 0.07132419, -0.032004002) * inp_0_1_1; - result7 += M4(0.120811984, 0.26266077, -0.18766715, -0.10192233, 0.051795058, 0.17162248, -0.008874975, -0.14940111, -0.060221728, -0.18406154, 0.107622534, 0.12004991, -0.13279128, -0.14157994, 0.10228982, 0.17766821) * inp_0_2_1; - result7 += M4(0.010800112, 0.093031384, 0.15084934, 0.10671804, -0.21333623, 0.36540008, -0.29476961, 0.06378276, 0.13848136, -0.39049214, -0.054321103, 0.04454577, 0.18297848, 0.09578358, 0.05502634, 0.30780932) * inp_0_0_2; - result7 += M4(0.07675103, 0.2939467, 0.07988393, -0.11759521, 0.4470031, 0.071780264, -0.044741243, -0.26137182, -0.15051824, -0.052524306, 0.020218736, 0.10006518, 0.073924355, -0.22962269, -0.093326226, 0.12425097) * inp_0_1_2; - result7 += M4(-0.14742742, -0.15355231, -0.032186724, 0.06428512, -0.18796642, -0.25129792, 0.17737943, 0.17182863, 0.1844518, 0.27246836, 0.008511766, -0.1048472, 0.23782457, 0.10383053, -0.16654943, -0.009263201) * inp_0_2_2; - const V4 inp_1_0_0 = inp[1][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_1_1_0 = inp[1][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_1_2_0 = inp[1][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_1_0_1 = inp[1][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_1_1_1 = inp[1][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_1_2_1 = inp[1][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_1_0_2 = inp[1][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_1_1_2 = inp[1][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_1_2_2 = inp[1][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.08096256, 0.04180209, 0.047589406, -0.016943827, 0.03833367, 0.19963205, 0.035213813, -0.01957273, 0.11472577, 0.34528744, 0.12119584, 0.029109823, -0.044831432, -0.11690301, -0.083536156, 0.049796168) * inp_1_0_0; - result0 += M4(-0.04426302, 0.056863382, 0.035050802, 0.045331508, -0.11102261, -0.07668563, -0.057224154, 0.08757198, -0.095014684, -0.038264636, 0.07332373, 0.07241354, -0.050493304, -0.08813244, 0.07446044, 0.04940999) * inp_1_1_0; - result0 += M4(0.0024679939, -0.0724803, -0.07159481, -0.004952453, 0.07194807, -0.047212992, -0.033114377, -0.0042991037, -0.04689992, 0.027952015, 0.04154045, -0.029711196, -0.023330396, -0.014066165, 0.110148884, -0.082868285) * inp_1_2_0; - result0 += M4(-0.04662972, 0.4483119, -0.025929091, -0.041685116, 0.12145929, -0.43463355, 0.06378116, 0.036234148, 0.12289981, -0.020276349, -0.13279456, 0.06446923, -0.05660108, 0.09763861, -0.024499178, 0.022550011) * inp_1_0_1; - result0 += M4(0.11462942, -0.28306222, -0.033383574, -0.13959754, -0.08610687, 0.23191078, -0.1020179, -0.04063562, -0.08868909, 0.14344387, -0.055666726, -0.14453787, -0.09087343, 0.26253852, 0.017428879, 0.14374474) * inp_1_1_1; - result0 += M4(-0.025103662, -0.067859046, 0.009572405, -0.0040561496, 0.005799467, 0.049857967, 0.09381887, -0.013773618, 0.041049365, -0.08607292, -0.04639899, -0.088787146, 0.046706766, -0.09381303, -0.05814853, 0.0037587031) * inp_1_2_1; - result0 += M4(0.050941885, -0.37864688, 0.067864925, 0.018061597, -0.11531048, 0.16728994, -0.1063411, -0.06145515, 0.30216286, -0.31703746, 0.11118676, 0.05978246, 0.19594988, -0.03003766, -0.04337391, 0.021723539) * inp_1_0_2; - result0 += M4(-0.13052818, 0.20642531, -0.056924842, 0.10652031, 0.1651324, -0.036674365, 0.11149037, -0.050649706, -0.13332662, -0.0008868196, -0.1315981, -0.013061784, 0.115875416, 0.01820971, -0.038712718, -0.14821257) * inp_1_1_2; - result0 += M4(-0.0054702153, 0.058303628, 0.060853258, 0.023235839, -0.11885025, -0.049245425, -0.031896032, 0.06256, -0.24813737, -0.054648176, 0.11357906, 0.03633438, -0.109835215, -0.008927392, 0.034938708, -0.03992753) * inp_1_2_2; - result1 += M4(-0.0022846805, -0.015504884, -0.048486747, 0.078874245, -0.027503457, -0.05025373, 0.069584824, 0.007972121, -0.024757117, -0.001593279, 0.07382975, -0.038199686, -0.0043118554, 0.012216795, 0.026328154, -0.02460263) * inp_1_0_0; - result1 += M4(-0.13611875, 0.024790661, -0.09175962, -0.012373407, -0.13271657, 0.10136629, -0.010288372, 0.11461759, -0.04524638, -0.06642123, 0.08267082, 0.12009126, 0.24608488, 0.15220979, 0.20465998, 0.030888278) * inp_1_1_0; - result1 += M4(0.07994651, -0.019469844, -0.021737799, -0.048776425, 0.07587032, -0.07255978, -0.05076812, -0.09677601, -0.12520422, -0.08758244, -0.032826543, -0.054411408, -0.28298274, -0.027692564, 0.058913153, -0.009247915) * inp_1_2_0; - result1 += M4(0.005378004, -0.00036100214, -0.06086769, 0.020460367, -0.041822966, -0.02639318, 0.009812995, 0.06496069, -0.20058092, 0.16607091, -0.19402309, 0.08912022, 0.054856796, -0.16646974, 0.16411075, -0.0057466053) * inp_1_0_1; - result1 += M4(-0.13238488, -0.07781853, 0.045202654, -0.011919901, 0.12926616, -0.09170597, -0.035137713, -0.039818913, -0.0065911002, -0.042814303, -0.023058174, -0.18569462, -0.07791525, 0.06163949, -0.26938593, -0.21777615) * inp_1_1_1; - result1 += M4(0.058000293, 0.03454881, 0.12231544, -0.0018523079, 0.032700073, 0.045095306, 0.043250456, 0.02198791, 0.23085262, 0.029840834, 0.14426371, -0.32909498, 0.07318428, -0.15189078, 0.0057368414, -0.22298563) * inp_1_2_1; - result1 += M4(-0.014151978, 0.083455026, -0.022387372, -0.03402437, -0.026381627, 0.060446903, 0.0047034565, -0.027787764, 0.040313598, 0.0017815795, -0.008843282, 0.025496349, -0.04218039, 0.029667493, -0.028691698, -0.021711836) * inp_1_0_2; - result1 += M4(0.15964578, -0.054704633, 0.11138554, 0.0644243, -0.003822274, -0.022329051, -0.067433044, 0.0970517, 0.1760096, 0.18094316, 0.005410189, 0.13652496, -0.009976311, 0.10832114, -0.1952679, 0.31071472) * inp_1_1_2; - result1 += M4(-0.03809375, -0.021552393, -0.030448494, -0.05707883, -0.012268654, 0.058015108, 0.024344882, -0.1913533, -0.06070308, -0.16811149, 0.012998018, 0.22336711, 0.056616332, -0.11362715, 0.059327338, 0.12159482) * inp_1_2_2; - result2 += M4(0.15086082, 0.032306015, -0.004618645, -0.15967074, 0.13484396, 0.025505273, 0.109789535, -0.16179046, 0.3059825, 0.022434866, 0.06305245, -0.3509039, -0.124507934, -0.08107376, -0.07590806, 0.111759655) * inp_1_0_0; - result2 += M4(-0.04774304, -0.046227824, -0.13357238, 0.24533686, -0.1797219, -0.075178854, -0.038574908, 0.24214585, -0.23423062, 0.028198522, 0.019022064, 0.22696163, -0.21089442, 0.065566726, 0.027139556, -0.18980321) * inp_1_1_0; - result2 += M4(-0.019373955, 0.037439357, 0.049214747, -0.06813124, 0.038629748, 0.10684366, 0.11918639, -0.1379494, 0.079139985, -0.026303006, 0.04985137, -0.05291354, -0.011244554, -0.08971184, -0.094008856, 0.07055901) * inp_1_2_0; - result2 += M4(-0.048496317, 0.22969875, -0.011047807, -0.037019145, -0.10710082, -0.18383162, -0.12504166, 0.2574788, -0.334555, 0.13921092, -0.11779456, 0.20921062, 0.15341778, 0.02968282, -0.0023549346, -0.12593406) * inp_1_0_1; - result2 += M4(-0.07885542, -0.022365225, 0.21551833, -0.20186801, 0.34402126, 0.23627844, -0.042503662, -0.04309354, 0.29471675, 0.021685109, 0.06441631, -0.25909233, 0.10524097, -0.044315357, -0.119107895, 0.35474756) * inp_1_1_1; - result2 += M4(0.021259557, -0.16385126, -0.14418101, 0.17625749, -0.047169026, -0.15605353, -0.10020056, 0.036744434, 0.13417014, 0.007812392, 0.028130062, -0.060307458, 0.21580435, 0.12606543, 0.34729907, -0.23425871) * inp_1_2_1; - result2 += M4(0.0050688493, -0.27417278, -0.05899007, 0.16065715, -0.066175915, 0.13419005, -0.09467017, -0.031535786, -0.014639603, -0.359303, -0.07314631, 0.44800404, -0.13314226, 0.075326085, -0.068911016, 0.07237387) * inp_1_0_2; - result2 += M4(-0.048198782, 0.22044359, -0.021384453, -0.01680231, -0.048550606, -0.11543949, 0.03564104, -0.16220544, -0.23028624, 0.08626588, -0.15320225, -0.14343601, -0.10547847, -0.29063004, 0.02580507, 0.018309115) * inp_1_1_2; - result2 += M4(0.101747744, -0.034904823, 0.11441985, -0.12293059, -0.012728868, -0.0017128023, 0.17762266, -0.051961463, 0.05306842, 0.012864686, 0.10563999, -0.017537476, 0.019105315, 0.15241176, -0.057200663, 0.013862015) * inp_1_2_2; - result3 += M4(-0.0034649554, -0.05517713, 0.052325483, -0.052134875, -0.0042453026, -0.17874192, -0.0096591115, -0.1987416, 0.01709072, -0.24278946, 0.0077327047, 0.028875919, 0.12533726, 0.11477245, 0.024140514, 0.055845823) * inp_1_0_0; - result3 += M4(-0.018518878, 0.02895204, -0.04888149, -0.028806178, -0.05216858, 0.15070598, 0.0017829809, 0.026329061, -0.14623247, 0.2934879, -0.2274205, -0.14424011, 0.050397042, 0.16382577, -0.13465117, 0.052444205) * inp_1_1_0; - result3 += M4(-0.03919352, -0.025833346, 0.018778356, -0.17302479, -0.062138785, 0.044809304, 0.031648297, -0.032624338, -0.08214198, -0.028670358, -0.1180317, 0.047529604, -0.05537199, -0.16677412, -0.047859523, -0.04128548) * inp_1_2_0; - result3 += M4(-0.014486037, -0.0027179052, 0.1776886, -0.06493362, -0.10454712, 0.17319418, -0.2973848, 0.06927402, -0.032996967, -0.113445275, 0.23450166, 0.011736676, 0.10967035, 0.01707243, 0.30268624, 0.24852625) * inp_1_0_1; - result3 += M4(-0.09388459, -0.046356853, -0.2481542, -0.19636112, 0.21725953, -0.20707554, 0.17008065, -0.004045886, 0.29840156, 0.10388305, 0.20044242, -0.16545399, 0.061977535, -0.117340155, 0.4138979, 0.19789638) * inp_1_1_1; - result3 += M4(0.11167971, 0.03284947, 0.051836424, 0.08206468, 0.013684, 0.0030262452, 0.024893977, -0.05947764, -0.13630734, -0.0074394974, 0.21448384, 0.33298156, -0.4543269, 0.05249151, -0.017523808, 0.20420818) * inp_1_2_1; - result3 += M4(0.008184537, 0.01577225, 0.051783327, 0.009982145, 0.08635803, 0.0050122906, 0.30173367, 0.094504714, -0.07488191, 0.020935627, 0.06837164, 0.03493985, -0.14187819, 0.023979383, -0.17781425, 0.10405735) * inp_1_0_2; - result3 += M4(0.25006393, -0.0071891267, 0.037272863, 0.10624298, -0.20820157, 0.037202083, -0.18559462, -0.04245256, 0.3031296, -0.01462773, -0.022867812, -0.60222894, -0.18605226, -0.02492287, -0.21141557, -0.69876176) * inp_1_1_2; - result3 += M4(-0.1988577, 0.07050194, -0.07504414, 0.3665597, 0.09148956, -0.027271751, -0.038524833, 0.2185067, -0.10564706, 0.02073069, -0.31813964, 0.40458742, 0.49203405, 0.028244311, -0.17014363, -0.347539) * inp_1_2_2; - result4 += M4(-0.08316828, 0.053106885, 0.046812125, 0.03351347, -0.08466107, 0.15114206, 0.124574386, -0.1229594, -0.0928625, 0.08578968, 0.10756846, -0.040176257, 0.024673045, -0.25365764, -0.14338766, -0.026245426) * inp_1_0_0; - result4 += M4(-0.09994341, 0.14417048, 0.019426854, 0.041845795, 0.13711163, -0.017983563, -0.04375732, 0.2063367, 0.17192237, -0.12753347, -0.31939104, 0.1272185, 0.09406784, -0.10270938, 0.02017384, -0.00041305204) * inp_1_1_0; - result4 += M4(-0.030049793, -0.14415613, -0.021168763, -0.07409334, -0.20462891, -0.02482551, -0.033263102, -0.047325023, 0.053315174, -0.033943314, 0.006956392, -0.10947827, 0.122600116, 0.21852052, 0.011655669, 0.0356463) * inp_1_2_0; - result4 += M4(0.10099925, 0.04830112, -0.024053598, -0.038032323, -0.054366335, -0.11224726, -0.05113664, 0.065573804, 0.008542836, -0.008918326, -0.0943605, 0.03746917, 0.292987, 0.084951416, -0.041484706, -0.0701604) * inp_1_0_1; - result4 += M4(-0.0105485665, -0.24782953, -0.018231884, 0.0989446, -0.13275175, -0.014699354, -0.06520113, -0.19813293, -0.115990736, -0.032673594, 0.00996811, -0.1322296, -0.117154896, 0.21044202, -0.12218293, -0.042813644) * inp_1_1_1; - result4 += M4(-0.043762717, 0.091900416, 0.013287365, -0.008165609, 0.13576598, 0.03451525, 0.12313882, 0.09827894, 0.14333759, 0.020637129, 0.09890145, 0.061638456, -0.0060272687, -0.054297138, -0.020315455, 0.16925468) * inp_1_2_1; - result4 += M4(-0.16727461, -0.0020541975, 0.03299088, 0.03231187, 0.13186768, -0.03283896, -0.082512565, 0.009359945, -0.22175162, 0.123705365, 0.033964474, -0.009698879, -0.028866947, -0.005825412, -0.0107153915, 0.104486205) * inp_1_0_2; - result4 += M4(0.19059967, 0.075393446, 0.062479522, -0.123801626, -0.06734463, -0.02040545, 0.080902226, 0.0025341988, -0.0032204152, -0.07434413, 0.21372262, -0.030470476, -0.45089158, -0.094156936, -0.047239542, -0.060917255) * inp_1_1_2; - result4 += M4(0.14809065, -0.028440202, -0.09962634, 0.029300831, 0.14829487, 0.04484249, -0.034887157, -0.050947104, 0.06379036, -0.015868036, -0.014792021, 0.09316301, 0.017871616, -0.02515582, 0.3906175, -0.04328142) * inp_1_2_2; - result5 += M4(0.00389255, -0.04027289, -0.039109707, -0.019303475, 0.06336468, -0.0017147515, -0.027065307, -0.14018688, -0.012509577, 0.08540738, -0.05859461, -0.008767114, -0.07866994, 0.07660538, -0.037435055, 0.18004394) * inp_1_0_0; - result5 += M4(0.08292889, 0.06991877, -0.0007983356, 0.034515414, -0.033907443, -0.13401464, -0.07145895, 0.17426214, -0.21503864, -0.27136508, 0.030325128, 0.106875576, 0.030742778, 0.11950032, -0.15491557, -0.017165089) * inp_1_1_0; - result5 += M4(-0.14989151, -0.025791585, 0.04757272, -0.0152222905, -0.10292573, 0.062176898, 0.08554288, -0.006870778, -0.022368887, 0.059957046, 0.03361345, 0.052584607, 0.07195246, -0.18891492, 0.13991182, -0.14539905) * inp_1_2_0; - result5 += M4(0.04166237, -0.07944963, -0.10894671, 0.023919629, -0.095306076, -0.09973817, -0.0071927016, 0.14053124, -0.15172562, -0.26436812, -0.34887064, 0.025376897, 0.12973452, -0.19155337, -0.041801516, -0.27737787) * inp_1_0_1; - result5 += M4(-0.22666156, 0.100712836, 0.041078713, 0.053156406, 0.056202415, 0.052114323, -0.033789676, -0.14106879, 0.17431225, 0.0110475095, 0.1194732, 0.123956844, 0.06864756, 0.14816207, -0.06833268, 0.046471335) * inp_1_1_1; - result5 += M4(0.20633067, -0.10962012, 0.07009694, 0.043039236, 0.06348579, 0.0068620727, 0.013874598, 0.08582729, 0.02041317, -0.16648169, 0.18298742, 0.06121014, -0.28198463, 0.28210637, -0.033472262, 0.165604) * inp_1_2_1; - result5 += M4(-0.001979989, 0.07628814, 0.08996112, -0.05058417, -0.004258094, 0.19931898, -0.10572738, -0.04377931, 0.08879731, 0.74418354, 0.28419814, -0.012633129, -0.01670911, 0.31078583, 0.0060170228, 0.30291796) * inp_1_0_2; - result5 += M4(0.09863956, -0.1374069, -0.17146845, -0.061152354, 0.0009830567, -0.0211499, 0.10641841, -0.025647804, 0.064248666, -0.69214195, -0.14774324, -0.18007734, -0.10396635, -0.13539377, 0.3340754, 0.034011997) * inp_1_1_2; - result5 += M4(-0.06618879, 0.17876686, 0.081888124, -0.03597273, 0.051799074, -0.06929468, 0.053889614, -0.04434507, 0.026779661, 0.63159543, -0.09993604, -0.2340178, 0.19166462, -0.4935299, -0.14096034, -0.22285411) * inp_1_2_2; - result6 += M4(0.10029398, -0.013562081, 0.044888582, 0.35567763, 0.011579127, 0.09195973, -0.06601921, 0.12442646, 0.36676884, 0.103153005, -0.02144279, 0.91327083, 0.31220976, 0.008032602, -0.06223424, 0.07165856) * inp_1_0_0; - result6 += M4(0.07502556, 0.034124535, 0.02346716, 0.01598075, 0.0047608283, -0.12501724, 0.17496133, -0.06825797, -0.19107866, -0.11661578, 0.07164642, -0.34262788, 0.036609072, 0.044645343, -0.092044115, 0.032272734) * inp_1_1_0; - result6 += M4(-0.2201858, 0.059883, -0.08034433, -0.016516246, 0.15899341, 0.044847738, -0.08685182, -0.09707172, -0.20660082, -0.011042709, -0.13014421, -0.2950558, -0.018764662, -0.067814216, 0.08898725, -0.0018973324) * inp_1_2_0; - result6 += M4(0.1012242, -0.019145118, -0.037507854, -0.20526609, -0.15280995, -0.15828241, 0.05070806, -0.071946375, 0.037849713, -0.111955464, 0.057741087, -0.7176886, -0.38428414, 0.15223713, 0.0060238843, -0.12733586) * inp_1_0_1; - result6 += M4(-0.09058203, 0.021052454, -0.06777193, -0.030806642, -0.036008555, 0.11318658, -0.1293444, 0.1897007, 0.10988782, 0.038982514, -0.18204565, -0.018386092, 0.025571946, -0.15723968, 0.08981159, -0.048279263) * inp_1_1_1; - result6 += M4(0.23780605, 0.02594144, 0.04917977, -0.20601283, -0.11882228, 0.0699409, 0.012838404, -0.20125198, -0.2331333, 0.15154861, 0.07445369, -0.057756428, -0.11171936, -0.003917072, -0.08339106, -0.044063564) * inp_1_2_1; - result6 += M4(-0.028063608, -0.04689453, -0.062464427, 0.0951412, 0.054315105, 0.011135786, 0.0069186217, -0.09750874, 0.010597955, 0.16921075, -0.074892044, 0.7234717, 0.19270958, -0.066581555, 0.007834056, -0.050778504) * inp_1_0_2; - result6 += M4(-0.12158969, -0.103106424, 0.105621584, -0.21744415, 0.10339824, -0.009595594, -0.023778997, -0.09143426, 0.02848619, -0.13521917, 0.03760168, -0.6962481, 0.021741306, 0.09575776, -0.07290629, -0.026869932) * inp_1_1_2; - result6 += M4(-0.08351028, 0.045483157, 0.015355923, 0.22853418, 0.030179434, -0.010827019, 0.03631279, 0.31743243, -0.088320106, -0.12329848, 0.15534449, 0.64336145, -0.04997866, -0.0005800751, 0.12299207, 0.17823696) * inp_1_2_2; - result7 += M4(-0.07379844, 0.16670889, 0.06741196, -0.088921495, -0.06322131, 0.26073328, 0.0048301406, 0.06761917, -0.04735726, 0.22830883, 0.26901078, -0.28921053, -0.020591864, -0.43030718, 0.18507713, 0.08362257) * inp_1_0_0; - result7 += M4(0.034578785, -0.011487818, 0.0013903879, -0.07343307, 0.0069027557, -0.14933768, 0.09982082, -0.17055938, -0.10352561, -0.1257225, -0.31925666, -0.0059563247, 0.038074527, 0.054338012, 0.11823388, -0.002163112) * inp_1_1_0; - result7 += M4(0.02305676, -0.012450865, 0.016639948, 0.048825216, 0.03498853, 0.09579643, -0.09169942, -0.0050666523, -0.0013992162, 0.34904507, 0.437179, -0.11407943, -0.053945366, 0.023796596, 0.15951598, -0.097889274) * inp_1_2_0; - result7 += M4(0.13494249, -0.1408936, -0.073675, 0.36083966, -0.109033585, -0.13255766, 0.10066496, -0.036401033, 0.0071375878, -0.5509165, -0.2058033, 0.6360851, 0.045717105, 0.045792226, -0.15389507, -0.10852623) * inp_1_0_1; - result7 += M4(-0.35691613, -0.23931155, 0.1749425, -0.19884679, 0.13561298, -0.023939202, -0.13051781, 0.24106443, 0.111109674, -0.03289949, 0.07434532, -0.08278456, 0.32599872, 0.48830122, -0.10305701, 0.20664984) * inp_1_1_1; - result7 += M4(0.0006448945, 0.1398243, 0.006249107, -0.05720629, -0.09061107, 0.10451869, -0.008794162, -0.13753392, -0.050120447, -0.25330824, 0.087351084, 0.14051726, 0.015635503, -0.07830007, -0.015119244, -0.06865933) * inp_1_2_1; - result7 += M4(-0.13013752, -0.02290075, -0.11903327, 0.118506484, 0.22230063, -0.2235159, -0.09035772, -0.13211559, -0.31459862, 0.50483006, -0.10575931, -0.13097861, -0.034176204, -0.017607445, -0.31060192, -0.19697471) * inp_1_0_2; - result7 += M4(0.417967, 0.17435423, -0.1871131, -0.025378618, -0.2059993, 0.19169231, -0.086244896, -0.079684414, 0.19754085, 0.10475587, -0.19400364, 0.07144125, -0.6851471, -0.14565007, 0.23408301, 0.2055535) * inp_1_1_2; - result7 += M4(-0.038166303, -0.0688925, 0.08753033, -0.07007982, 0.07910243, -0.21505354, 0.179397, 0.21214633, 0.23441713, -0.24579409, 0.034905147, -0.20713037, 0.3327321, 0.06548258, -0.028496496, -0.029076386) * inp_1_2_2; - const V4 inp_2_0_0 = inp[2][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_2_1_0 = inp[2][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_2_2_0 = inp[2][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_2_0_1 = inp[2][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_2_1_1 = inp[2][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_2_2_1 = inp[2][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_2_0_2 = inp[2][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_2_1_2 = inp[2][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_2_2_2 = inp[2][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.03154465, -0.0956665, 0.021043727, -0.13523753, 0.0020956704, -0.5293705, 0.022018004, 0.0031561519, 0.016450865, 0.40908632, -0.035778012, 0.2125391, -0.124839514, 0.24067535, -0.03596554, 0.08007441) * inp_2_0_0; - result0 += M4(0.043542054, -0.13744621, -0.1869014, 0.0075362334, -0.007837879, 0.10477315, 0.021154528, -0.023456967, -0.06830132, -0.07468466, 0.102145076, -0.11286336, -0.13877861, -0.05193457, 0.17462698, 0.06149841) * inp_2_1_0; - result0 += M4(0.023535395, 0.003279996, 0.091037154, -0.023218142, 0.08110676, 0.0024908585, 0.062272243, -0.009295396, -0.10612183, -0.030469926, -0.022082211, -0.0002599381, -0.10890391, -0.08892283, -0.06806389, 0.18445902) * inp_2_2_0; - result0 += M4(0.080099545, 0.36657012, 0.059455533, -0.028356764, -0.034985483, -1.4367487, 0.19555037, 0.20979057, 0.19064781, -1.1038369, -0.03968658, 0.057176255, 0.007294911, 0.365094, 0.0019397171, -0.15349285) * inp_2_0_1; - result0 += M4(0.23428579, -0.24594095, 0.13056172, -0.09509359, -0.30821168, 0.5175769, -0.103741355, 0.2317627, -0.27107373, 0.54413646, -0.053670004, 0.15040371, -0.078013286, 0.17803423, 0.003307077, 0.16863) * inp_2_1_1; - result0 += M4(-0.0020011482, -0.21181135, -0.02340503, 0.002462078, 0.029151613, 0.024718357, 0.23296967, -0.06495146, -0.03785623, -0.058721766, 0.014346224, -0.015790327, -0.05690997, 0.09495855, 0.06660702, 0.05379688) * inp_2_2_1; - result0 += M4(0.07770507, -0.036317423, 0.01672378, 0.052048113, -0.20987773, -0.21998906, -0.06500391, 0.07708689, -0.0150859, 0.23684135, -0.10684468, 0.06672833, 0.07568802, -0.003218365, -0.0006368861, -0.12565714) * inp_2_0_2; - result0 += M4(-0.33494782, -0.0022445363, -0.009475515, -0.054854102, 0.20743278, 0.18509097, -0.019840734, 0.08646593, 0.32180646, -0.0037859792, 0.04909923, -0.1989439, 0.12244635, 0.1069357, 0.047587834, 0.02456726) * inp_2_1_2; - result0 += M4(0.022787469, -0.021970231, -0.006666805, 0.11210963, -0.041226164, 0.06485999, -0.02242063, -0.012365461, -0.0742022, -0.016086446, 0.06071286, -0.12110863, 0.08140737, -0.0042678094, -0.043021318, 0.04011622) * inp_2_2_2; - result1 += M4(-0.25076178, 0.16761506, -0.086427994, -0.040363807, -0.090336025, -0.119488694, -0.15980901, 0.025692249, -0.106141694, -0.004760398, 0.1395097, 0.016164672, 0.05799711, -0.18554302, 0.11260976, 0.043334436) * inp_2_0_0; - result1 += M4(-0.8759296, 0.3084099, -0.54326606, 0.08378817, 0.08373202, -0.14382924, 0.21106115, 0.030672533, 0.038835052, -0.005833056, 0.28851983, -0.043314535, 0.3019318, -0.10490967, 0.24885407, 0.110122204) * inp_2_1_0; - result1 += M4(-0.8270079, -0.06698118, -0.22607683, 0.08485526, -0.3744199, 0.0028274553, -0.22029592, -0.12945583, 0.0846724, -0.058909748, -0.034236185, 0.004028914, 0.31447518, 0.060509253, -0.034251798, -0.063044004) * inp_2_2_0; - result1 += M4(0.058634065, -0.08838604, 0.05108656, -0.023941753, -0.018473295, 0.33916518, -0.05403904, -0.045321878, -0.16766416, 0.028827569, -0.10112104, -0.049219683, -0.05583049, 0.11664948, 0.010249134, 0.06006927) * inp_2_0_1; - result1 += M4(-0.028455101, -0.22584197, 0.05909999, 0.43182293, 0.35629016, -0.11472778, 0.048786864, 0.034139168, 0.28911662, -0.03627749, 0.02261082, -0.119758405, -0.1059994, -0.02886351, -0.09105299, -0.19661064) * inp_2_1_1; - result1 += M4(0.030527435, 0.033013448, -0.18525718, 0.48786482, -0.28318578, 0.001301845, -0.24052362, -0.7432109, 0.06653159, -0.029101508, 0.057742476, -0.3506016, -0.32313433, 0.03350552, -0.19028999, -0.51605946) * inp_2_2_1; - result1 += M4(0.027661344, 0.04426606, 0.032734692, 0.010185415, -0.03423487, -0.052496772, -0.13890994, 0.12096189, -0.057691164, 0.056535833, 0.08000709, -0.034009043, -0.054519605, 0.028232254, 0.12187209, 0.12539296) * inp_2_0_2; - result1 += M4(-0.01107534, 0.054169632, 0.041415796, -0.06602069, 0.10842705, -0.06630778, -0.023394113, 0.09994669, 0.012508867, 0.079008214, -0.3396021, 0.32007572, -0.008037633, 0.10729881, -0.07633678, 0.27005443) * inp_2_1_2; - result1 += M4(0.041113824, -0.019957311, 0.07825136, -0.21457328, 0.083908014, 0.034193218, -0.05345321, -0.46951285, -0.11329813, -0.0067783827, -0.07165031, 0.22935906, 0.07919023, 0.07236814, 0.06829928, -0.19382952) * inp_2_2_2; - result2 += M4(0.09074225, 0.01332703, 0.06987751, -0.20912164, -0.19345492, -0.20700961, -0.020838417, 0.008652081, -0.0050899405, 0.035665993, 0.24963646, -0.055561446, 0.06676485, 0.13964619, -0.10512182, -0.16806686) * inp_2_0_0; - result2 += M4(0.04574054, -0.048138227, -0.0139088575, -0.13307066, 0.052463878, -0.075205706, -0.18486781, 0.10137508, -0.060175084, -0.03125877, 0.042627964, -0.10451863, -0.20477945, -0.06882307, 0.0841638, 0.02828043) * inp_2_1_0; - result2 += M4(0.4069496, -0.05022249, 0.05865915, -0.4489605, 0.09816482, -0.0639038, 0.16364299, -0.19944012, 0.081778444, -0.050216086, 0.26648775, -0.10084912, -0.1035001, 0.0036749004, 0.05490478, 0.19448818) * inp_2_2_0; - result2 += M4(-0.009800778, -0.17126204, 0.09029225, -0.029957674, -0.458263, -0.37605152, -0.21248108, 0.30985, -0.28745833, -0.2716469, -0.3021082, 0.27452984, 0.01437965, 0.19210218, 0.11873729, -0.113663614) * inp_2_0_1; - result2 += M4(-0.28131834, -0.27894005, -0.038062237, -0.44522375, 0.3005744, 0.32606807, -0.31788653, 0.49999908, 0.49339706, 0.32865912, -0.3609027, 0.25815347, -0.11098305, 0.22565939, 0.08588488, 0.28697884) * inp_2_1_1; - result2 += M4(0.27931607, -0.3799079, -0.058149356, -0.19215254, 0.37610346, -0.06503428, 0.35845962, -0.004949024, 0.09848249, 0.058748275, 0.13953897, 0.026595285, -0.11710447, 0.10091361, 0.369839, -0.08274623) * inp_2_2_1; - result2 += M4(-0.09017187, -0.0818898, 0.00063810433, 0.083829015, -0.29345807, -0.26659584, -0.079341926, 0.10845378, -0.053355534, -0.027831096, -0.039115593, 0.15601929, 0.21777496, 0.03812597, -0.13797288, -0.040663622) * inp_2_0_2; - result2 += M4(-0.018954756, 0.16419424, -0.060580138, 0.019995743, 0.014700609, -0.033828612, -0.2376294, 0.048790455, -0.072904184, -0.2609877, -0.0057599423, -0.3388128, -0.05610225, -0.010058135, -0.0486664, 0.13062966) * inp_2_1_2; - result2 += M4(0.2695456, -0.006977503, -0.09342969, -0.06282823, 0.32234544, -0.12727281, 0.31844708, -0.15281455, -0.14795715, 0.10977205, -0.009793305, -0.012145891, 0.08575442, 0.041845962, 0.24632148, 0.1255644) * inp_2_2_2; - result3 += M4(-0.036011647, -0.46488807, -0.49817407, -0.07782913, 0.07004699, -0.124189384, -0.5033241, 0.00359113, -0.027220987, -0.33407757, 0.034547586, -0.009793757, -0.018418267, 0.114031106, 0.37393296, 0.0699528) * inp_2_0_0; - result3 += M4(0.036203142, -0.9579714, 0.16159707, 0.04515735, 0.17317896, 0.045333587, 0.014081256, 0.015711877, -0.055668566, 0.49521548, -0.12442274, -0.13398747, -0.0008945745, 0.50075036, -0.08500317, 0.179575) * inp_2_1_0; - result3 += M4(-0.026527843, -0.39931014, 0.079377994, -0.06651998, -0.0048224125, 0.07225929, -0.07261104, 0.025100727, 0.06882341, -0.06474924, -0.16274351, 0.06855881, -0.0079055885, 0.15699801, -0.013836364, 0.030550906) * inp_2_2_0; - result3 += M4(-0.060969975, 0.047792196, 0.20365794, 0.100621, 0.017096136, -0.04471932, -0.7601729, -0.109944835, -0.022035914, 0.17388023, -0.32817376, 0.24358363, 0.054569386, -0.18460704, 0.19625671, -0.052737817) * inp_2_0_1; - result3 += M4(-0.40603635, 0.12573187, -0.16097659, -0.13257164, 0.40857473, -0.027545668, 0.13297047, 0.19635256, 0.56998, -0.21110038, 0.39613485, 0.08284894, 0.0073393765, -0.041880555, 0.07617098, 0.060089257) * inp_2_1_1; - result3 += M4(0.29111272, -0.07036022, -0.14117722, -0.021021236, -0.21790129, 0.0006302942, -0.022745652, 0.20530169, -0.20306768, -0.016096521, 0.0076876646, 0.21144168, -0.3150521, -0.10067489, -0.29832447, 0.09571883) * inp_2_2_1; - result3 += M4(-0.10742828, -0.005877302, -0.2498221, -0.011229392, -0.040063396, -0.039564565, -0.19493246, 0.16828324, 0.11689816, -0.0035749993, 0.076973855, 0.15604721, 0.07967327, -0.06369766, 0.435233, -0.1115224) * inp_2_0_2; - result3 += M4(0.34587705, -0.016104145, -0.11156771, 0.14070626, -0.3568904, -0.06277554, -0.055529404, 0.06559959, -0.6712932, -0.018395266, 0.057903305, -0.62969816, 0.16021071, 0.14525272, -0.0264179, -0.25305125) * inp_2_1_2; - result3 += M4(-0.18315426, 0.008417, 0.077996105, 0.0077276006, 0.072975114, -0.07189453, -0.03580444, 0.16345474, 0.23116057, 0.016097825, -0.098539114, -0.03246878, 0.23882663, -0.18187782, -0.10007635, -0.14881988) * inp_2_2_2; - result4 += M4(-0.3773455, 0.3044581, 0.29712957, -0.0013323369, 0.030206202, 0.05737391, -0.045667384, 0.013636617, -0.022496173, 0.27832422, 0.1971793, 0.1364875, 0.19103137, -0.18251303, -0.10241279, -0.08263114) * inp_2_0_0; - result4 += M4(-0.60517997, 0.8770125, 0.7884181, 0.08310818, 0.23137872, -0.35373077, -0.05585405, 0.06585582, 0.29471624, -0.40471643, -0.31623864, 0.045989987, 0.35391536, -0.52233785, -0.48732367, -0.05567672) * inp_2_1_0; - result4 += M4(-0.06046788, 0.40914124, 0.34477213, 0.22755648, -0.019611599, -0.030595073, -0.25739592, 0.07208501, 0.02994505, 0.027725793, 0.025990551, -0.11405042, 0.034851924, -0.04811726, -0.31554854, -0.20572914) * inp_2_2_0; - result4 += M4(0.034393188, 0.016899757, 0.08214292, -0.044590876, -0.053902287, -0.11242146, -0.17332529, 0.014340718, 0.0097438395, -0.17018771, -0.23651572, -0.044424664, -0.033333287, 0.06568987, 0.12846227, -0.09741276) * inp_2_0_1; - result4 += M4(-0.050257146, -0.21611129, -0.12019788, -0.13622065, 0.043223042, 0.2350397, 0.18188708, -0.27030966, -0.22192664, 0.22637764, 0.05073403, -0.21427587, -0.010907763, 0.08558559, 0.11441003, 0.29026213) * inp_2_1_1; - result4 += M4(0.057017833, -0.013069361, -0.11996612, -0.3927448, 0.15120955, 0.016609367, -0.18109353, 0.2845267, 0.004232539, 0.06316595, 0.024299758, 0.13214286, -0.12069318, 0.2142632, 0.03512835, 0.35598904) * inp_2_2_1; - result4 += M4(-0.03594857, 0.062285606, 0.0163107, 0.0405961, -0.11920574, 0.066707216, 0.06236395, -0.026509762, 0.27136996, -0.0390108, -0.015227869, -0.016412798, -0.10969278, -0.024423467, 0.16316573, -0.07298789) * inp_2_0_2; - result4 += M4(0.23562188, 0.044560105, 0.09773547, -0.063286975, -0.15344597, 0.06683091, -0.0102048805, -0.0504315, -0.47751954, 0.058235355, 0.027918432, 0.004717865, -0.054093484, -0.089361385, -0.045218226, 0.0017254225) * inp_2_1_2; - result4 += M4(-0.04338286, 0.06997568, -0.084501505, 0.075695634, 0.040769294, 0.09006296, -0.09480122, 0.05621836, 0.082586706, -0.011771622, 0.24811922, 0.078844175, -0.20079234, -0.008954506, 0.02029966, 0.020598512) * inp_2_2_2; - result5 += M4(0.06615031, 0.13674054, -0.0061599007, -0.475657, 0.07104114, 0.30236092, 0.09632439, -0.13675171, 0.023557372, 0.061079286, -0.13717423, -0.07532593, -0.10733636, 0.013692334, -0.2020129, 0.23480679) * inp_2_0_0; - result5 += M4(0.1299763, 0.1354865, 0.07868401, -0.7381202, 0.10754866, 0.023279646, 0.0488147, -0.021492759, -0.13105999, -0.38288227, -0.10270062, 0.18508193, -0.10242623, -0.35909268, -0.16156974, 0.38565946) * inp_2_1_0; - result5 += M4(-0.11153858, 0.22623143, -0.015355316, -0.25197294, -0.08745063, 0.10865917, 0.09419926, 0.041238077, -0.032393996, -0.09071701, -0.039066482, -0.005085996, -0.13503188, 0.23340823, 0.00055999466, 0.16829804) * inp_2_2_0; - result5 += M4(0.013897534, -0.10446151, -0.18572326, 0.092789605, -0.108719096, 0.297815, 0.4603581, 0.023749266, -0.08469375, 0.29737195, -0.09197919, -0.16228981, 0.044159003, -0.20315382, -0.14434235, -0.11964328) * inp_2_0_1; - result5 += M4(-0.23812313, 0.061619267, 0.004051777, -0.119559616, 0.5269164, 0.19943814, 0.037570063, -0.15456922, 0.48547137, -0.16064228, 0.05294335, -0.08145468, -0.05767081, -0.013448999, 0.092503354, -0.0022523524) * inp_2_1_1; - result5 += M4(0.19120674, 0.070779964, -0.12787394, 0.0006789132, -0.45629892, -0.19107619, 0.40000656, -0.05530569, -0.22356553, 0.019804696, 0.061649993, -0.065709375, -0.28370884, -0.055279516, 0.122525714, -0.18349096) * inp_2_2_1; - result5 += M4(0.034801204, 0.38376933, 0.05075189, -0.020896709, 0.007612045, 0.12244755, 0.36305892, -0.06438789, -0.005254803, 0.9037037, -0.103673205, 0.023837784, -0.05980362, 0.033232003, -0.12750468, 0.08908715) * inp_2_0_2; - result5 += M4(-0.108996674, -0.03247478, 0.044907194, -0.16925234, 0.16979598, 0.09290798, -0.17307587, -0.11189108, -0.13588096, -0.45081466, 0.3541617, 0.24838123, -0.08096099, -0.13215111, -0.020228723, 0.06400154) * inp_2_1_2; - result5 += M4(0.04502033, 0.3388541, -0.011119034, -0.05582865, -0.19071579, 0.15845273, 0.18068087, -0.06874006, 0.12818566, -0.17265803, 0.039001428, -0.041135028, -0.12638903, 0.31222567, 0.12817587, 0.03863432) * inp_2_2_2; - result6 += M4(0.12535237, 0.16128656, 0.012257037, 0.5072537, 0.474235, -0.023110192, 0.004854057, -0.32518226, 0.04840865, 0.24645121, 0.016290309, 0.35236225, -0.1851947, -0.18803063, 0.11488687, -0.2935208) * inp_2_0_0; - result6 += M4(-0.11039266, 0.1990503, 0.005457742, 0.7234168, -0.27139714, 0.051469475, -0.13270281, -0.114306636, -0.116443686, -0.2213543, 0.02965059, -0.5186976, -0.09026682, -0.0049955957, 0.038761713, -0.3351621) * inp_2_1_0; - result6 += M4(-0.024087263, 0.0065704384, 0.02950973, 0.09184394, 0.37646043, 0.090364024, -0.18557669, -0.12370566, 0.21216111, 0.08713966, 0.0047848416, -0.040578034, 0.18503816, -0.070824996, 0.07940392, 0.018056292) * inp_2_2_0; - result6 += M4(0.12641564, -0.05331787, -0.013359369, 0.18659788, -0.38074347, 0.018997524, -0.06580435, -0.22962095, -0.3954866, -0.23529565, 0.058852088, -0.592121, 0.019417254, -0.011177594, 0.018564787, 0.42933965) * inp_2_0_1; - result6 += M4(-0.10074884, -0.22007845, -0.20557201, -0.10193457, 0.34668562, 0.19146363, 0.054021653, 0.13929166, 0.116943404, 0.07512127, -0.12894492, 0.10409709, -0.035078816, -0.02384937, 0.056941427, -0.057830345) * inp_2_1_1; - result6 += M4(-0.09682837, 0.05010856, -0.02649751, -0.05037102, -0.44362, 0.13704686, -0.11883685, 0.12874989, -0.41009912, -0.030686554, -0.1642983, -0.10129832, 0.14267789, 0.07165374, 0.05983421, -0.028896227) * inp_2_2_1; - result6 += M4(0.05773865, -0.056474797, -0.0605923, 0.102651335, 0.061524935, -0.06311559, 0.070287414, -0.2991093, 0.053434238, 0.08431922, 0.0048565893, 0.22364724, -0.018443352, 0.018030386, 0.07427566, 0.20103948) * inp_2_0_2; - result6 += M4(-0.02798426, -0.05491973, 0.10857305, -0.16335873, -0.11055059, 0.034641955, 0.0387216, -0.051430147, 0.31057742, 0.20427294, -0.021984756, 0.054321125, 0.0029001131, 0.055382386, 0.01110163, 0.07910353) * inp_2_1_2; - result6 += M4(-0.08308225, 0.045793362, -0.012307599, 0.11858065, -0.08697624, 0.12421658, -0.0019510558, 0.09136651, 0.170377, -0.10612674, 0.18454263, 0.44800404, -0.17669103, 0.035530165, -0.086349554, -0.11297801) * inp_2_2_2; - result7 += M4(-0.042086866, 0.19014172, 0.059951104, -0.017747523, -0.023245784, -0.058572963, -0.01935395, -0.28061572, -0.04641117, -0.074789815, 0.10086179, -0.27462193, -0.05126845, 0.0997263, -0.13695046, -0.06341165) * inp_2_0_0; - result7 += M4(-0.024611864, 0.047070205, -0.0801739, -0.11720885, 0.20279415, 0.117161155, 0.0017271523, -0.1356192, -0.041003402, -0.053162206, -0.25817028, 0.08645843, -0.08373374, -0.08339817, 0.08236495, 0.09397674) * inp_2_1_0; - result7 += M4(-0.1476463, -0.07924366, -0.31816182, -0.01764836, -0.0074714883, 0.14375705, 0.21794951, -0.073595256, -0.040115327, 0.21553563, 0.032317642, 0.043551255, 0.003655688, -0.016836293, 0.6104716, -0.15098554) * inp_2_2_0; - result7 += M4(-0.24591747, 0.3444126, -0.080876514, 0.2511106, 0.009919989, -0.27841604, 0.08382868, -0.53031766, -0.23741147, -0.28660992, 0.041793406, -0.44729385, 0.16847767, -0.12881774, -0.20410554, 0.36861005) * inp_2_0_1; - result7 += M4(-0.6715821, -0.26425713, 0.05453925, -0.20276855, 0.21779796, 0.29211137, -0.10319727, 0.13555385, 0.6683212, 0.34384593, -0.110293955, 0.24846786, 0.35305634, 0.36147222, -0.12480785, 0.1642003) * inp_2_1_1; - result7 += M4(-0.2398933, -0.008845569, -0.034704775, -0.040858887, 0.075342394, -0.17501347, 0.008340952, 0.16252932, -0.02803441, -0.061410967, -0.117535874, 0.3172269, 0.20014368, 0.04861446, 0.3317885, -0.08526066) * inp_2_2_1; - result7 += M4(0.08415544, -0.2548878, -0.22510462, 0.15565392, -0.070160575, 0.13508551, 0.49545553, -0.54122627, 0.20598005, 0.016785325, 0.21973525, -0.4661196, -0.32279223, 0.10800276, -0.25062168, 0.36699867) * inp_2_0_2; - result7 += M4(0.24789473, 0.118871965, 0.0904531, -0.14035594, -0.115976766, -0.19920519, 0.06994047, -0.22183774, -0.72244006, -0.025762808, 0.18851641, 0.27299973, 0.06818852, -0.23327433, -0.3615461, -0.06061063) * inp_2_1_2; - result7 += M4(0.16042693, -0.118321426, 0.023491193, -0.030947248, -0.05124864, -0.29059947, 0.06613229, -0.015492412, 0.22812392, -0.058129426, 0.010744925, 0.07070031, -0.06581924, -0.20564455, -0.05265374, 0.15516257) * inp_2_2_2; - const V4 inp_3_0_0 = inp[3][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_3_1_0 = inp[3][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_3_2_0 = inp[3][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_3_0_1 = inp[3][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_3_1_1 = inp[3][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_3_2_1 = inp[3][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_3_0_2 = inp[3][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_3_1_2 = inp[3][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_3_2_2 = inp[3][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.16674326, 0.31310734, -0.09377829, 0.059915084, -0.022170205, 0.0149844615, 0.017458765, -0.016287562, -0.046109986, -0.013650972, 0.032708067, 0.03201053, -0.013215273, 0.21652113, 0.03232205, -0.06110024) * inp_3_0_0; - result0 += M4(-0.12967514, -0.23332447, 0.17515457, -0.028937515, -0.10997066, -0.081854984, 0.058266636, -0.12051299, 0.007868142, -0.017001681, 0.03834131, -0.05263059, -0.03967318, -0.07494821, -0.04789688, 0.009852837) * inp_3_1_0; - result0 += M4(-0.014543991, -0.06176636, -0.0392497, 0.12610306, 0.0134866955, 0.048487816, -0.023593618, -0.024513502, 0.044688504, -0.009900089, -0.035166573, -0.011512162, 0.043029126, -0.047882434, -0.0060339677, 0.08326458) * inp_3_2_0; - result0 += M4(0.09974761, 0.6025551, -0.0737876, -0.019796625, 0.081250615, -0.043327887, -0.05669983, -0.048323546, -0.0027485625, -0.033359386, -0.0445251, -0.086456135, 0.056611177, -0.36715162, -0.0241707, 0.062049445) * inp_3_0_1; - result0 += M4(-0.07393207, -0.30158794, -0.009181898, -0.06829566, -0.08842065, -0.013170505, -0.0962516, 0.04120042, 0.07789792, 0.061665162, 0.01998883, 0.107018396, 0.004418583, 0.12596878, 0.03375566, 0.046630777) * inp_3_1_1; - result0 += M4(0.10967431, -0.18139964, -0.09739124, 0.032478552, 0.12845828, 0.108625926, -0.039953228, 0.011235097, 0.02208135, -0.030524088, 0.03006766, -0.04779797, -0.059798878, 0.12742236, -0.004614113, -0.049275067) * inp_3_2_1; - result0 += M4(0.0578433, 0.25022057, -0.061405152, -0.1800687, -0.028762763, -0.11808945, 0.028283836, 0.036724437, -0.0012840148, 0.032870322, -0.028420018, -0.02380514, 0.015002305, -0.051453024, -0.05023338, 0.040562052) * inp_3_0_2; - result0 += M4(0.019120965, -0.16263863, 0.11067054, -0.042239904, -0.025984518, -0.045367863, -0.07256968, -0.012212268, -0.06046941, 0.056707375, -0.013425433, 0.04187588, 0.0020944797, 0.096577086, 0.01739774, -0.11910698) * inp_3_1_2; - result0 += M4(0.040131077, -0.040760536, -0.051826578, -0.011592926, 0.046246305, 0.105373606, 0.04111735, 0.052750017, -0.039655868, -0.051689044, 0.008320057, 0.031464066, 0.016520347, -0.04485837, 0.023151385, 0.024683164) * inp_3_2_2; - result1 += M4(0.0039213393, -0.18470696, 0.06861235, -0.046029024, -0.0319931, -0.024845822, -0.027930174, -0.03179947, -0.073327914, 0.05610765, 0.030254561, -0.0027962283, 0.012370492, -0.14005849, 0.06761605, -0.009976497) * inp_3_0_0; - result1 += M4(0.029108727, -0.061175566, 0.012436904, 0.09875218, -0.07750154, 0.051734533, 0.06845497, -0.17571582, 0.00019904447, 0.004599936, -0.00047033408, -0.027705207, 0.010479908, 0.16137493, 0.1110169, -0.04656978) * inp_3_1_0; - result1 += M4(0.24896733, 0.10011306, -0.05059729, -0.06855861, 0.023825679, -2.735573e-05, 0.00474387, -0.021555498, -0.124813244, -0.0660241, -0.10851633, 0.065896004, 0.10407381, -0.089686155, -0.02753582, 0.025669456) * inp_3_2_0; - result1 += M4(-0.08262413, -0.0984216, 0.09533353, -0.10536523, 0.05623154, 0.10872219, 0.018762402, 0.13762818, 0.03625098, -0.033150606, -0.00909346, 0.021375401, -0.039438445, -0.0025450515, -0.04540836, -0.04522477) * inp_3_0_1; - result1 += M4(-0.16126199, 0.03845154, -0.021977486, 0.059687328, 0.083635926, 0.103366874, 0.0014807864, -0.12167495, -0.021023858, -0.06796026, -0.007327892, 0.09825249, 0.1869009, -0.0011027849, -0.0054216925, -0.09112884) * inp_3_1_1; - result1 += M4(0.100989155, 0.08210521, 0.016673533, 0.001790244, 0.08460508, -0.036575034, 0.007798867, 0.041810103, 0.12144237, 0.093101576, 0.046178292, -0.040026303, -0.23199019, 0.124222524, -0.11808327, 0.13790852) * inp_3_2_1; - result1 += M4(-0.042113204, 0.02622186, 0.026463084, -0.0310007, 0.006774143, 0.022108914, 0.045097258, 0.12347508, 0.016572041, 0.0059779077, 0.025011744, 0.01222772, 0.0010371406, 0.13064498, 0.01431251, 0.07691256) * inp_3_0_2; - result1 += M4(-0.086996175, 0.054410893, 0.033249382, 0.0791174, -0.072059825, 0.05493776, 0.0009812152, 0.04405779, 0.04920289, 0.08595148, 0.039874334, -0.06784911, -0.1378351, -0.14458123, -0.051677864, 0.18312818) * inp_3_1_2; - result1 += M4(-0.00952919, 0.02230773, -0.056655988, 0.096243516, -0.07377731, -0.0016165307, 0.0011361938, 0.064129084, -0.039799005, -0.006863486, -0.027945109, -0.053782634, 0.1162535, 5.6958932e-05, 0.03610375, -0.24247979) * inp_3_2_2; - result2 += M4(0.11579744, 0.08803068, 0.11419634, -0.52727413, 0.040436607, -0.0025335045, -0.023436738, -0.09671671, -0.015936308, 0.043479986, 0.027665973, 0.08362395, 0.09210985, 0.021682445, 0.13563402, -0.09816925) * inp_3_0_0; - result2 += M4(-0.12328052, -0.08547313, -0.04240618, 0.24669765, -0.01920227, 0.047558624, 0.034189202, 0.00092569436, -0.01420635, -0.031099817, -0.009746287, -0.01647771, -0.055207133, -0.038889844, 0.006561395, 0.13051866) * inp_3_1_0; - result2 += M4(-0.17810468, -0.0747359, -0.034358922, 0.21784683, -0.09250302, -0.034065757, -0.06414985, -0.06904927, 0.04778639, -0.003866705, 0.0073636775, -0.025610851, -0.020709194, -0.008238754, 0.022707427, -0.16763328) * inp_3_2_0; - result2 += M4(0.15095721, 0.36084583, 0.095722385, -0.16717058, 0.11659061, 0.0767266, 0.030144379, -0.15617163, -0.07836652, -0.02857204, -0.05033249, -0.10633955, -0.086682186, -0.037872598, -0.14605291, -0.071392335) * inp_3_0_1; - result2 += M4(-0.16452277, -0.048289526, 0.10224326, -0.08457047, 0.027761737, 0.1675432, 0.0109783355, 0.15169996, 0.02566027, 0.017163238, -0.025067458, 0.17369525, 0.33646193, 0.14321065, -0.028694756, -0.017526448) * inp_3_1_1; - result2 += M4(-0.08342412, 0.00031072416, -0.10700439, 0.015976246, -0.15436873, 0.06426293, -0.016801486, 0.08940011, 0.032639813, -0.056828935, 0.05294502, -0.055422504, -0.11857196, -0.034496307, -0.000842342, 0.19925985) * inp_3_2_1; - result2 += M4(0.3552693, 0.18769541, -0.047198217, -0.28835583, 0.02587612, -0.142933, -0.034149, -0.07739984, 0.018398095, 0.021752646, -0.03642957, 0.027268061, -0.085858144, -0.09911978, 0.047507133, 0.23160392) * inp_3_0_2; - result2 += M4(-0.042667374, -0.02312429, 0.14078811, 0.09464964, 0.017112348, -0.101256095, 0.025606593, 0.01645692, -0.0057635033, 0.027974173, 0.014912687, -0.0717966, -0.08031286, 0.021859895, -0.18749009, -0.1205234) * inp_3_1_2; - result2 += M4(-0.18666947, -0.21950583, -0.22242346, 0.35420656, 0.015551341, -0.06467714, -0.057517417, -0.046379846, 0.02498008, 0.0058330176, 0.026877608, -0.019567173, 0.024362128, 0.039020207, 0.16398425, -0.0578929) * inp_3_2_2; - result3 += M4(-0.01794258, -0.0062994626, 0.37479237, -0.029089708, 0.045304827, -0.12631382, -0.07862214, -0.028143506, 0.028300738, 0.032707322, -0.04936682, 0.0016720383, 0.017383397, -0.1440359, -0.35217667, -0.020342853) * inp_3_0_0; - result3 += M4(-0.11716048, 0.12669052, -0.16813691, 0.14250039, -0.078851916, 0.063811705, -0.05613344, -0.043926556, -0.0383164, -0.058070146, -0.0028588576, 0.068508334, -0.113366105, 0.20045663, 0.18665597, 0.058737054) * inp_3_1_0; - result3 += M4(0.02115149, 0.08718352, -0.1732887, 0.006390707, 0.057031494, 0.053685956, -0.03647186, 0.023670634, 0.017506354, -0.050118607, -0.024977569, -0.12237554, 0.05350384, 0.01696095, 0.19703735, 0.13264433) * inp_3_2_0; - result3 += M4(-0.052796166, -0.028347496, 0.2931782, 0.07022605, -0.010425403, 0.050049666, 0.054275285, -0.008699057, -0.0018968785, -0.006403878, 0.018886097, -0.11451953, -0.029628038, 0.12045638, -0.001259931, 0.17260647) * inp_3_0_1; - result3 += M4(0.010296541, -0.04331138, -0.09067834, 0.0019246971, -0.027003359, 0.12260892, 0.10194609, 0.058974877, 0.022411183, 0.08760797, 0.035527382, -0.09148418, 0.12016587, -0.069075614, 0.015118672, -0.002222802) * inp_3_1_1; - result3 += M4(0.05947409, -0.13030241, -0.06652532, 0.04417986, -0.036116846, -0.0040586446, 0.12094919, -0.0063132015, -0.014845602, -0.027670521, 0.044739284, 0.06285985, 0.02935337, -0.06062077, -0.07382576, -0.10929992) * inp_3_2_1; - result3 += M4(0.051659934, 0.02979812, 0.30330074, -0.11465744, 0.036208857, -0.137012, 0.032677967, 0.02943689, -0.0006329081, -0.04421495, 0.0027349116, 0.188165, -0.018736426, 0.016555816, 0.15216827, -0.19676308) * inp_3_0_2; - result3 += M4(0.09819926, -0.02558177, -0.07220303, -0.2266974, 0.08066757, -0.0481222, -0.07397224, 0.09638087, 0.002517221, -0.026042767, -0.036083844, 0.06050339, 0.017133819, -0.11239503, -0.08984481, 0.048593532) * inp_3_1_2; - result3 += M4(-0.066730924, -0.027106773, -0.14685962, 0.035340462, -0.018908639, -0.0057921493, 0.029825317, 0.006722354, -0.021156609, 0.06782227, -0.013464919, -0.013594539, -0.07937971, 0.009628459, -0.0505148, -0.11004945) * inp_3_2_2; - result4 += M4(0.1001855, -0.064388335, 0.038193103, -0.10685081, -0.048117988, 0.0041580033, 0.056381803, 0.11752895, 0.033978917, 0.008626017, 0.05369912, -0.008442106, 0.06731719, 0.08752707, 0.093723245, 0.0038961223) * inp_3_0_0; - result4 += M4(-0.02602357, -0.06732679, -0.2362919, -0.005290959, 0.036184877, -0.1072355, -0.05839933, 0.219626, 0.013275238, 0.0017156566, 0.031650532, 0.004934201, 0.119968094, -0.2117173, -0.19396576, 0.090888396) * inp_3_1_0; - result4 += M4(0.078956544, -0.0015369982, 0.11037988, -0.10162014, -0.084920034, -0.010681362, -0.041802876, 0.17350335, -0.16864298, 0.10200461, -0.022548819, -0.051761046, 0.012701397, 0.01217605, 0.004363343, -0.006322811) * inp_3_2_0; - result4 += M4(-0.13557366, 0.053427406, 0.13672848, 0.060399093, -0.010456643, 5.0210576e-05, -0.022489049, 0.0045384904, 0.0035644548, -0.047995646, -0.011841122, 0.027075203, -0.03830223, -0.031618174, -0.11760927, -0.008406711) * inp_3_0_1; - result4 += M4(0.017216308, -0.024313478, 0.008680811, 0.023500858, 0.0971515, 0.026911978, -0.05881653, 0.17119999, -0.07813045, 0.058356874, -0.013860081, 0.11915417, -0.016231837, 0.11430733, 0.16180871, -0.052913524) * inp_3_1_1; - result4 += M4(-0.1708107, 0.12235223, 0.11658219, 0.022944473, 0.011075547, -0.02467466, 0.028355172, 0.17107481, 0.030871274, -0.09651633, -0.033420768, -0.06171532, 0.03524303, 0.010179916, 0.071153425, -0.01328799) * inp_3_2_1; - result4 += M4(0.19914497, -0.06988047, -0.12145579, 0.009178128, -0.036017753, -0.0017378872, 0.055989157, -0.075171605, -0.00024560024, -0.02618073, 0.0059218374, 0.020115001, -0.12061145, -0.0001548445, 0.1241499, -0.017204616) * inp_3_0_2; - result4 += M4(0.05940729, 0.038378414, -0.048371736, 0.050489176, 0.063024536, 0.022872504, 0.058621526, 0.15545534, 0.1278595, -0.00019467589, -0.020547498, -0.15200448, 0.114678584, -0.008592146, -0.0729327, -0.016628904) * inp_3_1_2; - result4 += M4(-0.015180673, 0.016013095, 0.036032673, -0.036862083, 0.007600634, 0.045312367, 0.07135753, 0.05286581, 0.049594987, 0.0029962284, 0.012408725, 0.065710746, -0.18257818, 0.0378438, -0.09485183, 0.0635741) * inp_3_2_2; - result5 += M4(-0.10917871, -0.041906063, -0.20665371, -0.19723488, -0.024537258, -0.07342854, -0.09604337, -0.08692626, 0.013889798, 0.08942737, 0.04745891, 0.022988325, -0.0077241035, 0.05034818, 0.06635041, -0.08754597) * inp_3_0_0; - result5 += M4(-0.12795049, -0.27897745, 0.15018886, 0.13204178, 0.03566289, -0.005502308, 0.108349755, -0.06336829, 0.044133816, -0.06350236, -0.06726836, -0.011660791, -0.16130134, -0.31905386, 0.017890494, 0.06311571) * inp_3_1_0; - result5 += M4(0.09401206, -0.034617215, -0.048061408, 0.038046375, -0.106764056, -0.047289293, -0.08551923, -0.018549211, -0.05452726, -0.020307211, 0.05629545, -0.039343614, 0.14308886, 0.26552865, -0.12889092, 0.067831844) * inp_3_2_0; - result5 += M4(0.109973244, -0.0923715, -0.28832042, 0.08220614, 0.010514151, -0.020461729, -0.002067673, 0.10717572, -0.035251155, -0.0535279, -0.02231335, -0.041391302, -0.14650793, -0.08437027, -0.110747024, 0.11577347) * inp_3_0_1; - result5 += M4(-0.13299681, -0.1567862, 0.08262319, 0.01304105, 0.14021827, 0.11144083, 0.17187643, 0.026252525, 0.05705363, 0.031361382, -0.0068868203, 0.06982033, 0.16246481, 0.07790719, 0.13369952, -0.02729583) * inp_3_1_1; - result5 += M4(0.21344122, 0.017361676, 0.05857192, -0.102821015, -0.073363245, -0.026291106, 0.021013413, 0.24158232, -0.0019610717, 0.05257403, 0.00065535755, 0.031876512, 0.0026816058, -0.26129517, -0.041806966, -0.19814716) * inp_3_2_1; - result5 += M4(-0.054015454, 0.73969567, -0.16328393, -0.0006044086, 0.007328409, -0.016211398, -0.061762504, -0.023620164, 0.005211044, 0.036550656, -0.056908693, -0.00031647665, 0.09445072, 0.16858114, -0.01125692, -0.039849024) * inp_3_0_2; - result5 += M4(-0.05571609, -0.22409184, 0.16380434, 0.050606772, 0.058667034, 0.023701522, -0.09890404, -0.14629216, -0.038705323, -0.07115732, 0.04838665, -0.037200667, 0.059143767, -0.26174942, -0.03222182, 0.012719752) * inp_3_1_2; - result5 += M4(0.104354605, 0.008443349, 0.06561575, 0.016566938, -0.06737627, 0.018966986, -0.058037832, -0.09999704, 0.016671738, 0.041601077, 0.008692034, -0.002348055, -0.13987541, 0.34261182, 0.11968812, 0.10489676) * inp_3_2_2; - result6 += M4(-0.39049557, 0.19273794, 0.047716085, 0.17533085, 0.011292866, -0.00760613, -0.0046310667, 0.013525921, 0.08649871, 0.04608617, 0.038571406, 0.17317806, -0.07248643, 0.013768493, -0.03719717, -0.27310973) * inp_3_0_0; - result6 += M4(-0.070490345, -0.031469543, 0.016823594, -0.18266013, -0.029960942, 0.041280624, -0.00043852604, -0.08200757, -0.1659811, 0.031426877, -0.028497554, -0.08193076, -0.21605068, -0.09160411, -0.018671421, -0.015470811) * inp_3_1_0; - result6 += M4(0.029353319, -0.0461757, -0.014357062, -0.19294336, 0.0474211, 0.06143862, -0.0789209, -0.0069793165, 0.12396269, -0.033045627, 0.0053061745, -0.020843863, 0.43466306, -0.03422492, 0.03687173, -0.026157036) * inp_3_2_0; - result6 += M4(0.073232345, -0.14708877, 0.07798055, 0.32128707, 0.08675475, 0.051407266, -0.0120357135, 0.096903704, -0.051653277, -0.018675132, -0.02716698, -0.1955093, 0.1259683, -0.035662163, 0.12005442, 0.102350615) * inp_3_0_1; - result6 += M4(0.02027845, -0.18783632, -0.038559712, -0.10370797, -0.010878527, 0.03308282, 0.12699416, 0.0155708175, 0.0970206, -0.040944062, 0.012400389, 0.109309934, -0.04386221, 0.2324476, -0.020422474, 0.092660375) * inp_3_1_1; - result6 += M4(0.104576275, 0.058653012, 0.04137991, -0.08608553, -0.03747883, -0.08337479, 0.028043367, 0.06387467, -0.20556886, 0.07300514, -0.027574522, 0.09483503, -0.23206857, -0.1449773, -0.064866655, 0.15975653) * inp_3_2_1; - result6 += M4(0.19907999, 0.2064377, 0.11328552, -0.0658018, -0.015354672, 0.021877669, 0.036536, -0.0049861623, -0.040842302, -0.05671682, 0.004349552, 0.057966024, -0.1807835, 0.043555744, -0.02367716, 0.08867019) * inp_3_0_2; - result6 += M4(0.05411993, -0.03896789, -0.13987201, 0.06696148, -0.027739853, 0.008076733, 0.0040634284, -0.02234747, 0.020157328, 0.024497507, 0.002658149, -0.072561026, 0.18330508, -0.10341329, 0.0354616, -0.03067343) * inp_3_1_2; - result6 += M4(-0.10615136, -0.121230006, -0.036104217, 0.18103473, -0.050683066, 0.029468618, 0.0056012096, 0.0645111, 0.12298013, -0.00908927, 0.009384262, -0.07602516, 0.0057178815, 0.11255827, -0.023811497, -0.1043421) * inp_3_2_2; - result7 += M4(-0.05113849, -0.04958741, 0.016276637, 0.028372198, -0.0068781967, -0.027119763, -0.117879525, -0.04413328, 0.047487363, -0.05591007, 0.003169236, -0.028000144, -0.057534188, 0.31272355, -0.07822779, -0.1255965) * inp_3_0_0; - result7 += M4(-0.12659274, -0.08811538, 0.066573605, -0.014348354, 0.087604284, 0.013431505, 0.007770467, -0.008002549, -0.04092917, 0.055534218, -0.13484295, -0.0022408275, 0.0046244445, -0.21021116, -0.13354151, 0.04655783) * inp_3_1_0; - result7 += M4(0.00855162, -0.08563792, -0.16917855, -0.13886495, 0.04322211, 0.026588937, 0.019791333, -0.009312571, 0.00015449926, 0.0238957, 0.095205374, -0.0116980085, 0.021639794, -0.021706594, 0.2341988, 0.060809616) * inp_3_2_0; - result7 += M4(0.051825214, 0.16506135, -0.015183231, 0.5393071, 0.10659988, -0.022560887, 0.018391158, 0.115611956, -0.05260585, -0.07611458, 0.0071695563, 0.032495268, 0.054799885, -0.37064156, 0.053576525, -0.03908096) * inp_3_0_1; - result7 += M4(0.10292551, 0.19287035, 0.024254685, -0.2127403, 0.1756357, 0.009858382, 0.041315533, 0.05075599, 0.020507855, 0.1573456, 0.051425856, -0.01644046, 0.07449899, 0.15514694, -0.11197734, 0.19560033) * inp_3_1_1; - result7 += M4(0.06400824, 0.23147541, 0.28221515, -0.17375831, 0.057147887, 0.0011001171, 0.03210582, 0.07515883, -0.058222994, -0.02095582, -0.060699556, -0.010483264, 0.049250923, 0.16824752, -0.123049185, -0.12778401) * inp_3_2_1; - result7 += M4(-0.0017631656, -0.4543986, -0.29492322, 0.44642022, -0.19217049, 0.04556584, -0.01609418, -0.03876169, 0.042237416, 0.08162179, -0.054079905, -0.015715664, -0.0031343128, 0.2221074, 0.07501074, -0.0026645882) * inp_3_0_2; - result7 += M4(0.09046477, 0.1834209, -0.083579764, 0.05930323, -0.1576473, 0.09518199, 0.07004761, -0.087234534, 0.0138550205, -0.14549415, 0.051526602, -0.008259083, -0.04476655, -0.018518697, 0.10098174, -0.20662482) * inp_3_1_2; - result7 += M4(-0.039497297, 0.016961325, 0.14998345, -0.2231364, -0.10912724, -0.11069781, -0.10077799, -0.043310083, 0.035292868, -0.017371511, 0.01608222, 0.039854683, -0.12546326, -0.24909157, 0.017085021, 0.15744463) * inp_3_2_2; - const V4 inp_4_0_0 = inp[4][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_4_1_0 = inp[4][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_4_2_0 = inp[4][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_4_0_1 = inp[4][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_4_1_1 = inp[4][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_4_2_1 = inp[4][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_4_0_2 = inp[4][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_4_1_2 = inp[4][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_4_2_2 = inp[4][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.0056560133, -0.04298683, 0.02908299, -0.09395281, -0.070639305, -0.14869322, -0.013401416, 0.10113064, 0.096419886, -0.024673993, -0.15020788, 0.10173121, 0.024479177, -0.10026592, 0.008690981, -0.058597274) * inp_4_0_0; - result0 += M4(-0.010814033, -0.030294184, -0.00666517, 0.07078508, -0.09022229, 0.09171898, -0.0042071715, -0.06293064, -0.08195429, 0.03096533, 0.03146164, -0.044594202, -0.009700399, 0.008157711, 0.013620116, 0.12120534) * inp_4_1_0; - result0 += M4(0.013765888, 0.0076117874, -0.0331143, 0.011161413, 0.16835158, 0.04973227, 0.013319061, -0.09550143, -0.057173394, 0.049443904, 0.082740776, -0.04831704, -0.01188714, -0.0005861371, 0.012353055, -0.102823794) * inp_4_2_0; - result0 += M4(-0.049494494, 0.17574203, -0.062492527, 7.121997e-05, -0.019190606, 0.066647895, 0.014246117, 0.013973143, 0.10488726, -0.50137484, 0.099353455, 0.06832924, -0.022147754, -0.17589185, -0.096951, 0.03725855) * inp_4_0_1; - result0 += M4(0.009478874, -0.027447326, 0.021987218, -0.04560523, 0.10616537, 0.0413842, 0.029013608, 0.1375162, -0.085296676, 0.23591204, -0.050563917, -0.03481262, -0.064629905, 0.1797911, 0.018864036, -0.12222731) * inp_4_1_1; - result0 += M4(0.055464312, -0.05864894, 0.012421509, -0.010315953, -0.17493816, -0.049388386, -0.06182674, -0.029647462, 0.025918776, 0.049803298, 0.0598297, 0.04845356, 0.15211841, 0.017960595, 0.04794029, 0.07827966) * inp_4_2_1; - result0 += M4(0.03429773, -0.020195924, 0.0885497, 0.038904276, 0.10719048, 0.048443288, -0.043606453, -0.09176992, -0.20598097, 0.34969592, -0.118598014, -0.11473627, -0.05089481, 0.12735271, 0.013725932, 0.020414565) * inp_4_0_2; - result0 += M4(0.0071073705, -0.01169426, 0.024262007, 0.017149732, -0.032368675, -0.084074005, -0.07363179, -0.009792229, 0.18841313, -0.21107039, 0.14469321, -0.023509858, 0.15166952, -0.0529888, 0.033290148, 0.06855343) * inp_4_1_2; - result0 += M4(-0.04688845, 0.016878817, -0.060554046, 0.0006380923, -0.029764611, -0.008093763, 0.124708556, 0.032294534, 0.0006570255, 0.00267864, -0.11602631, 0.053512044, -0.12447079, -0.0034085084, -0.05376309, -0.024473326) * inp_4_2_2; - result1 += M4(0.040202968, -0.014629318, -0.0039170533, -0.024377247, -0.0060929875, 0.062238038, -0.02404187, 0.003354906, -0.020151692, -0.106021844, 0.06523044, 0.015289261, 0.049931325, 0.02460497, 0.0055405637, 0.078717075) * inp_4_0_0; - result1 += M4(-0.012331021, -0.03225596, -0.06539348, -0.011223803, 0.19446827, 0.040211074, 0.026924383, -0.06502665, -0.12074997, 0.029928813, 0.00923082, 0.16151893, -0.06870683, 0.016564116, -0.012056766, -0.02318809) * inp_4_1_0; - result1 += M4(-0.04183398, -0.006804403, 0.016110439, 0.023904853, -0.25208133, -0.0015579952, 0.08080676, 0.07115592, 0.084377274, 0.02506405, 0.033509873, -0.16872168, -0.13730451, -0.04400995, -0.018384643, -0.036934663) * inp_4_2_0; - result1 += M4(0.013165522, -0.015587058, -0.08811234, -0.03426268, -0.094970375, 0.033341303, -0.013102786, 0.11354574, -0.028997444, 0.09895756, 0.18364955, -0.074492045, -0.02807619, -0.043467645, 0.008588051, -0.14314419) * inp_4_0_1; - result1 += M4(-0.06798712, 0.0063832947, 0.09460649, -0.04111826, -0.11099618, -0.185102, -0.093674414, 0.14626959, 0.21936397, -0.0010714099, -0.05624606, 0.024136104, 0.13837199, -0.0065120426, 0.054974854, 0.08187584) * inp_4_1_1; - result1 += M4(-0.019466238, -0.12958188, 0.004486582, 0.08140819, 0.34572217, 0.110486254, 0.12117327, -0.41392905, -0.012688774, -0.042032603, -0.15024966, 0.12189565, -0.005803998, -0.0038944473, -0.013471663, 0.11705099) * inp_4_2_1; - result1 += M4(0.00931184, 0.04531556, 0.019577224, 0.025840234, 0.05290648, -0.094864115, 0.024397964, -0.0826193, 0.008775952, -0.0064938124, -0.032534245, 0.013953471, 0.016134618, 0.11556924, 0.039437328, 0.06537349) * inp_4_0_2; - result1 += M4(0.07576351, 0.019917393, 0.03664328, 0.002361687, -0.10463952, 0.19185746, -0.03927703, -0.06484046, -0.03255176, -0.008024001, -0.050784994, -0.13392103, -0.008847947, 0.0026140157, -0.043280937, -0.053434595) * inp_4_1_2; - result1 += M4(-0.0069221514, 0.055582155, -0.012612726, -0.023564298, -0.018655028, -0.13290636, -0.0690196, 0.28063747, -0.0929044, 0.08859857, -0.0045734355, 0.033192374, 0.005717268, -0.047754493, -0.047598183, -0.096953675) * inp_4_2_2; - result2 += M4(-0.0038628036, 0.07205018, 0.01433819, -0.14261103, -0.078737706, -0.05693243, -0.1265593, 0.27992842, -0.081867374, -0.10223804, 0.10522367, 0.029091634, -0.105817765, -0.006851036, 0.00043201266, -0.07368191) * inp_4_0_0; - result2 += M4(8.2908104e-05, -0.052198518, -0.07028538, 0.08362575, 0.052389048, 0.11337715, 0.1719509, -0.4425823, 0.007468969, 0.0035097392, 0.050459493, 0.022096442, 0.06838255, 0.032090306, -0.019790197, 0.21058686) * inp_4_1_0; - result2 += M4(0.031974178, 0.013044305, -0.120847546, 0.09113355, -0.06151007, -0.07488752, -0.045898706, 0.084943265, 0.03265051, 0.11710866, 0.14153798, -0.040186293, 0.06514247, 0.006812105, -0.022442315, -0.051706396) * inp_4_2_0; - result2 += M4(0.003240497, 0.05723349, 0.046075612, 0.06732893, 0.021382773, 0.047288194, 0.0016529077, -0.22716542, -0.021467585, -0.18969065, 0.0015766959, 0.37202194, -0.04525686, -0.06268392, 0.009357922, 0.19441691) * inp_4_0_1; - result2 += M4(-0.1035304, -0.03485961, 0.18682852, -0.03925375, -0.10753048, -0.17605294, -0.20805123, 0.3567117, 0.34518, 0.14573298, -0.19835913, -0.09780614, -0.057692092, -0.006312818, -0.023927176, -0.21439995) * inp_4_1_1; - result2 += M4(-0.013560132, -0.04898805, -0.07075192, -0.06162054, 0.23290539, 0.13090472, 0.29168317, -0.12968096, -0.18457717, 0.0143599985, -0.1275486, -0.09086428, -0.0058514453, -0.012454006, 0.081433, 0.014506851) * inp_4_2_1; - result2 += M4(0.028780425, -0.07786944, -0.007884749, -0.03953932, 0.04523141, 0.05769283, 0.071709454, -0.0432453, -0.029009933, 0.29476967, -0.08633414, -0.33855975, -0.005209768, 0.08920962, 0.026399057, -0.21980207) * inp_4_0_2; - result2 += M4(-0.04236728, 0.031000128, -0.0105478, -0.026746193, 0.03729478, -0.06828809, 0.09549842, 0.0442534, -0.022790529, -0.21272987, 0.08249413, 0.033508018, 0.016530255, -0.052877903, -0.021436378, 0.12395192) * inp_4_1_2; - result2 += M4(0.081532, 0.023165172, 0.015696498, 0.08206253, -0.14218034, 0.019701743, -0.23379238, 0.061591223, -0.038848393, -0.048602562, 0.028897833, 0.10180275, 0.0768478, -0.010524142, -0.025089258, 0.03711748) * inp_4_2_2; - result3 += M4(0.06675425, -0.07539947, -0.09292847, -0.0190723, -0.0260846, 0.14073077, 0.17296062, 0.06135225, 0.0066102967, -0.13954222, 0.025961779, -0.107567266, 0.048868217, 0.014461581, -0.14563714, 0.047372248) * inp_4_0_0; - result3 += M4(-0.055324614, -0.0050000763, 0.00825287, -0.13444602, 0.05528624, 0.06783663, -0.18586834, 0.1788157, 0.091240615, 0.17694047, 0.0049668774, 0.00405647, 0.016982682, -0.103628814, 0.07103452, -0.192677) * inp_4_1_0; - result3 += M4(0.011611189, 0.020063527, -0.030275742, 0.12899305, -0.06462358, -0.21930777, -0.15328728, -0.31003463, -0.12495303, 0.0009425047, 0.0017772756, 0.04816554, 0.032600675, -0.018846383, 0.033192553, 0.09992134) * inp_4_2_0; - result3 += M4(0.014899182, 0.042097423, 0.031159898, 0.030899636, -0.011077221, -0.115203574, 0.2569057, -0.09001887, -0.20737056, 0.08357866, -0.38380954, 0.122669145, -0.05552425, -0.022318907, -0.15429147, -0.021471249) * inp_4_0_1; - result3 += M4(-0.06050428, 0.027519466, 0.026508844, 0.038558345, 0.020891232, -0.0097083645, 0.11503407, 0.1702198, 0.22738445, -0.09972507, 0.2689035, -0.016125072, -0.0004475897, 0.06403645, 0.12089485, 0.0072463155) * inp_4_1_1; - result3 += M4(-0.009214152, -0.07253149, -0.07522645, -0.14498596, 0.0036053658, 0.22581303, 0.1208878, 0.34406036, 0.07810432, -0.02346909, 0.030180223, -0.07264184, -0.01232128, -0.04784726, -0.06000405, -0.10393555) * inp_4_2_1; - result3 += M4(-0.060292684, 0.04802686, 0.138431, 0.014028666, 0.06739861, -0.060278144, -0.39626816, 0.14062239, 0.22329809, 0.043097895, 0.18851098, 0.100080185, 0.04706358, 0.014059598, 0.11271857, 0.026814481) * inp_4_0_2; - result3 += M4(0.15060289, -0.015061274, -0.07027206, 0.09544377, -0.1484623, -0.06582482, 0.10857374, -0.45500416, -0.4230736, -0.035818197, -0.17099567, 0.16676043, -0.050155282, -0.00014432055, -0.032971416, 0.29737318) * inp_4_1_2; - result3 += M4(-0.048656117, 0.04284575, 0.06341504, -0.019360153, 0.10275478, 0.04974057, -0.03404879, -0.059866022, 0.11559815, -0.028667452, 0.01201514, -0.22377238, -0.033083588, 0.069121815, 0.012150517, -0.15453373) * inp_4_2_2; - result4 += M4(-0.05635244, -0.10347995, -0.027150761, -0.033979554, 0.053241737, 0.012876588, -0.1120549, 0.106720895, -0.035772648, 0.11502711, 0.034088984, -0.04378052, 0.007885806, -0.11099392, -0.06166937, -0.057523914) * inp_4_0_0; - result4 += M4(-0.02247963, 0.1887168, 0.034502752, -0.02795242, 0.20200884, -0.1663299, 0.07882928, -0.107662246, 0.060148872, -0.06357574, -0.063991755, 0.025630247, -0.113730095, 0.166896, 0.08948511, 0.029435718) * inp_4_1_0; - result4 += M4(0.0726884, -0.05203209, 0.007847193, 0.0062561505, -0.2344992, 0.17953452, 0.09156343, 0.05349484, 0.025790025, -0.054667484, -0.018117376, 0.01357936, 0.084024824, -0.034435887, -0.04433334, -0.026698003) * inp_4_2_0; - result4 += M4(0.11100936, 0.04931076, 0.01578695, 0.06476563, -0.22367178, -0.009763816, 0.1061037, -0.12366313, -0.17699395, -0.114088275, -0.0063024866, 0.12580162, -0.032516282, 0.040313635, 0.06818606, 0.12407735) * inp_4_0_1; - result4 += M4(-0.033353064, -0.08631801, -0.0013245377, 0.028459692, -0.058460224, 0.13507825, -0.14118527, 0.01606553, 0.08612624, 0.02641328, -0.050019518, -0.2347155, 0.13733979, -0.09774663, -0.0868379, -0.019524561) * inp_4_1_1; - result4 += M4(-0.12297103, -0.011307135, 0.008664861, 0.0022724732, 0.34686965, -0.07749669, -0.04887686, -0.03597297, -0.08199492, 0.07043732, 0.047160286, 0.026116699, -0.15393296, -0.009796161, 0.00044101314, -0.12722707) * inp_4_2_1; - result4 += M4(-0.046000704, -0.003246753, 0.032239176, -0.013699089, 0.17811957, 0.044701654, -0.13012417, -0.009491493, 0.29258355, -0.06163295, -0.08763792, -0.08313053, 0.09297551, 0.012630711, 0.0134746665, -0.037833862) * inp_4_0_2; - result4 += M4(0.120364375, -0.020685565, -0.05069203, -0.030524215, -0.31997618, -0.01090734, 0.10706026, 0.08344883, -0.16533577, 0.03914867, 0.013812844, 0.15057774, 0.05234805, 0.034909427, 0.008220857, 0.052495595) * inp_4_1_2; - result4 += M4(-0.034445968, 0.027975613, -0.013222565, 0.031903632, 0.05736492, -0.1009333, 0.06252816, 0.017187934, 0.014727697, 0.05308654, 0.12042237, -0.017669594, -0.07808603, 0.0048163836, 0.018596541, 0.06493992) * inp_4_2_2; - result5 += M4(0.0067139687, 0.101980716, -0.001467414, -0.022055823, -0.07089152, 0.023150241, 0.06143623, 0.13319266, 0.021403829, -0.06441946, -0.07837208, -0.08555556, 0.048455454, -0.055370606, -0.008777598, -0.067619644) * inp_4_0_0; - result5 += M4(0.06299573, 0.0694496, -0.02355668, 0.016515087, 0.009210382, 0.2317184, -0.13319677, -0.12901282, -0.036084894, -0.19126743, 0.08616549, 0.1647108, 0.06015041, 0.053908084, 0.0023197848, 0.02868088) * inp_4_1_0; - result5 += M4(0.016184002, -0.06385534, -0.0069241403, -0.016221732, 0.011261477, -0.26767784, 0.13419166, 0.005600115, 0.014511272, 0.16190852, 0.0014980324, -0.044342972, -0.029294515, 0.07759389, -0.04592539, -0.006113919) * inp_4_2_0; - result5 += M4(0.022520848, -0.14130425, 0.14123547, 0.017650397, 0.066217795, 0.017222993, -0.029707044, -0.20671672, -0.10328116, 0.14436105, -0.016222207, 0.15590505, -0.0037517902, -0.034283895, 0.19148032, 0.118120655) * inp_4_0_1; - result5 += M4(-0.13866368, 0.019695874, -0.018726783, -0.03270777, 0.0942777, -0.19477776, -0.07902067, 0.24199449, 0.14636786, -0.23270541, -0.0018839167, -0.21790878, -0.032929055, -0.18814297, -0.07475442, -0.14180273) * inp_4_1_1; - result5 += M4(0.02820381, 0.0682863, -0.051858384, 0.054645386, -0.14583005, 0.29032186, 0.026800634, -0.021782506, -0.037566718, 0.12613487, -0.07267983, 0.06618848, -0.03938298, 0.14742443, -0.08546988, 0.053001214) * inp_4_2_1; - result5 += M4(0.052142162, 0.13228115, 0.009862695, 0.023649622, -0.025289174, -0.15708312, -0.088770606, 0.083124086, -0.07574738, 0.10176504, 0.12625548, -0.13501489, -0.06297931, 0.17344275, -0.018660393, -0.023017982) * inp_4_0_2; - result5 += M4(0.0055391854, -0.10656896, -0.053955663, 0.0052430704, -0.097375184, 0.29771227, 0.25851175, -0.09908795, -0.009014458, 0.16064617, 0.080471516, 0.11703861, 0.08994521, 0.10502204, -0.021708753, 0.11845801) * inp_4_1_2; - result5 += M4(-0.048627034, -0.06797048, 0.016216736, -0.05052972, 0.15910245, -0.27759206, -0.15582141, -0.005995229, 0.08887073, -0.1826213, -0.1316133, -0.013729179, -0.022035563, -0.25437498, 0.08025752, -0.07184568) * inp_4_2_2; - result6 += M4(0.044308282, 0.025488498, 0.05594153, -0.05416072, 0.13203214, 0.06753707, -0.0023978339, 0.18478529, -0.17304857, 0.101482175, 0.0024858436, -0.34406888, 0.09784267, 0.066286616, 0.03798415, -0.092677094) * inp_4_0_0; - result6 += M4(0.021243699, -0.04516274, -0.033004258, -0.019549388, -0.07461409, 0.1450404, -0.04463726, -0.026817013, 0.066512585, -0.12459353, -0.008416445, 0.07361641, -0.03096993, -0.13719468, -0.05955316, 0.16906375) * inp_4_1_0; - result6 += M4(-0.15164073, 0.019078057, 0.0073003327, 0.042510647, 0.09384301, -0.17922041, 0.0320737, -0.15534379, 0.18047257, -0.01888262, 0.009418764, -0.022491198, -0.09982094, 0.06324742, 0.014051534, 0.08451929) * inp_4_2_0; - result6 += M4(0.05103094, 0.0443649, -0.06101686, 0.007653921, -0.16180655, -0.103094056, 0.035351828, -0.18181428, -0.22629482, -0.068506874, 0.11467742, 0.4694487, -0.19255061, -0.028179068, -0.075225875, 0.08804579) * inp_4_0_1; - result6 += M4(-0.043194804, -0.05433353, -0.037140585, 0.11196493, 0.093783796, -0.27605647, 0.14050849, -0.04723306, -0.020268092, 0.09326623, -0.10796552, -0.026958654, -0.024772448, 0.10214866, -0.037890706, -0.08556269) * inp_4_1_1; - result6 += M4(0.16427113, 0.034044467, 0.06136014, -0.21967156, -0.21288452, 0.28887758, -0.172244, 0.26439053, -0.13076742, -0.012575406, 0.03261076, -0.16700041, 0.14887321, -0.07260062, 0.09018352, -0.10970083) * inp_4_2_1; - result6 += M4(0.024294958, 0.0032530297, -0.0012189514, -0.0097949365, 0.16404699, 0.041336164, -0.083487704, -0.024220962, 0.12904127, 0.015196763, 0.027456105, -0.37527037, 0.17427562, -0.04217786, 0.06367421, -0.21986808) * inp_4_0_2; - result6 += M4(0.014084739, -0.0168991, 0.0009432791, -0.017251626, -0.020731041, 0.17111388, -0.09091587, -0.07133821, 0.1048487, 0.063251704, 0.0074808015, 0.17153834, 0.05291499, -0.0006310075, 0.008294677, 0.1180893) * inp_4_1_2; - result6 += M4(-0.15241075, 0.0035593053, -0.00624391, 0.14426245, 0.032171305, -0.15378803, 0.16888782, 0.072508365, 0.07654744, -0.04335074, -0.070405066, 0.19946066, -0.11937694, 0.077668935, -0.0641714, 0.022578862) * inp_4_2_2; - result7 += M4(0.017135773, 0.018690111, -0.06841096, -0.041809015, 0.0805089, -0.40369505, 0.2335265, 0.15973143, -0.051266886, 0.2427192, 0.040632907, 0.14885743, -0.016954076, 0.121225014, 0.006422872, 0.052987777) * inp_4_0_0; - result7 += M4(0.0075590657, -0.0022050105, 0.10373155, 0.08656458, -0.10025948, 0.25479397, -0.15535678, -0.23868866, -0.039126217, -0.18670776, 0.21968146, 0.0011423411, 0.029990757, -0.088166706, 0.17645246, 0.12121092) * inp_4_1_0; - result7 += M4(0.040064245, 0.018737443, -0.06737521, -0.061158046, -0.02565594, 0.15758239, -0.02481606, 0.08548726, 0.020377109, -0.097618155, -0.38672185, -0.050468203, 0.023587793, -0.09760693, -0.26691318, -0.102024) * inp_4_2_0; - result7 += M4(-0.0099827545, 0.03471192, 0.04759566, 0.1910697, 0.07985401, 0.1682725, -0.059318587, -0.1274626, -0.09218542, 0.11816272, 0.11611205, -0.42447686, -0.023205746, 0.24017681, 0.103090435, -0.22261634) * inp_4_0_1; - result7 += M4(-0.054445375, -0.014931132, 0.043233328, -0.026441915, 0.20068635, 0.18636495, 0.023687394, 0.022134768, 0.20138405, 0.058984768, -0.21165341, 0.31898335, -0.115309715, -0.091727875, -0.115306035, 0.02904126) * inp_4_1_1; - result7 += M4(-0.052231137, 0.036142398, -0.03759442, -0.087181486, -0.1576626, -0.35646844, 0.1027022, 0.06850115, 0.04091541, 0.14296418, 0.0629611, 0.06765649, 0.040580392, 0.11834344, 0.1645329, 0.18389781) * inp_4_2_1; - result7 += M4(-0.03366217, -0.0974378, 0.025939547, -0.047567982, -0.12572405, 0.25225767, -0.26331222, -0.08779757, 0.23746222, -0.43887892, -0.049046658, -0.17171694, 0.09011503, -0.3227351, 0.015421781, -0.0031851523) * inp_4_0_2; - result7 += M4(0.06450087, 0.055835392, -0.11159074, -0.06062758, -0.2047267, -0.3726855, 0.2099878, 0.25696737, -0.23837522, 0.20669767, -0.027362252, -0.053709537, 0.030510107, 0.10418641, -0.11958935, -0.040552597) * inp_4_1_2; - result7 += M4(0.014593578, -0.033638243, 0.060211588, 0.06594355, 0.2603595, 0.06203487, -0.076146714, -0.13112289, -0.06309668, -0.050723862, 0.22793618, 0.14452495, -0.07672901, 0.019369863, 0.027004028, -0.046256606) * inp_4_2_2; - const V4 inp_5_0_0 = inp[5][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_5_1_0 = inp[5][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_5_2_0 = inp[5][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_5_0_1 = inp[5][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_5_1_1 = inp[5][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_5_2_1 = inp[5][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_5_0_2 = inp[5][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_5_1_2 = inp[5][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_5_2_2 = inp[5][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.12538795, -0.17706737, 0.033370897, 0.09464653, -0.05764137, -0.0063253776, -0.03580037, 0.11123787, 0.0038914338, 0.04481374, 0.03775417, -0.11173051, -0.079021424, -0.14563695, 0.106015705, -0.061071947) * inp_5_0_0; - result0 += M4(0.06758217, 0.047142018, -0.036441542, 0.057116628, -0.01320497, -0.030413777, 0.006656349, -0.13534944, -0.0040195393, -0.024321666, -0.044406462, 0.09496461, 0.09121636, -0.053142495, -0.026292864, 0.029509839) * inp_5_1_0; - result0 += M4(0.0072088335, 0.021367133, 0.0073866486, -0.11809892, 0.03631612, 0.019892165, 0.070479855, 0.014419074, 0.016187102, -0.019440925, -0.021039497, 0.07567032, 0.08715442, -0.002510397, 0.008328683, -0.08357671) * inp_5_2_0; - result0 += M4(-0.03192295, 0.025614586, -0.049887937, -0.027824696, 0.10195073, -0.33574796, -0.010086636, 0.025905346, -0.06760916, 0.12456585, -0.07213603, 0.021872634, -0.2126507, 0.4914793, -0.08158861, -0.06890229) * inp_5_0_1; - result0 += M4(-0.041974064, 0.036901053, 0.13773857, -0.05619388, -0.10705063, 0.20076025, 0.026454043, 0.18273997, 0.006638295, -0.1087512, -0.047957376, -0.08504458, 0.105832115, -0.10693272, 0.066710316, 0.17692564) * inp_5_1_1; - result0 += M4(0.026623521, -0.064859495, -0.08443886, 0.09045106, -0.041095257, 0.0076869577, -0.011558459, -0.09730057, -0.028246198, 0.08125106, 0.076713726, -0.030985007, 0.007305034, 0.017981568, -0.021395765, 0.011873458) * inp_5_2_1; - result0 += M4(0.031847816, 0.021197213, 0.00049696985, -0.030807706, -0.049975883, 0.16061936, -0.031776126, -0.030924533, 0.124924935, -0.15408458, 0.07472158, 0.06457963, 0.32560468, -0.2570337, 0.055262256, 0.096754454) * inp_5_0_2; - result0 += M4(0.08915872, 0.03078074, -0.037506226, 0.07930683, 0.11823958, -0.08531404, 0.052240424, -0.11235662, -0.07853543, 0.11304013, 0.013092471, -0.0015514621, -0.2234087, 0.10088352, -0.15610576, 0.005131741) * inp_5_1_2; - result0 += M4(0.007509421, 0.046632674, 0.023872143, -0.064227395, -0.01695519, -0.027720103, -0.078152426, 0.042785607, 0.024547374, -0.029797457, -0.03082168, -0.017860532, -0.103638716, -0.013803609, 0.057733476, -0.09854992) * inp_5_2_2; - result1 += M4(0.039733548, -0.042001836, 0.055635277, 0.04216178, -0.06361464, -0.041451015, 0.19088393, -0.065670684, 0.026497183, -0.049308974, 0.0534363, -0.009015683, 0.032422986, 0.053028848, -0.098192245, 0.08213151) * inp_5_0_0; - result1 += M4(0.17154138, 0.022983605, -0.029087452, 0.043622673, 0.11283077, 0.05412757, 0.05506585, 0.045022067, 0.09137942, -0.06406797, -0.062166736, 0.042838246, 0.37491712, 0.1493165, 0.11722951, -0.058154702) * inp_5_1_0; - result1 += M4(-0.21599892, -0.03128542, 0.027702667, -0.09056188, 0.018671572, -0.030739408, -0.04150886, 0.030507224, 0.121971846, 0.08206713, 0.08530373, -0.037631657, -0.46243232, -0.052285265, 0.012893623, 0.061954353) * inp_5_2_0; - result1 += M4(-0.050867055, 0.024730077, -0.026715335, -0.09740769, -0.028623533, 0.065677665, -0.079506144, 0.06832926, 0.043190908, 0.033526063, -0.113026895, -0.1009218, -0.043213826, -0.08680609, -0.13204189, -0.0039272597) * inp_5_0_1; - result1 += M4(-0.036619224, -0.007971831, -0.05950999, 0.0062168306, 0.15270035, -0.12509625, 0.02345804, -0.09417169, -0.1423029, 0.037139986, 0.017347166, -0.033532616, -0.17807943, -0.15731214, -0.04971584, -0.0768005) * inp_5_1_1; - result1 += M4(-0.0114677325, -0.02283459, -0.09357792, 0.09349848, -0.06325829, 0.04114645, -0.03329525, -0.058348294, -0.07537504, -0.13709094, 0.055473957, 0.0226605, 0.23652865, 0.09778156, 0.15412241, -0.24937893) * inp_5_2_1; - result1 += M4(0.048078924, -0.019050054, 0.016917054, 0.030526506, 0.02340928, -0.03556381, 0.011730207, -0.0011570702, -0.03529201, -0.0133671, -0.09198627, 0.122205, 0.056481685, 0.0729371, 0.0925263, -0.053930525) * inp_5_0_2; - result1 += M4(0.07334615, 0.1180473, 0.15659824, -0.0007509436, -0.09728862, 0.16508797, -0.08917536, 0.0160592, -0.004857135, -0.08471394, 0.084374286, 0.09267815, -0.12748237, 0.09707601, -0.05927299, 0.10697107) * inp_5_1_2; - result1 += M4(-0.039780658, -0.029034305, -0.057859436, -0.03231921, -0.0068925587, -0.04703375, 0.0023841895, 0.06738706, 0.033502195, 0.057173014, 0.0044756765, -0.13607016, 0.10358131, -0.26273218, -0.013164138, 0.18199621) * inp_5_2_2; - result2 += M4(-0.052543424, 0.014710373, -0.0057736617, 0.08522451, 0.026034985, -0.04102235, 0.058372304, 0.0063199326, 0.11028566, 0.043318674, 0.022495687, -0.25429934, -0.036295574, -0.014899116, -0.22673567, 0.24962993) * inp_5_0_0; - result2 += M4(0.019369684, 0.027888443, -0.02104776, 0.043067362, -0.076630756, -0.029607676, 0.09296911, -0.060853895, -0.1020929, -0.09196976, -0.13574466, 0.2563018, -0.14132284, 0.039485045, 0.056680527, -0.079582155) * inp_5_1_0; - result2 += M4(-0.03782235, 0.022102837, -0.043717843, -0.039992917, 0.004871924, 0.0679612, -0.037568375, 0.0290175, -0.0152465915, 0.027891314, -0.044888817, -0.08299678, -0.013869845, -0.08747639, -0.20324095, -0.025232939) * inp_5_2_0; - result2 += M4(-0.08821138, 0.025046842, -0.00575991, -0.060615513, -0.138619, -0.06742541, -0.062541574, 0.089151815, -0.02544231, 0.08355427, 0.0072762948, 0.010731043, 0.12641594, 0.30684164, 0.004015204, -0.57477236) * inp_5_0_1; - result2 += M4(-0.0068541886, -0.18145774, -0.052009147, 0.059358474, 0.3192831, 0.05442601, -0.17448266, 0.20625395, -0.041425575, 0.10807071, 0.23518895, -0.17611882, -0.2596733, -0.31721514, 0.061145414, 0.17114498) * inp_5_1_1; - result2 += M4(0.13023628, 0.057651963, 0.18604223, -0.047792114, -0.012805066, 0.022483036, 0.13355188, -0.13243365, 0.049469158, -0.072154425, -0.101170115, 0.23615439, 0.2998239, 0.09128072, 0.4327402, -0.008857104) * inp_5_2_1; - result2 += M4(0.032647498, -0.0122189745, 0.10082313, -0.035950176, 0.007602351, 0.09051728, 0.06618509, -0.010261176, -0.0536385, -0.14813672, 0.05235227, 0.054942228, 0.020328801, -0.24346767, 0.07828201, 0.37981224) * inp_5_0_2; - result2 += M4(0.008272847, 0.0694402, -0.12220309, 0.011491192, -0.03087258, -0.096640445, -0.1051847, -0.114989415, 0.034320395, 0.060668178, -0.12066905, 0.008504789, -0.06641183, -0.021153193, -0.04901536, 0.03156743) * inp_5_1_2; - result2 += M4(-0.005594122, -0.036582265, -0.01919619, 0.033224173, -0.074299954, -0.018329676, -0.03969478, 0.089201115, 0.0024482494, -0.0038763222, 0.09853756, -0.04654667, 0.0021599468, 0.19532499, -0.16179824, -0.09390162) * inp_5_2_2; - result3 += M4(0.09663635, 0.07025168, -0.09856904, 0.025483437, -0.015169669, -0.12898952, -0.07355034, -0.10287106, 0.05671324, 0.03067334, -0.10018305, 0.05669348, 0.0342869, 0.1979965, -0.050640557, 0.10550753) * inp_5_0_0; - result3 += M4(-0.0043102796, -0.015201277, 0.08915882, -0.029545022, 0.029508129, 0.17385557, -0.030637436, 0.14616331, -0.107492834, -0.03530821, 0.0678429, -0.0773573, -0.004454621, -0.12022113, -0.13304807, 0.1676008) * inp_5_1_0; - result3 += M4(0.072616495, -0.054806348, -0.1169866, -0.035434797, -0.034860022, 0.00038935104, -0.058359485, -0.0036739225, 0.031299744, 0.08819489, 0.0811736, 0.023157185, -0.0024393, -0.17614454, -0.060258776, -0.16547444) * inp_5_2_0; - result3 += M4(-0.014998284, -0.041016858, -0.12470254, 0.09202743, 0.023972176, 0.08870349, -0.1787259, 0.103423126, 0.07275725, 0.0023552119, 0.07062495, 0.07969913, 0.13777788, -0.18083371, 0.4212479, -0.011924291) * inp_5_0_1; - result3 += M4(-0.089802906, 0.032301735, 0.031482782, 0.119482316, 0.1608841, -0.0809534, 0.2640061, 0.035738807, -0.1129705, -0.0277604, -0.22253743, -0.015984379, -0.28487992, 0.12840585, 0.18445085, 0.035733514) * inp_5_1_1; - result3 += M4(-0.052571196, -0.03657074, -0.052217558, -0.012803113, -0.08775772, -0.0023987668, 0.105793156, 0.04683318, 0.045479923, -0.01142437, -0.018321373, -0.01992719, -0.14623097, 0.20100105, 0.17371573, 0.30050993) * inp_5_2_1; - result3 += M4(0.011565542, -0.017645359, 0.06862165, -0.023956323, -0.03203005, 0.0416898, 0.07196335, 0.13958474, -0.15351433, 0.01721702, 0.1465017, -0.26794234, -0.15048897, 0.04994935, -0.29378742, -0.08143274) * inp_5_0_2; - result3 += M4(0.057289027, -0.0048035886, 0.06220608, 0.1427603, -0.16878267, -0.009742923, -0.16486831, -0.24132164, 0.27816164, -0.0028979678, 0.06845825, 0.06608425, 0.37513673, -0.07616081, 0.04942137, -0.36313415) * inp_5_1_2; - result3 += M4(-0.06794344, 0.037267733, 0.09412483, -0.2970576, 0.12657434, -0.083451554, -0.04929, -0.23548357, -0.117652915, -0.017367644, -0.05528746, 0.16221754, 0.061245136, 0.01926565, -0.28234965, -0.12939163) * inp_5_2_2; - result4 += M4(0.15919274, -0.2352399, -0.027001522, 0.011794996, -0.005605608, 0.0753576, 0.07405123, -0.059102695, 0.13596448, -0.06231513, -0.09439786, -0.07043925, 0.1049117, -0.12221862, -0.13036881, 0.0361829) * inp_5_0_0; - result4 += M4(-0.12890676, 0.2143314, -0.083037764, -0.061826643, 0.26498833, -0.27983838, -0.22267726, 0.090435095, -0.08602059, 0.078088894, -0.018602906, 0.07772672, 0.070503466, -0.08374654, 0.054432746, -0.13503996) * inp_5_1_0; - result4 += M4(0.0976321, -0.004863866, -0.012830247, -0.034712963, -0.12264718, 0.11958626, 0.06819412, -0.035324343, 0.10050465, -0.13896488, 0.013326097, -0.017619215, -0.07793749, 0.17711249, 0.06459463, 0.065628685) * inp_5_2_0; - result4 += M4(0.0043472964, 0.0975239, 0.00946547, 0.03740403, -0.06971512, -0.12816209, -0.036240365, 0.024053996, 0.06892173, -0.0078081493, -0.039134935, -0.03122705, 0.0710562, 0.13417275, 0.008950148, -0.20767659) * inp_5_0_1; - result4 += M4(0.02696642, -0.06885586, 0.052671142, 0.08137575, -0.110400714, 0.26312602, 0.02416817, -0.13747083, -0.05288019, -0.052245412, 0.13848673, 0.032964647, -0.20216852, 0.13874042, -0.020752853, 0.30638573) * inp_5_1_1; - result4 += M4(-0.08535335, 0.035079423, -0.041248526, -0.101347506, 0.1124725, -0.058124762, 0.0028557598, 0.042990737, -0.027759358, 0.077415116, 0.05132201, -0.030039128, 0.29957578, -0.099580735, -0.10974999, -0.014382098) * inp_5_2_1; - result4 += M4(0.04081195, 0.008900291, 0.042645026, -0.06945793, 0.10729198, 0.024537727, -0.046411354, -0.01433302, -0.26673356, 0.08557017, 0.11534116, 0.047061004, -0.26079518, 0.054291304, 0.036473196, 0.108143024) * inp_5_0_2; - result4 += M4(0.027781505, 0.0023564368, -0.0049965223, 0.05681681, -0.09201082, -0.012938089, 0.07617585, 0.029817618, 0.18897806, -0.039726242, -0.121029, 0.018959995, 0.08016216, -0.14434427, -0.02871063, -0.10434042) * inp_5_1_2; - result4 += M4(-0.14782174, -0.041680753, 0.041040547, 0.10798461, -0.08963502, -0.015004887, 0.022423565, 0.058535255, -0.057570715, 0.02233099, -0.059966974, 0.005028972, -0.13044427, -0.0745775, 0.158964, 0.0107603185) * inp_5_2_2; - result5 += M4(-0.0015846442, 0.094563164, 0.051954318, -0.0131830815, 0.0039807884, 0.1040578, 0.014530973, -0.12246464, 0.02444737, 0.066585876, -0.011484672, -0.008271352, -0.056051057, 0.2380608, 0.15623197, 0.16036496) * inp_5_0_0; - result5 += M4(0.07810338, -0.040848944, -0.032041945, 0.045813404, -0.021590723, -0.15069222, -0.04847944, 0.14501797, 0.003630006, 0.028882813, -0.09030403, 0.03472953, 0.033597857, 0.28481737, -0.2274971, -0.07463222) * inp_5_1_0; - result5 += M4(0.058220297, 0.028320555, -0.07791807, -0.0074313777, 0.07435074, 0.11644624, -0.03200917, 0.007277774, 0.011112213, -0.04187249, 0.0423916, 0.040869933, 0.10615221, -0.27252868, 0.13378462, -0.0654341) * inp_5_2_0; - result5 += M4(-0.035303652, -0.09892366, 0.1929221, 0.003923178, -0.041255888, -0.09586077, 0.038282506, 0.08871395, -0.015094494, -0.11107384, -0.08858581, 0.03522995, 0.096785754, -0.3688781, 0.17809628, -0.18618508) * inp_5_0_1; - result5 += M4(0.023333387, -0.09871771, -0.10783878, -0.052210964, 0.19537325, -0.09455233, -0.011738294, -0.05190921, -0.117435135, 0.26782718, 0.12040811, -0.045538735, -0.14313774, 0.20366587, -0.16903324, 0.1851143) * inp_5_1_1; - result5 += M4(-0.12624918, 0.11213717, -0.061405014, -0.08665405, -0.11156531, 0.003680333, 0.01176449, -0.047786757, 0.028786523, -0.20416893, 0.028391425, -0.017634254, -0.11254412, 0.12574081, 0.020457778, -0.059840277) * inp_5_2_1; - result5 += M4(0.020505205, -0.0021827312, -0.0060958774, 0.005508138, 0.018252263, 0.28028834, 0.002917863, 0.00965132, 0.053401984, -0.07104752, 0.13239692, 0.0126258265, 0.08490091, -0.23758654, -0.06202464, 0.23091605) * inp_5_0_2; - result5 += M4(0.0077209976, 0.050149977, 0.06333801, 0.051200464, -0.054400895, -0.1465781, 0.18075615, 0.015883477, 0.07363807, -0.1335688, -0.17303875, -0.029910304, 0.02543652, 0.04771288, 0.10433472, -0.13532774) * inp_5_1_2; - result5 += M4(-0.009202275, -0.04985019, 0.006227104, 0.053707894, 0.049618628, -0.028988192, -0.14802694, -0.0125083765, -0.077834696, 0.15061891, 0.035964802, -0.012316966, -0.020467617, -0.07517761, -0.12697762, -0.0407306) * inp_5_2_2; - result6 += M4(0.11749337, -0.0041994485, -0.0033218379, -0.17654829, 0.031927884, 0.08650058, -0.01619122, -0.15220545, 0.021221777, -0.05043898, 0.10411399, -0.102081805, 0.5124503, -0.11151461, -0.032794956, 0.27788696) * inp_5_0_0; - result6 += M4(-0.17151701, -0.04830134, -0.086866245, 0.14922944, -0.13511623, -0.039114468, -0.026849365, -0.11072022, -0.044060916, -0.1153506, -0.10684367, -0.03018633, -0.27574965, 0.20939083, -0.12436983, 0.077444986) * inp_5_1_0; - result6 += M4(0.21835768, 0.029492378, 0.013757336, -0.03415733, 0.24190073, -0.11453161, 0.04461165, -0.044283062, -0.05482468, 0.10801138, -0.012973663, 0.043469712, -0.005479234, -0.15278953, 0.07343052, -0.10378721) * inp_5_2_0; - result6 += M4(-0.0988602, 0.04972977, 0.015094182, 0.13170429, -0.13265008, -0.02665333, 0.14110991, 0.06484379, 0.10205358, 0.012648714, -0.07416709, 0.002834422, -0.0013153465, 0.14529635, -0.091737576, -0.49994466) * inp_5_0_1; - result6 += M4(-0.008588484, -0.019879313, 0.0042196796, -0.0020848012, 0.022692628, -0.039439008, -0.05558708, 0.025100777, 0.05790457, 0.14941314, 0.020532379, 0.10532647, 0.18212442, -0.2884669, 0.22208588, -0.16607498) * inp_5_1_1; - result6 += M4(-0.03438412, -0.04132556, 0.04840272, 0.078803845, -0.27279317, 0.080534674, -0.10949577, 0.114236854, 0.17479116, -0.11296241, 0.05189745, -0.11447913, -0.19893306, 0.18992762, -0.104813546, 0.5200463) * inp_5_2_1; - result6 += M4(0.064419344, -0.021741396, 0.037183467, -0.15840925, 0.002949704, 0.05971682, -0.05844899, -0.045556515, 0.054392796, 0.050238416, -0.034121957, 0.15061119, 0.09030789, 0.053389825, -0.05272699, 0.3602377) * inp_5_0_2; - result6 += M4(0.0028544064, 0.0359422, -0.0025043678, 0.06292965, 0.14914134, 0.08135933, -0.013777253, 0.027368024, -0.10688127, -0.14877628, 0.07124611, -0.16738887, -0.19469441, 0.03316387, -0.099604376, -0.30108678) * inp_5_1_2; - result6 += M4(-0.08297835, 0.047238495, -0.046149343, -0.085066915, 0.085642494, -0.0299211, 0.08030442, 0.020379808, -0.18670659, 0.08061582, -0.006504434, 0.11738786, -0.06797933, -0.08062544, 0.18035586, -0.12825398) * inp_5_2_2; - result7 += M4(0.023427464, -0.0592664, 0.04239931, -0.009862554, -0.0347714, 0.01604674, -0.02083753, 0.032719303, 0.021336092, 0.1678245, -0.1386868, -0.20778543, 0.08592817, -0.56207585, 0.17005649, 0.11919251) * inp_5_0_0; - result7 += M4(0.00048175573, -0.0784491, 0.015452096, 0.14095198, -0.015037568, 0.0059051914, -0.021512652, 0.001322834, -0.052088168, 0.019981496, 0.12251787, 0.095102206, 0.01856328, 0.24857953, -0.27912256, -0.069849394) * inp_5_1_0; - result7 += M4(0.020901954, -0.121466205, -0.10375199, -0.08626548, 0.020931909, 0.0039074607, 0.065055266, -0.0074178074, 0.03547901, 0.018760826, 0.14362428, 0.031234657, -0.0033339185, 0.20920299, 0.5041963, -0.028568998) * inp_5_2_0; - result7 += M4(0.06437751, 0.13272399, 0.0687732, -0.17468737, -0.026636008, -0.008573086, 0.08019944, -0.24965514, 0.09127498, -0.22324795, -0.11654162, 0.27585655, 0.16895711, 0.02685719, -0.081596695, 0.20349391) * inp_5_0_1; - result7 += M4(0.014344518, 0.17459482, -0.11667806, 0.081070945, 0.18960822, 0.24532762, -0.08090209, 0.17812389, -0.12604299, -0.1504234, 0.044998974, -0.06994304, -0.08102392, 0.2217348, 0.16338113, -0.18624873) * inp_5_1_1; - result7 += M4(0.022116417, 0.049126387, -0.024459139, 0.040302206, 0.03531449, -0.017790953, -0.036707614, 0.06660101, 0.08406968, 0.11836295, 0.018978488, -0.060391184, -0.12685144, -0.32392153, -0.1405334, -0.06477896) * inp_5_2_1; - result7 += M4(-0.050599445, -0.03487859, 0.03513395, -0.058074694, 0.075107016, -0.0904874, -0.013271139, -0.1877873, -0.13608843, 0.11128804, 0.24571428, 0.11673454, -0.3254348, 0.53977436, -0.28361246, 0.020937078) * inp_5_0_2; - result7 += M4(-0.02630545, 0.0070058065, 0.01148968, -0.053447608, -0.22996545, 0.04018201, 0.038495317, 0.03716421, 0.1865532, 0.10125895, -0.20279185, -0.17076509, -0.047426227, -0.30395317, 0.14271244, 0.16955411) * inp_5_1_2; - result7 += M4(-0.08777389, -0.04563901, 0.092205815, 0.0770433, -0.009193931, -0.12269911, 0.04667751, 0.054749895, -0.08527041, -0.18231963, -0.08446207, -0.0031362448, 0.29093665, -0.05320954, -0.13839446, -0.13489588) * inp_5_2_2; - const V4 inp_6_0_0 = inp[6][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_6_1_0 = inp[6][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_6_2_0 = inp[6][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_6_0_1 = inp[6][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_6_1_1 = inp[6][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_6_2_1 = inp[6][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_6_0_2 = inp[6][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_6_1_2 = inp[6][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_6_2_2 = inp[6][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.003885865, -0.17367846, -0.115702316, 0.16005467, 0.0054171863, -0.006517093, 0.01881867, 0.04067007, -0.05435817, 0.20987517, -0.01849731, -0.03217238, 0.039768774, 0.11673745, 0.037540156, -0.012170512) * inp_6_0_0; - result0 += M4(-0.04915565, -0.1576375, 0.06850784, -0.01426467, -0.07146627, -0.010806282, -0.0039841826, -0.015949907, 0.008444401, 0.08969168, -0.03372666, 0.12811632, -0.03974165, -0.04397589, -0.18107662, 0.08669143) * inp_6_1_0; - result0 += M4(-0.00093427766, -0.037692107, 0.073429525, 0.04759371, 0.072586775, 0.01575273, -0.027800428, -0.045728527, -0.0018874968, 0.011111937, 0.0021887152, -0.0017890491, 0.057684638, 0.19891563, 0.031319413, -0.107387446) * inp_6_2_0; - result0 += M4(0.09706745, -0.13520981, -0.004607672, -0.044235628, -0.041389823, 0.05660601, -0.015205712, -0.031884518, -0.042764135, 0.8671236, -0.18133977, -0.13428198, 0.08791542, 0.45370406, -0.1700042, -0.005459713) * inp_6_0_1; - result0 += M4(-0.22233512, 0.06125669, 0.06638054, 0.0591306, 0.08370313, -0.003793231, -0.019101411, 0.029437529, 0.19808461, 0.08880209, 0.06306049, -0.28664103, 0.18521832, -0.2158601, -0.0390428, -0.08190038) * inp_6_1_1; - result0 += M4(0.014413573, 0.061382413, -0.07634588, -0.12338554, -0.08820105, -0.010935865, 0.015936904, 0.03581969, 0.051875338, -0.080408216, 0.09475845, -0.17602344, 0.2042009, -0.09845761, -0.04875059, 0.018731527) * inp_6_2_1; - result0 += M4(-0.18976097, 0.25620154, -0.08376923, -0.110293545, 0.055588137, -0.07692648, -0.03417093, -0.019654926, -0.11892768, 0.3040267, -0.025986234, -0.071423784, 0.095949076, 0.19911765, -0.0061686714, -0.120961234) * inp_6_0_2; - result0 += M4(0.2744052, 0.08042611, 0.07391127, 0.08492105, -0.035667446, 0.029898237, -0.016314445, -0.019735733, -0.6038559, 0.05894893, -0.119702846, 0.0097181015, -0.079259954, -0.058996323, -0.12268202, -0.1193688) * inp_6_1_2; - result0 += M4(-0.046171267, 0.031262174, 0.028548973, -0.05362392, 0.0057377717, 0.0129016405, 0.07584634, 0.024564797, -0.32369843, 0.045339856, 0.06644988, 0.052206177, 0.12024735, 0.05930798, 0.022070026, -0.06579911) * inp_6_2_2; - result1 += M4(-0.046241716, -0.024472289, 0.1843314, 0.037505005, 0.033838384, 0.08822825, 0.037532493, 0.014932202, -0.023956422, -0.05457669, -0.004194942, -0.010887913, -0.14629191, -0.19171734, 0.0029604908, -0.021797882) * inp_6_0_0; - result1 += M4(0.5365311, 0.37141398, 0.13879834, 0.19816291, 0.15164731, -0.09058792, 0.12928675, -0.086648524, -0.041124288, -0.07925421, -0.11354387, -0.020083841, -0.4031925, -0.012262253, -0.2475933, -0.0069691967) * inp_6_1_0; - result1 += M4(-0.14957668, -0.045287687, 0.047331795, -0.042723533, -0.16956678, 0.025314579, -0.061200775, 0.047589716, -0.32226026, -0.11580966, -0.08989654, -0.06745259, -0.32355902, 0.0058620097, -0.043646835, -0.0498151) * inp_6_2_0; - result1 += M4(-0.047738675, -0.12124872, 0.042676702, 0.0011268207, -0.10995072, 0.0020375038, -0.12557913, 0.04031263, -0.025224853, -0.18724422, 0.10068732, 0.06354722, 0.007086582, -0.21809225, 0.09507718, -0.043279514) * inp_6_0_1; - result1 += M4(-0.16269927, -0.22360799, -0.12514202, -0.21360154, -0.0964605, -0.035868667, -0.07893717, 0.044458803, -0.2917345, -0.32253006, 0.3287736, 0.02422768, -0.19658425, -0.09783653, 0.04691931, 0.41060805) * inp_6_1_1; - result1 += M4(-0.09250478, 0.056079313, -0.14411782, 0.059837326, 0.20119993, 0.030612249, 0.1657229, -0.16718741, -0.043672252, -0.1185902, -0.020840827, -0.30506852, 0.12518395, 0.01598942, -0.059582528, 0.18441154) * inp_6_2_1; - result1 += M4(-0.09172216, -0.009629782, -0.015602421, -0.010753845, 0.0412345, -0.079077095, 0.038258307, -0.055685762, 0.01157887, 0.011026738, 0.09052996, 0.055642277, -0.003940355, -0.2798258, -0.13360977, -0.028775064) * inp_6_0_2; - result1 += M4(-0.009138351, 0.03494962, 0.0065306383, -0.08578752, -0.04170868, 0.042906422, -0.055335607, 0.055502962, -0.04867051, 0.07057223, 0.36558217, -0.48015314, -0.086553805, -0.06933616, 0.032815017, 0.18096568) * inp_6_1_2; - result1 += M4(0.014673894, -0.10610835, -0.0074351965, 0.09575077, -0.012424165, -0.012328801, -0.036995895, 0.09634815, 0.03006763, 0.040278666, 0.04421665, -0.46538246, 0.035986736, 0.08071736, -0.104177855, 0.0718706) * inp_6_2_2; - result2 += M4(-0.31740284, 0.059834976, -0.12516943, 0.21496852, -0.019484386, -0.0051678107, -0.035136268, -0.027692137, -0.05410684, 0.117962964, -0.029327452, -0.04639143, 0.26351282, 0.09548236, -0.0060033267, -0.42318338) * inp_6_0_0; - result2 += M4(-0.18309422, -0.0579642, 0.15696394, -0.027341, -0.068085045, -0.025108362, 0.021899814, -0.13785566, -0.17053324, 0.010922231, 0.09052589, 0.1461255, -0.027579466, 0.04450506, -0.17439415, -0.008762053) * inp_6_1_0; - result2 += M4(0.032779124, 0.029070573, -0.06505014, -0.29603273, 0.10559334, 0.03302554, -0.02377318, 0.083711565, 0.11515588, -0.019546265, 0.119034596, -0.104713164, 0.0066463873, 0.06770931, 0.100305505, -0.11877071) * inp_6_2_0; - result2 += M4(0.16633001, 0.014422609, -0.09622945, -0.05446224, 0.016851008, 0.04116402, 0.019642545, -0.050805446, 0.048982948, 0.24707416, 0.21375592, -0.13647313, 0.16030104, -0.046362497, 0.030269919, -0.051153775) * inp_6_0_1; - result2 += M4(0.1746362, -0.10411125, -0.12243904, 0.44436485, -0.0016834078, 0.016682133, 0.035821818, 0.18596077, -0.41486394, -0.08702639, 0.19862361, -0.2547863, -0.18779385, -0.30222958, -0.002257554, -0.20585369) * inp_6_1_1; - result2 += M4(0.24939948, 0.24979293, 0.2561073, -0.13550067, 0.023696458, -0.019741118, 0.032757834, -0.086387046, 0.43340343, -0.08596144, 0.25805432, -0.17595477, 0.06988567, -0.06416127, -0.013350372, -0.075818636) * inp_6_2_1; - result2 += M4(-0.094905846, 0.121916704, 0.005441626, -0.06689272, -0.050357603, -0.046910554, 0.033382565, 0.00027242082, 0.28802496, 0.2144044, 0.0828979, -0.45589492, 0.09909467, 0.12974453, 0.018491035, -0.018962549) * inp_6_0_2; - result2 += M4(0.0259535, -0.104768164, 0.008755583, 0.043755323, 0.011079157, -0.012618627, -0.008698899, -0.05797831, -0.16075389, 0.34838724, 0.015252601, 0.120890535, -0.07311199, -0.04821502, 0.06541705, -0.08120116) * inp_6_1_2; - result2 += M4(-0.13060059, -0.11998557, -0.08550533, 0.016290747, -0.025922386, 0.010260415, -0.06360269, 0.09484236, 0.39893705, 0.09323619, 0.06121475, -0.15588726, -0.18579265, -0.11277488, 0.089249864, 0.081140324) * inp_6_2_2; - result3 += M4(-0.0055520786, -0.045923326, -0.17481375, -0.08054028, -0.014413053, -0.0008735142, 0.07703627, 0.038434267, 0.019789943, 0.026607282, -0.0012448911, 0.0068359408, 0.050273024, -0.30316892, 0.17604847, 0.0063592475) * inp_6_0_0; - result3 += M4(0.05240217, 0.47661316, -0.23152032, 0.31951302, -0.044621706, 0.08766225, -0.11060321, 0.10980126, 0.037273157, -0.07633562, 0.16110106, 0.045141876, -0.08655233, -0.32549873, 0.05379652, 0.019600205) * inp_6_1_0; - result3 += M4(0.06175196, -0.33186746, -0.14788178, -0.25869834, 0.0406265, -0.08668249, -0.023833442, -0.10720952, -0.054560162, 0.028416842, -0.002276328, 0.008109136, 0.0995168, 0.051301323, -0.010780674, -0.025693351) * inp_6_2_0; - result3 += M4(0.006650491, 0.099566884, 0.23086767, 0.18198805, 0.1047502, 0.0015644347, 0.10156702, 0.030871691, -0.020316359, -0.098376416, 0.44006836, 0.08522969, -0.11513422, 0.0005242916, 0.18276834, 0.10067318) * inp_6_0_1; - result3 += M4(0.24261007, -0.19287121, 0.48799738, 0.06747219, 0.028229386, -0.013725357, 0.054624997, 0.08070467, -0.23071113, 0.046144582, -0.064592205, 0.04376498, -0.034646794, 0.04331316, 0.024823733, -0.074513644) * inp_6_1_1; - result3 += M4(-0.240307, -0.10129057, 0.103862576, -0.014216529, -0.10541394, 0.05458735, -0.03556984, 0.021761395, -0.07031119, -0.0024601298, 0.0155360885, 0.083334446, 0.33358607, 0.012461422, 0.09182094, -0.10588655) * inp_6_2_1; - result3 += M4(0.1044999, -0.004698021, -0.1328767, 0.08117239, -0.02970529, -0.022860704, -0.11876629, -0.006008861, 0.10634996, 0.00042160496, -0.0039613782, 0.060543217, -0.023358667, 0.023471134, 0.3270559, -0.045574088) * inp_6_0_2; - result3 += M4(-0.036294475, 0.011511422, -0.24680799, 0.08552303, -0.019035501, -0.07285136, 0.061031524, -0.24161075, 0.55607533, -0.07634268, 0.073619895, 0.5444011, -0.056061752, -0.033220883, 0.00736681, -0.23499887) * inp_6_1_2; - result3 += M4(-0.13168584, 0.032751307, -0.061029635, -0.38766843, 0.041274447, 0.058222577, 0.00040531284, 0.05686063, -0.28632, 0.020804059, 0.028954087, 0.54616255, -0.07638783, -0.040233895, 0.008185515, -0.16887456) * inp_6_2_2; - result4 += M4(0.021014899, -0.23257335, 0.10908116, 0.049677104, -0.010706699, -0.0025268975, -0.029650755, 0.006841183, -0.037175335, -0.12732197, 0.01224852, -0.038553767, -0.096872814, 0.08208579, 0.005065866, -0.004424213) * inp_6_0_0; - result4 += M4(0.30760583, -0.26594537, -0.52394587, -0.13480948, 0.11955684, -0.01214558, -0.009172044, 0.03540662, 0.040412627, 0.06440845, -0.03958064, -0.06775872, -0.3861563, 0.48515803, 0.4625485, -0.08201314) * inp_6_1_0; - result4 += M4(0.015019964, 0.2442031, 0.14843407, 0.025962237, -0.055135477, -0.011729094, 0.007888013, -0.04339612, 0.0429457, 0.023572879, -0.06579431, -0.063621506, 0.0130741, 0.0363486, 0.048632536, -0.18403007) * inp_6_2_0; - result4 += M4(-0.024319299, 0.021416951, -0.06855553, -0.01799857, 0.045002002, -0.026169091, -0.038566716, -0.15241143, -0.15876193, -0.060436662, 0.20814975, 0.051819265, -0.03171432, 0.18586141, 0.17319548, 0.051888224) * inp_6_0_1; - result4 += M4(-0.123705, 0.17268515, 0.046551656, 0.13121763, -0.09615399, 0.07168751, 0.041158095, 0.08131601, 0.06125031, -0.2981448, -0.15018675, -0.0992648, -0.18820827, 0.06574649, -0.081524566, -0.11516111) * inp_6_1_1; - result4 += M4(-0.020287178, -0.00111489, 0.0051764217, 0.014536235, 0.07059678, -0.017407784, 0.021701941, -0.015120534, 0.12757881, -0.1373812, -0.08626615, -0.34541667, 0.090520956, 0.10646134, -0.07697991, -0.35050184) * inp_6_2_1; - result4 += M4(0.17335932, -0.019487673, -0.023317473, -0.03052065, -0.04861947, 0.05373587, 0.030106997, 0.05198052, 0.18925032, 0.052510828, 0.0825563, 0.031150999, -0.085577086, -0.010539492, -0.11003846, 0.082292795) * inp_6_0_2; - result4 += M4(-0.035194226, 0.06864861, 0.11752793, -0.021350715, -0.053756166, -0.102056295, -0.051101096, -0.050833315, 0.5574561, 0.03408037, 0.08730504, 0.08215762, -0.10789154, -0.28758618, 0.15261382, -0.12433911) * inp_6_1_2; - result4 += M4(-0.20119852, -0.022785297, 0.11658091, -0.021930832, 0.033056416, 0.04350309, 0.031768203, 0.08722095, 0.22123894, -0.028785357, -0.17250648, -0.10282535, -0.17585056, -0.034084268, 0.045127608, -0.25899887) * inp_6_2_2; - result5 += M4(-0.008970008, 0.18330541, 0.058331963, 0.047766495, -0.02936956, 0.0648141, 0.017195985, 0.1038117, 0.0035972667, -0.0016248908, -0.11120426, 0.021144567, 0.025977716, -0.088254705, -0.22120368, -0.35272697) * inp_6_0_0; - result5 += M4(-0.025607567, -0.34691322, -0.1865639, 0.27761155, 0.02142925, 0.14584486, -0.07006324, -0.03045189, -0.123869784, 0.14772202, -0.0028367718, -0.07525895, -0.10506516, 0.06504072, 0.093665905, -0.38310507) * inp_6_1_0; - result5 += M4(0.16325177, 0.01959611, -0.16644342, -0.043497477, -0.015460847, -0.14936414, 0.060243372, -0.047759444, -0.056542724, -0.040623378, 0.15484227, 0.02120489, -0.17430803, -0.0724938, -0.06938763, -0.008402495) * inp_6_2_0; - result5 += M4(0.12771715, -0.054278955, 0.07622184, -0.12526777, -0.026307164, -0.14081536, 0.0025962244, -0.1617063, -0.015355412, -0.11567283, -0.17243865, 0.046503074, 0.012385835, -0.23852573, -0.23891959, 0.23359582) * inp_6_0_1; - result5 += M4(0.11043315, -0.3406223, 0.06754711, 0.0018288603, -0.010256961, -0.06685492, -0.006568543, 0.0017089872, -0.39755353, 0.15153097, 0.032098215, 0.027560363, -0.19362979, -0.09809281, -0.11144772, -0.0033844067) * inp_6_1_1; - result5 += M4(-0.27448988, 0.10096024, -0.0805654, -0.16951114, -0.006772396, 0.11887377, -0.033789925, 0.15550864, -0.063988976, 0.0060438686, 0.18961471, -0.0726418, 0.09557244, 0.10976969, -0.08029769, 0.01765322) * inp_6_2_1; - result5 += M4(-0.004463185, 0.5885658, -0.030333657, -0.018867813, 0.020160003, 0.077052645, 0.0016403686, 0.057885032, 0.09274015, -0.019264663, -0.40931132, -0.2482086, -0.025982507, 0.41451612, -0.087210335, 0.09351521) * inp_6_0_2; - result5 += M4(0.040551748, -0.1651658, 0.062945604, 0.10491737, -0.0038270515, -0.015471807, 0.03785678, 0.03353031, -0.13539134, 0.15022597, -0.0822342, -0.48544258, -0.0793646, -0.16938193, 0.08579426, 0.1088864) * inp_6_1_2; - result5 += M4(-0.14728616, 0.1846319, 0.17957322, -0.03961032, 0.05314379, -0.05291961, -0.0054912055, -0.11816961, -0.20377563, 0.050793424, 0.0025970703, -0.1896274, 0.019969404, -0.13942194, 0.056280892, 0.142744) * inp_6_2_2; - result6 += M4(0.3400861, 0.18781947, 0.048769116, -0.8301532, 0.16605073, -0.002999227, 0.055402745, 0.30590987, -0.06094574, 0.025541661, -0.03633988, 0.13576196, -0.16812795, 0.08629278, -0.0039168163, 0.3739273) * inp_6_0_0; - result6 += M4(-0.17304778, -0.046147436, 0.026077474, 0.21996075, -0.043477375, 0.0103175165, -0.013712172, -0.15419707, 0.13870983, -0.06173406, 0.032702614, 0.13045502, 0.010164441, 0.044267192, 0.17206275, 0.26860413) * inp_6_1_0; - result6 += M4(0.48117328, -0.16660897, 0.15593065, -0.45029646, -0.06361911, -0.028485302, -0.04241365, -0.119653024, -0.038999677, 0.033120267, -0.097018495, -0.13830966, -0.016084023, 0.061092492, -0.08288706, -0.06792345) * inp_6_2_0; - result6 += M4(-0.49992839, 0.02515527, 0.05841668, 0.37688017, -0.028456468, 0.0576567, -0.06883935, -0.37231454, 0.057277452, 0.12511061, 0.02980882, 0.50927365, 0.04640524, -0.043200273, 0.014388907, 0.3125361) * inp_6_0_1; - result6 += M4(-0.052738674, -0.021048322, -0.13826658, 0.0155287525, 0.0055635683, -0.13608667, 0.05111773, 0.14574416, -3.9198763e-05, -0.18461607, -0.0859751, -0.08394741, 0.004846554, -0.21385768, -0.097095124, -0.021411052) * inp_6_1_1; - result6 += M4(-0.4214824, 0.17206524, -0.059429172, 0.54864633, -0.029232763, 0.067735314, 0.022078505, 0.16832419, -0.1115888, 0.10164106, -0.06164887, 0.08820183, -0.008314735, -0.013319943, -0.080372795, -0.027177978) * inp_6_2_1; - result6 += M4(0.21877193, -0.028711943, -0.02153519, -0.47885486, -0.008530072, -0.013441008, 0.0033552481, 0.13058239, 0.016128004, -0.01874017, 0.020186827, -0.059792373, 0.091081664, 0.17210765, 0.09064621, 0.018544585) * inp_6_0_2; - result6 += M4(-0.08876255, -0.13554043, 0.0046528988, 0.29926732, 0.039428838, 0.07810656, -0.081576794, -0.11273133, 0.01676987, -0.20116642, 0.09757684, -0.0874321, -0.044223938, -0.043803003, -0.011942903, 0.008472959) * inp_6_1_2; - result6 += M4(0.081863284, -0.011457374, -0.047813598, 0.08518129, -0.034978665, -0.032565765, 0.063301526, 0.017525574, -0.08767553, 0.021459816, 0.059783716, 0.28095913, -0.047336385, 0.043343283, -0.09049129, 0.100984596) * inp_6_2_2; - result7 += M4(0.00350137, -0.35291827, 0.13311274, 0.1121051, 0.017177885, -0.21017247, -0.016572451, -0.02815682, 0.0610628, -0.07229116, -0.020286033, 0.04900401, 0.077214174, 0.15323049, -0.012443147, -0.007455795) * inp_6_0_0; - result7 += M4(-0.05953393, 0.11118143, 0.16367507, 0.04553902, -0.009096176, 0.09163327, -0.07779074, 0.0040041795, -0.061874453, 0.19398528, 0.21869624, -0.1076151, -0.010681083, 0.015304463, -0.11160594, -0.068752505) * inp_6_1_0; - result7 += M4(-0.077012, -0.16968796, -0.056501042, -0.02458789, -0.026513342, 0.1345618, 0.12206851, 0.010311867, 0.0006976325, -0.13473281, -0.024617571, -0.016439578, 0.12659933, -0.13702437, -0.4734505, 0.043445427) * inp_6_2_0; - result7 += M4(-0.086421765, 0.17283766, -0.09001066, -0.34716144, 0.027067471, -0.09540695, 0.013541523, 0.17305899, 0.15389067, 0.22994883, -0.19940425, 0.5263899, -0.21506248, 0.19928144, 0.020908426, 0.4877212) * inp_6_0_1; - result7 += M4(0.43871263, 0.59838665, 0.00021475446, 0.08932076, 0.08248992, 0.21119303, 0.09961122, -0.105529524, -0.29753268, 0.06409778, 0.13668844, -0.12015892, -0.28555074, -0.045077685, -0.016992008, 0.052704614) * inp_6_1_1; - result7 += M4(0.10520084, 0.23297927, 0.0074343733, -0.013848509, -0.01544088, -0.124998644, -0.05592098, -0.005490047, -0.07750231, -0.11652622, 0.1642275, 0.16489813, -0.2735982, 0.08431594, -0.059703913, 0.08091561) * inp_6_2_1; - result7 += M4(0.13990402, -0.24685353, -0.8839939, -0.22645675, -0.041664973, 0.30335814, 0.001892476, -0.15932228, -0.021286676, -0.18339342, -0.53761214, 0.47317615, -0.085401, -0.3339414, -0.09818974, 0.112843245) * inp_6_0_2; - result7 += M4(-0.26522735, 0.30025405, 0.2628932, 0.018277753, -0.10889261, -0.24591005, 0.02738453, 0.09904436, 0.97425, 0.052042857, -0.22757183, 0.09021978, -0.35591847, 0.21629998, 0.10042988, -0.019433118) * inp_6_1_2; - result7 += M4(-0.078344174, -0.39550453, 0.403508, 0.37464714, 0.078971595, -0.084268756, -0.11428448, 0.013725482, 0.27367628, -0.028428042, 0.0398724, 0.02878444, -0.13248467, 0.10825841, 0.13461894, 0.047664493) * inp_6_2_2; - const V4 inp_7_0_0 = inp[7][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_7_1_0 = inp[7][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_7_2_0 = inp[7][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_7_0_1 = inp[7][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_7_1_1 = inp[7][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_7_2_1 = inp[7][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_7_0_2 = inp[7][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_7_1_2 = inp[7][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_7_2_2 = inp[7][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.018667128, -0.09891589, 0.012543494, 0.0460564, -0.031662624, -0.02974168, 0.040079873, -0.048156276, -0.07288146, -0.12294533, 0.12041218, -0.039921805, 0.02538562, 0.051343992, 0.08729383, 0.0078939125) * inp_7_0_0; - result0 += M4(0.066348106, 0.034063503, 0.033772025, 0.029179094, -0.0420678, 0.12486059, 0.002692002, 0.05460005, 0.16452648, 0.14919713, 0.024351351, -0.15407394, -0.045284253, -0.004729923, -0.081120715, -0.019673815) * inp_7_1_0; - result0 += M4(-0.029210323, -0.018975813, -0.018398229, -0.11200306, -0.004407049, 0.02504821, -0.06589292, 0.08402983, 0.002708473, -0.04022959, 0.018301237, -0.24887764, 0.024713425, 0.0064917644, -0.04125147, 0.054746542) * inp_7_2_0; - result0 += M4(-0.05838022, 0.2186896, -0.0031097399, -0.18825798, 0.06884634, -0.076592036, 0.009859605, 0.12175709, -0.18764454, -0.1770828, -0.010054626, 0.06515225, 0.09110911, 0.21004434, 0.0077008633, 0.05564252) * inp_7_0_1; - result0 += M4(0.03781994, -0.121062264, -0.041951586, 0.02176236, -0.0841408, 0.5605513, -0.048282534, 0.41470146, -0.12949519, 0.28254738, -0.0391585, 0.292215, -0.009391463, -0.2481056, 0.0018397472, -0.14018147) * inp_7_1_1; - result0 += M4(0.09987542, -0.023763278, 0.027377905, 0.08962048, 0.019199377, 0.09630781, 0.17110567, 0.073534824, -0.1154744, -0.03709259, 0.017601747, 0.19299263, -0.070638776, 0.04171482, -0.008125148, 0.0033556093) * inp_7_2_1; - result0 += M4(0.017702281, 0.014246498, -0.031873286, 0.073080845, 0.28637746, 0.059546273, 0.026723765, 0.048650242, 0.1545774, -0.017952915, 0.101624586, -0.014670383, -0.08992016, -0.22677775, 0.029839858, 0.0061375834) * inp_7_0_2; - result0 += M4(-0.099450916, 0.005559085, -0.018309705, 0.037569806, 0.44122383, 0.25890478, 0.055293933, 0.046765495, 0.13587216, -0.08918994, -0.09849681, -0.018595638, 0.029328909, 0.16146804, -0.010964702, 0.056196548) * inp_7_1_2; - result0 += M4(-0.03666936, 0.019001337, 0.033999063, -0.035578035, 0.18604374, -0.015581672, 0.019384613, 0.027414525, 0.098175526, 0.06837461, -0.098081045, 0.04016464, 0.05351315, 0.017757699, 0.014802086, -0.026817812) * inp_7_2_2; - result1 += M4(0.024352932, 0.011135055, -0.03731535, 0.050414313, 0.07872328, -0.018456474, -0.043282326, -0.036157846, -0.0021992598, 0.05543582, 0.050397843, 0.05647285, -0.053542353, -0.08122074, 0.04156814, -0.03370447) * inp_7_0_0; - result1 += M4(0.01782502, -0.0332941, -0.047436, 0.057626784, -0.05586074, -0.09463951, 0.105343774, -0.006434194, 0.3567934, -0.20615168, 0.13620129, -0.15068184, -0.054385483, -0.04453329, -0.059760887, 0.07644417) * inp_7_1_0; - result1 += M4(-0.18728139, 0.02371664, -0.046680473, -0.047279503, -0.26420343, -0.056246694, -0.25338405, -0.16984557, -0.12598641, 0.022931803, -0.065156616, 0.17421253, 0.33083242, 0.06661363, 0.001685711, -0.061276272) * inp_7_2_0; - result1 += M4(-0.047557347, -0.037854932, -0.027581478, -0.06355678, 0.1028766, 0.11215637, 0.036245927, 0.026147915, 0.01912664, 0.00083592435, -0.08076348, 0.034335338, 0.07139471, 0.098602, -0.08195666, 0.049115874) * inp_7_0_1; - result1 += M4(-0.09013499, -0.032856934, 0.03369709, 0.027849909, -0.011352829, -0.13221489, -0.19502674, -0.06795355, -0.080508776, 0.15340994, -0.023276865, -0.089648634, -0.038880747, 0.022849496, -0.008904353, -0.075809285) * inp_7_1_1; - result1 += M4(0.21968709, 0.02330895, 0.13096929, 0.09382379, -0.51247, -0.07170268, -0.3709238, -0.71496177, -0.015753169, -0.15793282, 0.072291404, -0.341486, -0.25868288, -0.08321542, 0.030923624, 0.0534731) * inp_7_2_1; - result1 += M4(0.02187333, -0.030035304, 0.02557477, -0.03889416, -0.008916212, -0.13555889, 0.027908618, 0.024768552, 0.02357099, -0.13058545, 0.03925025, -0.15646002, -0.008007099, -0.025259733, -0.02135987, -0.015229466) * inp_7_0_2; - result1 += M4(0.03663725, 0.04951889, 0.04898753, -0.12581733, 0.02825007, -0.22486748, -0.3114186, 0.4763252, 0.056432545, 0.1689634, -0.05359935, 0.18053718, 0.062001508, -0.07805632, 0.09522405, 0.06479125) * inp_7_1_2; - result1 += M4(-0.028340427, 0.010632982, -0.06880771, 0.03003837, -0.018686136, -0.0140495375, -0.08241223, -0.43100026, -0.18664712, -0.038012896, -0.107790716, 0.2052991, -0.011559044, 0.039142504, 0.009260753, -0.064413846) * inp_7_2_2; - result2 += M4(-0.0406237, -0.0029669853, -0.0821162, 0.17505115, 0.019844456, 0.0056926915, 0.03728038, -0.01510208, -0.048292898, -0.07104974, -0.052974157, -0.013240231, 0.0515688, 0.005383018, 0.037697386, -0.20257647) * inp_7_0_0; - result2 += M4(-0.023034357, 0.07413694, 0.052728504, -0.115678884, -0.30063096, 0.0024695443, -0.053162355, 0.12553528, -0.053272296, 0.08779458, -0.055576865, -0.17503345, -0.018641269, -0.086553685, -0.11320299, 0.32842723) * inp_7_1_0; - result2 += M4(0.03362029, -0.061339676, 0.018617453, 0.11050554, 0.088881806, -0.025442684, 0.16228414, 0.053689506, 0.119427495, 0.0097622285, 0.0306637, 0.15110387, -0.016028278, 0.061858203, 0.05425757, -0.14574686) * inp_7_2_0; - result2 += M4(0.15934283, 0.11009822, 0.08115214, -0.14055282, 0.09558982, 0.052750994, -0.08098915, 0.059924368, -0.008873308, -0.10304561, 0.060874324, -0.025061445, 0.07522323, 0.05505612, 0.092320524, 0.047443245) * inp_7_0_1; - result2 += M4(-0.19288939, -0.16191866, -0.021244608, 0.07190104, -0.119253784, 0.22399306, 0.012591115, 0.41743973, 0.020587876, 0.028041868, -0.044813883, 0.32749063, 0.020917227, 0.059447046, 0.08926621, -0.18463963) * inp_7_1_1; - result2 += M4(-0.031208517, 0.015582731, -0.031571142, -0.01023606, 0.1967407, -0.016847024, 0.5080684, -0.011815767, -0.10991422, 0.21292171, 0.14553706, -0.070278056, -0.10622841, -0.011963378, -0.17120628, 0.11328474) * inp_7_2_1; - result2 += M4(-0.046360534, -0.02726348, -0.01579058, -0.027267406, 0.07867728, -0.097559646, 0.016435817, -0.027042052, 0.1374816, 0.036794316, 0.014720197, -0.21134268, -0.04873313, -0.14270392, -0.110010445, 0.106702775) * inp_7_0_2; - result2 += M4(0.112950295, -0.0014318544, 0.06289801, -0.03713267, -0.18236044, -0.12966882, 0.08696936, 0.22205406, -0.05172752, -0.1663417, -0.14437824, 0.0773417, -0.00823086, 0.17019866, -0.045996636, -0.050875153) * inp_7_1_2; - result2 += M4(0.04776573, 0.06434987, -0.05031598, -0.09992642, -0.07003822, -0.03110293, 0.25800526, 0.2467357, -0.019277494, -0.0024414356, 0.09479025, 0.099230215, 0.050043426, -0.09458621, 0.1778574, -0.008754435) * inp_7_2_2; - result3 += M4(-0.027184216, 0.08426594, 0.03194542, 0.052235685, 0.0055127987, 0.009257544, 0.20027652, -0.0017038005, 0.018434888, 0.2126665, 0.33543256, 0.13200223, -0.0075127203, -0.13198502, 0.06229863, -0.061523054) * inp_7_0_0; - result3 += M4(-0.009886681, -0.19694616, -0.09238637, -0.062124077, 0.035628043, 0.06818078, -0.2406381, -0.029461907, 0.08127754, 0.060431056, -0.10344622, -0.13954563, -0.04163744, 0.07699414, -0.015076265, 0.09904294) * inp_7_1_0; - result3 += M4(0.04760271, -0.013293685, -0.04856615, -0.1275593, -0.04560069, 0.047318008, -0.070523314, -0.12762472, 0.021495346, -0.0022698198, -0.15193957, 0.1424735, 0.0074843415, 0.13591784, 0.10047197, -0.02777717) * inp_7_2_0; - result3 += M4(-0.025692072, -0.047626503, 0.23408772, -0.096431725, -0.03155689, 0.049186416, -0.19023705, -0.031847958, 0.069043726, -0.03928916, -0.19994527, -0.07915209, -0.03790315, 0.15507019, 0.03804446, 0.009607007) * inp_7_0_1; - result3 += M4(-0.085548945, 0.094816655, -0.0012916701, -0.06023546, 0.030769655, -0.26264814, 0.18143483, 0.1200975, -0.036825404, -0.027181085, 0.16513315, 0.113582514, 0.004125214, -0.13517602, -0.3061283, -0.13930932) * inp_7_1_1; - result3 += M4(0.022169909, -0.0012382567, -0.017302206, -0.01758973, -0.23944347, -0.094529994, -0.047281202, -0.06741965, -0.11369335, 0.03182221, -0.067185044, 0.13192856, 0.06030432, -0.09658722, -0.0010858224, -0.014165337) * inp_7_2_1; - result3 += M4(0.06776488, -0.05177188, -0.16517468, 0.07271367, -0.031494938, -0.042435028, 0.23299047, -0.13915764, -0.053991757, 0.006283507, -0.2294771, 0.13745615, -0.020528287, 0.015396415, 0.067688726, -0.1476111) * inp_7_0_2; - result3 += M4(0.056555584, 0.06659644, 0.09471348, 0.10985622, -0.27391636, -0.08704194, -0.19730972, -0.5079147, -0.268297, -0.10230747, 0.17856225, -0.32859573, 0.15353145, 0.026527861, 0.08573311, 0.06355816) * inp_7_1_2; - result3 += M4(-0.06677005, 0.052909385, -0.019951656, 0.23069358, 0.6436752, -0.030432418, -0.07757261, -0.61920446, 0.30673635, -0.09324297, 0.061475698, -0.28537786, -0.117787704, -0.016898092, -0.0058988445, 0.23317236) * inp_7_2_2; - result4 += M4(0.02373053, -0.016557023, -0.035959493, 0.063145824, 0.00859606, -0.08546588, -0.13290222, -0.015270036, 0.14317144, -0.11183707, -0.016606893, 0.05698652, 0.0029321415, 0.065466106, 0.039965566, 0.052969623) * inp_7_0_0; - result4 += M4(-0.13595773, 0.16608624, 0.11176064, -0.10769798, 0.081284784, -0.17527322, 0.072172605, 0.08411263, 0.13525172, -0.22239445, 0.0212493, -0.058572534, 0.044021532, 0.009513687, -0.13649936, -0.0120004965) * inp_7_1_0; - result4 += M4(-0.04320901, 0.012703676, 0.032488093, -0.0055347797, -0.07308589, 0.031190656, -0.24980359, 0.1482586, 0.055513177, -0.19711503, -0.11032191, 0.014229805, -0.025245242, -0.12795812, 0.05825791, -0.01473897) * inp_7_2_0; - result4 += M4(0.070727415, -0.027075775, 0.014758359, -0.078833126, 0.13130352, 0.12848711, -0.0073447507, 0.121906884, 0.088115126, 0.14242229, -0.08694172, -0.11650617, -0.0066070883, 0.009503623, -0.0038671563, -0.08026811) * inp_7_0_1; - result4 += M4(-0.06674762, -0.04789071, -0.060071867, 0.15249534, -0.15783028, 0.2961436, 0.09495574, 0.23769115, -0.10493989, 0.30180857, -0.03338699, -0.015060911, 7.438413e-05, -0.084543355, 0.086173005, 0.027843144) * inp_7_1_1; - result4 += M4(-0.047239304, -0.028085416, -0.039737906, -0.012673717, -0.1151908, 0.0152630275, -0.25404668, 0.60004365, -0.00071848085, 0.12319784, -0.08157425, 0.1089888, 0.0072378474, 0.069680735, -0.0300381, 0.09804494) * inp_7_2_1; - result4 += M4(-0.0366537, -0.018891267, 0.00734515, 0.013928434, -0.14416273, 0.031990584, 0.010919577, -0.018263223, 0.058104943, -0.028206363, 0.09969925, -0.028298406, -0.055756025, -0.007297225, -0.008517358, 0.00018386966) * inp_7_0_2; - result4 += M4(0.15695715, -0.04312029, -0.035404697, -0.111902684, -0.4345293, 0.08211588, 0.00805874, 0.018564543, -0.48682755, -0.024659706, -0.0016993358, 0.1337667, 0.034705482, 0.00013735883, 0.08938132, 0.009945447) * inp_7_1_2; - result4 += M4(0.11334222, 0.0209394, 0.022202704, 0.025934003, -0.247617, 0.10926145, -0.17880434, -0.13228989, 0.07545799, -0.025803301, 0.073757455, -0.07096191, -0.008683615, 0.04923879, -0.11496444, -0.06829012) * inp_7_2_2; - result5 += M4(0.0143696135, -0.033075757, 0.0514932, 0.11824883, -0.01756728, 0.07972871, -0.036992747, 0.046749514, -0.015453456, -0.18290345, 0.024620935, 0.10886574, 0.033959173, -0.012641882, -0.0331668, -0.087200165) * inp_7_0_0; - result5 += M4(0.0796436, 0.20423001, -0.02898544, -0.051698495, 0.060504295, 0.037466433, 0.042636365, -0.008561185, 0.13963549, 0.0888977, 0.006706422, -0.0232834, -0.05157727, -0.17414089, -0.00530863, 0.16633229) * inp_7_1_0; - result5 += M4(-0.07750503, -0.22722293, 0.08625628, -0.046528228, -0.14717415, 0.005306464, 0.15949535, 0.052549046, -0.17539339, -0.03799112, 0.07524153, -0.024360957, -0.03270975, 0.092610076, 0.0039297165, -0.024144927) * inp_7_2_0; - result5 += M4(0.042949397, 0.14442645, 0.029185856, -0.11464452, -0.06933511, -0.074650005, 0.09759213, -0.06668916, 0.030770874, 0.068942696, 0.04310359, -0.12897491, 0.013707872, -0.065829545, -0.13226475, 0.07246855) * inp_7_0_1; - result5 += M4(-0.13919532, -0.039208278, -0.035840295, 0.15738545, 0.13830696, 0.077699944, -0.0650735, -0.019985374, 0.18872832, 0.039005037, -0.047144786, -0.09772009, -0.08832576, 0.2758715, 0.16344427, -0.09733946) * inp_7_1_1; - result5 += M4(0.09526185, 0.104165375, -0.043836076, 0.079224244, -0.61907935, -0.09219119, 0.33870372, 0.024690738, -0.14449571, 0.20309724, -0.06726082, -0.0404906, 0.11793066, -0.2310277, 0.00040505367, -0.016626218) * inp_7_2_1; - result5 += M4(-0.050188307, -0.163575, -0.09820058, -0.006867198, 0.050242603, -0.2409076, 0.011668452, 0.23668292, -0.096974395, -0.22835024, -0.016510524, 0.013564419, -0.0070815366, -0.000378939, 0.15063219, -0.006179306) * inp_7_0_2; - result5 += M4(0.012576799, 0.14168589, 0.045693666, -0.1334002, 0.017062292, -0.011307241, -0.0064215716, 0.37088168, -0.054626614, 0.19646248, -0.0011222251, 0.1370298, 0.09339176, -0.15925786, -0.22043034, -0.059259392) * inp_7_1_2; - result5 += M4(0.016921213, -0.104078054, -0.003817059, -0.01151366, -0.2633571, -0.11213172, 0.32123384, 0.18419062, 0.073157564, -0.26540527, 0.023974901, 0.09596022, -0.09731037, 0.25612676, 0.07014094, 0.050409865) * inp_7_2_2; - result6 += M4(0.11135727, 0.027499361, 0.11840112, 0.23747757, 0.05897902, -0.070707135, -0.03002272, -0.41675013, -0.20431523, -0.12444572, 0.001844529, 0.12957881, -0.13380454, -0.102774225, -0.0265913, 0.09442151) * inp_7_0_0; - result6 += M4(-0.037449855, -0.008472579, -0.046444383, 0.07660395, -0.13692039, 0.058924828, 0.0029784406, 0.1106604, 0.2977049, -0.08240546, 0.05949323, -0.37167916, 0.1082618, -0.0026267888, 0.010454566, -0.22508122) * inp_7_1_0; - result6 += M4(-0.11496973, 0.091467984, -0.016127832, -0.13673685, 0.31970236, 0.039012622, -0.144941, 0.015827622, -0.18810552, 0.15480584, 0.040308, 0.24759999, -0.055143528, 0.09378978, -0.004089638, 0.10399816) * inp_7_2_0; - result6 += M4(-0.04967363, 0.112759136, -0.098443866, -0.2947368, -0.05928093, -0.018160515, 0.03526009, 0.24720111, 0.13589415, 0.03992464, -0.1478641, -0.20486692, 0.17720939, -0.05700415, -0.0010034938, 0.06079194) * inp_7_0_1; - result6 += M4(0.029119782, -0.12139767, 0.08578807, -0.090958215, 0.16535485, -0.051154707, 0.14227243, 0.14662851, -0.039925374, -0.07905605, 0.038447753, 0.122189686, -0.00057151256, 0.18437175, -0.048056748, 0.06337962) * inp_7_1_1; - result6 += M4(-0.018376572, 0.011767578, -0.027182046, 0.118040174, -0.12816937, 0.092552975, -0.13834433, -0.018399958, 0.098695606, -0.056981508, 0.09469071, -0.08336541, 0.15941742, -0.08270499, 0.044565145, -0.20587085) * inp_7_2_1; - result6 += M4(0.006850406, -0.114366494, -0.003185936, 0.096142404, 0.004272997, 0.084565714, 0.0084520625, 0.06789028, -0.09694042, 0.05683388, 0.06690559, 0.35634235, -0.15421695, 0.088207155, 0.026630187, 0.06791403) * inp_7_0_2; - result6 += M4(-0.02753252, 0.06001837, -0.048196938, -0.025189186, -0.0057051764, 0.09168139, -0.054794703, -0.039604455, 0.04645622, 0.08149877, -0.17305964, 0.07908374, -0.12710267, -0.1621436, 0.06847573, -0.050165206) * inp_7_1_2; - result6 += M4(0.12796403, -0.04561134, 0.012163752, 0.0062381555, 0.085985236, 0.24385245, -0.013229536, -0.5596679, -0.06622076, 0.010545661, 0.05590988, -0.30767438, 0.0073486078, 0.018521583, -0.049076047, 0.08950872) * inp_7_2_2; - result7 += M4(0.037594523, -0.35436016, 0.042367514, 0.024178594, 0.0037937309, 0.03650148, -0.082068995, -0.019121986, 0.00040891973, -0.25312346, 0.057319053, -0.049266882, 0.0082884785, 0.24285023, -0.10590169, -0.11329863) * inp_7_0_0; - result7 += M4(0.010932507, 0.11629082, -0.06491648, -0.029705007, 0.040182374, -0.027915731, 0.09066457, -0.07737517, 0.12069403, 0.06433116, -0.060258266, -0.0003017731, -0.09779715, -0.009555576, 0.085737504, 0.010604124) * inp_7_1_0; - result7 += M4(-0.040101565, 0.16018906, -0.016717644, 0.017143669, 0.033684686, 0.06618555, 0.25731698, -0.057101004, -0.15610147, 0.009652098, 0.013975567, -0.022678953, 0.056333654, -0.11937657, 0.084508, 0.047244504) * inp_7_2_0; - result7 += M4(0.021940455, 0.21523641, 0.03553953, 0.092077315, 0.123717554, -0.10095095, -0.086889215, -0.08330834, 0.0905449, -0.010311649, 0.032437198, -0.18989193, 0.056701086, -0.27412432, -0.15418805, 0.227598) * inp_7_0_1; - result7 += M4(-0.13193259, 0.00065695343, 0.041951135, -0.07802996, 0.17742813, 0.20451817, -0.06507054, 0.1984192, 0.12595175, 0.14343625, 0.004497779, 0.12952378, -0.064079754, -0.12158384, 0.014831404, -0.064374164) * inp_7_1_1; - result7 += M4(-0.08353744, -0.09667142, -0.089680284, -0.053944163, 0.041438777, -0.03594768, 0.21645296, 0.16349262, 0.15158717, -0.2016842, -0.046394594, -0.0027781122, 0.009879627, 0.2262091, 0.05029196, -0.04704955) * inp_7_2_1; - result7 += M4(-0.004589284, -0.046846163, -0.09985564, -0.0066485633, -0.24423689, 0.13213234, 0.31856805, -0.073499456, -0.06646334, 0.28624356, 0.46419278, -0.2137186, -0.10856467, 0.0394867, 0.2730321, 0.09978396) * inp_7_0_2; - result7 += M4(0.08012239, -0.04743213, 0.110889934, 0.06397174, -1.0359885, -0.29710242, -0.00058909203, -0.08402048, -0.37440798, -0.33130822, -0.05394311, 0.34912083, 0.23924185, 0.08216658, -0.2020824, -0.15094137) * inp_7_1_2; - result7 += M4(0.14957097, 0.026759256, -0.021680746, -0.0038145452, -0.23069958, -0.07665005, 0.028762886, 0.10251065, 0.06138239, 0.34501153, -0.2681542, -0.040964924, -0.10038086, -0.060250465, -0.026716117, -0.0145205315) * inp_7_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(4, 2); - imageStore(out_image, output_base + ivec2(0, 0), max(result0, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 0), max(result1, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 0), max(result2, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 0), max(result3, V4(0.0))); - imageStore(out_image, output_base + ivec2(0, 1), max(result4, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 1), max(result5, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 1), max(result6, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 1), max(result7, V4(0.0))); -} - -//!DESC ArtCNN C4F32 (Conv2D-2-ReLU) -//!COMPUTE 48 32 12 16 -//!HOOK LUMA -//!BIND conv2d_1 -//!SAVE conv2d_2 -//!WIDTH LUMA.w 4.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared V4 inp[8][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(4, 2); - inp[0][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(0, 0), 0)); - inp[1][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(1, 0), 0)); - inp[2][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(2, 0), 0)); - inp[3][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(3, 0), 0)); - inp[4][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(0, 1), 0)); - inp[5][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(1, 1), 0)); - inp[6][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(2, 1), 0)); - inp[7][y][x] = V4(conv2d_1_mul * texelFetch(conv2d_1_raw, input_base + ivec2(3, 1), 0)); - } - } - - barrier(); - V4 result0 = V4(-0.02396743, -0.056946166, -0.0024925207, 0.035545547); - V4 result1 = V4(-0.020992694, -0.01736431, -0.0062879184, -0.0060842275); - V4 result2 = V4(0.011336051, 0.018839965, -0.023679474, -0.0034890934); - V4 result3 = V4(0.022788396, -0.0045822696, -0.020859918, -0.011326331); - V4 result4 = V4(0.012159538, 0.027312677, 0.00043193233, 0.023529848); - V4 result5 = V4(-0.003479911, -0.0030607078, -0.020389289, -0.0030999135); - V4 result6 = V4(-0.0075409655, 0.011567325, 0.016808135, 0.0043578); - V4 result7 = V4(-0.004008702, 0.010407518, 0.011387981, 0.00903174); - const V4 inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.050735287, -0.30538884, 0.1831686, 0.057733826, 0.004552284, 0.0024610984, 0.13304444, -0.21122898, 0.06960709, -0.022257643, -0.030922977, -0.1837757, -0.011922753, -0.08626216, 0.053291567, -0.2770252) * inp_0_0_0; - result0 += M4(0.16399099, 0.73081297, 0.5770583, 0.16137508, -0.09048013, 0.035090175, -0.48287442, -0.2386542, 0.2815149, 0.16021761, 0.085519284, -0.2736319, 0.010448522, 0.038342148, 0.40982005, 0.062355883) * inp_0_1_0; - result0 += M4(-0.021056699, 0.05376499, -0.3073496, -0.22571953, -0.053180862, -0.4535291, -0.4052798, -0.17499661, -0.082095504, 0.048322022, -0.048752572, -0.029839838, 0.07457003, -0.028878167, 0.336762, 0.17608546) * inp_0_2_0; - result0 += M4(-0.00081239897, -0.04755066, 0.1368419, 0.053399045, -0.06816984, 0.0770945, -0.11705787, -0.172486, 0.028992148, -0.19331685, -0.03461286, 0.03623261, 0.10421698, -0.28816983, -0.16743173, -0.108294696) * inp_0_0_1; - result0 += M4(-0.18692963, -0.7689771, -0.115096144, -0.033729855, -0.034396574, -0.0075619775, -0.10259511, -1.0158943, 0.009859653, 0.7803673, 0.06845337, 1.152925, 0.42719692, 0.10490442, 0.027752308, -0.85685384) * inp_0_1_1; - result0 += M4(-0.033785507, -0.09067568, -0.16146053, -0.07091879, -0.18958549, -1.3080633, 0.2216691, 0.5047689, 0.16594657, 0.20463485, -0.1705836, 0.07263137, 0.18713252, 0.054555934, -0.008564952, -0.5504364) * inp_0_2_1; - result0 += M4(0.051852774, -0.12827693, -0.02698381, 0.08005271, -0.048681047, -0.04671663, 0.0013233608, -0.20361164, -0.0052572116, -0.08726818, -0.044772193, -0.18009642, 0.010159744, -0.19649784, -0.059944846, -0.022469223) * inp_0_0_2; - result0 += M4(-0.0105981035, -0.015894338, -0.025306337, -0.01747711, -0.0017757181, 0.117050774, -0.04393119, -0.030159973, 0.053207118, 0.07101631, -0.2624864, 0.0058366056, -0.06756068, -0.42366132, 0.30527717, -0.51192003) * inp_0_1_2; - result0 += M4(0.06342989, 0.025188694, -0.111543, -0.0028850988, -0.06305113, -0.065415666, -0.10790535, 0.115486644, 0.020697031, 0.15982108, -0.026865095, 0.14285704, 0.05336307, 0.18105993, 0.08738263, -0.02624248) * inp_0_2_2; - result1 += M4(0.16812007, -0.55585825, 0.3930849, -0.051753, -0.24891926, 0.06975918, -0.18251474, -0.0050848247, -0.039257027, -0.81002533, -0.11778256, -0.122837216, 0.23779184, -0.09555576, 0.29836783, -0.32539684) * inp_0_0_0; - result1 += M4(-0.2006533, -0.2059943, -0.17318733, 0.042182926, -0.1898529, 0.18011612, -0.1512393, -0.027582413, -0.036241636, 0.00020053038, 0.1575766, 0.28767055, 0.11073479, -0.011140709, -0.18228301, -0.14713195) * inp_0_1_0; - result1 += M4(0.054470513, -0.074369505, -0.04718737, 0.30259657, -0.23735137, -0.110039875, 0.09805528, 0.22051866, 0.05028295, 0.055259906, -0.07593314, -0.31047118, -0.017990647, 0.028915534, -0.047702823, 0.28564417) * inp_0_2_0; - result1 += M4(0.08483895, -0.31625685, -0.054988425, 0.41166556, 0.091123186, -0.06444419, -0.3256655, -0.0034134644, 0.14965199, -0.08815685, -0.2945302, -0.042564806, -0.2795614, 0.20189515, 0.027147338, 0.05253209) * inp_0_0_1; - result1 += M4(-0.15420228, -0.12509586, 0.12652859, -0.01913755, 0.24023773, 0.11012273, -1.0302838, -0.017885432, 0.36088416, 0.28047642, -0.090010226, -0.025596311, -0.14703958, 0.3134861, -0.2093117, 0.17423967) * inp_0_1_1; - result1 += M4(0.11386361, -0.2018537, 0.25841603, -0.115534276, -0.016964182, -0.35095692, 0.22960192, -0.1459766, 0.024842551, 0.08018503, 0.045637067, 0.3638744, 0.20003851, 0.14410204, 0.112818755, -0.3040108) * inp_0_2_1; - result1 += M4(0.025829792, -0.07078013, -0.14508882, -0.11138387, -0.1493913, -0.0050268923, -0.29801258, -0.09389611, 0.022624886, -0.016167799, 0.24326764, 0.076282956, 0.29372185, 0.15494978, 0.30463502, 0.24306686) * inp_0_0_2; - result1 += M4(0.04917804, 0.09692078, 0.028214492, -0.18632638, -0.14436938, 0.05430488, -0.21455072, 0.110075705, -0.026473593, 0.20624804, 0.033893127, 0.08363994, 0.09329692, 0.06686154, -0.22174212, -0.14763676) * inp_0_1_2; - result1 += M4(-0.02688614, -0.023820229, 0.071984336, -0.048167508, 0.062539056, 0.09555999, 0.061135743, -0.15377505, -0.13485415, 0.12886456, -0.09657158, 0.08822998, 0.028124362, -0.058405463, -0.04813609, -0.24226506) * inp_0_2_2; - result2 += M4(0.03834231, 0.20541431, -0.19302028, 0.1207404, -0.013942638, 0.007224718, -0.077538855, 0.020055816, -0.09362683, 0.02575559, 0.01750465, 0.16699524, -0.03461471, 0.14457493, 0.086024836, -0.041968163) * inp_0_0_0; - result2 += M4(0.062182005, -0.547083, 0.44047982, 0.12814236, -0.10317603, 0.017882127, 0.15158366, -0.09165787, -0.04524719, -0.3198863, -0.28415254, 0.028268067, 0.066726506, -0.1826544, 0.08756928, 0.061710384) * inp_0_1_0; - result2 += M4(0.12421067, -0.14326623, -0.13831018, 0.13429579, -0.086221926, 0.11676191, -0.11823481, -0.19502902, -0.017242065, 0.04768445, 0.072067805, 0.09228429, 0.047545005, 0.16990615, -0.16945937, -0.19962552) * inp_0_2_0; - result2 += M4(-0.25072232, -0.000104166254, -0.24311191, 0.05974805, -0.053561173, -0.031448405, -0.0737707, -0.021896482, -0.07606507, 0.08573376, 0.11686405, 0.0073337196, -0.00313405, -0.090923116, -0.12138736, -0.07866238) * inp_0_0_1; - result2 += M4(-0.036508236, 0.63295627, -0.42955694, 0.18170048, -0.21109363, 0.62127393, -0.9440722, -0.35816076, -0.01810714, -0.3924306, 0.27756092, 0.3960585, 0.17735992, 0.05543629, 0.19100192, 0.2327904) * inp_0_1_1; - result2 += M4(0.21086669, 0.110409714, -0.1956506, -0.11268377, -0.46008065, 0.45871827, -1.7261919, -0.092034206, 0.115519054, -0.0033986825, -0.16629836, -0.13649791, 0.094679065, -0.033303045, -0.21026188, 0.09531074) * inp_0_2_1; - result2 += M4(0.018454427, -0.006205657, 0.07882456, -0.019974062, -0.06337877, -0.057154555, -0.050435442, -0.01671209, -0.04061202, -0.061469704, -0.22454062, -0.03942165, -0.12633462, 0.039441027, 0.080914445, -0.107880585) * inp_0_0_2; - result2 += M4(0.04175145, -0.0036745747, 0.07502933, 0.057492357, -0.18134739, -0.24031068, 0.08534257, -0.08963867, 0.037463125, 0.21077849, 0.057288293, 0.085305095, -0.20295607, -0.15020172, 0.118406266, 0.18330635) * inp_0_1_2; - result2 += M4(0.027418934, -0.095726594, -0.0008899589, 0.014961938, 0.019270161, -0.1517069, 0.011298461, -0.28119618, 0.08326095, -0.0851205, -0.06774654, -0.026156636, 0.21404167, -0.37159544, 0.18398239, -0.16628468) * inp_0_2_2; - result3 += M4(0.22396977, 0.1888063, 0.06709379, 0.02574699, 0.007872548, -0.02525443, -0.007894949, -0.10327696, 0.0529767, 0.013464143, 0.087587304, -0.031226825, 0.09481515, 0.07083327, -0.07992925, -0.13014802) * inp_0_0_0; - result3 += M4(-0.25472137, 0.16062674, 0.20548174, 0.051449765, 0.30753288, -0.084163375, -0.20864914, -0.097510025, -0.06580446, 0.115959235, 0.16281141, -0.12545158, -0.18835874, -0.18893054, -0.008356928, 0.027881848) * inp_0_1_0; - result3 += M4(-0.017627679, -0.04252751, -0.011365825, -0.0011011182, 0.27736238, -0.21431996, -0.15695469, -0.0323607, -0.00017867325, 0.005751113, 0.10560478, -0.123618074, 0.18011636, 0.17298298, -0.11018082, -0.16574562) * inp_0_2_0; - result3 += M4(0.39610302, 0.11264103, -0.09727304, -0.020157162, -0.025847433, 0.03359702, -0.13503544, -0.10202386, 0.043697853, -0.02588183, 0.10828446, -0.1706377, 0.048402492, -0.08323651, 0.14192577, 6.631208e-05) * inp_0_0_1; - result3 += M4(0.19781601, -0.050034482, -0.03212312, -0.813351, 0.34150293, -0.156606, -0.13663505, -0.060183, -0.13829538, 0.061138187, 0.0010932682, -0.036729276, 0.02070518, 0.14526655, -0.3016247, -0.039045118) * inp_0_1_1; - result3 += M4(0.008145627, 0.023348909, -0.054323256, -0.2890166, 0.2743199, -0.087825544, -0.4304956, 0.3159, -0.11189808, 0.010728637, 0.6328974, 0.018658651, -0.22233534, 0.07410426, -0.19805594, 0.012206486) * inp_0_2_1; - result3 += M4(-0.057286665, -0.032610923, -0.048574768, -0.09426698, -0.13795295, -0.010558224, -0.0549819, -0.05105313, 0.11668344, 0.086112395, 0.04717804, 0.28941458, 0.21975365, -0.056851976, -0.14404301, -0.22164285) * inp_0_0_2; - result3 += M4(-0.099014245, 0.16074127, -0.031993836, -0.61098063, -0.13740832, -0.19140363, 0.020687053, -0.60974, -0.15567872, 0.15097718, -0.06045024, 0.36783674, -0.2067848, 0.21620597, 0.08766011, 0.07667121) * inp_0_1_2; - result3 += M4(-0.13173223, -0.015950125, 0.035382837, 0.19070916, -0.17467362, -0.10411174, -0.47769108, -0.5315547, 0.026815422, -0.10388578, 0.13615686, -0.1268393, 0.007538475, -0.16786025, -0.058834963, -0.37834066) * inp_0_2_2; - result4 += M4(-0.08002503, 0.100140534, -0.14028102, -0.035266366, 0.020578433, -0.039885927, -0.17114124, -0.060712345, -0.05671292, -0.06905764, -0.027185842, -0.15382694, -0.062085547, -0.14988218, 0.028741594, -0.11169817) * inp_0_0_0; - result4 += M4(-0.37031627, -0.08317162, 0.15746392, -0.18620658, 0.10979917, -0.036000695, -0.13183697, 0.0424023, 0.2743973, 0.1659613, 0.08646275, -0.15752095, -0.08182931, 0.040152628, -0.24585782, -0.41973317) * inp_0_1_0; - result4 += M4(-0.10278293, 0.2820052, -0.19561961, -0.10512991, 0.11926722, 0.11457039, -0.046738848, -0.13028048, -0.09738265, -0.19011304, -0.09480977, -0.10808303, 0.006773356, 0.002815374, 0.027816394, 0.0022725123) * inp_0_2_0; - result4 += M4(0.043009095, 0.14480026, -0.21781969, -0.12332025, 0.096009344, -0.053414512, -0.13602366, -0.04700412, 0.113963805, -0.22254314, -0.2904499, -0.123172246, 0.18461007, 0.2809246, 0.12510017, 0.13580813) * inp_0_0_1; - result4 += M4(0.47164768, -0.23799323, -0.23192947, 0.4741644, 0.56942624, -0.40192625, 0.17150412, 0.49147597, -0.30859748, -0.3876761, -0.10715524, -0.23824823, 0.02986435, 0.25003606, -0.05253915, -0.05772002) * inp_0_1_1; - result4 += M4(0.1290441, 0.12093204, 0.15744695, 0.17460011, 0.16997701, -0.1059263, 0.41136435, 0.22009729, -0.139346, -0.0013821287, 0.10344262, -0.120405786, 0.2535597, 0.09443435, -0.0564231, -0.10952317) * inp_0_2_1; - result4 += M4(-0.048899278, 0.118271686, -0.04773628, 0.041319475, 0.121991016, -0.03229336, -0.087819494, -0.10867969, 0.06404519, -0.13247235, -0.048839245, 0.1596521, 0.08426561, -0.18840215, -0.09553546, 0.010829253) * inp_0_0_2; - result4 += M4(0.095772244, 0.02785005, 0.0537099, -0.17519052, 0.1750218, -0.018139375, -0.26427975, -0.6576907, 0.0086736595, 0.09990305, 0.17273723, 0.39475748, 0.19738881, -0.12761796, -0.33383992, -0.048881117) * inp_0_1_2; - result4 += M4(-0.05248357, 0.0530829, 0.07954041, 0.10185529, 0.117502235, -0.13153139, -0.43990302, -0.5505976, 0.0554103, 0.13881484, -0.06382079, 0.13550404, 0.010131209, -0.13861102, -0.15294641, 0.06945521) * inp_0_2_2; - result5 += M4(-0.14249967, -0.09257894, -0.1542068, -0.3118104, 0.056704022, 0.04809611, 0.060700547, -0.2402284, 0.0049390197, 0.057051543, 0.089885145, -0.08246972, 0.13005266, -0.048629813, 0.018143391, 0.21422513) * inp_0_0_0; - result5 += M4(-0.16406342, -0.13011555, -0.043128576, -0.039964907, -0.025467379, 0.063876465, 0.096231155, -0.13828658, 0.15430379, 0.06933093, -0.09172176, 0.09001871, 0.35339215, -0.09297545, 0.11526358, -0.023089647) * inp_0_1_0; - result5 += M4(-0.02530683, -0.26913956, -0.07417641, 0.18291076, 0.012193413, -0.041100994, 0.052822582, 0.11496775, 0.085887134, -0.17330194, -0.07340497, 0.094411016, 0.06802186, 0.022810105, 0.010293679, 0.13500793) * inp_0_2_0; - result5 += M4(0.11454452, 0.18841419, -0.019688236, 0.04405056, 0.17366621, 0.10553578, 0.18243545, 0.026284019, -0.17374165, 0.01094402, -0.006701503, -0.08407589, -0.07270143, -0.07849804, 0.20305674, 0.020266937) * inp_0_0_1; - result5 += M4(0.080961324, 0.32459113, 0.087705694, 0.060858272, 0.06731751, 0.11550713, 0.43368912, 0.4789626, 0.11424976, -0.23740937, -0.09705797, -0.04875585, 0.15197475, -0.26317888, -0.26503667, -0.31238014) * inp_0_1_1; - result5 += M4(0.010327987, -0.2415855, -0.0900239, -0.20778313, 0.0850741, 0.3757273, 0.31176817, 0.18477678, 0.11046976, -0.02172245, 0.30619514, 0.021459091, -0.12140337, -0.0024503395, 0.16907386, -0.08708489) * inp_0_2_1; - result5 += M4(-0.079182066, 0.02244152, -0.13190427, -0.03717618, 0.060179386, -0.012163554, 0.1570344, 0.035297185, -0.10614833, 0.02731456, 0.0024702675, 0.007295181, -0.28900304, 0.13905679, -0.20442823, -0.057264265) * inp_0_0_2; - result5 += M4(0.12128071, -0.0754928, -0.06494051, 0.14364418, 0.009956164, -0.03649622, 0.10050568, -0.016938614, 0.003807434, 0.050807346, 0.015861735, 0.058522843, 0.09694155, -0.046916083, 0.18903343, 0.015200305) * inp_0_1_2; - result5 += M4(0.005438344, -0.047423784, -0.078538604, 0.088630244, -0.1385894, -0.13318318, 0.06369148, 0.035805076, -0.10554592, -0.06844497, -0.08062971, 0.007943871, -0.058751978, 0.17248723, -0.049085863, 0.105063304) * inp_0_2_2; - result6 += M4(-0.05634036, 0.13244794, 0.08623228, -0.098915204, 0.009783013, -0.007974644, -0.026408883, 0.0068675806, -0.007105632, 0.16902381, 0.095670186, -0.14665769, 0.08699523, 0.061930414, -0.06524863, -0.014798001) * inp_0_0_0; - result6 += M4(-0.2490256, 0.1295975, -2.2353444, 0.04637436, 0.19494306, -0.09906829, 0.09306417, 0.20767489, 0.057275217, 0.037355427, -0.37389112, 0.08327524, -0.038505595, -0.40954733, -0.04577821, 0.057993196) * inp_0_1_0; - result6 += M4(0.06650672, 0.037548322, 0.23661001, -0.005609529, 0.091688484, -0.20551534, 0.004490461, -0.053161096, 0.03204627, 0.06902444, 0.052879337, -0.0144675225, -0.04873923, -0.18568163, -0.017835844, 0.07676413) * inp_0_2_0; - result6 += M4(0.0119062895, 0.3090037, 0.111204624, -0.02821916, 0.11038795, -0.21112052, -0.05287128, 0.14346819, 0.2170775, -0.047834992, -0.22924508, 0.11532421, -0.07626011, -0.38905892, -0.021354986, -0.117025934) * inp_0_0_1; - result6 += M4(0.17222515, 0.07244994, 0.41175237, 0.01114765, -0.09107952, -0.90552, -1.4411411, 0.49590585, 0.062243253, -0.43391052, 0.35419425, -0.27735883, -0.015777303, 0.07829307, 0.51118803, -0.017415455) * inp_0_1_1; - result6 += M4(-0.23235604, -0.0511767, 0.19630386, 0.028879182, -0.44007137, -0.78939974, -1.0291966, 0.06100311, 0.18581626, -0.013634683, -0.17619559, 0.05285476, -0.15265726, -0.19031487, 0.034831896, -0.09608661) * inp_0_2_1; - result6 += M4(-0.056018334, 0.2733393, -0.01740958, -0.0009679539, 0.093255915, -0.007057566, 0.01932042, -0.009394196, 0.035353597, 0.06181818, 0.024003204, -0.0057273894, 0.08152719, 0.28114888, -0.14964695, 0.016312126) * inp_0_0_2; - result6 += M4(-0.00275745, 0.044860207, 0.16638991, -0.03331024, -0.08344507, -0.018828489, -0.06146343, 0.18100058, 0.26654753, -0.014320534, -0.107257105, 0.13527042, -0.31141096, 0.18621615, -0.16493204, 0.0850835) * inp_0_1_2; - result6 += M4(0.077564634, -0.050589915, 0.027964167, -0.002567909, -0.0922024, 0.21025641, 0.20477465, -0.112782285, 0.05443006, -0.10734646, 0.18476963, -0.0627282, 0.29568744, -0.27919888, 0.04268884, 0.0062679765) * inp_0_2_2; - result7 += M4(-0.104047336, 0.27931145, 0.31547546, -0.025704866, -0.0031837537, -0.09492897, 0.020488026, -0.01416322, 0.043259557, -0.120615184, -0.122118935, 0.009262201, -0.029231546, 0.044413447, 0.15799782, 0.02763456) * inp_0_0_0; - result7 += M4(0.13959067, -0.49898216, -0.45885953, -0.05449129, 0.10593578, 0.008990469, 0.096951924, 0.051797774, -0.045883495, 0.19814385, -0.0035567738, 0.020735273, -0.18330996, 0.31612262, -0.17233367, -0.029751262) * inp_0_1_0; - result7 += M4(0.035233025, -0.47668508, -0.14330457, 0.028845046, 0.18562125, -0.109838344, 0.13574244, -0.050691284, 0.20220089, -0.16358066, -0.1321876, 0.019380484, -0.18533403, 0.11111501, 0.1008678, 0.015737087) * inp_0_2_0; - result7 += M4(0.007814532, -0.19826351, 0.2464197, 0.03801768, -0.03286839, -0.11821897, -0.11230506, -0.031504393, 0.05639276, -0.12397047, -0.19648397, 0.0400545, -0.0058942647, 0.1446839, -0.05736439, -0.062202312) * inp_0_0_1; - result7 += M4(-0.06746617, 0.074479304, -0.058283195, -0.0018860806, 0.010639203, 0.23635767, -0.043373473, 0.11215341, -0.0025078177, 0.0011262797, 0.0337404, -0.04611286, 0.35684988, -0.31359214, -0.23507269, 0.0032141064) * inp_0_1_1; - result7 += M4(0.013323235, 0.06356388, -0.008550969, 0.14163664, 0.0077898647, 0.09163716, -0.051709455, 0.056776308, -0.12486637, 0.028727798, 0.18354155, 0.031952787, 0.13423513, 0.1783978, 0.12551427, -0.14596799) * inp_0_2_1; - result7 += M4(0.031252205, 0.22805358, -0.020573935, -0.01399076, 0.020338405, -0.043535527, -0.13691017, -0.03060044, 0.017813915, 0.107130446, 0.13749062, 0.03171185, 0.07668109, 0.3048642, 0.26950306, 0.023514876) * inp_0_0_2; - result7 += M4(0.007856953, 0.1420717, -0.11768835, 0.034950133, 0.015200682, 0.09333547, -0.043235924, 0.004289593, 0.083554864, -0.19255067, -0.19565953, 0.10711127, -0.12327416, -0.24626565, 0.38867554, -0.16210833) * inp_0_1_2; - result7 += M4(0.06071163, 0.21714094, 0.10716088, 0.038724173, -0.010080186, -0.11638838, 0.034845438, -0.0038457972, 0.12100811, 0.090111, -0.16288212, 0.073505, 0.05461907, 0.10078771, -0.26098064, 0.01219484) * inp_0_2_2; - const V4 inp_1_0_0 = inp[1][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_1_1_0 = inp[1][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_1_2_0 = inp[1][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_1_0_1 = inp[1][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_1_1_1 = inp[1][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_1_2_1 = inp[1][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_1_0_2 = inp[1][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_1_1_2 = inp[1][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_1_2_2 = inp[1][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.0032923422, -0.110597715, -0.076385096, -0.06733977, -0.056400128, 0.0001873281, -0.0648321, -0.08882714, 0.032599505, 0.04133898, 0.008572376, 0.08358454, 0.0906735, 0.04318595, -0.41482934, -0.1556601) * inp_1_0_0; - result0 += M4(0.04911673, 0.016566554, -0.12766586, 0.022606624, -0.025012037, -0.34101418, -0.1803049, 0.16843665, -0.06252521, -0.17153594, -0.049066328, -0.0699178, 0.089073956, -0.91323996, -0.3456486, -0.67306703) * inp_1_1_0; - result0 += M4(0.0023158488, -0.013641539, -0.08391577, -0.022344695, 0.06489063, -0.118479446, 0.30254263, -0.04974189, -0.02793013, -0.10436318, -0.07214025, 0.11314202, -0.047524095, 0.0007804401, 0.12787329, -0.042181738) * inp_1_2_0; - result0 += M4(0.07400747, -0.07646245, -0.06997684, 0.06887803, 0.026473898, -0.027606249, 0.08990847, -0.13028362, 0.079035185, -0.022385444, 0.0013036062, 0.12786913, -0.009873447, -2.8971813, 0.0189572, -0.18802948) * inp_1_0_1; - result0 += M4(0.041955452, 0.1361661, -0.056304142, 0.23024818, 0.0043456927, -0.39381, 0.03155816, 0.0993225, -0.10714991, 0.31621572, 0.17656893, -0.09910219, -0.069144145, -0.051604483, 0.07761044, 0.07874729) * inp_1_1_1; - result0 += M4(-0.025942875, 0.066490546, -0.18511438, 0.05658625, 0.13826634, 0.3911288, -0.2748446, 0.6655134, -0.042538118, 0.042949736, 0.027355677, 0.034997657, 0.002283156, 0.11009654, 0.021545244, -0.16590832) * inp_1_2_1; - result0 += M4(-0.046758644, 0.6175916, -0.14485279, -0.022473063, 0.014199904, -0.13171636, 0.050589945, -0.12019737, -0.047742587, -0.26292393, -0.08137716, 0.105698206, -0.0034013442, 0.0066584516, 0.005528062, -0.1241527) * inp_1_0_2; - result0 += M4(-0.12583385, -0.351895, 0.23780909, -0.784968, -0.023530755, -0.020340402, -0.020772368, 0.19494194, -0.070227854, 0.28128645, 0.097741775, -0.06277003, 0.0030847571, 3.2771608e-05, -0.04697226, 0.1673911) * inp_1_1_2; - result0 += M4(-0.025645535, 0.033567615, -0.09567073, -0.16195378, -0.038032837, -0.06960927, 0.06827121, 0.16674352, 0.06409076, 0.033140678, -0.02717206, 0.28515238, -0.008931474, -0.039498694, 0.07298923, -0.023019576) * inp_1_2_2; - result1 += M4(0.12395425, 0.1187829, 0.0019700208, -0.04125099, 0.08139812, -0.43549028, -0.09410853, -0.030440923, -0.14729412, -0.15450814, -0.057898838, 0.20440468, -0.10044533, 0.18308565, -0.5158155, 0.09539528) * inp_1_0_0; - result1 += M4(0.037204035, 0.02312668, -0.044683103, -0.116596125, 0.05469089, -1.6530591, -0.024794752, -0.24741428, -0.07714538, -0.0907682, 0.069645114, 0.16442925, -0.07567711, -0.1601481, 0.21395928, 0.12467668) * inp_1_1_0; - result1 += M4(-0.033615768, 0.038359318, -0.040772874, -0.0117032165, -0.20748201, 0.017374273, -0.060896456, 0.080013625, -0.09129813, -0.09475209, 0.19473968, -0.30309874, 0.041252375, 0.022965359, 0.049969386, 0.14708577) * inp_1_2_0; - result1 += M4(-0.48241517, 0.06295084, -0.015084971, -0.19917004, 0.05103808, 0.30297866, -0.06317368, 0.019704396, 0.1757818, -0.35181275, -0.076401316, -0.023037858, -0.29423288, 0.025659615, 0.22195761, 0.16435862) * inp_1_0_1; - result1 += M4(-0.12367733, -0.03715011, 0.26650542, 0.052444182, -0.019478984, -0.32102966, 0.21871099, 0.051274683, 0.21849063, 0.21327093, -0.14092363, 0.031623885, -0.09981469, -0.023576006, 0.16623442, 0.12344751) * inp_1_1_1; - result1 += M4(-0.024627173, -0.07491655, -0.045441456, -0.09384296, 0.1704755, 0.08549616, 0.11466312, 0.09864135, -0.07016311, 0.0327385, 0.067606434, -0.087306455, 0.010493762, 0.0036841005, 0.019755216, 0.24251655) * inp_1_2_1; - result1 += M4(0.358837, 0.21824642, -0.19326901, 0.12177948, -0.009094527, 0.017601833, -0.070282295, -0.052387543, -0.37112862, -0.31418705, -0.06904369, -0.1967876, -0.010854039, 0.0019090927, 0.13735634, -0.020787742) * inp_1_0_2; - result1 += M4(-0.0919411, -0.11973116, 0.27332938, -0.035951287, 0.07058261, 0.08062907, -0.17689015, -0.091643885, 0.20037134, 0.424999, -0.38216737, -0.23994875, 0.07509234, -0.0069487575, 0.043635774, 0.051823203) * inp_1_1_2; - result1 += M4(0.05708957, 0.08191688, 0.016709048, -0.03235988, -0.0060462584, -0.08601328, 0.0436657, 0.064354345, 0.028137833, 0.022658654, -0.10975328, 0.113288514, 0.010615481, 0.035052963, -0.01711803, 0.14028619) * inp_1_2_2; - result2 += M4(-0.04179931, 0.0020734416, -0.075811744, -0.082176015, -0.06826281, -0.04875203, -0.042551816, 0.05159079, -0.06683942, -0.040421512, 0.0002034828, 0.091440625, 0.1680313, 0.11232512, -0.17835926, -0.00054527284) * inp_1_0_0; - result2 += M4(-0.047365434, -0.18164173, -0.005518064, -0.1104724, -0.063556634, 0.20658958, -0.11179894, -0.026603023, -0.00069127046, 0.071149714, -0.03169576, -0.044626914, 0.23248467, 0.26997226, -0.36603805, -0.060814038) * inp_1_1_0; - result2 += M4(0.078356594, 0.040115234, -0.0028702863, 0.05482729, 0.022318538, -0.040560722, 0.016654935, 0.019052213, -0.12822407, 0.019859726, -0.052832972, -0.05305316, 0.10574541, 0.03629949, 0.014559356, -0.12935568) * inp_1_2_0; - result2 += M4(0.027517352, 0.28783208, -3.1135905, 0.04775798, 0.03445126, -0.05896604, 0.031695735, -0.029849937, 0.12590493, -0.11067547, -0.017141033, 0.01422999, 0.07208234, 0.2765328, -0.7128603, -0.038948227) * inp_1_0_1; - result2 += M4(0.1047137, 0.1962726, 0.021749135, -0.15366876, -0.038354162, 0.090389304, -0.13953349, -0.095047645, -0.05201231, -0.19191521, 0.057477217, -0.03615435, 0.16514103, 0.028311292, -0.07791297, -0.13795808) * inp_1_1_1; - result2 += M4(0.057492815, 0.04531313, 0.018513707, 0.060727492, -0.00806004, -0.6654262, 0.3739408, 0.01155021, -0.0034984262, -0.017008517, -0.08363749, -0.025165282, 0.13786079, -0.09236131, -0.027278343, 0.069644056) * inp_1_2_1; - result2 += M4(0.1595161, -0.11967953, -0.07146715, 0.063227415, 0.058854695, -0.0068867635, 0.07684279, 0.044558134, -0.1470383, 0.04196038, -0.066272296, -0.082043886, 0.01653736, -0.08492039, 0.030629715, -0.065846406) * inp_1_0_2; - result2 += M4(0.16918172, 0.4889623, -0.5350624, -0.33147064, -0.14744516, 0.035938174, -0.11694986, -0.019258266, 0.1840622, -0.68288815, 0.67403895, 0.10097233, -0.028186554, -0.02628438, 0.051823877, -0.03532686) * inp_1_1_2; - result2 += M4(0.030188492, -0.040243953, 0.0024696896, -0.04722355, 0.10921659, 0.13728724, 0.07544246, -0.11735438, 0.18319008, 0.038387932, 0.06278924, 0.25642133, 0.041570988, 0.022867573, -0.017198497, 0.08659983) * inp_1_2_2; - result3 += M4(-0.1759156, 0.16859895, -0.09370762, -0.05670359, -0.16462816, -0.01677422, 0.0340089, -0.033577647, 0.20810649, -0.0011155154, 0.027710859, 0.12531371, 0.33033112, -0.03956016, 0.08890614, 0.21189405) * inp_1_0_0; - result3 += M4(-0.0844855, 0.0555757, -0.16247858, -0.056920085, -0.12189964, 0.0047107143, 0.018921616, -0.011543277, 0.15310547, 0.022854272, 0.004033862, -0.0015784606, 0.45833287, 0.00879296, 0.07709798, 0.35850415) * inp_1_1_0; - result3 += M4(0.14460233, -0.008694696, 0.037752405, 0.033356912, 0.32744965, 0.06242264, -0.045448117, 0.05614835, -0.26938525, 0.17652495, -0.009490894, 0.1129832, -0.102241375, -0.034441102, -0.049916957, 0.14856422) * inp_1_2_0; - result3 += M4(-0.40293002, -0.007522997, 0.018665701, 0.27766967, -0.087788776, -0.0019298039, 0.028738074, 0.0108804, 0.077322125, -0.039543763, -0.23940866, -0.14393473, 0.35453862, -0.1590312, 0.05907187, -0.47502744) * inp_1_0_1; - result3 += M4(-0.38700145, 0.042974446, -0.16610625, 0.12565602, 0.06786666, 0.062446196, 0.04255844, -0.25338125, 0.056453202, 0.24391764, 0.13818865, -0.044488676, 0.092748076, 0.113741346, -0.13809489, -0.51679933) * inp_1_1_1; - result3 += M4(-0.18923576, -0.09030316, 0.10975806, 0.016093189, -0.06317926, -0.10615779, 0.05893334, -0.04297291, 0.024373747, 0.109997064, -0.15189843, -0.10862246, -0.028673911, -0.03866258, 0.02785049, 0.10886516) * inp_1_2_1; - result3 += M4(6.688212e-05, -0.05599565, 0.068614565, -0.027440678, 0.018461807, 0.06300403, 0.074011736, 0.09156334, -0.069775864, 0.066298395, -0.16176248, -0.20363964, 0.036472984, 0.03522516, 0.014853168, -0.31995225) * inp_1_0_2; - result3 += M4(-0.08984419, 0.08656949, -0.22384736, 0.10748107, 0.057844017, 0.12952232, 0.16606595, -0.1888721, -0.11790847, 0.2775115, -0.11293869, 0.6050617, 0.004225573, 0.0687956, -0.011430022, 0.09421669) * inp_1_1_2; - result3 += M4(-0.06099194, -0.08224537, -0.08803574, 0.11522822, 0.12433657, 0.026495473, -0.1921991, -0.035896093, 0.29608464, -0.008338488, 0.041683376, -0.2116581, 0.12015189, 0.022278767, -0.009633601, -0.019671261) * inp_1_2_2; - result4 += M4(0.04784628, 0.15148228, -0.079358414, -0.05134021, -0.046365388, 0.075629614, 0.08527173, -0.13636243, -0.033145186, 0.0707296, 0.12663954, 0.15118757, 0.18091482, -0.029735753, 0.083204076, 0.22082315) * inp_1_0_0; - result4 += M4(-0.023625834, 0.17497367, 0.006351412, -0.047276016, -0.0012272174, 0.22770876, 0.0021577831, 0.14048442, -0.01954268, 0.019802054, -0.081932664, 0.02354669, 0.32479185, -0.051274266, 0.3124101, 0.33924794) * inp_1_1_0; - result4 += M4(-0.029090121, -0.08669632, 0.018728875, 0.014919271, 0.19229805, -0.04470851, 0.1696965, -0.0678219, -0.0029579431, 0.312824, 0.11415799, 0.14339143, -0.0057431855, -0.10997926, -0.00051763677, 0.06603806) * inp_1_2_0; - result4 += M4(0.25444785, 0.17710705, 0.2829241, 0.36814582, 0.0098406095, 0.032312714, -0.06157835, -0.04466969, 0.083726674, -0.23685218, -0.14152536, -0.14490803, 0.1822022, -0.024284068, 0.060638804, 0.14821666) * inp_1_0_1; - result4 += M4(0.09396568, 0.270148, -0.13908844, 0.16662286, 0.0023963605, 0.00869024, -0.111185014, 0.19821876, -0.086765006, 0.0023683377, 0.11669623, -0.28690004, 0.11565416, -0.27630258, 0.13458052, 0.029730238) * inp_1_1_1; - result4 += M4(-0.0034593123, -0.0138239665, -0.050911658, -0.0075702914, -0.21096912, -0.22871667, -0.1717804, -0.13894962, -0.034956064, 0.06103605, -0.14191483, -0.10222846, -0.0112122195, 0.06511359, 0.09164152, -0.028391667) * inp_1_2_1; - result4 += M4(-0.03916589, -0.22599256, -0.15626004, -0.49377608, -0.01917417, -0.07252137, 0.08189266, 0.19133559, 0.1581256, -0.14936908, -0.15992394, -0.21389528, 0.032016106, -0.09473247, 0.015561659, -0.35347387) * inp_1_0_2; - result4 += M4(0.19740966, 0.23102205, 0.16327122, -0.025526972, 0.060664073, -0.22539678, 0.09381819, -0.15703341, -0.54096204, 0.06044048, 0.026995348, -0.47547275, -0.10433011, 0.088026345, -0.022798756, 0.03353003) * inp_1_1_2; - result4 += M4(-0.051264897, 0.12042493, 0.011687985, -0.037873607, -0.027661446, 0.14254573, -0.043049823, -0.09852913, -0.0791354, -0.27296793, 0.06253989, -0.118330136, -0.043293685, -0.0020090183, 0.00021119753, -0.03786457) * inp_1_2_2; - result5 += M4(-0.08717273, 0.049901865, 0.0048132134, -0.069070674, -0.01182343, -0.02997724, -0.016323201, -0.07699383, 0.0875674, 0.080213636, -0.029716156, -0.010870191, -0.048560217, -0.055407006, -0.011680779, 0.01586424) * inp_1_0_0; - result5 += M4(-0.1075827, -0.060601052, 0.0092456695, 0.15126875, 0.0913541, -0.020388456, -0.09331712, 0.08766838, -0.009233001, 0.088060305, -0.13724586, -0.17180116, -0.009098511, 0.48492944, 0.11788322, -0.33064446) * inp_1_1_0; - result5 += M4(-0.005624579, 0.03024723, 0.009933319, 0.29630217, 0.0082292715, 0.054144796, 0.06354029, -0.011237037, 0.021497846, 0.06302677, 0.024106089, 0.00092533824, -0.092144206, 0.0029636682, -0.053921748, -0.23189637) * inp_1_2_0; - result5 += M4(0.17072508, 0.02096168, 0.13833092, 0.535035, -0.007679891, -0.058312725, -0.118476935, -0.09420788, -0.08534792, 0.10271159, -0.046991706, -0.15252799, 0.0780373, 0.1055269, 0.023975424, -0.19136444) * inp_1_0_1; - result5 += M4(-0.0062646745, 0.0955205, -0.059922762, 0.11311406, 0.09930351, 0.080578074, 0.19009219, 0.15008725, -0.106513195, 0.0667761, -0.21508075, 0.0017129848, 0.073195, 0.09975118, 0.14478877, -0.6311235) * inp_1_1_1; - result5 += M4(-0.017391302, 0.116871655, -0.080785386, -0.19849898, -0.3020495, 0.13277572, 0.11611268, 0.03758648, -0.08144503, -0.20441084, 0.05597063, 0.16816716, -0.045697413, 0.02150351, -0.11086295, -0.085398585) * inp_1_2_1; - result5 += M4(-0.1879115, 0.016611021, -0.15937641, 0.48762903, 0.03805679, 0.013779111, 0.0066610062, -0.08856701, 0.08440009, -0.09612836, 0.042419363, -0.063594386, 0.024609527, -0.047401253, 0.033552203, -0.060958587) * inp_1_0_2; - result5 += M4(-0.20620799, 0.43128633, 0.14371718, 0.4845778, 0.025099587, -0.13389261, -0.08240062, -0.060192022, 0.037137043, -0.5040414, -0.3795193, -0.059579786, -0.018986909, -0.035428263, 0.05285205, -0.044203628) * inp_1_1_2; - result5 += M4(0.0880355, -0.020102974, 0.038051143, -0.020325918, 0.060362678, 0.045092452, -0.043986905, 0.37833795, -0.07249459, -0.001876803, -0.17287637, 0.07653989, -0.029920807, 0.008746503, -0.019950408, -0.06827415) * inp_1_2_2; - result6 += M4(0.10320621, 0.18801083, 0.05430779, 0.01969135, -0.010159635, 0.16644827, 0.021686165, -0.016026463, -0.08102588, -0.30034626, 0.0014307209, 0.021073047, 0.15592475, -0.6901507, 0.13407001, 0.047322024) * inp_1_0_0; - result6 += M4(0.06529646, -0.027329152, 0.04633219, -0.011510479, -0.015562197, 0.22776924, 0.05692284, -0.0074004005, -0.11471769, 0.0848635, 0.042926636, 0.0371823, 0.067017674, -0.4859292, -1.1508447, 0.051686745) * inp_1_1_0; - result6 += M4(0.059671637, 0.0010381162, -0.019695604, -0.019438436, 0.0014802634, -0.4044807, -0.023127854, -0.006606226, -0.043907404, 0.22071818, -0.034115013, 0.0025417593, 0.035436753, 0.02450977, 0.09686873, -0.014984114) * inp_1_2_0; - result6 += M4(-0.010423642, 0.033745505, -0.53759086, 0.22043307, 0.034735117, -0.006252452, 0.08917193, 0.116575345, -0.045094036, -0.20261708, 0.011786281, -0.07318931, -0.25421253, -1.5358137, -0.3770722, 0.05736824) * inp_1_0_1; - result6 += M4(-0.02507028, -0.016452214, -0.09312868, -0.118398584, 0.12844661, 0.08450253, -0.3075136, -0.19513133, -0.06725302, -0.10921726, 0.02421967, 0.117026575, -0.0034214254, 0.24071096, -0.27249232, -0.11473428) * inp_1_1_1; - result6 += M4(0.057368744, 0.23173945, -0.0025250367, -0.010965087, -0.14113662, 0.21929637, 0.21347462, 0.071039245, -0.08646045, -0.07760553, 0.13731879, 0.022471022, 0.0075234757, -0.036203574, 0.059115827, -0.002047007) * inp_1_2_1; - result6 += M4(-0.13949755, 0.39010808, 0.045011297, 0.097044356, 0.030089825, -0.12392252, -0.035015184, -0.011503992, -0.09407348, -0.4590399, -0.05329452, -0.03321164, 0.026435109, -0.15246417, 0.013017275, 0.041730147) * inp_1_0_2; - result6 += M4(-0.10586971, 0.22881018, -1.2663296, -0.005016206, -0.17000385, -0.10778942, 0.0871054, 0.052154344, 0.20921038, -0.16599761, 1.4787351, -0.14455557, 0.09007096, 0.04929001, 0.0011849042, -0.012151438) * inp_1_1_2; - result6 += M4(-0.05356383, 0.1940237, 0.08900261, -0.016091775, 0.34054872, 0.044104416, -0.23078497, 0.0077782613, -0.07784859, -0.13795589, 0.023295302, 0.051720403, 0.018301845, -0.030709727, -0.023505436, 0.003290876) * inp_1_2_2; - result7 += M4(-0.013046446, 0.1009992, 0.45455384, -0.021546736, -0.0043720636, 0.04133309, -0.0155369, 0.031850472, -0.064336166, -0.17382284, -0.13126107, 0.0014773855, 0.05780266, 0.108746335, 0.21373187, -0.004720818) * inp_1_0_0; - result7 += M4(0.08533207, 0.05605727, 0.22998226, 0.05402506, 0.04551746, 0.02279188, 0.12467374, 0.006357436, 0.05672775, 0.026632432, -0.33384508, 0.018526975, -0.13185453, -0.19008121, 0.36353356, 0.0034070052) * inp_1_1_0; - result7 += M4(-0.014929009, -0.035832733, -0.0067105694, -0.059257768, -0.08719266, -0.3298078, -0.0077367174, -0.01610277, -0.010664841, -0.1141926, -0.21930663, 0.07480883, 0.07415093, -0.069383636, 0.24220929, -0.0017414482) * inp_1_2_0; - result7 += M4(-0.06266806, -0.07639927, -0.29719096, -0.053282186, 0.04038902, 0.010296995, 0.0036480755, -0.008602874, -0.05985288, 0.067348056, -0.04924271, -0.02555967, -0.09045683, -0.024870351, 0.26647884, 0.02242126) * inp_1_0_1; - result7 += M4(0.1531585, -0.17638682, -0.47068077, 0.09710778, 0.001878964, 0.38204277, -0.06792932, -0.03356269, -0.024833035, -0.023432355, -0.26019514, -0.11366396, -0.013474685, -0.250676, 0.53463197, 0.14782181) * inp_1_1_1; - result7 += M4(-0.0072099473, -0.07289144, -0.15416871, -0.055123042, 0.06470782, 0.064465076, -0.07816546, 0.0629327, -0.03762419, -0.13275221, -0.15063515, 0.07092665, 0.06353198, -0.076728016, 0.19051617, -0.013075753) * inp_1_2_1; - result7 += M4(0.08098732, -0.09602101, 0.26941758, 0.09430476, -0.0513606, -0.008258814, 0.09580025, 0.031146869, -0.003720022, 0.1471651, -0.002681013, -0.02553327, -0.012447399, 0.02872716, -0.116837345, 0.009039833) * inp_1_0_2; - result7 += M4(-0.038691156, 0.111534275, 0.37790453, 0.09402965, 0.038703017, -0.15435196, -0.08866245, -0.01766971, 0.25723973, -0.052448276, -0.16545424, -0.1325407, -0.024193598, 0.11364134, 0.20570332, 0.017127696) * inp_1_1_2; - result7 += M4(-0.050524876, 0.030348392, 0.084142946, -0.0016087353, -0.03317383, -0.052530997, 0.14274041, -0.010599135, 0.058894664, 0.02279969, -0.22444096, -0.108748786, -0.009614207, 0.06564162, -0.02021995, 0.024029437) * inp_1_2_2; - const V4 inp_2_0_0 = inp[2][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_2_1_0 = inp[2][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_2_2_0 = inp[2][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_2_0_1 = inp[2][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_2_1_1 = inp[2][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_2_2_1 = inp[2][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_2_0_2 = inp[2][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_2_1_2 = inp[2][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_2_2_2 = inp[2][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.10752723, 0.3443844, 0.3981863, -0.029809702, -0.0293793, 0.006705033, -0.097262904, 0.19494955, 0.17320384, 0.1299356, 0.35816535, -0.20353627, 0.013636854, 0.070375495, -0.036161147, 0.16042067) * inp_2_0_0; - result0 += M4(-0.002374809, -0.1574178, 0.26638144, 0.25163847, -0.09216006, 0.10052911, 0.10202587, 0.18265562, 0.0060490984, 0.34028044, 0.257649, 0.11344733, -0.07650952, 0.057117555, -0.15117969, -0.3114883) * inp_2_1_0; - result0 += M4(0.033310134, 0.06160632, 0.15765539, 0.20170712, 0.06943786, 0.1717603, 0.16594987, 0.31950688, 0.005822434, -0.027889367, 0.06408904, 0.09799809, 0.10393606, 0.08131958, -0.29572824, -0.048960432) * inp_2_2_0; - result0 += M4(0.09903582, -0.21141598, 0.2152703, 0.07929256, 0.03532623, -0.040966585, -0.030280275, 0.0027702693, 0.053658243, 0.083939165, -0.08006676, 0.25063822, 0.024731597, 0.011854484, 0.1325228, 0.086127244) * inp_2_0_1; - result0 += M4(0.029701937, -0.241239, -0.35107797, 1.6913613, 0.0061196014, 0.215371, 0.11110541, -0.37134147, 0.20178439, 0.47020698, -0.3210115, -0.2924321, 0.08808918, -0.0974643, 0.20277975, -0.80969065) * inp_2_1_1; - result0 += M4(0.016486123, 0.11648423, -0.013286231, 0.15585943, -0.06180675, 0.21102741, 0.08298904, -0.064793, 0.07634062, 0.042407095, -0.06562998, 0.0019544442, 0.16022913, -0.027112065, 0.1257159, 0.039700907) * inp_2_2_1; - result0 += M4(0.05757359, -0.18824857, 0.06660097, 0.05381946, 0.032595936, 0.048838913, -0.082100734, 0.16622166, 0.081837416, -0.059204202, -0.025194334, 0.056428265, -0.0016839401, 0.0867451, -0.07184851, 0.19750346) * inp_2_0_2; - result0 += M4(-0.07432781, -0.28152013, -0.17175665, 0.43230724, -0.019672649, -0.03125815, 0.11586209, 0.039876495, -0.011329027, 0.16799456, 0.09265924, -0.15998133, -0.043506242, -0.16067381, 0.06869879, 0.18602976) * inp_2_1_2; - result0 += M4(0.0022279841, 0.033067573, 0.061101016, 0.24541572, 0.023880986, -0.0029721945, 0.022759138, 0.07991698, 0.0044488152, 0.075926796, -0.020886052, 0.018156014, 0.003746828, 0.17749904, 0.34707186, 0.2839841) * inp_2_2_2; - result1 += M4(0.0012711834, 0.15263343, 0.18292569, 0.12319828, -0.018606884, 0.28912345, 0.045855355, 0.11173119, -0.096688256, -0.8812923, -0.012049024, 0.0843375, 0.03918893, -0.26137727, 0.028097179, 0.347922) * inp_2_0_0; - result1 += M4(0.01954252, 0.15376396, -0.15797397, 0.64715475, 0.37414128, 0.16568442, -0.051955517, 0.26020965, 0.27977103, -0.044267606, -0.091278195, 0.29494214, -0.008724192, 0.16233414, 0.036960747, -0.105459616) * inp_2_1_0; - result1 += M4(-0.0927817, -0.12622684, 0.1477744, -0.19761157, 0.0534209, 0.10945289, 0.07067679, -0.1405498, -0.023429068, 0.011944694, 0.026527988, -0.10524283, 0.052311055, -0.13005523, 0.09394023, -0.078093514) * inp_2_2_0; - result1 += M4(-0.13714388, -0.18049765, 0.13344018, 0.15945786, -0.1366591, 0.09769732, 0.56781596, -0.06600257, 0.37420177, -0.38423717, -1.0877552, -0.3439122, 0.1863416, 0.16638783, 0.026315447, -0.16788244) * inp_2_0_1; - result1 += M4(0.09721238, 0.4467147, -0.21938577, -0.21302183, 0.07586447, 0.019556614, -0.52672887, 0.0810474, 0.08349685, 0.17383122, -0.33269066, -0.3579015, 0.022787256, 0.4198211, 0.014014483, -0.19601329) * inp_2_1_1; - result1 += M4(-0.23281416, 0.09362814, -0.09277362, 0.2931286, 0.017502861, 0.025719842, -0.23912497, -0.1797453, -0.009151062, -0.050883796, 0.006540676, -0.1853951, -0.15687123, 0.20414457, 0.09720791, 0.41446596) * inp_2_2_1; - result1 += M4(0.16622244, -0.11075605, -0.38517615, 0.087771155, -0.11397207, 0.09372258, 0.3177065, 0.11250328, -0.03436484, 0.09068554, 0.015818946, 0.081791684, -0.036573216, -0.3072113, 0.17423537, -0.14473929) * inp_2_0_2; - result1 += M4(-0.06606527, 0.1579049, 0.250383, -0.16370367, 0.009535313, -0.06658675, -0.29491696, 0.15557113, 0.103710234, -0.09850029, -0.07544416, 0.12106758, -0.11733846, 0.00113374, 0.15756263, 0.1700204) * inp_2_1_2; - result1 += M4(0.06791198, -0.080143176, 0.012619748, 0.23636046, -0.08959119, 0.033011828, -0.1067368, 0.103405796, 0.027849302, -0.030592214, 0.05011491, 0.0733869, 0.14269483, 0.07081386, 0.14039558, -0.45001423) * inp_2_2_2; - result2 += M4(-0.11667584, -0.02202349, -0.10868448, -0.051195208, 0.0054976423, -0.04282106, 0.03867957, -0.046220474, 0.13153692, -0.118331105, -0.1815173, 0.049826797, -0.023744393, -0.071191974, 0.20673692, 0.096447796) * inp_2_0_0; - result2 += M4(0.035469174, 0.10805903, -0.2176415, 0.043193024, -0.11691931, 0.007627502, 0.10096845, -0.055976197, 0.16141336, -0.14115462, -0.045168392, 0.24965866, 0.15209146, 0.033549037, 0.1703621, 0.06491325) * inp_2_1_0; - result2 += M4(-0.018665554, 0.107131355, -0.005421479, 0.09921076, -0.21080473, -0.06162837, 0.12717436, -0.09781041, 0.07597102, 0.002830301, -0.018195942, -0.024832707, -0.024180744, -0.05547694, 0.20127565, -0.118746564) * inp_2_2_0; - result2 += M4(0.16446058, 0.23374665, -0.20578818, -0.030623348, 0.02119967, 0.05453278, 0.13498637, 0.010196196, 0.037233423, -0.06946538, 0.018072171, 0.14154884, 0.11026557, 0.15512915, -0.17505443, -0.07021252) * inp_2_0_1; - result2 += M4(0.116199985, -0.59896934, 0.24331638, -0.3390248, 0.13717909, -0.52263683, 0.9598959, 0.24781881, 0.18273768, -0.2348634, -0.11153346, 0.6815819, 0.31826344, -0.29679185, 0.17682175, 0.09438172) * inp_2_1_1; - result2 += M4(0.118609905, 0.19092204, -0.04694096, 0.07994597, -0.17403041, -0.094179146, 0.13502297, -0.009462477, -0.09550276, 0.09794785, 0.030775359, 0.1762429, 0.13352835, 0.28710094, 0.17657709, 0.0974145) * inp_2_2_1; - result2 += M4(-0.07158089, 0.08407077, -0.10286265, -0.16450562, -0.054524716, 0.12237274, -0.016675087, -0.0126196705, -0.0063587744, 0.18578692, -0.056789476, -0.037182607, 0.042051647, 0.0074150823, 0.005337532, 0.10357118) * inp_2_0_2; - result2 += M4(0.11703184, 0.1618634, -0.06641403, -0.24008366, -0.005662786, 0.06934309, 0.030620169, 0.11920829, 0.35728577, 0.07277438, -0.105544195, 0.093647875, -0.045475025, 0.033526003, -0.04822603, 0.16471212) * inp_2_1_2; - result2 += M4(0.025682488, 0.10783233, 0.030448021, 0.21349965, 0.058339316, -0.036717977, 0.0309266, -0.06697459, 0.0704869, 0.01522708, -0.023960412, 0.06879905, 0.123883344, 0.31966528, 0.158249, 0.25477013) * inp_2_2_2; - result3 += M4(0.38675728, 0.2719475, -0.13444254, -0.16027163, 0.017736573, 0.068441354, -0.037617363, -0.066760466, -0.42016217, 0.19176981, 0.094730675, 0.0558163, 0.013815552, -0.03637809, 0.03061033, 0.13947225) * inp_2_0_0; - result3 += M4(0.49493843, 0.0336269, -0.03529831, 0.082529485, 0.2522289, 0.14314543, -0.17192999, -0.06278796, -0.1999072, 0.22991452, 0.051158637, 0.015255553, -0.18725866, 0.17177504, 0.026573488, 0.01996469) * inp_2_1_0; - result3 += M4(0.0047094454, 0.06629339, 0.22061357, 0.08253397, -0.1127311, 0.08870262, -0.07442301, -0.14992173, -0.027865358, 0.023956506, 0.30146158, 0.0074370005, 0.09551971, -0.012696325, 0.10293486, 0.34714276) * inp_2_2_0; - result3 += M4(0.34380823, 0.17095958, -0.29081655, 0.116640545, -0.071090505, 0.030263873, 0.05349052, 0.022760972, -0.2005683, -0.008422438, 0.17029977, 0.23326892, 0.09618053, -0.07581342, 0.11542806, 0.15233396) * inp_2_0_1; - result3 += M4(0.04921846, 0.028432151, -0.32571685, -0.30498266, -0.20447865, 0.2519348, 0.020851234, 0.22138678, -0.23889433, 0.34379068, 0.3789726, -0.10697079, -0.33289286, 0.018813316, 0.34979877, 0.27150047) * inp_2_1_1; - result3 += M4(0.024079874, -0.04188421, 0.10501791, -0.020753874, 0.11343637, -0.111228034, 0.15376918, -0.08422273, 0.061607197, -0.0053859134, 0.20267178, 0.018462809, 0.49854147, 0.09197811, 0.30168274, 0.09227315) * inp_2_2_1; - result3 += M4(-0.024247877, -0.08593408, -0.19345483, 0.2767731, 0.13506448, 0.12012823, -0.038722485, -0.0022627057, 0.09416022, -0.036401957, 0.053168256, 0.042250782, -0.051641136, 0.11899458, 0.07615702, 0.18960647) * inp_2_0_2; - result3 += M4(-0.05240112, 0.101513766, -0.19380409, 0.39617956, 0.05628753, 0.079969905, -0.16683976, 0.53242886, -0.096300885, 0.21967547, -0.017868154, 0.2645171, 0.1096943, 0.050237656, 0.29983646, 0.41044974) * inp_2_1_2; - result3 += M4(0.20415454, 0.002967517, 0.03889272, -0.06633123, 0.10151859, -0.023506664, 0.030851716, -0.016005527, 0.00072763825, 0.124698885, 0.20950228, -0.05079995, -0.18211189, 0.005198615, 0.24675067, 0.36824313) * inp_2_2_2; - result4 += M4(0.07171007, 0.120471165, 0.28792676, -0.0067255152, 0.0019102572, 0.13026705, 0.061946925, -0.051876314, -0.10847876, -0.032385916, 0.107045665, -0.048844445, 0.01278018, 0.13355273, 0.105391, 0.14998937) * inp_2_0_0; - result4 += M4(0.097008854, -0.020540088, 0.011204375, 0.04473735, -0.08625222, -0.07410326, -0.15368776, 0.0005718959, -0.1328571, -0.07632587, 0.027621793, 0.012745036, -0.24303463, 0.038238846, 0.21632843, 0.12667185) * inp_2_1_0; - result4 += M4(0.0052525653, -0.07078145, 0.097427145, 0.057699993, 0.12228231, 0.13972424, -0.16422024, 0.10577888, -0.0105096875, 0.045215856, -0.025910553, 0.054839164, -0.15313557, 0.1773489, 0.41547716, 0.24264775) * inp_2_2_0; - result4 += M4(0.1247443, 0.1743824, -0.112999685, 0.42122674, -0.052898135, 0.16281801, -0.015749758, -0.19179381, -0.047417935, -0.03230591, 0.10994959, 0.08212802, -0.12737218, -0.12669063, 0.052831747, 0.016756125) * inp_2_0_1; - result4 += M4(-0.3890659, -0.7166653, -0.18276405, -0.3446495, -0.45539138, -0.19322424, -0.0060884454, -0.54885197, -0.112705186, -0.0030467445, 0.16784546, 0.24291033, -0.3957976, 0.041709695, 0.033295773, -0.12215292) * inp_2_1_1; - result4 += M4(-0.05288142, 0.04914841, -0.01500194, -0.027061045, 0.020627517, -0.23391628, 0.060405467, -0.18613906, -0.025647268, 0.0038910154, 0.16917421, -0.018855901, -0.31599694, -0.16995278, 0.2676182, 0.15090024) * inp_2_2_1; - result4 += M4(0.04358911, 0.11896573, 0.089531794, -0.05587581, -0.04094156, 0.105369434, 0.011076806, 0.14257681, 0.03535254, -0.045117967, -0.04624138, 0.13797306, -0.19362248, -0.09776679, 0.05610635, 0.031364556) * inp_2_0_2; - result4 += M4(0.10471133, 0.04475438, 0.056449875, 0.21955359, 0.0150153, 0.2850131, 0.08114211, 0.5034277, -0.13530642, 0.060556658, 0.093787976, 0.2631077, -0.18028943, 0.23752828, 0.14925966, 0.38266852) * inp_2_1_2; - result4 += M4(-0.11523303, 0.23114307, 0.038871713, -0.12978399, 0.09951813, -0.18729322, 0.063135736, -0.024845924, -0.058234878, 0.110769965, -0.05797416, 0.06442876, -0.34083676, 0.16079472, 0.033929054, -0.0004737016) * inp_2_2_2; - result5 += M4(0.0693351, -0.20049094, -0.0528601, 0.22926778, -0.07991934, -0.02536455, 0.05029591, 0.2388824, -0.05052858, -0.1796573, -0.07058649, 0.051375333, -0.23393553, 0.12843469, -0.13220094, -0.06000875) * inp_2_0_0; - result5 += M4(-0.16953097, -0.06116245, -0.34284112, -0.24015215, -0.060841396, 0.19751368, 0.041830674, -0.03871472, 0.1364069, -0.005388104, -0.08167784, -0.31380826, -0.40128446, -0.020025158, -0.3570242, -0.2560297) * inp_2_1_0; - result5 += M4(-0.027669001, 0.096567415, -0.0029997793, -0.026407808, -0.0636676, 0.23058884, 0.0023407137, 0.23639806, 0.010196469, 0.04965379, -0.07085824, 0.14955866, -0.25892043, 0.24824645, -0.22172824, 0.42351457) * inp_2_2_0; - result5 += M4(0.041080646, 0.0023604555, 0.04062701, 0.17072047, -0.044127755, -0.11833823, -0.05803533, -0.12382557, 0.0022312272, -0.20031512, -0.07108697, -0.04765551, -0.07526249, -0.1431205, -0.15924497, 0.02457642) * inp_2_0_1; - result5 += M4(-0.124455124, -0.16827966, -0.18772602, -0.35212487, -0.2514399, -0.100796044, -0.16979451, -0.2674985, 0.24346998, -0.14523454, -0.1338672, 0.1106599, -0.09444413, 0.026586853, -0.059434332, 0.11486899) * inp_2_1_1; - result5 += M4(0.02600005, 0.11358628, -0.111960866, 0.2013274, -0.12583245, -0.016626384, -0.0056474647, 0.14644164, 0.054749426, -0.015375318, -0.060542252, 0.26271167, -0.27309555, 0.25427586, -0.30738366, 0.06268446) * inp_2_2_1; - result5 += M4(-0.02109508, -0.15600333, 0.024536503, 0.1401623, 0.026694885, -0.036841907, -0.028111225, -0.02671468, 0.0057274024, 0.009741516, -0.0445943, -0.15761334, 0.1620156, -0.15103452, -0.12852602, 0.06287315) * inp_2_0_2; - result5 += M4(0.03036651, -0.040511932, 0.041615527, 0.028055701, 0.014600262, 0.18176314, -0.022729754, 0.11445713, 0.15105093, -0.0060906517, -0.10080202, -0.18459521, -0.023487376, -0.07143242, -0.13587767, -0.111897126) * inp_2_1_2; - result5 += M4(-0.0636811, 0.12315481, -0.03665248, -0.00370412, 0.06255008, 0.078226626, -0.13505042, -0.08078225, -0.041466385, 0.068277836, -0.059586324, -0.039417323, -0.22059655, 0.1754384, -0.16965942, -0.0535676) * inp_2_2_2; - result6 += M4(-0.11841362, 0.47669527, 0.12237498, 0.1416993, -0.028156888, -0.5126761, -0.04833566, -0.040345132, 0.03784706, -0.121728845, 0.042181365, -0.1901206, -0.032766063, -0.020674223, 0.1502862, -0.043829896) * inp_2_0_0; - result6 += M4(-0.16112591, -0.111210786, 0.17906037, 0.00016748984, 0.01010258, -0.010456941, 0.077982776, 0.07744512, 0.039151005, 0.26679674, 0.026997723, 0.111098, -0.048535228, 0.39656937, 0.33131775, 0.07018037) * inp_2_1_0; - result6 += M4(-0.026121166, -0.00082389056, -0.13371189, -0.03396331, -0.054026123, -0.13490398, -0.03427844, -0.093936235, -0.0483403, 0.30457354, -0.0547323, 0.0032656484, -0.14928332, 0.71998125, -0.009654005, -0.07756924) * inp_2_2_0; - result6 += M4(-0.031986106, 0.24741425, -0.0039343904, 0.18820517, -0.17914043, -0.07632733, 0.09740214, -0.13102613, 0.07248193, 0.3416863, 0.16579658, -0.25666523, -0.09365291, 0.112448774, 0.015894063, -0.07496791) * inp_2_0_1; - result6 += M4(-0.03153623, -0.099357724, 1.0704893, -0.15898058, 0.20476276, 0.61137676, 0.49651164, 0.06383933, 0.040090077, 0.7718091, 0.15651669, 0.019894805, 0.18865074, 0.10356073, 0.7911611, 0.15616214) * inp_2_1_1; - result6 += M4(0.07217429, -0.017802501, -0.025366785, 0.011677272, -0.03891089, -0.09061141, 0.12378563, 0.022504255, -0.044132605, -0.032234058, -0.088184826, 0.039788056, 0.1027992, 0.4585517, 0.045629874, 0.00083855924) * inp_2_2_1; - result6 += M4(0.205705, 0.22365142, 0.13449533, 0.06864224, 0.014564013, -0.27844182, 0.011297423, 0.03536701, -0.02132758, 0.30949152, -0.042867962, -0.06408314, -0.08812826, 0.34322935, -0.032946046, 0.037180725) * inp_2_0_2; - result6 += M4(-0.16519606, 0.06337883, 0.22426398, 0.08894334, 0.10512171, -0.16880117, 0.0016932979, -0.0651617, 0.2945134, 0.054741245, -0.06286984, 0.055672824, -0.018160885, 0.049170736, 0.1691672, 0.17492898) * inp_2_1_2; - result6 += M4(-0.1292707, -0.031298812, -0.10014171, -0.027810937, -0.0075535444, 0.004015391, 0.033660416, 0.02450345, 0.08126133, 0.16086072, -0.036315545, -0.02402555, -0.059445728, 0.33868644, -0.13687381, -0.06302222) * inp_2_2_2; - result7 += M4(-0.21647516, 0.05724087, 0.53666276, 0.017555354, -0.012154187, 0.074186414, 0.1615299, 0.02767313, -0.12881404, 0.10112979, 0.049483497, -0.024827993, -0.00042513548, -0.045809098, 0.1840094, 0.0119309) * inp_2_0_0; - result7 += M4(0.031529203, 0.13485, 0.39417505, 0.061687663, -0.023543395, -0.051345937, 0.04909058, -0.02637634, -0.14676659, 0.07502903, 0.04377711, -0.040983148, -0.02597839, -0.3129039, 0.022708902, -0.013793238) * inp_2_1_0; - result7 += M4(0.09995791, -0.13211979, -0.016427552, 0.06265357, 0.30982524, -0.00924465, 0.34774277, -0.08680688, -0.056380305, -0.010602462, -0.017513515, 0.015896965, 0.2261971, 0.059400223, 0.27276304, -0.00044913669) * inp_2_2_0; - result7 += M4(-0.21631664, -0.32637808, -0.23135257, -0.035319313, 0.009026756, 0.035802875, 0.12972006, 0.014975659, -0.04498775, 0.16134278, -0.26721132, -0.031482365, 0.024809303, -0.041473538, -0.102758326, 0.052019473) * inp_2_0_1; - result7 += M4(0.2281344, -0.43414506, 0.43050864, 0.16810763, -0.061015956, -0.24472739, -0.16084275, 0.08614998, -0.22913669, 0.25083897, -0.22330688, -0.024371564, 0.060366213, -0.09966247, -0.1771932, 0.17032151) * inp_2_1_1; - result7 += M4(-0.07302672, -0.05109683, 0.10576564, -0.022838706, 0.03963551, 0.13769099, -0.24412347, 0.03250729, -0.025830485, -0.057196457, -0.12947193, -0.008131842, 0.008664412, 0.014013175, 0.070938855, 0.014234016) * inp_2_2_1; - result7 += M4(-0.0447635, 0.2706803, 0.045532394, 0.053682335, 0.0074390187, -0.0024997066, 0.03460666, -0.0299541, -0.03833312, 0.046010766, 0.23283716, 0.0020204836, -0.020058671, 0.04210086, -0.096002094, 0.031440318) * inp_2_0_2; - result7 += M4(0.17191777, -0.18700376, 0.16222559, 0.098759085, -0.028579071, 0.045521963, -0.08730599, -0.02353861, -0.005669953, 0.013646575, 0.303377, -0.020591909, -0.010994043, 0.19271602, 0.14249931, 0.09549053) * inp_2_1_2; - result7 += M4(-0.039367557, 0.09201602, 0.062410243, 0.01123599, 0.022837764, -0.046663057, -0.10200335, -0.100693144, 0.03853509, -0.10963967, -0.0068727364, -0.03151455, -0.034203973, 0.21623296, -0.19321671, 0.17929366) * inp_2_2_2; - const V4 inp_3_0_0 = inp[3][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_3_1_0 = inp[3][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_3_2_0 = inp[3][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_3_0_1 = inp[3][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_3_1_1 = inp[3][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_3_2_1 = inp[3][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_3_0_2 = inp[3][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_3_1_2 = inp[3][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_3_2_2 = inp[3][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.04605135, -0.080974855, -0.14770524, 0.2078806, 0.04239285, -0.0024623105, 0.18079478, -0.108587936, -0.01931886, 0.105388075, -0.27181867, 0.22437932, 0.17609589, -0.177878, 0.07221977, -0.1746827) * inp_3_0_0; - result0 += M4(0.018464757, -0.23561439, 0.04960931, 0.28431258, 0.12950683, 0.13260159, 0.042814475, -0.008513342, -0.10886742, -0.06699084, -0.03740124, 0.15952557, 0.168636, 0.20721288, 0.40196863, -0.3019998) * inp_3_1_0; - result0 += M4(-0.051391855, -0.0042824503, 0.06831335, -0.012057421, 0.002988401, 0.15158229, -0.01918685, 0.005151734, 0.0033505254, -0.079571195, -0.18560326, 0.14831944, 0.1879655, -0.057016805, 0.065388344, -0.051963795) * inp_3_2_0; - result0 += M4(-0.076565176, 0.19447435, 0.00050797657, 0.10872474, -0.24198912, 0.09529141, 0.001768449, 0.086309135, 0.081387155, -0.010606244, -0.00030883172, 0.17183217, 0.09941799, -0.14858626, -0.082011305, -0.119218394) * inp_3_0_1; - result0 += M4(-0.16135535, -0.16322333, 0.3386631, 0.34962168, -0.2749518, 0.5579637, 0.16597462, 0.26515052, 0.10337055, -0.08064513, -0.052579913, 0.17262822, 0.12003869, 0.21017717, 0.18464307, -0.0062388564) * inp_3_1_1; - result0 += M4(-0.009934144, -0.010288284, 0.039353706, -0.022879086, 0.051783536, 0.04958182, 0.132064, 0.30057287, -0.0007443706, 0.043403853, 0.3022045, 0.12338271, 0.091369316, -0.096466705, -0.030365149, 0.10260419) * inp_3_2_1; - result0 += M4(0.036993206, 0.09092247, -0.009336325, 0.0161322, 0.058486614, -0.11242544, 0.1331823, 0.26906762, 0.023165995, 0.104584955, 0.014057024, 0.23273794, -0.0028969878, 0.0012447162, 0.013772743, -0.064644575) * inp_3_0_2; - result0 += M4(-0.012103265, 0.05212434, 0.05553496, 0.01763389, -0.0067608487, -0.136396, -0.17907256, 0.2556844, 0.06612165, -0.10925595, 0.02879249, 0.07731448, -0.036740102, 0.027531726, 0.08634605, -0.026586156) * inp_3_1_2; - result0 += M4(0.011224526, 0.004712233, -0.004241669, -0.026452735, 0.017320426, -0.017040033, 0.16395779, -0.050422, 0.042837005, 0.090799406, 0.21052054, -0.011981876, 0.032377824, 0.06806101, 0.0075225635, -0.009068746) * inp_3_2_2; - result1 += M4(-0.080622286, -0.40209505, 0.10045938, 0.004343741, -0.02575187, -0.11475399, 0.2379539, 0.1427605, 0.30430657, -0.04961434, -0.023223098, 0.10057648, 0.055065528, -0.036714807, 0.07023846, -0.21102998) * inp_3_0_0; - result1 += M4(-0.31870526, 0.054236785, 0.12778577, -0.39095885, 0.023933226, 0.058292318, -0.13192713, -0.26029238, -0.12815452, 0.12506631, 0.0077809277, -0.0803483, -0.009848192, -0.013140348, -0.41480136, 0.21960336) * inp_3_1_0; - result1 += M4(-0.043933768, -0.049659137, -0.027395973, -0.09820168, 0.14704221, 0.115105644, -0.07196553, 0.1471242, -0.068642825, -0.08051845, 0.019365324, -0.020618564, -0.0729271, -0.07555573, -0.042813744, 0.046251517) * inp_3_2_0; - result1 += M4(0.0043213363, -0.05349198, 0.11984435, -0.054920904, -0.04146573, 0.1743272, 0.41542083, -0.021505192, 0.26137826, 0.14901282, 0.011180237, 0.12152047, -0.18452384, -0.051141735, -0.02887048, -0.238316) * inp_3_0_1; - result1 += M4(-0.05093255, -0.111583486, -0.006821028, 0.0023114143, 0.0018287259, 0.018828012, -0.29075077, -0.71629876, -0.037190385, 0.16606352, -0.3537793, 0.4030885, -0.011729055, -0.1054924, -0.23848836, -0.04286839) * inp_3_1_1; - result1 += M4(0.0053733056, 0.014929106, -0.03500553, 0.03775949, -0.05607901, -0.047182504, 0.13809001, 0.42680854, 0.08783764, 0.10452709, -0.095830366, 0.43158695, 0.020800708, 0.024597341, 0.048591267, 0.013747453) * inp_3_2_1; - result1 += M4(0.0030161184, 0.0074385055, -0.12959804, -0.006738065, 0.39444014, 0.3134053, 0.029207561, -0.10748677, 0.37415364, 0.080607034, 0.18860576, 0.10636628, -0.20976493, -0.061516207, 0.0297704, -0.04369792) * inp_3_0_2; - result1 += M4(-0.00684152, -0.023453891, 0.013284222, -0.07258607, -0.016968042, 0.21502516, 0.026986642, -0.2655523, -0.056798216, -0.24974303, 0.029203188, 0.098772034, -0.059268393, -0.039389934, -0.010243947, -0.2578892) * inp_3_1_2; - result1 += M4(-0.0064150477, 0.0016961435, -0.00861948, 0.09665234, -0.030864606, -0.0041722646, 0.064564414, 0.48401183, -0.15261689, 0.03230854, -0.06542625, 0.15944798, 0.013089931, -0.010073303, -0.00970246, -0.017176565) * inp_3_2_2; - result2 += M4(-0.35099992, 0.058906622, -0.110645816, -0.055553824, 0.1021364, -0.009279999, 0.0763055, -0.044589322, 0.09703061, -0.033118736, 0.11454523, -0.0026462595, 0.020452917, -0.007229885, 0.17999354, 0.030419484) * inp_3_0_0; - result2 += M4(-0.43782955, 0.22373588, 0.051599585, -0.17016378, 0.0009788057, -0.067831926, 0.059710503, 0.055772297, 0.07524246, 0.17291549, 0.05327059, -0.05133727, 0.24469388, -0.053852197, 0.10863572, 0.2655168) * inp_3_1_0; - result2 += M4(-0.0051598684, -0.009514033, 0.0075021456, -0.070091, 0.061619435, -0.015467976, -0.007169133, 0.023165353, -0.016331973, 0.056022115, 0.09268026, -0.009527618, -0.036503848, -0.06030629, -0.08242114, 0.118852355) * inp_3_2_0; - result2 += M4(-0.7486086, 0.17161992, -0.15023755, -0.17931072, 0.28314093, -0.008254453, 0.40640032, 0.06439319, 0.023474004, 0.042089142, 0.116221, 0.026223289, 0.07252573, 0.10833349, 0.15503116, 0.10249209) * inp_3_0_1; - result2 += M4(-0.8056019, 0.3612949, 0.07348199, -0.084614016, -0.0019426488, -0.055639975, -0.060980644, 0.120468765, 0.23388267, -0.21498127, 0.23824705, 0.18074545, 0.3681171, -0.26873836, 0.16280733, 0.2788297) * inp_3_1_1; - result2 += M4(-0.09470729, 0.012938536, 0.023275094, -0.074698485, -0.08079384, 0.08463614, 0.101136856, 0.09731503, 0.19759114, -0.09003537, 0.07982598, -0.18686399, -0.049125355, -0.0040855776, 0.017080836, 0.121710956) * inp_3_2_1; - result2 += M4(-0.15336145, -0.022481957, 0.05588193, 0.019436548, 0.19052926, 0.0014906102, 0.17755671, -0.21821928, -0.0025412235, -0.00020341038, 0.110270366, 0.06614824, 0.01197269, 0.012851696, -0.010948894, 0.07211574) * inp_3_0_2; - result2 += M4(-0.16746992, -0.00063911616, 0.05066873, -0.00102037, 0.08953811, 0.21905635, 0.3017808, -0.22737363, 0.20508489, 0.09728844, 0.13144223, 0.08496513, 0.2081342, 0.02995166, 0.13469604, 0.15758188) * inp_3_1_2; - result2 += M4(0.0012462778, -0.004541226, 0.048749752, 0.032122657, -0.60583264, -0.018941429, 0.2809049, 0.012209258, 0.116206616, -0.034570243, 0.014147146, 0.12366695, 0.008505002, -0.057118602, 0.05487801, 0.076082535) * inp_3_2_2; - result3 += M4(0.12350918, -0.24655011, 0.004715302, 0.07270529, 0.14747362, 0.0069662794, 0.025214894, -0.08530268, 0.03022968, -0.13297094, 0.04097189, 0.16313861, -0.2635692, 0.0060916375, -0.023788773, -0.026898175) * inp_3_0_0; - result3 += M4(0.1883829, 0.0646925, 0.014993379, 0.14084755, 0.06410797, 0.10152301, -0.0030235024, -0.0010248247, 0.09027798, 0.001479561, 0.2240898, 0.20103423, -0.03259516, -0.22661053, -0.11832922, 0.06976387) * inp_3_1_0; - result3 += M4(-0.018690847, -0.040681243, 0.0042737885, -0.0308214, -0.09408816, -0.024904786, 0.05637045, -0.10868908, 0.14919429, 0.034395985, 0.12671834, 0.0847626, 0.13396178, 0.091113314, 0.005819737, -0.051364735) * inp_3_2_0; - result3 += M4(0.31212196, -0.17165367, -0.06511018, -0.7270438, -0.2938809, -0.0619734, -0.00674091, -0.13644682, 0.21232957, -0.16143309, 0.23640887, 0.1808852, -0.36924917, 0.13305682, -0.09787931, 0.27646285) * inp_3_0_1; - result3 += M4(0.09734834, 0.05639918, 0.091249995, -0.6874181, -0.0011675705, 0.19392207, -0.14310706, 0.12852608, 0.2336797, 0.19654833, 0.24210042, 0.12163406, 0.11607119, -0.0938901, 0.20489712, 0.20259413) * inp_3_1_1; - result3 += M4(0.041580264, -0.07388985, -0.1562191, 0.038251642, 0.008811227, 0.130421, 0.068458356, -0.10416251, 0.18861796, -0.020312844, 0.062221725, 0.101540715, 0.08732675, 0.119276404, 0.10412252, -0.24983428) * inp_3_2_1; - result3 += M4(0.051321488, -0.23569724, -0.0024170857, -0.65184665, -0.2069847, -0.055079825, 0.050536092, -0.13921392, 0.19600749, -0.1342837, 0.12974481, 0.05783991, -0.08643687, 0.0700939, -0.03743746, 0.22865531) * inp_3_0_2; - result3 += M4(-0.0045160223, -0.06638518, 0.032106247, -0.5035604, -0.14370607, -0.06111616, 0.066077, 0.49652943, 0.06533907, 0.08874466, 0.21316189, 0.26883286, -0.100569576, -0.058925766, 0.11312686, 0.110890105) * inp_3_1_2; - result3 += M4(0.0527137, -0.013372746, 0.012419309, -0.043412197, 0.33514586, 0.1318614, -0.09333291, 0.29536355, 0.10930369, -0.05799743, 0.11767115, 0.20734105, 0.1078156, -0.005478152, 0.048795734, -0.15892017) * inp_3_2_2; - result4 += M4(0.17967981, -0.0024206066, 0.13608488, 0.15606079, -0.014125473, 0.1302587, -0.10011819, -0.1317733, -0.09214611, -0.06322458, 0.41288662, 0.15127385, -0.18124083, 0.0568483, -0.19667377, 0.0017309567) * inp_3_0_0; - result4 += M4(0.027271256, -0.24882627, 0.22455092, 0.12997843, -0.013529277, -0.4201472, 0.14472222, -0.06391054, -0.07925756, 0.16168503, 0.26179597, 0.26771837, -0.12798652, -0.17919144, -0.15528443, 0.052146297) * inp_3_1_0; - result4 += M4(0.014049165, -0.064533375, 0.048199706, 0.06682013, 2.5640928e-05, 0.2082277, -0.17860648, -0.08876906, -0.052406717, 0.16419308, 0.27266765, 0.10492769, 0.024301874, -0.006975712, 0.1046006, 0.04440832) * inp_3_2_0; - result4 += M4(0.028147465, -0.3983203, -0.01847809, -0.1174863, -0.035749417, 0.46157745, 0.18222934, -0.04988783, -0.11123017, 0.0078030084, 0.38249332, 0.1705812, -0.08041618, 0.28765467, -0.06447827, 0.22736324) * inp_3_0_1; - result4 += M4(0.15762252, -0.16911152, 0.049391177, -0.16696095, 0.10486783, -0.07586026, -0.27720496, 0.11773608, -0.2747425, 0.3786161, 0.002801792, 0.031365275, -0.07994967, -0.44807374, -0.07718438, -0.1410523) * inp_3_1_1; - result4 += M4(0.00046525197, -0.034315817, 0.038648464, -0.0011732264, -0.13102004, 0.4003929, 0.280731, 0.106184326, -0.04164549, 0.050507616, -0.02626758, -0.07078635, -0.023994299, -0.16891508, 0.010971957, -0.08216202) * inp_3_2_1; - result4 += M4(0.028136913, -0.1701202, -0.04529951, -0.45588294, -0.07477213, 0.34723598, 0.16184719, -0.18778995, -0.1759431, 0.004689825, 0.069567025, -0.045840383, -0.0646709, 0.11436368, -0.06644042, 0.16942237) * inp_3_0_2; - result4 += M4(0.021556504, -0.10937223, -0.062238388, -0.29728833, -0.094330914, -0.242173, -0.048293352, -0.14398387, -0.1945089, 0.2895175, 0.13635243, 0.14394437, -0.122205816, -0.051962666, -0.018697487, 0.13145599) * inp_3_1_2; - result4 += M4(0.003249942, -0.03741464, -0.014669524, -0.01883748, -0.11301991, 0.10991982, 0.34437227, -0.029558275, -0.13222758, 0.101735406, 0.155234, 0.091296345, -0.036827065, -0.11017892, -0.04016985, -0.10833027) * inp_3_2_2; - result5 += M4(0.03506106, -0.048500977, 0.21433751, 0.22443856, -0.08877972, -0.08318837, -0.061856892, 0.014292894, -0.06505422, -0.016065434, -0.10231066, 0.23015444, -0.09368356, -0.11299431, -0.18104406, -0.60903746) * inp_3_0_0; - result5 += M4(0.08028086, 0.05022811, 0.02997687, -0.19566007, -0.029159294, -0.059176996, -0.028556893, -0.040786903, -0.05788131, 0.10790394, -0.14932914, 0.15170012, -0.06443315, -0.07240651, -0.07656515, -0.122700624) * inp_3_1_0; - result5 += M4(0.1137321, -0.089192025, 0.039846938, -0.0223175, 0.031930234, -0.12673935, 0.017585667, 0.10969222, -0.04416593, 0.14250727, -0.067044035, 0.1609681, 0.08500118, 0.1646457, 0.14938213, 0.29145613) * inp_3_2_0; - result5 += M4(-0.0009094283, 0.28392726, 0.061082523, -0.059079338, 0.13732661, -0.0061110733, -0.008135003, 0.09520409, -0.18405494, -0.062306434, -0.24817042, 0.06566892, 0.08881168, -0.12629822, -0.03489964, -0.49614233) * inp_3_0_1; - result5 += M4(-0.0033999085, 0.25010565, 0.25577742, -0.16891249, 0.13042337, -0.1365498, -0.026670823, -0.17399186, -0.13135117, 0.052288227, -0.33817428, 0.013874706, -0.003790534, 0.069700696, 0.037918884, -0.4147641) * inp_3_1_1; - result5 += M4(0.119477466, 0.03500783, -0.017041486, -0.022089997, 0.14688644, 0.49860004, 0.18061589, 0.071110405, -0.00042763606, 0.08570362, -0.16958496, -0.06263497, -0.07786273, 0.16250475, 0.060808282, -0.10747887) * inp_3_2_1; - result5 += M4(-0.10027195, 0.008631086, 0.03845458, -0.20309173, -0.03468716, 0.17712484, 0.22909239, 0.1671772, -0.20039444, -0.04577331, -0.2671201, -0.1315341, 0.12112972, 0.030085254, -0.083887346, -0.058580935) * inp_3_0_2; - result5 += M4(-0.09378364, 0.0047412883, -0.031654667, -0.114370205, 0.24361065, -0.2590986, 0.26888162, -0.030608429, -0.27472925, 0.02145119, -0.19987252, -0.08916564, 0.08804271, 0.015394104, -0.0704593, 0.0100355605) * inp_3_1_2; - result5 += M4(-0.0137429135, 0.033333424, 0.014873225, -0.05457149, -0.22024554, 0.025492538, 0.06726592, -0.07553069, -0.09016793, 0.03910614, -0.09760331, 0.05220727, 0.007563907, 0.014528444, -0.003791664, -0.09855803) * inp_3_2_2; - result6 += M4(0.08226089, -0.21958731, -0.112114474, 0.05132853, -0.04083558, -0.040961035, -0.04910069, -0.0048892456, 0.027261192, 0.2104222, 0.063269176, 0.074063376, 0.046857953, 0.2556395, 0.1850387, -0.089739956) * inp_3_0_0; - result6 += M4(-0.1328675, -0.025115045, -0.19812341, 0.035227485, -0.02176685, 0.05458465, 0.06964607, -0.05161913, -0.17933479, 0.2526419, -0.00061058934, 0.09208311, 0.06378177, -0.028756145, 0.19183238, 0.031973366) * inp_3_1_0; - result6 += M4(0.0437481, -0.0024434791, 0.024941877, 0.016278239, -0.114650965, 0.07724659, 0.08796968, 0.025142414, -0.13231051, 0.19960475, -0.09811997, -0.014756727, 0.09013578, -0.0968506, -0.17763449, -0.0029632917) * inp_3_2_0; - result6 += M4(-0.15345512, 0.18706213, -0.023212325, 0.013440581, -0.034489233, -0.14027032, 0.2418924, 0.019004513, -0.114042565, 0.25890866, 0.09361321, -0.05879834, 0.11970154, 0.18717736, 0.09744464, -0.036371052) * inp_3_0_1; - result6 += M4(-0.10288788, -0.15868154, -0.30297798, 0.052903272, -0.13842048, 0.43790805, 0.33335215, -0.11384359, -0.16529663, 0.5202423, -0.18723747, 0.056518346, 0.041580163, -0.44752023, 0.08281633, 0.00019853903) * inp_3_1_1; - result6 += M4(-0.020328198, 0.023436017, 0.015855424, 0.016370794, 0.045815825, 0.13717295, -0.11157435, 0.07572761, -0.013207421, 0.48449904, 0.03152103, -0.073216066, 0.077034675, -0.17097218, -0.062155224, -0.024534568) * inp_3_2_1; - result6 += M4(-0.09663423, 0.12730555, 0.046748877, -0.011983337, 0.07413645, -0.3649768, -0.335109, 0.22421268, -0.17270626, 0.09675239, 0.0012449885, 0.041111287, 0.044592563, -0.06808676, 0.08731075, -0.00681201) * inp_3_0_2; - result6 += M4(-0.05989392, -0.07644608, -0.01670862, 0.0046006497, 0.34034845, -0.039096303, -0.19662887, -0.060420547, -0.11541123, -0.07443262, -0.08212345, 0.002427962, 0.032372512, -0.35467905, 0.15695313, -0.030645799) * inp_3_1_2; - result6 += M4(0.027210187, -0.016581928, 0.02139718, 0.011200915, -0.06388659, -0.04606139, -0.10887709, 0.10041411, 0.019651515, 0.2052294, 0.0034272135, 0.012662167, 0.015468742, -0.055896755, 0.004310118, -0.013102972) * inp_3_2_2; - result7 += M4(0.10082613, 0.016210603, -0.08197527, 0.01651676, 0.07519529, 0.21890922, 0.014900622, -0.0054076924, 0.07356021, 0.05124745, -0.10515334, 0.0079540685, -0.007952385, 0.0054854187, -0.7094067, -0.041997068) * inp_3_0_0; - result7 += M4(-0.004040572, 0.044227745, -0.09104828, 0.002906862, -0.07002957, -0.010332693, -0.13561437, -0.040523257, -0.065134674, -0.22807272, -0.2839234, 0.028763859, -0.017744722, 0.19381854, -0.3146968, 0.026272843) * inp_3_1_0; - result7 += M4(0.033424836, 0.019449243, -0.17157291, 0.03425873, 0.11572792, 0.06314258, 0.17696764, 0.016658517, 0.08962576, 0.027958134, -0.08218732, 0.031156845, 0.014556747, 0.06479981, -0.26210457, 0.0070842793) * inp_3_2_0; - result7 += M4(-0.0014259213, 0.03989152, -0.21148701, -0.0001369806, 0.23431356, 0.07145237, 0.16289471, 0.119675, 0.06265752, 0.08371256, 0.39132395, 0.06438435, 0.037505884, -0.26679227, -0.16482724, 0.008022178) * inp_3_0_1; - result7 += M4(-0.033659853, 0.1943747, -0.18204369, 0.10617289, -0.13015918, 0.31749845, -0.479224, -0.0002916806, 0.09526148, -0.22029287, 0.63103664, 0.0045550913, -0.02362723, -0.021060677, -0.6373392, -0.0036393513) * inp_3_1_1; - result7 += M4(0.027139774, 0.0644977, -0.022464242, 0.057896312, -0.1653049, 0.3821092, 0.018036174, 0.04535975, -0.06970829, -0.046692904, 0.5127164, 0.07344819, 0.004554193, 0.04056319, -0.17499696, -0.022242673) * inp_3_2_1; - result7 += M4(0.0047700955, -0.20019549, -0.09474941, 0.0059617083, -0.14127806, 0.054258976, 0.13210048, -0.11462701, -0.052308206, 0.013857267, 0.35287967, 0.10111767, 0.05864213, -0.16011465, 0.03517866, -0.04118698) * inp_3_0_2; - result7 += M4(-0.006755949, -0.08598698, -0.0969316, -0.019678462, -0.1485965, -0.6410416, -0.14602426, 0.114290096, -0.06485307, -0.17145531, 0.45939043, 0.040029217, 0.019341905, -0.027362224, -0.43237025, 0.007962174) * inp_3_1_2; - result7 += M4(0.012933513, -0.002370105, 0.04151422, 0.0062560984, -0.07096859, -0.18996301, 0.02074028, -0.023468222, -0.08030726, -0.11030997, 0.013433407, 0.062006313, 0.036660332, 0.07629858, 0.0075185457, -0.0062851734) * inp_3_2_2; - const V4 inp_4_0_0 = inp[4][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_4_1_0 = inp[4][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_4_2_0 = inp[4][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_4_0_1 = inp[4][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_4_1_1 = inp[4][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_4_2_1 = inp[4][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_4_0_2 = inp[4][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_4_1_2 = inp[4][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_4_2_2 = inp[4][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.043933835, 0.12706038, 0.10575533, -0.0033328787, -0.0155722825, -0.0064422, -0.22235104, 0.0021871126, 0.044962022, -0.2084915, 0.047017507, 0.094862305, -0.047800273, 0.45032048, -0.010650127, 1.3485373) * inp_4_0_0; - result0 += M4(-0.06500591, 0.17128548, 0.087880425, 0.030083595, -0.19567467, -0.044240076, -0.39192855, -0.088764206, 0.059117388, 0.21363047, 0.5866385, -0.10034119, -0.34414822, 0.2816878, -0.22936393, -0.026862172) * inp_4_1_0; - result0 += M4(-0.017450435, -0.008009714, 0.24703434, -0.009368439, -0.011507157, -0.09753918, -0.2169605, -0.14993855, 0.011848745, 0.068915926, -0.0033733172, 0.07566037, -0.07841365, -0.5787549, 0.039935626, -0.5071789) * inp_4_2_0; - result0 += M4(-0.02699949, 0.04337066, -0.028844833, -0.18327013, 0.019270988, 0.0044732476, 0.04026257, -0.0023906762, -0.03257226, 0.054302845, -0.051614817, 0.21698895, 1.0265965, 1.6059058, -1.2123098, 2.2432985) * inp_4_0_1; - result0 += M4(0.31841218, 0.10227754, -0.04179721, 0.27813497, 0.50437313, 0.30401784, -0.83502316, -0.17794444, 0.40681085, -0.014192955, -0.34208548, -0.3159725, 0.25310355, 0.39390773, -0.039146632, 1.4822648) * inp_4_1_1; - result0 += M4(-0.015185076, 0.011515262, -0.17696188, -0.083727114, 0.0219049, 0.1877359, -0.17514287, -0.07056134, -0.0047273273, 0.32253075, -0.23863189, 0.32053134, 0.022383299, -0.75523853, -0.67907774, -0.34211034) * inp_4_2_1; - result0 += M4(0.020736646, 0.22149237, 0.038500983, -0.0040626735, 0.023792127, 0.051211964, -0.012986525, 0.5411656, -0.033746365, 0.2039634, 0.03940041, 0.06830118, 0.22465043, 0.29020804, 0.50171816, 0.37238854) * inp_4_0_2; - result0 += M4(0.05687425, -0.06758185, -0.013886678, -0.37559056, 0.039525576, -0.2898339, 0.23285526, 0.40275502, -0.021126723, 0.009932278, -0.06333526, 0.04787878, -0.07951041, -0.63527197, 0.861121, 0.19678026) * inp_4_1_2; - result0 += M4(-0.09713811, -0.022226477, 0.11775823, -0.024345307, 0.06314863, -0.02617594, 0.07589644, 0.03323357, 0.0363189, -0.13977173, 0.17505853, 0.32290134, 0.091539726, -0.4658496, 0.22282986, -0.30940628) * inp_4_2_2; - result1 += M4(0.101002835, 0.24034204, -0.18724895, -0.10831504, -0.19521214, 0.13013652, -0.12897135, 0.028854698, 0.19067132, 0.15642726, -0.11472222, 0.1787505, -0.31364074, 0.063830234, 0.32278952, -1.4481736) * inp_4_0_0; - result1 += M4(0.17090677, 0.08112912, 0.106308535, 0.031496152, -0.095793046, -0.21193625, 0.09400938, 0.12038868, 0.21749893, 0.29433677, -0.09720015, 0.23580499, -0.28948897, -0.17646609, -0.16297604, 0.94595957) * inp_4_1_0; - result1 += M4(0.0821181, 0.15005095, 0.013993431, -0.010840322, -0.0346897, 0.021576175, -0.027959088, -0.13999633, -0.03191572, -0.0005661595, -0.02152548, 0.18865772, 0.47631562, 0.18507555, 0.20293258, -0.440642) * inp_4_2_0; - result1 += M4(-0.0125335315, 0.085442804, 0.13406013, -0.04200789, 0.20422478, 0.1359117, -0.1532732, 0.14584799, -0.7638764, -0.014786535, 0.4027877, 0.06364929, 1.1488614, -0.4579131, -0.9352097, -0.48992783) * inp_4_0_1; - result1 += M4(-0.30711475, 0.14986925, 0.2728505, 0.19745374, -0.015334458, 0.23564081, 0.39173597, 0.024513489, -0.18967952, 0.26932964, -0.36520827, 0.052133285, -0.07051711, -0.33518225, 0.42559066, -0.3849896) * inp_4_1_1; - result1 += M4(0.07140103, -0.057007324, 0.012632208, -0.13049458, 0.096567295, 0.15750505, 0.037136164, -0.19101153, -0.22457397, -0.3995724, -0.101503536, -0.2837814, 0.0753693, 0.23190194, -0.02480795, -0.5058711) * inp_4_2_1; - result1 += M4(0.2593645, 0.02022268, -0.0051116063, 0.1556102, -0.04138701, 0.07484233, -0.43090296, -0.27348343, -0.13066594, 0.0665818, 0.12295215, 0.101660945, -0.2329971, 0.15687025, 1.2845021, 0.67747664) * inp_4_0_2; - result1 += M4(-0.06993842, -0.27489927, 0.19507943, 0.19825046, 0.14676231, 0.042970587, -0.55814904, -0.2734004, 0.24545409, 0.08419905, 0.21980111, -0.06458914, -0.24575853, -0.17772894, -0.4633336, -0.15302145) * inp_4_1_2; - result1 += M4(0.008605006, 0.014479516, 0.11607664, -0.09510068, -0.106181175, 0.055161703, -0.1667029, -0.027978044, -0.036544915, 0.10974465, 0.002222587, 0.10383097, 0.09041401, 0.16488943, 0.11226269, -0.19162667) * inp_4_2_2; - result2 += M4(0.055457704, -0.056217745, -0.033942185, -0.00722141, -0.054121472, -0.052245956, -0.14177635, -0.018460719, 0.05586428, 0.015558629, 0.19882756, 0.014312327, 0.178795, -0.049610604, -0.36489558, 0.41732898) * inp_4_0_0; - result2 += M4(-0.042121302, 0.14984974, -0.1655493, 0.027383108, -0.06710872, 0.09957065, -0.018959327, 0.069651276, 0.17469804, -0.0860692, 0.22778963, -0.0040136976, -0.17133862, 0.24035032, -0.37647742, 0.09631742) * inp_4_1_0; - result2 += M4(-0.027120505, 0.029584423, 0.034108613, -0.01911442, -0.05038286, -0.093917795, 0.02817406, 0.04933095, -0.0074033435, -0.025070585, 0.05466382, 0.02214115, 0.1099196, -0.10905508, 0.073162444, 0.008276154) * inp_4_2_0; - result2 += M4(0.10289565, -0.015946252, 0.044525716, -0.0451089, -0.24954651, -0.15266839, -0.12216035, -0.09802559, -0.12643401, 0.021861162, 0.106372155, 0.011664158, -0.47065076, -4.0033064, 1.3381926, 0.30289367) * inp_4_0_1; - result2 += M4(0.08874324, -0.14718397, -0.16206247, -0.0046408363, -0.20309152, 0.3170359, 0.09034184, -0.0108817415, 0.0135483, -0.45357051, -0.16762625, -0.27426755, -0.5428502, 0.59077454, -0.6760815, 0.2374615) * inp_4_1_1; - result2 += M4(0.073494524, -0.0044760085, -0.008827016, 0.07018938, -0.29603386, -0.11475809, 0.20718506, -0.12137388, 0.07416017, 0.110944025, 0.15559895, 0.6356071, -0.1815775, -0.062078163, -0.070203975, -0.05008616) * inp_4_2_1; - result2 += M4(0.09505034, 0.008293356, -0.015580096, 0.06277421, -0.112059414, -0.18611094, 0.28189355, -0.007169763, 0.1970073, 0.05416814, 0.21181273, 0.12052543, -0.22175871, -0.061673485, 0.39157298, 0.2969049) * inp_4_0_2; - result2 += M4(-0.096156076, 0.36941817, -0.4053515, -0.073764406, 0.07044593, -0.34292355, -0.8597628, 0.16438822, 0.10281082, 0.31267264, 0.15760374, -0.34852383, 0.038623758, 0.9325194, -0.23828413, 0.34724307) * inp_4_1_2; - result2 += M4(-0.083282165, 0.097932056, -0.07639453, -0.12619315, 0.025155192, 0.030924903, -0.3102157, 0.25227463, -0.21255834, 0.07570855, 0.15667818, 0.040364295, 0.17856519, 0.321062, 0.4306812, 0.37703678) * inp_4_2_2; - result3 += M4(-0.23187047, 0.010975962, 0.0438132, -0.052959803, -0.06097081, -0.050158054, 0.075217575, 0.015687898, 0.090452805, -0.023415329, -0.1112077, 0.14325893, -0.44430873, 0.5754394, 0.22138248, 0.9600829) * inp_4_0_0; - result3 += M4(-0.001374508, 0.08922629, 0.02183818, -0.007298122, 0.04190977, -0.14897309, 0.07866729, 0.039331388, 0.051427267, -0.07335913, -0.07510419, -0.12656952, 0.76267934, 0.4289599, -0.7168081, 0.6005064) * inp_4_1_0; - result3 += M4(0.1447521, -0.011655407, -0.025268016, 0.031270884, -0.1409656, 0.009643, 0.008555755, 0.0003816396, 0.27363488, -0.04281107, 0.0385803, 0.06870859, -0.31166762, 0.10217584, 0.3566162, 0.47433048) * inp_4_2_0; - result3 += M4(0.03888576, 0.05069627, 0.16956647, 0.16769393, -0.23953679, -0.13275558, 0.20861049, -0.04484374, 0.15661046, 0.06466727, -0.1567391, -0.070803, -0.8529993, -0.2986899, 0.12563446, 0.19540991) * inp_4_0_1; - result3 += M4(-0.009582332, 0.018781941, -0.083862066, 0.34540504, 0.1903877, 0.09198747, -0.049611587, 0.20686014, -0.28968215, 0.16041149, -0.07493239, -0.27891484, 0.17805183, 0.11202903, -0.45208234, -0.37097716) * inp_4_1_1; - result3 += M4(-0.14741129, 0.0011291805, 0.15958002, 0.35017553, 0.02642421, -0.034308303, 0.114132725, -0.23617588, -0.030350536, 0.10123737, 0.3390554, -0.24009877, -0.081743404, -0.17741175, 0.13157457, 0.098062605) * inp_4_2_1; - result3 += M4(0.12401241, -0.02899271, 0.0886566, 0.45972896, -0.32484546, -0.026564205, 0.35018963, 0.03693773, 0.030159509, -0.023272557, 0.026780142, -0.25289267, 0.9466929, 0.002594958, 0.044176634, 1.1332469) * inp_4_0_2; - result3 += M4(0.10046472, -0.07664723, -0.0126268985, 0.022851951, -0.29135856, -0.55939215, -0.40155914, -1.3748808, 0.009468875, -0.14294069, 0.072558925, 0.21744375, -0.42082673, 0.113225915, -0.35854086, -0.57919407) * inp_4_1_2; - result3 += M4(-0.30213612, 0.10097708, -0.018049039, 0.33585167, 0.05401334, 0.00632056, 0.30523145, 0.70237666, 0.10806503, 0.017194161, 0.007315611, 0.011585378, -0.064837925, 0.1594983, -0.14246199, 0.58990574) * inp_4_2_2; - result4 += M4(-0.036731225, -0.34162, -0.03499806, 0.0014098753, 0.07419551, -0.07143481, -0.12657213, 0.027188463, -0.1702475, -0.10603434, 0.07143819, 0.075398155, -0.10738717, -0.25793362, 0.5822569, 0.66245127) * inp_4_0_0; - result4 += M4(-0.0052070916, 0.3201585, 0.2211905, 0.098264374, 0.06683041, 0.22845455, -0.1778898, 0.18100043, -0.23456462, -0.16082174, 0.14808704, -0.24935953, 0.1638891, 0.8763659, 0.17503476, 0.9105029) * inp_4_1_0; - result4 += M4(-0.010714657, -0.18426414, 0.0021182364, -0.07301834, 0.109416366, -0.21301018, -0.04980504, 0.0016859429, -0.15915893, 0.086007535, 0.109301575, 0.09598389, -0.1389941, 0.22201274, 0.003360719, -0.47741684) * inp_4_2_0; - result4 += M4(-0.07488542, 0.15137938, 0.25689054, 0.28781402, 0.15927428, -0.19147582, 0.024918245, -0.013025791, 0.030823292, 0.18630095, -0.045132592, -0.18503529, -1.8642454, 0.115693346, 0.4006669, -0.46074566) * inp_4_0_1; - result4 += M4(0.04897464, -0.026080633, 0.13614678, 0.3869139, 0.10892622, -0.1837269, 0.23996358, 0.22882898, -0.38740736, 0.143096, 0.0017984522, -0.4081406, 0.44450042, -0.3950319, 0.21496825, 0.26076785) * inp_4_1_1; - result4 += M4(-0.07608073, 0.07911588, 0.08052993, 0.16565593, 0.14006428, 0.06948609, -0.15395197, -0.13344505, -0.06445378, 0.17446397, -0.038015418, -0.022728655, 0.007954412, -0.39011008, -0.44235098, 0.42077646) * inp_4_2_1; - result4 += M4(-0.12776124, -0.07826014, 0.14893329, 0.35461107, 0.06286757, 0.12816162, 0.123069204, -0.21632172, -0.1378017, -0.3392538, -0.119866274, 0.21159121, -0.25350207, -0.39882445, 0.93855214, 0.04867734) * inp_4_0_2; - result4 += M4(0.23709327, 0.12146076, 0.0014411873, 0.13475205, -0.3455927, 0.34190825, 0.12932707, -0.27509955, 0.02337068, -0.35489067, -0.09166492, 0.058220875, -0.20866768, -0.9153801, 0.17183772, -0.2272294) * inp_4_1_2; - result4 += M4(0.013415054, 0.25050652, -0.015295671, 0.3256641, -0.033918053, 0.1712655, 0.27860522, -0.01920403, -0.11220131, -0.25981647, -0.14070293, 0.051742885, -0.42533696, 0.20613243, 0.5141396, 0.4479512) * inp_4_2_2; - result5 += M4(-0.013423717, -0.01621074, 0.014396069, 0.04636097, -0.07633005, 0.103152744, 0.09406755, -0.23400412, -0.073840216, 0.05531753, -0.19725178, -0.18816635, -0.5194422, 0.41300288, -0.33677968, -0.29036173) * inp_4_0_0; - result5 += M4(0.17891423, -0.032836847, 0.02361256, 0.24666274, -0.07597155, 0.1217218, 0.1416014, -0.0020104838, -0.13222502, 0.039270032, -0.15187746, 0.04453036, 0.20064957, -0.101766616, -0.5905105, 0.12905842) * inp_4_1_0; - result5 += M4(-0.01881463, -0.09289714, -0.022836227, -0.31012687, -0.034499515, -0.11065184, 0.13705248, -0.23047657, 0.02437286, 0.16680291, -0.09069666, 0.18257791, -0.61990106, 0.0057711415, -0.25935042, -0.35851914) * inp_4_2_0; - result5 += M4(-0.021146594, -0.029446606, -0.082762994, 0.064524926, 0.01789162, 0.3071747, 0.1462408, 0.33703437, 0.1259944, -0.015564585, -0.03334213, 0.2671825, -2.2543018, -0.32053766, -0.5721268, -0.08540516) * inp_4_0_1; - result5 += M4(0.04635425, -0.0971961, -0.013695813, 0.10194416, -0.04122832, 0.30674472, 0.076086156, -0.03165913, -0.16269441, -0.34496567, -0.26136944, 0.10860668, 0.24348365, 0.8543127, 0.017767547, 0.1319544) * inp_4_1_1; - result5 += M4(0.10381667, 0.032034438, -0.03857839, 0.04167469, 0.09087904, -0.0094315475, 0.045841258, -0.0031114656, 0.044742525, 0.26312754, 0.005105453, 0.36375442, 0.0589386, -0.044157237, 0.099962756, -0.6543929) * inp_4_2_1; - result5 += M4(-0.07668951, 0.067869626, -0.01711179, -0.033269443, -0.29325554, -0.17931072, 0.14675204, 0.21368891, 0.01043264, 0.061701328, -0.062129032, -0.043798994, -0.3680163, 0.21827723, -0.16277654, -0.05512363) * inp_4_0_2; - result5 += M4(-0.14106841, 0.3398882, 0.14981519, -0.057984363, -0.020354753, -0.6639611, -0.3275943, 0.27394053, -0.18922806, 0.14231218, 0.26963535, 0.2525783, 0.70925796, 0.06835644, -0.17484419, 0.28484875) * inp_4_1_2; - result5 += M4(-0.007574134, -0.008877658, 0.10837159, 0.032498185, -0.0051235626, 0.08571261, -0.045898594, 0.26245597, 0.06798225, 0.052184038, 0.056111094, -0.0078007663, 0.046522822, 0.33059028, -0.17458116, 0.31904528) * inp_4_2_2; - result6 += M4(0.03389584, 0.19403295, -0.04860773, 0.026761534, 0.054014232, -0.07292661, -0.02598497, -0.061448827, -0.007784874, -0.19054742, 0.012637252, 0.0021998957, -0.61896056, -1.8247013, -1.3640536, 0.17099708) * inp_4_0_0; - result6 += M4(0.11959262, -0.112947635, -0.04522867, -0.022378638, 0.10156984, 0.015838174, -0.052260626, -0.030087646, -0.077513546, 0.103042975, 0.19859043, -0.030813945, -0.74007183, 0.9250063, 0.4930485, 0.06868177) * inp_4_1_0; - result6 += M4(-0.10095972, -0.17718586, 0.018417822, -0.019964304, 0.06921816, -0.030886414, -0.062909216, -0.0137259755, -0.0094997985, 0.045390908, 0.044127688, 0.0038927987, -0.27405733, -0.52662337, 0.5645516, -0.0046960455) * inp_4_2_0; - result6 += M4(0.0144171, 0.14074369, -0.01238349, 0.02127338, 0.037153464, 0.04097126, -0.56117153, 0.037505813, -0.16305083, 0.014705224, -0.159918, 0.008001658, -0.53120875, -0.32226828, -2.6737142, 0.20629326) * inp_4_0_1; - result6 += M4(-0.117756315, 0.049431425, -0.2234179, -0.097091846, -0.18174106, 0.29994884, -0.9557168, 0.06932641, -0.040819455, 0.46370217, 1.0163265, -0.15943788, -0.23299661, -1.7371395, -0.7194919, 0.023242874) * inp_4_1_1; - result6 += M4(-0.017405337, 0.075112656, -0.013109668, 0.009952797, 0.23290958, 0.10032564, 0.22563946, 0.029756796, -0.055396147, 0.08186857, -0.1033286, 0.023160672, -0.16773629, 0.8474689, 0.6479655, -0.01240113) * inp_4_2_1; - result6 += M4(-0.047531478, 0.1341213, -0.04633437, 0.031994, -0.20502213, 0.5918409, -0.056666, 0.23001784, -0.059606258, -0.16372056, -0.28430218, 0.10835266, 0.12627047, -2.6726804, -1.2678218, -0.026746945) * inp_4_0_2; - result6 += M4(-0.118497014, 0.19945541, -0.69155926, 0.089384854, 0.20894013, -0.017318033, 0.25138617, -0.2369898, -0.48950273, 0.031593814, 0.03604946, 0.0045358078, 0.23567657, 1.2941473, -0.20139225, 0.22015218) * inp_4_1_2; - result6 += M4(-0.03188186, 0.17795697, -0.04198236, -0.021961361, -0.04803586, -0.24953383, -0.3731971, -0.012675013, -0.013205051, 0.039766762, -0.14097597, 0.049249154, 0.4338116, 0.9877368, 0.4804303, 0.24543618) * inp_4_2_2; - result7 += M4(-0.016444825, 0.3526713, 0.28775954, 0.014064034, 0.09527122, -0.1971823, -0.062081866, -0.008516877, 0.04070474, 0.2445596, 0.4249027, 0.016719475, -0.23529327, -0.5027791, -0.565041, 0.26437464) * inp_4_0_0; - result7 += M4(-0.049483463, 0.47352275, 0.5842295, -0.0038851986, 0.13766365, -0.040207036, -0.28587368, 0.017692199, 0.12847334, -0.016048249, 0.66871566, 0.028657863, 0.8306536, -0.5381524, 0.4657456, 0.38058782) * inp_4_1_0; - result7 += M4(-0.1523118, 0.49961996, 0.26298338, -0.018755624, 0.08406784, -0.09572169, -0.11036871, 0.0073888116, 0.032245852, 0.21733871, 0.061299272, 0.013965863, 0.33974123, -0.06699556, 0.36706644, -0.14034802) * inp_4_2_0; - result7 += M4(-0.005094492, 0.22388749, 0.07201192, -0.0017065649, 0.05494534, 0.06471637, -0.22140256, -0.06387195, 0.066367105, -0.27405983, -0.067854516, -0.023395594, 0.763714, -1.034463, -0.9509174, 0.85722375) * inp_4_0_1; - result7 += M4(0.08387833, 0.2656552, 0.41373298, -0.03370844, 0.23824285, -0.07766313, -0.4600171, 0.33675903, -0.06763795, -0.099605955, -0.17221004, 0.041557327, 0.05908725, -0.111010134, 0.07688242, 0.7120945) * inp_4_1_1; - result7 += M4(0.07179995, 0.09834127, 0.08792755, -0.029416224, 0.29790422, -0.36116114, -0.37201816, -0.088691995, -0.040895164, -0.161215, -0.094054155, -0.036344577, -0.18664718, 0.30399847, -0.04183974, -0.11641879) * inp_4_2_1; - result7 += M4(-0.0369852, 0.3014071, 0.008517164, 0.032649826, -0.0034535215, 0.0993149, -0.17559941, -0.11803248, -0.015780225, -0.34161067, -0.048241746, -0.03857864, 0.091001526, 0.32788923, -1.3452559, 0.065274894) * inp_4_0_2; - result7 += M4(-0.18685557, 0.5552962, 0.18548086, 0.11738402, 0.026667565, 0.1991448, -0.11865331, -0.10834472, -0.051948383, -0.1237092, -0.04858137, 0.036950763, -0.177877, -0.18528458, 0.0937208, 0.11938466) * inp_4_1_2; - result7 += M4(-0.03491692, 0.15620849, 0.12244591, 0.075934336, 0.16449572, 0.65514255, -0.22271386, -0.1365949, -0.0913708, 0.055683654, 0.14616726, -0.026258292, 0.056808896, 0.24587765, -0.58250946, -0.050311152) * inp_4_2_2; - const V4 inp_5_0_0 = inp[5][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_5_1_0 = inp[5][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_5_2_0 = inp[5][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_5_0_1 = inp[5][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_5_1_1 = inp[5][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_5_2_1 = inp[5][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_5_0_2 = inp[5][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_5_1_2 = inp[5][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_5_2_2 = inp[5][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.0051450958, -0.15760042, 0.4231499, 0.18060577, -0.056309167, 0.14636351, 0.118280545, 0.12054733, 0.023568582, 0.009474138, -0.06755038, 0.06620043, -0.033185657, -0.04800841, -0.11323891, -0.008924259) * inp_5_0_0; - result0 += M4(-0.06419975, 0.44804958, -0.020719472, -0.04972149, 0.03628369, 0.019943887, -0.02505207, 0.12998594, 0.006989791, 0.24113663, -0.14214529, 0.1999471, -0.039955325, -0.049669247, -0.4479814, 0.33965677) * inp_5_1_0; - result0 += M4(0.07881262, -0.10573373, -0.0626451, -0.09977468, -0.037368026, 0.054085866, -0.31893846, 0.046081837, -0.12702462, 0.03462566, -0.19970353, 0.01761308, -0.02324446, -0.09832516, 0.052062348, -0.07844883) * inp_5_2_0; - result0 += M4(-0.1351513, -0.72073823, 0.17526044, 0.3965589, 0.017998695, 0.0071757594, 0.014283309, 0.25352487, 0.03937401, 0.17419127, 0.070205644, 0.09253763, 0.0035933559, 0.18372926, -0.16931735, -0.09046159) * inp_5_0_1; - result0 += M4(0.09898898, 0.29403368, 0.36500993, -0.6324335, 0.06488811, -0.0555426, 0.10371043, 0.0064976104, 0.09621622, -0.1844134, -0.03883004, -0.37541935, 0.0621376, -0.2851736, 0.04521926, -0.16881518) * inp_5_1_1; - result0 += M4(-0.0332134, -0.107515305, 0.11302439, -0.07755823, -0.07026915, 0.14762509, 0.14312848, 0.16476385, 0.004468027, -0.17940027, 0.31457168, 0.23536958, 0.010647795, 0.13393684, -0.26272476, 0.15082082) * inp_5_2_1; - result0 += M4(-0.017708845, -0.069853775, 0.021684464, 0.018642493, 0.060621686, 0.11644586, 0.086567186, 0.033837717, 0.015906077, 0.029424706, -0.02505418, 0.081145376, -0.009521844, 0.06738458, -0.04931767, -0.051327854) * inp_5_0_2; - result0 += M4(0.07625626, 0.15296616, -0.05108697, -0.22876082, 0.049646292, 0.11500226, 0.10052123, 0.16057147, -0.055723928, 0.05712855, -0.03488604, -0.10507118, -0.06725942, 0.30491433, 0.111234374, 0.33024707) * inp_5_1_2; - result0 += M4(-0.036012206, -0.053939093, 0.015232185, -0.055970423, -0.0385931, 0.07835048, 0.096713014, -0.041851964, 0.005637644, -0.060264934, -0.13444582, 0.034695953, -0.04596006, -0.04313428, 0.025157876, 0.1384406) * inp_5_2_2; - result1 += M4(-0.17456424, 0.019543786, 0.20534173, 0.013147431, 0.124293834, -0.04668545, 0.08630591, -0.0072679613, -0.066717155, -0.23682246, 0.08739879, -0.11521261, 0.15619731, 0.16530192, -0.003974877, 0.07453722) * inp_5_0_0; - result1 += M4(0.2380412, -0.08698716, -0.027357634, -0.6958079, -0.021177795, 0.14077368, 0.24077934, 0.12516506, -0.19820255, 0.18605731, 0.096661836, -0.18042073, -0.3048348, -0.10395768, -0.030368034, -0.15081505) * inp_5_1_0; - result1 += M4(0.10696881, 0.08310753, -0.039047334, -0.032041088, -0.021046072, -0.11450948, 0.15064356, -0.047573496, 0.025164329, -0.048200812, 0.06391055, -0.025798978, -0.17370795, -0.03326645, 0.06311836, -0.119780034) * inp_5_2_0; - result1 += M4(-0.49799445, -0.101748355, 0.026548926, 0.0009869694, 0.13140613, 0.018815681, -0.00028442143, 0.16075283, 0.13004704, -0.034162313, 0.04865496, -0.25653997, 0.18711624, -0.02361482, 0.12062705, -0.022263441) * inp_5_0_1; - result1 += M4(-0.0015738473, 0.13591145, -0.1493836, 0.35722584, -0.07613316, 0.07273466, 0.18546596, 0.002357422, -0.019954395, 0.10181495, -0.08570051, 0.016389789, -0.016193232, 0.34178185, 0.14009538, -0.00346789) * inp_5_1_1; - result1 += M4(0.060526446, -0.0048280773, 0.044525918, 0.025912397, -0.06335521, 0.00718508, 0.07674829, 0.13279209, 0.03200262, 0.105206266, -0.024052003, -0.106099814, -0.12935239, 0.08653851, 0.023443455, -0.05271129) * inp_5_2_1; - result1 += M4(0.21956016, -0.1429551, -0.0027738798, -0.436143, 0.06786912, 0.12924945, -0.004840751, -0.0015595749, 0.09060175, -0.044800665, -0.19342509, -0.12292698, 0.11155459, 0.09935573, 0.026639914, -0.13801795) * inp_5_0_2; - result1 += M4(-0.03111417, -0.23151036, -0.15066165, 0.08405567, 0.03900448, 0.0004618403, 0.064022146, -0.046199884, 0.093686186, 0.013357704, -0.11826389, -0.09376755, -0.06276542, -0.22411177, -0.19583291, 0.045340218) * inp_5_1_2; - result1 += M4(-0.023033304, -0.014538378, -0.038210288, -0.15478744, -0.013306196, 0.020858865, 0.057584386, 0.02142128, -0.046950452, -0.04762053, 0.063769825, 0.062321283, -0.06319063, 0.07391439, -0.0029234062, -0.105590835) * inp_5_2_2; - result2 += M4(0.1167811, -0.01418504, -0.052589666, 0.17359132, 0.05885276, -0.081918955, -0.049661536, -0.06669211, -0.02992237, 0.038094994, -0.08164139, 0.005531726, 0.022294234, 0.031138966, -0.027273908, 0.03937209) * inp_5_0_0; - result2 += M4(0.08101662, -0.042889368, 0.14470932, 0.22161952, 0.12996526, 0.043119673, -0.08832045, 0.095040694, -0.09526287, -0.2629706, 0.32249454, -0.1795436, -0.12670264, 0.15224054, 0.11607692, 0.1272891) * inp_5_1_0; - result2 += M4(-0.08650342, -0.111262, -0.05717097, -0.018508876, -0.056361806, 0.031751845, 0.04617934, -0.13391319, -0.116569266, 0.010901952, 0.010313211, -0.19171946, 0.07925488, 0.03652511, 0.04150935, -0.055951826) * inp_5_2_0; - result2 += M4(-0.106069, -0.2882112, -0.32033947, 0.14663343, 0.13325286, -0.090952724, 0.15536335, 0.052787397, 0.05464404, 0.015789662, -0.0040731574, 0.0027198617, -0.061516847, 0.052685317, 0.08264559, 0.02729795) * inp_5_0_1; - result2 += M4(0.007308095, -0.17614515, 0.28783074, -0.9189553, 0.21325535, 0.051409543, -0.05781061, -0.040069897, -0.2826401, 0.019891914, 0.23495974, -0.40328723, -0.32055745, -0.029064918, 0.7348401, -0.19686995) * inp_5_1_1; - result2 += M4(-0.10470234, -0.11646157, 0.011246417, -0.29291832, 0.061151206, 0.11582606, 0.0870496, -0.033678215, -0.1276939, 0.02227953, 0.025519338, -0.17415357, -0.17239776, 0.14768149, 0.27701813, 0.107354924) * inp_5_2_1; - result2 += M4(0.08692945, 0.083571486, -0.12748118, 0.09733716, 0.12568961, -0.058736682, 0.14068969, -0.0033396173, -0.010829271, 0.07061805, -0.06625334, -0.07993038, -0.11778017, 0.018444233, -0.071128815, 0.11453241) * inp_5_0_2; - result2 += M4(-0.46835116, 0.08479999, -0.0039169136, 0.13786642, 0.014397927, 0.0029696166, 0.098397054, -0.029238032, -0.09004943, 0.052431967, 0.08756358, -0.1809681, -0.06502543, 0.2852029, -0.07329348, -0.04177569) * inp_5_1_2; - result2 += M4(-0.1420336, -0.07388307, -0.032658957, -0.091695175, -0.0040496914, 0.0015058133, 0.078495935, 0.056698773, -0.012944238, -0.0055635595, 0.035124477, -0.2157339, -0.038642045, 0.10222997, 0.00074178586, 0.0017457946) * inp_5_2_2; - result3 += M4(-0.16932517, -0.09341428, 0.3430739, -0.12229078, -0.11999112, 0.03741224, -0.05492939, -0.0026339903, -0.32195285, 0.09540514, 0.06530155, 0.0028655198, -0.077018835, -0.09946717, 0.079684116, 0.10899142) * inp_5_0_0; - result3 += M4(-0.502374, 0.11165775, 0.17943372, -0.079336174, -0.07131844, 0.2809923, -0.13127527, 0.0633431, -0.24214922, 0.21910663, -0.49700248, -0.15542454, -0.089767866, -0.27447262, 0.17418122, 0.07191535) * inp_5_1_0; - result3 += M4(-0.0044880547, 0.040800046, -0.106733344, -0.14740752, -0.08882322, 0.05579882, -0.116783574, 0.21178295, -0.19459495, 0.012615045, -0.50277907, 0.032514036, 0.0028108135, -0.13599889, -0.0042471066, 0.1098834) * inp_5_2_0; - result3 += M4(-0.01825542, 0.1578331, -0.21739319, 0.17367771, 0.04488962, 0.045159876, 0.10718336, 0.15808535, -0.14622433, 0.11565846, -0.23890516, 0.10785032, -0.061551236, -0.09752946, 0.040210646, -0.022730613) * inp_5_0_1; - result3 += M4(0.03457091, 0.084648624, -0.19547012, -0.1445636, 0.16226695, 0.08337543, -0.0012870614, 0.10822537, -0.036591757, 0.20207573, -1.0499232, -0.22635952, -0.2565335, -0.46139503, 0.10725392, -0.17483696) * inp_5_1_1; - result3 += M4(-0.02482396, 0.076638296, -0.26231682, -0.029845202, 0.1292056, 0.08607923, -0.08030817, 0.27016577, -0.103699565, 0.00026433961, -0.7731009, 0.09961459, 0.040947378, -0.023460157, 0.16457434, 0.19505286) * inp_5_2_1; - result3 += M4(-0.082439944, 0.1501853, -0.03609953, 0.16173019, 0.017979613, -0.10067214, 0.09041682, 0.041630752, -0.058287986, -0.04935145, 0.05013564, -0.013079431, -0.124356665, -0.054363787, 0.032231238, -0.06656775) * inp_5_0_2; - result3 += M4(0.32668656, 0.028573174, 0.5807744, -0.22176915, 0.023082854, -0.13584508, -0.0025661099, 0.06785069, -0.057173602, -0.024600903, -0.24968648, 0.2638518, -0.023331875, -0.19284633, 0.119807445, 0.4203094) * inp_5_1_2; - result3 += M4(-0.041246776, 0.0041941586, -0.08796395, 0.04365504, 0.0077941446, 0.027693383, -0.034461077, 0.19604589, -0.018094443, 0.033370476, -0.3490843, -0.07702034, -0.06352689, 0.036580063, -0.028204191, 0.043852564) * inp_5_2_2; - result4 += M4(-0.12591091, 0.01244998, -0.1065657, -0.26679972, -0.015613475, 0.11323553, 0.16759929, 0.0075340387, 0.085444465, 0.028757602, -0.042952113, 0.032242656, 0.034198113, -0.1084582, 0.00172132, 0.1296818) * inp_5_0_0; - result4 += M4(-0.23409365, -0.17331958, -0.22829413, 0.0001606627, -0.04154653, 0.40255025, 0.13421227, 0.118446976, 0.04714535, 0.044616196, -0.18294121, -0.0047498, 0.13170134, -0.1045617, 0.060995273, 0.09085345) * inp_5_1_0; - result4 += M4(0.025488438, -0.0030663041, -0.06713586, -0.1444041, -0.13046609, 0.34119055, 0.13969581, 0.033615015, 0.09398541, 0.14652476, -0.07106327, -0.018009365, 0.13160084, -0.15719087, 0.10985293, 0.042973634) * inp_5_2_0; - result4 += M4(-0.17982982, 0.62727773, 0.009380062, -0.09014016, -0.07876098, 0.15560696, 0.19748874, 0.1564442, 0.08605498, 0.24774982, 0.20689742, -0.020005293, -0.036827397, 0.06544036, 0.0832336, -0.10422793) * inp_5_0_1; - result4 += M4(0.13016768, 0.16483779, -0.13044775, -0.030760417, -0.014343228, 0.1443719, 0.26597562, 0.021506242, -0.17120081, 0.23199229, -0.09494717, 0.07287024, -0.15403488, 0.21901432, -0.09806306, -0.2635516) * inp_5_1_1; - result4 += M4(0.1551138, -0.00044781662, -0.09462828, 0.11528045, -0.111439615, 0.28812674, 0.05726782, 0.13750114, 0.10721867, 0.071324006, 0.16329086, 0.059531692, 0.057127547, 0.1852516, 0.09879951, -0.034637) * inp_5_2_1; - result4 += M4(-0.09716875, -0.28217205, 0.19145235, 0.21843061, -0.112740055, 0.08163737, 0.27547485, 0.055540826, 0.052288774, -0.049583226, 0.03364781, -0.045926128, -0.0018051012, -0.20053735, -0.0015868497, -0.21722394) * inp_5_0_2; - result4 += M4(0.022884686, 0.076746844, 0.37207744, 0.026825413, -0.16988383, -0.008282356, 0.16837607, 0.01435146, 0.13437104, -0.054037247, -0.11036478, 0.079811566, 0.030666472, -0.7874844, -0.08967887, 0.31907967) * inp_5_1_2; - result4 += M4(0.10250081, -0.09403017, 0.039255917, 0.082627445, -0.09995767, 0.13255844, 0.051052697, 0.033687755, 0.023360066, -0.11292417, -0.06149764, -0.1467547, 0.017755419, -0.3161063, -0.0018531439, -0.28810376) * inp_5_2_2; - result5 += M4(0.35912892, -0.027331244, 0.018224707, 0.03228045, -0.016067987, -0.052664425, -0.086702496, 0.15473045, 0.22935985, -0.07592562, 0.074679516, 0.20697501, -0.07015319, -0.0007490742, 0.04223218, -0.0002477573) * inp_5_0_0; - result5 += M4(0.14881288, -0.3195196, 0.2300872, 0.04192145, 0.11136334, 0.17950556, -0.23018274, 0.10547881, -0.18624817, -0.17456174, 0.160867, -0.03137659, 0.07249017, 0.11074627, 0.097017385, 0.17734908) * inp_5_1_0; - result5 += M4(0.022135306, -0.12051991, 0.039754543, -0.12095202, -0.011524106, 0.1626809, -0.1588035, 0.005840133, -0.050752748, -0.05516928, 0.14273736, -0.28041112, -0.023980366, 0.094171524, 0.0262514, -0.2066328) * inp_5_2_0; - result5 += M4(0.4643727, -0.27886307, -0.012210522, -0.18466926, -0.07310778, 0.19473259, -0.017583992, 0.04515538, 0.09015951, 0.010931833, 0.05069329, 0.085211985, -0.033451263, -0.084974565, -0.022275979, 0.047870856) * inp_5_0_1; - result5 += M4(0.36685643, -0.03498795, 0.36932373, 0.04663394, -0.24453484, 0.15682635, -0.06393542, 0.22350083, 0.32828593, 0.12556334, -0.032097016, -0.22249135, -0.022404408, 0.06554879, -0.27629003, -0.17113921) * inp_5_1_1; - result5 += M4(0.057643544, -0.0821995, 0.02785457, -0.14445736, -0.00827238, 0.083869405, -0.17504679, 0.040024452, 0.11782944, 0.082769416, 0.20221531, -0.01977251, 0.18810064, 0.10058428, 0.040518403, 0.16381235) * inp_5_2_1; - result5 += M4(-0.0185808, 0.015772581, 0.023783049, 0.19982882, -0.07528124, 0.03142737, -0.058214698, 0.038417444, -0.039716426, 0.046362426, -0.050831467, 0.14899968, -0.0016054872, 0.032204628, 0.057708394, 0.12691228) * inp_5_0_2; - result5 += M4(0.052159153, 0.17546724, -0.021749554, 0.077396505, -0.19238146, -0.022113588, -0.10580981, 0.013583808, -0.13101238, 0.028726557, 0.09187268, -0.038652122, -0.25082308, 0.24565762, -0.0011845094, -0.1819246) * inp_5_1_2; - result5 += M4(-0.03586477, -0.12944864, 0.051034436, 0.07176638, -0.06553427, 0.014486591, -0.03979507, -0.03704663, -0.15629724, -0.009472731, 0.029032834, 0.05319351, 0.045763228, 0.09015479, 0.18888545, 0.16036865) * inp_5_2_2; - result6 += M4(-0.17776614, 0.207399, -0.21193908, -0.233226, -0.03474836, 0.16385293, -0.03988457, -0.025761042, -0.030501524, -0.60474783, -0.02268399, -0.0038020127, -0.026418474, 0.056337334, 0.05593924, -0.04720911) * inp_5_0_0; - result6 += M4(-0.022228012, 0.07556314, 0.04917742, 0.05253304, 0.010401608, -0.13872474, -0.035758097, 0.045730237, -0.13260432, -1.0640199, 0.1955953, 0.019404186, -0.08068368, 0.025911927, -0.198826, 0.025931101) * inp_5_1_0; - result6 += M4(0.004598388, -0.20779093, -0.02519184, 0.04416819, -0.08763775, 0.2813368, 0.06462032, 0.011948038, 0.0071054217, -0.08588377, -0.0015590257, -0.03687541, 0.0052645546, 0.01467133, -0.00075780385, 0.018734645) * inp_5_2_0; - result6 += M4(-0.23587717, -0.0029772765, 0.33838117, -0.049960762, 0.076006465, 0.11152031, 0.07969988, -0.0058066957, -0.040294725, -0.39554062, 0.005331958, 0.112091094, -0.08990066, 0.011633177, 0.059962913, -0.008968664) * inp_5_0_1; - result6 += M4(0.3739447, 0.21325874, -0.12078905, 0.052896496, -0.06328107, 0.16221975, 0.017228665, 0.07492475, 0.25286007, -1.6027665, 0.535375, 0.21490385, 0.048959494, -0.09434555, 0.49514028, -0.24655005) * inp_5_1_1; - result6 += M4(0.023341065, -0.073038734, 0.07689045, -0.037003033, 0.009879587, 0.28561667, 0.15563221, 0.018839007, -0.120143145, -0.13569745, 0.011585222, 0.028367897, -0.027510526, 0.16620146, 0.111063905, 0.14397426) * inp_5_2_1; - result6 += M4(0.13737535, -0.38068795, 0.095258005, -0.30169982, -0.008667409, 0.065728344, 0.074327335, 0.02391513, -0.10887895, -0.4506271, -0.0041155997, 0.00599647, 0.021558022, -0.00782945, -0.012796392, -0.051290467) * inp_5_0_2; - result6 += M4(-0.015600367, -0.24922112, -0.24988674, 0.11327273, 0.02140644, 0.33563858, 0.02276931, -0.0009794696, -0.11687785, -0.20464315, 0.16918339, -0.040877726, -0.25654775, 0.03943083, -0.20726858, 0.008967393) * inp_5_1_2; - result6 += M4(0.024314715, -0.06308809, -0.0044129277, 0.015282473, 0.06652381, 0.050273895, 0.0022502593, 0.04004231, -0.049349748, 0.047618017, 0.06905827, -0.033827256, -0.13463107, -0.040993493, -0.01895626, -0.0124648055) * inp_5_2_2; - result7 += M4(0.2307177, 0.009316541, -0.20652393, -0.04528565, -0.023949422, 0.058415696, 0.005527413, 0.037128717, 0.022402778, 0.008534929, -0.22772695, -0.040516816, 0.057939492, -0.16594426, -0.32526, 0.057588965) * inp_5_0_0; - result7 += M4(0.12498552, 0.2037865, -0.6076206, 0.23674323, -0.116273284, 0.0065270136, 0.043029565, -0.010783259, -0.20386064, 0.22016703, -0.09856716, 0.008352085, 0.005807636, -0.62843984, -0.82838815, -0.05326888) * inp_5_1_0; - result7 += M4(0.011386575, 0.11620242, -0.0353433, 0.02136145, 0.113976, 0.02752378, 0.3368595, 0.013731594, 0.12179127, 0.063675836, 0.14685139, -0.028720831, 0.026076382, -1.0058722, -0.50539273, 0.036181416) * inp_5_2_0; - result7 += M4(-0.03837055, -0.09934, -0.18138467, -0.1275001, -0.08317971, 0.099028386, 0.047599707, 0.009218658, -0.06668754, 0.1193521, -0.077677876, 0.027737033, 0.01042874, -0.5006519, -0.02147826, 0.01613473) * inp_5_0_1; - result7 += M4(0.20157377, 0.094069935, -0.25924894, 0.4513939, -0.082824044, 0.11329145, 0.11977122, -0.017076591, -0.11296219, 0.107378565, -0.08336972, 0.04474073, 0.12751086, -1.474759, -0.43208084, 0.0372479) * inp_5_1_1; - result7 += M4(0.10177014, 0.06772144, 0.029739581, 0.015600159, 0.033402044, -0.06179592, 0.20502917, 0.048752118, -0.10237661, 0.25029805, -0.07709679, 0.21221764, -0.27771288, -2.034128, -0.8932387, -0.055777594) * inp_5_2_1; - result7 += M4(-0.0005914398, 0.14794466, -0.38547063, 0.11865169, -0.033808764, 0.07850711, 0.050626025, 0.009476621, -0.033932608, 0.14852725, -0.120277174, -0.023619277, 0.033382583, 0.0028116384, -0.0128159905, 0.05654289) * inp_5_0_2; - result7 += M4(0.10808728, 0.24521255, -0.3742114, 0.15608147, -0.062978044, 0.16536887, 0.117208056, 0.014003607, -0.013850699, 0.07125336, 0.06478216, -0.044978272, -0.013092857, -0.5133377, 0.044845276, -0.083578) * inp_5_1_2; - result7 += M4(0.06789751, -0.012187056, -0.007504478, 0.049151663, -0.014634491, 0.11939585, 0.19424964, 0.030032735, -0.027884493, 0.04134291, 0.070999116, -0.06622202, -0.11551998, -0.493336, -0.19690229, -0.035882447) * inp_5_2_2; - const V4 inp_6_0_0 = inp[6][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_6_1_0 = inp[6][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_6_2_0 = inp[6][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_6_0_1 = inp[6][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_6_1_1 = inp[6][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_6_2_1 = inp[6][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_6_0_2 = inp[6][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_6_1_2 = inp[6][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_6_2_2 = inp[6][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.013721689, 0.012799238, -0.02374232, 0.084298804, -0.033889066, 0.0043725143, -0.11799324, -0.728515, 0.050513715, 0.19966266, 0.10668769, -0.43184024, 0.019519875, 0.08859712, 0.048608758, 0.16061369) * inp_6_0_0; - result0 += M4(-0.013668889, 0.027528549, -0.14263532, 0.08409372, -0.08566772, -0.03756936, -0.14816058, -0.57736915, -0.08733867, 0.17958239, 0.02625638, -0.569547, 0.016371628, 0.026348928, -0.052582733, -0.015587701) * inp_6_1_0; - result0 += M4(-0.032085154, 0.112853065, -0.04952242, 0.1291716, -0.12929581, -0.016040852, -0.03945986, -0.4082456, 0.05143234, 0.06976731, 0.23516557, -0.3606082, 0.03677535, -0.018306773, 0.1542672, 0.008259577) * inp_6_2_0; - result0 += M4(0.016372504, -0.0070662284, 0.12197586, 0.06748505, -0.12295985, 0.059842106, -0.028126491, -0.38117516, 0.09509903, -0.23314562, -0.12142423, -0.01889579, 0.020499144, 0.09331554, -0.07573203, -0.039687317) * inp_6_0_1; - result0 += M4(-0.06523112, 0.1115557, -0.13141568, -0.076518275, 0.22385037, 0.051817946, -0.13144736, -0.76036626, 0.22478345, 0.084616646, -0.009369965, 2.2400863, 0.04760143, 0.07278314, -0.12248079, -0.5196359) * inp_6_1_1; - result0 += M4(-0.010783272, 0.20468853, 0.028034076, 0.08842021, -0.022902891, 0.013527307, -0.07778249, -0.5347425, 0.023293119, -0.07133847, -0.0492269, -0.52353215, 0.050140988, 0.03659886, -0.021283183, -0.108608164) * inp_6_2_1; - result0 += M4(0.04081373, 0.06297591, 0.011737012, 0.07773822, -0.024749497, -0.04241316, -0.18998826, -0.6295829, 0.031368613, -0.022465019, -0.11716884, -0.2727385, 1.3931181e-05, 0.04118823, -0.071628675, 0.0560868) * inp_6_0_2; - result0 += M4(0.03767071, -0.01156686, 0.18171673, -0.1430711, -0.066655755, 0.08428286, 0.31792477, -0.8664403, -0.14042564, -0.009794289, -0.07033047, -0.37070757, 0.062397983, -0.00801166, -0.0034588207, -0.024271926) * inp_6_1_2; - result0 += M4(0.05629877, 0.09073649, 0.33468255, 0.11742887, 0.060363375, -0.12988676, 0.089493774, -0.31278867, 0.06597197, 0.002712391, 0.21740861, -0.24369462, 0.020091657, 0.042369522, -0.12682956, -0.0352122) * inp_6_2_2; - result1 += M4(0.115051836, 0.029250428, -0.042751107, 0.05254452, 0.041774757, -1.3463695, 0.16861367, -0.219713, -0.009610078, -0.6178128, 0.18123557, 0.09589148, 0.033282384, 0.005443035, 0.01781811, -0.12842776) * inp_6_0_0; - result1 += M4(-0.039929036, 0.0355703, 0.065900706, -0.008569889, 0.058944818, -0.7551617, 0.37125692, -0.087499835, 0.0031313314, 0.078420505, 0.026651854, -0.0045882487, 0.038311485, 0.2573197, 0.10422046, -0.3304441) * inp_6_1_0; - result1 += M4(-0.091805026, -0.054957453, 0.16636682, -0.06926543, 0.19802935, -0.13930406, 0.059224565, 0.24277955, 0.13472448, -0.057595443, 0.040348355, -0.20867041, 0.032783717, 0.024916803, -0.024695862, -0.30152124) * inp_6_2_0; - result1 += M4(-0.045492996, 0.0745255, 0.044796575, 0.13446243, -0.119575426, -0.34158093, -0.47872755, 0.15831971, -0.21747603, 0.11864493, 0.04170891, -0.08694121, 0.09877152, 0.068414606, 0.121137924, -0.18418857) * inp_6_0_1; - result1 += M4(0.1536057, -0.14420255, 0.061106026, 0.25113207, -0.15105975, -0.11294851, 0.28885663, 0.249764, 0.09003822, 0.29121283, -0.47800887, -0.28591055, -0.061121177, -0.22273183, -0.020940749, -0.32592547) * inp_6_1_1; - result1 += M4(-0.04637224, 0.018961102, 0.020337338, 0.11999065, 0.16871275, -0.039289758, 0.00074320775, -0.10269183, 0.05033763, -0.05400853, -0.06005674, 0.46703076, -0.06822246, -0.08491263, -0.012516524, -0.4113721) * inp_6_2_1; - result1 += M4(0.01397314, -0.013303247, -0.17585704, 0.09650754, -0.1870409, -0.06364949, -0.1419276, 0.101269044, 0.089166366, -0.17171815, -0.30475634, 0.09715335, 0.049211614, -0.002294859, 0.16028745, -0.16988043) * inp_6_0_2; - result1 += M4(-0.02535254, 0.038862202, 0.026605098, -0.02986821, 0.015594697, -0.01915811, -0.14252083, 0.016895005, -0.10214268, 0.036865976, 0.16528422, -0.26692706, 0.038618404, 0.083980426, -0.044334084, -0.16242938) * inp_6_1_2; - result1 += M4(-0.07492681, 0.058041144, 0.026567472, 0.1499848, -0.005909218, 0.0534802, -0.034351565, -0.24728958, -0.12163124, -0.034479037, 0.09780674, 0.15087095, 0.05771658, 0.04815517, 0.05607033, -0.23582906) * inp_6_2_2; - result2 += M4(0.09484224, -0.028168032, 0.12768438, 0.03912507, -0.0022917585, 0.03248419, 0.02721924, -0.121199645, -0.11108387, -0.13500406, -0.024739847, 0.026627159, 0.05148283, -0.0018055746, 0.0058862395, 0.040583603) * inp_6_0_0; - result2 += M4(-0.057095233, -0.015163229, 0.07534633, -0.032741208, -0.1507883, 0.13374612, 0.1874841, 0.056230232, -0.0713848, -0.021516977, -0.31512484, -0.05517987, 0.018920483, 0.031008726, 0.07528253, 0.013666764) * inp_6_1_0; - result2 += M4(-0.03164615, 0.06300174, 0.032556005, 0.013826809, -0.0919597, -0.028468888, 0.21432173, -0.10537255, -0.042640403, 0.009012224, 0.05803763, 0.1226149, 0.13967922, 0.03849326, 0.02999087, 0.020332465) * inp_6_2_0; - result2 += M4(0.08486279, -0.055737156, 0.07666408, 0.072905034, -0.03861488, -0.013318491, -0.22917931, -0.09742365, -0.005001712, 0.061192237, -0.21483324, 0.030310016, 0.041008867, -0.002631481, 0.016131254, -0.06307914) * inp_6_0_1; - result2 += M4(-0.008239557, -0.059365015, 0.10872842, -0.059243873, 0.08721239, 0.16082077, 0.009714344, 0.07582317, -0.19243337, -0.51029044, 0.26393136, -0.118696675, 0.05550419, -0.031886403, 0.07487437, 0.034249607) * inp_6_1_1; - result2 += M4(0.034052134, 0.11022747, 0.058309525, 0.13692333, 0.030472817, -0.054065194, 0.17510623, 0.18626103, -0.025153667, 0.14310277, -0.01825704, 0.11602331, 0.0259339, -0.010923728, -0.011021909, -0.060436837) * inp_6_2_1; - result2 += M4(0.12284936, -0.038067915, 0.11871092, 0.036828365, -0.11237931, -0.13707173, -0.2312729, -0.018084489, -0.08439929, 0.05503302, 0.08982365, 0.015544661, 0.09030925, -0.036169007, -0.03011449, 0.022595253) * inp_6_0_2; - result2 += M4(0.27154922, -0.06716872, 0.09793987, 0.07021039, 0.06001739, -0.002078898, -0.019173348, 0.11282228, -0.10524377, 0.16066104, -0.29254216, -0.23972423, 0.044012096, 0.003369262, -0.0726597, -0.09072062) * inp_6_1_2; - result2 += M4(0.07378505, 0.050433263, 0.02719121, 0.08354564, 0.44861662, -0.19237737, -0.035772547, -0.084510304, 0.16763969, 0.323455, -0.06218754, 0.19696902, 0.056579765, 0.016011255, -0.10023325, -0.09716196) * inp_6_2_2; - result3 += M4(0.10232804, -0.006077989, 0.050019518, 0.11602139, -0.090102084, 0.12726583, 0.037977304, 0.08869181, -0.14940695, -0.021103106, -0.032894358, 0.047170646, -0.16822505, 0.056850057, -0.020497102, 0.029926531) * inp_6_0_0; - result3 += M4(0.05679189, 0.03009707, 0.09271889, 0.1452269, -0.13279422, -0.0229016, 0.15170208, 0.28165734, 0.25188154, 0.1503759, 0.22144592, 0.009805573, -0.20300111, 0.03110374, 0.010787475, 0.026303295) * inp_6_1_0; - result3 += M4(0.015498357, 0.067315616, 0.0822896, 0.08938353, 0.07336162, -0.103446744, 0.07073281, -0.030839719, -0.14263548, 0.10065543, 0.06188872, -0.048266098, -0.15079641, 0.019407988, 0.038654078, 0.060900126) * inp_6_2_0; - result3 += M4(3.5045192e-05, 0.028689122, -0.04724806, 0.058447096, 0.08514591, -0.09936972, -0.076331586, 0.07792259, -0.006429966, -0.005913239, -0.026334938, 0.13954161, -0.20750113, -0.027019963, -0.0504558, 0.030859476) * inp_6_0_1; - result3 += M4(0.16391242, 0.11010714, -0.0726046, 0.14909127, 0.11595877, 0.004168351, 0.034623176, 0.04393853, -0.104881726, 0.012494496, -0.028675128, -0.3010286, -0.38113993, -0.048183165, -0.1315588, -0.01620024) * inp_6_1_1; - result3 += M4(0.07487305, 0.04378936, -0.060904454, 0.13293639, -0.0653314, 0.037028458, 0.1952872, 0.2351629, 0.19737917, -0.15465376, -0.19056813, -0.15741211, -0.34390843, -0.01940382, -0.034628253, -0.050710227) * inp_6_2_1; - result3 += M4(0.13126612, 0.034421466, 0.07083511, 0.18203323, 0.13850912, 0.036218148, -0.15604755, 0.14378557, 0.022097459, -0.05010652, 0.112829946, -0.13094294, -0.13462092, 0.013596207, 0.015433991, 0.0010847846) * inp_6_0_2; - result3 += M4(0.081508085, 0.0020226794, -0.07463045, 0.12744093, -0.046915106, 0.011674384, 0.09712423, -0.12683547, 0.11100819, -0.27745518, -0.2966562, -0.43319258, -0.4078367, -0.014837506, -0.08604366, 0.07492186) * inp_6_1_2; - result3 += M4(0.09487703, 0.035617664, -0.005322295, 0.18227166, -0.23990566, 0.09407424, -0.06919062, -0.10134771, 0.1117839, 0.073649324, -0.010420145, -0.07258304, -0.33146855, 0.06925787, -0.07496293, 0.054395948) * inp_6_2_2; - result4 += M4(-0.12971807, 0.09800778, 0.16760588, 0.10334512, -0.12948056, 0.030443417, -0.015572743, 0.07753184, -0.011883056, 0.0466646, -0.07844405, -0.017271055, 0.055693403, 0.0014869877, 0.02922507, 0.033999205) * inp_6_0_0; - result4 += M4(-0.085277185, 0.027675679, 0.3128339, 0.19579042, -0.15358071, 0.1987966, 0.14060515, 0.12397858, 0.068887286, -0.057634737, 0.08182515, 0.27527457, 0.008231293, 0.04326853, 0.10153714, -0.02235345) * inp_6_1_0; - result4 += M4(-0.15706848, 0.22470431, 0.14862129, 0.0798385, -0.19121005, 0.04985686, -0.031087652, -0.030134592, 0.122117415, -0.1358389, -0.03324986, -0.105542004, 0.026076226, -0.10293577, 0.07144743, 0.053697392) * inp_6_2_0; - result4 += M4(-0.13942903, 0.0598736, 0.20203328, -0.015706109, 0.041292615, -0.051336534, 0.26622793, -0.05411252, 0.19893913, -0.049666993, 0.06338339, 0.18654269, 0.0154042775, 0.08416739, 0.05402257, 0.002899401) * inp_6_0_1; - result4 += M4(-0.17200159, 0.07858962, 0.060686447, 0.11715207, 0.27473405, 0.21981388, 0.060689453, -0.21467048, -0.38444003, -0.049982432, 0.27009097, -0.47079936, -0.07286625, 0.034506857, -0.059080407, -0.0704868) * inp_6_1_1; - result4 += M4(-0.12825799, 0.074786924, 0.04979651, -0.011929379, -0.093908966, 0.02409042, 0.11474762, -0.052561108, -0.17778176, 0.19779956, -0.017907409, -0.25451195, 0.07401829, 0.0048731356, -0.001275969, -0.025227617) * inp_6_2_1; - result4 += M4(-0.17167409, 0.05036076, 0.2634832, 0.11281687, 0.06676236, -0.11705774, -0.19246516, 0.055392936, 0.19492392, -0.28017414, -0.055976864, -0.03858756, -0.03630528, -0.012248858, 0.0398678, -0.011645855) * inp_6_0_2; - result4 += M4(-0.18845724, 0.07292901, 0.17291148, 0.05425154, -0.051833913, 0.114998974, -0.082188636, 0.07323409, 0.14575878, 0.07565385, -0.19039711, 0.4525562, 0.06798737, -0.02327251, -0.035156604, 0.10052607) * inp_6_1_2; - result4 += M4(-0.069241926, 0.14409682, 0.056277715, 0.1280435, 0.076898545, -0.44618395, -0.20068352, 0.13095634, 0.036167987, 0.08999085, -0.077388436, -0.03176987, 0.03517745, 0.10241359, 0.063602574, -0.03615611) * inp_6_2_2; - result5 += M4(0.033013683, 0.04842415, -0.15041508, 0.08398356, -0.030517964, 0.18327059, 0.10866422, 0.11718288, 0.05829114, 0.072188094, 0.026523469, -0.009050315, 0.05599096, 0.0022212828, 0.06740063, 0.14835125) * inp_6_0_0; - result5 += M4(-0.08631444, -0.034676958, -0.061969865, 0.13463983, -0.17435579, 0.18262787, -0.17975652, -0.22194247, -0.012829312, -0.0188067, 0.001036539, 0.2883137, 0.049807616, -0.16208144, -0.023245981, 0.19631694) * inp_6_1_0; - result5 += M4(-0.08131522, -0.026759498, -0.035225067, 0.11554084, -0.4087951, 0.19320294, -0.23901114, 0.09180376, -0.06339341, 0.046446458, -0.07654617, -0.06757779, 0.08336781, 0.021041118, 0.003281264, 0.08990855) * inp_6_2_0; - result5 += M4(0.0018355061, -0.0013574864, -0.11026633, -0.0114736175, 0.039003845, -0.0649448, -0.12087863, -0.11014526, -0.09743662, -0.17015211, -0.08615441, 0.23743926, 0.018991893, -0.027791, 0.04718051, 0.21493366) * inp_6_0_1; - result5 += M4(-0.06953014, 0.0963656, -0.18781808, 0.05450311, -0.16842794, 0.069544986, -0.021834321, -0.07844127, 0.48426482, -0.8887092, -0.106620215, -0.2353654, 0.1043702, -0.09494979, 0.020493714, 0.021198802) * inp_6_1_1; - result5 += M4(-0.079832286, -0.00028978699, -0.06832304, -0.09516513, -0.1257426, -0.21745151, 0.07623339, -0.16031949, 0.11636321, 0.02762809, -0.4574339, 0.057240333, 0.13326006, -0.14211771, 0.017924683, 0.18033981) * inp_6_2_1; - result5 += M4(0.060488593, -0.019406652, -0.12546499, -0.06721494, 0.03355523, -0.0630099, 0.024156624, 0.14058274, -0.2173787, -0.0007047517, 0.059516806, -0.23529258, 0.08857042, -0.009193321, -0.011644644, 0.1060985) * inp_6_0_2; - result5 += M4(-0.16982134, -0.21197483, 0.007997015, -0.05819793, 0.32171416, 0.08059579, 0.35285148, 0.1688299, 0.05161745, 0.010919435, -0.12022268, 0.3571975, 0.02061887, 0.12067349, 0.06649824, 0.038396616) * inp_6_1_2; - result5 += M4(-0.046727374, 0.032844655, -0.009105006, -0.11500711, 0.3265793, -0.0070809773, 0.26464632, -0.10348789, -0.051511575, 0.21568537, 0.2230859, -0.125324, 0.09599262, 0.06512698, 0.07142377, 0.22866553) * inp_6_2_2; - result6 += M4(0.023664666, 0.054020714, 0.08307925, 0.05042996, 0.036261156, 0.060079753, 0.033210646, -0.12578715, 0.13048807, 0.17907648, -0.052554738, 0.019516677, 0.02917621, 0.078172915, -0.0049627307, 0.007307988) * inp_6_0_0; - result6 += M4(0.02934996, 0.091029674, 0.04998483, 0.060327448, -0.027470868, 0.17539713, 0.027298667, 0.113262065, -0.15372175, -0.07847668, 0.15397547, 0.0062466827, -0.08013527, 0.098639674, 0.055914365, 0.0059192088) * inp_6_1_0; - result6 += M4(-0.03853444, 0.17421585, 0.0320261, -0.009891646, -0.07324698, 0.14380373, 0.23243321, 0.07114627, 0.00017697694, -0.09937999, -0.060783964, -0.017632212, 0.00374491, 0.038677946, 0.00524997, 0.019850764) * inp_6_2_0; - result6 += M4(0.03032487, 0.0446162, 0.0919604, 0.046155293, 0.099703886, 0.116819516, -0.1268473, -0.09506113, -0.00019921428, -0.014918625, 0.05290808, 0.13593423, -0.034468606, 0.17619564, 0.05930036, -0.05937309) * inp_6_0_1; - result6 += M4(-0.004726545, -0.05513497, -0.0137204835, 0.050694417, 0.08070793, 0.12695785, -0.17760259, -0.12079675, 0.124272145, -0.17518985, 0.09220045, -0.13841699, 0.029231913, 0.14023747, -0.015417012, -0.03465795) * inp_6_1_1; - result6 += M4(-0.07811658, -0.024794376, 0.1414599, -0.028865004, -0.17106962, 0.18573834, 0.119657956, 0.034450132, -0.065505035, -0.4369227, 0.05172798, 0.071489304, 0.06367372, 0.118458554, -0.006289113, 0.04067931) * inp_6_2_1; - result6 += M4(0.035409138, 0.0050975834, 0.13332473, 0.07093107, 0.16198464, -0.09422046, -0.0763085, -0.024989119, -0.15470146, -0.34974596, 0.036799416, 0.062119044, 0.045481212, 0.22424105, 0.013580434, -0.036915585) * inp_6_0_2; - result6 += M4(-0.030512117, 0.06215804, 0.016634647, 0.014608177, 0.05297761, -0.1988886, -0.2913831, -0.02754399, -0.23317295, -0.12203959, -0.071426906, 0.037417855, 0.07833972, 0.19622482, -0.010762048, -0.0018739193) * inp_6_1_2; - result6 += M4(0.11741118, -0.028310906, 0.11257459, -0.008676381, 0.24587262, 0.14110982, 0.2095743, 0.07117313, -0.06951543, 0.032417443, -0.16651018, -0.025869532, 0.06805985, 0.27156886, 0.014166576, -0.009584786) * inp_6_2_2; - result7 += M4(-0.027474428, 0.06031151, 0.24948463, 0.015020346, -0.102453604, -0.04426931, 0.005310342, 0.048167158, 0.10368575, -0.16100368, -0.3499551, 0.018165903, -0.049615458, 0.060252365, -0.1492622, -0.00058785686) * inp_6_0_0; - result7 += M4(0.116550215, -0.07088326, 0.04394743, 0.01234563, 0.1012704, -0.2402396, 0.17894132, 0.07261882, 0.09695268, 0.2235865, 0.24570851, -0.020101473, -0.046129372, -0.023845151, -0.59482044, 0.002628968) * inp_6_1_0; - result7 += M4(0.09181464, 0.21036357, -0.034634817, 0.03550574, -0.15795155, 0.07077869, -0.099132136, -0.026307773, 0.05914795, -0.16872865, -0.1619686, -0.054612845, -0.07673704, -0.04981329, -0.43033162, -0.029166436) * inp_6_2_0; - result7 += M4(-0.0626911, 0.31070897, 0.22456664, 0.008311042, -0.13321857, 0.1217428, 0.16589594, 0.013020407, 0.10750286, 0.007820364, -0.13166828, -0.027213214, -0.018073166, 0.05881828, -0.216483, 0.012319683) * inp_6_0_1; - result7 += M4(0.050255977, 0.18214023, 0.18794923, 0.020965539, 0.20073421, -0.17954944, 0.18261525, 0.24833299, -0.15629151, -0.022369128, 0.058617022, 0.07453912, -0.11091276, -0.035087883, -0.5439133, -0.019060649) * inp_6_1_1; - result7 += M4(0.003978155, 0.3133258, 0.2896629, 0.0756799, -0.14352624, -0.19055983, 0.21201888, -0.102167085, -0.08160337, 0.101650365, 0.008207882, -0.068828255, -0.0997686, -0.124079816, -0.32225162, 0.005125794) * inp_6_2_1; - result7 += M4(0.021806272, 0.17641042, 0.07536143, 0.008874538, 0.074880466, -0.021362882, -0.09839803, 0.045453507, 0.10301164, 0.034819357, -0.076980814, 0.018278483, 0.005724461, 0.054609697, -0.1469992, 0.015461229) * inp_6_0_2; - result7 += M4(0.053518422, 0.31392872, 0.084889926, 0.09296587, 0.12250028, 0.4455374, -0.007880454, -0.028109986, -0.20719786, -0.01740427, -0.09395975, -0.0092376, -0.04553808, 0.03551883, -0.18538475, -0.0535467) * inp_6_1_2; - result7 += M4(-0.02883382, 0.31318933, 0.19606227, 0.085433684, 0.07387462, -0.025489366, -0.34011757, -0.1855652, -0.02907228, 0.018556163, 0.058077186, 0.00490588, -0.019125191, -0.07524502, -0.16619001, -0.00658723) * inp_6_2_2; - const V4 inp_7_0_0 = inp[7][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_7_1_0 = inp[7][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_7_2_0 = inp[7][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_7_0_1 = inp[7][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_7_1_1 = inp[7][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_7_2_1 = inp[7][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_7_0_2 = inp[7][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_7_1_2 = inp[7][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_7_2_2 = inp[7][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.07705421, 0.14655161, -0.15920356, -0.21995056, -0.014202915, -0.021717992, -0.089232825, -0.012000037, 0.04469433, -0.026820691, 0.15597984, -0.022502646, 0.006914514, -0.19888951, 0.21220444, 0.17938675) * inp_7_0_0; - result0 += M4(-0.27089316, -1.8292671, -0.2802968, -0.052826855, -0.0009310705, 0.07023756, 0.13675265, 0.09917386, -0.0014187134, -0.07602309, 0.0020611917, -0.04827524, -0.18022795, -0.12203899, 0.35521606, 0.35329235) * inp_7_1_0; - result0 += M4(-0.26914853, -0.2839232, 0.10873711, -0.09671969, 0.033788357, 0.08032121, 0.085263714, 0.06946121, 0.0030209876, -0.012763638, 0.049742326, -0.046166908, -0.06290731, 0.20113291, 0.20944561, -0.2691528) * inp_7_2_0; - result0 += M4(-0.05689525, 0.11810778, 0.005747189, -0.47844198, 0.02829931, 0.056319762, 0.0976035, 0.03878815, -0.050616615, -0.014168171, -0.022787584, 0.040302347, 0.106824026, -0.06600477, 0.08873571, 0.1697847) * inp_7_0_1; - result0 += M4(-0.030187106, -0.28629836, -0.29864815, -0.39638022, -0.031687517, 0.016290667, -0.08054959, -0.12397554, 0.017471364, -0.046266038, 0.030829297, -0.0603028, 0.033272807, -0.1054314, 0.23958172, -0.006223459) * inp_7_1_1; - result0 += M4(-0.08353376, 0.018860355, -0.015345814, -0.255057, 0.08161238, 0.078917846, -0.17756382, 0.13153501, -0.00042332607, -0.06268168, 0.100121856, -0.13375358, 0.08287006, -0.07434558, 0.0671746, -0.1640902) * inp_7_2_1; - result0 += M4(-0.027357182, -0.026864827, 0.06328931, -0.1162309, 0.015528158, 0.10389823, 0.034980204, -0.078910485, 0.00500683, -0.085828304, 0.050555404, -0.020949477, -0.008623717, 0.047411308, 0.06537082, -0.075511575) * inp_7_0_2; - result0 += M4(0.05337894, -0.024519926, -0.12872238, -0.08714813, 0.01656469, 0.07218318, 0.07296753, -0.041696247, -0.017571453, -0.104047954, 0.032122225, 0.05527118, -0.0040236083, -0.18081762, 0.01928598, -0.008794376) * inp_7_1_2; - result0 += M4(-0.020030312, -0.011161839, -0.037189707, -0.1574755, -0.02615406, -0.0032911913, -0.083963625, -0.02443231, -0.025931358, -0.002005939, 0.08844652, 0.0065094526, 0.042748637, -0.054209176, 0.0012821651, -0.06385409) * inp_7_2_2; - result1 += M4(0.28308165, -0.28567734, -0.65978485, -0.011553816, 0.13587657, -0.12044554, -0.00977827, -0.18941288, -0.0018173895, 0.011407545, -0.053531498, 0.24653833, -0.08707101, -0.21592058, 0.3635564, 0.021599567) * inp_7_0_0; - result1 += M4(-0.2531581, -0.49012327, 0.21240307, 0.20531361, -0.022551127, -0.14512269, -0.011202978, -0.33082062, -0.048964124, -0.2152505, -0.041152902, 0.38117525, 0.09538597, -0.060770903, -0.17551364, 0.1955445) * inp_7_1_0; - result1 += M4(0.10186855, 0.09641043, -0.16537541, -0.10825933, 0.022533605, -0.09994573, -0.012811164, -0.44734696, 0.06465757, 0.017299756, -0.031137753, 0.31065333, 0.13651535, 0.10311868, -0.118330106, 0.1809281) * inp_7_2_0; - result1 += M4(0.10272787, -0.08057058, -0.30362, 0.048751257, 0.089726985, -0.12593073, -0.037433296, -0.23559216, -0.06553392, 0.056514155, 0.0830663, 0.2682325, -0.18730585, 0.08315175, 0.30666634, 0.13161175) * inp_7_0_1; - result1 += M4(-0.18096423, -0.34603265, 0.48900405, 0.2875848, 0.12515527, 0.27683365, -0.078976415, -0.32297248, -0.047749817, 0.108569115, 0.0053452603, 0.16291566, 0.044929836, -0.11149145, 0.11379486, -0.123130135) * inp_7_1_1; - result1 += M4(0.03145933, 0.08000567, -0.05212921, -0.09588122, -0.05118946, 0.11495094, 0.13440904, -0.49722797, 0.012042765, -0.011682212, 0.009776634, 0.22002277, -0.114563845, 0.113886766, 0.028833367, 0.05768669) * inp_7_2_1; - result1 += M4(0.041755527, 0.033818115, 0.030087505, -0.06098008, -0.016862225, 0.020001326, -0.07535477, -0.10389625, -0.11713323, 0.015470763, 0.0006214775, 0.21128693, 0.012644471, -0.050409187, -0.028175324, -0.09258305) * inp_7_0_2; - result1 += M4(0.035682295, 0.062328402, -0.011538125, 0.052881636, 0.023204286, 0.155447, 0.0017339038, -0.06730548, -0.025180358, 0.0058287047, 0.0755074, 0.23595765, 0.087806515, -0.03235762, 0.11365232, -0.066609725) * inp_7_1_2; - result1 += M4(0.045093987, -0.009694641, -0.027107459, 0.05582876, 0.0494983, 0.010456474, 0.057337303, -0.052081425, -0.052915372, -0.023061618, -0.03150964, 0.16427326, -0.040431786, 0.059276927, -0.0051177777, -0.0048837056) * inp_7_2_2; - result2 += M4(0.03837631, 0.08774383, 0.06363697, 0.049066767, -0.0030270966, 0.03892385, -0.0047903294, -0.020191245, 0.020035189, -0.023216285, 0.0056477203, 0.029383, -0.045547128, 0.062387347, 0.10607699, -0.03863291) * inp_7_0_0; - result2 += M4(-0.13633233, 0.09267785, -2.3030283, 0.014163732, -0.03991903, 0.015884869, -0.0606753, -0.04264136, -0.0303268, 0.009014363, 0.05976666, 0.0211869, 0.11129838, -0.13271269, 0.2039835, 0.14118326) * inp_7_1_0; - result2 += M4(0.15436251, -0.0021171, -0.22229506, -0.2130171, -0.066300035, -0.018001197, 0.087491564, 0.15762036, 0.036742657, -0.037199102, 0.015800452, 0.057719216, 0.10394676, -0.1264126, 0.12223967, 0.1499962) * inp_7_2_0; - result2 += M4(0.13011152, -0.029061241, -0.21917622, 0.10294677, -0.021770813, 0.024138093, 0.0074876165, 0.06477432, -0.03029129, -0.0665621, 0.067723, 0.028472902, 0.14211737, -0.007184418, 0.06308469, 0.0677978) * inp_7_0_1; - result2 += M4(-0.6425866, 0.40062433, -0.69220364, 0.053134706, 0.3676376, -0.04427473, 0.12050734, -0.07630126, -0.018858017, 0.015136701, 0.079615645, 0.07291887, 0.16656972, -0.24108753, 0.19406885, 0.07315367) * inp_7_1_1; - result2 += M4(0.14880347, -0.08668082, -0.0057812906, -0.19755425, 0.13294779, 0.03765874, -0.10990122, 0.027674034, 0.019698981, -0.0693015, 0.061046965, 0.0046053925, 0.28756058, -0.16634035, 0.14577737, 0.21926984) * inp_7_2_1; - result2 += M4(0.11300955, -0.07001782, 0.004160339, -0.025613036, 0.0384132, 0.010613844, 0.05108481, -0.014704834, 0.07281184, -0.054065324, 0.060256865, 0.02568487, 0.055661537, -0.03176687, -0.033291098, 0.039281458) * inp_7_0_2; - result2 += M4(-0.13591135, -0.1556221, 0.035392698, 0.022640819, 0.101858534, -0.031051483, -0.056347683, -0.005426217, -0.09345089, 0.059355054, 0.0024670502, 0.072271, 0.1397118, 0.005142384, -0.0067636766, 0.062649995) * inp_7_1_2; - result2 += M4(-0.045705844, -0.049485546, -0.08252035, -0.07202762, 0.15883598, 0.076862395, 0.027125804, 0.022157637, 0.074905746, -0.066421315, -0.023283474, 0.02775669, 0.08140506, -0.055219613, -0.10447547, 0.029692696) * inp_7_2_2; - result3 += M4(0.27804977, 0.04060201, -0.03415181, 0.05594808, -0.20309801, 0.08921539, 0.027383287, -0.014300932, 0.14656137, -0.042295467, 0.026592502, -0.0022422688, 0.03638837, 0.12393212, 0.09580104, 0.11455205) * inp_7_0_0; - result3 += M4(0.43370125, -0.7264578, 0.17910218, -0.3402325, -0.3274955, 0.06556304, 0.053568117, 0.052536678, 0.15319067, -0.035212506, -0.043437447, -0.056250986, 0.07886018, 0.1720468, -0.070666164, -0.23317327) * inp_7_1_0; - result3 += M4(-0.010775315, -0.10786001, -0.067271195, 0.09480217, -0.047954734, -0.037628196, 0.08032824, -0.026743568, 0.0951285, -0.046130087, -0.046153605, -0.022892216, -0.21090701, -0.026034286, 0.013633455, -0.048013) * inp_7_2_0; - result3 += M4(0.087752044, 0.051735863, -0.09456641, 0.09395853, -0.31912452, 0.11069252, -0.09216122, -0.049109735, 0.22481413, -0.04836504, 0.09574651, -0.00593434, 0.10785617, 0.087149166, 0.055559058, 0.027829967) * inp_7_0_1; - result3 += M4(0.40971532, -0.1166213, 0.43089357, -1.247799, -0.57403624, 0.014973396, -0.19494775, 0.116255045, 0.10483425, 0.0018121488, 0.10336278, -0.08457605, -0.09799306, 0.095894195, -0.08120408, 0.1470525) * inp_7_1_1; - result3 += M4(-0.3771813, -0.13158873, -0.08711574, -0.2851576, -0.42346576, 0.057824798, -0.10846057, 0.14503123, 0.10989007, -0.039893188, -0.052708168, -0.032892987, -0.12112129, -0.074547686, 0.17883979, 0.12121646) * inp_7_2_1; - result3 += M4(-0.05970325, 0.001400899, 0.05403713, 0.037526485, -0.10959009, 0.034745116, -0.052851137, 0.031476095, 0.17720535, 0.0023840799, 0.020615356, -0.100161955, -0.03695471, 0.08650283, 0.039503135, 0.07882159) * inp_7_0_2; - result3 += M4(0.0044788043, -0.16337655, 0.071338534, -0.6660384, -0.10255742, 0.04590746, -0.046035033, 0.23365247, 0.16313332, -0.051737007, 0.00034278724, 0.08502075, -0.057645075, 0.21344616, 0.115628414, 0.44256592) * inp_7_1_2; - result3 += M4(0.010992721, 0.03025711, -0.027071904, -0.0602821, -0.03987038, 0.04058866, 0.041595288, 0.11731922, 0.106050506, -0.023259671, 0.012139084, -0.01232089, 0.07745526, -0.01704661, -0.02275756, 0.3044486) * inp_7_2_2; - result4 += M4(-0.09071285, -0.41172433, -0.28751448, -0.029586064, 0.010956211, 0.013790319, 0.041343343, 0.0008592875, -0.05313412, -0.08046366, -0.012284464, 0.006745153, -0.077516615, 0.07847041, -0.06270689, 0.016045839) * inp_7_0_0; - result4 += M4(0.6038478, -0.03064773, 0.36157948, -0.19402578, -0.02710915, 0.0049366923, 0.11763931, 0.078392625, -0.09302496, -0.05477951, -0.09801969, -0.028858343, -0.24634963, 0.0651749, -0.27385002, -0.2782543) * inp_7_1_0; - result4 += M4(0.086622715, -0.41340575, 0.005448833, -0.05621069, 0.00044034095, -0.10245652, 0.02368436, 0.08798041, -0.050513014, -0.091703504, 0.020265495, 0.010906198, -0.115228556, 0.13764267, -0.22028348, -0.21947323) * inp_7_2_0; - result4 += M4(0.0047257, -0.46549374, -0.06796023, 0.20825069, -0.04045274, -0.10130458, 0.1238029, -0.07447002, -0.034831002, -0.08029478, -0.09157177, 0.10096424, -0.14274159, 0.1087538, 0.14235063, 0.09494344) * inp_7_0_1; - result4 += M4(0.44179776, -1.5291011, 0.034119263, -0.9653705, 0.018118352, 0.28458175, -0.021487705, 0.0010762021, -0.0838768, -0.05726333, 0.11296191, -0.0023612175, -0.09342311, 0.12073306, 0.20877819, -0.1200189) * inp_7_1_1; - result4 += M4(0.18046811, -0.099955246, -0.38009864, 0.045663226, -0.0028648702, 0.16092615, 0.06740341, 0.04574118, -0.015260896, -0.095535226, -0.052776773, -0.011107281, -0.13015838, -0.054420166, -0.09365071, 0.08283588) * inp_7_2_1; - result4 += M4(-0.01031775, -0.037005138, 0.004836741, -0.053096246, -0.032177515, -0.046069227, 0.10675816, 0.022360492, -0.0078031756, -0.10481318, -0.00017168093, 0.0044404953, -0.0468987, -0.028409535, -0.0028913599, 0.1166665) * inp_7_0_2; - result4 += M4(0.08607475, -0.11968246, -0.08505704, -0.45524856, -0.037841246, -0.028020846, 0.13048014, 0.23245104, 0.051315486, -0.02880616, -0.01706976, 0.06627905, -0.08099483, 0.123131685, 0.0644043, 0.36869854) * inp_7_1_2; - result4 += M4(0.05031982, 0.02347016, -0.004537312, -0.060041256, -0.07803278, 0.11536064, -0.080467544, -0.0033040878, 0.07609603, -0.119582504, 0.026013127, 0.09771712, -0.0008058412, 0.0081337355, 0.1519349, 0.3588836) * inp_7_2_2; - result5 += M4(-0.1330159, -0.020606223, -0.03474067, -0.34595522, 0.1056071, -0.084585086, 0.03103594, 0.13032296, -0.07218878, 0.022729147, -0.057099078, -0.19260219, -0.1113688, -0.009962253, -0.17694257, -0.034554932) * inp_7_0_0; - result5 += M4(0.10401944, 0.1321309, 0.42354, 0.48820308, 0.19265227, -0.14420362, 0.02917404, 0.120967485, 0.012973034, 0.11208657, -0.0006371427, -0.45043004, 0.14982297, 0.124018036, -0.20516825, -0.44058993) * inp_7_1_0; - result5 += M4(-0.108353905, -0.46832907, -0.0039411206, -0.29758903, 0.11689921, -0.11359189, 0.08959618, -0.019202495, -0.023872562, 0.06932682, -0.05563538, -0.2797535, -0.12390734, -0.30612707, -0.22908273, -0.56318635) * inp_7_2_0; - result5 += M4(0.12831174, 0.059336323, 0.010471833, -0.048660986, 0.13463219, -0.011119628, 0.09598638, 0.09148773, -0.055824008, 0.05488533, -0.044579845, -0.24492098, -0.06611985, -0.048875406, -0.13025954, -0.27087426) * inp_7_0_1; - result5 += M4(-0.06502294, 0.34120694, 0.41784814, 0.4240587, 0.09343212, -0.12833215, 0.02096758, -0.060561746, -0.16311644, 0.002361267, -0.106696896, -0.4139766, 0.0836685, -0.24211615, -0.032305423, -0.32017106) * inp_7_1_1; - result5 += M4(0.20648798, -0.25047904, -0.016869415, -0.07052161, 0.1196694, -0.11713132, -0.07293514, 0.1349356, -0.045845423, -0.08803433, -0.08635373, -0.27477232, -0.12519251, -0.30127248, -0.07220288, -0.3693771) * inp_7_2_1; - result5 += M4(0.020231156, -0.0015006171, 0.06268695, 0.044661894, 0.10022947, -0.074085005, 0.022788148, 0.08314333, 0.02434714, 0.049788713, -0.018686034, -0.20420751, 0.09802319, 0.06046013, -0.027695594, 0.18467912) * inp_7_0_2; - result5 += M4(-0.055518553, -0.061574563, 0.07924629, -0.088484906, 0.08492011, -0.05289509, 0.018946279, 0.2605166, -0.042118274, -0.056217708, -0.0093715545, -0.30276588, 0.03888416, 0.0029304868, -0.036626168, 0.17075236) * inp_7_1_2; - result5 += M4(-0.017744083, -0.048555702, 0.03221358, 0.023896342, 0.012144045, -0.084408425, 0.052699592, 0.087384045, 0.051625855, 0.010249226, -0.05047821, -0.33322152, -0.005886412, -0.060527787, -0.031101368, 0.14424102) * inp_7_2_2; - result6 += M4(0.057100285, 0.22682899, 0.2744427, 0.041397933, -0.005312474, 0.20445864, 0.06996201, 0.052181352, 0.044053286, -0.4216351, 0.0026190055, 0.003224928, -0.018846186, -0.31359148, 0.03245419, -0.11640333) * inp_7_0_0; - result6 += M4(0.26431003, -0.2960171, -0.5696298, 0.04239368, -0.046360884, 0.27525854, -0.0091454275, -0.021803852, 0.1560503, -0.19925125, 0.0027289838, -0.0035952833, -0.10808123, -0.41792306, 0.03857787, -0.038746215) * inp_7_1_0; - result6 += M4(-0.23053513, 0.04109559, 0.0023016164, -0.05669128, 0.03503136, 0.06519052, 0.0465084, 0.021342622, 0.011112163, -0.21991162, 0.023655912, 0.0060068443, 0.2105939, -0.2599472, 0.6000922, -0.029687058) * inp_7_2_0; - result6 += M4(0.17058913, -0.14706492, 0.18112461, -0.25226822, 0.07785096, 0.17461091, 0.048281137, -0.0073108845, 0.059879318, -0.77313334, -0.05046852, -0.01323007, -0.05584217, -0.5015431, 0.030336577, -0.01797471) * inp_7_0_1; - result6 += M4(-0.04252722, 0.023404634, -1.571729, 0.23049328, 0.01879878, 0.12680931, 0.21050362, 0.0530247, 0.08162901, -0.37686032, 0.08354369, -0.03689562, 0.009062358, -0.49553558, 0.12035103, 0.07869234) * inp_7_1_1; - result6 += M4(0.063594356, 0.21721621, 0.43024996, -0.05847242, 0.05272428, 0.00142788, -0.008333355, 0.027268998, 0.0115955295, -0.19313867, 0.085026145, 0.032077234, -0.016500698, -0.28158528, 0.44438577, -0.0069055995) * inp_7_2_1; - result6 += M4(0.06717337, 0.05203127, -0.010516277, -0.037855532, 0.1370158, 0.23268242, 0.08253981, 0.016612165, -0.003761943, -0.2806193, 0.0037691125, -0.021973599, 0.041779287, -0.40250027, -0.024812153, 0.011796157) * inp_7_0_2; - result6 += M4(-0.017233694, 0.16190064, -0.05585142, 0.005136461, 0.2029499, 0.2013949, 0.010389571, 0.032311577, -0.013502923, -0.11431857, 0.05359674, 0.015788162, 0.17615381, -0.17132227, -0.0876679, -0.019825099) * inp_7_1_2; - result6 += M4(0.017022274, 0.08403515, -0.044340603, 0.012014808, 0.1247163, 0.04358294, 0.08445203, -0.00012078814, 0.00806242, -0.20539318, -0.027894355, 0.027825247, 0.049768843, 0.05706915, -0.0012313575, 0.024201786) * inp_7_2_2; - result7 += M4(-0.05570519, -0.31178907, -0.13744523, 0.07316122, -0.0009002747, -0.0021502613, 0.16848224, -0.014898857, 0.072285786, -0.10787031, 0.21645626, 0.0044599804, 0.0758962, 0.043780476, 0.08076819, -0.037915226) * inp_7_0_0; - result7 += M4(-0.07663538, -0.24172576, 0.35945773, -0.26734355, -0.07704813, -0.1023477, 0.20719665, 0.04794503, 0.088189006, -0.07417561, 0.2677249, -0.0025845463, 0.061988205, -0.110931486, 0.285947, -0.02412334) * inp_7_1_0; - result7 += M4(-0.009479986, 0.0037774714, -0.1963648, 0.17517938, -0.07153562, 0.2211494, -0.287042, 0.03652056, 0.025602432, -0.022053575, 0.19314158, 0.020052867, 0.18439056, 0.058231283, 0.07595562, -0.019437954) * inp_7_2_0; - result7 += M4(0.09270015, -0.19680314, -0.08763904, 0.15333681, -0.025215115, 0.19898468, -0.05582921, 0.016288092, 0.043592848, -0.09385375, 0.20310016, 0.028347252, -0.037458334, 0.20112409, -0.054714605, 0.017513951) * inp_7_0_1; - result7 += M4(0.02139343, -0.36552352, 0.2251726, 0.37929785, -0.13288932, 0.081211135, 0.035951726, 0.00089924, 0.00015051186, -0.059097648, 0.16086861, 0.0014309117, -0.037192978, 0.05104338, -0.21090738, -0.02250651) * inp_7_1_1; - result7 += M4(-0.0034593008, -0.60470015, 0.2090643, 0.25052705, -0.027321499, 0.16062151, 0.016577426, -0.013205702, 0.02963764, -0.0846, 0.093255244, -0.011993566, 0.07324312, 0.18320748, -0.022252744, -0.011966116) * inp_7_2_1; - result7 += M4(0.012402111, -0.09423922, -0.02755101, 0.01184248, 0.049814, 0.07396747, -0.075764045, -0.012344455, -0.01732627, -0.08180477, 0.12141798, -0.019734032, 0.024001282, -0.06362508, -0.015815372, 0.0213103) * inp_7_0_2; - result7 += M4(0.0050011203, -0.10356102, 0.16599469, -0.017486112, 0.01229704, 0.09701941, 0.08285627, -0.021237923, -0.034057237, -0.13219167, 0.19644529, 0.007920681, 0.042641327, -0.06905818, 0.009809027, -0.047260102) * inp_7_1_2; - result7 += M4(-0.005790654, -0.07283885, 0.11378198, 0.06208358, 0.06747664, -0.05972467, 0.16834457, -0.0137389675, 0.030840661, -0.13512263, 0.025099473, 0.038956035, 0.01568917, -0.03597957, -0.2115487, 0.064330794) * inp_7_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(4, 2); - imageStore(out_image, output_base + ivec2(0, 0), max(result0, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 0), max(result1, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 0), max(result2, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 0), max(result3, V4(0.0))); - imageStore(out_image, output_base + ivec2(0, 1), max(result4, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 1), max(result5, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 1), max(result6, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 1), max(result7, V4(0.0))); -} - -//!DESC ArtCNN C4F32 (Conv2D-3-ReLU) -//!COMPUTE 48 32 12 16 -//!HOOK LUMA -//!BIND conv2d_2 -//!SAVE conv2d_3 -//!WIDTH LUMA.w 4.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared V4 inp[8][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(4, 2); - inp[0][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(0, 0), 0)); - inp[1][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(1, 0), 0)); - inp[2][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(2, 0), 0)); - inp[3][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(3, 0), 0)); - inp[4][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(0, 1), 0)); - inp[5][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(1, 1), 0)); - inp[6][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(2, 1), 0)); - inp[7][y][x] = V4(conv2d_2_mul * texelFetch(conv2d_2_raw, input_base + ivec2(3, 1), 0)); - } - } - - barrier(); - V4 result0 = V4(0.039891187, 0.010174011, 0.0088016875, 0.03124075); - V4 result1 = V4(0.003698658, -0.016067175, 0.018071178, -0.0066997157); - V4 result2 = V4(-0.0070197433, -0.0028909661, 0.0022303315, -0.0050655375); - V4 result3 = V4(-0.0075162463, 0.006320994, -0.0097562745, 0.0138484165); - V4 result4 = V4(0.0014613448, 0.004918162, -0.017067201, -0.016155604); - V4 result5 = V4(-0.008679052, -0.0075656734, 0.0066808863, -0.0042160484); - V4 result6 = V4(0.00784081, 0.019437116, 0.017370472, 0.0030544482); - V4 result7 = V4(-0.00282881, 0.0018453137, 0.0010997254, -0.012253036); - const V4 inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.14309523, -0.001873853, -0.0017180212, 0.033198696, 0.3169121, 0.032105453, -0.030163093, 0.08856871, 0.25947005, -0.007571972, 0.054202788, 0.09713133, 0.26781166, 0.0016409467, -0.045460198, -0.047384653) * inp_0_0_0; - result0 += M4(0.032736126, -0.019261086, -0.06981814, -0.13868594, -0.3535804, 0.025935274, -0.0656602, -0.20437227, -0.037249856, -0.007381983, 0.07731721, 0.057519436, -1.249088, -0.1300499, -0.07241998, 0.017952355) * inp_0_1_0; - result0 += M4(-0.096759, -0.041142356, -0.003936717, 0.020541301, -0.19693185, -0.003954357, -0.09604599, -0.060332753, 0.31012002, -0.024386493, -0.00261878, -0.08509517, 0.5343073, -0.03857238, -0.016029784, -0.034463238) * inp_0_2_0; - result0 += M4(0.11130627, 0.1045214, 0.067061976, 0.12414822, -0.5156921, -0.08968804, 0.11792073, 0.16194685, -0.17407638, 0.016505571, -0.05309113, -0.029744834, -0.012758216, -0.14981432, -0.027988944, 0.23276654) * inp_0_0_1; - result0 += M4(-0.011282038, 0.23429616, 0.36342812, 0.3411906, -0.2675439, -0.17340522, 0.29401016, 0.1064477, -0.39553836, -0.030228132, 0.0052218833, -0.27536052, -0.27379674, 0.09166498, 0.05134846, -0.19864307) * inp_0_1_1; - result0 += M4(0.089008816, 0.064931154, -0.065887816, 0.04454191, -0.3449039, 0.048124, -0.11372226, -0.2867118, 0.3864737, -0.024241993, 0.09331011, -0.007294538, 0.15507536, 4.7814254e-05, 0.019911595, -0.079074375) * inp_0_2_1; - result0 += M4(0.14273323, 0.031306922, -0.053496253, 0.1940134, 0.16749583, 0.02665322, -0.09416029, -0.015213415, -0.14972624, -0.051581223, 0.11031778, -0.03156928, -0.43508735, -0.00572481, -0.07890651, -0.026816973) * inp_0_0_2; - result0 += M4(-0.056292742, 0.017081399, 0.058458038, -0.14285265, -0.21292278, 0.036736153, 0.01386533, 0.13119489, -0.008830673, 0.0048443456, 0.106463924, -0.02187751, 0.42810768, -0.023222659, -0.033471197, 0.19321682) * inp_0_1_2; - result0 += M4(0.09239133, -0.016101219, 0.010676677, 0.12542722, -0.1330447, -0.016992744, -0.019531514, 0.12004744, -0.105055, -0.04523182, 0.026582208, 0.09066113, -0.1493597, -0.011343027, 0.0043815114, 0.09847551) * inp_0_2_2; - result1 += M4(-0.011754787, -0.044900153, 0.011316047, 0.009344969, -0.07654812, 0.004506406, -0.031067831, 0.116805635, 0.07677223, -0.05674572, -0.12100837, 0.083735764, -0.098387696, 0.044428546, -0.06853798, -0.008460154) * inp_0_0_0; - result1 += M4(-0.12383077, 0.11345803, -0.03844071, -0.11200255, -0.11792162, 0.026311757, -0.2228272, -0.0012823446, -0.08393467, -0.14797205, 0.02105, 0.052671637, 0.06367029, -0.027370257, -0.08714039, 0.20933613) * inp_0_1_0; - result1 += M4(-0.025614992, -0.05063498, 0.0348159, -0.01036079, 0.0023902357, 0.0031244168, -0.14579822, 0.117697336, 0.049049217, 0.013261652, -0.051070213, -0.02617905, 0.06044031, -0.12427864, -0.09306393, 0.06946754) * inp_0_2_0; - result1 += M4(0.10722741, -0.030467976, -0.03389288, -0.013788659, -0.07391846, 0.09339178, 0.0073116557, -0.04647689, 0.0025809023, 0.011965062, -0.04709262, 0.04451407, -0.16748951, 0.22894037, -0.04763781, 0.009814327) * inp_0_0_1; - result1 += M4(-0.13195522, -0.12991884, 0.063788, 0.11081102, -0.008850232, -0.48500222, 0.006236815, -0.28283548, 0.043346815, -0.06560962, -0.20624259, -0.04261374, 0.24925543, -0.4874122, -0.07824333, -0.4602907) * inp_0_1_1; - result1 += M4(-0.047687013, 0.12204983, 0.12643155, -0.060586352, -0.013626682, 0.093479574, 0.10135357, 0.30280626, -0.014583826, 0.05176219, -0.17330503, -0.06959416, 0.052971218, 0.17461947, 0.009015934, -0.09006354) * inp_0_2_1; - result1 += M4(-0.014093291, 0.0419472, 0.13239346, 0.076225415, -0.008861888, -0.0523276, -0.1840143, -0.13214853, 0.0026354536, 0.04511812, 0.0024715958, 0.103751756, 0.040584758, -0.04370852, 0.014409337, -0.038460102) * inp_0_0_2; - result1 += M4(-0.114331126, -0.14849842, 0.019866424, 0.21586671, 0.055435274, 0.07103569, -0.1230981, 0.041321695, -0.13275623, 0.09474009, 0.0006063814, -0.07041446, 0.0015035904, 0.11368079, -0.22363499, -0.11709047) * inp_0_1_2; - result1 += M4(-0.14548914, -0.006976128, -0.036362067, -0.14229389, -0.067397326, 0.051728576, -0.118556514, 0.003614227, -0.05859415, 0.09314157, -0.069589876, -0.123888716, 0.02330514, 0.030563781, -0.08114962, 0.04722674) * inp_0_2_2; - result2 += M4(-0.045595124, 0.015869895, 0.012395158, 0.00882572, 0.03515867, -0.14223368, 0.018046035, 0.075941436, 0.04377544, 0.0133860065, -0.028830389, 0.05665587, 0.15368003, 0.12448753, 0.09935006, 0.06466525) * inp_0_0_0; - result2 += M4(-0.01488269, -0.037085548, 0.045489304, -0.056556948, 0.068745196, -0.14181718, 0.020807667, -0.042699374, 0.09137109, 0.16030397, -0.052037876, -0.005772478, -0.06425633, 0.16120096, 0.02593719, -0.05165101) * inp_0_1_0; - result2 += M4(-0.029701773, 0.044742014, 0.011924423, -0.012168167, 0.11106114, -0.025585918, 0.18043429, 0.07857184, 0.052772872, -0.008981964, -0.041643288, 0.047864392, 0.086677015, -0.008532988, -0.08849162, -0.005815922) * inp_0_2_0; - result2 += M4(-0.044394404, 0.11831548, -0.009904613, -0.041939523, 0.07196424, -0.0017405043, 0.06146675, -0.0064095296, 0.124081716, -0.021876728, -0.040990457, 0.003680747, -0.048073083, -0.08284328, 0.26202607, 0.03162839) * inp_0_0_1; - result2 += M4(0.22130273, 0.14527822, -0.39176348, 0.14001855, 0.5352437, -0.04542977, -0.7018523, -0.07476175, 0.10463898, -0.080699034, -0.08113954, -0.20320535, -0.19207337, -0.38535544, 0.55318236, 0.2651838) * inp_0_1_1; - result2 += M4(0.036653444, -0.04756297, 0.022538345, 0.12594087, -0.01760347, -0.10339409, 0.069055945, 0.21305194, 0.04205861, 0.028438265, -0.1696021, -0.0036671674, 0.07049995, 0.080884196, 0.14730366, 0.14130649) * inp_0_2_1; - result2 += M4(-0.16372775, -0.13017991, 0.08860467, -0.008495178, 0.095583275, 0.057885382, 0.030026566, 0.0443974, 0.18476601, -0.17039359, -0.17540543, 0.009062212, -0.050284375, 0.16352107, 0.09986394, 0.0018885226) * inp_0_0_2; - result2 += M4(-0.43257767, 0.1531663, 0.25444767, -0.22873718, 0.25588393, -0.066637754, -0.1370794, 0.030990375, 0.13616155, 0.0036115232, -0.065585956, -0.09872217, -0.07651103, 0.11388792, 0.032373838, -0.15346412) * inp_0_1_2; - result2 += M4(0.07657585, 0.07273188, 0.052816667, -0.13120887, -0.01996312, -0.1688548, 0.070224516, 0.024983965, 0.09769482, 0.070718914, -0.09311761, 0.008110396, 0.07121832, -0.14244963, 0.018713804, 0.06341126) * inp_0_2_2; - result3 += M4(-0.07103164, 0.04623603, 0.01491655, 0.020782093, -0.15087208, -0.009506998, -0.1611754, -0.11209808, 0.057259206, 0.020111036, 0.025495127, 0.07684481, -0.004050046, 0.065389425, 0.05259963, 0.13084045) * inp_0_0_0; - result3 += M4(0.011405818, -0.06016051, -0.04695488, -0.038647547, 0.21635969, 0.15130904, 0.019570103, -0.50442773, -0.085067816, 0.002638368, -0.016227547, 0.019756362, 0.07974229, 0.21875347, 0.055734493, -0.21342625) * inp_0_1_0; - result3 += M4(0.021921959, 0.10539598, 0.036019538, -0.0024735967, 0.36200875, -0.025564855, 0.017608183, 0.015791815, 0.004639025, -0.102622196, 0.035068173, 0.026188917, 0.10705203, -0.12736817, 0.030420022, 0.16431792) * inp_0_2_0; - result3 += M4(0.0057745576, 0.027876824, 0.10262768, 0.05749421, -0.106096715, -0.12303946, -0.25589058, 0.030729443, -0.1056168, -0.02740823, 0.04569236, -0.030569445, 0.02994015, -0.004147803, -0.08972349, 0.048728667) * inp_0_0_1; - result3 += M4(-0.37472087, -0.05760261, -0.110165834, 0.29236808, -0.7468657, -0.052361816, -0.15871547, 0.0913036, 0.012023076, 0.0032697055, -0.042712722, -0.027388467, -0.024480077, -0.39368185, 0.3433091, -0.24069656) * inp_0_1_1; - result3 += M4(0.12731428, 0.029029418, 0.04441547, 0.047703315, 0.32846442, 0.0022785848, 0.06518595, -0.0791525, -0.038153592, -0.048158735, -0.07643948, -0.029544747, -0.15939271, 0.22132136, 0.09632175, 0.020230774) * inp_0_2_1; - result3 += M4(0.16618845, 0.12958807, -0.06892027, -0.05780309, -0.108981475, -0.040782824, -0.0028828504, -0.040729508, 0.11573219, -0.016084928, -0.0420653, -0.005862895, 0.0093898615, 0.026072592, -0.035809677, -0.0040979995) * inp_0_0_2; - result3 += M4(0.21585199, 0.058390792, 0.27720335, -0.2913718, -0.09043576, 0.011728536, -0.06962314, 0.033705365, -0.022419555, 0.06771161, 0.004294621, 0.030153077, -0.06778087, 0.13413167, 0.038228776, 0.07170488) * inp_0_1_2; - result3 += M4(0.016567271, 0.16404593, -0.13059571, -0.009457223, 0.020426787, 0.21224761, -0.10425253, 0.1384942, -0.025041837, -0.0120265465, -0.14951259, 0.051256124, 0.09690919, 0.15502584, -0.011303743, 0.0042200494) * inp_0_2_2; - result4 += M4(0.027594035, -0.015962288, 0.024780115, -0.04144283, -0.01901609, 0.008594559, 0.08677763, -0.29659626, -0.032098148, 0.034959897, -0.014709423, 0.053878725, -0.050388232, -0.07274412, -0.025876269, 0.1305481) * inp_0_0_0; - result4 += M4(-0.001866349, 0.008501407, 0.049455177, -0.0025776012, -0.008821824, 0.15834957, 0.13312322, 0.08562344, 0.1649922, 0.08249981, 0.009123228, -0.25399554, 0.061789162, 0.042166192, -0.04497668, -0.15125476) * inp_0_1_0; - result4 += M4(0.002071383, -0.0030694618, -0.038675763, 0.06870983, -0.09631928, 0.058740955, -0.025242096, 0.06520478, -0.09130973, 0.023469636, 0.052330915, 0.010307608, -0.08002607, -0.014490931, 0.054277305, -0.08889716) * inp_0_2_0; - result4 += M4(-0.0047945776, -0.029827168, -0.0145979505, 0.11211511, -0.01817458, 0.1617174, 0.05575508, -0.056766998, 0.05461428, 0.0730121, 0.08393159, 0.030844068, -0.22220774, 0.048135582, 0.052063316, -0.09136627) * inp_0_0_1; - result4 += M4(-0.23447709, 0.07034374, -0.13712575, -0.08059424, -0.26005888, -0.026197592, -0.21173188, -0.053868186, -0.07769307, 0.15848981, 0.059796214, -0.04785573, 0.4664564, -0.9074057, 0.09066, -0.544772) * inp_0_1_1; - result4 += M4(0.024926035, 0.040354192, 0.010121636, -0.28828725, 0.044388752, 0.06829638, 0.095997095, 0.15944329, -0.08477532, 0.05566613, 0.060184304, 0.13208912, -0.02984898, 0.13414301, -0.082989156, 0.43534833) * inp_0_2_1; - result4 += M4(-0.1278579, 0.007553029, -0.032694604, -0.14663772, 0.06608632, 0.038099416, 0.04906056, 0.027318431, 0.0062923115, 0.06254672, -0.01062308, -0.075430214, 0.08453081, 0.009327934, 0.13268445, 0.01666673) * inp_0_0_2; - result4 += M4(-0.0072635277, -0.1842491, 0.047262307, -0.10808125, -0.0106281685, 0.1280699, -0.09656092, -0.46802148, -0.030218123, 0.13014306, 0.103553005, -0.1362909, -0.12257349, 0.08600192, -0.04349298, 0.13996762) * inp_0_1_2; - result4 += M4(-0.043868378, 0.07081292, -0.07883668, 0.17546567, -0.08788862, 0.08750659, -0.106152266, 0.19086275, -0.14448138, 0.04533915, -0.00865833, 0.04215659, 0.07329542, -0.08975399, 0.022260208, -0.16861832) * inp_0_2_2; - result5 += M4(0.010509402, 0.019518422, 0.00328791, -0.09906433, 0.0278878, -0.03260109, -0.00020370033, -0.025076501, -0.04353637, 0.063811146, 0.006994537, -0.07271743, -0.063133426, 0.012389002, -0.009289574, -0.121060476) * inp_0_0_0; - result5 += M4(0.039773777, -0.0895586, 0.004950071, 0.016024612, 0.15021367, -0.2869759, -0.028258825, -0.08519062, -0.098199725, -0.061076205, 0.018656151, -0.054120112, 0.058577213, -0.056778766, -0.027311163, -0.11237881) * inp_0_1_0; - result5 += M4(-0.034249917, -0.03299265, -0.018334009, 0.01908288, -0.027319072, 0.21508203, -0.013224089, 0.053042583, -0.028632842, -0.15447335, -0.0010644845, 0.006316545, -0.0015898185, -0.045662377, -0.005043772, 0.15103598) * inp_0_2_0; - result5 += M4(-0.0402763, 0.18897127, 0.010842872, -0.1275855, -0.06693902, -0.013819111, -0.072977565, 0.11740496, 0.08306948, 0.123957455, 0.058837164, -0.029682321, -0.014199772, -0.00028300207, -0.013093423, -0.15040931) * inp_0_0_1; - result5 += M4(-0.3446225, -0.11357845, 0.038074747, 0.05556274, -0.20539531, -0.052309696, 0.05627663, -0.043872528, -0.06756652, -0.08219633, -0.055187013, -0.112718664, 0.12130579, -0.1199594, -0.132088, -0.3288096) * inp_0_1_1; - result5 += M4(-0.12497266, -0.56094146, 0.013189971, -0.12575312, 0.050264023, -0.111246094, -0.04937345, -0.15321736, 0.03216781, 0.014386418, -0.017840276, 0.08767631, 0.025973516, 0.12759106, -0.045358077, -0.040668692) * inp_0_2_1; - result5 += M4(0.03794886, -0.1623382, 0.021216918, -0.0084155835, -0.03446684, -0.05167531, -0.025551477, 0.044166647, -0.0011876737, -0.026014624, -0.0062451973, -0.058929186, -0.026467845, 0.037031967, -0.07995839, 0.040423732) * inp_0_0_2; - result5 += M4(-0.04436454, 0.028091118, 0.010060466, -0.15728569, 0.01508378, 0.058570538, -0.017138515, 0.08813434, 0.036064345, 0.022453606, 0.016611064, 0.017139532, 0.12761998, 0.0031079468, 0.027776018, -0.064217284) * inp_0_1_2; - result5 += M4(-0.013894192, 0.019669713, 0.0023438234, -0.08639547, -0.010864848, -0.13676187, 0.009209667, 0.012941783, -0.061353903, -0.093052134, -0.013672312, 0.057396524, -0.02797671, -0.032532085, 0.008007376, -0.11991426) * inp_0_2_2; - result6 += M4(-0.003918411, -0.0030632298, -0.020233491, -0.015747532, -0.06599346, 0.3813743, -0.1022056, 0.051930048, -0.0108340485, -0.06404295, -0.020801034, 0.012340382, 0.082330965, 0.019173406, 0.10965526, -0.10175482) * inp_0_0_0; - result6 += M4(0.014688186, -0.009105166, -0.015858855, 0.02934022, 0.11020389, -0.1910107, 0.35834283, 0.026369374, -0.026768101, -0.12412397, -0.16468842, 0.006219744, -0.14608766, -0.020514332, 0.15251845, 0.064148754) * inp_0_1_0; - result6 += M4(-0.0067860554, -0.064119495, 0.038858287, -0.039744407, 0.0058656214, -0.0016627198, 0.11053784, -0.058420826, -0.0019121376, 0.08639949, 0.06644012, 0.0008775286, 0.0625736, 0.16586284, 0.0667027, -0.07835746) * inp_0_2_0; - result6 += M4(0.30398658, -0.15625334, 0.07699638, -0.014727578, -0.00022114595, -0.26043263, -0.08678946, 0.07089245, 0.095869504, -0.034724608, 0.068186805, 0.007882757, 0.012658224, 0.2753845, -0.03311974, 0.0065230164) * inp_0_0_1; - result6 += M4(-0.1797437, -0.12649554, -0.24521147, 0.22554466, -0.3586812, -0.09301251, -0.563658, 0.2150127, 0.24063845, -0.18093735, 0.3064467, 0.00307264, -0.435347, -0.21763927, 0.32749456, -0.28044063) * inp_0_1_1; - result6 += M4(-0.10391872, 0.1568296, -0.043538462, -0.019230826, 0.013417643, -0.23382333, 0.18296298, 0.0061866925, 0.051188603, -0.03292764, -0.072666846, 0.022539703, 0.16048382, -0.08479939, -0.0032931408, -0.037459105) * inp_0_2_1; - result6 += M4(0.025274286, -0.025832957, -0.05344871, -0.0076879202, -0.06814966, -0.28538677, 0.12503229, -0.02706914, 0.10205425, 0.03450146, -0.041630466, 0.015949368, 0.035470463, -0.10613134, 0.09792066, 0.0031895118) * inp_0_0_2; - result6 += M4(-0.28241268, 0.01906629, 0.18009363, -0.055728763, 0.08142881, -0.12345334, 0.032123115, -0.035197493, 0.08216345, 0.04351116, 0.010688702, 0.041106984, 0.1775762, 0.32197142, -0.19981448, 0.007766006) * inp_0_1_2; - result6 += M4(0.1733136, -0.050024584, -0.098271124, -0.041516483, 0.10169313, 0.05958566, -0.11132863, -0.0004754283, 0.099020034, -0.02778823, -0.18707111, 0.006320229, -0.1006538, -0.042983994, 0.11510748, 0.04298184) * inp_0_2_2; - result7 += M4(-0.028076239, -0.0156401, -0.010424246, -0.0096850805, 0.05003037, -0.12220453, 0.0135851195, -0.029757593, -0.020713447, 0.010241505, -0.007839067, -0.015132353, -0.028289594, 0.16688786, -0.020259721, 0.027408836) * inp_0_0_0; - result7 += M4(0.03570011, -0.0052317474, -0.016310167, 0.078915246, 0.029166294, 0.059118435, 0.0509728, -0.03425823, -0.081839174, 0.050867297, -0.0039371434, -0.03327586, 0.097533286, -0.24751547, -0.043934908, 0.19153814) * inp_0_1_0; - result7 += M4(-0.06924215, 0.04851302, -0.04238731, 0.063073106, -0.15275095, 0.20492558, 0.036272775, 0.111823834, -0.0006419136, 0.048659332, -0.01709666, -0.109825075, -0.17880586, -0.06436704, -0.059037004, -0.037641715) * inp_0_2_0; - result7 += M4(0.093930565, -0.01901314, 0.0378732, 0.05245079, -0.0348054, 0.029020363, 0.014211449, 0.040763244, -0.097005524, -0.014347144, -0.013889909, -0.05938931, 0.015013427, -0.05648958, -0.023936171, -0.16865626) * inp_0_0_1; - result7 += M4(-0.054905366, -0.27922672, 0.1118672, -0.0019872529, -0.003778244, 0.0038754554, -0.086601175, -0.117345385, 0.090721875, 0.1038295, 0.051644396, -0.09897438, 0.33402368, 0.006397337, -0.12513605, 0.16245219) * inp_0_1_1; - result7 += M4(-0.09017521, -0.0028480908, 0.07894478, -0.07298281, -0.056858163, 0.012269897, -0.03388807, -0.50022, 0.002430197, 0.16063574, -0.045678716, -0.08135633, -0.237678, -0.120017506, -0.004637493, 0.03780666) * inp_0_2_1; - result7 += M4(0.0053655184, 0.03947017, 0.004053104, 0.026973478, -0.031819936, -0.016819421, 0.005387842, -0.08829515, 0.0029808953, 0.027840378, 0.023485424, 0.044031564, -0.07333639, 0.09652965, -0.013914355, -0.090418026) * inp_0_0_2; - result7 += M4(0.06385392, 0.009916479, -0.08409666, 0.112487316, 0.04142103, 0.079895616, -0.02648896, 0.029271455, 0.025245845, -0.027537873, -0.02559596, -0.081948824, 0.032952424, 0.011141617, -0.040146247, 0.16555989) * inp_0_1_2; - result7 += M4(-0.16198727, -0.00200076, 0.03478265, -0.33718365, -0.050040636, 0.05894917, -0.024834994, -0.037066117, -0.0025089541, 0.06517862, -0.018256193, 0.024934977, -0.17511852, 0.06193969, -0.0036468478, 0.11832064) * inp_0_2_2; - const V4 inp_1_0_0 = inp[1][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_1_1_0 = inp[1][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_1_2_0 = inp[1][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_1_0_1 = inp[1][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_1_1_1 = inp[1][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_1_2_1 = inp[1][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_1_0_2 = inp[1][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_1_1_2 = inp[1][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_1_2_2 = inp[1][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.29945213, 0.016721457, 0.048380826, 0.02149246, 0.13466847, 0.013641529, -0.0075471, 0.1042203, -0.3653232, -0.024867428, 0.0037190018, 0.13844965, -0.61486983, -0.051240027, -0.09842485, -0.10714061) * inp_1_0_0; - result0 += M4(0.1665372, 0.0148761235, -0.01913559, 0.012282361, -0.08114622, -0.03789542, 0.0632905, 0.028663334, -0.9658338, 0.06732174, 0.19561319, -0.07710947, -0.7717144, -0.0038836475, 0.021466006, -0.122817025) * inp_1_1_0; - result0 += M4(0.14383608, 0.0023646746, 0.017918272, 0.03816761, 0.031457536, 0.02798194, -0.0265644, 0.043086562, -0.09529929, -0.019191682, -0.012992834, 0.05075372, 0.05088513, -0.00039902542, 0.0346397, 0.027265193) * inp_1_2_0; - result0 += M4(0.39417768, 0.02633473, 0.016401395, -0.041539043, 0.13625173, 0.03452745, -0.016785765, -0.095587894, 0.8140294, 0.053697005, -0.20848198, 0.0395206, 0.6275076, 0.06446659, -0.025690867, 0.11574705) * inp_1_0_1; - result0 += M4(0.403987, 0.10098557, 0.061772607, -0.18275356, 0.033559337, -0.023966024, -0.14448816, -0.17164525, 0.21394442, 0.057296596, 0.05428198, 0.084945254, 0.06384696, -0.032312732, 0.16179374, 0.0224598) * inp_1_1_1; - result0 += M4(-0.25245595, -0.031222574, -0.0022200628, -0.13336521, -0.007412842, 0.04381615, -0.14868532, -1.6534548, -0.19863164, 0.12517558, 0.02143218, 0.047109023, 0.07274739, -0.0136314435, -0.02888984, 0.0015517307) * inp_1_2_1; - result0 += M4(-0.42997503, -0.011384249, 0.16267832, 0.12015541, -0.010111496, -0.046051968, 0.093796305, 0.117525846, -0.16782556, 0.041103307, -0.006354386, -0.052063625, 0.020018809, 0.008212924, -0.08868746, 0.06842726) * inp_1_0_2; - result0 += M4(0.41867986, 0.026575852, 0.10381858, 0.11688954, -0.6587167, 0.026782667, 0.1097803, 0.033665046, -0.43879756, -0.061018366, 0.12439944, 0.13458548, -0.11284604, 0.008429647, 0.05628657, 0.24833219) * inp_1_1_2; - result0 += M4(-0.046481904, -0.055302296, 0.105544165, 0.021198822, -0.43852645, 0.33756477, -0.84516466, 0.3629823, 0.10299879, 0.011544101, 0.06257324, -0.28255737, -0.45528555, 0.006239042, -0.10928085, -0.25132382) * inp_1_2_2; - result1 += M4(0.057675593, -0.015146038, -0.007213109, 0.012353585, 0.055279203, -0.018905785, -0.045741476, 0.008737857, 0.027884744, -0.02233891, 0.06110649, 0.016423585, -0.034457855, -0.03777866, -0.049188863, -0.17308913) * inp_1_0_0; - result1 += M4(0.069404066, -0.056120053, 0.09850305, -0.00943585, 0.0064680465, 0.0028800338, -0.078768484, 0.05271763, -0.09586996, -0.0075987503, -0.10340642, 0.16298983, 0.046404433, 0.10041992, 0.060416322, 0.0023985119) * inp_1_1_0; - result1 += M4(-0.04856173, -0.12177881, 0.17412265, 0.06683115, -0.051207133, -0.009387477, 0.12181054, -0.00940436, 0.13312823, 0.07901591, -0.115354575, -0.034700036, -0.006616614, -0.1152893, 0.05397204, 0.04023869) * inp_1_2_0; - result1 += M4(-0.025502976, -0.018278498, 0.052354597, -0.012438072, 0.0037707768, 0.030605925, -0.10885654, 0.042710572, -0.07369495, 0.19976208, 0.20197527, 0.3883703, -0.0032500594, -0.02494325, 0.15168598, 0.1586852) * inp_1_0_1; - result1 += M4(-0.07551285, 0.052692134, 0.039637066, 0.09869077, -0.04104066, -0.07655418, -0.0045615197, -0.12513362, 0.33518228, -0.03858765, -0.6237292, -0.10213754, -0.08375396, -0.29445434, 0.015222994, 0.042950116) * inp_1_1_1; - result1 += M4(0.026945928, 0.19924618, -0.14285344, -0.18592703, 0.10724696, 0.11941025, 0.022904154, 0.012397857, -0.009136163, 0.18373927, 0.23905881, -0.13942502, -0.051415104, 0.040343765, 0.13453314, 0.12480987) * inp_1_2_1; - result1 += M4(0.10424573, -0.029728519, 0.0069570867, 0.02559925, -0.020999443, -0.11709428, 0.07528185, -0.19178224, -0.08337042, 0.001193543, 0.0036009278, 0.10377675, -0.08897174, 0.09809715, 0.05875595, 0.1469213) * inp_1_0_2; - result1 += M4(-0.1071959, 0.11354488, -0.06559869, 0.024139771, -0.013766009, -0.0100777885, 0.055065345, -0.15646382, 0.06741502, -0.006766261, -0.24235824, -0.2574126, 0.10896339, 0.02206689, 0.04754106, 0.027917856) * inp_1_1_2; - result1 += M4(-0.014752971, 0.08652678, 0.011277, -0.1858792, -0.40696397, -0.036969796, -0.23089798, -0.130917, 0.021905433, 0.06680868, -0.10919735, 0.01985503, -0.030990915, -0.07324196, 0.19783373, 0.26367128) * inp_1_2_2; - result2 += M4(0.021772336, 0.040368866, -0.12300039, 0.0103688445, 0.035343323, -0.015615708, 0.054697927, -0.036688235, -0.03638772, 0.05164579, -0.06503474, 0.048377916, -0.063711636, -0.06981168, -0.0063233525, -0.12457639) * inp_1_0_0; - result2 += M4(0.07904381, 0.01730987, -0.17108203, 0.11613326, -0.07142317, -0.05897214, -0.07220175, -0.05823032, 0.11839536, 0.087790415, -0.22768177, 0.18687655, -0.031924125, -0.099687956, -0.023042388, 0.045040235) * inp_1_1_0; - result2 += M4(0.07011382, 0.22975056, 0.021661185, 0.049485117, 0.1184755, 0.053844348, 0.034051854, 0.08428751, -0.056720093, -0.06287596, 0.058251686, 0.060065906, 0.0011439888, 0.04101938, -0.037737582, -0.062459916) * inp_1_2_0; - result2 += M4(0.10327249, 0.036676005, -0.19475247, 0.02657771, -0.09210735, 0.060093004, -0.16636112, 0.0964283, 0.0465575, -0.25048304, 0.12514487, 0.11295053, 0.023036385, 0.017740287, 0.046335433, -0.024919102) * inp_1_0_1; - result2 += M4(0.13684112, 0.012627749, -0.28056094, 0.1016727, 0.086389996, -0.36327767, 0.41651127, 0.21070965, 0.12006851, 0.40446413, -0.43231305, -0.3090549, 0.08921101, -0.03840332, -0.12285005, -0.049964443) * inp_1_1_1; - result2 += M4(-0.004469333, 0.0475042, -0.0775174, -0.030478634, -0.10106352, 0.15343556, 0.11022484, 0.3709453, -0.020901699, -0.08526317, -0.046527162, 0.1952318, -0.053206895, -0.016022447, 0.045537606, 0.14448267) * inp_1_2_1; - result2 += M4(0.011592143, 0.048516043, -0.08996931, 0.026561074, -0.0011719267, 0.13787702, 0.09530411, -0.09744835, 0.2538067, -0.13850965, -0.0028932085, 0.022593968, 0.024608158, -0.24202175, -0.121290684, 0.055043194) * inp_1_0_2; - result2 += M4(0.15049149, -0.11269259, -0.12315777, 0.031536464, -0.06984441, 0.29977617, 0.38266373, 0.05402268, 0.22705635, -0.1997718, -0.22526349, 0.009477681, -0.00015430161, 0.122711115, 0.01121371, -0.031082079) * inp_1_1_2; - result2 += M4(0.03121442, -0.041045435, -0.061900154, 0.01976692, -0.40483192, 1.2391305, 0.55143064, 0.04795638, -0.014059811, -0.13399431, -0.02627934, -0.01791536, -0.066129215, -0.15398721, 0.12440876, 0.08947219) * inp_1_2_2; - result3 += M4(-0.009626319, -0.0551405, 0.03221505, 0.07711866, -0.023336867, -0.0016413911, -0.03415477, 0.00711131, 0.14876026, 0.007618082, 0.072212785, 0.07758583, 0.11508535, 0.1016195, 0.048850924, -0.11596107) * inp_1_0_0; - result3 += M4(-0.14653677, 0.04707142, -0.029509092, -0.01015551, 0.15772721, -0.012764638, 0.13663512, -0.12360166, 0.244087, -0.21049978, -0.09108822, 0.24251336, 0.099945016, 0.08931552, -0.12533265, -0.0062505677) * inp_1_1_0; - result3 += M4(-0.12650177, 0.032971244, -0.03814634, 0.028977, -0.07538743, -0.079515025, -0.10843104, 0.0834877, 0.23283133, -0.22874326, 0.037438415, -0.2804413, -0.08315658, -0.04622983, 0.022519622, 0.043407325) * inp_1_2_0; - result3 += M4(-0.05845912, 0.0002660409, 0.049717564, 0.020605091, 0.010453843, -0.013639376, -0.015202909, 0.10780482, -0.21377604, -0.13816535, -0.15265189, 0.049563814, 0.008172124, 0.015831912, -0.044115305, 0.0039182077) * inp_1_0_1; - result3 += M4(0.12548186, -0.048332486, 0.03556291, -0.005689275, 0.103753276, 0.11183846, 0.36466736, 0.27486822, 0.063191675, 0.15507351, 0.22527584, -0.3197322, -0.033902, 0.11418072, -0.08239759, 0.08690725) * inp_1_1_1; - result3 += M4(0.08247658, 0.045406997, -0.13789868, -0.18205099, 0.10520754, 0.0040780012, -0.276424, 0.037386514, 0.18607551, 0.028486665, 0.10762507, -0.033038173, 0.11580436, 0.093643844, -0.0064643077, 0.15039575) * inp_1_2_1; - result3 += M4(0.10963751, 0.031230567, 0.07221182, 0.052551374, -0.051079348, 0.105272785, 0.064356536, -0.057561263, -0.02935671, -0.2078225, -0.11156725, -0.06925826, -0.18654573, -0.14226994, -0.18968734, 0.10217522) * inp_1_0_2; - result3 += M4(-0.012380075, 0.010245177, -0.05422265, 0.101584435, -0.1749279, -0.11985797, 0.17320535, 0.13498944, 0.16588779, 0.22753675, -0.12114093, 0.11515684, -0.012427385, 0.3596821, -0.13799436, 0.13354042) * inp_1_1_2; - result3 += M4(0.088605955, 0.09297614, -0.15701206, 0.051795416, -2.1599007, 1.2244301, 0.010659336, -0.070034385, -0.06663495, -0.098032124, -0.03790131, 0.09253141, 0.11475523, -0.37772667, 0.063657895, -0.16097547) * inp_1_2_2; - result4 += M4(-0.03736994, 0.03197101, -0.0004184096, 0.20305833, -0.024550354, 0.007980147, 0.030384988, -0.039885953, -0.10932413, -0.021676375, -0.09282416, 0.15784411, -0.009980141, -0.06451741, 0.0250515, -0.033159256) * inp_1_0_0; - result4 += M4(0.014157977, 0.090478174, -0.0065375073, -0.006339505, 0.024916336, 0.060546793, 0.08067575, 0.014891602, -0.046558153, 0.03328631, 0.1614454, -0.29941663, -0.011160692, -0.011075563, -0.022130635, 0.17977618) * inp_1_1_0; - result4 += M4(-0.12208285, 0.13075349, -0.11888603, 0.09087421, -0.012408191, -0.06289505, -0.14671169, 0.010116023, -0.11812606, 0.053994793, 0.10733559, -0.16196598, 0.021594174, 0.0040206322, -0.01143029, 0.048504356) * inp_1_2_0; - result4 += M4(-0.11503169, -0.037753567, -0.029664291, -0.15031973, -0.08804468, -0.06175422, 0.060519006, 0.11747918, -0.07485173, 0.15629584, -0.18019074, 0.19998714, -0.11055503, 0.0613299, -0.13784845, 0.27663165) * inp_1_0_1; - result4 += M4(-0.19165277, 0.0807505, -0.0736518, -0.20542322, 0.2753762, -0.063263856, 0.28223023, 0.057907507, 0.08453634, 0.1837255, 0.26969516, 0.11365844, 0.14397722, -0.0694139, -0.07483719, -0.20353584) * inp_1_1_1; - result4 += M4(-0.19784899, 0.03216957, 0.0771058, -0.0061432472, 0.05705537, 0.050986845, -0.29367867, 0.023170875, -0.1428042, -0.088592485, 0.09266105, -0.6524579, -0.015443436, -0.016432121, -0.015670927, -0.085760094) * inp_1_2_1; - result4 += M4(-0.039063957, 0.039334722, 0.02537611, -0.051676262, 0.020697976, 0.013576395, 0.002662463, -0.08376288, -0.163694, -0.021780992, -0.15118665, 0.03222709, -0.09106038, 0.023521129, -0.11112659, 0.22245653) * inp_1_0_2; - result4 += M4(-0.28031227, 0.0899303, 0.04282424, -0.047218952, -0.17176887, -0.10757459, 0.0029765507, -0.0722887, -0.11760462, 0.113135114, 0.092811644, 0.17788349, 0.033772424, 0.15351856, -0.1435605, -0.37400013) * inp_1_1_2; - result4 += M4(-0.15849306, 0.09758128, -0.019187005, 0.21072191, -0.09662794, -0.028902918, 0.5203194, 0.19472271, 0.03801836, 0.00414592, -0.022245754, -0.4454378, 0.02026, -0.10480984, 0.113460794, 0.07785382) * inp_1_2_2; - result5 += M4(-0.04329186, 0.008185408, 0.023077082, 0.014508412, -0.014862862, 0.094984636, -0.019098686, -0.10407992, 0.042024452, -0.06954026, 0.0066354526, -0.035478134, 0.024962256, -0.28446433, -0.027512275, -0.057160884) * inp_1_0_0; - result5 += M4(-0.019251322, -0.13335714, -0.033230998, 0.12060514, 0.049762625, -0.09016785, 0.0144119, 0.079574995, -0.15645365, 0.005589797, -0.040307697, 0.3044709, 0.053198945, -0.073588185, -0.056751125, -0.100542314) * inp_1_1_0; - result5 += M4(-0.11146731, -0.09452626, 0.016980225, 0.08310408, -0.021957893, 0.12633969, 0.03935766, 0.050185643, 0.058814473, -0.09098875, -0.0035554187, 0.0684569, -0.0033600763, -0.20010762, 0.014653277, -0.002991813) * inp_1_2_0; - result5 += M4(0.07922655, -0.13634196, 0.026740732, -0.0269298, 0.02031409, -0.12562339, -0.0860067, -0.015830902, 0.028158845, -0.0644371, 0.033969235, -0.033476036, 0.029153958, -0.22307615, -0.0030642175, -0.19351758) * inp_1_0_1; - result5 += M4(0.03459402, -0.07257304, 0.06408246, 0.12644887, -0.0014541325, 0.19188766, 0.3634093, 0.115800895, 0.07072446, -0.46600592, -0.12934318, 0.029570572, -0.07551728, -0.19339687, 0.048577994, -0.24608654) * inp_1_1_1; - result5 += M4(0.035361987, -0.17032887, -0.036659177, 0.057550527, -0.3719398, 0.07861372, -0.044407833, -0.15130177, 0.15279724, -0.34324786, -0.09076453, 0.10628037, -0.022010215, -0.14588277, -0.0023943791, -0.08138484) * inp_1_2_1; - result5 += M4(0.014153091, 0.086090155, 0.048706718, -0.05246161, -0.065041065, -0.0888055, -0.046567403, 0.019163795, -0.021660069, 0.14263971, 0.06653771, -0.07382126, 0.01995223, -0.5645876, 0.042371456, -0.08979543) * inp_1_0_2; - result5 += M4(-0.00087396294, 0.09846889, 0.041853607, 0.042069692, -0.16321093, -0.17013538, 0.21793899, -0.0009091099, 0.15162817, -0.026125196, -0.009595639, 0.11588049, -0.031408828, -0.30944917, -0.03541099, -0.28140694) * inp_1_1_2; - result5 += M4(0.008553095, -0.06278825, 0.027959753, 0.07393249, 0.058657847, 0.009081485, -0.094143376, -0.50956744, -0.015151675, -0.119007744, 0.028325886, -0.06399483, -0.079260886, -0.4418238, -0.028575178, -0.0929734) * inp_1_2_2; - result6 += M4(0.012680725, -0.118958764, 0.06672893, 0.0074785356, -0.0600971, 0.025794875, -0.11552053, 0.03734676, 0.05460449, -0.043873575, 0.22294249, 0.010981987, 0.20218416, 0.122793026, 0.115615964, -0.05558718) * inp_1_0_0; - result6 += M4(-0.075590044, 0.090758935, 0.021487653, -0.00059216766, 0.10510723, -0.006818901, 0.15701161, -0.048993073, 0.028932286, -0.1142076, 0.082012504, -0.083441146, 0.16091147, -0.2013937, 0.17217074, 0.0024506429) * inp_1_1_0; - result6 += M4(-0.0782256, -0.03148623, -0.0031762072, 0.024856444, -0.105171256, 0.029545799, -0.06049447, -0.01320072, -0.083958276, -0.07758716, 0.047985934, -0.029821442, -0.016782587, -0.009976622, -0.11270917, 0.021811688) * inp_1_2_0; - result6 += M4(0.03126496, -0.008367265, 0.020458642, 0.016902847, 0.036372382, 0.08771398, 0.14899325, -0.018847425, -0.285501, 0.42036724, -0.44994977, 0.0663033, 0.0337691, 0.09749637, -0.10518828, 0.06170586) * inp_1_0_1; - result6 += M4(-0.13910379, -0.06503652, 0.102880135, 0.03240468, -0.08692447, -0.1997912, -0.29984683, -0.0072464035, 0.2748857, -0.46823657, 0.15197368, -0.059390686, 0.042282682, 0.19011615, -0.332185, -0.019373074) * inp_1_1_1; - result6 += M4(0.016651737, -0.072198264, 0.18244925, 0.13340965, 0.031906523, 0.19430593, 0.2688146, 0.037982035, -0.24204488, -0.26042837, -0.06386836, 0.23792033, -0.049643487, 0.045090616, 0.14478186, -0.055082858) * inp_1_2_1; - result6 += M4(0.1219705, -0.13019203, -0.029079106, 0.047277108, 0.028691756, -0.045255248, 0.04301401, 0.04593375, -0.034801085, 0.1594776, 0.04218759, -0.061767217, 0.0968384, 0.23006253, -0.25599393, -0.016353635) * inp_1_0_2; - result6 += M4(0.10607581, 0.1906179, -0.115331165, 0.022214688, -0.1107706, 0.057922363, -0.055891514, -0.07315471, 0.1588709, 0.2317164, -0.11248607, 0.085667044, 0.1532306, -0.12161446, -0.0007436759, 0.014549785) * inp_1_1_2; - result6 += M4(0.22183895, -0.01839877, -0.16258262, 0.124157384, 1.0527457, 0.9587401, 0.14928916, -0.26464245, 0.046527423, 0.014252055, 0.22166795, 0.036501545, -0.2029026, 0.19722955, 0.10715302, -0.059861705) * inp_1_2_2; - result7 += M4(-0.017387146, -0.0155684035, -0.003951331, 0.013595356, -0.020834034, -0.00530197, 0.011869396, 0.03420128, -0.074755974, 0.13225217, 0.002793446, -0.054696914, 0.008249571, 0.12148515, 0.009979251, -0.08482544) * inp_1_0_0; - result7 += M4(-0.047355216, 0.004398275, 0.021171153, 0.022762252, 0.048599605, 0.030361209, 0.0322976, 0.006406646, -0.108591825, -0.0019540733, 0.022625597, -0.10000099, 0.05991208, 0.051493276, -0.012336981, 0.031335704) * inp_1_1_0; - result7 += M4(-0.095816284, -0.040698104, 0.011335123, -0.075978145, -0.025670288, -0.11825628, -0.030994296, -0.07457384, -0.033532184, 0.3155446, -0.061073363, -0.11183585, 0.017372757, -0.025754724, -0.010328536, 0.043181725) * inp_1_2_0; - result7 += M4(-0.026613913, 0.02026543, -0.007153882, 0.0014129839, -0.10304375, -0.10158311, -0.0016105281, -0.030597018, 0.0050067226, 0.109709665, -0.026636677, 0.09369355, 0.08607958, -0.094513975, -0.0045302496, 0.26016152) * inp_1_0_1; - result7 += M4(-0.1622681, -0.021971542, 0.008400784, -0.033548098, 0.16472529, 0.16283438, 0.20375639, 0.09640367, -0.1463608, -0.3092307, 0.2015238, -0.042423505, -0.19919412, -0.17585324, 0.04425746, 0.11034954) * inp_1_1_1; - result7 += M4(-0.07156354, 0.14873216, 0.08618944, -0.5076667, -0.037807055, -0.07386765, -0.1335739, 0.036284145, 0.21428691, 0.2131247, 0.14821468, -0.2230208, 0.042139538, 0.013517645, -0.047247477, -0.11921939) * inp_1_2_1; - result7 += M4(-0.07096361, 0.018662479, 0.020255823, -0.013958803, -0.049852423, -0.0075443797, -0.02172565, -0.066350676, 0.041961215, 0.021488683, -0.01981748, 0.07255761, -0.079238385, 0.054014403, -0.012145, -0.036540557) * inp_1_0_2; - result7 += M4(-0.12478183, 0.0459179, -0.02452466, -0.09582406, 0.18695612, -0.0506861, -0.117540546, -0.20269619, -0.19232322, -0.058260836, 0.056569863, -0.1826638, -0.021716472, -0.010623203, 0.038557068, 0.18886337) * inp_1_1_2; - result7 += M4(-0.10108885, 0.006800131, 0.042952493, -0.39603856, 0.57345694, -1.3992302, 0.24546719, 0.24379577, 0.057103958, 0.083559595, 0.069694534, -0.2164633, -0.015703592, -0.002764098, -0.04311413, -0.07887502) * inp_1_2_2; - const V4 inp_2_0_0 = inp[2][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_2_1_0 = inp[2][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_2_2_0 = inp[2][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_2_0_1 = inp[2][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_2_1_1 = inp[2][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_2_2_1 = inp[2][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_2_0_2 = inp[2][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_2_1_2 = inp[2][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_2_2_2 = inp[2][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.07255866, 0.027636811, -0.046761736, 0.47680825, -0.22399765, -0.017568553, -0.1214919, -0.010681118, -0.50622594, -0.09028839, 0.13946822, -0.114642195, 0.04964725, 0.01955893, -0.023359345, 0.10024302) * inp_2_0_0; - result0 += M4(-0.20098615, 0.12889655, 0.03979543, 0.07899488, -0.042161025, -0.024931366, -0.05612709, -0.2940474, -0.28785238, -0.050786372, 0.048440173, -0.027139103, 0.14735654, 0.044429265, -0.034542836, 0.0138086965) * inp_2_1_0; - result0 += M4(0.012080047, 0.039615486, -0.017609548, -0.058628913, -0.16258635, -0.022245938, -0.0037716497, -0.006730193, -0.33381608, -0.013005564, -0.0041140355, -0.05940271, -0.303525, 0.0058252765, -0.020851789, -0.02909136) * inp_2_2_0; - result0 += M4(-0.051408697, 0.04617191, 0.08154607, 0.03677489, -0.35826585, -0.0052431854, 0.06602581, 0.0548141, -0.29884845, -0.029323135, -0.030204412, -0.11240572, 0.21086782, 0.11379197, -0.028972168, -0.039030254) * inp_2_0_1; - result0 += M4(-0.14941402, 0.0059223273, 0.11979144, -0.04334342, -0.022641683, 0.121776424, 0.051716685, 0.19363245, 0.046414346, 0.019678261, 0.72807854, 0.17533883, -0.1970947, 0.009386085, -0.07514564, -0.0931021) * inp_2_1_1; - result0 += M4(0.4621458, 0.04806301, -0.048683133, -0.17909142, 0.023783972, -0.0013496726, -0.06636529, -0.018848054, -0.38507864, 0.01480445, 0.038949978, -0.22422375, -0.1760356, -0.016678661, 0.026564017, 0.08292462) * inp_2_2_1; - result0 += M4(0.1856655, -0.02839978, 0.03053616, 0.06733412, 0.029904235, 0.0139276255, 0.0027705196, -0.07948717, 0.06984059, -0.049558386, 0.043306842, -0.15703954, -0.18411908, 0.013863372, -0.019709434, 0.118507504) * inp_2_0_2; - result0 += M4(-0.15251172, -0.004767459, 0.04326498, -0.020222634, 0.43283013, 0.06579044, 0.0360114, -0.068890326, 0.12700899, 0.05497172, -0.10460676, -0.5743591, 0.11840511, 0.05176694, -0.033370752, -0.015665852) * inp_2_1_2; - result0 += M4(0.010338227, 0.012263434, 0.016463019, 0.11037372, -0.093330525, -0.012644149, -0.077358164, 0.020244265, 0.25109407, -0.0097975675, -0.023061361, -0.26241818, 0.21612927, 0.00010185677, 0.027700162, -0.075181715) * inp_2_2_2; - result1 += M4(-0.036600526, 0.059534237, -0.06317499, 0.14578621, 0.022945615, 0.13337675, 0.034617502, -0.05419159, -0.113329366, 0.13701612, -0.3735766, -0.024992151, -0.01974378, 0.008024999, 0.056544032, 0.08785628) * inp_2_0_0; - result1 += M4(0.0323845, 0.0031875088, -0.14961207, -0.16295406, -0.12152492, -0.07522887, 0.0015737817, -0.19637217, -0.15620111, 0.20419684, -0.33174893, -0.28372929, 0.022790276, 0.14304712, 0.006593274, 0.091926) * inp_2_1_0; - result1 += M4(-0.060765114, -0.058558356, -0.010593718, 0.0010367028, -0.03539254, -0.11761206, -0.09444016, 0.14473654, -0.056432754, 0.141181, -0.053832762, 0.06954362, -0.038312137, 0.06102711, -0.043951664, -0.06204983) * inp_2_2_0; - result1 += M4(0.18374784, -0.24810776, -0.12068125, -0.17549889, 0.03327401, -0.03318353, -0.16327451, -0.032973133, -0.084294766, -0.12208149, -0.35748312, -0.31832632, 0.037553087, 0.18509562, -0.00960484, 0.1956997) * inp_2_0_1; - result1 += M4(0.17593849, -0.10449135, -0.06542807, -0.15936826, -0.13754413, 0.32283458, 0.13084689, 0.059561055, 0.45643798, -0.9403824, 0.24488518, -0.43327355, 0.1111264, 0.020652674, 0.18692383, 0.37186956) * inp_2_1_1; - result1 += M4(0.12481221, -0.1082678, 0.19086604, -0.12402074, 0.0838509, 0.045253932, -0.03558106, 0.02983791, 0.113458574, 0.22412503, -0.13291945, 0.23047383, 0.08179752, -0.16305946, -0.16496693, -0.16550216) * inp_2_2_1; - result1 += M4(0.07664971, 0.115703635, -0.08709182, 0.038478784, -0.02192782, -0.07623023, 0.023606094, 0.13822335, -0.016284341, 0.09583049, -0.07397234, 0.11248981, -0.08439449, 0.054038845, -0.03189413, -0.030197088) * inp_2_0_2; - result1 += M4(-0.033466425, 0.10196759, -0.095626526, 0.07750672, 0.00022055738, -0.09325691, -0.050707996, 0.056586623, -0.08612811, -0.11590215, -0.22665447, 0.33399478, -0.06329307, 0.045930825, -0.068951525, 0.06835973) * inp_2_1_2; - result1 += M4(0.024776116, 0.021026127, -0.028105164, 0.0050916364, -0.09857842, 0.028805552, -0.06412849, -0.04772835, -0.14270502, 0.15966728, -0.09957512, 0.18437898, 0.037753623, 0.0022287895, -0.06817548, 0.08576013) * inp_2_2_2; - result2 += M4(-0.09773101, -0.083638124, 0.015915675, 0.037321407, -0.025824798, -0.062344868, 0.04337082, 0.04353346, 0.11295499, 0.092779875, -0.03075963, -0.036546916, 0.03443457, -0.061659545, -0.025907286, 0.03063377) * inp_2_0_0; - result2 += M4(-0.003463296, -0.32710874, 0.059290912, -0.057675514, 0.07090947, -0.10469869, -0.008309559, -0.0140511505, 0.004234991, 0.0017305161, -0.08135361, -0.06811586, -0.02140393, -0.030262731, -0.003516095, -0.0058638826) * inp_2_1_0; - result2 += M4(-0.11429119, 0.030410007, 0.017309494, 0.020605864, -0.01690576, 0.02659472, -0.06980946, 0.1454113, -0.0746741, 0.14316331, -0.012830162, 0.0077552055, -0.032482646, 0.060703468, 0.012399931, -0.09102016) * inp_2_2_0; - result2 += M4(0.0373353, -0.04504154, 0.044082165, 0.04151822, 0.030439548, -0.021928376, 0.005703141, -0.0010203222, 0.23652598, 0.09467317, -0.09864125, 0.00016251435, 0.1479279, -0.2887944, -0.08453125, 0.05975312) * inp_2_0_1; - result2 += M4(-0.1600411, 0.01657166, -0.2625368, 0.024778998, -0.0024348153, 0.005550433, 0.023979673, 0.00028946716, 0.53089017, -0.5470358, 1.151881, 0.21618739, -0.10752466, -0.39587653, -0.06777163, -0.033691633) * inp_2_1_1; - result2 += M4(0.08088914, -0.1015657, -0.07861675, -0.05880834, 0.021207225, -0.08262008, 0.0016017101, 0.046255153, 0.04791101, -0.12029088, -0.033445388, 0.30895248, 0.1299536, 0.25706992, 0.020019807, -0.0028533922) * inp_2_2_1; - result2 += M4(0.012932398, -0.10085128, -0.058599696, -0.09168301, -0.0028670297, -0.15669617, 0.010602596, -0.024330465, 0.17120703, -0.027064787, -0.09168789, 0.0879708, -0.0369054, 0.023046482, -0.009917868, -0.012643957) * inp_2_0_2; - result2 += M4(0.032340806, -0.084275655, -0.11615984, 0.11185606, -0.18617584, 0.28060004, 0.26129773, -0.1733933, 0.23427643, 0.16177359, -0.06751977, -0.02436332, 0.0075132665, -0.05983134, 0.1085131, -0.03758189) * inp_2_1_2; - result2 += M4(-0.027732622, 0.057445332, -0.01888987, 0.048629854, 0.033736423, 0.020454168, 0.09024707, -0.10555541, 0.12919784, 0.19095561, -0.1169137, 0.099770315, 0.038938463, -0.022904132, -0.014569137, -0.040582947) * inp_2_2_2; - result3 += M4(-0.054706883, -0.039922073, -0.06596157, -0.17964248, -0.003424249, -0.005748681, 0.027610213, 0.12186429, 0.2822312, -0.066086546, -0.027956666, -0.09030067, 0.010700493, -0.006640334, -0.11485704, 0.063957594) * inp_2_0_0; - result3 += M4(-0.11394313, 0.08101133, 0.12564914, 0.002016189, -0.10683496, -0.06654697, -0.035573985, 0.09629592, 0.3774554, -0.0019534759, -0.08180878, -0.3297173, 0.18644527, 0.053783037, -0.010857387, -0.11200599) * inp_2_1_0; - result3 += M4(0.10685848, 0.13477919, 0.18000513, -0.13710892, 0.06397919, -0.03239808, 0.01904964, 0.07621383, -0.046431255, -0.063082166, -0.020249924, -0.031670824, 0.02878589, -0.0044232723, -0.03727988, -0.10065457) * inp_2_2_0; - result3 += M4(-0.107165694, 0.1112367, 0.01763373, -0.048964076, -0.20122465, -0.12261485, 0.11923064, 0.053708866, 0.08711855, 0.19448903, 0.18533143, -0.029868817, -0.11134685, -0.1896059, -0.006019193, 0.067785464) * inp_2_0_1; - result3 += M4(0.11420426, 0.034489788, 0.06976004, -0.00299815, -0.20067169, 0.16171898, -0.07167053, 0.48570108, -1.9286486, -0.5352155, -0.4550688, 0.33592495, 0.1421891, -0.31549984, 0.09939891, 0.017884107) * inp_2_1_1; - result3 += M4(0.02108471, 0.0722885, 0.10649415, -0.18366323, 0.14612745, -0.30531192, -0.07387951, 0.041490752, 0.26276252, -0.31754315, 0.22429828, 0.119029626, -0.13673559, 0.15490209, -0.10601153, 0.026194155) * inp_2_2_1; - result3 += M4(-0.10792611, -0.046302047, -0.07095287, 0.047879726, 0.029692257, 0.017284837, -0.007104502, -0.07225824, 0.008625063, 0.0573633, 0.018300707, 0.018189231, 0.108522005, -0.051468108, -0.00902461, -0.06501808) * inp_2_0_2; - result3 += M4(0.01175802, -0.16455695, 0.12516446, 0.035672557, 0.048895445, 0.111242615, 0.15600327, -0.14124428, -0.31171796, -0.10556961, -0.015908908, -0.096707, 0.05194631, -0.06584658, -0.033017363, -0.05928609) * inp_2_1_2; - result3 += M4(0.015096075, 0.12318488, -0.015330905, 0.083627045, 0.06879195, -0.062324554, -0.055387557, -0.04764459, 0.23428716, -0.11167302, 0.040662803, -0.07499284, 0.03428485, 0.07397758, -0.037897594, -0.01145231) * inp_2_2_2; - result4 += M4(0.017510364, 0.028500965, -0.0023482644, -0.025049662, -0.0051418897, 0.022152474, -0.006707218, 0.2005878, 0.09288361, 0.128834, 0.14137587, -0.6961991, -0.04131932, -0.029152503, -0.015301368, 0.09363768) * inp_2_0_0; - result4 += M4(-0.0058787656, 0.09416838, 0.11831742, -0.09254763, 0.11999516, 0.043331176, 0.030820616, -0.1625156, -0.20906718, 0.14413247, 0.24360566, 0.065527715, 0.1294064, 0.031146964, 0.09862755, 0.13562186) * inp_2_1_0; - result4 += M4(0.011601056, -0.08326356, -0.056967385, -0.094957046, -0.137989, 0.060098086, 0.05749218, 0.21745484, -0.16028999, 0.06265861, -0.031150289, 0.08664301, 0.055511508, 0.046081506, 0.0013723826, -0.039613716) * inp_2_2_0; - result4 += M4(0.040511325, -0.13295525, 0.17539033, -0.19684654, 0.067266785, 0.029737206, -0.021268636, 0.026693642, 0.09419293, 0.15612882, 0.23674965, 0.24895388, 0.12412438, -0.07473791, -0.20730048, -0.28912902) * inp_2_0_1; - result4 += M4(0.04855611, -0.11123489, 0.04191993, 0.29188502, -0.045989383, 0.024288593, -0.11705919, 0.062766425, -0.90156543, -0.16903566, -0.681379, -0.5961127, 0.23006761, -0.1957105, 0.196001, -0.33113804) * inp_2_1_1; - result4 += M4(0.10879482, -0.027438117, -0.0225213, 0.20010808, 0.015111748, 0.016969372, 0.18343872, 0.09160998, -0.37221363, 0.2057637, 0.12094917, -0.09230285, 0.083493456, 0.09629218, -0.10433298, -0.14295563) * inp_2_2_1; - result4 += M4(0.03750039, -0.033979055, 0.015348698, 0.028894622, -0.016372511, 0.04473799, -0.03333806, -0.13706154, -0.115692444, 0.114027, 0.025462236, -0.0016039468, -0.00060612865, 0.08134272, 0.054713767, 0.07733363) * inp_2_0_2; - result4 += M4(-0.07395442, -0.016613448, 0.01165356, 0.15730211, 0.061586965, -0.027941493, -0.014380737, -0.011010513, -0.06371909, 0.27379245, 0.03297611, -0.27423933, 0.032371026, 0.041752025, 0.09840379, -0.10064879) * inp_2_1_2; - result4 += M4(0.0162661, 0.05498028, -0.05886905, -0.26279074, -0.04331835, 0.07656946, 0.07854849, 0.36684152, 0.033693094, 0.09817469, 0.07155679, 0.36918533, 0.03279268, 0.018975604, 0.009984096, 0.079820424) * inp_2_2_2; - result5 += M4(0.12182077, 0.21847728, -0.0046413466, -0.06407343, 0.01450723, -0.13667277, 0.013250529, 0.04613264, -0.12967779, -0.02929753, -0.07736457, 0.072692886, -0.024917575, 0.03959165, 0.03534997, 0.087459736) * inp_2_0_0; - result5 += M4(0.279293, 0.037380226, -0.035911225, 0.18723704, 0.012157589, -0.14615256, -0.028158797, 0.10301396, 0.07882135, -0.08032393, -0.025705716, 0.037748683, 0.12421552, -0.0037972513, 0.03782937, 0.0931365) * inp_2_1_0; - result5 += M4(0.0073576444, -0.09368545, 0.026208209, -0.10542258, -0.050089777, 0.35239083, 0.0177101, 0.1321118, -0.09805767, 0.18451037, 0.023089848, -0.0150152845, -0.01388662, 0.12639794, -0.00983304, 0.02861114) * inp_2_2_0; - result5 += M4(0.09099993, -0.21540983, -0.025790522, 0.15847717, 0.03671181, 0.046661295, -0.018635347, -0.031488825, -0.019378329, 0.08968567, -0.01881884, 0.037910257, 0.044297468, -0.17373247, 0.11634929, -0.07599064) * inp_2_0_1; - result5 += M4(0.047580663, 0.062170632, 0.04983323, 0.1228457, -0.01474219, 0.04619151, 0.043591842, 0.048656996, -0.15116474, -0.34827608, 0.02038593, 0.038966157, 0.104122296, -0.1435356, 0.014768422, -0.014157364) * inp_2_1_1; - result5 += M4(0.06705305, 0.15722299, 0.024601525, 0.01615135, -0.06825991, -0.104783334, -0.041114714, -0.024452856, 0.11263068, -0.08564051, -0.01515697, -0.055098414, 0.024386097, -0.102736995, -0.0046367906, 0.05111853) * inp_2_2_1; - result5 += M4(-0.031967208, 0.03902238, -0.025391392, 0.05729851, -0.015589698, -0.04266715, 0.031329583, 0.12622948, 0.07298851, -0.37589043, -0.018888507, 0.09330013, 0.031107977, -0.027084034, 0.00042369805, -0.064627595) * inp_2_0_2; - result5 += M4(-0.012034988, 0.011306079, 0.0049288347, 0.18578719, 0.005527104, 0.2150625, 0.01955951, -0.0628881, -0.1636461, -0.043725044, -0.09261976, -0.07580746, 0.0042948625, -0.03207006, -0.008438101, -0.14138381) * inp_2_1_2; - result5 += M4(0.033120684, 0.036172107, 0.010499045, -0.079093084, 0.041096162, -0.048395768, 0.0050038584, 0.06568077, -0.002736496, 0.043840215, 1.6144777e-06, 0.109478846, 0.0038663126, 0.049076404, 0.0040984913, 0.004341915) * inp_2_2_2; - result6 += M4(-0.22376348, -0.02768542, -0.11227873, -0.016086327, -0.18898706, 0.15770875, -0.08290881, 0.053308785, 0.11959033, -0.3049852, 0.086789556, 0.0017167843, -0.15886979, 0.0262633, -0.1742211, 0.035142913) * inp_2_0_0; - result6 += M4(-0.0706679, -0.2500453, -0.076466784, -0.0029213992, -0.018896414, -0.11117806, 0.036507837, 0.006360434, 0.20155823, -0.177743, 0.2595663, 0.07736962, -0.051785607, 0.07014342, 0.004848042, 0.01758356) * inp_2_1_0; - result6 += M4(-0.01019695, 0.0921598, 0.015248275, -0.026151491, -0.02991921, -0.1514014, 0.1044475, 0.004982221, 0.09284082, -0.029922746, -0.05744574, 0.032918073, -0.011820695, -0.11421826, -0.023201661, 0.007900686) * inp_2_2_0; - result6 += M4(-0.15747052, -0.34241894, 0.08854093, 0.030884001, 0.08600946, -0.06054828, -0.007947212, -0.012339912, 0.14584821, -0.31765333, 0.34378016, 0.06681371, -0.22656837, 0.2305026, -0.10442033, -0.015533014) * inp_2_0_1; - result6 += M4(0.027214745, 0.0073768916, -0.27759916, -0.019973136, 0.18093777, 0.22183922, -0.3831195, -0.07913905, -0.6288382, -0.37669957, -1.1155688, 0.19399078, -0.35160574, 0.19515921, 0.46402898, -0.03014137) * inp_2_1_1; - result6 += M4(-0.09457541, 0.15793023, 0.22239889, -0.01863776, -0.20700763, 0.19668768, 0.10883348, -0.029164834, -0.2000494, -0.26687106, 0.25382882, 0.07287457, 0.1766413, -0.1504858, -0.06689694, -0.021177812) * inp_2_2_1; - result6 += M4(0.015299714, 0.088797, -0.008674544, 0.012428228, -0.09739925, -0.058856145, 0.09769565, 0.011597858, 0.10715798, 0.44013822, 0.005155119, 0.012026117, -0.011485617, 0.12339326, -0.026053008, 0.03302057) * inp_2_0_2; - result6 += M4(-0.07591144, -0.04138923, 0.0106659895, -0.053888846, -0.14146912, -0.086533636, 0.05129156, -0.0447509, -0.19063485, -0.4625407, 0.4010934, 0.14816421, -0.0307237, -0.052070756, -0.06732633, -0.019021453) * inp_2_1_2; - result6 += M4(0.12118231, -0.02447594, 0.0820717, 0.041873597, 0.03308087, 0.07207628, 0.050883543, -0.033140488, -0.15220298, 0.04388399, 0.15600014, 0.07456707, 0.0051656174, -0.11022899, 0.040933605, -0.004000539) * inp_2_2_2; - result7 += M4(0.018768936, -0.113984674, 0.008275246, 0.057292845, -0.087682165, 0.0018008465, -0.04231299, 0.024330761, -0.14654662, 0.08010914, 0.042141788, -0.14125036, 0.06806786, 0.028478326, -0.042382415, 0.072584756) * inp_2_0_0; - result7 += M4(0.29011762, 0.013961814, 0.031506743, 0.097222835, 0.13842899, 0.15297845, -0.006701976, 0.10237332, -0.014647567, 0.3619296, -0.057949867, -0.1212509, 0.013734455, -0.109178305, -0.023005519, 0.0006487688) * inp_2_1_0; - result7 += M4(-0.028938388, -0.040957943, 0.10092821, 0.1099564, -0.06883245, 0.05764322, -0.028914802, -0.045262545, -0.019564278, 0.21183391, -0.017430946, 0.113164954, -0.00028796677, 0.0884188, 0.011756936, 0.21798038) * inp_2_2_0; - result7 += M4(-0.030154236, 0.05226364, 0.008076227, 0.16013205, 0.13170913, -0.08119821, 0.004319583, 0.090488866, -0.035928346, -0.09288197, 0.015434756, -0.11354735, -0.1696286, 0.01571878, -0.005693015, -0.15371746) * inp_2_0_1; - result7 += M4(0.17633416, 0.0054831677, 0.13634282, 0.14854763, -0.0077004177, -0.027689138, 0.020961076, 0.015639687, 0.14949691, 0.5028173, -0.06888588, -0.17025658, 0.32457247, -0.01635595, -0.060790148, -0.34337762) * inp_2_1_1; - result7 += M4(-0.013690433, -0.070494615, 0.0632224, -0.042412903, 0.13076162, 0.06137961, 0.02019613, 0.19343561, -0.0065101776, 0.2205092, 0.008010204, -0.010256255, -0.013448987, 0.02424425, 0.019317945, 0.07480907) * inp_2_2_1; - result7 += M4(0.086449124, -0.10121849, 0.021988563, -0.0624533, 0.012140994, -0.022680577, -0.009042749, 0.16501774, -0.14845088, -0.025051992, -0.021094993, 0.04360526, 0.050099142, 0.070509054, -0.0053552357, -0.002835855) * inp_2_0_2; - result7 += M4(0.031469345, 0.060057763, -0.012578705, -0.051634308, 0.01626706, 0.036881324, 0.057347648, 0.14244531, -0.012803257, -0.12273447, -0.057380863, 0.07814734, 0.029005693, 0.05448206, -0.068080224, -0.034358907) * inp_2_1_2; - result7 += M4(-0.008003069, -0.083773986, -0.022300035, 0.38180095, -0.09274691, 0.009845493, 0.0321078, -0.13499229, -0.15276256, 0.046221983, -0.0038693594, -0.06621787, -0.020621838, 0.033226363, -0.002964519, 0.023044186) * inp_2_2_2; - const V4 inp_3_0_0 = inp[3][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_3_1_0 = inp[3][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_3_2_0 = inp[3][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_3_0_1 = inp[3][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_3_1_1 = inp[3][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_3_2_1 = inp[3][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_3_0_2 = inp[3][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_3_1_2 = inp[3][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_3_2_2 = inp[3][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.15760924, 0.047960464, 0.02090079, 0.06760643, 0.07582872, -0.0488979, -0.06257411, -0.12787932, 0.30660525, -0.004260419, 0.019929718, -0.1875874, -0.18303588, 0.012112686, -0.22047131, 0.29923755) * inp_3_0_0; - result0 += M4(-0.012183571, 0.00071223127, 0.04249445, 0.14846493, 0.20599112, -0.0021303776, -0.03397533, -0.28062215, 0.10013631, -0.013347548, 0.06231712, 0.14810403, 0.37498605, 0.036811125, 0.12489436, -0.18829498) * inp_3_1_0; - result0 += M4(-0.23672725, -0.0125947585, -0.026492061, 0.13231647, -0.36692703, -0.012457827, -0.043129772, 0.013807069, -0.21609902, -0.039523687, -0.112792894, -0.15064515, -0.28133082, -0.00048800482, 0.029818965, -0.009138019) * inp_3_2_0; - result0 += M4(-0.21697956, -0.073680215, -0.0061093997, 0.2612462, -0.47576633, 0.01593547, 0.053964898, -0.023163337, 0.461033, 0.008702128, -0.011087091, -0.21709946, 0.12857057, -0.045465183, -0.03102196, -0.032534063) * inp_3_0_1; - result0 += M4(-0.26045176, -0.011546758, -0.03763481, 0.12586267, 0.09612726, -0.113707595, 0.09530325, 0.053180937, 0.09957205, -0.045315623, 0.19305697, -0.17619513, -0.28647, -0.10327312, 0.15165664, 0.41665545) * inp_3_1_1; - result0 += M4(-0.28442252, 0.008860837, -0.039941598, -0.12124642, -0.23173697, -0.027802797, 0.059372023, -0.05313194, 0.057074774, 0.010628082, -0.080555975, -0.12055212, 0.13843666, 0.0034123235, -0.122994885, -0.3366431) * inp_3_2_1; - result0 += M4(0.024571182, -0.012291268, 0.021537118, -0.07508749, 0.20497161, -0.045254435, 0.0041301176, 0.04563799, -0.19684622, -0.019461947, 0.047954667, -0.015463163, 0.36007434, 0.016322576, -0.2014826, -0.14237687) * inp_3_0_2; - result0 += M4(-0.19408058, -0.0053576278, -0.019969603, -0.26042855, 0.23845097, -0.002370488, 0.01311263, -0.16111588, 0.020526158, -0.013044875, -0.009923044, 0.21634912, -0.40966806, 0.028217286, 0.10532484, -0.12033584) * inp_3_1_2; - result0 += M4(0.35787514, -0.05175086, 0.0061833626, 0.02188374, 0.055070926, -0.004343505, 0.00512118, 0.025276197, -0.28596824, -0.039996836, -0.030255621, -0.16256313, 0.15470335, -0.0030731352, -0.09761686, -0.048578013) * inp_3_2_2; - result1 += M4(0.030269505, 0.05313927, 0.0900497, 0.021382734, 0.041997302, -0.015294686, 0.005509635, 0.018277923, -0.06541374, 0.14569968, 0.004565544, -0.085308075, 0.037223835, -0.14620629, 0.078455664, -0.13705112) * inp_3_0_0; - result1 += M4(-0.07317282, -0.01039678, -0.20356089, -0.04653774, 0.043052435, 0.1390732, -0.048795056, -0.22136942, -0.14027281, -0.061293807, -0.06259539, 0.061767925, 0.1817419, 0.033424173, 0.08089852, -0.14268872) * inp_3_1_0; - result1 += M4(-0.012015721, 0.108846515, 0.00205397, -0.066627376, -0.008776867, 0.088584155, -0.11168849, 0.009856547, 0.040576454, 0.038265012, -0.09142718, -0.037887905, -0.0041709887, -0.1705879, -0.025813242, 0.06719597) * inp_3_2_0; - result1 += M4(-0.14204685, 0.08252016, -0.05191239, -0.097264856, 0.09825899, -0.052238807, -0.10206025, -0.019147256, -0.1631919, -0.10584559, 0.04844253, -0.21911615, 0.01628851, 0.14188991, -0.19521594, -0.028811593) * inp_3_0_1; - result1 += M4(0.032375127, 0.16556239, 0.24684988, -0.1267481, -0.010470792, -0.15870236, 0.2702302, -0.083337374, -0.13270324, -0.108389854, 0.051165666, -0.15359508, 0.39035353, -0.14887662, -0.20087661, -0.40300372) * inp_3_1_1; - result1 += M4(0.07352536, -0.055987515, -0.18740246, -0.105981976, 0.029204996, -0.032423116, -0.0590406, 0.10587429, -0.117978685, 0.1324927, 0.04517691, 0.09949094, 0.15219998, 0.17169212, -0.05856976, 0.14134488) * inp_3_2_1; - result1 += M4(0.06601263, -0.095155135, -0.1231743, -0.057610977, -0.08972315, 0.020426668, 0.061661426, -0.04492825, -0.018337008, 0.037661776, -0.008194812, -0.05080876, -0.32499552, 0.11729784, 0.043010782, -0.07244989) * inp_3_0_2; - result1 += M4(-0.08128592, -0.04878475, -0.038047466, -0.13205822, -0.03453508, -0.16208741, 0.07186608, 0.010103015, -0.08402252, 0.12431279, 0.056445383, -0.072859846, -0.12120106, -0.09872974, -0.07159561, 0.05721752) * inp_3_1_2; - result1 += M4(-0.06125666, 0.1410547, -0.18988615, -0.20223106, -0.037440732, 0.04115697, -0.030895006, 0.016387219, -0.102741584, -0.13980465, -0.08078597, 0.05109586, -0.23364618, -0.07150922, -0.09714691, 0.006241243) * inp_3_2_2; - result2 += M4(-0.0057846955, 0.09248949, 0.002131779, 0.044393755, 0.0068600625, -0.004875266, -0.04589404, 0.0068208445, -0.074027106, -0.12207447, 0.0303748, -0.019455263, 0.012844085, -0.11627408, 0.15674901, 0.019601291) * inp_3_0_0; - result2 += M4(0.020617682, -0.06891865, 0.05553492, -0.045082808, 0.045630198, -0.23754476, 0.1368821, -0.013708891, 0.012397358, 0.12261142, 0.005207293, -0.023245825, 0.16379282, -0.093727484, -0.10903255, -0.3651783) * inp_3_1_0; - result2 += M4(-0.05922383, -0.043139, 0.052485894, -0.05161422, -0.060119826, -0.0909186, 0.023347747, 0.010784127, 0.0063509303, -0.0065207896, -0.033549316, 0.050097786, 0.047399655, -0.16733454, 0.09525696, 0.04477655) * inp_3_2_0; - result2 += M4(-0.086433604, 0.04353153, 0.07458106, -0.055649266, -0.018871492, 0.14187597, 0.0011884881, 0.008380044, 0.005224666, 0.27017912, 0.08787532, 0.00032967757, -0.099921204, -0.03934958, 0.25612912, -0.06727076) * inp_3_0_1; - result2 += M4(-0.12531821, 0.05249024, 0.14925678, -0.056612886, 0.13688472, -0.1675808, 0.19130981, 0.124826595, 0.0744884, -0.15014344, 0.13459297, 0.054803196, 0.13527633, -0.418478, 0.17535235, 0.08292585) * inp_3_1_1; - result2 += M4(0.018912109, -0.055445336, -0.1521542, 0.05210616, -0.021554273, 0.021522356, -0.002023469, -0.020506695, -0.09324081, -0.25511125, 0.020885978, 0.08590456, -0.13587472, -0.07667594, 0.07084441, 0.12330408) * inp_3_2_1; - result2 += M4(-0.016046973, 0.10932976, 0.042626463, -0.02646209, -0.042434603, 0.07206245, 0.08700053, 0.011326262, -0.16612363, 0.03495809, 0.036526266, -0.08463763, 0.03812727, 0.1492312, 0.16300009, -0.098883756) * inp_3_0_2; - result2 += M4(-0.10715438, -0.011413278, 0.029942315, 0.14921872, 0.005278277, 0.15570074, 0.05892254, 0.020278363, 0.09583797, -0.05894854, 0.096421584, -0.023375526, -0.031743173, 0.11322802, 0.13504972, -0.046961695) * inp_3_1_2; - result2 += M4(0.02222299, 0.2492616, -0.1020794, 0.08534804, -0.013791944, -0.0609479, -0.017196892, 0.10386011, -0.116722256, 0.038206868, -0.09874045, 0.012704079, -0.058191627, 0.022272803, 0.049176488, 0.023672128) * inp_3_2_2; - result3 += M4(-0.12727304, -0.03872136, 0.03348005, 0.17004946, 0.10149902, -0.002852172, -0.001787852, 0.0918455, -0.07009288, -0.07261116, 0.1689178, 0.13606927, -0.17161168, 0.18294515, -0.03934613, -0.059554845) * inp_3_0_0; - result3 += M4(-0.04524674, -0.042160638, -0.09105489, -0.12506881, 0.26763135, -0.00045403102, -0.022939345, -0.023962554, 0.059356302, -0.09339443, -0.07276014, -0.003736477, -0.09621465, -0.036373712, -0.06419144, -0.22979052) * inp_3_1_0; - result3 += M4(0.104379244, 0.018258547, 0.11657896, -0.055354603, 0.13987745, -0.084343486, 0.10941287, -0.023307474, 0.07259301, -0.11070302, 0.19706027, 0.17299086, 0.16787086, -0.07460716, 0.06392434, 0.10383735) * inp_3_2_0; - result3 += M4(0.10742718, 0.04052433, -0.050332524, -0.08068601, 0.052982684, 0.11326599, 0.092539065, -0.0017665294, -0.2901418, -0.14781544, 0.14606935, 0.01884921, -0.49575192, -0.115105286, -0.14595547, 0.20378001) * inp_3_0_1; - result3 += M4(-0.18254188, 0.049285628, -0.011838124, -0.015445954, -0.09415515, 0.19572638, -0.2605621, 0.38153547, -0.27477968, -0.097902745, -0.06180139, 0.022643102, 0.07338324, -0.2593198, -0.030185107, 0.31238717) * inp_3_1_1; - result3 += M4(-0.12371014, -0.07401527, 0.2971653, -0.057473782, -0.19717236, 0.085512035, 0.027934665, 0.053236466, 0.19850609, -0.3123797, 0.36208943, 0.004983676, 0.08480279, -0.16768536, 0.11793187, 0.086695515) * inp_3_2_1; - result3 += M4(-0.0564916, 0.049279653, 0.056422867, -0.069470875, 0.18447359, 0.039281942, 0.032726064, 0.005642192, -0.15902433, 0.090588205, 0.033808295, -0.07685364, -0.05287226, 0.07315046, 0.075793564, -0.046660952) * inp_3_0_2; - result3 += M4(-0.13325062, -0.33083907, 0.16850093, 0.035707254, 0.0775299, 0.01700317, -0.035984658, -0.18400493, -0.06722389, -0.06420282, -0.006616318, 0.24382734, -0.009154238, 0.020785797, 0.06945267, -0.19015832) * inp_3_1_2; - result3 += M4(-0.14183734, 0.22733642, 0.120888, 0.048919536, -0.023554778, 0.05868436, 0.09101294, 0.084366545, 0.09987171, -0.1091919, 0.089741096, -0.111628294, 0.10203797, 0.1622011, -0.028628161, 0.013719203) * inp_3_2_2; - result4 += M4(-0.06824077, 0.045560114, -0.06982452, -0.12034702, -0.10667076, -0.017393274, -0.01796987, -0.022782445, 0.06497325, 0.10256078, 0.09997452, 0.26926658, 0.118662626, -0.00031228847, -0.020819755, -0.120698266) * inp_3_0_0; - result4 += M4(0.068550535, -0.009562522, 0.116457775, -0.024254156, 0.053754672, -0.02675906, 0.07553017, -0.006894508, 0.0072773364, 0.053113706, 0.004066981, 0.250769, 0.10634329, -0.09587915, 0.020293433, -0.09660963) * inp_3_1_0; - result4 += M4(-0.12202113, 0.01783512, 0.027556479, 0.11003897, 0.00013091505, -0.024168188, 0.10288599, 0.32036293, -0.15263876, -0.022598162, -0.021583328, 0.2557127, 0.0043488834, -0.081838176, -0.043113552, 0.087244205) * inp_3_2_0; - result4 += M4(0.034785084, -0.018652225, 0.1124801, -0.1356949, -0.03863339, -0.05173304, 0.0011030866, 0.03709264, -0.04604167, 0.08974801, 0.18813299, 0.38519415, 0.122690216, 0.055458993, 0.04869066, 0.43189034) * inp_3_0_1; - result4 += M4(-0.088201955, 0.098546535, -0.05186971, 0.07326939, -0.15767768, 0.053601146, -0.15644167, -0.04742692, 0.012966429, -0.051017437, -0.09969341, 0.08797516, -0.028582862, -0.37877044, -0.03699933, -0.24970998) * inp_3_1_1; - result4 += M4(-0.010491656, -0.08337139, -0.04871005, 0.10547856, 0.0029359867, 0.03104495, -0.007580121, 0.1267107, -0.08203035, -0.027920675, 0.1476587, 0.052162286, -0.053200398, -0.04999447, 0.025107289, -0.36250913) * inp_3_2_1; - result4 += M4(0.102316804, -0.04371823, 0.14202558, -0.021137211, -0.0047396864, -0.01713967, 0.05464051, 0.13441657, -0.07471296, 0.015289168, -0.020450303, 0.07558217, -0.0060191164, 0.094135694, -0.037484687, -0.2452427) * inp_3_0_2; - result4 += M4(-0.01798727, -0.11589404, -0.0033997835, 0.12979278, 0.13267997, -0.10271554, 0.022486987, 0.019261887, -0.09560659, -0.022984587, -0.15639876, 0.00416461, 0.044072, -0.06151843, -0.015756266, -0.26175088) * inp_3_1_2; - result4 += M4(-0.14426339, -0.02135447, -0.10129251, 0.1696466, 0.043867484, -0.03425569, -0.017886246, -0.043950845, -0.03494037, -0.039110824, 0.04558488, 0.34405917, 0.04283169, 0.061876703, 0.06006067, 0.43598232) * inp_3_2_2; - result5 += M4(-0.036582272, -0.19764613, 0.030136405, 0.08068242, -0.054624517, -0.016004888, 0.008297556, -0.120273516, 0.027510054, 0.0633942, 0.0017983981, 0.08890685, 0.049979176, -0.034040436, -0.042257078, -0.08608427) * inp_3_0_0; - result5 += M4(0.045788903, -0.052763864, -0.029207703, 0.11389494, 0.14432938, -0.14875683, -0.08195435, -0.09983363, 0.037449583, 0.08922273, 0.025937792, 0.014834373, 0.2572998, -0.31669825, 0.042345945, 0.22196929) * inp_3_1_0; - result5 += M4(0.07800574, -0.083980024, 0.014340714, 0.08434588, 0.07673679, 0.22401597, -0.0011256889, 0.05171072, -0.05079823, 0.1574182, 0.008722395, 0.07804585, -0.0031998775, 0.22399874, 0.019436238, 0.106947124) * inp_3_2_0; - result5 += M4(0.024545258, -0.20017663, 0.02265897, 0.12221234, 0.0054654093, 0.15016551, -0.079586744, -0.0540791, -0.043907683, 0.1410343, -0.032729406, 0.10824938, -0.053101026, 0.23588923, 0.00021924036, -0.043321345) * inp_3_0_1; - result5 += M4(0.05359711, -0.15402356, -0.015311813, 0.4418634, -0.07553604, -0.12741329, 0.033787873, 0.03498914, 0.0444739, 0.2882938, 0.083968885, 0.18181352, 0.060096532, -0.29860026, 0.0027184114, 0.06680144) * inp_3_1_1; - result5 += M4(0.015892051, 0.040309608, -0.01597526, 0.19112894, 0.011207365, 0.04359262, -0.004702018, -0.030943524, -0.02734472, 0.22938496, -0.011131867, 0.017434826, 0.06567969, -0.14190741, 0.0014702528, 0.017861953) * inp_3_2_1; - result5 += M4(-0.04230557, -0.16947357, -0.05892952, 0.1159601, 0.041287005, 0.00275906, -0.0363116, -0.02215588, -0.031825166, 0.075529434, 0.015940346, 0.08986772, -0.045640413, -0.16460262, -0.047036666, -0.0002018678) * inp_3_0_2; - result5 += M4(-0.04329814, 0.06994544, 0.020370418, 0.3517883, -0.04978522, 0.009084049, -0.11608822, -0.045324307, -0.04173486, 0.1457599, -0.018315863, 0.05068919, -0.11161415, 0.14506331, -0.040608473, -0.08510906) * inp_3_1_2; - result5 += M4(0.05445378, -0.3787924, 0.0162932, 0.21399415, 0.047355358, 0.20365563, -0.01598358, -0.014156216, -0.029610746, -0.057485145, -0.014974629, -0.10042361, 0.037751935, 0.08001776, -0.029483156, 0.024042644) * inp_3_2_2; - result6 += M4(-0.14029728, 0.007800397, -0.1017625, 0.03436369, 0.019980827, 0.28331742, 0.04962964, 0.01201151, -0.06442942, -0.28295124, -0.01464999, -0.0061826245, -0.0014868154, 0.12941073, -0.015818572, 0.07231077) * inp_3_0_0; - result6 += M4(-0.028670127, 0.06134016, -0.023940355, 0.009463263, 0.22930348, -0.11975048, 0.15308122, -0.040625464, -0.017681524, -0.04175566, -0.07776877, -0.020140294, -0.07084959, 0.08837346, -0.019551875, 0.1152271) * inp_3_1_0; - result6 += M4(-0.10078732, -0.041193914, -0.1457461, 0.015043972, -0.008332139, 0.03325155, 0.003751003, -0.01944841, -0.07209256, 0.06046033, -0.14126936, -0.022426968, -0.17396335, 0.03038363, 0.032174557, -0.0031591952) * inp_3_2_0; - result6 += M4(0.002469801, -0.098493345, 0.053741783, -0.019515505, 0.1100399, 0.32152438, 0.1326515, -0.011126707, 0.032569695, -0.7368324, 0.108406894, -0.031007841, 0.08969517, 0.29900193, 1.4868948e-05, 0.072839566) * inp_3_0_1; - result6 += M4(-0.21128038, -0.13120322, -0.032644246, 0.00324925, -0.018691491, 0.1136227, -0.3865382, 0.19568667, -0.11050097, -0.3560613, -0.29030567, 0.027956672, -0.00716901, 0.22507894, -0.23171026, -0.07523809) * inp_3_1_1; - result6 += M4(-0.08728784, -0.046828203, 0.08713391, -0.013409759, 0.021107098, -0.07741489, -0.06394956, -0.027367137, -0.24119878, 0.11484531, 0.21255313, -0.06082504, -0.0015833984, 0.27216125, 0.21401358, -0.057550173) * inp_3_2_1; - result6 += M4(-0.06035632, -0.08663007, 0.121116675, 0.018298421, -0.043508522, 0.17602, -0.033767965, -0.0036335574, 0.040026486, -0.05624009, -0.06539022, -0.0013070846, -0.19054787, 0.24653414, 0.09537157, -0.0886323) * inp_3_0_2; - result6 += M4(-0.2658681, -0.11941585, 0.059723716, -0.059803277, -0.28133035, -0.24004766, 0.16334037, 0.007080535, 0.15242337, 0.17176174, -0.13631015, -0.0037445412, -0.06433816, -0.22409731, 0.20351157, -0.046172652) * inp_3_1_2; - result6 += M4(0.10538034, -0.00059803535, -0.07368597, -0.016413705, 0.034108743, -0.021447053, -0.045838155, -0.07535322, -0.070473075, -0.019677673, -0.0018438093, -0.010567838, -0.027843848, -0.0042862636, 0.022207147, -0.07575565) * inp_3_2_2; - result7 += M4(-0.017820748, -0.07907439, -0.0041663167, -0.021866238, -0.021852316, -0.047443412, -0.022040658, -0.08520063, -0.043359432, 0.07439143, -0.019313063, 0.09276295, 0.07444801, -0.03607007, 0.032041322, 0.10603184) * inp_3_0_0; - result7 += M4(-0.049744662, -0.06689165, 0.01152543, -0.00012983226, -0.040929936, 0.16829343, 0.026032055, -0.05569227, 0.11458175, 0.0068659186, 0.006898842, -0.055040408, 0.12012738, -0.29391375, -0.03514166, -0.032938026) * inp_3_1_0; - result7 += M4(-0.022518452, -0.04629494, -0.0056385514, -0.03925224, 0.010636268, -0.019644653, 0.0015691512, 0.007060033, -0.10977206, -0.01470043, -0.00801839, 0.21060064, -0.03411561, 0.09588929, 0.043544658, -0.0077755214) * inp_3_2_0; - result7 += M4(-0.12734523, -0.01794953, -0.016942397, -0.086910956, -0.11782465, 0.023753917, -0.014003703, -0.010442749, 0.2195703, -0.17652006, 0.0008428775, 0.2272496, 0.044893384, -0.0544283, 0.030624438, -0.11127488) * inp_3_0_1; - result7 += M4(0.0028106892, 0.10247177, -0.0577325, -0.04390579, 0.015907703, 0.16064352, -0.015220857, 0.06326538, 0.06391053, 0.08445814, -0.052869804, 0.2764343, 0.38056007, 0.2933384, -0.004656651, -0.04408798) * inp_3_1_1; - result7 += M4(-0.0053042006, -0.09373419, -0.009340792, 0.2241429, -0.03677756, -0.05308411, -0.0868006, -0.3238891, 0.11655137, 0.13693143, -0.09173906, 0.32072493, 0.0319014, -0.09812677, -0.060307197, 0.070027635) * inp_3_2_1; - result7 += M4(0.047534734, -0.0792744, 0.022309566, -0.0354254, -0.02632479, -0.0025576483, -0.011144383, 0.03632551, 0.042645402, 0.0059825303, -0.014669849, -0.0366861, 0.0038625658, 0.059069928, -0.008493317, 0.094133936) * inp_3_0_2; - result7 += M4(-0.031022485, 0.019390898, -0.06377862, 0.015881566, -0.072139785, -0.08293881, -0.039623436, -0.117546186, 0.104892224, -0.058465928, -0.00048224948, 0.22950256, 0.21309316, 0.037248574, -0.014460918, 0.09527622) * inp_3_1_2; - result7 += M4(-0.06987216, -0.101235725, -0.004237969, 0.27104288, -0.10198061, 0.018746117, -0.08679459, -0.03403583, -0.016677173, -0.0015841459, -0.02292318, 0.1409817, -0.12211757, 0.031181343, -0.07368975, -0.08078957) * inp_3_2_2; - const V4 inp_4_0_0 = inp[4][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_4_1_0 = inp[4][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_4_2_0 = inp[4][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_4_0_1 = inp[4][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_4_1_1 = inp[4][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_4_2_1 = inp[4][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_4_0_2 = inp[4][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_4_1_2 = inp[4][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_4_2_2 = inp[4][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.20681342, 0.013344673, -0.004206698, -0.17991008, 0.35219443, -0.043391768, 0.1045234, 0.16464987, -0.106455736, 0.01156089, -0.0007367429, -0.21017663, 0.034747705, -0.008789826, 0.098384626, -0.10347766) * inp_4_0_0; - result0 += M4(0.14036131, -0.016072493, -0.095953144, -0.29133356, 0.410188, 0.041006375, -0.0066214697, 0.23510191, -0.029000418, 0.07298436, -0.011023793, -0.35249296, -0.124198884, -0.020613188, 0.00095346203, -0.0014817455) * inp_4_1_0; - result0 += M4(-0.17882694, -0.006173562, 0.011974798, -0.01258586, 0.82104653, 0.022855163, -0.018999735, -0.027516449, -0.04104934, 0.039245505, -0.02051981, -0.0351622, -0.17827336, -0.01783418, -0.017741706, -0.07445565) * inp_4_2_0; - result0 += M4(-0.0043267203, 0.029902402, 0.12020521, -0.13760486, -0.3544258, 0.00885506, 0.01593106, 0.023247462, 0.5252352, -0.00990558, -0.065511696, -0.003923747, 0.21884435, 0.006646204, -0.036441635, -0.12167094) * inp_4_0_1; - result0 += M4(-0.19587125, 0.15332024, -0.007628111, -0.12497826, 0.13647765, -0.05805685, -0.028896019, 0.07678725, -0.18065271, 0.06753668, -0.05890004, 0.07912103, -0.08655623, 0.089412846, 0.015385654, -0.43461674) * inp_4_1_1; - result0 += M4(0.30000612, -0.015426071, 0.030316653, -0.030517058, -0.12784587, -0.028616153, 0.06484108, 0.021227952, 0.5306697, 0.033668917, -0.028592069, 0.20790349, 0.11931481, 0.040739413, 0.027312903, -0.10615667) * inp_4_2_1; - result0 += M4(0.06445307, -0.046594616, 0.054176476, 0.047469918, 0.688078, -0.02218663, 0.011457724, -0.0395887, -0.17648172, 0.00494519, 0.07913334, -0.026913144, -0.42849457, -0.0032284395, 0.02551588, 0.013633696) * inp_4_0_2; - result0 += M4(-0.20884176, -0.031843845, -0.025374953, 0.036168784, 0.43156898, 0.013540865, -0.1118441, -0.033403747, -0.02859794, 0.044623032, -0.044914287, 0.20317495, -0.2380772, -0.008702688, -0.039549034, 0.106622614) * inp_4_1_2; - result0 += M4(0.07463475, -0.013605454, 0.027902307, -0.010363897, 0.059570972, -0.017647037, 0.0022913297, 0.00054354157, -0.010827009, -0.022364195, 0.02792924, 0.10160411, -0.21789482, -0.026319755, 0.066526085, -0.09612905) * inp_4_2_2; - result1 += M4(-0.0926313, -0.021387609, -0.1680602, 0.11034319, 0.09148119, -0.1869614, 0.07984306, 0.029543845, 0.13238718, 0.10310686, -0.07705615, -0.028235305, 0.00263834, 0.060256265, -0.14212468, 0.11381989) * inp_4_0_0; - result1 += M4(0.10885915, 0.21332239, 0.03109003, -0.15602481, 0.0954414, -0.26396552, 0.04036705, 0.065351136, 0.12345491, -0.09016005, 0.031611644, 0.019705418, -0.037819423, -0.10980254, -0.09503322, 0.0045652343) * inp_4_1_0; - result1 += M4(-0.025410544, 0.09303107, 0.15869103, -0.05153773, -0.07684977, 0.014891361, -0.07104982, -0.01849534, 0.1078951, -0.0854724, -0.063091405, 0.05046764, 0.0528177, -0.04387276, -0.09800818, -0.009853266) * inp_4_2_0; - result1 += M4(0.09103936, -0.1366018, 0.0010859475, -0.276985, 0.03767082, -0.06929285, -0.06858404, -0.087866664, -0.12091212, 0.07887694, 0.015587555, -0.0968037, 0.04922227, -0.008069498, -0.021905474, 0.07322834) * inp_4_0_1; - result1 += M4(-0.03098312, -0.0042756754, 0.49258825, 0.25826928, 0.029611219, 0.025948951, 0.20378374, 0.10462955, -0.07112062, 0.22036004, 0.16671668, 0.0494594, 0.13238645, -0.32905, -0.022128513, 0.09875806) * inp_4_1_1; - result1 += M4(0.014162202, -0.1870306, 0.04858129, -0.017349336, 0.073223494, -0.06616752, -0.041784626, -0.17836837, 0.009250486, -0.03746421, -0.0059156436, 0.07110566, -0.021174982, -0.24135038, -0.017514437, -0.021989588) * inp_4_2_1; - result1 += M4(0.02873899, 0.04027821, 0.014257634, -0.1809003, 0.042342864, 0.036851335, -0.04457742, 0.054093167, 0.037104655, -0.09191377, -0.07037449, 0.08543793, 0.004657296, 0.012607581, -0.19389279, -0.039797064) * inp_4_0_2; - result1 += M4(-0.0034391896, 0.10445307, -0.0330271, -0.059312534, 0.007632704, 0.098721474, 0.043736648, -0.012942515, 0.010863448, -0.018015651, 0.06543012, -0.014377758, -0.051874008, 0.23350376, -0.07487084, -0.12352559) * inp_4_1_2; - result1 += M4(0.10607156, -0.03502398, 0.07290872, 0.10166511, -0.039487135, -0.004046991, 0.03905863, 0.07820799, 0.0759709, -0.011947899, -0.028536672, -0.07387394, -0.05433615, 0.040235396, -0.12897988, -0.00039704383) * inp_4_2_2; - result2 += M4(0.01724732, 0.00059051026, 0.018423174, -0.032880608, 0.0185184, 0.058057584, -0.20471819, 0.040474422, 0.015729912, 0.14201586, -0.052477922, -0.01093188, 0.07656678, -0.031345308, -0.024555506, 0.06456522) * inp_4_0_0; - result2 += M4(-0.088764004, -0.32013062, 0.013065541, -0.022564547, 0.0672744, 0.08850182, -0.2023333, 0.07495169, 0.009096206, 0.054456443, -0.06407676, 0.0003899025, -0.11116054, 0.0057358746, -0.032888874, 0.056288026) * inp_4_1_0; - result2 += M4(-0.0695208, 0.122868404, -0.004135917, -0.08476925, 0.038628124, 0.08645101, 0.019862888, -0.033965778, -0.0059723547, -0.0334818, 0.018151164, 0.060123548, 0.08824397, 0.035152648, -0.032221656, 0.05810676) * inp_4_2_0; - result2 += M4(0.061016705, 0.18776289, 0.016046483, -0.076141916, -0.13247944, 0.10045944, 0.025758984, -0.027005866, -0.059147052, 0.024662428, -0.0511877, 0.04573293, 0.24162203, 0.047546126, -0.10652658, 0.0963501) * inp_4_0_1; - result2 += M4(-0.25134015, 0.03946899, 0.026117135, 0.0043091215, -0.1281279, 0.13378239, 0.010503223, 0.04634462, -0.17760277, 0.03997051, 0.10637014, -0.11037939, 0.42272457, 0.066121764, -0.19010974, 0.056577493) * inp_4_1_1; - result2 += M4(-0.071049325, 0.0015058648, 0.030523507, -0.011936356, 0.014448326, 0.078122795, -0.029162532, -0.036387004, -0.035965458, 0.016361298, 0.0118609285, -0.04687245, 0.13604605, -0.04742751, -0.07688974, 0.023891436) * inp_4_2_1; - result2 += M4(-0.10560176, 0.19540517, -0.09777601, -0.007874992, -0.0055725793, 0.10141543, 0.007985673, 0.058361314, -0.09252284, -0.0019231646, -0.070134856, 0.033134688, 0.12601757, 0.06648126, -0.0026236144, -0.01176292) * inp_4_0_2; - result2 += M4(-0.15014084, -0.12547906, -0.0950119, 0.12228593, 0.000340574, 0.081010155, -0.049388677, 0.06499506, -0.16557841, -0.10830031, 0.037199948, 0.0041105472, 0.15436831, -0.1978048, -0.11099529, 0.008457659) * inp_4_1_2; - result2 += M4(-0.085923, 0.027693903, -0.12673432, 0.14113359, -0.025465855, 0.04830529, -0.0095938835, -0.006582449, -0.085088804, 0.015041231, 0.007399525, -0.11164153, 0.06122301, -0.026722789, -0.08156082, -0.0980155) * inp_4_2_2; - result3 += M4(0.084927514, -0.011755474, -0.011543305, -0.079523616, 0.021866607, -0.06990276, 0.0006798228, 0.17699938, 0.10217204, 0.0010509423, 0.09679894, 0.1013164, 0.0035159194, -0.08843916, -0.03139182, -0.004482227) * inp_4_0_0; - result3 += M4(0.23934844, 0.06192733, -0.018485537, -0.014309947, -0.023293488, -0.26615372, -0.029004658, 0.08979738, -0.18839388, 0.032273833, 0.013244138, 0.14338571, 0.23616736, -0.19947723, 0.08961258, -0.0005000751) * inp_4_1_0; - result3 += M4(-0.085695274, -0.032210942, 0.0076569337, -0.13976146, -0.5089056, 0.0039282995, -0.303134, 0.09279533, -0.1546382, -0.067971185, -0.011669409, -0.0048010633, -0.016865984, 0.042527746, 0.029878289, -0.03485112) * inp_4_2_0; - result3 += M4(-0.079639785, 0.117471635, 0.11456533, -0.05696221, 0.18491802, 0.021901427, 0.18051381, -0.0034645917, 0.19019675, 0.029014578, 0.017725732, 0.043280654, 0.10400858, -0.015661504, -0.0013136043, -0.0026772844) * inp_4_0_1; - result3 += M4(-0.07839406, -0.18860908, -0.0014505982, -0.05782346, -0.017683616, 0.0937928, -0.02313592, 0.06566545, 0.027814634, 0.22000265, 0.11311943, -0.14151987, -0.09919491, -0.08070248, -0.030504322, -0.23762739) * inp_4_1_1; - result3 += M4(-0.14218381, -0.023902083, 0.070193134, 0.0012880628, -0.056068655, 0.0026810577, -0.022997843, -0.0014522339, -0.10140024, -0.03209992, -0.12232685, 0.031904325, 0.01758258, 0.19561775, 0.0570951, -0.007977597) * inp_4_2_1; - result3 += M4(-0.07517223, 0.063577384, 0.0054484536, 0.08069781, 0.11587418, 0.11252923, 0.040454492, 0.044268828, 0.15077472, -0.06820554, 0.102592066, 0.060817022, 0.09053725, 0.08332218, 0.09281869, -0.009812654) * inp_4_0_2; - result3 += M4(-0.09386124, -0.28978562, -0.07020772, 0.047147263, 0.09213972, -0.16672625, 0.014799687, -0.060886577, 0.001712825, 0.1016565, 0.010184807, -0.037394047, -0.070279054, -0.031767633, -0.1444617, 0.184071) * inp_4_1_2; - result3 += M4(-0.09502639, 0.004841133, 0.043950874, 0.014777767, 0.09863218, 0.052004296, 0.069972895, -0.07483713, 0.061665595, -0.13627902, -0.07996064, -0.03234029, 0.1173119, 0.07342188, -0.075642735, 0.043601625) * inp_4_2_2; - result4 += M4(0.08088315, -0.0022319464, 0.10316316, -0.38075605, -0.047577336, 0.013704599, -0.13612248, 0.009411836, -0.09046163, 0.031380847, -0.1352084, 0.23435928, -0.0780932, -0.015269766, 0.14616361, 0.12038367) * inp_4_0_0; - result4 += M4(-0.10116545, -0.12079635, 0.10265723, 0.2251776, -0.15257248, 0.028914303, -0.067213066, -0.1228592, 0.16053902, -0.022630328, -0.07577232, -0.033632904, -0.035931364, -0.027356818, 0.11866236, -0.18661791) * inp_4_1_0; - result4 += M4(-0.0076436484, -0.095638566, -0.055657234, 0.1771628, -0.016659683, 0.08660075, -0.16813079, -0.08762449, 0.05365109, -0.0041014818, 0.011911179, -0.23620509, -0.036850814, 0.011496934, -0.01423201, 0.0697537) * inp_4_2_0; - result4 += M4(0.024410265, -0.09982075, 0.11399998, 0.20170143, 0.025329078, -0.04215489, 0.087120734, 0.17876902, -0.061341666, -0.01565028, -0.1763098, -0.037937157, -0.1112037, 0.035861477, 0.1087042, -0.08933381) * inp_4_0_1; - result4 += M4(-0.047669545, -0.3145571, 0.1730891, 0.04647559, -0.2516256, 0.19400719, -0.004623076, -0.19461405, 0.16035143, 0.009048728, -0.01429872, -0.059179403, 0.032883756, 0.20671901, -0.043562584, -0.19190258) * inp_4_1_1; - result4 += M4(-0.12963866, -0.08688597, -0.053317796, -0.03347254, -0.11368327, 0.012069396, -0.04203105, -0.016310094, 0.11981618, -0.07224036, 0.009621005, -0.025100108, 0.057326112, 0.09295209, 0.058545496, -0.005783077) * inp_4_2_1; - result4 += M4(0.039920684, -0.028615441, -0.0019039186, 0.024154298, 0.0029265247, 0.012088947, 0.0876638, 0.05860718, -0.043459326, -0.012829568, -0.021918943, -0.039587107, -0.04497376, 0.077050775, 0.11914406, 0.15143734) * inp_4_0_2; - result4 += M4(-0.103128694, -0.060181264, 0.0490661, -0.09455608, 0.06286338, -0.077097364, 0.044754677, -0.1034678, 0.039516028, -0.023677185, 0.016861307, -0.22612987, -0.15263082, 0.1795205, -0.018140048, 0.018092833) * inp_4_1_2; - result4 += M4(-0.05888944, -0.0889064, -0.0709366, -0.05213482, -0.02343327, -0.0018331623, 0.018257964, 0.17675094, 0.019282073, -0.059324905, 0.030311866, 0.08030458, -0.027346587, 0.07439041, -0.0011478671, -0.08817235) * inp_4_2_2; - result5 += M4(-0.019768843, -0.05991632, -0.010716178, -0.078013495, -0.0009488844, 0.13115053, 0.017861582, -0.06049289, -0.05006678, 0.024128458, 0.018044593, 0.04230409, 0.016893277, -0.11239608, -0.047021523, 0.0724529) * inp_4_0_0; - result5 += M4(0.18766564, -0.025664637, -0.030139308, -0.23949836, -0.20853448, 0.42191824, 0.021315103, -0.08897598, -0.13948727, -0.07025061, -0.032793358, 0.04469102, -0.07338025, -0.08116937, -0.02085907, -0.04225192) * inp_4_1_0; - result5 += M4(0.0014623253, 0.07831867, -0.013866335, -0.037163716, -0.07348516, -0.39723527, -0.00040112593, 0.0079844175, 0.037765164, 0.055895034, 0.01566611, 0.059625477, 0.07250817, 0.027314562, 0.009754869, 0.025156375) * inp_4_2_0; - result5 += M4(-0.01780954, 0.023628714, 0.034943927, 0.018008912, 0.011102643, -0.0009681573, 0.009841042, -0.08015212, 0.027221346, -0.16443093, 0.026288198, 0.001455272, -0.05040395, -0.2880273, -0.08242565, 0.1178382) * inp_4_0_1; - result5 += M4(0.099739626, -0.02534247, -0.03676771, -0.1698253, -0.14523421, 0.107162096, 0.019052219, 0.03416664, -0.0033309865, -0.13226064, -0.012679272, -0.066955425, -0.04409348, -0.011246052, -0.08461966, -0.09828233) * inp_4_1_1; - result5 += M4(0.033025905, 0.10485179, 0.05240632, -0.0188209, -0.003619494, -0.097141206, 0.0029002565, 0.0015725928, -0.040175296, 0.037364967, 0.01029357, 0.029703487, -0.0037605085, 0.13230515, -0.041092455, -0.09114831) * inp_4_2_1; - result5 += M4(-0.057986185, -0.069430284, -0.030094786, -0.037690703, 0.084323406, -0.19963099, -0.028519016, -0.034208436, 0.009755318, 0.058818292, 0.023244966, 0.040064782, 0.04835536, 0.0029175903, 0.009581908, -0.021844542) * inp_4_0_2; - result5 += M4(0.003829103, -0.13929528, -0.03980133, -0.076254174, -0.08333196, 0.13623333, -0.055834413, 0.054766078, 0.08478081, -0.025615027, -0.041232016, -0.057117637, -4.4110584e-05, -0.1751871, 0.054971203, 0.067106515) * inp_4_1_2; - result5 += M4(-0.025056425, 0.023867259, 0.010080933, 0.00072056596, 0.01065392, 0.093483075, -0.0053937733, 0.03159115, 0.0024283507, 0.051747013, 0.005672103, 0.03157378, 0.01688401, -0.023685336, 0.011674149, 0.006265836) * inp_4_2_2; - result6 += M4(0.097767, -0.15615484, -0.03330633, -0.03246574, -0.09828971, 0.04034675, -0.003761907, -0.007247992, 0.0440123, -0.052923523, 0.13184473, -0.042986333, -0.09015772, 0.16018032, 0.07018659, 0.029339224) * inp_4_0_0; - result6 += M4(0.14578992, 0.099620074, 0.046593294, 0.040901482, -0.14870214, 0.2063498, -0.15011036, -0.02707587, 0.17573845, 0.17066436, 0.037497308, -0.087668315, -0.1583434, -0.05774619, -0.19105847, 0.0539939) * inp_4_1_0; - result6 += M4(0.044369865, -0.011985744, -0.06676264, 0.06571311, 0.15091354, -0.004943165, 0.023110785, -0.006212671, 0.030417575, 0.039918877, 0.1075741, -0.018493675, 0.02063989, -0.07133514, -0.010514067, -0.03980273) * inp_4_2_0; - result6 += M4(0.1030835, -0.15425463, 0.18499675, -0.01101726, 0.07050601, -0.1335128, 0.10012246, -0.012236572, 0.0068145846, -0.037013546, -0.009090149, -0.10891243, -0.014026439, 0.10051437, 0.0062225955, 0.08594593) * inp_4_0_1; - result6 += M4(-0.029376877, 0.4245877, -0.11999716, -0.03262902, -0.01283797, -0.14336337, 0.034473162, 0.027801402, 0.05935663, -0.00411931, 0.030364325, -0.072250046, -0.16437796, -0.16544774, 0.1135644, 0.06913329) * inp_4_1_1; - result6 += M4(-0.038770508, -0.14672425, 0.0944199, 0.07709616, -0.04040776, 0.056981046, -0.22344995, 0.021234313, -0.020427464, 0.1364528, -0.026672766, 0.017918827, 0.08537233, -0.13680832, 0.09903251, 0.05339877) * inp_4_2_1; - result6 += M4(0.05784282, 0.08006672, -0.10719333, 0.039291024, 0.036418326, -0.10396851, -0.099709935, 0.014573424, 0.03995292, -0.19120263, 0.058773283, 0.031090518, 0.0988691, 0.0617749, 0.049273636, -0.00020534384) * inp_4_0_2; - result6 += M4(0.052269712, -0.08764133, 0.07138705, 0.090442054, -0.07807762, -0.09394454, 0.19886558, -0.053335905, 0.024265278, -0.03403898, 0.012608825, -0.022600703, 0.21042949, 0.19268125, -0.22049512, -6.9655425e-06) * inp_4_1_2; - result6 += M4(0.03338139, -0.045162935, -0.10860777, 0.019680142, -0.10026124, -0.06789282, -0.0012012755, 0.01188395, 0.0017687088, 0.05601531, -0.05307541, 0.077284075, 0.08161673, 0.001016373, -0.055038832, 0.05773087) * inp_4_2_2; - result7 += M4(0.016020548, -0.039540257, 0.018477123, -0.11537112, 0.051848147, -0.016608413, 0.0045067095, 0.11851517, 0.096270345, 0.058278434, 0.013845023, 0.024261203, -0.016630638, 0.06159902, 0.0044512064, -0.031256955) * inp_4_0_0; - result7 += M4(0.007149637, 0.04666181, 0.0034721317, -0.069526106, -0.08778538, -0.18641983, -0.073141634, -0.021151492, 0.024884658, -0.06854938, 0.051003553, 0.0117977215, 0.068964265, 0.2273931, 0.0044768797, -0.0065401) * inp_4_1_0; - result7 += M4(0.057986695, -0.1630799, 0.014185881, 0.06542813, 0.05668797, -0.06585241, 0.03318883, 0.09014572, 0.045705676, -0.014688342, 0.008572391, -0.052271802, -0.024843287, 0.16393311, -0.04587822, 0.3133559) * inp_4_2_0; - result7 += M4(-0.027920736, -0.032094054, 0.02296397, -0.010959236, -0.024836589, 0.03999798, 0.0022132422, 0.045097068, 0.0822759, 0.0934503, -0.03364923, -0.025325779, -0.11724428, -0.03457005, -0.017789207, -0.0692858) * inp_4_0_1; - result7 += M4(0.17103274, -0.10334495, 0.049578216, 0.10637438, -0.05578853, 0.16770306, -0.017978283, -0.05384688, -0.079251505, -0.21486865, 0.038405776, 0.07863437, 0.06483568, -0.012767719, -0.015091657, 0.12269464) * inp_4_1_1; - result7 += M4(0.032430038, -0.017028265, 0.02097001, -0.044511046, 0.035059944, 0.007965345, -0.031040384, 0.10929679, 0.020350488, -0.055592652, 0.046824817, -0.009574223, 0.064101115, 0.012300517, 0.06316744, 0.022431027) * inp_4_2_1; - result7 += M4(-0.0110835945, -0.035709593, 0.0062568868, -0.16939256, -0.071432, 0.032028876, -0.0009149528, -0.029291475, 0.056822017, 0.03648254, -0.0044128094, 0.076558, 0.028610272, 0.029286876, 0.013849348, -0.06008088) * inp_4_0_2; - result7 += M4(0.017193304, -0.08609467, -0.114926696, 0.008569745, 0.064677455, 0.021997632, -0.037474178, 0.036798898, -0.0070205107, 0.09218683, 0.039662346, -0.06999511, -0.014183757, 0.09981606, -0.025737105, -0.18469252) * inp_4_1_2; - result7 += M4(0.08114169, -0.08932726, -0.06591682, 0.22375573, -0.0592019, 0.0058373665, 0.0005517905, -0.21399073, 0.06338537, 0.06469077, 0.038892817, -0.012319365, -0.011642403, 0.04897896, 0.020184793, 0.21680406) * inp_4_2_2; - const V4 inp_5_0_0 = inp[5][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_5_1_0 = inp[5][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_5_2_0 = inp[5][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_5_0_1 = inp[5][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_5_1_1 = inp[5][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_5_2_1 = inp[5][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_5_0_2 = inp[5][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_5_1_2 = inp[5][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_5_2_2 = inp[5][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.09639723, 0.019623455, 0.03502168, 0.0015819162, -0.07310885, -0.014421388, 0.037700772, -0.0064477376, 0.18167883, -0.0048393174, 0.097951405, 0.17582287, -0.14447159, -0.013561119, -0.08432609, 0.017079959) * inp_5_0_0; - result0 += M4(-0.29126033, 0.0014284838, 0.03128897, 0.23774073, 0.3060028, -0.029180689, -0.027401337, -0.02267344, 0.09255037, -0.003678776, 0.1864457, 0.30703774, -0.03531717, -0.008385994, 0.025627868, 0.05756002) * inp_5_1_0; - result0 += M4(0.26541057, -0.025752133, 0.031633984, 0.10005743, 0.67495507, -0.003680258, -0.043193363, -0.2036465, -0.07645052, -0.030427027, 0.014584901, -0.042664066, -0.275144, 0.009240208, -0.046404272, -0.018810304) * inp_5_2_0; - result0 += M4(0.021013979, 0.014813853, 0.07911404, -0.1444182, -0.54727274, -0.009268266, 0.04022134, 0.12684247, -0.30038267, 0.02248798, 0.0061077755, 0.20241117, 0.23402683, -0.016401973, -0.09442051, -0.13675143) * inp_5_0_1; - result0 += M4(-0.23706245, -0.031257913, -0.08628467, 0.23450083, 0.20399468, 0.10579919, -0.089562476, -0.21620466, -0.21943516, 0.07585841, -0.0201101, 0.1490338, 0.15866753, 0.03285597, -0.039588124, -0.053916477) * inp_5_1_1; - result0 += M4(-0.342074, 0.017865414, 0.07062472, 0.02950625, 0.35015133, 0.008485132, 0.03564653, 0.020376109, -0.6775135, 0.057114378, -0.040432066, -0.092964195, 0.010963918, -0.013918043, 0.06504414, -0.11030097) * inp_5_2_1; - result0 += M4(-0.22844675, 0.014001213, -0.04086438, 0.084863655, 0.087168, 5.541374e-05, 0.011604691, 0.039620657, 0.15028104, -0.030173715, 0.018681722, 0.070294924, -0.18256938, 0.0070742327, -0.022397375, -0.088555574) * inp_5_0_2; - result0 += M4(-0.47852856, -0.07145776, -0.0133972205, -0.046973392, -0.17338958, 0.028134853, 0.071620464, 0.05690539, 0.35883972, -0.025274301, 0.07712871, -0.16081172, -0.16322364, -0.024391389, -0.067469135, 0.061676506) * inp_5_1_2; - result0 += M4(-0.07445045, -0.012794608, -0.0039132326, -0.07494543, -0.113105275, 0.012376516, 0.060291972, 0.15627836, 0.20165767, 0.012765501, 0.010279119, -0.059145514, -0.036382053, 0.0024349068, 0.024600217, 0.028058669) * inp_5_2_2; - result1 += M4(-0.11681317, 0.03149914, -0.02268626, 0.020316461, -0.020745754, -0.022057936, 0.11603356, 0.059167244, 0.180591, 0.007859221, 0.21512203, -0.152376, -0.01136518, -0.07473311, -0.13669038, -0.012819836) * inp_5_0_0; - result1 += M4(-0.09488874, -0.08475269, 0.14085326, -0.061465915, 0.110808425, -0.14405778, 0.08795244, 0.08661794, 0.001566795, -0.28005657, 0.12319642, 0.16375847, 0.03825587, 0.027379684, -0.026086988, -0.033544835) * inp_5_1_0; - result1 += M4(-0.024178658, 0.039714154, -0.022332655, 0.027840363, -0.084833294, 0.042918306, -0.06820202, -0.013766415, -0.028977763, 0.076982066, 0.08159648, 0.048630487, -0.09541338, -0.12086448, -0.054606907, 0.061259307) * inp_5_2_0; - result1 += M4(0.028484898, -0.08754084, -0.019393114, 0.05212884, 0.019788867, -0.10928174, 0.16783488, -0.08359005, -0.01789322, 0.12292074, 0.21100979, 0.2298663, -0.035063196, 0.049546044, -0.09684456, -0.037127335) * inp_5_0_1; - result1 += M4(0.041679863, -0.08330086, -0.085413165, -0.19831778, 0.011449993, 0.24410929, 0.17876562, 0.030729154, -0.08233354, 0.03577903, -0.2875507, -0.2586639, 0.08701183, -0.12489642, 0.09146369, 0.09907161) * inp_5_1_1; - result1 += M4(-0.1137863, 0.1294764, 0.07114643, -0.0884942, -0.083936214, 0.0039308253, -0.060638096, -0.084309764, 0.12899254, 0.049729593, 0.13215946, 0.08747073, -0.045221217, -0.15141639, -0.120706595, 0.101086065) * inp_5_2_1; - result1 += M4(0.03239429, 0.023022437, 0.031734172, -0.105552435, 0.16512278, -0.071802914, -0.0940899, -0.08822055, 0.026131403, 0.060049463, 0.08963213, 0.014226101, -0.056039397, -0.023193419, -0.02211962, 0.09586565) * inp_5_0_2; - result1 += M4(0.038940042, -0.10384484, 0.032894712, -0.06374842, 0.024433494, -0.11179946, 0.009297579, -0.09042177, -0.009861766, -0.10523442, 0.096748434, 0.10154991, 0.0034603768, -0.058967777, -0.01943932, 0.012956458) * inp_5_1_2; - result1 += M4(0.025030363, -0.08464013, -9.463664e-05, 0.06856157, 0.015833884, 0.020372042, -0.05939931, -0.16466674, -0.026872694, -0.009639568, -0.02205347, 0.038039636, 0.042517964, 0.018893948, -0.025083166, -0.06072224) * inp_5_2_2; - result2 += M4(0.044613276, -0.0044365483, -0.031890903, -0.068118684, 0.00451756, 0.091909565, 0.084706746, 0.00509735, -0.06491617, 0.049687378, 0.012085989, -0.02657065, -0.059202664, -0.057704385, 0.05672765, 0.0076996544) * inp_5_0_0; - result2 += M4(-0.027142838, 0.22921544, -0.026072044, 0.023841841, 0.055964675, 0.07886544, -0.011248455, 0.09057777, 0.15645592, 0.18226981, -0.016815161, 0.10025497, 0.0122841215, -0.18196501, 0.05883248, -0.008813972) * inp_5_1_0; - result2 += M4(-0.020361401, 0.057140194, -0.023875074, -0.00060182856, 0.09157251, 0.060253076, 0.07184111, 0.06533179, 0.011699057, -0.051180467, 0.0085244775, -0.018609332, 0.004147033, 0.004735625, -0.08515116, -0.09142699) * inp_5_2_0; - result2 += M4(0.012525249, -0.03737614, 0.0032246797, 0.028186318, -0.027078547, -0.08055211, 0.108352825, -0.040588744, -0.13525534, -0.07300308, -0.17663826, 0.09962636, 0.09065365, -0.030113708, 0.07513523, -0.062303938) * inp_5_0_1; - result2 += M4(-0.19876195, 0.03662235, 0.07384994, -0.08699163, 0.112804376, 0.14214832, 0.12136636, -0.008018662, 0.0360822, 0.020459104, -0.076799884, -0.030588064, -0.03676267, -0.17420748, -0.046172116, 0.11804814) * inp_5_1_1; - result2 += M4(0.025602289, -0.06960716, -0.021962672, 0.014916399, 0.039306387, 0.12853436, 0.11960012, -0.016889988, 0.020258224, -0.15462099, 0.017135601, 0.11469024, 0.054862443, -0.04226776, -0.088001445, 0.007761415) * inp_5_2_1; - result2 += M4(0.073070854, -0.014337648, -0.01697037, -0.0034614755, -0.14384398, 0.038372323, 0.02048754, -0.037072256, -0.05646204, 0.15092614, -0.07120959, 0.0011205621, -0.05623821, -0.08308258, 0.06719, 0.05511347) * inp_5_0_2; - result2 += M4(-0.03587211, -0.0022123232, 0.005160962, -0.011607667, 0.05731462, -0.03496403, -0.10008563, 0.019289026, 0.12506175, 0.07811547, -0.012465899, 0.0031733941, 0.07399184, -0.017878048, 0.028137797, 0.01891761) * inp_5_1_2; - result2 += M4(0.10230978, 0.014096747, -0.06777307, 0.05809704, -0.016897488, -0.041697167, 0.11451997, -0.1109451, 0.0046312213, 0.015489181, 0.01989739, -0.03155321, -0.008256596, -0.079512425, 0.009933611, 0.015943954) * inp_5_2_2; - result3 += M4(0.007913923, 0.023302376, 0.014195001, -0.042628683, 0.022702003, 0.020824619, 0.054448903, -0.014214888, -0.15230893, 0.027017456, -0.055805963, -0.020792942, -0.0036166536, -0.0024053461, -0.028186945, -0.04553071) * inp_5_0_0; - result3 += M4(-0.03747332, 0.09497244, 0.042652734, 0.055900328, -0.011268654, -0.05516379, 0.09533226, 0.06802106, -0.23316976, 0.11567081, 0.03190822, 0.10992797, 0.018976439, -0.0682327, 0.07743052, -0.17916438) * inp_5_1_0; - result3 += M4(-0.11481529, -0.09171004, -0.033503026, -0.015960397, -0.059237827, 0.01690542, -0.10769842, 0.08510701, 0.07984985, 0.12100806, 0.08898975, 0.05026093, 0.10702332, 0.15559758, 0.015156328, -0.032210726) * inp_5_2_0; - result3 += M4(0.037185226, -0.02921475, 0.054083195, -0.16814445, 0.13041309, 0.0034513238, 0.026534151, -0.04358078, 0.04967094, -0.082944445, -0.19175094, 0.117770284, -0.1838818, 0.022661967, -0.092036985, 0.041828036) * inp_5_0_1; - result3 += M4(0.07583914, -0.02660067, 0.07596429, 0.05443082, 0.04009684, 0.074418776, 0.1916427, -0.1403004, -0.08703482, 0.21093601, -0.26022056, 0.08639885, 0.0712981, -0.20584086, -0.030512385, -0.038807355) * inp_5_1_1; - result3 += M4(0.13374937, 0.20600063, 0.109381676, 0.036702737, -0.15909876, 0.046831544, -0.17815205, 0.04538742, 0.1322962, -0.17379756, 0.097563654, 0.016738946, -0.019171618, 0.02566055, 0.065581776, -0.041351534) * inp_5_2_1; - result3 += M4(-0.20493466, -0.054263074, -0.081377804, 0.06944882, 0.0755019, 0.015132356, 0.05086409, -0.06517121, 0.03255333, -0.017783852, 0.05066036, -0.048259325, -0.095798865, -0.057715565, -0.06984171, -0.01844315) * inp_5_0_2; - result3 += M4(-0.15733866, 0.19137177, 0.060902666, -0.046485204, 0.16182293, 0.025609003, 0.095348895, 0.08928013, 0.028072352, 0.017341128, -0.057890214, -0.0794134, -0.18598579, 0.10838677, -0.03538431, 0.04786554) * inp_5_1_2; - result3 += M4(-0.012257016, 0.11531798, 0.13337697, 0.006979419, -0.0849715, 0.16393217, -0.13725092, 0.036098, 0.07305728, -0.09024206, -0.00012192584, 0.010187788, -0.1048917, -0.10521513, 0.046232123, 0.055407766) * inp_5_2_2; - result4 += M4(0.07235909, -0.027621904, 0.011298396, -0.1765747, -0.014496057, -0.057982754, -0.046290796, 0.13571985, -0.1205281, -0.04798082, -0.25495487, 0.30243614, 0.04303486, 0.01862748, 0.118062235, -0.1278449) * inp_5_0_0; - result4 += M4(-0.11465966, 0.034462675, -0.07721744, 0.32512853, -0.16139716, -0.0101645, -0.124239594, -0.15424131, 0.1176077, 0.011714854, -0.14774185, -0.13813128, -0.045942284, -0.02931548, -0.0691589, 0.1005967) * inp_5_1_0; - result4 += M4(-0.027374454, 0.011491806, 0.027207306, 0.24838154, 0.005553664, 0.020350173, 0.018156052, 0.065076634, 0.04909349, -0.022477591, -0.013353649, -0.11608244, 0.052524254, 0.09376264, -0.07016483, -1.015391) * inp_5_2_0; - result4 += M4(0.019349854, 0.05526898, 0.0020555973, 0.1023498, -0.094652, -0.14251117, -0.0012969668, -0.14440864, -0.09144545, -0.03954085, -0.09708599, 0.010568958, 0.1815024, -0.02544401, 0.13482778, -0.1196587) * inp_5_0_1; - result4 += M4(0.076679856, -0.12071274, 0.091251, -0.24224363, -0.16503774, 0.10537857, -0.025352625, 0.13572288, -0.0616467, 0.30512542, 0.0007369243, -0.14596604, 0.1508832, -0.029030038, 0.07809325, -0.43181404) * inp_5_1_1; - result4 += M4(-0.050186176, 0.10699554, -0.025247447, -0.31157878, 0.008381582, 0.15348884, -0.020341069, 0.028304804, -0.0921669, -0.0011651425, 0.051618416, 0.041985366, 0.024278248, 0.07890664, -0.020202482, -0.5847288) * inp_5_2_1; - result4 += M4(-0.0018896905, -0.022382151, -0.06236328, 0.0008795104, 0.047349453, -0.07002224, 0.03688507, -0.08759693, 0.06889491, -0.060934015, -0.016035557, -0.1911462, 0.04429247, -0.013329024, -0.09003203, -0.37416485) * inp_5_0_2; - result4 += M4(0.11115817, -0.041630268, -0.012892016, -0.13964325, -0.13322541, -0.044140078, 0.06724884, 0.34590197, 0.12641588, 0.005511371, 0.0029400012, -0.12970345, 0.048500065, 0.088345684, -0.018711587, -0.12455347) * inp_5_1_2; - result4 += M4(-0.0014720167, 0.03022943, -0.077706255, -0.09305804, -0.01532213, 0.10398704, 0.013513487, -0.28069502, 0.0142068, 0.0026904861, 0.028715244, 0.027275652, 0.0057213604, -0.028090455, 0.017065007, -0.50258094) * inp_5_2_2; - result5 += M4(-0.008406699, -0.048557565, 0.035171904, 0.08983506, -0.051122516, 0.09912029, 0.01437341, -0.029460909, -0.04626288, 0.060715977, 0.0090973545, -0.016478004, 0.0073210597, 0.109622456, -0.05084672, -0.020122396) * inp_5_0_0; - result5 += M4(-0.05812229, 0.003318833, -0.019294033, -0.12664388, -0.06468669, 0.19390605, 0.08208434, -0.038719073, -0.1793958, 0.091862544, -0.005538765, 0.07508124, 0.19268127, 0.098129705, 0.047305394, -0.03129764) * inp_5_1_0; - result5 += M4(-0.03205671, -0.10576084, 0.011776709, -0.044336442, -0.04775037, -0.10696657, -0.02130634, -0.027597498, 0.022606473, -0.10720503, 0.012193138, -0.04583097, -0.055101357, 0.16359137, 0.004493769, -0.43047705) * inp_5_2_0; - result5 += M4(0.05366144, 0.026731309, 0.03478386, 0.02425013, -0.00010824641, 0.035470463, 0.016595501, -0.024765797, 0.07870931, -0.30097613, 0.0676478, -0.064222805, -0.082984656, 0.083329715, -0.06503138, -0.1147459) * inp_5_0_1; - result5 += M4(-0.008523245, -0.20545046, -0.091664396, -0.0049091675, 0.0050255316, -0.049038984, 0.00652147, -0.16740447, 0.033472482, -0.04478749, 0.011609399, 0.06824236, 0.11987239, 0.2021274, 0.01551683, -0.30101228) * inp_5_1_1; - result5 += M4(0.027618162, -0.08463503, -0.030308284, -0.023203282, 0.0048146397, 0.06658525, 0.040134102, 0.013716598, 0.016389064, -0.076771185, -0.020630794, -0.027869198, 0.0589834, 0.3248375, 0.03900721, -0.10140257) * inp_5_2_1; - result5 += M4(-0.060554717, 0.022966787, 0.038096186, -0.0037524437, -0.011273997, 0.005460832, -0.031279743, -0.017391417, 0.01658271, -0.16143888, -0.009319516, -0.041977346, 0.017656824, 0.083329156, -0.006246936, -0.31061533) * inp_5_0_2; - result5 += M4(-0.05332282, -0.22536638, -0.01890712, -0.057318285, 0.086653166, 0.17252193, 0.049653295, 0.05581569, -0.06649884, 0.05829692, -0.018752197, -0.044045765, -0.004481305, -0.0034842696, -0.023945756, -0.18526615) * inp_5_1_2; - result5 += M4(-0.02459517, 0.00967227, 0.020229094, -0.018288752, -0.017976828, -0.036817126, -0.010001165, -0.017720468, -0.0108538065, -0.012859125, 0.00016280079, -0.08256117, -0.030471824, 0.0008679164, -0.03319119, 0.0018225184) * inp_5_2_2; - result6 += M4(0.054306347, -0.15290415, -0.037458636, -0.017757421, 0.0005467001, -0.14890948, 0.029019784, 0.02001293, 0.20430593, 0.27819824, -0.0059977137, 0.061879914, -0.13057502, 0.0021194692, 0.0015575424, 0.02769835) * inp_5_0_0; - result6 += M4(0.05485167, -0.083570525, -0.17038752, 0.010494601, -0.17244375, 0.15428694, -0.06684956, -0.030360866, -0.103553005, -0.06311344, 0.03484925, 0.029834962, -0.11367296, -0.1916496, -0.1510687, -0.029223694) * inp_5_1_0; - result6 += M4(-0.05197318, -0.03608708, -0.08879769, 0.037348874, 0.026914857, 0.08394489, 0.2084273, -0.024667064, -0.016009899, 0.10421695, 0.048901215, -0.011293024, 0.10138146, 0.07363253, -0.030219194, -0.037951246) * inp_5_2_0; - result6 += M4(-0.07039613, -0.2202391, 0.12443942, 0.0480893, -0.14882348, 0.11112176, -0.079470195, -0.0038422423, -0.19921704, 0.18357034, -0.2052029, 0.07961839, -0.01121104, 0.02506743, -0.04750742, -0.03589245) * inp_5_0_1; - result6 += M4(-0.1724883, -0.18451235, -0.016324544, -0.0435086, 0.12102808, -0.05903197, 0.20429957, -0.026523046, 0.24256164, -0.18879442, 0.066243745, -0.06912464, 0.0778787, -0.053949833, 0.0758946, -0.05088434) * inp_5_1_1; - result6 += M4(0.11009434, -0.044795446, -0.10300328, 0.09686555, 0.19097812, -0.02973977, -0.25188747, 0.056195833, -0.048697688, 0.13360028, -0.08103348, -0.019849071, 0.045514822, -0.24554521, -0.092048824, -0.009823563) * inp_5_2_1; - result6 += M4(0.0031899977, 0.111939184, -0.10154793, 0.023950541, -0.01545594, -0.05408119, 0.04445424, 0.071756326, -0.0042254766, 0.16752541, 0.019423569, 0.0789649, 0.10669294, -0.14959094, -0.08071637, -0.0566634) * inp_5_0_2; - result6 += M4(0.016636662, -0.0043592616, 0.049911737, -0.08240926, 0.02341934, 0.18200795, -0.095903516, 0.035464257, 0.013341172, -0.21105696, 0.18157603, 0.007388641, 0.04299483, 0.07566842, 0.004422022, -0.018408777) * inp_5_1_2; - result6 += M4(-0.032283112, 0.018966956, 0.14916602, 0.028032156, 0.124131374, -0.091412544, -0.17238836, 0.076139845, -0.011591729, 0.054044627, 0.049857534, -0.024303673, -0.017544836, 0.019526491, 0.030814582, -0.031444456) * inp_5_2_2; - result7 += M4(0.1054277, -0.05588603, 0.0040042754, -0.022679763, 0.00019188969, -0.08028566, -0.0057191667, 0.047501147, -0.069374226, -0.1432808, -0.0047000865, 0.06051547, -0.06231789, -0.009543958, 0.008812655, 0.009808097) * inp_5_0_0; - result7 += M4(-0.16799815, -0.0983575, 0.032900676, 0.024434093, -0.015439524, 0.012054578, -0.054596145, -0.052522466, -0.016160874, -0.22184886, -0.0014744007, 0.1292467, 0.045455676, 0.37723166, -0.04526237, -0.007467324) * inp_5_1_0; - result7 += M4(0.02376558, -0.010139901, -0.0040325196, -0.009129071, 0.0028625603, -0.17736973, 0.013249183, -0.12509376, -0.032082245, -0.05859872, -0.0015787275, -0.24458185, -0.0024620641, -0.08208759, 0.019349, 0.14647795) * inp_5_2_0; - result7 += M4(0.066825785, 0.0035896879, 0.010954373, 0.16944337, 0.11076889, -0.052402984, -0.033274803, 0.051613946, -0.22818595, 0.01693611, -0.075045995, -0.072047375, 0.08568909, -0.053329717, 0.0275275, -0.0629556) * inp_5_0_1; - result7 += M4(-0.12534282, -0.15166305, 0.029134141, 0.2599543, -0.13259989, -0.059403762, 0.0022948862, -0.12381564, -0.16464439, 0.07920561, 0.071009405, -0.18002638, 0.1493605, -0.05973153, -0.033991057, -0.004347517) * inp_5_1_1; - result7 += M4(-0.10859914, 0.19777662, 0.030716414, 0.20239219, -0.049674973, -0.008065452, 0.044835646, -0.024891462, -0.013373799, 0.056004763, 0.02393868, -0.12625471, 0.0014617656, 0.08599903, -0.031700462, 0.36635354) * inp_5_2_1; - result7 += M4(-0.0113587715, -0.011903081, 0.008487691, -0.054146536, 0.116987415, -0.01823161, 0.008221788, 0.026918514, -0.09686553, -0.08222311, -0.017111372, 0.008134881, 0.037866976, -0.009848268, -0.0036449763, -0.029423602) * inp_5_0_2; - result7 += M4(-0.08639899, -0.08491009, 0.025705481, 0.05089163, -0.1226224, 0.09756131, 0.029850222, 0.090274915, 0.06547528, 0.01946126, 0.038230956, -0.02194068, -0.12762366, -0.042146087, 0.007112803, -0.07842905) * inp_5_1_2; - result7 += M4(-0.0022227848, -0.08329949, 0.02959531, 0.040456764, -0.0064215194, 0.02860254, 0.048657935, -0.14058267, 0.03534701, 0.060297586, 0.027902277, -0.1314796, 0.017715896, 0.02089232, -0.06317515, 0.20956494) * inp_5_2_2; - const V4 inp_6_0_0 = inp[6][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_6_1_0 = inp[6][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_6_2_0 = inp[6][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_6_0_1 = inp[6][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_6_1_1 = inp[6][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_6_2_1 = inp[6][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_6_0_2 = inp[6][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_6_1_2 = inp[6][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_6_2_2 = inp[6][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.25393915, 0.027043493, 0.10654072, -0.08525964, 0.20249307, -0.019689774, 0.088514835, 0.055691637, 0.07853764, 0.013202991, -0.043258864, 0.19107047, 0.04702102, -0.014156893, 0.0033811873, -0.037611388) * inp_6_0_0; - result0 += M4(0.033156276, 0.07636262, -0.06685837, -0.28202713, 0.22048311, 0.0462825, 0.05857877, 0.07332606, 0.048307907, -0.03430054, 0.0070701134, 0.5920388, 0.110328935, 0.017119845, 0.01771777, 0.061522327) * inp_6_1_0; - result0 += M4(-0.14306721, 0.018294387, 0.05322048, 0.13556401, -0.44980633, -0.026256885, 0.036100645, 0.052315935, -0.02804871, -0.038344417, -0.06134128, 0.09689426, -0.38987854, 0.033323664, -0.016000343, -0.027510263) * inp_6_2_0; - result0 += M4(-0.05866317, 0.002032687, -0.00082775136, 0.01918676, -0.8169642, 0.010328964, 0.03521559, -0.0045707095, -0.031340435, -0.041630466, -0.12584916, 0.20539902, -0.3811032, 0.021354739, 0.069914445, 0.022269484) * inp_6_0_1; - result0 += M4(-0.21982393, -0.05576107, 0.0106865335, -0.023040164, -0.28949955, -0.06332665, 0.021895444, -0.24727438, -0.44725484, -0.031924695, -0.19216938, -0.16648085, -0.07408462, 0.4233083, 0.07934516, 0.06216793) * inp_6_1_1; - result0 += M4(-0.28820154, -0.042204183, 0.024222985, -0.048393644, 0.49974486, 0.033231325, 0.15504667, -0.056728065, 0.025556048, 0.011941008, 0.0023960497, 0.2241848, -0.32327613, -0.020013746, 0.11392184, 0.119333185) * inp_6_2_1; - result0 += M4(0.10622549, -0.018464077, 0.0014811973, 0.04246788, 0.23711115, 0.022047043, -0.010956674, -0.32996896, 0.38611406, -0.010244608, -0.089753434, 0.1721411, 0.15261765, 0.017590474, -0.091452375, -0.06120876) * inp_6_0_2; - result0 += M4(-0.36187828, 0.046506863, 0.027647553, 0.07766764, -0.008927769, 0.029563801, 0.088589504, -0.07676116, -0.6741914, -0.042154882, -0.11486244, -0.025150308, 0.13505991, 0.10773672, -0.07541369, -0.04765177) * inp_6_1_2; - result0 += M4(-0.09275451, -0.036147922, 0.02442931, -0.0608519, -0.066692024, -0.009296469, 0.025921594, -0.0864245, 0.16720207, -0.014351896, -0.059308108, 0.1421038, -0.48381627, -0.010173694, -0.07645824, 0.10173988) * inp_6_2_2; - result1 += M4(0.021645268, 0.0043825703, -0.16172194, 0.06445194, -0.010337363, -0.16858889, 0.051624708, 0.08887425, -0.043036472, 0.007312386, -0.17240277, 0.025320921, -0.0421981, 0.036202926, 0.10609745, 0.011319706) * inp_6_0_0; - result1 += M4(0.1734824, 0.20596263, -0.030022183, -0.07502591, -0.020815842, -0.01705872, -0.1227436, 0.1728855, -0.077626616, -0.19424133, -0.2696285, 0.09892899, -0.019736798, 0.026121566, 0.19268756, 0.020965343) * inp_6_1_0; - result1 += M4(0.09426492, -0.20829585, -0.045784738, -0.12571745, -0.054934982, 0.06938974, -0.10507394, -0.16100837, 0.026930384, 0.22542931, 0.004433424, -0.02133527, 0.011294125, 0.059978377, 0.13484445, 0.050203104) * inp_6_2_0; - result1 += M4(0.147049, -0.07776654, 0.090112254, -0.10758261, -0.03289161, 0.0032854977, -0.10761223, -0.19068107, -0.047427285, -0.0011766541, -0.14620113, 0.15797806, 0.08705205, -0.04227856, -0.046255957, 0.043652162) * inp_6_0_1; - result1 += M4(-0.02203102, 0.048884254, 0.15652215, -0.19973655, -0.03216301, -0.0064756055, 0.0037791517, 0.07314491, 0.42457983, -0.32528463, -0.39035124, -0.49028015, 0.18985026, -0.043185495, -0.16898492, 0.20890115) * inp_6_1_1; - result1 += M4(0.024364896, 0.07072389, -0.06361858, 0.07415382, -0.08902979, -0.1380986, -0.043800533, 0.055555053, -0.010688307, -0.20621417, -0.07234901, -0.23523419, -0.03651353, -0.11973608, 0.08604351, -0.018616544) * inp_6_2_1; - result1 += M4(0.114704296, 0.0012821173, -0.068033196, -0.070000984, -0.0007685309, -0.17655277, -0.06394455, 0.1268617, -0.076321155, 0.026202505, -0.058968563, -0.043015704, -0.030609187, 0.10198176, 0.001809263, 0.037366103) * inp_6_0_2; - result1 += M4(-0.052484885, -0.044683196, 0.03053242, 0.013953853, -0.040653836, 0.010002641, 0.006469731, -0.0014986227, -0.10032769, 0.16959572, -0.069859795, -0.3469522, 0.07481783, 0.03471578, 0.0019469812, -0.029517153) * inp_6_1_2; - result1 += M4(0.06942419, -0.014424148, -0.024126932, -0.056571778, 0.03541477, 0.043873753, 0.019538937, 0.03239783, -0.037636098, -0.014105033, -0.04605435, 0.1802105, 0.018014977, 0.04295682, 0.013464534, 0.021019042) * inp_6_2_2; - result2 += M4(-0.071756266, -0.06706221, -0.08776969, 0.033242766, 0.045480903, 0.08577256, -0.049715064, 0.035287466, -0.08222192, -0.112818174, 0.3058014, 0.020747164, 0.025694553, -0.063401744, -0.042200796, 0.025968723) * inp_6_0_0; - result2 += M4(-0.13321926, -0.10132593, -0.17897432, -0.14326371, 0.06180942, -0.03581478, -0.052736517, -0.10874825, -0.008085818, 0.06525462, 0.449162, -0.030954784, 0.043084864, -0.017855136, -0.09416133, -0.0776152) * inp_6_1_0; - result2 += M4(-0.03527179, 0.14117101, -0.0018107274, -0.073505834, -0.09282823, -0.22143118, 0.028014453, -0.114395574, -0.035342608, 0.012621842, 0.11709762, -0.23005305, 0.050080653, -0.09179107, 0.049132098, 0.07343873) * inp_6_2_0; - result2 += M4(-0.03269113, 0.13727617, 0.06639271, -0.030616252, -0.1055029, -0.026697636, 0.023550695, -0.039226644, -0.038068492, -0.08316144, 0.40446988, 0.058594167, 0.014248768, 0.0086992495, -0.011190517, 0.010902662) * inp_6_0_1; - result2 += M4(-0.019433009, -0.10286144, 0.060004223, -0.038420953, 0.03036159, -0.2744554, -0.09569878, 0.13525376, -0.45776287, -0.563084, 0.83304495, -0.16487391, -0.07259872, 0.19638029, -0.42446634, 0.030365331) * inp_6_1_1; - result2 += M4(-0.03255235, -0.083292186, 0.05127079, 0.16399868, 0.041848473, 0.025235591, -0.04822653, 0.021993848, 0.030882882, 0.17710914, 0.29183725, -0.25232372, -0.03376157, 0.069926046, 0.18542269, -0.20078623) * inp_6_2_1; - result2 += M4(-0.101534605, 0.0111554405, 0.07763956, -0.066853195, 0.14802791, 0.22426645, -0.014106987, 0.0079514915, -0.019993098, 0.13241445, 0.17657594, 0.008934296, 0.01487143, -0.044789407, 0.012656156, 0.020323789) * inp_6_0_2; - result2 += M4(-0.008234025, 0.08456227, -0.17759554, 0.011694055, -0.010427372, -0.07783142, -0.046155173, 0.05392593, -0.16888404, -0.2840302, 0.3909782, -0.08185675, 0.08337252, -0.04670822, -0.09239724, -0.07711184) * inp_6_1_2; - result2 += M4(-0.022138517, 0.017613856, -0.09870348, 0.03693813, -0.055293337, -0.12173775, -0.056648545, -0.043140687, -0.04919115, -0.01679964, 0.11903821, -0.0042499895, 0.049133506, -0.17641966, 0.08807258, 0.013178107) * inp_6_2_2; - result3 += M4(-0.017510176, 0.032520328, 0.04467492, -0.10445434, -0.02616554, -0.00015490681, -0.08131455, 0.020718355, -0.056793895, 0.1402375, 0.023429967, 0.0074513434, -0.034528255, -0.021868426, 0.011149289, -0.03791223) * inp_6_0_0; - result3 += M4(0.09344338, -0.10496054, 0.035130817, -0.30397677, 0.006309203, 0.07825759, -0.012441558, -0.13795666, -0.06419988, 0.07479083, 0.098842844, 0.053989477, -0.030339701, -0.06560822, 0.07718683, -0.093575194) * inp_6_1_0; - result3 += M4(-0.18743142, -0.20367543, -0.045681503, -0.023350526, 0.45909318, -0.13704588, -0.27462173, -0.04882571, 0.16531849, 0.09619273, 0.06036674, 0.00022124624, 0.027497444, -0.1107107, -0.054146938, 0.116237246) * inp_6_2_0; - result3 += M4(-0.22343463, -0.03975446, -0.019462354, 0.012858684, -0.0686507, -0.050538924, -0.08339368, 0.07178159, -0.06680497, -0.03128726, 0.018951185, 0.029051654, 0.070689976, -0.005537569, 0.02662559, 0.052618824) * inp_6_0_1; - result3 += M4(-0.114782125, -0.16896574, 0.06213668, -0.07327341, -0.54700404, -0.23186733, -0.05671132, 0.04637826, -0.060617987, -0.11623172, 0.26331487, -0.3564901, 0.10262385, 0.106946684, 0.19420712, -0.18107696) * inp_6_1_1; - result3 += M4(0.02985258, -0.14546846, 0.13773356, -0.007043981, -0.12571162, -0.2121989, 0.10892215, -0.08025874, -0.0034233916, 0.17689225, 0.106857084, -0.14621517, -0.00082668406, 0.16190575, -0.17757492, -0.0901998) * inp_6_2_1; - result3 += M4(-0.18254142, 0.00018911867, -0.032326326, -0.026256783, -0.051194996, 0.20952101, -0.005766911, -0.17304982, -0.2728, 0.014618033, -0.08374399, -0.037366375, -0.052216236, -0.060712695, -0.08576589, 0.01029981) * inp_6_0_2; - result3 += M4(-0.2192291, -0.06208528, 0.006770767, 0.025115982, -0.120716535, -0.3642819, -0.07612305, 0.10545096, -0.13745363, -0.16342284, 0.048389412, 0.16732548, -0.06157264, -0.0131712565, -0.007632807, 0.05884671) * inp_6_1_2; - result3 += M4(-0.010386156, -0.05843791, 0.0080460375, -0.02215248, -0.0046986993, 0.13692026, -0.01638287, -0.008291713, -0.18422179, 0.14790569, 0.12798262, -0.021673547, 0.07490734, -0.06830054, 0.11235734, 0.06693663) * inp_6_2_2; - result4 += M4(0.031609837, -0.0630666, 0.07795094, 0.07437754, -0.063570656, -0.037965033, -0.09425062, -0.37422004, 0.11048699, 0.0057330118, 0.07405185, 0.041608755, 0.0163884, -0.01686625, -0.078330874, 0.03185675) * inp_6_0_0; - result4 += M4(0.072703406, -0.018203175, 0.106149, -0.09128971, 0.08215875, 0.112117656, 0.028551959, -0.03622092, 0.018705795, -0.08304299, -0.15704195, -0.3604947, 0.03103266, 0.009065896, -0.049972847, -0.24236012) * inp_6_1_0; - result4 += M4(-0.002173286, 0.008756497, 0.042513568, -0.1873562, 0.00010484744, 0.017321931, -0.0018877642, 0.011367446, 0.11943365, -0.049579285, 0.011112072, 0.07898906, 0.038162302, 0.019985512, 0.005278514, -0.44685748) * inp_6_2_0; - result4 += M4(0.16972722, -0.15696916, -0.001954752, 0.0025888218, 0.07641538, 0.008134348, 0.14522226, 0.0031370253, -0.0061739367, -0.085180596, -0.031076128, -0.008505356, 0.019127209, 0.04726678, -0.028039595, 0.11001677) * inp_6_0_1; - result4 += M4(0.03907581, -0.23740238, -0.14140205, 0.12133183, -0.18523853, -0.014035527, -0.05070725, 0.060119003, 0.21701236, -0.44652292, 0.059642103, -0.14113769, -0.13122131, 0.04188876, -0.083592445, 0.22188784) * inp_6_1_1; - result4 += M4(-0.04496993, 0.030880382, 0.062058993, -0.099997036, 0.2503525, -0.03315698, 0.07771736, -0.13464513, 0.13384888, -0.06966423, -0.15768729, -0.2526265, 0.23433943, -0.20503657, 0.024308644, 0.23484896) * inp_6_2_1; - result4 += M4(0.02025899, -0.08161794, -0.06530419, -0.2512789, 0.20856737, -0.02937036, 0.046130184, -0.122473024, 0.20739011, -0.032584213, -0.03908568, 0.15932591, 0.009598298, 0.014865036, -0.085329674, -0.048375398) * inp_6_0_2; - result4 += M4(0.052322518, 0.016933598, -0.055045877, 0.25808656, 0.042450767, -0.043159146, -0.015732674, 0.034701332, -0.10254416, -0.09605927, -0.12641044, -0.061084706, 0.025757095, 0.01171015, -0.12510143, 0.013340438) * inp_6_1_2; - result4 += M4(-0.061878797, -0.0773353, -0.005220705, -0.051035535, 0.019303745, 0.027005015, -0.041179057, 0.009875763, 0.090891965, -0.030093135, -0.06234941, -0.55638164, 0.047078833, -0.034335647, 0.056138657, -0.20027333) * inp_6_2_2; - result5 += M4(0.05015349, 0.0054716445, 0.004177627, -0.050633695, -0.06938389, 0.16214839, 0.011296689, -0.082514316, 0.11996339, 0.061887678, -0.040852424, -0.07084067, 0.06265393, -0.016822362, 0.044242088, 0.021039015) * inp_6_0_0; - result5 += M4(0.10928485, -0.19676699, -0.02157162, -0.13219342, -0.012391194, -0.19025202, 0.00090946903, -0.035217367, 0.03376469, -0.0024619242, 0.05372507, 0.008681183, -0.062195737, -0.12777862, 0.06806728, -0.11032593) * inp_6_1_0; - result5 += M4(-0.046830658, 0.10160007, 0.007642938, 0.11314667, 0.08784253, -0.009776112, -0.010324244, 0.00475375, 0.012185085, -0.32649335, -0.003846677, -0.049783777, -0.016552377, -0.30174103, 0.042688444, -0.075603515) * inp_6_2_0; - result5 += M4(-0.036016952, -0.080664165, -0.027861608, -0.003190699, 0.11259605, 0.112028256, -0.014719422, -0.06710741, 0.08090713, -0.09921882, -0.017237093, -0.040568177, -0.037067454, 0.13548112, 0.049555253, 0.08202979) * inp_6_0_1; - result5 += M4(0.055869065, -0.14269185, 0.1695267, -0.045701936, 0.025154047, -0.06405588, 0.029307313, -0.021124221, 0.12457562, -0.10093063, -0.12307042, -0.11815914, 0.046201903, 0.27481177, 0.20769885, -0.11983943) * inp_6_1_1; - result5 += M4(0.007588693, 0.06840485, -0.02285377, 0.086424656, -0.035932403, 0.069937855, 0.04131619, 0.12279977, 0.05461197, -0.030206274, -0.004099659, 0.01782275, 0.13221116, 0.1202803, -0.06958632, -0.13069847) * inp_6_2_1; - result5 += M4(-0.030061426, -0.016772136, 0.019963643, -0.005000318, 0.02433712, 0.051145535, -0.06959564, -0.009373117, -0.042612027, 0.11588607, -0.031018581, -0.024111094, -0.0043351934, -0.054152235, -0.0017856905, 0.04642136) * inp_6_0_2; - result5 += M4(0.019618109, -0.10475815, 0.015852138, 0.06479645, -0.0024639575, 0.24204022, -0.01686291, -0.0049417815, -0.0023533348, -0.2145702, 0.021186195, 0.010546704, 0.054356057, -0.0770356, 0.17403676, 0.010118797) * inp_6_1_2; - result5 += M4(-0.085872956, -0.10604888, -0.0023606545, 0.04655231, 0.024092479, 0.024500292, -0.03088973, -0.03515796, 0.040848736, 0.03247573, 0.00054549915, -0.049297735, 0.047631543, -0.059411403, 0.04567129, -0.15874743) * inp_6_2_2; - result6 += M4(-0.063367255, -0.28621587, -0.120857835, 0.024785351, -0.043610282, -0.0012173338, -0.10997328, 0.02592127, 0.039859094, 0.05960013, 0.079700045, -0.015343179, -0.014860274, -0.064913794, -0.034614667, -0.023543619) * inp_6_0_0; - result6 += M4(0.18142469, -0.015515836, 0.06008566, -0.011752868, 0.027775854, -0.11123888, 0.056306146, 0.034829333, -0.23161115, 0.0037358522, -0.04274176, -0.09420979, -0.13533166, 0.11379144, 0.12625267, -0.013195443) * inp_6_1_0; - result6 += M4(0.014412624, -0.032631543, -0.12249058, 0.04733892, 0.17094655, 0.016640391, 0.11685866, -0.046863843, -0.016974678, 0.0050411853, 0.05741516, -0.018831814, -0.017991679, 0.1693767, 0.109981544, -0.006787796) * inp_6_2_0; - result6 += M4(-0.050179794, -0.13851736, -0.0069271014, -0.045395944, 0.12965961, -0.4452648, 0.06868209, -0.022281444, -0.3445984, 0.18332383, -0.06992578, -0.02618501, 0.05548849, -0.08292498, -0.080153175, 0.02323775) * inp_6_0_1; - result6 += M4(-0.0015876463, -0.13806427, 0.10639416, 0.023437254, -0.09670931, -0.5395201, -0.35598695, 0.08137909, -0.30675673, -0.68870056, 0.43683702, 0.30065536, 0.29636112, 0.030135915, 0.102863364, 0.072151996) * inp_6_1_1; - result6 += M4(-0.097966, -0.07202368, 0.116947845, -0.007939853, -0.07737768, -0.06664585, -0.029885257, 0.033253044, 0.16170298, -0.08897594, 0.028270183, 0.015337859, 0.009223266, -0.043351427, -0.15840903, -0.08737145) * inp_6_2_1; - result6 += M4(0.07815449, -0.10610426, 0.048390064, 0.0063902456, -0.14476854, -0.34215242, 0.23453464, -0.015078656, -0.013611805, 0.13649997, -0.022992669, -0.047386788, -0.048223104, 0.08353466, 0.007523702, 0.0042962017) * inp_6_0_2; - result6 += M4(0.021398082, 0.06574901, 0.01570379, 0.047632955, 0.1265327, -0.18084514, -0.052373953, -0.061091397, 0.12890914, 0.32485107, -0.2191356, -0.08265301, -0.05019005, -0.11458044, -0.014290698, -0.02415455) * inp_6_1_2; - result6 += M4(-0.088630505, -0.01243738, 0.09319013, 0.015001567, 0.022774188, 0.021965843, -0.08747621, 0.021479324, -0.026393006, 0.16437857, -0.052892763, -0.02286325, -0.15871418, 0.089870855, 0.018521631, -0.050778393) * inp_6_2_2; - result7 += M4(0.02045469, 0.0287529, 0.0010241847, 0.038917143, -0.009055708, -0.10922389, -0.018602332, 0.022323998, 0.06595422, 0.007557209, 0.02378333, 0.084593475, 0.04378051, 0.04266329, -0.015951708, 0.026474161) * inp_6_0_0; - result7 += M4(0.18397386, -0.10782103, 0.024844088, 0.16343658, -0.008296337, -0.14727564, 0.024463428, -0.027936272, -0.051447846, 0.16396451, -0.059130464, 0.06169333, -0.011365445, -0.13367778, -0.04661004, -0.039218057) * inp_6_1_0; - result7 += M4(0.06714862, 0.03827444, 0.042638022, -0.039566677, 0.035940494, 0.13743882, -0.0037021409, -0.0058530117, 0.04580861, 0.00055077183, -0.014116449, 0.082206964, 0.05168469, -0.24674025, -0.044270154, -0.14466943) * inp_6_2_0; - result7 += M4(0.13655049, -0.0037868884, 0.017740099, 0.037811954, -0.12685275, 0.1465944, 0.044949457, -0.1675934, -0.050905135, 0.073416695, -0.010995415, 0.19101281, 0.017208947, 0.041205052, 0.031716064, -0.0029537608) * inp_6_0_1; - result7 += M4(0.005168128, -0.2644406, 0.03652085, 0.08124011, -0.061455008, 0.13233157, -0.049555544, 0.3325822, 0.57566077, 0.229378, -0.06316978, 0.042738564, -0.26401246, 0.06409805, -0.02197178, 0.021361612) * inp_6_1_1; - result7 += M4(0.2247919, -0.02473068, -0.055994432, 0.023506895, 0.025630778, -0.17377566, -0.020805294, -0.13436401, 0.054779552, -0.017440123, 0.026569206, 0.21781074, -0.21824166, -0.34215078, -0.0857649, -0.45669833) * inp_6_2_1; - result7 += M4(0.038947687, -0.014291097, 0.030199952, -0.07234113, 0.14106016, -0.070706524, 0.014074831, 0.07009277, -0.008786437, 0.06321196, -0.00082987256, -0.09311384, 0.06342896, -0.006780464, -0.012114174, 0.073668234) * inp_6_0_2; - result7 += M4(-0.046575416, -0.058892816, -0.045538478, 0.075719476, -0.015011017, 0.054017406, 0.009706081, 0.10392646, 0.12592232, 0.11429299, -0.01416236, 0.1002617, -0.028155196, -0.0038782626, 0.05325286, 0.17454463) * inp_6_1_2; - result7 += M4(0.016017746, -0.0024375727, 0.007960641, 0.038799986, -0.0015452035, -0.031820048, -0.017755242, 0.0053485422, -0.026057664, 0.015303216, -0.011386129, 0.29278004, 0.11512724, -0.04430394, 0.0023577774, -0.35880366) * inp_6_2_2; - const V4 inp_7_0_0 = inp[7][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_7_1_0 = inp[7][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_7_2_0 = inp[7][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_7_0_1 = inp[7][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_7_1_1 = inp[7][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_7_2_1 = inp[7][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_7_0_2 = inp[7][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_7_1_2 = inp[7][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_7_2_2 = inp[7][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.093057826, 0.01858744, 0.017055932, 0.047575798, -0.48920795, 0.013446175, -0.12276054, 0.41135016, -0.48648903, -0.007991985, -0.07679736, 0.61650306, -0.045889717, 0.017647497, -0.1537697, -0.23686765) * inp_7_0_0; - result0 += M4(-0.13263807, 0.041109014, 0.11245959, -0.013866342, -0.013694788, 0.027526988, -0.05249651, 0.16716316, -0.34208536, -0.02216198, 0.034313936, -0.09952266, -0.2565534, -0.08825595, -0.13494068, -0.2541753) * inp_7_1_0; - result0 += M4(0.051394768, 0.0077571133, 0.010582183, -0.032381758, -0.6963541, 0.02442121, -0.04768973, 0.106575586, 0.1176033, 0.030320967, -0.04171274, 0.04240642, 0.2899816, -0.03647807, 0.021847246, 0.13718957) * inp_7_2_0; - result0 += M4(-0.315567, 0.16788216, 0.11532435, 0.018762646, -0.3924175, -0.0026032638, 0.017891156, 0.17197019, -0.23087408, -0.05040391, -0.09186718, 0.13994148, -0.0016433849, -0.08103552, 0.08400062, -0.10997134) * inp_7_0_1; - result0 += M4(-0.49517035, 0.26567185, -0.038016852, 0.12635052, 0.40193, -0.0030475701, -0.10137272, -0.120883435, -0.82323277, 0.030179605, 0.078827076, -0.13365716, 0.3562478, 0.10565541, 0.02065652, 0.19143653) * inp_7_1_1; - result0 += M4(0.104096144, 0.034835484, 0.015175582, 0.058479846, -0.17371462, -0.019692933, -0.037486658, 0.1325474, -0.08228265, -0.008990977, -0.06508885, 0.06365074, -0.20408385, -0.012317421, -0.06275001, 0.015913552) * inp_7_2_1; - result0 += M4(-0.28063324, -0.052402798, -0.026163297, -0.13481754, -0.80447805, -0.002198588, -0.20205966, -0.045655202, 0.5007614, -0.012078825, -0.10159687, 0.07441106, 0.009226436, -0.0024192056, 0.025706636, -0.036440335) * inp_7_0_2; - result0 += M4(0.40300408, 0.023975194, 0.049716044, -0.12299138, -0.0061894534, 0.021923013, -0.09582962, -0.0155806355, -0.5794448, -0.0034082567, -0.0474747, -0.018826593, -0.10674811, 0.012643809, -0.038404852, 0.10657174) * inp_7_1_2; - result0 += M4(-0.04032728, 0.0086032655, 0.0034255206, -0.12981325, -0.3024401, 0.025323603, -0.09110643, -0.14045614, -0.31946152, -0.013543068, 0.0012571462, 0.15818664, 0.09029682, 0.0124655515, 0.007503704, -0.037692796) * inp_7_2_2; - result1 += M4(0.092736594, 0.00826249, 0.010775636, 0.00403293, -0.058633234, 0.014166078, 0.013056551, 0.18699466, -0.007686415, 0.15875758, 0.06176187, 0.07555552, -0.090086296, 0.033896968, 0.0077844276, 0.13266048) * inp_7_0_0; - result1 += M4(0.08382376, -0.16030917, 0.024057174, 0.11403618, 0.0043765227, -0.35036963, -0.22343636, -0.060740843, -0.021733627, 0.013140708, 0.03526235, -0.22064516, -0.016554922, 0.17561758, -0.010703101, -0.14859533) * inp_7_1_0; - result1 += M4(0.016197557, 0.048948098, 0.06820352, 0.028564362, 0.009413763, 0.026243063, -0.075701505, -0.030908402, 0.0007739373, 0.07934018, -0.027152779, 0.061517365, -0.08483075, -0.09418147, -0.02867508, -0.063916795) * inp_7_2_0; - result1 += M4(0.04043292, -0.077814244, -0.19241016, 0.01460587, 0.08696333, 0.018230885, -0.10730282, -0.15327977, -0.0126645025, -0.17403425, -0.0072612646, -0.10022423, -0.017782386, -0.12482159, 0.021951316, -0.05171756) * inp_7_0_1; - result1 += M4(0.0073123565, 0.18385161, -0.19282544, 0.11895977, 0.2591007, 0.16570053, 0.08257549, 0.20815465, 0.21631241, -0.07861773, 0.012445177, -0.16151837, 0.026515726, 0.06146748, 0.060012862, 0.1812516) * inp_7_1_1; - result1 += M4(0.0036909305, -0.0646371, -0.0031265342, -0.036746826, 0.0055400766, 0.10483319, 0.0761159, -0.0613997, -0.004601206, 0.07251477, 0.003159961, -0.055162553, -0.037166774, 0.047477655, -0.05885252, -0.08107481) * inp_7_2_1; - result1 += M4(0.13147439, 0.07235022, 0.11834156, -0.058283225, -0.0045471746, 0.0018260559, 0.028729394, 0.02858408, 0.21449946, -0.1278615, -0.14387783, -0.21466564, -0.045181565, 0.0028430526, 0.02777939, 0.06546419) * inp_7_0_2; - result1 += M4(0.0416424, -0.22773337, 0.09027429, -0.043938044, 0.066542864, -0.173065, -0.131402, -0.17367797, 0.09318294, 0.054329652, -0.09088165, -0.054702386, 0.0302759, 0.055274818, -0.08411721, -0.07556854) * inp_7_1_2; - result1 += M4(0.10650366, 0.028620532, 0.0020138063, 0.047029838, 0.009938939, -0.07582722, -0.0704224, 0.13842976, -0.025137335, -0.096079774, -0.1811104, -0.41311008, 0.026927864, -0.02448317, 0.061361972, 0.037670407) * inp_7_2_2; - result2 += M4(0.0024118004, 0.09932538, -0.06356122, 0.12144928, 0.03607544, -0.034052245, 0.029326644, 0.06413456, -0.15836075, -0.09493104, 0.06882281, 0.16084446, 0.043389358, -0.10989386, 0.045642816, -0.066026814) * inp_7_0_0; - result2 += M4(0.04589397, 0.120452665, -0.10071846, 0.0021816166, 0.0067811445, -0.0018491797, -0.10624671, -0.01032463, 0.010645102, 0.19948961, -0.0814312, -0.058895882, -0.15236376, -0.22271132, 0.10567383, -0.11207953) * inp_7_1_0; - result2 += M4(0.0049409824, -0.10551977, -0.028747935, 0.049844258, 0.013619789, -0.050083466, -0.04230845, 0.01740127, -0.07345831, -0.04010368, 0.035114683, 0.07539461, 0.022974307, 0.16642033, 0.033220243, -0.046773415) * inp_7_2_0; - result2 += M4(-0.08520467, 0.07937402, -0.08180451, 0.054276798, 0.03673348, 0.1345191, 0.11391641, -0.08336684, -0.02736105, 0.08159736, -0.014245932, 0.0999977, -0.06599637, -0.0041301744, 0.03526574, -0.060442906) * inp_7_0_1; - result2 += M4(0.018374803, -0.24207959, -0.056048337, 0.20891011, -0.0061592953, -0.22400457, -0.012221774, 0.08569259, -0.010005162, 0.20996751, -0.002263105, 0.024369106, 0.10067062, 0.14671531, -0.21510577, -0.09467761) * inp_7_1_1; - result2 += M4(0.039071318, -0.006941743, -0.055587944, -0.06910334, 0.041939203, 0.067879826, 0.037126023, -0.017921185, -0.02809142, -0.017302712, 0.04766237, 0.045326218, -0.050512332, -0.08966384, 0.102614455, -0.016542122) * inp_7_2_1; - result2 += M4(0.10583182, -0.12222368, -0.022481203, 0.0091590425, 0.04758253, -0.19864714, 0.010832032, 0.036959015, -0.04871116, 0.2381476, -0.009364384, -0.077789105, 0.027248967, -0.10351713, -0.044201497, 0.010485905) * inp_7_0_2; - result2 += M4(-0.059924692, 0.21265492, 0.09143432, 0.0023001549, 0.029113388, -0.048255157, -0.08316234, -0.015936607, -0.018002449, -0.025074301, -0.046004113, 0.19198367, -0.041387912, -0.00069587975, 0.060115118, -0.008999265) * inp_7_1_2; - result2 += M4(-0.03355685, 0.05939524, -0.08630031, 0.008923411, -0.0349464, -0.061872467, 0.010966537, 0.04096779, 0.036233865, 0.13620737, -0.13027222, -0.020134632, 0.038199965, 0.055670083, -0.019151667, -0.017264571) * inp_7_2_2; - result3 += M4(-0.10227937, 0.038531292, -0.004719401, 0.066986896, 0.02854145, 0.0037261157, -0.12272034, -0.14116393, -0.07371039, -0.07082852, -0.15818724, -0.115490176, 0.18857895, -0.029877532, 0.040384226, -0.16709916) * inp_7_0_0; - result3 += M4(0.017989378, 0.03307397, -0.003638028, -0.049, 0.06693364, 0.091122106, 0.01694626, -0.19428675, -0.11457916, 0.020786103, 0.045656357, -0.02966893, 0.033462316, -0.030103533, -0.050653465, -0.30016673) * inp_7_1_0; - result3 += M4(-0.016042417, -0.008480691, 0.0074944645, 0.09415166, 0.16060314, 0.029788358, 0.044887744, -0.10466573, 0.04142358, -0.010506712, 0.008173183, 0.018733453, -0.04267847, 0.07115919, -0.089303434, -0.0723324) * inp_7_2_0; - result3 += M4(-0.1784978, -0.003956118, -0.074258715, -0.050314713, -0.1299091, 0.0742169, 0.041739013, -0.15377031, -0.23734128, -0.20349394, 0.06618984, -0.10742843, 0.23080029, 0.054690253, 0.24516934, -0.22974281) * inp_7_0_1; - result3 += M4(0.26433668, -0.16146514, -0.03443586, 0.13516268, 0.043412343, -0.08080896, -0.06401908, -0.1829313, 0.16736096, 0.18049824, 0.07605729, -0.080408305, -0.23751873, 0.08258284, -0.3519938, 0.14739175) * inp_7_1_1; - result3 += M4(-0.06837895, -0.093730934, -0.15364447, 0.017212931, -0.017867276, 0.123588875, 0.10780019, 0.0011934575, 0.039848097, -0.03377508, 0.06327843, -0.19673957, 0.07179976, 0.029640658, 0.05293228, 0.0128938975) * inp_7_2_1; - result3 += M4(-0.103108406, -0.0712507, -0.17973696, 0.11079158, -0.12055165, 0.044492267, -0.09255737, 0.0312094, -0.0031056954, 0.05974501, 0.041631013, -0.0038990218, 0.10939499, -0.01745878, 0.002987804, 0.07288239) * inp_7_0_2; - result3 += M4(-0.09165128, -0.14673741, 0.08262944, -0.052495383, -0.0717261, -0.025745826, -0.06005521, 0.0818092, 0.18279521, -0.11737486, 0.07927313, -0.013847419, 0.03135403, 0.040214404, -0.07020207, 0.014424633) * inp_7_1_2; - result3 += M4(-0.015114291, -0.06672496, -0.032734443, -0.04192001, 0.0038520817, 0.045457352, 0.005018992, -0.028713668, -0.07802498, 0.12977207, -0.018184483, -0.065861456, -0.024905924, 0.0045672976, 0.03241166, -0.05306781) * inp_7_2_2; - result4 += M4(-0.02992127, -0.011558665, -0.04212552, 0.23045172, 0.01569306, 0.09363378, 0.03670081, -0.022434821, -0.0036762415, 0.04353555, 0.03372936, 0.19798061, 0.13786304, -0.07092925, 0.23218401, -0.5778904) * inp_7_0_0; - result4 += M4(0.031628434, 0.05923979, -0.07766216, -0.21502155, 0.019561157, -0.03678938, -0.0180508, -0.08056593, -0.05475633, 0.016586933, -0.046272255, 0.15220316, -0.011463505, -0.2365749, 0.17895913, 0.21658286) * inp_7_1_0; - result4 += M4(0.02509672, -0.008976131, 0.05584837, -0.05529728, 0.09795098, -0.020055503, -0.02164029, -0.1046758, -0.037067562, -0.017107425, 0.034593187, 0.06712188, 0.00032307793, -0.03645378, -0.072664104, 0.06152559) * inp_7_2_0; - result4 += M4(0.008836961, -0.004338637, 0.021924678, 0.008210728, 0.09904092, -0.0057505877, 0.082742974, 0.087964356, 0.21133105, -0.06730191, 0.05853566, -0.055037003, 0.03733452, -0.08116955, 0.21971102, 0.14889301) * inp_7_0_1; - result4 += M4(-0.0748969, 0.07317375, 0.12490905, 0.08813748, 0.05896622, -0.13576603, 0.042431455, 0.33814436, 0.12616898, -0.0037345141, -0.0987336, -0.096417874, -0.07693417, 0.24160123, -0.17155497, 0.0058300933) * inp_7_1_1; - result4 += M4(-0.01122437, 0.060269233, -0.0004650178, -0.1081861, -0.010873368, 0.068385266, -0.07372972, 0.3367053, -0.042974606, -0.016994601, 0.07837034, 0.24746524, 0.0034320923, 0.0035944064, -0.01195075, -0.12289051) * inp_7_2_1; - result4 += M4(0.096618116, 0.0017606856, -0.023797512, -0.09623442, 0.03186119, 0.00901302, -0.04478668, 0.015849276, 0.0060673724, -0.08117631, 0.06615038, 0.008394166, -0.064983785, 0.03120339, 0.05247062, 0.11284779) * inp_7_0_2; - result4 += M4(0.22326927, -0.057584547, 0.1249132, 0.07153944, 0.030537907, 0.03678155, -0.12113325, 0.26826018, -0.021496031, -0.13955405, 0.072442465, 0.46728814, 0.019304127, 0.0047027688, -0.0023738334, -0.11127308) * inp_7_1_2; - result4 += M4(-0.033077776, -0.0041501066, 0.004953035, 0.079336785, 0.0794249, 0.009831282, 0.034738008, 0.049940556, 0.111517645, 0.02587274, -0.13590118, -0.0011743612, 0.022277985, -0.0024076863, 0.0118484665, -0.018964022) * inp_7_2_2; - result5 += M4(-0.010840324, 0.018513367, -0.03659084, 0.10364521, 0.01009041, 0.13042572, 0.007456112, -0.00083792023, 0.18598594, -0.21971759, -0.046186354, 0.11505738, 0.12947187, -0.10201369, 0.033749234, -0.20842238) * inp_7_0_0; - result5 += M4(-0.13841252, -0.07132372, 0.015374009, -0.03350829, 0.038431324, 0.26030353, 0.022567883, 0.08548342, -0.15755373, -0.5094088, 0.029332554, 0.113984115, 0.25689808, -0.03682413, -0.029367559, -0.19724648) * inp_7_1_0; - result5 += M4(0.014594538, -0.09233221, -0.012252351, -0.015555599, 0.054377057, -0.09577352, 0.009639305, 0.030040396, 0.03581517, -0.21593472, 0.026543431, 0.035706364, -0.028958973, 0.16335289, -0.027023897, 0.03195238) * inp_7_2_0; - result5 += M4(0.028074348, 0.25041917, -0.01522765, 0.112594955, 0.058980804, 0.046511486, 0.02227463, -0.006530832, -0.12239188, -0.31543577, 0.03858747, 0.19981086, 0.03869045, 0.2442461, 0.09884668, -0.19680546) * inp_7_0_1; - result5 += M4(-0.053980995, 0.21612911, -0.07060161, 0.13007748, -0.038173746, 0.52846897, -0.011015076, 0.1750412, 0.17632863, -0.32451263, -0.0069359713, -0.057803564, -0.028940583, -0.10599829, 0.308063, 0.23179643) * inp_7_1_1; - result5 += M4(-0.04243671, -0.060571715, 0.015409582, 0.0018997153, 0.033913817, 0.2610666, 0.034738205, 0.08021839, 0.0064788633, -0.23461679, -0.04257184, -0.03839006, 0.020676881, -0.10889375, 0.056028567, -0.017305182) * inp_7_2_1; - result5 += M4(-0.011705643, -0.17926311, -0.09606117, 0.04994871, 0.03811866, 0.083779275, -0.07100998, 0.123125106, -0.08825092, -0.043072667, -0.03723966, 0.017560858, 0.0058102403, 0.09834203, -0.006432963, -0.011965737) * inp_7_0_2; - result5 += M4(-0.02810402, 0.26636553, -0.04143731, -0.12511997, 0.0606454, 0.18290104, -0.023966596, -0.06529498, 0.13252802, -0.22993724, 0.033643547, 0.14290896, 0.042024758, -0.064517036, 0.004768785, 0.06242545) * inp_7_1_2; - result5 += M4(-0.009437957, -0.060217936, -0.0005558866, 0.08939045, 0.06596618, -0.04006053, -0.026095144, -0.008451433, -0.024096021, -0.5716766, 0.026952052, 0.009826264, -0.010124964, 0.015985455, -0.015588942, -0.030201098) * inp_7_2_2; - result6 += M4(0.001339088, 0.011658318, 0.006591494, 0.027737048, -0.16144453, -0.021767598, -0.031523168, -0.018799461, -0.34570718, -0.15534337, -0.058923155, 0.00911216, -0.12978898, -0.050381318, 0.050348077, -0.09658135) * inp_7_0_0; - result6 += M4(0.024535839, -0.008667269, -0.0622576, 0.0204351, -0.005096714, -0.054841235, -0.22415069, -0.02107429, 0.02905788, 0.06414907, -0.16560484, -0.013687988, 0.113999985, 0.093944214, 0.14346395, -0.07148945) * inp_7_1_0; - result6 += M4(-0.00761567, 0.042084813, 0.08568827, 0.038807478, 0.012057808, -0.07107497, 0.07218335, -0.02202278, -0.260935, 0.06987181, 0.008593539, -0.0064772167, 0.044948816, -0.12849274, -0.060550433, -0.0056300177) * inp_7_2_0; - result6 += M4(-0.005997164, -0.097993135, -0.077972405, 0.03362767, 0.19427408, -0.1770161, 0.19029185, 0.019458773, -0.24618915, -0.0082207555, -0.26942673, 0.046109803, 0.16318776, -0.123588115, 0.1980393, -0.16147637) * inp_7_0_1; - result6 += M4(-0.010313294, -0.0018672174, 0.25450292, 0.044906195, -0.295491, -0.056987874, -0.020926556, -0.0014876276, -0.067589805, -0.15586084, 0.3354423, -0.01643443, -0.047207903, 0.2138555, -0.29980525, 0.3054584) * inp_7_1_1; - result6 += M4(0.09087075, 0.11293523, -0.11201651, -0.023515534, 0.07838163, -0.08044987, -0.09321415, 0.01541951, -0.030451542, 0.07718657, -0.06903973, 0.008229, -0.086511634, -0.026817558, 0.03083218, 0.0015336829) * inp_7_2_1; - result6 += M4(-0.15319514, 0.06719385, -0.114726596, 0.07653987, -0.11659755, 0.10572512, -0.09550949, 0.012375398, -0.031193871, -0.21856599, 0.19387965, -0.05192126, 0.046057552, -0.017359132, -0.03737542, -0.04551012) * inp_7_0_2; - result6 += M4(-0.028575609, -0.27219576, 0.13471314, -0.027790494, 0.21625274, -0.01331136, -0.047807295, -0.06929539, -0.33689663, 0.21839039, 0.02853295, -0.008273674, -0.026528465, 0.060017947, -0.06870197, 0.058427386) * inp_7_1_2; - result6 += M4(-0.021944126, 0.039191246, 0.060422763, 0.055359006, -0.06375576, -0.03306302, 0.036527112, -0.0255947, 0.071362875, -0.16739061, -0.054392815, 0.04786052, 0.0051584914, -0.021557247, 0.038402207, -0.023407327) * inp_7_2_2; - result7 += M4(-0.02173953, -0.0050364775, 0.018115988, 0.021697342, -0.012082072, 0.04172189, -0.007909301, 0.011818142, -0.17953396, 0.083820164, -0.009636351, -0.10034687, 0.1642959, 0.073130615, -0.045996107, -0.033121128) * inp_7_0_0; - result7 += M4(0.04806684, 0.1576642, 0.0075517786, -0.053801607, 0.005782014, 0.07378702, -0.028766569, 0.060013436, -0.0720998, -0.23449865, 0.008218591, -0.026995447, 0.106461994, -0.30901372, 0.068891905, -0.050495483) * inp_7_1_0; - result7 += M4(-0.008543046, -0.03552557, 0.023663377, -0.089377664, -0.08561724, 0.020186149, 0.04362643, 0.045674924, 0.044511896, -0.0064475993, -0.013111257, -0.047030173, 0.01697271, -0.071969934, -0.038492855, 0.17783906) * inp_7_2_0; - result7 += M4(-0.09725624, 0.09728652, 0.049584188, -0.10925649, -0.030945122, -0.038223732, 0.038314544, -0.16810782, 0.119843066, 0.017566657, -0.028535746, 0.1529704, 0.07259411, -0.0084347045, 0.07943611, -0.029340098) * inp_7_0_1; - result7 += M4(0.18266347, 0.20968968, 0.28690252, -0.07153112, -0.005086696, 0.056907438, 0.012388222, 0.035845917, -0.056767505, -0.07013673, 0.0058978973, -0.19421063, -0.16624254, 0.07341593, 0.4248915, -0.010784793) * inp_7_1_1; - result7 += M4(-0.041981332, 0.16612388, 0.018898766, 0.012531613, -0.054126482, -0.038313825, 0.015845643, 0.3093916, 0.011901941, 0.056884393, 0.03546279, 0.0920931, 0.0006637759, 0.003600225, 0.027740458, 0.007826175) * inp_7_2_1; - result7 += M4(-0.062031288, 0.07076121, -0.011554102, -0.15204862, -0.08523306, -0.01078532, -0.0074151373, -0.09199952, 0.05631246, -0.09844704, 0.028126549, -0.061495118, 0.024056956, 0.08072481, 0.00053800165, -0.05439638) * inp_7_0_2; - result7 += M4(-0.045449857, -0.08656371, 0.11670754, -0.07409322, -0.08260962, -0.006442261, -0.0021840173, 0.05410366, -0.068071015, 0.0633848, -0.026049398, -0.17644654, 0.009671523, -0.0026872004, 0.04288877, 0.018640613) * inp_7_1_2; - result7 += M4(0.118966505, 0.0042540673, 0.067298196, 0.0457675, -0.043611914, 0.0071016825, 0.011262208, -0.013707411, -0.05561536, -0.07327195, 0.06370605, -0.09496062, -0.013315591, -0.04221754, -0.025834357, 0.012106648) * inp_7_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(4, 2); - imageStore(out_image, output_base + ivec2(0, 0), max(result0, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 0), max(result1, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 0), max(result2, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 0), max(result3, V4(0.0))); - imageStore(out_image, output_base + ivec2(0, 1), max(result4, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 1), max(result5, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 1), max(result6, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 1), max(result7, V4(0.0))); -} - -//!DESC ArtCNN C4F32 (Conv2D-4-ReLU) -//!COMPUTE 48 32 12 16 -//!HOOK LUMA -//!BIND conv2d_3 -//!SAVE conv2d_4 -//!WIDTH LUMA.w 4.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared V4 inp[8][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(4, 2); - inp[0][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(0, 0), 0)); - inp[1][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(1, 0), 0)); - inp[2][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(2, 0), 0)); - inp[3][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(3, 0), 0)); - inp[4][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(0, 1), 0)); - inp[5][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(1, 1), 0)); - inp[6][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(2, 1), 0)); - inp[7][y][x] = V4(conv2d_3_mul * texelFetch(conv2d_3_raw, input_base + ivec2(3, 1), 0)); - } - } - - barrier(); - V4 result0 = V4(-0.010642589, -0.00886394, -0.011911265, 0.0013138817); - V4 result1 = V4(-0.00029113132, -0.0033787098, -0.037151422, -0.012291881); - V4 result2 = V4(-0.0102971895, -0.0014118766, -0.003933518, 0.0011924527); - V4 result3 = V4(-0.006742062, -0.006430258, 0.01816764, -0.003289142); - V4 result4 = V4(-0.0016975092, -0.013348444, -0.0101586925, -0.0023115254); - V4 result5 = V4(-0.014644328, -0.002838471, -0.010976465, -0.010420114); - V4 result6 = V4(0.010046276, -0.00817356, -0.00592981, -0.012702304); - V4 result7 = V4(-0.003283902, -0.009365962, -0.030856198, -0.008386251); - const V4 inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.06367972, 0.015355591, 0.026949974, 0.24093243, 0.043094322, -0.014345123, 0.038814086, -0.024711123, 0.020292502, -0.03363532, -0.19905107, -0.057727624, 0.054324314, 0.006259606, 0.04859666, 0.114120334) * inp_0_0_0; - result0 += M4(-0.050108004, 0.02433751, -0.036565557, 0.13910975, -0.11289756, -0.0036338037, -0.12673377, 0.40682453, -0.09981491, 0.060039967, 0.07106236, -0.17155667, -0.078044645, -0.022106687, 0.028288044, -0.4340596) * inp_0_1_0; - result0 += M4(-0.0012435226, 0.010517646, 0.05879162, 0.0797866, -0.06649317, 0.07317452, 0.18675514, -0.19012241, -0.17721806, -0.006318136, -0.15342842, -0.6174679, 0.07899227, 0.011385531, -0.07052759, 0.17790486) * inp_0_2_0; - result0 += M4(0.051627405, 0.013695119, -0.056208372, -0.21161127, 0.043066453, -0.0134614045, 0.096194655, 0.15677607, 0.020839706, -0.00499096, -0.32161057, -0.02853702, 0.06524251, 0.014660386, -0.0038769178, -0.023995705) * inp_0_0_1; - result0 += M4(0.009713389, 0.042455763, -0.08643897, 0.040325396, 0.11639632, -0.10445666, 0.28789008, 0.0052306964, 0.04794952, 0.016632156, -0.44007704, 0.09552147, -0.12151625, -0.00629895, 0.07451647, -0.014627881) * inp_0_1_1; - result0 += M4(0.049594574, 0.011917852, -0.123859785, -0.21609749, 0.16133617, 0.22788343, 0.030877227, 0.08513475, -0.3126376, -0.13965136, -0.08548767, -0.5695479, 0.014128138, 0.025560997, -0.10520607, -0.059852153) * inp_0_2_1; - result0 += M4(0.08209688, 0.0056666564, -0.11197194, 0.066675246, 0.07319862, 0.0028881321, -0.17443056, 0.22286633, -0.059230614, -0.03299716, 0.033294305, -0.122349925, -0.003580951, 0.0042376686, -0.1074487, 0.13124591) * inp_0_0_2; - result0 += M4(-0.09276057, 0.024810545, 0.052148554, 0.24081653, -0.13632612, -0.0737602, 0.19507174, 0.22368881, -0.13705651, -0.0056842896, -0.17143059, 0.062451813, 0.054378565, 0.03108064, -0.0009585532, 0.14638664) * inp_0_1_2; - result0 += M4(0.04340059, -0.0133978315, -0.06672658, 0.09677375, 0.07287282, 0.05490861, -0.03150822, 0.11444156, 0.044394404, -0.03722291, -0.114737034, -0.2537736, -0.075103246, 0.00047140257, 0.056917436, -0.13963297) * inp_0_2_2; - result1 += M4(-0.019745184, -0.015237012, 0.34761697, 0.024346555, 0.048613477, 0.008129278, 0.1329184, 0.032320403, 0.02873472, -0.07745213, 0.089381665, -0.053246703, -0.010536428, -0.012052522, 0.13472542, 0.043229952) * inp_0_0_0; - result1 += M4(0.008874981, -0.022684537, -0.32914156, -0.063925795, -0.20997755, -0.08893244, 0.029489418, -0.057461437, -0.0029967155, -0.09795636, -0.108408295, -0.1221746, -0.0053062807, 0.106691435, -0.19747202, 0.01280542) * inp_0_1_0; - result1 += M4(-0.009138072, 0.018943872, 0.46553266, -0.059029687, 0.01195484, 0.08065211, 0.1304742, 0.04167463, -0.0042945184, -0.0110992575, -0.004856331, -0.012236496, -0.010966248, -0.06762262, 0.12339443, -0.020867052) * inp_0_2_0; - result1 += M4(0.013164329, 0.0044764974, 0.012409958, -0.03650239, -0.08487144, -0.019823823, -0.17396347, -0.13451226, 0.036851425, 0.0037857152, 0.0023139273, -0.043861248, 0.00020997733, -0.019511271, -0.11898421, -0.01745069) * inp_0_0_1; - result1 += M4(0.007187274, -0.017961323, 0.0958128, 0.048082847, -0.040112697, 0.14550515, 0.015416018, 0.15881096, 0.030104429, -0.026476268, 0.27202588, -0.049501404, -0.0060124407, -0.049514923, 0.16369969, -0.030028995) * inp_0_1_1; - result1 += M4(0.009590504, 0.0052814134, -0.09949251, 0.019851258, -0.0017102435, -0.0057010055, 0.21812549, -0.018284133, 0.0066972165, -0.06696747, -0.18485515, -0.012749098, -0.005242249, 0.012191508, -0.22599107, 0.027399413) * inp_0_2_1; - result1 += M4(-0.008118732, 0.013279181, 0.19236638, -0.092721924, 0.0067766663, 0.0015893301, -0.0023000136, -0.011911791, -0.0042884317, -0.016676495, 0.0048630047, -0.07555849, -0.004163853, -0.0058369036, -0.018433897, -0.01679472) * inp_0_0_2; - result1 += M4(0.0038481024, -0.006403622, -0.23212503, -0.064665146, -0.00016095256, -0.0117325345, -0.038162373, -0.053406723, -0.0026637136, 0.001245133, 0.056889605, 0.011467498, -0.0038322243, 0.025211766, -0.011044667, 0.017503561) * inp_0_1_2; - result1 += M4(-0.007230914, 0.016849557, 0.2517353, -0.012056008, -0.0011772153, 0.016236372, -0.041440863, 0.0054126605, -0.001263156, 0.02597355, 0.007842189, -0.0029955707, -0.007866802, 0.002390068, 0.053244114, -0.014479143) * inp_0_2_2; - result2 += M4(-0.028533313, -0.03417741, 0.0012577606, -0.019257374, 0.010033405, -0.0036994095, 0.007045054, 0.010565603, -0.046668757, 0.00019397971, -0.002267307, -0.0104847625, 0.059023526, 0.012687368, -0.00491412, 0.0014153915) * inp_0_0_0; - result2 += M4(-0.049931664, -0.048379432, 0.007498039, -0.022373587, -0.0771472, 0.018614551, 0.0002477305, -0.024105903, 0.015812969, -0.038571186, 0.017851014, -0.024578597, -0.017861517, 0.025413366, 0.009983621, -0.003993137) * inp_0_1_0; - result2 += M4(-0.013517889, -0.03762297, -0.0050530042, -0.021956738, 0.05503256, 0.018364541, -0.06798143, -0.006726189, -0.09039128, -0.018218862, 0.012402998, -0.011700832, 0.026748236, -0.02512878, 0.0019675503, 0.003679885) * inp_0_2_0; - result2 += M4(-0.031136058, 0.0359091, -0.0096811, 0.03557327, -0.050899588, -0.005297424, -0.0129619, 0.049447075, 0.014076238, -0.007992911, 0.0006320949, 0.0014119651, -0.086482234, -0.031999197, -0.017622426, -0.005823154) * inp_0_0_1; - result2 += M4(0.018693857, -0.01916131, -0.0102922125, 0.019950174, 0.1789492, 0.112200856, 0.2354614, 0.2159921, -0.16463493, -0.09581855, 0.022710567, 0.10049011, 0.10836266, -0.03839025, 0.0017816289, 0.051456656) * inp_0_1_1; - result2 += M4(-0.032643434, -0.03520942, -0.00902158, 0.031847555, 0.046354927, -0.009932743, -0.059579276, -0.043097854, -0.07874535, -0.031361405, -0.037379973, 0.0399374, -0.07922775, 0.014205796, -0.012990702, 0.017200219) * inp_0_2_1; - result2 += M4(-0.14149812, -0.026308693, 0.013156247, -0.010998822, 0.010619759, 0.045672473, -0.020926405, 0.010404934, 0.0044369334, -0.023159938, 0.010512607, -0.015869081, -0.0068213074, 0.017876646, -0.0033602864, -0.0019412941) * inp_0_0_2; - result2 += M4(-0.07683463, -0.016622063, 0.003970921, -0.020234693, 0.012855758, -0.008270011, -0.018926207, 0.028756846, -0.03279732, 0.05162056, 0.014169949, 0.00272712, -0.054935418, -0.011971149, 0.006564116, -0.0067169806) * inp_0_1_2; - result2 += M4(0.045191385, -0.04901863, 0.0058378577, -0.022581697, -0.028919542, -0.017658986, 0.0021753453, 0.02503823, 0.024391137, -0.004819856, 0.013756709, 0.014804408, 0.07436067, -0.031071503, -0.008154738, 0.004673315) * inp_0_2_2; - result3 += M4(-0.071072675, -0.0035988966, -0.0066025765, -0.0012441251, 0.050464924, -0.022177339, 0.016274035, 0.0015531831, -0.08065895, -0.021252245, -0.0034899898, -0.0017890475, -0.0046765488, -0.025555193, -0.0070160814, -0.0011643096) * inp_0_0_0; - result3 += M4(-0.1393393, 0.026840104, -0.020534521, 8.6940665e-05, 0.022155385, 0.034874167, 0.014849819, 0.0150672, -0.09982343, -0.1079006, 0.023477618, 0.010674304, -0.13537477, 0.083248444, -0.011315786, -0.0018252048) * inp_0_1_0; - result3 += M4(-0.06450007, 0.027117124, -0.008740622, 0.0031801541, -0.033957902, -0.06707456, 0.03858367, 0.042417802, -0.11869874, 0.013612102, -0.036507256, -0.01575494, -0.011385477, -0.059500467, 0.008444977, 0.0015291015) * inp_0_2_0; - result3 += M4(0.032936275, 0.050812557, 0.0019198264, 0.0019414118, 0.073013276, 0.025911082, -0.031966444, -0.02360871, 0.020471016, -0.02455466, -0.027042994, 0.00037427727, 0.0251037, 0.012828527, 0.004303774, -0.0014145696) * inp_0_0_1; - result3 += M4(0.02768085, -0.18987654, 0.0047734412, 0.0056930883, 0.3138251, -0.00707713, 0.022574376, -0.049543064, 0.087140605, -0.047190607, -0.07201053, -0.0061711348, 0.15925713, -0.10245655, 0.04768945, 0.0070750415) * inp_0_1_1; - result3 += M4(0.046098888, -0.03228097, 0.007971416, -0.003211488, 0.03541912, 0.08347973, -0.04245516, -0.22960266, 0.016699027, -0.17920162, 0.04365034, -0.012232522, 0.055789493, 0.05055821, 0.0047299173, -0.0015630907) * inp_0_2_1; - result3 += M4(-0.029510463, -0.053544868, 0.012720792, 0.0027460956, 0.01765512, 0.04893953, -0.017488966, -0.0034906499, -0.029702585, -0.012104706, -0.0011182901, -0.0005079093, -0.037835028, 0.022520598, 0.0014103206, 0.0011822552) * inp_0_0_2; - result3 += M4(-0.10070877, 0.046742264, 0.007600956, -0.0011876933, 0.085067436, -0.025622442, -0.038516764, -0.042891037, 0.026511868, -0.05499435, 0.023888689, -0.02037429, -0.054140117, 0.048124578, -0.03649212, -0.0057970383) * inp_0_1_2; - result3 += M4(0.03265754, -0.07081625, 0.009941592, 0.059323862, -0.07708716, 0.030148048, 0.010048091, -2.1467116, -0.090933256, -0.008617372, -0.0013652695, 0.021998953, -0.06799903, -0.045843273, -0.017940847, 0.02189726) * inp_0_2_2; - result4 += M4(-0.018283347, -0.00045607917, 0.0060582818, 0.015689053, 0.020948345, 0.010084842, -0.05871323, 0.0442905, -0.0006844951, 0.03996347, -0.0077746073, 0.052070368, -0.0020731466, -0.027734036, -0.020642549, -0.011996461) * inp_0_0_0; - result4 += M4(-0.015542496, -0.020906035, 0.05616912, 0.011500291, 0.011709668, 0.006958166, 0.088712916, -0.04759519, -0.021187717, -0.06529189, -0.0114498865, -0.082412966, -0.0069833756, -0.020228442, 0.0874531, 0.055400908) * inp_0_1_0; - result4 += M4(-0.018064445, -0.02253134, 0.0016811455, 0.03921868, 0.084922425, -0.1061726, -0.043436524, -0.07272687, -0.02193883, -0.043257385, -0.083489224, -0.0094089, -0.0012094387, 0.0147130145, -0.0050844704, -0.03531546) * inp_0_2_0; - result4 += M4(0.01723265, 0.0021537296, 0.0084488215, -0.026516566, -0.0064137513, 0.082135536, 0.052593667, -0.0420796, 0.025128623, -0.046288945, 0.02539665, -0.065579034, 0.0035611966, 0.03360602, 0.03226798, 0.031936094) * inp_0_0_1; - result4 += M4(0.017643329, -0.04996845, -0.018859908, -0.061122697, 0.34165478, 0.17534265, 0.06829982, 0.10795807, 0.06664788, 0.03152679, -0.12386091, -0.14232776, 0.03949003, 0.009136445, -0.02725185, -0.101188794) * inp_0_1_1; - result4 += M4(0.027976288, -0.07391086, -0.047543265, -0.0393009, -0.0030176488, 0.0462244, 0.115901925, 0.03867774, -0.005870751, -0.026110478, -0.10724031, -0.09727929, -0.006245743, 0.006611747, -0.05287074, 0.037571006) * inp_0_2_1; - result4 += M4(-0.017905073, 0.06856336, -0.045125287, 0.039754372, 0.028834887, 0.033030543, 0.017635468, 0.027801542, 0.012817996, 0.017676003, -0.092132136, -0.031009464, -0.0010266944, -0.023578838, -0.019058397, 0.044198424) * inp_0_0_2; - result4 += M4(-0.015889365, 0.04956746, -0.10061822, -0.046182413, 0.07927657, -0.06789576, -0.03122652, -0.022781461, -0.015805071, 0.099279396, 0.09606744, -0.045868468, -0.011308788, 0.018816305, -0.00884391, 0.0315008) * inp_0_1_2; - result4 += M4(-0.012362935, 0.04514763, -0.05886459, -0.035570577, -0.008400748, 0.024465667, 0.045315593, 0.05015611, -0.017772343, 0.051140483, -0.025281634, 0.036637597, -0.008642822, -0.019420221, 0.073475204, -0.064193666) * inp_0_2_2; - result5 += M4(-0.074223176, -0.076086864, 0.010009205, 0.00498156, 0.026734153, 0.026125053, -0.012888242, -0.0036207351, 0.09821857, -0.049064066, -0.05750457, -0.07566508, -0.05826318, -0.018796125, 0.043513767, -0.01541347) * inp_0_0_0; - result5 += M4(0.06515173, 0.0041347602, 0.0510124, 0.02624078, 0.04781931, 0.04964814, -0.2192327, 0.11373382, -0.1932606, -0.06795975, -0.13658446, -0.093924426, 0.15270661, 0.04920662, 0.017569887, 0.015546919) * inp_0_1_0; - result5 += M4(0.011515321, -0.0008673987, 0.01021309, -0.03998467, -0.10125976, -0.015188177, 0.11087175, -0.046940386, -0.17955068, -0.033393275, -0.007070009, -0.051426765, 0.009750301, -0.0106553985, 0.006023548, 0.045006126) * inp_0_2_0; - result5 += M4(0.1027903, -0.001239901, -0.07456331, -0.029130416, 0.2857115, 0.012627638, -0.059892666, -0.033038933, -0.12527318, 0.0012188617, 0.027038874, 0.015653279, -0.008641095, 0.008363736, -0.021640765, -0.015255137) * inp_0_0_1; - result5 += M4(0.07006862, -0.03568767, -0.03884071, 0.019617394, 0.3367087, -0.16474003, 0.22236866, 0.2906942, -0.8614081, -0.05483698, -0.08595165, -0.12225225, 0.10795525, 0.005861848, -0.043968987, -0.018650714) * inp_0_1_1; - result5 += M4(0.032634597, -0.034685787, -0.00010149836, 0.023715368, 0.04442532, 0.18611571, 0.108625725, -0.104921706, 0.12758508, -0.1306295, -0.26632875, -0.09635189, -0.124528706, -0.024916474, 0.028955566, -0.0034809187) * inp_0_2_1; - result5 += M4(-0.078462504, -0.022188937, -0.14860962, 0.0114819165, 0.09297935, 0.0261449, 0.011739509, -0.064567246, -0.14403053, -0.028247818, -0.04446361, -0.05141038, 0.09128404, -0.00071885926, 0.0069643995, 0.021032143) * inp_0_0_2; - result5 += M4(-0.0733952, -0.0930177, -0.09444618, -0.0032916416, -0.37833893, 0.101219796, 0.1554377, -0.09127358, -0.09383044, 0.002986431, -0.2345861, -0.05062573, -0.046481803, -0.04869992, 0.031763807, 0.027442358) * inp_0_1_2; - result5 += M4(-0.008788333, -0.05269567, 0.013204499, -0.02019951, 0.3157533, -0.045273416, -0.113329664, 0.02661385, -0.0739828, -0.009670496, -0.10208147, 0.079944134, 0.04927199, 0.0014979398, 0.016647482, -0.03618494) * inp_0_2_2; - result6 += M4(0.12318386, -0.031515714, 0.06658294, -0.01790978, -0.08093016, 0.0068258494, 0.013516406, 0.057182025, -0.3196226, 0.07305165, -0.037273683, -0.08905009, 0.054708652, 0.02250646, -0.023916934, -0.018449223) * inp_0_0_0; - result6 += M4(0.0718138, -0.014243287, 0.012612587, 0.048731383, 0.20789832, -0.06249828, -0.026129458, 0.11318468, -0.065590106, -0.045804016, 0.04883716, -0.11467208, -0.27906537, 0.0104019325, 0.030469168, 0.121829174) * inp_0_1_0; - result6 += M4(0.1903772, -0.014205343, 0.013526937, 0.026766587, -0.07189499, 0.082867585, 0.17449427, 0.031478837, -0.18446773, -0.026643228, 0.019107278, -0.13341573, 0.06726684, -0.036159597, 0.06675827, 0.023888445) * inp_0_2_0; - result6 += M4(0.24483675, -0.064649485, -0.10852287, -0.016419483, 0.14748481, -0.032443833, 0.029739222, 0.053020094, -0.30304453, 0.061247077, -0.0017646264, -0.07087985, -0.009870498, -0.010504906, -0.032092966, -0.0016628841) * inp_0_0_1; - result6 += M4(-0.14757648, -0.20276885, -0.01160909, 0.058186002, 0.12473517, 0.14209689, 0.13009773, 0.16402978, 0.08657092, -0.03974507, 0.020102011, -0.060327966, -0.08655603, -0.09495798, -0.05340838, -0.0044676755) * inp_0_1_1; - result6 += M4(-0.04629577, -0.057534475, -0.01354084, -0.035664707, -0.032455474, 0.0072121215, -0.0030640527, -0.004716625, -0.039526366, -0.08113465, -0.08293605, -0.118422754, -0.018492758, 0.028116766, -0.05123618, 0.014280714) * inp_0_2_1; - result6 += M4(0.27643454, -0.006955999, 0.059600323, 0.02721244, 0.07039344, 0.06796241, -0.032453265, -0.015319131, -0.15781449, -0.015563251, 0.018169994, 0.07843806, -0.032815725, 0.0045961635, 0.007291795, -0.055212837) * inp_0_0_2; - result6 += M4(-0.20129341, -0.020700162, 0.012939738, 0.034968607, 0.11588511, -0.011924343, -0.09606584, -0.038119867, 0.089877196, 0.021603238, 0.015082572, -0.023571493, 0.019836256, -0.055512037, 0.036293767, 0.0391078) * inp_0_1_2; - result6 += M4(0.09037873, 0.017139884, 0.0042421306, -0.012529866, -0.040568594, -0.022939753, -0.049288493, 0.02045268, -0.12456868, 0.021477522, 0.03410426, -0.042234045, -0.0477691, 0.02650476, -0.010795158, -0.01026054) * inp_0_2_2; - result7 += M4(0.037408922, 0.022901045, 0.17857559, -0.007467809, -0.054096118, 0.032582734, 0.028476933, 0.009934257, 0.04911137, 0.01642436, 0.07593433, -0.033404656, 0.02086434, -0.002126818, 0.16576327, 0.0012923892) * inp_0_0_0; - result7 += M4(0.019536879, -0.012675698, -0.10678455, -0.010448809, -0.05208309, 0.0074040866, -0.030260565, 0.024434563, 0.03733627, -0.01970346, -0.022267962, -0.01950978, -0.0023957686, 0.058996107, -0.053874824, -0.018836893) * inp_0_1_0; - result7 += M4(0.010371433, 0.02059556, 0.22709219, -0.021008492, -0.007805979, 0.03468188, 0.23101915, 0.009653657, -0.017042544, 0.04944701, 0.0031324464, -0.09685607, 0.001390613, 0.054915868, 0.114478715, -0.0034285372) * inp_0_2_0; - result7 += M4(-0.012253985, -0.045408767, -0.10626453, 0.06839395, -0.07443572, -0.033961438, -0.16959049, 0.035710827, 0.05507231, -0.03769801, -0.048370406, -0.0075587006, 0.03677807, -0.023149477, -0.025628755, -0.057484712) * inp_0_0_1; - result7 += M4(-0.00036379413, -0.03848448, 0.048601996, 0.011211055, 0.14617102, 0.021121379, 0.29117793, 0.22066964, -0.08563537, -0.043937974, 0.11667677, 0.056606773, -0.018669752, -0.11769504, -0.08774747, -0.08335606) * inp_0_1_1; - result7 += M4(-0.023710055, -0.047630355, 0.025084086, 0.06897326, -0.001394573, 0.012960655, 0.0004915201, -0.094240285, 0.002499041, -0.17356738, -0.378099, 0.051470987, 0.0015200152, -0.053298194, -0.01156152, -0.037229747) * inp_0_2_1; - result7 += M4(-0.05466493, 0.027604472, 0.25605202, 0.02377293, 0.044296082, 0.021557312, -0.011769307, 0.011416828, -0.02285336, 0.0032324276, 0.0485613, 0.024909617, -0.017432084, 0.003812752, -0.011868706, -0.019281639) * inp_0_0_2; - result7 += M4(-0.006228165, 0.03452347, -0.26886514, 0.04977258, -0.07326335, -0.038890567, 0.054000255, -0.187942, 0.025286542, 0.09379949, 0.047752075, -0.021060996, 0.018907966, 0.048508376, -0.10668329, -0.09553002) * inp_0_1_2; - result7 += M4(0.0126414, 0.0052517806, 0.2853811, 0.002204681, 0.028733043, 0.03841762, -0.0230311, -0.030130893, -0.0017311557, 0.0014508333, 0.08701003, 0.034654275, -0.0044470467, 0.012504966, -0.05264956, -0.07792982) * inp_0_2_2; - const V4 inp_1_0_0 = inp[1][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_1_1_0 = inp[1][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_1_2_0 = inp[1][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_1_0_1 = inp[1][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_1_1_1 = inp[1][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_1_2_1 = inp[1][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_1_0_2 = inp[1][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_1_1_2 = inp[1][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_1_2_2 = inp[1][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.05037896, -0.010156884, -0.027868463, 0.27707985, -0.047641072, -0.017029762, 0.10755945, -0.16967519, -0.043823674, -0.012707871, -0.030422477, -0.32330325, -0.06769896, 0.004867151, 0.022249274, 0.00033432792) * inp_1_0_0; - result0 += M4(-0.038287435, -0.023602866, -0.0037990636, -0.106371135, 0.107777916, 0.022198401, 0.0767893, -0.3304052, 0.08904634, 0.005456052, -0.07656523, 0.25061962, -0.04827153, -0.028691549, -0.05489181, -0.43847287) * inp_1_1_0; - result0 += M4(0.09558319, -0.009764103, 0.0055853673, 0.69082874, 0.01439987, -0.025695063, -0.24176969, -0.123844855, 0.0086448705, 0.0068275486, -0.069058895, 0.025276281, -0.017309127, -0.031792138, -0.07459731, -0.20469436) * inp_1_2_0; - result0 += M4(0.020224094, 0.006589851, 0.003892207, -0.0479544, 0.03840538, 0.011656613, -0.19819422, 0.24620602, -0.0897013, -0.015525203, -0.08349847, -0.071020894, 0.0043362156, 0.059960052, 0.06368563, 0.053435158) * inp_1_0_1; - result0 += M4(0.07299045, 0.03323163, 0.13709897, 0.086991005, -0.2743448, -0.036824644, -0.10820552, -0.032876022, 0.06898911, 0.025354706, -0.07541524, -0.17967132, -0.13902383, -0.051563706, -0.11289263, -0.13998818) * inp_1_1_1; - result0 += M4(0.095483564, 0.08520984, 0.014812458, 0.24936526, 0.09318695, 0.013610529, -0.33681697, 0.22766843, -0.048392314, 0.036505535, 0.032527626, -0.101175286, 0.00020538855, 0.049789846, -0.09237988, 0.1558867) * inp_1_2_1; - result0 += M4(-0.04523472, -0.0057419, -0.017144961, -0.26178944, 0.13836615, 0.008698456, -0.31307498, 0.1669235, -0.07387556, -0.032246612, -0.011338322, -0.15282382, 0.093843855, 0.0049961493, -0.015934905, -0.03387322) * inp_1_0_2; - result0 += M4(0.17293593, -0.007859547, -0.09515095, 0.20155463, -0.12778266, -0.031329952, 0.14295414, -0.638332, 0.07837129, 0.024768889, -0.020310981, -0.08563642, 0.061615378, -0.07514121, -0.0053732647, -0.4515358) * inp_1_1_2; - result0 += M4(-0.065507606, 0.018061517, 0.007305374, -0.41499537, 0.027344374, 0.037349045, -0.010228784, -0.19987817, -0.046139337, 0.021519871, -0.065010875, -0.24352121, -0.009686386, 0.05378358, 0.07086608, -0.13261966) * inp_1_2_2; - result1 += M4(0.049531117, -0.035790455, -0.41928986, -0.07258686, 0.04967605, -0.0073910863, -0.26468188, -0.03694207, 0.11475505, 0.006662168, 0.044969678, -0.04589556, 0.03498051, 0.029109027, 0.09142436, 0.10653057) * inp_1_0_0; - result1 += M4(-0.00071961945, -0.03923323, -0.42386058, -0.025973145, 0.036664292, 0.07009794, -0.1752452, 0.091583766, 0.054334387, -0.08201435, -0.27346087, -0.065386176, 0.05927438, 0.09981094, -0.010687833, 0.011396789) * inp_1_1_0; - result1 += M4(0.013772898, 0.004123357, -0.22406544, -0.03372938, -0.0037959747, -0.1021787, -0.19224182, -0.02426959, -0.0013736483, -0.030578883, -0.6609025, -0.0046267477, -0.0070120855, -0.07200084, 0.5173504, -0.006453544) * inp_1_2_0; - result1 += M4(0.033310615, 0.033704642, -0.08238351, -0.08608323, -0.057565555, -0.052030705, -0.15468574, -0.24512087, 0.06183771, -0.03306906, -0.06392042, -0.051080745, 0.058121733, 0.06547874, -0.3284706, 0.1483433) * inp_1_0_1; - result1 += M4(0.021875296, -0.115382835, -0.40484196, 0.0049046353, -0.023294406, 0.006812961, -0.13307503, -0.03302388, 0.031714458, -0.0050284327, 0.20603113, -0.032187954, -0.00020643513, -0.07099713, -0.4760984, -0.09139155) * inp_1_1_1; - result1 += M4(-0.0025319236, 0.013178851, -0.20612815, -0.027106708, -6.658349e-05, 0.01463275, -0.013673301, 0.010649571, -0.0045286715, -0.03442839, -0.04831064, -0.009419312, 0.0001966206, 0.02496311, -0.2597832, -0.023480205) * inp_1_2_1; - result1 += M4(0.012328618, -0.021958899, -0.057375263, -0.05042422, 0.025829116, 0.0017488701, 0.023190558, 0.10543272, 0.01082077, 0.014200328, -0.031499486, -0.035135597, -0.0071980385, -0.012629111, -0.07526829, 0.028333103) * inp_1_0_2; - result1 += M4(0.0030578838, 0.020733578, -0.034656513, -0.04058147, -0.013243777, 0.010402188, -0.017424135, -0.010434098, -0.0044764723, -0.032311052, 0.0099083735, -0.05769269, 0.009299728, 0.0142191965, 0.014326754, 0.060805757) * inp_1_1_2; - result1 += M4(0.0043122442, -0.017874032, -0.040847033, 0.027296232, 0.0054131243, 0.01729703, -0.04689293, -0.01535753, 0.0007371162, -0.0051923883, -0.11184575, -0.0024192024, -0.005087049, -0.020235771, 0.14237028, -0.009674009) * inp_1_2_2; - result2 += M4(0.0067406273, -0.014969899, -0.0034982348, -0.0143497735, 0.053278636, 0.017805137, 0.005636338, 0.0183622, -0.027816482, -0.021903943, -0.017633723, -0.010248341, 0.11715629, 0.016175093, 0.0028988807, -0.006090842) * inp_1_0_0; - result2 += M4(-0.07264295, -0.06247945, 0.0093363365, -0.0072268746, -0.051875517, 0.07976882, -0.028984727, 0.051433507, -0.0035772016, -0.041316837, 0.017506609, 0.03129873, -0.015155887, -0.05210754, 0.005615676, -0.039617304) * inp_1_1_0; - result2 += M4(-0.063032694, 0.00069291063, -0.016228529, 0.0055243885, -0.0058627324, -0.056551088, 0.016015215, 0.013029371, -0.07794348, 0.021643905, 0.013118689, 0.01992912, 0.07486532, 0.010249101, -0.004071989, -1.5473373e-05) * inp_1_2_0; - result2 += M4(-0.05339692, -0.02848373, 0.017285813, -0.0062172282, -0.11675281, -0.006730972, -0.010681321, 0.0066897003, 0.015993219, -0.036689498, 0.012211114, 0.013875579, -0.036522925, 0.037063796, -0.026763547, -0.01859867) * inp_1_0_1; - result2 += M4(-0.14439102, -0.12095525, 0.008649433, -0.0048565273, 0.013150018, 0.11193562, 0.26632857, 0.015372081, -0.16307461, -0.04984206, 0.062357314, 0.08946954, 0.19887441, -0.15533286, -0.009880657, -0.015948778) * inp_1_1_1; - result2 += M4(-0.020636382, 0.0025064137, 0.034396756, -0.0027418884, -0.08052618, -0.027344402, 0.018490924, 0.06093634, -0.036324855, -0.07003056, 0.008274046, 0.055257417, -0.064436965, 0.023901876, -0.009208122, 0.041431434) * inp_1_2_1; - result2 += M4(-0.00052487606, -0.005965945, -0.0010799253, 0.023954483, -0.040736023, -0.030960575, 0.020355886, -0.0050380905, -0.044054337, -0.0017319162, 0.01167222, -0.0011890123, 0.084279425, -0.021926109, 0.0027567476, 0.00040879578) * inp_1_0_2; - result2 += M4(-0.06881451, -0.03623741, 0.0060687056, 0.0045985333, 0.07828628, -0.043959927, -0.0658987, 0.022360813, 0.0053959973, -0.018694434, 0.045605086, 0.013123373, -0.086320825, -0.0060157054, 0.014189795, -0.027242515) * inp_1_1_2; - result2 += M4(0.012536099, -0.06286323, -0.0025253727, -0.008480801, 0.011877647, 0.03423318, -0.0009010962, 0.02610964, -0.033826746, -0.04265456, 0.030549133, 0.031162715, 0.020596966, -0.05795689, -0.02009549, -0.020888042) * inp_1_2_2; - result3 += M4(-0.10252847, 0.022866277, -0.0024894492, -0.002559571, -0.011135643, 0.03390267, 0.026987903, -0.0032934935, 0.010037747, 0.031266518, -0.0105553055, -0.0007543806, -0.042968173, 0.044579186, 0.009484557, 0.0036737667) * inp_1_0_0; - result3 += M4(-0.31997693, -0.08073626, 0.024914313, 0.008780215, 0.038791794, -0.042147163, 0.036691565, 0.006689034, 0.047343507, -0.08728889, 0.023102723, 0.0072207158, -0.13286747, 0.0036194, -0.0031785364, -0.009700641) * inp_1_1_0; - result3 += M4(-0.120304175, 0.005900536, -0.0064830557, -0.007354904, 0.0026426364, -0.024505205, -0.01026338, -0.0024159737, 0.019664748, 0.0116702635, 0.0148522165, -0.010758574, -0.09359214, 0.0093129715, 0.015602759, 0.0043815826) * inp_1_2_0; - result3 += M4(-0.07241355, 0.009656019, 0.023329727, -0.0057381084, -0.0389873, -0.059274644, 0.030664088, -0.0063386173, -0.02402202, -0.059020903, 0.017619193, 0.0019493388, 0.02211667, -0.0022018654, -0.0009066275, -0.0035926609) * inp_1_0_1; - result3 += M4(-0.24743818, -0.11118198, -0.07428311, 0.012623539, -0.032780148, 0.014880359, -0.065376535, -0.010597231, -0.15149888, 0.0320509, -0.008973664, -0.006141313, 0.12747389, -0.0689449, -0.031448867, 0.013768835) * inp_1_1_1; - result3 += M4(0.07040515, 0.02070807, 0.021070736, 0.012635594, -0.0068838713, 0.012274684, 0.016697722, 0.030096048, -0.10315462, -0.07206562, -0.004780643, 0.0005767503, 0.13277078, 0.036879703, 0.039186083, 0.009959965) * inp_1_2_1; - result3 += M4(-0.033462446, -0.053776756, -0.0064177946, 0.0010977387, 0.026549293, 0.0015947602, 0.01715976, 0.005309576, -0.04080516, 0.021077914, -0.010294192, -0.009321328, -0.049377393, -0.0050969613, 0.016994646, -0.0063533126) * inp_1_0_2; - result3 += M4(-0.22475904, -0.0672902, 0.04934163, 0.0038702458, 0.048880246, -0.07266143, -0.04466701, 0.007088508, -0.030731315, -0.063591205, -0.010208679, 0.0061525134, -0.15110677, 0.08497423, 0.024867756, -0.01632358) * inp_1_1_2; - result3 += M4(-0.018327389, -0.0147863375, -0.015077345, -0.6673533, 0.06001636, -0.013995212, -0.01539493, -1.527668, 0.026891002, -0.031887505, 0.00811942, -0.43328196, 0.0021717248, -0.06631518, -0.001970236, -0.6947934) * inp_1_2_2; - result4 += M4(0.013346519, -0.067694016, 0.06748892, 0.035024554, 0.011942324, 0.008094802, 0.1368533, -0.004341536, -0.0069850762, -0.06055194, -0.045794595, 0.018748593, 0.014710511, 0.055891268, 0.017776951, -0.058099262) * inp_1_0_0; - result4 += M4(0.0034404204, -0.020444434, -0.105943516, -0.017320368, 0.02662866, 0.0037738143, -0.033602886, -0.17014432, 0.0220068, 0.009240361, -0.03515271, 0.010477907, -0.060031243, -0.07283544, 0.08687965, 0.061650276) * inp_1_1_0; - result4 += M4(-0.002428254, -0.030843027, 0.008086221, 0.007803876, -0.009981471, -0.016794948, 0.03582134, 0.025737537, 0.011009215, -0.05576035, -0.07985168, 0.0044083414, -0.014782762, 0.017504133, -0.014047267, 0.007281163) * inp_1_2_0; - result4 += M4(0.020132989, -0.14745066, -0.05456633, -0.029956782, -0.016356, -0.0005631249, 0.0048850197, 0.12215129, 0.0126817925, -0.03789619, -0.037291072, -0.03932846, -0.051175646, -0.018485364, -0.13874069, 0.11646204) * inp_1_0_1; - result4 += M4(-0.0020105594, -0.19025879, -0.1403393, -0.17514408, -0.0388187, -0.075212374, 0.18973178, -0.10648991, 0.13904788, 0.01261861, -0.1141167, -0.10854186, 0.21604955, -0.00408051, 0.016621398, 0.0077759526) * inp_1_1_1; - result4 += M4(-0.010641367, -0.020111125, -0.027456038, 0.044449598, -0.011464692, 0.0062230737, -0.05266418, 0.07212684, 0.017461957, -0.07810184, 0.017724812, -0.025330577, -0.036687933, 0.017368603, -0.15860564, 0.013071239) * inp_1_2_1; - result4 += M4(0.0010621824, -0.19533324, 0.015704911, -0.1108958, 0.020853404, -0.062549315, -0.0048789023, -0.056535337, 0.01423361, -0.026259735, -0.053097874, -0.023078114, -0.0057763476, 0.11736603, 0.045286436, 0.061868157) * inp_1_0_2; - result4 += M4(0.031939637, -0.234903, -0.08870229, 0.063286856, -0.029926071, -0.036685262, -0.047713894, -0.117944226, 0.011520637, -0.068517916, -0.016296227, -0.011841672, -0.011683301, 0.11041701, -0.026165174, 0.0036050586) * inp_1_1_2; - result4 += M4(0.014481651, -0.0871055, -0.16621852, -0.015467656, 0.001015293, 0.03906773, 0.10498438, 0.0026190563, 0.0076557375, -0.018945247, -0.097888015, -0.014159335, -0.018618993, -0.039254785, -0.077536896, -0.06820942) * inp_1_2_2; - result5 += M4(0.10193471, -0.021023208, 0.014190351, 0.042543653, 0.15905298, 0.0683432, -0.043398876, 0.029667398, -0.06287452, -0.029009687, -0.06549019, -0.012454952, -0.21820055, -0.061629, 0.07447156, -0.013039905) * inp_1_0_0; - result5 += M4(0.08792792, -0.03449169, -0.016810294, 0.032821026, -0.04179727, -0.045708675, 0.06042599, -0.1352027, -0.06243529, -0.0026280943, -0.029860206, -0.013633717, 0.1100565, 0.034319445, -0.16494428, 0.021346182) * inp_1_1_0; - result5 += M4(-0.040114004, 0.019241879, 0.027664032, -0.013234759, 0.11362706, -0.009379261, -0.021996032, 0.07206362, -0.07768432, -0.032807197, -0.016791832, 0.005460989, 0.03129745, -0.010366214, -0.036847588, 0.030749721) * inp_1_2_0; - result5 += M4(0.002956176, -0.021071346, 0.058472395, 0.05267543, -0.117180005, 0.038762417, 0.0021996167, -0.050898887, 0.021590894, -0.03333124, -0.08864877, 0.03052934, -0.45513692, 0.07772634, 0.28772023, -0.054444212) * inp_1_0_1; - result5 += M4(0.13997251, -0.080730006, 0.05447033, 0.0021522816, 0.008860018, 0.26769593, 0.041911416, 0.052043248, -0.16004008, -0.07634608, -0.0055528777, -0.06049037, 0.013802611, -0.15075132, -0.36844587, -0.007616827) * inp_1_1_1; - result5 += M4(-0.047466606, -0.034661513, 0.0585757, -0.060334545, -0.103632174, -0.01284229, -0.08527415, 0.12727842, 0.10925461, -0.008729073, -0.08524067, 0.017983496, -0.35769263, -0.082100175, 0.035306145, 0.12572296) * inp_1_2_1; - result5 += M4(-0.06249337, 0.019419702, 0.022711432, -0.011751029, 0.08475661, -0.10077005, 0.0070242905, 0.008443126, -0.10684619, -0.0019151018, -0.00941225, -0.03414575, 0.01803137, 0.025505517, -0.09047788, 0.02564225) * inp_1_0_2; - result5 += M4(-0.21558486, -0.021556063, 0.029372927, -0.02856429, -0.0063539944, 0.0035174463, 0.0106871985, -2.6917054e-05, -0.08531385, -0.003708403, -0.061096467, -0.04283765, 0.28784096, -0.11832249, -0.29179233, 0.052563284) * inp_1_1_2; - result5 += M4(0.20711468, -0.10248798, -0.058816336, -0.04590923, -0.2752915, 0.014254596, -0.015511905, -0.058869623, -0.07077818, -0.10192252, -0.04225944, -0.014494845, -0.25916654, 0.025721159, 0.0682635, -0.0047610938) * inp_1_2_2; - result6 += M4(0.48287755, -0.1071204, 0.049747277, 0.04039841, -0.042596623, -0.080700375, 0.0004156297, 0.05038289, -0.07844619, 0.00634547, 0.014929353, -0.045968127, -0.058236957, 0.013835223, 0.015949266, -0.08836349) * inp_1_0_0; - result6 += M4(-0.11624733, -0.16032939, -0.16420963, -0.026324186, 0.012877986, -0.0766128, -0.025289932, -0.015005911, 0.17034677, -0.11220053, 0.008958776, -0.037887402, -0.28413534, 0.045247473, 0.005815753, -0.030302923) * inp_1_1_0; - result6 += M4(0.06429649, -0.03766244, -0.082789466, 0.0975323, 0.048915524, -0.04182964, 0.048796806, 0.004824378, -0.05442758, -0.09388978, -0.012755396, -0.008797137, -0.078147165, -0.0005805863, 0.1318865, -0.023582246) * inp_1_2_0; - result6 += M4(0.20478253, -0.017669259, -0.019892622, 0.020645922, -0.08471951, 0.013883298, -0.0028118144, -0.021111574, -0.08036978, -0.047272533, 0.00068563136, 0.03167713, -0.08732, 0.022818238, 0.033780772, -0.20995674) * inp_1_0_1; - result6 += M4(0.072367825, -0.1807756, -0.05513819, -0.14150509, -0.2862018, 0.1694835, 0.03407689, -0.13247122, -0.00363825, -0.023707986, 0.034835067, -0.023837287, -0.2537865, -0.23146068, -0.00607755, 0.0133680925) * inp_1_1_1; - result6 += M4(0.012352117, -0.03476645, -0.032599293, 0.047904342, 0.03787984, 0.04539793, 0.015161647, 0.060938925, -0.060568277, 0.021346752, 0.01871174, -0.021350212, 0.11268274, -0.026084704, -0.0013706492, 0.033274245) * inp_1_2_1; - result6 += M4(-0.52990043, -0.08654697, -0.020307368, 0.020255638, -0.30305266, -0.034583095, -0.003315023, 0.071075626, -0.3080947, -0.017763045, -0.0050346567, -0.08193865, 0.10578328, 0.014284723, 0.033921853, 0.06828971) * inp_1_0_2; - result6 += M4(0.3192489, -0.18589017, 0.015033236, -0.044923577, 0.10041551, 0.031083498, -0.04764044, -0.12333946, 0.026874121, -0.06038008, 0.047326017, -0.01088206, -0.24789691, 0.05832758, 0.08921887, 0.062138718) * inp_1_1_2; - result6 += M4(-0.16614407, -0.09352871, 0.023176007, -0.017200217, -0.015738416, 0.005635579, -0.056779508, 0.000545195, -0.02036396, -0.08431571, 0.061064716, -0.01514169, 0.07920318, 0.051097155, 0.024797855, 0.008070783) * inp_1_2_2; - result7 += M4(0.0028647254, -0.011179821, -0.11482866, -0.02559933, -0.030910932, -0.046164412, -0.3317651, -0.0023134858, 0.014452637, 0.007833266, -0.004520489, -0.019756036, 0.054778293, -0.032822315, 0.01243773, 0.0020590117) * inp_1_0_0; - result7 += M4(-0.015141486, -0.09521568, -0.039523706, -0.1299818, 0.020260049, -0.10820722, -0.18762231, 0.01335802, 0.02356166, -0.017736146, -0.15372571, 0.015858302, -0.00096049014, 0.030287959, 0.1318962, -0.05872493) * inp_1_1_0; - result7 += M4(-0.0011719851, -0.048418578, 0.010085966, -0.085926324, 0.012440839, -0.07867422, -0.14713491, -0.031878397, -0.0020125618, -0.04598439, -0.2988731, -0.027894882, 0.0040576407, 0.060737386, 0.035774898, -0.0052871937) * inp_1_2_0; - result7 += M4(0.0048983344, -0.0014462988, -0.18647727, -0.00077790226, 0.030740386, 0.03843815, -0.04492873, -0.0646307, 0.024196263, 0.039607737, 0.11565932, -0.023875214, -0.12646061, 0.026416045, -0.19727263, 0.031829808) * inp_1_0_1; - result7 += M4(0.021801436, -0.1327265, -0.37031206, -0.1908249, -0.029999558, 0.026604092, -0.2641697, -0.038401064, -0.026181595, 0.04064756, 0.07849323, -0.072364785, -0.061969034, -0.027559951, -0.18754058, 0.087279096) * inp_1_1_1; - result7 += M4(0.0044803717, -0.094691284, -0.1301035, -0.04102984, 0.015958415, 0.042736482, 0.11805975, 0.08031093, 0.0032725255, -0.006624566, -0.06244819, -0.07830096, -0.008422075, 0.09987933, -0.1553778, -0.044044048) * inp_1_2_1; - result7 += M4(0.0009743219, -0.019714514, -0.26452848, -0.039266016, 0.053453956, -0.019878501, -0.09415139, 0.012378666, -0.014128994, 0.009658771, -0.028858336, -0.003354122, -0.023767345, 0.01877551, 0.010958112, -0.0030271173) * inp_1_0_2; - result7 += M4(-0.0071306583, -0.12803029, -0.31628567, 0.0045230947, 0.021886924, -0.0760326, -0.18881448, -0.068082035, 0.013735261, -0.0072946018, -0.039699815, -0.00428929, 0.038212992, 0.09053652, 0.062734604, 0.14285412) * inp_1_1_2; - result7 += M4(0.002617137, -0.030930404, -0.16594335, 0.03333387, 0.0021453553, -0.029627861, -0.14954305, -0.072701104, 0.009837336, -0.028766047, -0.3079654, 0.010762513, -0.02293219, -0.03589556, 0.07523694, 0.0064372015) * inp_1_2_2; - const V4 inp_2_0_0 = inp[2][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_2_1_0 = inp[2][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_2_2_0 = inp[2][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_2_0_1 = inp[2][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_2_1_1 = inp[2][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_2_2_1 = inp[2][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_2_0_2 = inp[2][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_2_1_2 = inp[2][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_2_2_2 = inp[2][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.07132571, 0.005150826, 0.015732253, 0.07088171, -0.08459512, -0.010260288, -0.10617406, -0.26826507, 0.013121191, -0.025777424, 0.001680307, -0.100131, 0.02257832, -0.017088238, -0.19210233, -0.22049381) * inp_2_0_0; - result0 += M4(0.11788996, 0.00015552876, -0.045526337, -0.05818421, 0.09102708, -0.0048171026, -0.2525124, 0.09042119, 0.03890557, -0.0032408172, -0.078757875, 0.08119078, -0.012506944, -0.004068487, 0.19190207, -0.03724228) * inp_2_1_0; - result0 += M4(0.016121, 0.009919138, 0.21508317, -0.08302226, -0.07082196, 0.016542807, 0.027497625, 0.047892928, 0.02820552, -0.01455895, 0.008535345, -0.024163993, -0.008987961, -0.011850685, -0.124052, -0.03977468) * inp_2_2_0; - result0 += M4(0.05195895, 0.008433792, 0.10886249, 0.12547772, -0.14783552, -0.036601003, 0.1092164, -0.21352693, -0.06785803, 0.01702591, 0.00041934982, -0.16952418, -0.17524901, -0.056408525, -0.18474859, -0.15713733) * inp_2_0_1; - result0 += M4(-0.65559846, 0.006109628, -0.3173891, -0.16949691, 0.09460338, -0.0032527507, -0.22804932, -0.20347266, -0.2883165, 0.033121962, -0.3490746, -0.6927761, 0.063815095, 0.04312017, -0.30824232, -0.25560945) * inp_2_1_1; - result0 += M4(0.1269806, -0.12344292, 0.010457634, 0.024680123, -0.16068769, -0.057921823, 0.14831479, -0.22931206, 0.03815235, -0.2144991, -0.07848507, 0.25062713, -0.14390248, -0.08043282, -0.0074047795, -0.22791879) * inp_2_2_1; - result0 += M4(0.1302404, 0.0027324024, -0.011020682, 0.26929563, -0.13213636, -0.029963065, 0.089973606, 0.11130824, -0.012121762, -0.024472283, 0.045093216, -0.07769975, -0.21843153, -0.008581717, -0.020934893, -0.41299257) * inp_2_0_2; - result0 += M4(-0.22726613, 0.005056468, 0.11019166, -0.6352738, 0.11979259, 0.022524945, -0.35949022, -0.106106624, -0.07764155, 0.040899586, -0.02395194, 0.03633985, -0.1411842, -0.08520981, -0.07883908, -0.051873602) * inp_2_1_2; - result0 += M4(0.017990919, 0.015805878, -0.087897725, 0.52015126, -0.0519436, 0.009466339, -0.11455707, -0.46876907, 0.026348218, -0.062664606, 0.059684716, -0.07943898, -0.09397389, 0.0011803234, 0.011458613, -0.515254) * inp_2_2_2; - result1 += M4(-0.05300824, 0.04953458, -0.6339418, 0.08044533, 0.025777744, 0.017001657, 0.15984653, 0.068701394, -0.15539256, 0.059739217, -0.4980222, 0.0492933, -0.054455306, 0.0005894315, -0.2123805, 0.033696536) * inp_2_0_0; - result1 += M4(0.0050620274, -0.14780807, -0.37739626, -0.038555313, -0.030460866, -0.13503501, -0.039183468, -0.089793436, -0.017220566, -0.28443435, -0.24738066, -0.029066501, 0.031335965, -0.13397636, -0.3836091, -0.004611916) * inp_2_1_0; - result1 += M4(0.0094473865, 0.030713484, -0.17614625, 0.0119445305, 0.009965316, -0.015225813, 0.010904399, 0.035059664, 0.006875883, -0.05476303, -0.11254161, -0.0014154853, -0.009296389, -0.0006428385, -0.3462228, -0.02378581) * inp_2_2_0; - result1 += M4(0.009099742, -0.040766347, 0.23239571, -0.5838029, 0.043094218, 0.016414674, 0.05911906, 0.008481924, -0.029712975, 0.020230317, -0.030105785, -0.2957686, 0.005933767, -0.005216988, -0.27062085, -0.26880434) * inp_2_0_1; - result1 += M4(0.004853299, 0.057018213, -0.16222326, 0.11322413, -0.00823356, -0.061224245, -0.25013804, -0.015502493, -0.002303434, -0.020597547, -0.14420557, 0.02033136, 0.010508009, 0.12784787, -0.088859916, 0.011612999) * inp_2_1_1; - result1 += M4(0.0022965944, -0.04981258, 0.06877351, -0.007777391, -0.004746569, -0.046351228, -0.05877441, -0.01187184, 0.0013005333, 0.0055457954, 0.15539573, 0.00056802284, -0.0005676009, 0.009853539, 0.071415596, 0.044352826) * inp_2_2_1; - result1 += M4(-0.001125868, 0.0067269257, 0.071671836, 0.089598425, -0.0039476613, -0.0036907324, -0.046960693, -0.085276954, 0.0071136463, -0.0034834892, -0.0008981157, 0.006854884, 0.00028084463, -0.0134614445, -0.083493635, -0.034210853) * inp_2_0_2; - result1 += M4(0.008228416, 0.012177619, -0.029430056, -0.03222898, 0.0052314415, 0.018981848, -0.106261596, -0.02285805, -0.00040615024, 0.008205649, 0.06552226, 0.026604837, -0.0028016504, 0.0068879873, -0.21038634, -0.037491754) * inp_2_1_2; - result1 += M4(0.000364464, -0.019108629, -0.032032806, 0.008647301, 0.0016402985, 0.0015333766, -0.11237561, 0.0065990663, 0.0032056596, -0.0043341243, 0.05045575, -0.0022094462, -0.0032256108, 0.011921217, 0.027304625, -0.0139452815) * inp_2_2_2; - result2 += M4(0.022088034, 0.039345697, -0.008409977, -0.0075372127, 0.061631054, 0.053311344, 0.013031838, 0.016047163, -0.00042556383, -0.043137584, 0.008649359, -0.0002750943, -0.059480365, 0.032901514, -0.011881418, 0.023531854) * inp_2_0_0; - result2 += M4(-0.1325806, -0.0026237194, -0.0026974177, 0.0152851185, -0.06989075, -0.0745433, 0.023916276, -0.04221538, 0.06291787, 0.058736198, -0.021736838, 0.004772951, 0.07603278, -0.004752676, 0.011096893, 0.0024535346) * inp_2_1_0; - result2 += M4(0.06052341, 0.011145993, 0.030343581, 0.024960702, -0.014986822, 0.091229334, -0.0038534747, 0.015773667, -0.044561923, -0.033894543, 0.0034703908, -0.0102668265, -0.008273996, -0.00279971, 0.005020996, -0.007784798) * inp_2_2_0; - result2 += M4(0.007703431, 0.05227478, 0.02399087, 0.0121723935, 0.031632137, 0.07225766, 0.0316231, -0.019108579, 0.08116797, 0.042300284, 0.011731863, -0.025638094, -0.123338394, -0.035003614, -0.0091224285, -0.04027712) * inp_2_0_1; - result2 += M4(-0.24110727, -0.2763587, -0.1095347, -0.1689055, -0.00887115, 0.2009854, 0.07302493, 0.2832617, -0.26984674, -0.31477144, -0.22358839, -0.27205837, -0.028263723, -0.035163034, -0.04360847, -0.0728403) * inp_2_1_1; - result2 += M4(-0.028371044, 0.010835493, 0.042624466, 0.024880955, 0.015618368, -0.07274243, 0.016231304, -0.042112805, 0.04085007, 0.05789626, 0.017054854, 0.0020676567, -0.060720906, -0.020646993, -0.010940842, 0.026826419) * inp_2_2_1; - result2 += M4(0.012329244, 0.009497907, -0.0077971932, -0.0014942917, -0.013753574, -0.03059576, -0.0020084307, 0.009183472, -0.012371195, -0.004016069, -0.0041522235, -0.0053123715, 0.006121156, -0.07604725, -0.021597397, 0.028479604) * inp_2_0_2; - result2 += M4(0.01900128, 0.048854962, 0.00392547, 0.020041822, -0.07064538, 0.0062142345, 0.03501625, -0.004608559, 0.03861175, 0.029795088, -0.005560443, 0.019189144, 0.02867691, -0.006801344, 0.026197014, 0.026882872) * inp_2_1_2; - result2 += M4(-0.023022518, 0.02936479, -0.004551731, 0.00024310059, -0.023230795, 0.05264202, 0.022695182, 0.02976707, 0.018302644, -0.03182334, -0.014138001, -0.025751723, 0.050447002, 0.040725816, 0.019036451, 0.028654903) * inp_2_2_2; - result3 += M4(0.052285817, -0.009704303, -0.0036280586, 0.004044497, -0.11879049, 0.012918864, 0.023682896, -0.0020064355, -0.018525545, -0.017449254, 0.023294536, -0.00048735098, -0.07535357, 0.00544582, -0.011656678, -0.0034930648) * inp_2_0_0; - result3 += M4(-0.19193043, 0.03330142, -0.042494174, 0.00044521427, -0.16287042, 0.015187415, -0.01815633, 0.004206075, 0.096789464, -0.00091045507, 0.0061850627, 0.00011618156, -0.112579726, 0.048594996, 0.007135018, 0.00640628) * inp_2_1_0; - result3 += M4(0.045244448, 0.03235197, 0.013750944, -0.0029552926, -0.07989646, -0.024723543, 0.04783488, 0.0077551934, 0.03795488, -0.05322015, 0.0028234136, 0.0017852957, 0.010508417, -0.00542943, -0.003554507, -0.00660301) * inp_2_2_0; - result3 += M4(-0.17623675, 0.021228913, 0.027927829, -0.0093376525, 0.062799565, -0.08178061, 0.013843893, 0.0023171015, -0.037640084, 0.026510414, -0.006717997, -0.0038792877, -0.12036494, -0.011559504, 0.04464895, 0.003668928) * inp_2_0_1; - result3 += M4(-0.6865767, -0.36609825, 0.028672466, -0.012376336, 0.12093244, -0.0139712915, 0.008582853, -0.0073699565, -0.49210975, -0.15611234, -0.74353385, 0.0129755465, -0.26049656, -0.111548975, 0.12438715, 0.017055405) * inp_2_1_1; - result3 += M4(-0.013969955, 0.036069337, -0.0058337124, 0.01681188, 0.043685008, -0.06181345, -0.056702856, -0.018411878, 0.0618886, -0.020907203, -0.04094457, -0.005577651, -0.019882012, -0.017036183, -0.0021943082, -0.0086917095) * inp_2_2_1; - result3 += M4(0.085021414, 0.05243971, 0.021339007, 0.0055299434, 0.0018639058, -0.055876356, -0.0138860755, 0.004671547, 0.05298036, -0.018937826, -0.0011585585, 0.0020609146, -0.006758378, -0.02803557, -0.05495585, 0.0035969382) * inp_2_0_2; - result3 += M4(-0.08516386, -0.028686045, 0.0007204811, 0.004626853, -0.14424245, -0.0047501484, 0.04655493, -0.0024662688, -0.086803265, -0.030190552, -0.0064690853, 0.007175386, 0.06278512, -0.07566089, -0.076233394, 0.003812111) * inp_2_1_2; - result3 += M4(-0.019719942, -0.030407878, -0.0039582183, -1.0022997, -0.063763, -0.047163107, -0.0030585923, -0.22416353, 0.020721387, 0.011854219, -0.0124537945, -1.0430204, 0.013771342, 0.0024727662, 0.013219259, -1.3325353) * inp_2_2_2; - result4 += M4(-0.0018976956, -0.01773822, 0.113740236, -0.03010147, -0.0006368601, 0.008933818, 0.010790345, -0.008303735, 0.015205657, 0.01935826, 0.013463846, 0.0057573044, 0.013031073, 0.018875659, -0.057726882, 0.06178639) * inp_2_0_0; - result4 += M4(-0.028432546, -0.033225965, 0.004389029, -0.04190598, -0.022039663, 0.02890873, 0.04517798, 0.12075563, -0.01083097, 0.02184465, -0.004304903, -0.061429285, 0.027387466, 0.033286013, 0.09762235, -0.030319443) * inp_2_1_0; - result4 += M4(0.038216684, 0.047992278, -0.06499205, 0.050704207, 0.0102739595, 0.02566829, -0.09544673, -0.050889015, 0.0060698604, 0.017992869, -0.047779445, -0.06714754, -0.0068103033, -0.0024504727, -0.027791899, -0.04207471) * inp_2_2_0; - result4 += M4(0.021868901, -0.0005611514, -0.102911964, 0.07851412, 0.04247854, -0.07500577, 0.084712304, -0.17994498, -0.0014811258, -0.10287173, 0.018237447, -0.09695345, -0.0009852829, -0.050765745, 0.042663284, -0.16274092) * inp_2_0_1; - result4 += M4(-0.1390959, -0.025282837, -0.1846367, -0.17312488, 0.0055536516, 0.0040156716, -0.0461931, 0.001382832, -0.28217703, 0.029439924, -0.16460842, -0.13419051, -0.096350975, 0.06364015, -0.23242922, -0.07681194) * inp_2_1_1; - result4 += M4(0.032423206, -0.037463803, 0.2050939, -0.037939724, 0.013593004, -0.09690995, 0.05423229, -0.08290705, 0.0033012172, -0.011042271, -0.053883165, 0.08687992, 0.021856144, -0.087685846, 0.05219188, -0.0030693053) * inp_2_2_1; - result4 += M4(-0.008953135, -0.1113049, 0.097485356, 0.036441073, -0.0017627795, 0.010715943, -0.075150445, -0.0014170397, 0.006788333, 0.036601044, 0.0028537803, 0.007882257, -0.01913979, -0.35399958, -0.16557258, -0.08922662) * inp_2_0_2; - result4 += M4(-0.007894873, -0.247034, -0.32074225, -0.08379133, 0.024869444, 0.09874298, 0.10016384, 0.06778328, -0.015118385, -0.034572996, 0.053223297, 0.0075352187, 0.06672278, -0.2246834, -0.11335976, 0.011710807) * inp_2_1_2; - result4 += M4(0.0037737216, 0.04569744, 0.0891477, -0.052269626, 0.017478356, -0.014166888, -0.006724581, -0.0183561, -0.0007778904, 0.018482825, 0.008358527, -0.027108861, 0.015110892, -0.05507293, 0.02571182, 0.03945836) * inp_2_2_2; - result5 += M4(-0.034972914, 0.0102338055, 0.059031747, 0.0043630227, 0.13975635, 0.049081687, -0.027245635, 0.080821805, 0.027582292, 0.03695274, -0.056011464, 0.038110293, 0.2849961, -0.01152634, -0.08524224, -0.00069102546) * inp_2_0_0; - result5 += M4(-0.016466742, 0.021760534, -0.021024497, -0.114846155, -0.0050430405, 0.050177496, 0.044557672, 0.024205728, -0.12940419, -0.012064237, 0.012600811, -0.23423016, 0.029583657, 0.011737388, 0.07819717, 0.05101882) * inp_2_1_0; - result5 += M4(0.077574186, 0.010959904, -0.014440896, -0.107518494, -0.12593453, -0.058278974, 0.05325273, -0.043343127, 0.06526794, -0.0026265485, 0.021433745, -0.0077145747, -0.10708181, -0.011208305, -0.0016049604, 0.013776598) * inp_2_2_0; - result5 += M4(-0.02023155, 0.05288315, -0.027932774, -0.030171687, 0.03480106, -0.0007351669, 0.01844147, 0.044539217, 0.11080655, 0.0065697753, -0.031845115, 0.038780972, 0.17203246, -0.12003394, -0.21639422, -0.09261596) * inp_2_0_1; - result5 += M4(-0.11882186, -0.29790485, -0.36498007, -0.04432911, 0.062221136, 0.14645776, 0.09447305, 0.0961373, -0.15542302, -0.19650492, -0.19160284, -0.13592017, -0.71006054, -0.03200698, 0.013722355, 0.10948944) * inp_2_1_1; - result5 += M4(0.045254912, 0.1546696, -0.0114585, -0.0006904935, -0.090997025, 0.027545037, 0.05975433, -0.17832111, -0.039006714, 0.02346445, 0.015942326, 0.07892574, 0.068657696, -0.0021166562, -0.022209838, -0.015681103) * inp_2_2_1; - result5 += M4(0.15338975, -0.038560215, 0.022431359, -0.0008673381, -0.13922183, 0.060261592, 0.09038329, -0.03609017, -0.058197495, 0.02361563, 0.028498296, 0.0044138716, -0.12399003, 0.0036374265, 0.03762556, -0.062301684) * inp_2_0_2; - result5 += M4(-0.13698286, 0.07509359, 0.13008814, 0.03582509, 0.04159407, -0.02069817, 0.00074588717, 0.09005149, -0.21771005, 0.03947698, -0.08346688, -0.029511157, -0.21584345, -0.008725979, -0.12783167, -0.1229106) * inp_2_1_2; - result5 += M4(-0.026397498, 0.032413654, 0.048146993, -0.017106501, 0.03959079, 0.038397163, -0.010606256, -0.0015683355, -0.11562816, 0.0025159414, 0.022178967, -0.021232966, 0.13993143, -0.020636652, -0.071690924, -0.0073879454) * inp_2_2_2; - result6 += M4(0.18982914, -0.044362914, 0.031093763, -0.07465705, 0.038738616, 0.04440889, 0.024108104, 0.080020584, -0.22956698, 0.022889934, 0.027151057, 0.05304326, -0.107037686, 0.0607596, -0.003732929, 0.17106667) * inp_2_0_0; - result6 += M4(0.0095579615, 0.038233228, -0.09681008, -0.040829446, -0.083576545, -0.008014498, 0.08885777, 0.11325764, -0.0843535, 0.026818458, -0.18478753, -0.046880867, -0.20441227, 0.06251399, -0.1502272, -0.040597867) * inp_2_1_0; - result6 += M4(-0.073, 0.0033352678, -0.28655007, 0.04164069, -0.047815993, -0.03085679, 0.14248835, 0.037665624, 0.055440623, 0.0012580185, -0.15802169, -0.012820371, 0.06956232, -0.054167394, -0.009676528, -0.06943438) * inp_2_2_0; - result6 += M4(0.17574356, 0.0044225478, 0.05503534, 0.041197572, -0.1117672, -0.0016337867, 0.022133714, 0.044980865, 0.14867087, -0.005532458, 0.058791004, 0.028293682, -0.32334054, -0.1765837, -0.07803659, 0.07916237) * inp_2_0_1; - result6 += M4(-0.21054757, -0.2577799, 0.09533944, -0.02624101, 0.2027694, -0.11940039, -0.10742113, -0.017960316, -0.08032507, -0.32743424, -0.057841517, -0.053228322, 0.19579709, -0.12407397, -0.03277884, -0.12802407) * inp_2_1_1; - result6 += M4(0.02388796, 0.025416138, 0.031053495, 0.050074343, -0.105788, -0.016524162, -0.022375701, -0.03950573, 0.017882522, 0.015900968, -0.033731233, 0.010930174, -0.066335306, 0.0013105621, -0.08450349, -0.06860593) * inp_2_2_1; - result6 += M4(0.1559393, 0.011887965, -0.03058573, 0.025694313, -0.14557314, -0.006462871, -0.002616009, -0.040511698, -0.27222195, 0.03200874, -0.021298317, 0.005974802, -0.23448488, -0.039173704, 0.0056289854, -0.09668508) * inp_2_0_2; - result6 += M4(-0.22243054, 0.091813445, -0.012189117, 0.012827388, -0.058973417, -0.02817465, 0.07609694, 0.0682351, -0.035024494, 0.03424837, 0.0035044209, 0.036339417, 0.11131787, -0.071928814, -0.09084191, -0.11744009) * inp_2_1_2; - result6 += M4(0.12587684, 0.06225926, -0.026299493, 0.012920991, -0.017782614, -0.014667138, 0.055074155, 0.022943798, 0.008455159, 0.045320578, -0.031376146, -0.034006797, -0.14781214, -0.09154671, -0.0067964857, -0.026441041) * inp_2_2_2; - result7 += M4(-0.015445302, -0.037789464, -0.050015952, 0.051077884, 0.012762267, 0.001851805, 0.04508738, -0.010399139, -0.047717102, 0.046008788, -0.1286666, -0.019733619, -0.010809673, 0.019976275, 0.19499092, -0.05271793) * inp_2_0_0; - result7 += M4(0.009775902, 0.008421784, 0.006456619, -0.09561461, 0.006635944, 0.08709082, 0.118046805, -0.040408745, 0.00411218, -0.049804136, -0.19635203, 0.036421478, 0.013472233, 0.085310176, -0.06451876, -0.07591257) * inp_2_1_0; - result7 += M4(0.0011623794, 0.0157786, 0.23450507, -0.030345064, -0.007944286, 0.031138292, -0.054428127, -0.006354884, -0.00017147537, -0.061904203, 0.07041381, 0.00904078, 0.006447948, 0.014401972, -0.16314185, -0.07154022) * inp_2_2_0; - result7 += M4(-0.071097, 0.048722077, -0.057024237, -0.032382425, 0.11727951, 0.017105151, -0.13123526, 0.035763573, -0.08230924, -0.04188985, -0.32348582, 0.016696155, -0.06649229, -0.0472443, -0.4568975, -0.1417284) * inp_2_0_1; - result7 += M4(0.009676619, -0.13529916, -0.7352996, -0.15486619, 0.03948796, -0.12067616, 0.08228091, 0.109243326, 0.014494713, -0.246747, -0.36346516, 0.047908764, -0.029475715, -0.1169535, -0.2584969, -0.21210471) * inp_2_1_1; - result7 += M4(0.012818375, -0.15678418, -0.030713122, -0.042580873, -0.006080254, -0.015386665, -0.10410892, 0.043238387, -0.0028478182, -0.10389125, 0.09574436, 0.022169469, 0.003491668, -0.03652787, -0.121610165, -0.030906139) * inp_2_2_1; - result7 += M4(0.02130784, -0.009969811, -0.050955463, 0.015818223, -0.016897686, 0.026838342, -0.12020858, -0.030799935, -0.007543565, -0.019397575, -0.024186691, -0.0140556395, -0.106334135, -0.12345449, -0.06144337, 0.04088199) * inp_2_0_2; - result7 += M4(-0.026605569, -0.053998057, -0.15413749, -0.0612443, 0.04278761, 0.04930435, 0.063629456, 0.061389934, -0.012299767, 0.018904356, 0.11881863, 0.023078756, -0.0042765574, -0.08115724, -0.4046168, -0.060050666) * inp_2_1_2; - result7 += M4(-0.003345746, -0.015874637, -0.17915346, 0.026412467, 0.009524216, 0.026580846, -0.097139366, -0.0053321184, -0.0025773807, -0.018590312, 0.019593094, -0.0025126915, -0.012161612, -0.034871057, 0.19185197, -0.018099355) * inp_2_2_2; - const V4 inp_3_0_0 = inp[3][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_3_1_0 = inp[3][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_3_2_0 = inp[3][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_3_0_1 = inp[3][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_3_1_1 = inp[3][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_3_2_1 = inp[3][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_3_0_2 = inp[3][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_3_1_2 = inp[3][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_3_2_2 = inp[3][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.028213175, 0.032822147, 0.059074238, 0.3066633, -0.013433308, 0.00067340594, -0.12229471, -0.10201325, 0.038274333, 0.010377685, 0.058942664, -0.2109803, 0.037836794, 0.012955015, 0.025277272, 0.057664096) * inp_3_0_0; - result0 += M4(0.004617563, -0.061433196, 0.023606485, 0.33244193, 0.04926904, -0.030171797, -0.07694518, -0.1617692, 0.084052615, -0.0039034819, -0.12922248, -0.09606826, 0.0064642956, -0.0069854413, -0.011012269, 0.085031785) * inp_3_1_0; - result0 += M4(0.05302151, 0.05276123, -0.033584785, 0.22149675, -0.007714501, 0.039053235, 0.07169508, 0.10038461, -0.03728751, -0.041919928, -0.10989207, 0.06920374, -0.020650858, 0.00943218, 0.018382773, -0.054479327) * inp_3_2_0; - result0 += M4(0.107252166, 0.028248232, -0.026256042, 0.07259709, -0.15592854, -0.03544031, -0.16056089, 0.089559555, -0.051851876, -0.012169002, 0.0757733, 0.12283447, 0.12328095, 0.023465151, -0.0980186, 0.4700094) * inp_3_0_1; - result0 += M4(-0.020735875, -0.044527095, 0.1812157, -0.14251344, 0.100637265, -0.09929764, 0.022396231, -0.1629819, -0.37502956, -0.028396426, -0.0044012377, -0.016581088, 0.045751907, -0.09679266, 0.033331178, -0.28691506) * inp_3_1_1; - result0 += M4(-0.0035406945, 0.13865246, 0.09632941, -0.22373569, 0.069652036, 0.086080685, -0.014499111, 0.021931017, 0.053540464, 0.09999699, -0.055629797, 0.19086929, -0.0796804, 0.1157105, 0.25701654, 0.24323073) * inp_3_2_1; - result0 += M4(0.061046004, 0.051709134, -0.052225087, 0.38230914, -0.079229504, -0.02501645, -0.010232302, -0.34552523, 0.098785825, -0.012404381, -0.09830331, -0.107994765, 0.05475699, -0.0044191545, -0.052065156, 0.13024592) * inp_3_0_2; - result0 += M4(0.06738276, -0.06583693, -0.05875354, 0.25403833, 0.11855146, 0.0021048943, 0.1636111, 0.4931525, -0.29898068, 0.031880062, 0.030381458, -0.46470404, 0.088696845, -0.077683486, -0.040194977, -0.2529147) * inp_3_1_2; - result0 += M4(-0.0025903138, 0.03747252, -0.012181515, 0.2900556, 0.022972913, 0.022078788, -0.012300987, -0.0054085464, 0.001652154, 0.067255735, 0.0140997525, -0.059529494, 0.028535005, 0.07637437, -0.12392118, -0.18224825) * inp_3_2_2; - result1 += M4(-0.028851977, 0.029012194, 0.15383677, -0.0045013824, 0.10976861, -0.06927033, -0.87309724, -0.055000328, -0.10320451, 0.008190819, -0.027200103, -0.006607429, 0.016497158, 0.028810915, 0.22285703, -0.116294496) * inp_3_0_0; - result1 += M4(-0.040809415, 0.02301137, -0.35930386, 0.0069670193, -0.033597272, 6.786298e-05, -0.60316813, -0.021530772, -0.0046810606, -0.0059809103, 0.053014822, -0.0028193512, -0.019310562, 0.063466586, 0.30404544, 0.091035105) * inp_3_1_0; - result1 += M4(-0.00040240306, -0.054508746, -0.15870835, -0.0019272435, 0.006938459, 0.036426235, 0.2999045, 0.014923656, -0.020087054, -0.008139986, -0.14135234, 0.01563221, 0.010082635, 0.015348499, 0.2761669, 0.013228958) * inp_3_2_0; - result1 += M4(-0.035940785, -0.016081486, -0.01862972, -0.029165149, -0.004901424, 0.009789207, -0.06900991, 0.041346468, -0.00542232, 0.005836401, -0.23900232, -0.12810533, 0.027142396, 0.04177584, 0.2883949, 0.2668309) * inp_3_0_1; - result1 += M4(-0.02339273, -0.028516805, -0.0477545, -0.049650718, -0.023017807, 0.007492965, 0.06438928, 0.068217926, 0.05014016, -0.049759615, -0.16873924, -0.013792744, 0.008099247, 0.057580765, -0.15294331, -0.02407341) * inp_3_1_1; - result1 += M4(0.0023040331, 0.014520893, 0.14086932, 0.0002541146, 7.565092e-05, 0.0033328494, 0.09495294, -0.004271148, 0.003276414, 0.020927787, -0.2547415, -0.029981263, -0.0039266855, 0.0042278874, 0.41910124, -0.041302122) * inp_3_2_1; - result1 += M4(-0.00063649006, 0.011779391, -0.089554526, 0.024626488, 0.0061296565, -0.004979697, 0.13393216, -0.08234094, 0.00058793597, -0.012900433, 0.058951315, 0.082114056, 0.011142806, 0.0121483635, -0.008698829, 0.12594049) * inp_3_0_2; - result1 += M4(0.009334513, 0.00045167797, -0.10403143, 0.017128196, -0.0027381454, -0.002938674, 0.0027222938, -0.013679367, 0.004318262, 0.018849509, 0.075226076, 0.0556673, 0.01155312, -0.030188672, 0.07610559, 0.00032103245) * inp_3_1_2; - result1 += M4(0.0006875585, 0.0078034555, 0.06804394, 0.0069549703, 0.0017802661, -0.0060129412, 0.123775825, 0.0035577419, -0.004969577, -0.016803706, -0.03436064, -0.0028159122, 0.0030238815, -0.021017583, -0.055796735, 0.020860298) * inp_3_2_2; - result2 += M4(-0.0074681886, -0.0021166892, -0.013428317, 0.005133177, -0.10608968, -0.071717314, 0.0113743935, -0.030142033, -0.008490121, 0.024890168, 0.0060290587, 0.0026314775, -0.014435553, -0.040347036, 0.0032490154, -0.010373938) * inp_3_0_0; - result2 += M4(0.015895506, 0.0055390294, 0.006710079, 0.010917166, 0.00919895, 0.03975121, -0.030772397, 0.027052207, -0.047596425, 0.08657809, 0.004376827, -0.003942954, 0.012840491, 0.005197426, -0.02284397, 0.026379261) * inp_3_1_0; - result2 += M4(-0.07684857, -0.042293325, -0.007926084, 0.0021801195, 0.02774068, -0.00476584, 0.0014613271, -0.02117684, -0.040494815, -0.034750585, -0.007799652, 0.008689671, -0.019336693, 0.015730727, -0.0048464914, 0.023946112) * inp_3_2_0; - result2 += M4(-0.020977503, 0.0063212407, -0.021549279, 0.002566286, -0.03462194, -0.024215763, 0.014479232, -0.067060456, 0.0032977238, -0.04121304, -0.007638376, 0.05070139, 0.03627549, 0.14160791, -0.0063115177, -0.0280902) * inp_3_0_1; - result2 += M4(-0.07828343, 0.05767808, 0.0012223293, -0.10511061, 0.077346385, -0.039544024, -0.0040190746, 0.12232568, 0.095958464, -0.233961, -0.0062684864, -0.05551097, -0.060011666, -0.17524104, 0.03815497, -0.06705252) * inp_3_1_1; - result2 += M4(0.018647747, 0.040748827, -0.030981265, -0.013858917, -0.0038969466, -0.022854727, 0.026372608, -0.025468402, -0.071964175, 0.052762285, -0.0049288347, 0.02587109, 0.10222434, 0.042915188, -0.006985694, -0.030550923) * inp_3_2_1; - result2 += M4(0.034648422, 0.007781909, -0.013976814, 0.0003673475, 0.045885693, 0.007615524, -0.0030452376, 0.015141828, -0.024125563, 0.008071658, -0.014066718, -0.0054133246, 0.10496512, 0.003549033, 0.0023850072, -0.014085854) * inp_3_0_2; - result2 += M4(-0.015234892, -0.03928924, -0.020817762, -0.028391503, -0.027615087, -0.025456611, -0.013983257, 0.0110370135, -0.08259385, 0.091244295, 0.0056435335, 0.003596774, -0.08086946, 0.0044924915, -0.021007799, 0.10074338) * inp_3_1_2; - result2 += M4(0.023353294, -0.012093468, -0.014011404, 0.0020155865, 0.002087347, 0.0217279, -0.016698781, -0.013246653, 0.029293878, -0.064901754, 0.0016156316, 0.007987076, -0.07382745, 0.06195712, 0.006705812, 0.044341028) * inp_3_2_2; - result3 += M4(0.06139666, 0.014450649, -0.02415288, 0.0003384524, -0.006837045, 0.03435569, -0.0027442058, 0.010103512, 0.09422879, 0.023956718, 0.019877905, 0.0009278261, 0.013215657, 0.0010600585, 0.003948375, -0.004748472) * inp_3_0_0; - result3 += M4(0.107163474, -0.016545521, 0.039523236, 0.0051197484, 0.037544962, -0.115105726, 0.05002359, -0.019155335, 0.07889322, 0.04256669, 0.025444452, 0.0076999287, 0.11875706, -0.079884306, 0.060280703, 0.003313362) * inp_3_1_0; - result3 += M4(0.08362192, 0.031345546, -0.01730989, -0.0067136628, -0.056527004, 0.006700649, -0.033076525, 0.0029780841, -0.051755518, -0.0029756676, -0.00093218853, -0.0058533913, 0.017576741, 0.019044189, 0.0127117075, -0.0029192143) * inp_3_2_0; - result3 += M4(0.0633151, 0.0070152944, -0.03145229, -0.00045550513, -0.23442484, -0.0839527, 0.022672847, 0.008600958, -0.10657293, -0.043075282, 0.03395872, -0.0047701807, 0.056475103, -0.011791644, 0.0018486663, -0.0040587983) * inp_3_0_1; - result3 += M4(-0.19989568, -0.017465783, 0.09178711, 0.015887836, -0.054098237, 0.1104084, -0.02542949, -0.010111907, -0.26060882, -0.15939789, -0.09433732, 0.007978391, 0.046452507, 0.15386225, -0.10676869, 0.0062450822) * inp_3_1_1; - result3 += M4(0.011219848, -0.02867853, -0.040217906, -0.02533247, 0.03746913, 0.018493086, 0.0099886665, -0.009272393, -0.054865066, 0.06716042, 0.027594421, -0.004608307, 0.05836921, -0.04263238, -0.035500668, -0.025189295) * inp_3_2_1; - result3 += M4(0.041361105, 0.026641678, -0.020679282, -0.0021511118, 0.061017793, 0.010653946, 0.0045980383, 0.008976046, -0.087921046, 0.009857307, 0.02241454, -0.0011045316, 0.10830871, -0.055748034, -0.00013461066, 6.029588e-05) * inp_3_0_2; - result3 += M4(0.018103315, -0.026689004, 0.0046789427, 0.02351798, 0.031085845, -0.085089736, -0.015841166, -0.015269983, 0.05954374, 0.07289311, 0.01634387, -0.03406144, 0.13616112, 0.09065514, 0.100864835, -0.0036140752) * inp_3_1_2; - result3 += M4(0.049986564, -0.005003027, -0.0153281335, -0.21716733, -0.009282312, 0.0026470565, -0.027772097, 0.15497138, -0.035860468, -0.01851064, 0.028781759, -0.618963, 0.111551784, 0.03219947, -0.00066716573, -1.1723336) * inp_3_2_2; - result4 += M4(-0.020219918, -0.007255449, -0.01500296, 0.026507199, 0.013240724, 0.026080208, 0.024612509, -0.012372617, -0.00017725448, 0.08199178, -0.082949266, 0.0011255204, 0.020772647, 0.011930212, 0.081272766, 0.008866175) * inp_3_0_0; - result4 += M4(0.02726767, 0.019366711, -0.105925545, -0.04207114, -0.005030575, -0.049408916, 0.08638994, 0.031900324, -0.0055182567, 0.02559262, 0.004134626, -0.020471878, 0.010749056, -0.008974237, -0.11736927, -0.009790245) * inp_3_1_0; - result4 += M4(0.0030659966, 0.0273894, 0.03762048, -0.010428907, 0.016776484, -0.005235153, -0.0018475801, -0.02177864, -0.0063229157, 0.025130237, -0.021191588, 0.0020896716, -0.006724692, -0.015314475, 0.005198161, 0.029347556) * inp_3_2_0; - result4 += M4(-0.018808683, 0.10107719, 0.004122741, 0.06275484, 0.020533351, -0.038929585, -0.16508447, -0.060373478, -0.019229604, 0.029835446, -0.030130008, -0.010583945, -0.046671648, -0.044717323, -0.21220131, -0.004551287) * inp_3_0_1; - result4 += M4(-0.013092888, 0.06552866, 0.10468562, -0.06663829, -0.02608006, -0.021740438, 0.011846305, 0.0016175658, -0.008478269, -0.1628951, 0.03790261, -0.25984907, -0.07661945, -0.10502321, 0.17409109, 0.23130167) * inp_3_1_1; - result4 += M4(-0.047657833, 0.022959005, -0.026168624, 0.006614916, 0.0012571666, -0.014765718, -0.034746848, 0.0087543465, -0.0053073503, -0.003894194, -0.113177374, 0.10122944, -0.024521977, 0.0345026, -0.033859916, -0.1131917) * inp_3_2_1; - result4 += M4(-0.012144336, -0.014897302, 0.022941338, -0.012246588, 0.012478249, 0.0006644158, 0.028382828, 0.022611689, 0.007202148, -0.07373474, 0.087830976, 0.038274378, 0.006108311, 0.21307585, 0.123360656, -0.0039384165) * inp_3_0_2; - result4 += M4(-0.009528768, -0.09224357, -0.082417056, -0.007633063, 0.000512482, 0.021009967, 0.02660803, -0.033083923, 0.011930291, -0.030884968, -0.1654994, 0.07066343, 0.12549734, 0.13747355, 0.007186294, 0.08937885) * inp_3_1_2; - result4 += M4(-0.008350235, -0.011000369, -0.016017716, 0.003251828, -0.012063142, -0.010214136, 0.030366581, 0.016486812, 0.011706493, -0.040756542, 0.0015631805, -0.015075949, 0.0023899805, 0.10298476, -0.096192, -0.036982413) * inp_3_2_2; - result5 += M4(0.0042238752, -0.0128706815, 0.081106134, -0.036874685, -0.25221738, -0.022191668, -0.11564407, -0.030547116, -0.108143225, -0.0012150172, -0.024056317, -0.0426913, -0.2158898, 0.014338473, -0.032901607, -0.032017086) * inp_3_0_0; - result5 += M4(0.08543288, 0.02091895, 0.068405025, 0.0771539, 0.13615903, -0.03711041, -0.028635973, 0.09596429, -0.09643569, -0.03208244, 0.09387682, -0.03899517, -0.105240434, -0.041950494, 0.044526633, 0.007635197) * inp_3_1_0; - result5 += M4(0.074066214, 0.009909008, -0.020311302, -0.007939921, 0.018828588, 0.013281787, 0.025995784, -0.06350784, 0.0810115, -0.00845911, -0.018540176, 0.07775332, 0.15981841, 0.019019779, -0.0140654, -0.013717972) * inp_3_2_0; - result5 += M4(0.043194227, 0.045742482, -0.03180354, -0.04193484, -0.20421565, -0.05529744, -0.025240384, -0.022256464, 0.03592006, 0.018214414, -0.010317749, -0.039792847, -0.37846604, 0.022159213, 0.29084948, -0.07605009) * inp_3_0_1; - result5 += M4(0.108846664, -0.08365169, 0.015576492, 0.09822261, 0.030244533, 0.085343145, -0.0035288665, 0.09910092, -0.2833423, 0.028199643, -0.32442647, -0.17080738, 0.32255608, 0.1409734, -0.14508775, 0.075009346) * inp_3_1_1; - result5 += M4(0.09835011, 0.037648715, 0.008448669, -0.027383199, -0.14126626, 0.0033046587, 0.04930853, 0.004061622, -0.013761391, -0.044990618, -0.06999522, 0.105491295, 0.10764856, -0.05736446, -0.061301675, -0.07001262) * inp_3_2_1; - result5 += M4(0.06352541, 0.025107862, 0.020192977, 0.0276786, 0.07521671, -0.014458944, -0.06683317, 0.041287072, 0.09783779, -0.025140863, -0.054708786, -0.027487861, -0.105826445, -0.0021022274, -0.11712938, 0.002605501) * inp_3_0_2; - result5 += M4(0.016849846, -0.0065868585, -0.018751228, 0.039056666, -0.00058893807, 0.004091899, 0.11214465, 0.007414063, -0.07268182, -0.026946407, -0.10635945, 0.0067117596, 0.053983312, 0.05361861, -0.071293406, 0.0031709508) * inp_3_1_2; - result5 += M4(0.12060684, -0.026030986, 0.004500552, -0.002954484, 0.08357764, -0.0018906229, -0.044111777, -0.087667055, -0.25237963, -0.0011329141, 0.025358368, 0.05704713, -0.054090805, 0.02287378, 0.037242174, 0.046226576) * inp_3_2_2; - result6 += M4(0.29795197, 0.041186344, 0.008859824, -0.12366139, -0.049436416, -0.12359853, 0.024719333, -0.0528541, -0.05832583, -0.06492643, 0.019245468, 0.003284421, 0.029224029, -0.06455677, 0.03444853, -0.04929269) * inp_3_0_0; - result6 += M4(0.15392695, -0.10829728, -0.029737605, -0.001692708, -0.013732396, 0.04477113, -0.015188592, 0.01645694, -0.10668497, -0.065171205, -0.05068865, -0.16407152, 0.15749437, -0.02620525, 0.10021228, -0.0422571) * inp_3_1_0; - result6 += M4(0.01710299, 0.044476785, -0.035236668, 0.03247101, -0.01687139, 0.06906306, 0.039207794, 0.0036783835, 0.036236573, 0.055538293, -0.041957386, 0.028598508, -0.07217301, -0.028844656, 0.039555006, -0.017288428) * inp_3_2_0; - result6 += M4(0.072427884, 0.024078177, -0.015755892, -0.04809648, -0.1163096, 0.06924995, -0.014635584, -0.06842453, -0.01718806, -0.03436693, -0.041086316, -0.012343107, 0.054754317, 0.018321315, 0.024520045, -0.10947984) * inp_3_0_1; - result6 += M4(0.022198312, 0.1771691, 0.048039783, -0.002338546, -0.058582187, 0.0010892743, -0.022487706, 0.077225246, -0.09309261, -0.0011381451, 0.046145767, -0.011305228, 0.033080447, 0.21612298, 0.039987676, 0.09072992) * inp_3_1_1; - result6 += M4(-0.018140147, 0.09234787, -0.027119502, 2.305316e-05, -0.033560503, -0.109005645, 0.01859251, 0.014228314, 0.02990522, -0.12082775, -0.047115903, 0.04720494, -0.0122125065, 0.051765107, 0.01666561, 0.040653393) * inp_3_2_1; - result6 += M4(0.30713952, 0.0033973071, -0.019828612, 0.028725104, 0.11743693, 0.0023339975, 0.008737234, 0.024275895, -0.12622309, 0.033714272, 0.032450546, 7.8780606e-05, -0.051657535, 0.083123915, -0.060719732, 0.10663256) * inp_3_0_2; - result6 += M4(0.1804411, -0.057773817, -0.0054595685, -0.006103109, 0.09019514, -0.0236565, -0.026690787, 0.024898248, -0.16267379, -0.12356026, 0.018707253, -0.104695916, -0.10222982, 0.1441496, -0.021064533, 0.0061986977) * inp_3_1_2; - result6 += M4(0.026083669, -0.025533708, -0.004461736, 0.05516302, -0.027714888, -0.009636336, -0.020655284, 0.010147017, 0.084916286, -0.026986524, 0.018040214, -0.057619926, 0.0756315, 0.09682339, -0.0031227001, 0.017988877) * inp_3_2_2; - result7 += M4(-0.020876177, 0.004625116, -0.04279677, 0.025037708, -0.032317508, 0.033806566, -0.16683465, -0.05667634, 0.0026007982, -0.042610962, -0.06391788, 0.016049068, -0.029451413, -0.03179108, -0.10416327, 0.016954917) * inp_3_0_0; - result7 += M4(-0.022268517, -0.07564, -0.2213163, 0.10105278, -0.007373276, -0.11233701, -0.056651097, 0.0134676285, 0.01587481, -0.04759463, -0.039763458, -0.009518581, 0.00446431, -0.104787305, -0.008375044, 0.09774898) * inp_3_1_0; - result7 += M4(0.0039522597, -0.07440824, 0.11633237, 0.080137506, -0.008765076, 0.05770754, 0.20379259, 0.027872898, -0.0037263997, 0.0007654829, -0.091655634, -0.021019017, -0.008040843, -0.11827269, -0.01434523, 0.05553467) * inp_3_2_0; - result7 += M4(-0.008571901, 0.03883971, 0.12399801, -0.029286608, 0.0030243585, -0.075819634, 0.08309905, 0.011490289, 0.047239594, 0.035929345, -0.045211162, -0.031140761, 0.08324544, 0.006900455, 0.36843765, 0.07902991) * inp_3_0_1; - result7 += M4(0.0260775, 0.020257447, -0.0036531417, -0.067195885, 0.029450947, 0.028670566, 0.011079028, -0.07247403, 0.0025464522, -0.051917467, -0.14354798, -0.07667777, 0.022578057, 0.1298427, 0.2885962, 0.16649702) * inp_3_1_1; - result7 += M4(-0.004046824, 0.11552949, 0.21905448, -0.08205852, 0.0146175, -0.06362229, 0.007988304, -0.03391231, 0.008801937, -0.03374576, -0.21677607, -0.07191916, -0.005184431, 0.14065483, 0.36732295, 0.075879835) * inp_3_2_1; - result7 += M4(-0.010736861, -0.024872562, -0.03873856, -0.021861762, -0.02007569, 0.0048997723, 0.21069667, 0.09211461, -0.01226931, 0.014469954, 0.08354284, 0.023653492, 0.06619556, 0.07645754, 0.3346469, -0.037354473) * inp_3_0_2; - result7 += M4(0.0065642823, -0.0020928546, -0.20971617, -0.07249301, -0.010164871, -0.002975777, 0.1482455, 0.016557096, 0.0011434362, -0.030701049, 0.031239841, -0.013121175, 0.021163236, 0.14414644, -0.16651319, -0.04441955) * inp_3_1_2; - result7 += M4(-0.009048105, 0.013595645, -0.053313065, -0.0731603, -0.0047064046, 0.034145124, 0.22189415, 0.029158117, -0.009512499, -0.054938532, -0.23791616, 0.047882915, 0.003277862, 0.14456183, 0.21448788, -0.033514325) * inp_3_2_2; - const V4 inp_4_0_0 = inp[4][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_4_1_0 = inp[4][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_4_2_0 = inp[4][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_4_0_1 = inp[4][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_4_1_1 = inp[4][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_4_2_1 = inp[4][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_4_0_2 = inp[4][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_4_1_2 = inp[4][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_4_2_2 = inp[4][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.00996729, -0.014513916, 0.028220918, -0.16753262, 0.018713752, -0.03816528, -0.11501934, 0.16317266, -0.0018135477, 0.00471663, -0.06135858, -0.15105177, 0.009187765, 0.025854055, -0.112693824, 0.3421648) * inp_4_0_0; - result0 += M4(0.02796378, 0.027407357, 0.15168007, -0.16199178, 0.030733787, 0.0431857, 0.121637665, -0.4458949, 0.1205825, 0.009434494, 0.0129126245, 0.30418387, -0.16378093, -0.10920742, 0.20251563, -0.45700365) * inp_4_1_0; - result0 += M4(-0.038373087, 0.017335264, -0.084832154, -0.4049276, 0.048437912, -0.07208594, -0.03025084, 0.22073483, -0.0058918763, -0.03918765, 0.045170587, 0.22821383, 0.007071949, 0.0015522031, -0.24597579, -0.05695263) * inp_4_2_0; - result0 += M4(0.13043483, 0.0031819148, -0.16355747, 0.18421672, -0.015976004, -0.04144398, -0.09291229, -0.35047835, -0.08178079, -0.04617934, 0.060135745, -0.14549622, -0.027000926, -0.044990975, -0.19899425, -0.24468985) * inp_4_0_1; - result0 += M4(-0.2708229, 0.009656455, -0.26104704, -0.09028904, -0.15915757, 0.06081962, -0.13459955, -0.34772325, 0.18125102, 0.019022075, -0.23618153, 0.1486821, -0.22131766, -0.021285383, -0.09266267, 0.056902137) * inp_4_1_1; - result0 += M4(-0.10044646, -0.037636902, 0.056836113, -0.14855103, 0.0695341, -0.06962623, -0.05106891, 0.16267955, 0.04708838, -0.013035592, -0.19061995, 0.14411463, -0.017590113, 0.1657925, -0.3514807, -0.12736726) * inp_4_2_1; - result0 += M4(-0.032421988, 0.0057487898, -0.17125714, -0.02120963, 0.024914628, -0.020207116, -0.007980634, -0.049293373, -0.046224684, -0.032037802, 0.048005104, -0.09208942, -0.094213694, 0.008859459, -0.08478529, -0.020661615) * inp_4_0_2; - result0 += M4(-0.09202434, 0.0022726052, -0.2728214, -0.6282542, 0.012050733, 0.0017711773, 0.07579391, -0.123890884, 0.015759246, 0.021568015, -0.03224358, 0.14006685, -0.23552041, -0.030111648, 0.22645436, -0.4203465) * inp_4_1_2; - result0 += M4(-0.032745723, -0.12510096, -0.019866535, -0.28288132, 0.053483125, 0.08032375, 0.11976964, 0.06467364, 0.05302017, 0.023510274, 0.053034518, 0.19278254, 0.045461453, 0.030448211, -0.3489145, 0.38360262) * inp_4_2_2; - result1 += M4(-0.046989597, -0.0060383976, -0.5392437, 0.061506875, -0.25354064, -0.015326998, 0.22816582, 0.03475485, 0.19892135, -0.019741874, 0.06358329, -0.07414247, -0.07098167, -0.04712654, 0.19609949, -0.10060466) * inp_4_0_0; - result1 += M4(0.009391101, 0.10306216, -0.6393087, 0.07946117, 0.006049998, -0.028994814, -0.28559655, 0.009221534, 0.036037784, -0.090352535, -0.03100894, -0.012313954, 0.006523844, 0.1345068, 0.08852212, 0.010295872) * inp_4_1_0; - result1 += M4(0.0019630254, -0.0045222198, -0.39006343, 0.0060575856, -0.005662216, -0.025421785, -0.34835702, -0.04200783, 0.0045646983, 0.100516126, 0.09090487, 7.981665e-05, 0.0042791716, -0.05375048, 0.45780832, 0.02702515) * inp_4_2_0; - result1 += M4(0.01956271, 0.0036811787, -0.59474236, 0.009870675, 0.01769098, -0.06457122, -0.010010343, -0.45078552, -0.015034765, -0.004025948, -0.09523697, 0.14867368, -0.003527165, 0.004434987, -0.083780386, -0.07841222) * inp_4_0_1; - result1 += M4(-0.005081497, -0.070208274, -0.5141334, 0.007477286, 0.028277718, 0.004193048, 0.038548034, -0.08238252, -0.029733961, 0.065670006, -0.13980724, -0.071574524, 0.031095494, -0.05437791, 0.3632431, 0.0042918962) * inp_4_1_1; - result1 += M4(0.0036362004, 0.049154423, 0.022581944, 0.011489399, -0.0026346869, 0.038225714, -0.11880501, 0.008066764, -0.0077734394, -0.039087582, -0.18554647, -0.018466687, 0.004414364, -0.029025912, -0.7598795, -0.052502338) * inp_4_2_1; - result1 += M4(-0.010965134, -0.010177588, 0.08663569, 0.02990286, -0.006854959, 0.0069628716, 0.10683608, 0.014632791, -0.0019226763, -0.003935012, -0.036259793, -0.060239166, 0.003661813, 0.0189509, 0.017600713, -0.16889127) * inp_4_0_2; - result1 += M4(-0.0029673758, 0.029710023, 0.022162927, 0.011547584, 0.002112351, 0.01617313, 0.06921636, 0.09180429, -0.00094274076, -0.01888816, -0.08014099, 0.024202958, 0.0012094084, -0.021958835, -0.08271815, -0.06419391) * inp_4_1_2; - result1 += M4(0.0029053884, -0.009095615, 0.009774948, 0.0070945863, -0.003042439, -0.0058562164, 0.04988054, -0.0064195143, -0.0018889188, 0.015463038, 0.15014805, -0.0006628459, -0.019025732, 0.011421918, 0.3641998, 0.050952245) * inp_4_2_2; - result2 += M4(0.07266678, -0.007868933, 0.0023525816, -0.00077627954, -0.057236668, 0.0042130887, -0.009366137, -0.0154323885, -0.050734267, -0.061023917, 0.00023926659, -0.002310557, -0.06950759, 0.026860854, -0.0076539638, -0.009834841) * inp_4_0_0; - result2 += M4(0.06945262, 0.04725428, 0.012452784, -0.008861802, 0.14132659, 0.05653103, -0.013040961, 0.0043774806, -0.004585907, 0.009972997, -0.020608827, 0.019399932, 0.0042420733, -0.036351267, 0.028161993, -0.018908568) * inp_4_1_0; - result2 += M4(-0.025636015, 0.014969882, -0.013229309, 0.0016127859, -0.049825154, -0.058007326, 0.015106174, -0.010196719, 0.036684696, -0.022764605, -0.0057128877, 0.0033893986, 0.06961964, 0.004296916, 6.3615014e-05, -0.0012626084) * inp_4_2_0; - result2 += M4(-0.058762155, -0.03482791, -0.0095567275, -0.005983171, 0.07204015, -0.045898214, 0.0072062737, -0.031225413, 0.0842997, -0.023049902, 0.045962833, -0.046326164, 0.050384983, -0.017362583, -0.022416003, -0.00398807) * inp_4_0_1; - result2 += M4(-0.13189176, -0.10126188, -0.090137675, -0.046101265, 0.0030047768, 0.12932433, -0.1650621, -0.16394544, 0.045873426, 0.033113398, 0.014736001, 0.073878795, 0.14809074, 0.018147664, 0.009826381, 0.013485782) * inp_4_1_1; - result2 += M4(0.108512975, -0.005629341, 0.014416936, -0.010482356, -0.044485684, 0.057906054, -0.03512948, 0.027171852, -0.08074584, -0.10838447, 0.026448552, 0.021148717, -0.10327205, -0.00426465, -0.035220787, 0.0062995157) * inp_4_2_1; - result2 += M4(0.007068338, 0.015495659, 0.021048933, -0.031027615, -0.06283262, -0.02655098, -0.0037516805, 0.011538041, -0.055690452, -0.019945493, 0.0062223743, -0.007221286, 0.030910313, 0.0099043185, 0.003371545, -0.004713819) * inp_4_0_2; - result2 += M4(0.09308184, -0.068506084, -0.020128276, -0.03002702, 0.01332424, 0.049401455, 0.033678036, -0.018700061, 0.06973888, -0.05575294, -0.029278621, -0.0101177655, -0.17198832, 0.018483365, 0.0010262904, -0.018240716) * inp_4_1_2; - result2 += M4(-0.014529915, 0.028812662, 0.013970804, 0.00049380073, 0.035352092, -0.012326753, 0.013731665, 0.011795098, 0.025769874, 0.050815493, 0.00015100482, -0.013901162, 0.061569262, 0.01486875, 0.0062494637, -0.008195159) * inp_4_2_2; - result3 += M4(0.0040639704, -0.01443353, -0.0015014915, -0.0004604825, 0.06625663, 0.018283369, 0.030573064, 0.0022910754, 0.0010828245, 0.0025013832, 0.015770838, 0.0030013267, -0.1195098, 0.029440032, -0.007422198, -0.004859084) * inp_4_0_0; - result3 += M4(-0.061835054, 0.02085343, 0.0028265314, -0.0002544228, 0.07882197, -0.0329279, 0.04402108, -0.0013733318, -0.018661918, -0.10732832, 0.019488964, 0.0016908639, 0.029647665, -0.045437694, -0.05015871, 0.0036919313) * inp_4_1_0; - result3 += M4(0.009431914, 0.03594283, -0.006626598, -0.0038102418, 0.073575646, -0.006480541, 0.0075951796, -0.004729585, -0.056296203, -0.04545493, 0.00197858, -0.0038092402, -0.007822225, 0.014123783, 0.0010376904, -0.00020503542) * inp_4_2_0; - result3 += M4(-0.036250982, 0.07767758, -0.0073183975, 0.009642045, 0.17000176, 0.017264696, 0.051467054, 0.0039031159, -0.05140311, -0.06400494, 0.054235216, -0.0018569353, 0.16838849, 0.026589273, -0.085069455, -0.00350328) * inp_4_0_1; - result3 += M4(-0.2869641, -0.0113407755, 0.010681701, 0.0039104945, -0.24791262, 0.15764289, 0.011336336, 0.00043471172, 0.053716555, 0.18150201, -0.11398172, 0.0030049665, 0.10486691, -0.09735225, -0.04015005, 0.003084743) * inp_4_1_1; - result3 += M4(-0.09951786, 0.046674713, -0.0008789499, -0.0007628574, 0.0020450929, -0.018665941, 0.026026614, 0.020547962, 0.21014373, 0.0015826025, 0.019946257, -0.006840549, 0.046920147, 0.0068029333, 0.00021098716, 0.007925309) * inp_4_2_1; - result3 += M4(-0.1523014, -0.052432984, 0.0012938823, 0.0006346171, 0.05092494, -0.025629964, 0.021743424, -0.00448714, 0.07549403, 0.030300464, -0.02120644, -0.0074867257, 0.065231666, -0.047776245, -0.0060905498, -4.5910765e-05) * inp_4_0_2; - result3 += M4(0.10104118, -0.0118582705, 0.013294066, -0.021972766, -0.08652744, 0.0782913, 0.02806245, -0.01767879, 0.08314142, -0.048510768, -0.0075423187, -0.03924756, -0.058416635, 0.06828294, 9.470286e-05, 0.002445574) * inp_4_1_2; - result3 += M4(0.08272327, 0.07788805, -0.01270348, -0.9176221, -0.000284392, -0.027053412, 0.01923593, -1.3660514, 0.012590212, 0.041374665, -0.037347067, -0.61124915, -0.031016275, 0.0151579, -0.019048084, -0.421802) * inp_4_2_2; - result4 += M4(-0.0063423105, -0.0064147576, 0.09127538, 0.0050662532, 0.015953947, 0.02728334, 0.014644943, 0.07083037, 0.026265396, 0.030541107, -0.11208748, -0.018660216, -0.019484904, -0.062358275, 0.04461951, 0.043838) * inp_4_0_0; - result4 += M4(0.0050562206, 0.019170424, -0.05738807, 0.014529213, 0.03514493, 0.040025447, -0.019148704, 0.1308058, 0.0008780187, -0.0074081398, 0.034388043, -0.033750962, -0.0054501686, -0.0099918265, -0.06726066, -0.05890598) * inp_4_1_0; - result4 += M4(0.0060586436, -0.024556598, 0.066145994, 0.03992594, -0.00981356, -0.0015458589, 0.06289021, -0.031662814, 0.023841655, -0.02969275, -0.028910268, 0.00808556, 0.00035368846, -0.0030308058, 0.050845627, -0.020113409) * inp_4_2_0; - result4 += M4(0.018835915, 0.04829433, -0.07471137, 0.012535467, 0.048914246, -0.0020064777, -0.051088583, 0.075525366, 0.03692022, -0.09448229, 0.027187092, -0.09747116, -0.0104966285, 0.051613647, 0.12129316, -0.02197084) * inp_4_0_1; - result4 += M4(-0.047256775, -0.080525264, -0.21281411, -0.033431876, -0.12862869, -0.076562054, -0.12485655, -0.21682803, 0.03775469, -0.0138969235, -0.11911926, 0.124191105, -0.0008843669, 0.1523953, -0.03887558, -0.11429871) * inp_4_1_1; - result4 += M4(0.016790144, -0.020528886, 0.03717166, 0.0031142414, -0.01541633, 0.010236898, -0.027052406, 0.014395367, 0.055234935, -0.063293435, -0.10413691, 0.022019628, 0.00056105177, 0.018352022, 0.026529843, 0.07217081) * inp_4_2_1; - result4 += M4(0.0074467757, -0.04675734, 0.01558269, -0.044322852, -0.0019094783, -0.05355294, -0.005313494, -0.010875045, -0.0032246439, 0.051123645, -0.03964969, -0.017278539, 0.0024756414, 0.06111118, -0.025129588, 0.00362763) * inp_4_0_2; - result4 += M4(-0.02116426, -0.027847985, 0.04027087, 0.07104167, -0.012489109, -0.025049105, 0.008609981, 0.03410326, 0.0020263048, 0.054002754, 0.09476965, -0.021783598, -0.014814072, 0.100242965, 0.008952078, 0.06190624) * inp_4_1_2; - result4 += M4(0.025492726, 0.031280704, 0.05812409, 0.03448896, 0.00038881693, -0.066768706, -0.06554444, -0.010099144, -0.010217219, 0.025420444, 0.02070306, 0.05918437, -0.006927634, 0.019385025, -0.010346316, 0.017418893) * inp_4_2_2; - result5 += M4(0.15702607, -0.008700927, 0.005824318, 0.018426975, 0.23179697, 0.018097289, 0.011519095, 0.062106073, 0.20637281, -0.0097800745, -0.17901367, 0.08055939, -0.012868187, -0.010208606, 0.07249001, -0.0812324) * inp_4_0_0; - result5 += M4(-0.053647503, 0.028570041, 0.037843384, -0.02864989, 0.13679968, -0.025511054, 0.09568555, -0.038298067, -0.03359497, -0.051637717, 0.0012565533, -0.017542426, 0.11979752, 0.013581803, 0.07465785, 0.013558985) * inp_4_1_0; - result5 += M4(-0.1254488, -0.009786411, 0.017910112, -0.009135808, 0.15687932, 0.042476162, -0.017195655, 0.13594365, -0.018843494, -0.021814633, 0.059326928, 0.019140912, 0.03612357, -0.0058976174, 0.015509237, -0.022462768) * inp_4_2_0; - result5 += M4(-0.109823614, 0.03079121, 0.019862503, -0.057678074, 0.15698954, 0.0033135405, 0.022517301, 0.06397958, 0.008852805, -0.098313145, 0.115780674, 0.054005686, 0.14771824, 0.0030945556, -0.09366803, 0.0017378121) * inp_4_0_1; - result5 += M4(-0.35897005, -0.10819092, -0.16350296, -0.17882077, -0.15814215, -0.54804367, -0.13443083, -0.029778887, -0.17502703, 0.1481745, 0.28500298, -0.08049084, -0.03458206, -0.017850028, -0.051866278, 0.04256317) * inp_4_1_1; - result5 += M4(-0.077217385, 0.018790653, -0.0895779, -0.013970141, -0.009739888, -0.098204754, -0.07332363, 0.18283132, -0.08784119, -0.0435337, 0.005826665, -0.02450961, 0.07908598, -0.032528993, -0.06007877, 0.11356001) * inp_4_2_1; - result5 += M4(-0.11876702, -0.04689088, -0.039710876, -0.03632648, -0.15139705, 0.07166239, 0.17083089, -0.02808708, -0.053786144, 0.0387558, 0.083275385, -0.021975592, 0.06440202, 0.00049948116, 0.02089879, 0.018834395) * inp_4_0_2; - result5 += M4(-0.30498046, 0.050585978, 0.00885658, 0.007987502, -0.11261155, 0.007810219, -0.08889312, -0.031191364, 0.1394738, -0.106800206, -0.06508315, -0.030201618, 0.15394029, -0.030672038, 0.00028846585, 0.038626682) * inp_4_1_2; - result5 += M4(0.20700955, 0.046373177, -0.0042914283, -0.012006904, 0.052662335, 0.0030825667, 0.042860482, 0.031560093, 0.15854606, -0.002336356, -0.032213427, -0.08788401, -0.1836287, 0.027361574, 0.074980885, 0.10513279) * inp_4_2_2; - result6 += M4(-0.32588986, 0.015064312, 0.0003827044, -0.00878967, -0.2587362, 0.10264629, 0.016196914, 0.1303588, -0.14961769, -0.046936885, 0.020738445, 0.25936055, -0.019909399, 0.039498407, -0.025127757, -0.21412018) * inp_4_0_0; - result6 += M4(-0.11299508, -0.0029319555, -0.004740169, -0.041414082, -0.1371622, 0.022304444, 0.060023874, -0.040320233, -0.33300152, 0.07278749, 0.10756876, -0.09957188, -0.16551635, -0.012412993, -0.13943334, -0.09614052) * inp_4_1_0; - result6 += M4(-0.031462014, -0.0015935383, -0.032931622, -0.04340286, 0.20820704, 0.07372193, -0.059937194, 0.015711349, 0.061751604, -0.00913279, 0.1175613, 0.06456462, 0.033167105, 0.0041249236, -0.00994888, -0.04354321) * inp_4_2_0; - result6 += M4(-0.1825709, -0.09583256, 0.034282207, 0.09697847, -0.23742539, 0.06431914, -0.081419855, 0.03459588, -0.46859598, 0.053755432, 0.0047948933, 0.10666858, -0.16180088, 0.08198615, -0.1458811, -0.06556075) * inp_4_0_1; - result6 += M4(0.05014123, -0.17191643, -0.15111744, -0.12988001, 0.07798354, -0.2806939, -0.082456924, -0.110655725, -0.22647634, 0.09719572, 0.009042376, -0.109870575, 0.049114194, 0.0356184, -0.13052377, -0.031244826) * inp_4_1_1; - result6 += M4(0.03928787, 0.052596595, 0.048580933, -0.051062945, -0.023224428, -0.05764904, -0.029284084, 0.07750334, -0.05675913, -0.07459828, -0.08907966, 0.054133594, -0.06590509, 0.039749045, -0.18971036, 0.09272368) * inp_4_2_1; - result6 += M4(-0.5247701, -0.013850611, 0.04440708, 0.063019305, -0.15992476, -0.039354507, -0.010328355, -0.044619806, 0.01691486, -0.060807653, -0.017622538, 0.008148674, 0.0891824, 0.043049075, -0.02963026, 0.03651607) * inp_4_0_2; - result6 += M4(0.025829175, -0.07425393, 0.026194366, -0.025276318, 0.14469208, -0.036253735, 0.036860578, -0.03921153, 0.01079042, -0.03277285, -0.010516271, 0.0007517151, -0.838144, -0.028058957, -0.020012474, -0.07488451) * inp_4_1_2; - result6 += M4(-0.092218265, 0.021557495, -0.014558641, -0.014047565, 0.1111588, -0.027817471, 0.06397871, 0.012384694, -0.04126554, 0.07100052, 0.00073545065, -0.01691616, 0.19149236, 0.07495612, 0.08020532, 0.013673908) * inp_4_2_2; - result7 += M4(0.012941493, 0.0077950964, -0.20078832, 0.016867166, -0.027121035, 0.015620779, 0.17962652, 0.031516, -0.034642894, 0.010514611, 0.10265954, -0.0013611646, 0.011879319, 0.11883269, 0.23759092, 0.02368508) * inp_4_0_0; - result7 += M4(-0.0028533025, 0.0522076, -0.058123175, -0.0029964393, -0.018153362, -0.04791817, -0.11333081, 0.017881604, 0.006047019, -0.03698992, -0.10357981, 0.028838342, -0.0074698087, 0.077619195, 0.03149059, -0.022441948) * inp_4_1_0; - result7 += M4(-0.0023329742, -0.057737984, -0.2459254, -0.031941783, 0.0039249826, 0.033323348, -0.09571853, -0.00956598, 0.00312334, -0.061655235, -0.10330274, 0.029236056, -0.0063805347, 0.02318529, 0.04599969, -0.0147431595) * inp_4_2_0; - result7 += M4(-0.021802794, -0.0156113645, -0.44380105, -0.067483604, -0.04328197, 0.061355688, -0.035464205, -0.013055112, -0.019238506, -0.021171616, -0.01684916, 0.040700436, 0.0012682795, -0.040218882, -0.40153787, -0.0013442466) * inp_4_0_1; - result7 += M4(-0.021575393, -0.16572608, -0.6712828, -0.16211864, -0.049323797, -0.043839958, -0.31562313, -0.119823836, 0.016363645, 0.18701254, -0.040297788, -0.026835784, -0.027966658, -0.15780225, 0.3680943, 0.020551566) * inp_4_1_1; - result7 += M4(-0.004817776, 0.004176491, -0.18634088, -0.046174426, -0.0019894575, -0.042330023, -0.2813731, -0.08118342, -0.019888468, 0.11378498, 0.17444746, 0.03003404, 0.0053750784, -0.11389755, -0.26405224, 0.04561515) * inp_4_2_1; - result7 += M4(0.014561216, 0.06947324, -0.25345263, 0.079334974, -0.030821856, -0.00765534, 0.010979977, -0.04112282, 0.03798489, -0.0051535894, -0.06032543, -0.034960795, -0.0024265293, 0.0033370326, 0.11133575, -0.0007865293) * inp_4_0_2; - result7 += M4(0.013048931, -0.07923624, -0.39692637, 0.0995706, 0.030054556, 0.034968633, 0.16042887, 0.1181794, -0.021861838, -0.0042884457, 0.12847437, -0.046622366, -0.0033146162, 0.024846591, -0.10019889, 0.05620744) * inp_4_1_2; - result7 += M4(0.010309698, 0.057185907, -0.00020443456, -0.010595848, 0.0023473927, -0.0017539479, 0.051105402, 0.056811374, 0.0042330134, 0.0094322665, 0.16746928, 0.016898578, 0.018024886, 0.04087607, 0.39389613, 0.10396401) * inp_4_2_2; - const V4 inp_5_0_0 = inp[5][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_5_1_0 = inp[5][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_5_2_0 = inp[5][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_5_0_1 = inp[5][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_5_1_1 = inp[5][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_5_2_1 = inp[5][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_5_0_2 = inp[5][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_5_1_2 = inp[5][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_5_2_2 = inp[5][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.123710185, 0.0055961637, 0.026967648, 0.4002243, -0.0013288023, 0.018353894, 0.032078598, -0.039268732, -0.06309415, 0.0067910263, -0.033640865, -0.008858984, 0.18109292, 0.095863715, -0.14206682, 0.057113767) * inp_5_0_0; - result0 += M4(-0.25029188, -0.014705295, -0.25787365, -1.2111418, -0.007688319, 0.0066271652, 0.09192618, -0.6113418, 0.11593546, 0.05399955, 0.093836695, -0.10966185, -0.30222926, -0.1149619, -0.05810426, -0.4484907) * inp_5_1_0; - result0 += M4(-0.05202678, 0.025130253, 0.085707, -0.35420153, 0.070437916, -0.017696185, -0.12493823, 0.26505044, -0.089384705, 0.00018066028, 0.23972598, 0.24549945, 0.041523144, 0.07565976, -0.051406965, -0.19095476) * inp_5_2_0; - result0 += M4(-0.048807845, 0.000946698, 0.0575346, -0.13944386, 0.031826183, -0.009879621, 0.17554148, -0.057682578, -0.052565835, 0.00162274, 0.027422195, -0.13956417, 0.17444777, -0.015311191, -0.0693655, -0.022305032) * inp_5_0_1; - result0 += M4(-0.08900678, 0.04709219, -0.26535815, -0.05010886, -0.18357727, -0.060039908, -0.09776422, 0.15313073, 0.21192625, 0.059971057, -0.24218301, 0.121105455, -0.1298665, -0.04286583, -0.2768024, -0.6364546) * inp_5_1_1; - result0 += M4(-0.036535546, -0.066260435, 0.17290731, -0.09415138, -0.018747142, 0.047781006, 0.10434604, -0.09901481, 0.056339383, -0.008777892, 0.07956998, -0.22741035, 0.1160415, -0.019870285, -0.008838166, -0.07528122) * inp_5_2_1; - result0 += M4(-0.15036856, -0.03210322, 0.38724253, -0.28065342, 0.16138063, 0.06616391, -0.009921414, 0.2730379, -0.070885666, -0.007556514, -0.031404212, 0.030356243, -0.09974104, -0.03916858, 0.10176994, -0.27289778) * inp_5_0_2; - result0 += M4(0.2281126, 0.055141743, -0.0651283, 0.54856724, -0.014460634, -0.13416319, 0.022330245, -0.3799187, 0.014122073, -0.004306611, 0.016603895, 0.009778893, -0.3362251, 0.0921759, -0.29017928, -0.3912878) * inp_5_1_2; - result0 += M4(-0.008259834, 0.023819748, -0.07404843, 0.29578745, 0.010289673, 0.10292377, 0.08794031, -0.04724856, -0.08153749, -0.09425213, -0.12400403, 0.24059002, -0.28464085, -0.15596376, 0.16152437, -0.55844134) * inp_5_2_2; - result1 += M4(0.0112369, -0.017906228, -0.04440247, 0.062190335, -0.025787065, 0.03569335, -0.64418435, -0.018127723, 0.06993006, -0.01383128, 0.3496791, 0.07333789, -0.03918315, 0.0072809937, -0.36915416, -0.09841706) * inp_5_0_0; - result1 += M4(0.03830342, -0.08570442, -0.064778455, -0.093698986, 0.026632719, -0.055590298, 0.4014219, 0.017934183, 0.044683818, 0.0060353763, 0.31767473, -0.035106987, 0.012781923, 0.013812663, -1.1359648, 0.016771099) * inp_5_1_0; - result1 += M4(-0.005023702, 0.00317627, -0.2871672, 0.009706755, 0.0008797243, -0.01887945, -0.5066744, -0.022227054, 0.010981201, 0.098596856, 0.52442694, -0.020289663, -0.000120839264, -0.10487549, -0.68748087, 0.019541007) * inp_5_2_0; - result1 += M4(0.06504653, 0.008827149, 0.24245472, -0.07178243, -0.013206451, -0.0009476431, 0.5128624, 0.025815597, -0.031666335, -0.0021187859, 0.048077058, 0.06516167, -0.0068296343, 0.00883571, -0.25188917, -0.501819) * inp_5_0_1; - result1 += M4(0.007644054, -0.060588945, -0.107596755, 0.0029877692, 0.00087284134, 0.0034592524, 0.092972055, -0.0056576305, 0.028557187, 0.027038015, 0.031458214, 0.09504501, -0.05853888, -0.07031556, 0.090311974, -0.080149785) * inp_5_1_1; - result1 += M4(-0.0010571631, -0.080543675, -0.24429384, -0.017629612, -0.00019252255, 0.028419795, 0.0127862645, 0.019189931, 0.01790072, -0.004285276, -0.20728078, 0.009064776, 0.0044334307, 0.098792136, 0.05326239, -0.0003305459) * inp_5_2_1; - result1 += M4(-0.013269974, -0.012910938, 0.082544014, -0.00057533383, 0.004552069, 0.02657698, -0.48643312, 0.016446628, -0.0045577125, 0.01305659, -0.05918562, -0.00096306705, -0.015847988, -0.027390257, -0.034632962, 0.0012235462) * inp_5_0_2; - result1 += M4(-0.0048810556, -0.028828839, 0.021632003, -0.041020017, -0.0043233265, -0.027019575, 0.055175364, 0.002213374, 0.0033744294, 0.0011760135, -0.15332137, -0.10665318, 0.01353382, 0.060972232, 0.06964602, -1.1149677e-05) * inp_5_1_2; - result1 += M4(-0.011080321, 0.0070899115, 0.09482532, 0.0028319121, 0.0003382812, 0.0076237195, -0.04065382, 0.0007842605, -0.0027522107, 0.003389762, -0.15637788, 0.032316815, 0.014454539, -0.051773887, -0.062293917, 0.015159898) * inp_5_2_2; - result2 += M4(0.0018508625, 0.003095976, 0.014053947, -0.0072243144, -0.02452467, -0.13228308, 0.011097201, -0.0063217194, 0.03842393, 0.013157798, -0.0023470572, -0.026032712, -0.1472669, 0.03666837, -0.006129349, -0.009491216) * inp_5_0_0; - result2 += M4(0.04332834, 0.010415317, -0.011096054, -0.022596184, -0.028170599, 0.08009872, -0.015379172, 0.0047726776, 0.06681237, -0.10677614, 0.035253428, -0.043116603, 0.07736196, -0.009656484, 0.01016058, 0.020103833) * inp_5_1_0; - result2 += M4(-0.0924106, 0.025768472, -0.013279518, 0.0031521744, -0.040222317, 0.08273935, -0.014510391, 0.008319581, 0.0037450835, 0.037597448, 0.044877786, -0.0816804, -0.07447345, -0.01161724, -0.0036654999, -0.0009815859) * inp_5_2_0; - result2 += M4(0.047067348, -0.025369715, 0.027825693, 0.03480062, 0.0933108, 0.12862794, -0.020292202, 0.008248592, -0.013032188, -0.015986616, 0.017202055, -0.08952263, 0.045182664, -0.035248704, 0.008467567, 0.035897423) * inp_5_0_1; - result2 += M4(-0.17502794, 0.010615032, 0.044597756, -0.08388223, -0.01971773, -0.38331482, 0.032536477, -0.06359574, -0.07397479, 0.16213445, -0.08485795, -0.010409445, -0.30418158, -0.002181508, -0.01893301, -0.0634515) * inp_5_1_1; - result2 += M4(0.048545916, 0.008775951, 0.022582535, 0.026230851, 0.07886689, -0.03204544, -0.015373615, 0.01774202, 0.11199383, -0.19429083, 0.30573428, -0.087739445, 0.04820333, 0.008462347, 0.008195342, 0.00062971294) * inp_5_2_1; - result2 += M4(-0.027907275, 0.072582185, 0.040426478, -0.045810375, 0.017611068, 0.071229786, -0.031314496, -0.002291072, 0.013243779, -0.008596356, 0.024412196, 0.018926898, 0.00040769574, 0.030869756, 0.016998375, -0.007773842) * inp_5_0_2; - result2 += M4(-0.026258131, -0.0077882013, 0.12478316, 0.04202753, -0.09344261, 0.086151466, -0.023280669, -0.0019192358, 0.04433542, -0.04997645, -0.07867039, -0.049236495, 0.0025612346, 0.020576797, -0.006802411, 0.037518017) * inp_5_1_2; - result2 += M4(-0.06888732, -0.0002408053, 0.0169374, 0.01074099, -0.008554872, -0.023000933, 0.0045956518, -0.006099658, -0.024361052, 0.065914735, 0.07817978, -0.058786035, 0.03359388, -0.0082887905, -0.0036015075, -0.0037619174) * inp_5_2_2; - result3 += M4(0.04538263, -0.0379092, 0.0012280175, 0.0068288255, -0.05452807, 0.014173078, -0.0021724638, 0.0018283846, -0.09626507, 0.007114216, -0.029942939, 0.0050518704, -0.28387207, -0.030874887, -0.02398075, -0.00197876) * inp_5_0_0; - result3 += M4(0.015248673, 0.06465118, 0.0090377545, 0.007880025, 0.14045373, 0.0713355, 0.0029069316, -0.0029871142, -0.14483067, -0.09223899, 0.021697417, -0.004874224, 0.042036135, 0.046447843, 0.014762232, 0.00090683164) * inp_5_1_0; - result3 += M4(0.049190696, 0.00058568263, 0.0095676165, -0.006582468, 0.11617685, -0.0070353355, -0.02094826, 0.003919556, -0.037459556, 0.0845387, -0.07780502, -0.026395718, 0.07551103, 0.0011970535, -0.02141631, -0.00091524) * inp_5_2_0; - result3 += M4(0.098104596, 0.025409738, 0.031035384, 0.0068788626, -0.04136269, -0.1114111, -0.09762803, -0.005346807, 0.051071957, -0.06348426, 0.009649097, 0.018183025, 0.20030509, 0.07944132, 0.019583907, 0.002162389) * inp_5_0_1; - result3 += M4(-0.16075537, -0.084514454, 0.011394127, 0.008470069, -0.343967, -0.015881252, -0.020745048, 0.0042409194, 0.27445212, 0.22021538, 0.022681732, 0.10448474, -0.10509708, -0.1993936, -0.01419423, 0.0037925872) * inp_5_1_1; - result3 += M4(0.04689634, -0.14006884, 0.018754877, 0.01124188, -0.031584326, -0.027096493, 0.007001733, -0.0062527643, 0.115796946, -0.01301345, -0.13394472, 0.23520578, -0.14533484, 0.119719, 0.0078124427, -0.0054045944) * inp_5_2_1; - result3 += M4(0.0014730525, -0.033755735, 0.023389494, -0.010391416, 0.20083493, 0.07466322, 0.01333041, 0.0034724544, 0.060309533, 0.022982217, 0.00054401445, -0.02100239, -0.03242684, -0.05731651, -0.010848367, 0.0019000089) * inp_5_0_2; - result3 += M4(-0.19401279, 0.036231622, 0.09077971, -0.066967815, 0.05237347, 0.03449049, -0.0815538, 0.004723074, -0.14420083, -0.04583082, -0.028091168, -0.031671174, -0.1228356, 0.16973597, -0.016723253, 0.0028919468) * inp_5_1_2; - result3 += M4(-0.11067993, 0.018545872, 0.04174819, -0.22908881, -0.06594106, -0.022414058, -0.0108627565, -0.89024687, -0.006384009, -0.022160375, -0.027132226, 0.1808949, 0.15391158, -0.10838177, -0.016400132, -1.0542635) * inp_5_2_2; - result4 += M4(-0.010955942, 0.007721257, -0.028749973, 0.028434195, -0.004439555, 0.02121317, -0.016430924, -0.0071512153, -0.014201958, -0.08813098, 0.017267508, -0.03508916, -0.05739518, -0.019405985, -0.052838296, 0.14592184) * inp_5_0_0; - result4 += M4(0.0052937306, 0.022609795, -0.05124228, -0.019379407, 0.0036330267, -0.025237542, -0.105474554, 0.028189484, -0.10302823, -0.081910044, -0.042599007, 0.19289291, 0.04333696, 0.02236944, 0.0631625, -0.09143264) * inp_5_1_0; - result4 += M4(-0.0056537963, 0.06985442, -0.025520924, -0.020921912, 0.0124069955, -0.062276077, -0.06210516, 0.013339314, -0.0064242864, 0.0025320703, 0.076532714, 0.0016465964, -0.006330464, 0.004961181, 0.016235363, 0.045758627) * inp_5_2_0; - result4 += M4(0.022961583, 0.026996793, -0.014797536, -0.01751415, -0.007604921, -0.03129803, -0.293021, -0.047574468, 0.011943651, 0.05104087, 0.021907348, -0.002073898, 0.034583133, 0.008206652, 0.03306198, -0.11200141) * inp_5_0_1; - result4 += M4(-0.009349369, -0.04234114, -0.048868768, -0.04536362, 0.006921742, 0.08741048, -0.17857294, -0.028086556, -0.1066399, 0.20623413, 0.14247967, -0.057659358, -0.05711138, -0.06413519, -0.00076562783, -0.3465678) * inp_5_1_1; - result4 += M4(-0.008311315, 0.019410906, 0.06812772, -0.0779887, -0.025845254, 0.065870374, -0.33682114, -0.038375158, 0.16580354, -0.050095066, -0.0912495, 0.03887698, -0.014262587, 0.0051532844, -0.050325215, -0.08786848) * inp_5_2_1; - result4 += M4(-0.0062736277, 0.013271109, 0.02259509, -0.012412317, -0.023020018, 0.037529845, -0.1564478, 0.03288348, 0.0023755946, 0.007514896, -0.06215181, -0.00028548748, 0.0001537589, 0.06804496, 0.009217579, 0.03360693) * inp_5_0_2; - result4 += M4(0.029613255, -0.032694813, -0.065702744, 0.044575352, 0.017228976, -0.14527577, -0.065642565, 0.030855967, -0.02873469, -0.030430246, 7.2102746e-05, 0.010847365, -0.02377553, -0.13899876, -0.07811296, -0.10969839) * inp_5_1_2; - result4 += M4(-0.03262674, 0.040435772, -0.0006715948, -0.0031349047, 0.00030729573, 0.045717917, -0.004599818, -0.0054932185, 0.074698135, 0.04620488, 0.014924902, 0.047797143, 0.024589825, 0.051548954, 0.076428525, -0.06698059) * inp_5_2_2; - result5 += M4(-0.3862298, -0.033756714, 0.20133555, -0.0863349, -0.1158652, -0.013105011, 0.016364375, 0.043958202, -0.13585542, -0.028258046, 0.02983589, 0.05852291, -0.5302943, -0.031647857, 0.08174526, -0.24059556) * inp_5_0_0; - result5 += M4(0.041889027, 0.021894703, -0.17531614, -0.090069845, 0.058900844, -0.041917946, -0.25996438, 0.03219614, 0.11272058, 0.049496267, 0.027901612, 0.053692076, 0.12108012, 0.05808237, -0.08661849, 0.013547071) * inp_5_1_0; - result5 += M4(-0.069122486, 0.020565575, -0.027688988, -0.0014085778, -0.22126232, -0.117504895, 0.03164888, 0.15289153, -0.1458936, -0.018261237, 0.14325084, -0.10349678, 0.053113423, -0.0012595967, 0.014270333, 0.0562568) * inp_5_2_0; - result5 += M4(0.01850583, 0.048531704, -0.09019697, 0.080699824, -0.33748418, -0.095857345, -0.01243121, -0.15133704, -0.07936184, -0.03036079, -0.038867652, 0.074719734, -0.049669184, 0.05012133, -0.08179629, -0.034787677) * inp_5_0_1; - result5 += M4(0.08171897, -0.13591968, -0.28730652, 0.023340035, -0.16746575, -0.09457583, -0.16711873, -0.057874333, 0.071169846, -0.080501445, 0.032642998, -0.017203623, -0.22227862, -0.045627367, -0.21042745, -0.039739545) * inp_5_1_1; - result5 += M4(0.088343345, -0.020441754, -0.06497453, -0.03312664, -0.27467364, -0.11081517, -0.03724939, 0.09722156, 0.06186786, 0.032496907, -0.004053047, -0.17932275, -0.08041116, 0.02915965, 0.070956975, -0.011196618) * inp_5_2_1; - result5 += M4(0.025332099, -0.044377834, -0.08498362, 0.0719773, -0.4181966, -0.031023158, -0.011330509, 0.04849342, -0.015307236, 0.023344832, 0.04373427, -0.007155072, -0.03110089, -0.0020941503, 0.024609506, -0.0072052986) * inp_5_0_2; - result5 += M4(0.24132244, 0.019929403, 0.14607942, 0.08835743, 0.12707058, -0.036167856, -0.13715975, -0.022224644, 0.110023975, 0.080640905, 0.07568743, -0.016320849, -0.3220595, 0.06303495, 0.083936825, -0.044225797) * inp_5_1_2; - result5 += M4(-0.11718662, 0.02097713, 0.21866737, 0.13927403, -0.24581449, 0.035112876, -0.010758045, -0.038755026, -0.117828146, -0.046410844, -0.06300276, -0.075576685, 0.11286918, -0.06626288, -0.20493622, -0.000903041) * inp_5_2_2; - result6 += M4(-0.4472423, 0.0250912, -0.0069369767, -0.09071967, 0.03191252, 0.013202142, 0.049337085, -0.116650395, 0.077235535, 0.04819573, 0.018602418, -0.012116792, -0.32045427, 0.10473518, -0.03611783, -0.104737535) * inp_5_0_0; - result6 += M4(-0.06570121, 0.011706921, -0.099399135, -0.12798499, -0.6102766, -0.12765677, -0.011877942, 0.093335465, 0.0031494463, 0.0941847, 0.09621539, 0.06597269, 0.02624698, -0.0641231, -0.189234, -0.09288142) * inp_5_1_0; - result6 += M4(-0.0347718, 0.054503072, -0.055831157, -0.084261805, 0.28971317, -0.07838357, -0.010080162, 0.017678132, -0.002654341, 0.0060399785, 0.0538514, -0.05036081, 0.017440213, -0.003906836, 0.00021279606, 0.07496988) * inp_5_2_0; - result6 += M4(0.027240617, -0.086215355, -0.019108398, 0.096552, -0.28049397, 0.06389728, 0.043483306, -0.06811171, -0.116590925, 0.032128815, 0.012601884, -0.0068072556, -0.634855, -0.09120709, -0.07157644, 0.17864358) * inp_5_0_1; - result6 += M4(0.03157809, -0.05922353, -0.051830053, 0.112317935, 0.139449, 0.16159695, 0.07344143, -0.080054656, -0.013624571, 0.0117578935, -0.09231044, -0.07595958, -0.0590046, -0.08803987, -0.039432652, 0.038007364) * inp_5_1_1; - result6 += M4(0.0724003, -0.010609667, -0.11946315, 0.029544862, -0.024387296, 0.06401208, 0.030639056, -0.016782766, 0.062216576, 0.0653564, -0.1000373, -0.07594571, 0.030972535, 0.16003641, 0.05105545, -0.138337) * inp_5_2_1; - result6 += M4(0.30150613, 0.013888585, 0.055911474, 0.015421688, 0.22555943, -0.09926168, -0.09735913, -0.056397855, 0.046377037, -0.033960603, -0.025054682, -0.010004912, -0.60150105, 0.05137548, 0.0017118946, -0.0047891904) * inp_5_0_2; - result6 += M4(-0.09625907, 0.08507822, 0.108137146, 0.13246158, -0.12338044, -0.05751706, -0.08192098, 0.016492995, 0.008594298, 0.06495735, 0.0048113125, 0.01716771, 0.05593547, 0.07437816, 0.07170584, -0.04596091) * inp_5_1_2; - result6 += M4(0.03636341, -0.02338052, 0.09411537, 0.0572732, -0.094504476, 0.06616344, 0.039965518, -0.019230515, 0.016483052, -0.08511821, -0.025963172, 0.009695174, -0.0037209438, -0.18648513, -0.08493537, -0.0012187082) * inp_5_2_2; - result7 += M4(-0.015835453, -0.04200304, 0.010994864, 0.017655073, -0.17360379, 0.0023398967, -0.16510513, 0.008617665, 0.062099256, -0.032970108, 0.044025652, 0.034678236, 0.032969385, 0.08645098, 0.23094559, -0.022408858) * inp_5_0_0; - result7 += M4(-0.029572856, 0.04604314, -0.049497884, -0.04235404, -0.023173431, -0.055144247, 0.013323401, 0.07002569, 0.09074504, 0.07996045, 0.2055973, 0.03659116, -0.028411558, 0.07955718, -0.017613329, -0.06823085) * inp_5_1_0; - result7 += M4(-0.008217825, 0.017331008, 0.090503044, -0.010623501, 0.0080685895, -0.084872566, -0.5320482, -0.0268224, -0.023873793, 0.08151074, 0.28897938, 0.040403165, 0.011231741, -0.048918735, 0.014035843, 0.007890621) * inp_5_2_0; - result7 += M4(-0.10125856, -0.0179136, 0.021842223, 0.01141395, -0.11047428, 0.093512625, 0.3307636, -0.033955775, -0.0075110914, 0.07088098, 0.3040375, 0.013010312, -0.04509318, -0.119534016, -0.510191, -0.035019707) * inp_5_0_1; - result7 += M4(-0.012894575, 0.019624358, -0.01852965, -0.10777656, -0.0035769965, 0.17132641, -0.21617556, 0.0008148792, 0.23022625, 0.056173835, -0.06860901, -0.0065486473, 0.07027718, -0.20340233, -0.6233329, 0.026128992) * inp_5_1_1; - result7 += M4(-0.0009320249, -0.023985267, -0.3032159, -0.067842394, -0.00862757, 0.016621457, 0.39877814, 0.102579266, 0.008278652, -0.05136529, -0.033091612, 0.041650224, -0.0059270966, -0.06887291, -0.10319414, 0.04040927) * inp_5_2_1; - result7 += M4(-0.0594103, 0.008767828, 0.03544513, 0.009564391, -0.018325917, -0.05379606, -0.4487461, -0.013876787, -0.047048464, -0.03536787, -0.06610573, -0.05147065, 0.03962339, 0.030393204, 0.096072845, 0.039931867) * inp_5_0_2; - result7 += M4(-0.01818441, 0.094742455, 0.106221355, 0.13334025, -0.0069631855, -0.06666921, 0.065732375, -0.12908341, -0.01635034, 0.0049481443, -0.09461432, 0.04481508, -0.02194168, -0.043540798, -0.14458445, 0.029104276) * inp_5_1_2; - result7 += M4(0.009424532, -0.017100075, 0.07264109, 0.07926245, 0.0019121327, -0.016745476, -0.13231902, -0.01871996, -0.009279449, -0.024866372, 0.09020136, -0.04805157, -0.013400049, -0.14148545, -0.4804887, -0.050191928) * inp_5_2_2; - const V4 inp_6_0_0 = inp[6][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_6_1_0 = inp[6][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_6_2_0 = inp[6][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_6_0_1 = inp[6][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_6_1_1 = inp[6][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_6_2_1 = inp[6][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_6_0_2 = inp[6][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_6_1_2 = inp[6][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_6_2_2 = inp[6][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.016886065, -0.016475854, 0.0039901827, -0.08442869, -0.045796815, 0.03404783, 0.047319755, 0.47565743, -0.06302444, -0.0037803235, 0.012231864, -0.027136462, -0.07435046, 0.015326778, 0.084975615, -0.14216952) * inp_6_0_0; - result0 += M4(0.06951894, 0.04309342, 0.116758406, 0.3472885, -0.06546685, -0.02845852, -0.0778252, -0.27043378, 0.0682703, 0.008518834, 0.055100095, 0.28548786, -0.0396495, 0.0056522484, -0.13876185, -0.12189256) * inp_6_1_0; - result0 += M4(0.017398108, 0.03481229, 0.044931695, -0.17319429, 0.030206684, -0.0008342145, -0.1906033, 0.1311883, 0.022014257, 0.021827063, 0.020016827, 0.13991445, 0.09874555, 0.04881173, -0.101093344, 0.14856069) * inp_6_2_0; - result0 += M4(-0.03830594, -0.047777787, 0.008772387, -0.15978007, 0.15888292, 0.052312683, -0.10512692, -0.0035829495, -0.045675162, 0.007255717, 0.1077248, -0.27920315, 0.0109229665, 0.05830878, 0.044435136, -0.14798808) * inp_6_0_1; - result0 += M4(-0.034225814, 0.011384562, 0.06812987, -0.11784705, 0.0077642347, -0.018475026, 0.114324145, 0.06437515, 0.08478724, 0.020524204, 0.09734501, 0.10220254, -0.15277588, -0.05864344, 0.067353286, -0.36833328) * inp_6_1_1; - result0 += M4(-0.011195161, 0.054054957, -0.14983587, -0.13910149, 0.02950605, 0.11263931, 0.029798057, -0.10904278, 0.10360864, 0.037227925, -0.051315993, 0.12595439, -0.014274898, -0.052587982, 0.03062576, -0.21177733) * inp_6_2_1; - result0 += M4(-0.035114598, -0.0118268225, 0.11772664, -0.03169712, 0.087477714, 0.03823873, -0.050340865, 0.03337059, -0.025364578, -0.0050675017, 0.08244465, -0.029159846, -0.06338091, 0.010374189, 0.040904306, -0.29580206) * inp_6_0_2; - result0 += M4(0.07296411, 0.028777834, -0.02907877, 0.11558136, -0.074290976, 0.0002426119, -0.06362316, 0.033334456, 0.055543076, -0.009645074, 0.18795004, 0.01715861, 0.18297768, 0.07780479, 0.01974813, -0.002598587) * inp_6_1_2; - result0 += M4(0.008004301, -0.022681408, -0.069329135, -0.084427096, 0.015070907, 0.07193787, -0.008618819, 0.03876606, 0.006669796, 0.0401191, -0.030800516, 0.120095655, -0.013246376, -0.014934389, -0.06340086, -0.17195413) * inp_6_2_2; - result1 += M4(0.24568893, 0.004199364, -0.00028222718, -0.1062731, 0.009838466, -0.04359659, -0.0030158162, -0.13102429, -0.05813355, 0.014187817, 0.18512954, 0.05844152, -0.37069657, -0.013368133, -0.13188705, -0.07412) * inp_6_0_0; - result1 += M4(-0.0053700074, -0.015632043, 0.086592585, 0.052495863, -0.01197594, 0.012689837, 0.12264024, -0.02320147, -0.020085933, 0.023451377, 0.11882104, 0.098163895, -0.042534895, -0.08714207, -0.28008416, 0.074227825) * inp_6_1_0; - result1 += M4(0.007115303, 0.06190192, -0.261385, -0.0094699105, -0.011346973, -0.09712951, -0.29174185, -0.00969638, -0.00435, -0.0019856582, 0.2878415, -0.00076344446, 0.010889538, 0.05421421, -0.07365893, 0.01648095) * inp_6_2_0; - result1 += M4(-0.0061301533, 0.016104728, 0.027452298, 0.29150707, 0.029053329, -0.019316364, 0.3296298, -0.01388066, 0.0010063553, 0.037860587, 0.24130782, 0.15409403, -0.023449581, 0.014543033, -0.30204737, 0.1045479) * inp_6_0_1; - result1 += M4(-0.027961107, 0.07787586, -0.114334606, 0.05787047, 0.0058944956, 0.00935745, 0.10689901, -0.15155083, -0.010156387, 0.021068675, 0.030479368, 0.09743853, -0.025753412, 0.06935078, -0.09592107, 0.018139256) * inp_6_1_1; - result1 += M4(0.0034180947, -0.035650324, -0.16365717, -0.016488284, -0.0052414397, -0.0077873236, -0.23101875, -0.020378793, 0.00029225953, -0.023008615, 0.052151456, -0.007824071, 0.007301773, -0.03616989, -0.04348297, -0.012029329) * inp_6_2_1; - result1 += M4(0.0043085744, 0.0022107607, -0.060320817, -0.008569688, 0.013263189, -0.007707904, -0.08515928, 0.00336974, -0.0035903584, 0.018595625, -0.010964325, -0.0051550856, 0.023330837, -0.00075046776, 0.011563475, 8.620943e-06) * inp_6_0_2; - result1 += M4(-0.0065500517, -0.016641675, -0.11509949, -0.10051594, 0.010888322, 0.0032908188, -0.13837492, 0.015847715, -0.006803832, -0.0148549685, 0.0052016308, -0.023066554, -0.00478692, -0.019152783, -0.103406414, -0.03471215) * inp_6_1_2; - result1 += M4(0.000680777, 0.0177189, -0.051190328, 0.00788786, 0.001855084, -0.010370578, -0.16510728, 0.0066600908, -0.0010510074, 0.013059259, 0.02385259, -0.007139736, -0.004387606, 0.021834074, 0.030075701, -0.0027955843) * inp_6_2_2; - result2 += M4(-0.06487942, -0.032808434, 0.01194152, 0.004925684, -0.0150918355, 0.015585635, -0.0055441875, 0.0028300115, 0.0050961026, 0.035370942, -0.0013582848, -0.0072223595, -0.016885508, -0.008111068, 0.019438354, 0.03206368) * inp_6_0_0; - result2 += M4(0.10090255, 0.048428632, -0.0062325536, 0.04708998, -0.03884341, 0.011778174, 0.01477718, 0.042400006, 0.07240183, 0.0067176274, 0.0043010097, -0.0067590117, -0.0981795, -0.061047066, 0.05861664, -0.039294474) * inp_6_1_0; - result2 += M4(0.006111552, -0.016447954, 0.006780925, -0.010046139, -0.1278533, -0.05142276, -0.0024014737, 0.0043534837, 0.04935562, 0.019115457, -0.0021978787, -0.006061622, 0.06103732, 0.0416107, -0.018054904, 0.007646078) * inp_6_2_0; - result2 += M4(0.10663085, -0.0015379889, 0.04447084, -0.014806051, -0.016227925, -0.022379376, -0.02051976, 0.053765733, 0.04316828, 0.054087695, -0.0043466534, -0.0037241704, -0.040898032, -0.073807865, -0.063643195, 0.101776764) * inp_6_0_1; - result2 += M4(-0.104240045, -0.05731609, 0.026757184, 0.038160596, 0.08312813, 0.0634593, 0.060705155, 0.0027429531, 0.1462689, 0.1130091, -0.040555034, -0.025064737, 0.0692235, -0.042078584, -0.17468013, -0.31891453) * inp_6_1_1; - result2 += M4(0.010041458, -0.05992249, 0.03700877, -0.002997934, -0.118272506, 0.026956651, -0.037887543, 0.0043467786, 0.034097083, 0.017485281, -0.008677678, 0.0031416127, -0.026396168, -0.038884837, 0.02314824, -0.06990926) * inp_6_2_1; - result2 += M4(-0.009822497, -0.008223876, 0.010280279, -0.0048064683, 0.0013225058, -0.004990187, -0.009735601, -0.0116605805, 0.06417242, 0.013529066, 0.012089312, -0.00538339, -0.021312641, 0.005491536, -0.0045210677, -0.010256391) * inp_6_0_2; - result2 += M4(0.03910903, -0.009586834, -0.020982536, 0.027560696, -0.06402266, -0.048823874, 0.007756096, 0.020282583, 0.019231206, 0.010131276, 0.021404304, 0.0014786295, -0.035413347, -0.097650036, -0.030079816, 0.0042301337) * inp_6_1_2; - result2 += M4(-0.03288541, 0.003176583, 0.0017961046, -0.020345626, -0.0077890377, -0.004630163, -0.016992074, -0.01954472, 0.021569172, 0.062347278, -0.00065002346, 0.0015881422, -0.056044813, 0.029375048, 0.015552908, 0.010928271) * inp_6_2_2; - result3 += M4(-0.011434685, -0.0017883487, -0.0039987555, -0.0030476837, -0.017677195, -0.029717833, -0.003495315, -0.00082669884, -0.042644724, 0.005742438, -0.04234281, -0.0030387237, -0.03172935, 0.020400628, 0.007883935, -0.0021116773) * inp_6_0_0; - result3 += M4(-0.0069927624, -0.040653933, 0.019741599, 0.011937394, 0.0066519426, -0.0843157, -0.0024193756, 0.0031586518, 0.047433414, -3.0048426e-05, -0.018353494, -0.00027421073, -0.12154209, 0.024838423, -0.06410939, -0.007851335) * inp_6_1_0; - result3 += M4(0.049695738, 0.031908717, 0.013013859, -0.005426294, 0.017360037, -0.062721446, -0.013417134, -0.007984365, -0.010561271, 0.041668404, -0.018101789, 0.0028116954, -0.033551965, 0.0269283, 0.04855209, 0.01701052) * inp_6_2_0; - result3 += M4(0.04688336, -0.048542574, 0.03652352, 0.008423903, -0.02025556, 0.0006974462, -0.017287526, -0.0028826674, 0.057237953, -0.0090165455, -0.041948203, -0.0010799598, -0.1304305, -0.09648492, -0.07257795, -0.009741121) * inp_6_0_1; - result3 += M4(-0.108106844, 0.19593963, -0.031817205, -0.050749984, -0.1701517, -0.14316264, 0.029934362, 0.0019885367, 0.16680694, 0.07081589, -0.19023207, -0.0010651606, -0.25846297, -0.12774311, -0.089332946, 0.038277403) * inp_6_1_1; - result3 += M4(-0.018994832, -0.007664423, -0.013441305, 0.02988113, -0.035389125, -0.06155982, 0.023271319, 0.006346818, 0.045384683, 0.11110499, -0.025707265, -7.659245e-05, -0.055233654, 0.004168702, -0.033153903, -0.0071941135) * inp_6_2_1; - result3 += M4(0.024822135, 0.0487323, -0.00911172, -0.011004567, 0.043313604, 0.043280646, -0.0070040934, -0.0068001896, 0.043392215, 0.0017325142, -0.03310088, -0.005647254, -0.09614904, 0.040582716, 0.014962408, 0.0040816814) * inp_6_0_2; - result3 += M4(0.1031085, -0.031719346, -0.035596956, 0.012579938, 0.12707743, 0.10344901, -0.020577194, 0.012797935, -0.017592017, 0.04877623, -0.024446443, -0.002917043, 0.022994675, 0.004553127, -0.03949617, 0.040301513) * inp_6_1_2; - result3 += M4(0.032240212, 0.032379765, -0.011885934, -0.1945824, 0.007792208, -0.025527544, 0.019247627, -0.4080675, -0.041584168, -0.018727535, -0.0038896669, -0.045705028, 0.008520275, 0.026831059, 0.004424536, -1.3328931) * inp_6_2_2; - result4 += M4(0.01778329, -0.0144775845, 0.033664525, 0.097635284, -0.019831445, -0.061309952, -0.008258678, -0.009651429, -0.0019281011, -0.015377182, 0.15844692, -0.028796544, -0.015728593, -0.041292515, -0.029326819, -0.08793912) * inp_6_0_0; - result4 += M4(0.046442665, -0.0062390245, -0.08299899, -0.037524894, -0.00017456403, -0.04551429, -0.15596782, -0.08395001, -0.011923366, -0.024218172, 0.06116528, 0.034720927, -0.027164962, -0.041920368, -0.02033955, -0.052476935) * inp_6_1_0; - result4 += M4(0.02544469, -0.048028078, -0.034419604, 0.05510157, -0.021338582, 0.0048566544, -0.040567126, -0.012730542, -0.015667357, -0.019052768, 0.0020056923, 0.019795293, 0.007755742, -0.012998493, -0.094981864, -0.003500319) * inp_6_2_0; - result4 += M4(0.047763728, -0.009626061, 0.04597921, -0.06778473, -0.031824246, -0.028697677, -0.025739245, 0.13317256, 0.008400222, 0.023222793, 0.06760495, -0.0530328, -0.11507431, -0.07606816, 0.023331191, 0.017963804) * inp_6_0_1; - result4 += M4(0.09046238, 0.03527749, -0.09852048, 0.087826654, 0.04160312, -0.13796237, 0.16001056, -0.011944976, -0.034956943, 0.05848658, 0.17316125, 0.017723586, -0.21711312, -0.11075181, -0.04967953, 0.12661065) * inp_6_1_1; - result4 += M4(0.041444153, 0.017551973, 0.062111717, -0.0011141248, -0.048283994, -0.049844857, -0.0509143, -0.018155301, -0.007305832, 0.027882358, 0.04443943, 0.040852416, 0.054206815, -0.015554904, 0.12750742, 0.0011737919) * inp_6_2_1; - result4 += M4(0.01592399, 0.06747631, -0.10050249, 0.03961285, -0.021639878, -0.07428532, 0.039984822, -0.008819093, -0.0011572199, 0.12883942, -0.029582059, 0.030581558, 0.003381552, -0.120623335, -0.077554226, 0.017134573) * inp_6_0_2; - result4 += M4(0.021890517, -0.13839835, -0.122000456, 0.01812669, 0.029935518, -0.0042624585, -0.112814896, 0.0021668787, -0.008586963, 0.11993703, 0.085999325, -0.0061070104, 0.04479935, -0.17722131, 0.12427034, -0.04539199) * inp_6_1_2; - result4 += M4(-0.01199616, 0.040494733, -0.0033494395, 0.06682194, -0.025760626, -0.032891482, 0.06621758, -0.01984936, -0.019081054, 0.074560195, 0.07515697, -0.018839382, 0.0024261007, -0.099857956, -0.042733047, 0.042767975) * inp_6_2_2; - result5 += M4(0.09944918, 0.044748317, -0.14419748, 0.020849688, -0.14767136, -0.032927573, 0.21541287, -0.06630658, 0.13611887, 0.056643404, 0.020152707, 0.08257206, -0.09914228, 0.001565106, -0.0038115114, -0.04674847) * inp_6_0_0; - result5 += M4(-0.16852166, -0.012142995, 0.08853944, 0.13090904, -0.024715805, -0.033802625, 0.037440784, -0.013109227, 0.34897238, 0.07003973, 0.048508953, 0.09291183, 0.032037154, 0.05201277, -0.06737848, 0.044923507) * inp_6_1_0; - result5 += M4(-0.06745008, -0.040670224, 0.010644281, -0.041402258, -0.040981196, -0.027742755, -0.063840084, 1.8155362e-06, -0.102639005, -0.0054110372, 0.00092088064, -0.05830586, -0.34051538, -0.059047855, -0.012398158, -0.06282696) * inp_6_2_0; - result5 += M4(0.38011885, -0.07217676, -0.26129323, 0.12457269, 0.08902669, 0.069871016, -0.0602744, -0.021238431, 0.24612884, 0.037285846, -0.06800647, 0.09729676, -0.023657072, -0.008554355, -0.12658305, -0.09691656) * inp_6_0_1; - result5 += M4(-0.24703184, -0.12314848, 0.11807167, 0.026500018, -0.050499592, 0.08874604, -0.07872092, 0.04308523, 0.08511529, 0.039245006, 0.086690225, 0.12394456, -0.31289858, -0.032772284, -0.062367763, 0.08680326) * inp_6_1_1; - result5 += M4(0.12748358, 0.07905133, -0.084321626, -0.090482965, -0.004753794, -0.069777146, -0.13409315, -0.046482585, 0.0153857265, 0.03675992, 0.046928708, -0.04191003, 0.007781919, 0.07955081, 0.09471168, -0.20445856) * inp_6_2_1; - result5 += M4(-0.001719825, -0.017945059, -0.082733065, 0.011298784, 0.057116248, -0.061930425, -0.09303667, 0.0008144367, 0.074118085, -0.015309409, -0.031025289, 0.057414424, 0.07937357, -0.07540818, -0.14256829, 0.09760021) * inp_6_0_2; - result5 += M4(-0.24185972, 0.076997906, 0.030845776, -0.058942, 0.13679022, -0.012980108, 0.07575285, 0.051461045, 0.008866562, -0.0004988206, 0.07885505, 0.010937987, -0.14274742, 0.021322858, 0.17446521, 0.020179123) * inp_6_1_2; - result5 += M4(0.14839411, -0.03869732, -0.09364286, -0.0070979376, -0.10515424, 0.03673135, -0.02482161, -0.01717515, -0.05822214, 0.053318836, 0.0560711, -0.012287549, 0.23619936, -0.006653641, -0.020876227, -0.04839429) * inp_6_2_2; - result6 += M4(0.079997756, -0.08126051, 0.04376904, -0.0038870792, 0.23120484, 0.054024853, 0.005122622, -0.2798709, 0.14395525, 0.018305907, 0.021819396, -0.08950446, -0.05542883, -0.17707035, -0.058200326, -0.0903079) * inp_6_0_0; - result6 += M4(0.073200405, -0.14206734, 0.17711724, 0.104003385, -0.23323248, -0.009088263, -0.015927952, 0.1187842, 0.033094425, -0.029012002, 0.035374448, 0.12471208, -0.044400446, -0.10714874, -0.12465713, -0.0057252194) * inp_6_1_0; - result6 += M4(-0.07025251, -0.08624634, 0.03130399, 0.025860392, 0.09209882, -0.084320985, -0.056444474, 0.0007607566, 0.0068900646, -0.03518283, 0.078105636, 0.07631034, -0.039745115, -0.10609129, 0.11457154, 0.029513272) * inp_6_2_0; - result6 += M4(0.1783417, 0.044687055, 0.032085773, 0.06691732, -0.10476646, 0.01865035, -0.06384263, -0.20122354, -0.19979127, 0.09258898, 0.022643128, -0.05429189, -0.25116548, -0.11581014, -0.011126724, -0.12131995) * inp_6_0_1; - result6 += M4(-0.0049077254, 0.14216886, 0.022373147, 0.11692504, 0.012980123, -0.019364748, 0.10243682, 0.20708697, -0.06404606, 0.0128777195, -0.038747914, 0.12125769, 0.15872575, -0.20180833, 0.03333634, 0.017772576) * inp_6_1_1; - result6 += M4(0.048815276, 0.062463194, 0.04278002, 0.016216967, -0.017450985, -0.16882412, -0.0075416192, 0.021465909, 0.027847946, 0.07231277, -0.043143727, 0.06493768, -0.08232729, -0.041737814, 0.13164282, -0.061099917) * inp_6_2_1; - result6 += M4(-0.18821685, -0.026033053, -0.015253684, -0.028606031, 0.15813757, -0.04516336, -0.018266464, -0.11803022, 0.060220663, 0.012415843, -0.019073542, -0.0537234, -0.14686549, -0.01825198, 0.01837324, 0.024246505) * inp_6_0_2; - result6 += M4(0.13234122, -0.04466265, -0.049545933, 0.029971814, -0.031566694, -0.083023034, -0.05278604, 0.02237558, -0.018923236, 0.11620614, 0.016360594, 0.026777947, 0.14689736, -0.0658233, -0.06525636, -0.007955358) * inp_6_1_2; - result6 += M4(-0.06285635, -0.04255418, -0.054457948, 0.008337965, -0.0032388095, -0.07895722, -0.026462186, 0.017191675, -0.026602268, 0.017774792, 0.029307162, 0.02123039, -0.12164245, -0.0026937218, -0.074569255, -0.021875234) * inp_6_2_2; - result7 += M4(-0.042965584, 0.0077339527, 0.010240218, -0.009829237, -0.004336499, -0.0070756357, 0.06053873, 0.008218941, -0.006638484, 0.024683416, 0.079095185, 0.007915677, 0.037541345, -0.0072952313, -0.11053449, -0.066507846) * inp_6_0_0; - result7 += M4(-0.020441808, 0.015776703, -0.03670011, 0.02767438, -0.007619493, -0.041587055, -0.050528146, 0.00031854125, -0.004204882, 0.008949595, 0.05449287, 0.015107327, -0.023165368, 0.12113189, 0.1217336, -0.11022152) * inp_6_1_0; - result7 += M4(0.006903979, -0.058249768, -0.07961677, 0.014283403, 0.021838369, -0.051354934, 0.10687252, -0.054586556, -0.0015898306, 0.057039164, 0.08313044, 0.027827336, -0.0088559985, 0.014140085, -0.25343445, -0.0007965816) * inp_6_2_0; - result7 += M4(0.029730523, -0.004245952, 0.27080232, 0.113337405, 0.016123628, 0.06183736, 0.19715708, -0.007928447, -0.0077243843, 0.028549068, 0.2314083, 0.04673875, -0.03541045, -0.036672566, -0.21406381, 0.022873437) * inp_6_0_1; - result7 += M4(0.040376443, 0.09086517, -0.1143702, 0.051079925, -0.061703425, 0.09192274, -0.023914505, 0.07147569, -0.010601071, -0.046479892, 0.11854484, 0.064643376, -0.0011615893, -0.1977159, -0.40206203, -0.0032259594) * inp_6_1_1; - result7 += M4(-0.0020691492, 0.08625649, 0.042906743, -0.029176876, 0.0044975607, -0.0018406528, -0.24117361, 0.002184071, 0.012386058, -0.038286246, 0.0030643537, 0.04763413, 0.016815325, 0.10018919, 0.20440707, -0.018861603) * inp_6_2_1; - result7 += M4(0.013892828, 0.025486955, -0.14787237, -0.051730614, -0.0272011, -0.011616849, -0.106340595, -0.034732986, 0.010061462, -0.007324239, 0.10990213, -0.020861391, 0.028218241, 0.033497807, -0.095000036, 0.05332062) * inp_6_0_2; - result7 += M4(-0.04844308, -0.05204222, -0.14368385, -0.1268235, -0.037518863, -0.006597577, 0.018604498, -0.12871528, 0.009760314, 0.08061075, 0.10520643, 0.01817459, -0.012488866, -0.093908034, -0.24601606, -0.13094212) * inp_6_1_2; - result7 += M4(0.014756269, -0.00037996046, -0.085350834, -0.053555112, -0.003157086, 0.0019298987, -0.19322015, 0.002461889, -0.008298189, 0.03650995, 0.17094085, -0.015869718, 0.01152502, -0.0012422963, -0.041635633, -0.045072813) * inp_6_2_2; - const V4 inp_7_0_0 = inp[7][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_7_1_0 = inp[7][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_7_2_0 = inp[7][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_7_0_1 = inp[7][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_7_1_1 = inp[7][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_7_2_1 = inp[7][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_7_0_2 = inp[7][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_7_1_2 = inp[7][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_7_2_2 = inp[7][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.05352064, 0.025496779, -0.017876659, -0.42976972, 0.066583686, 0.041160833, 0.17511591, -0.054710384, -0.01562282, 0.043780487, 0.14420922, 0.012379767, -0.055675343, 0.013070537, 0.033987418, 0.024991402) * inp_7_0_0; - result0 += M4(-0.0603156, -0.028838815, -0.070399776, -0.29125932, -0.058869928, -0.028688658, -0.22258945, -0.840663, 0.20416957, -0.12369758, -0.19005197, 0.19646135, 0.21611254, 0.011750982, -0.1968486, 0.11637494) * inp_7_1_0; - result0 += M4(-0.10958232, -0.022469545, -0.2366321, -0.46511912, -0.053447425, 0.049674112, 0.080322646, -0.08139212, -0.026674794, -0.0245773, 0.03232221, -0.10161637, -0.13228402, -0.10707125, 0.121080756, -0.29508144) * inp_7_2_0; - result0 += M4(-0.263152, -0.023056252, -0.14748456, -0.22655813, 0.07404459, 0.002215931, -0.10981685, -0.3217715, 0.04359434, 0.061557658, 0.21514663, 0.31844923, -0.08020626, 0.016273815, -0.014054487, -0.095006205) * inp_7_0_1; - result0 += M4(-0.27370754, -0.064557485, -0.24022336, -0.5501537, -0.50522417, -0.113560304, -0.53683805, -0.7414289, -0.103985794, 0.00456689, 0.10707955, -0.0073918165, 0.04373851, -0.049141727, 0.15107526, -0.32241797) * inp_7_1_1; - result0 += M4(-0.033512775, -0.12666352, -0.25632238, -0.47094455, -0.0007524204, -0.05390965, -0.021249969, -0.024718473, -0.06448195, -0.081579715, -0.1301759, 0.19133452, 0.03329938, -0.2883489, 0.011104891, -0.34425822) * inp_7_2_1; - result0 += M4(0.011160406, 0.007289276, -0.10887194, -0.1766931, 0.12943017, 0.039642368, -0.43112862, 0.03630105, 0.14682241, 0.04574267, -0.007702303, -0.04117092, 0.053969603, 0.025953176, 0.02387552, -0.025542093) * inp_7_0_2; - result0 += M4(-0.087298244, -0.033604648, -0.18191323, -0.482421, -0.66515493, -0.35186985, -0.087617, -0.65385556, -0.11503318, -0.022878703, 0.08766349, -0.1840257, 0.035827212, -0.013278332, 0.029960133, 0.23340048) * inp_7_1_2; - result0 += M4(-0.03790432, -0.058513597, 0.11540564, -0.17947063, 0.041629273, -0.19687684, 0.04545519, -0.19994208, 0.014191396, 0.057876345, 0.056938376, -0.07840069, 0.016156798, -0.06607331, -0.080623806, 0.102826975) * inp_7_2_2; - result1 += M4(-0.031019744, 0.0015880689, 0.3982541, -0.055926107, -0.063364916, 0.036481302, -0.9604217, 0.118267015, 0.2998004, 0.102931485, -0.3137395, 0.14229192, 0.0012294499, 0.026801165, -0.12387836, 0.013220557) * inp_7_0_0; - result1 += M4(0.032735106, -0.07108308, 0.3193637, -0.0868141, -0.0049568247, -0.21005511, -0.3344786, -0.06225742, 0.07011126, 0.012888776, -0.028269568, -0.16825315, -0.0037805843, -0.0117930295, -0.14304803, 0.005156603) * inp_7_1_0; - result1 += M4(-0.0041283392, -0.23295562, 0.22303738, -0.009535313, -0.003645582, 0.029180318, -0.7859208, -0.0002167481, -0.0062053036, -0.08049087, 0.08121355, -0.009638903, 0.00012486262, 0.023948977, -0.22558703, -0.0080334935) * inp_7_2_0; - result1 += M4(0.008114237, -0.026774116, 0.026790198, -0.19202733, -0.03399292, -0.005558487, 0.16434899, -0.18542607, -0.04149087, 0.0033234267, 0.19950414, -0.25578845, -0.0021667595, 0.0010222604, -0.4124703, -0.019996772) * inp_7_0_1; - result1 += M4(0.0136516, 0.050179582, 0.0033668596, -0.006224678, 0.004202224, -0.08623419, -0.6031388, 0.05693322, 0.005108169, 0.007925641, 0.1276241, 0.16178028, 0.00043880002, -0.0028783241, 0.16294768, 0.028337363) * inp_7_1_1; - result1 += M4(0.007789389, 0.032329004, -0.1244592, 0.013362819, 0.0025501167, 0.060556635, -0.37969822, 0.02981938, -0.010969478, 0.022568887, -0.081718236, 0.011489337, 0.0024795597, -0.0012465417, 0.23804568, 1.5933947e-05) * inp_7_2_1; - result1 += M4(0.004296411, 0.007232345, -0.021845797, 0.052090853, 0.0015396378, 0.009407923, 0.022409683, -0.08061498, 0.0063610724, 0.0048975623, 0.10312374, 0.16595143, 0.00085923297, -0.00020858769, 0.09079109, -0.03261983) * inp_7_0_2; - result1 += M4(0.00060058146, 0.0072148256, 0.029682608, 0.017427104, 0.007552103, -0.007452546, -0.20951886, -0.054767128, 0.007771162, -0.004662414, 0.20472595, -0.036158442, -0.0056494614, 0.005701786, -0.0403443, -0.026197836) * inp_7_1_2; - result1 += M4(-0.0003335394, -0.0176437, -0.047332633, -0.009358473, -0.0067158556, 0.0029720631, 0.17593661, 0.0060364995, 0.0010348716, -0.013258078, 0.040727686, -0.00736392, 0.000231762, -0.008358839, -0.029996818, 0.0017344136) * inp_7_2_2; - result2 += M4(0.012425376, -0.007886613, -0.008472159, 0.0067465873, 0.050158687, -0.007885837, -0.001783529, -0.008455926, 0.07323046, 0.077554286, -0.054565772, 0.025668986, -0.084360264, -0.052947234, 0.0151790995, 0.014624492) * inp_7_0_0; - result2 += M4(-0.05909692, -0.06964174, 0.019255456, -0.002457632, 0.013834268, 0.04758292, 0.009225598, -0.022021035, -0.020474045, -0.11654064, 0.082111485, -0.038805973, 0.01858106, 0.059538167, -0.020021942, 0.031059323) * inp_7_1_0; - result2 += M4(-0.057700485, 0.020962114, 0.0055151945, 0.016991466, 0.039485972, -0.011129974, 0.0012585961, 0.0019865336, -0.042698756, 0.038164586, 0.02402352, 0.0057254517, -0.009401162, -0.0022509643, 0.0072267954, -0.0097338) * inp_7_2_0; - result2 += M4(-0.09610399, -0.006310243, 0.0128417425, -0.03337009, -0.29759926, -0.0061121252, -0.020841163, -0.017351437, 0.014906329, -0.06714002, -0.09505099, 0.14551577, 0.13037375, -0.04606906, -0.021672621, -0.016812699) * inp_7_0_1; - result2 += M4(-0.28701317, -0.06551135, -0.06522876, -0.07656495, -0.24934022, -0.21739312, -0.068082616, -0.06547192, 0.012312327, 0.22100064, -0.039518617, 0.0537443, -0.08587732, -0.00310289, -0.003257585, 0.041846357) * inp_7_1_1; - result2 += M4(-0.028986778, -0.10525487, -0.010622254, -0.0072573503, 0.07267098, 0.06243554, 0.019382566, -0.017958779, -0.0025543012, -0.038693026, -0.023019899, 0.058700107, 0.028916528, 0.01368642, -0.006050085, 0.005170775) * inp_7_2_1; - result2 += M4(-0.024286231, -0.010604798, -0.0006612612, -0.001073967, 0.05997, -0.02278616, -0.024554119, 0.02775034, 0.014113713, 0.06697394, -0.009622575, -0.029041978, 0.016305894, 0.02069288, 0.00533168, 0.013637841) * inp_7_0_2; - result2 += M4(0.021465113, 0.005298628, 0.030760545, 0.01103767, 0.054187093, -0.11684337, -0.0497402, -0.034474086, 0.016191337, -0.056247253, -0.012751851, 0.113253824, 8.453507e-05, -0.03424535, -0.0031855141, 0.001117858) * inp_7_1_2; - result2 += M4(-0.024927283, -0.01552619, 0.0029329406, -0.0016633364, -0.011472197, 0.0016247611, -0.0016536061, 0.008560975, 0.017947054, 0.014892829, -0.047214277, -0.0045239506, 0.002894757, -0.0096526155, 0.0068600476, 0.0035768691) * inp_7_2_2; - result3 += M4(-0.05226632, 0.004753544, 0.0056653735, -0.002933385, -0.0003638585, 0.005304152, -0.02860725, -0.0003290576, 0.10541966, 0.044569645, -0.068158776, -0.036488608, -0.15037823, 0.05357717, -0.0057400474, 0.0028405502) * inp_7_0_0; - result3 += M4(-0.045468617, 0.03605731, -0.0060326643, -0.0018553566, 0.0752481, 0.09511909, -0.007555127, 0.0040374575, 0.15613526, 0.06009262, -0.07879747, -0.015054811, 0.07426248, -0.05345083, 0.019965159, -0.009893624) * inp_7_1_0; - result3 += M4(-0.026725372, -0.103069656, 0.011473728, -0.003741998, -0.027623892, -0.012602302, -0.0005502562, -0.0029403232, 0.048817378, -0.03085156, -0.014697967, -0.04409154, 0.040170956, 0.01911314, 0.00064923725, 0.0050461753) * inp_7_2_0; - result3 += M4(-0.034966167, -0.06273833, 0.04052326, 0.003546484, -0.0409945, -0.01869833, -0.07286352, -0.0050344756, -0.07613724, 0.029909967, -0.04909556, -0.005582302, 0.10590628, -0.055417847, -0.038754255, 8.646479e-05) * inp_7_0_1; - result3 += M4(0.057020567, -0.15512753, -0.04701987, 0.017954407, -0.4419878, -0.20859207, -0.1678562, 0.005901406, -0.11201452, -0.06056351, 0.15053517, 0.24579144, -0.038539838, 0.10808083, 0.049305584, -0.0010985589) * inp_7_1_1; - result3 += M4(-0.103481084, -0.059209935, 0.024729736, 0.028136596, -0.05595041, 0.01858684, -0.0044316384, 0.0078050313, -0.058716822, -0.020148305, 0.02079377, 0.18064222, -0.01785989, -0.023207165, 0.018577969, -0.018722013) * inp_7_2_1; - result3 += M4(0.061379008, -0.015743127, -0.008345395, 7.252225e-05, 0.1546223, 0.0701028, -0.014490869, 0.00748663, 0.063124076, 0.015358469, -0.0021968398, 0.0046773264, -0.022194352, 0.01263938, 0.012935363, 0.0036611902) * inp_7_0_2; - result3 += M4(-0.031800956, 0.015225801, 0.016785186, -0.018736724, -0.03786575, -0.2814111, -0.10464382, 0.045793522, 0.074106336, 0.05293375, 0.013694363, 0.24186136, -0.00979653, -0.05569455, 0.014075014, -0.046199393) * inp_7_1_2; - result3 += M4(0.04368313, -0.06405828, 0.006604915, -1.8004456, 0.03870844, 1.0123957e-06, -0.038523767, -1.8639237, 0.035578962, 0.0052425824, 0.021722225, -0.19697289, 0.026083052, -0.0013074856, -0.0008636706, -0.9343933) * inp_7_2_2; - result4 += M4(0.0061769327, -0.030401701, -0.11921135, 0.0012015718, -0.004247035, 0.0814377, -0.010848388, -0.023839122, -0.067225285, -0.00096268125, -0.08144617, -0.13277291, 0.00010657943, -0.005854981, 0.08069741, 0.006791189) * inp_7_0_0; - result4 += M4(0.0025433549, -0.043166626, 0.06596361, -0.0015600639, -0.009092701, -0.013435341, 0.05798339, 0.045628175, -0.08930102, 0.074737474, 0.11054447, 0.20060408, -0.0031097664, 0.049641505, -0.028213963, 0.025730642) * inp_7_1_0; - result4 += M4(-0.0020889768, -0.0005719207, 0.02944926, -0.08113349, 0.005545398, 0.010759929, -0.010274816, -0.0049982597, -0.0445063, 0.1325719, 0.05578757, -0.004537029, 0.00452831, -0.040755667, 0.07084429, 0.0030378634) * inp_7_2_0; - result4 += M4(0.016706802, -0.023497501, 0.03106927, -0.07236295, -0.03929393, 0.02115254, -0.2269207, 0.05697231, -0.110963345, 0.011680081, 0.1172912, 0.34830728, -0.016372934, -0.015735703, -0.15323971, -0.06496182) * inp_7_0_1; - result4 += M4(-0.037520874, 0.02882173, -0.21818265, -0.15458146, -0.05774005, 0.04617152, -0.33613983, -0.11126765, 0.08795717, 0.011891092, 0.023098174, -0.24955657, -0.00019727291, 0.063968875, 0.06161002, 0.09081463) * inp_7_1_1; - result4 += M4(-0.006145425, -0.04484679, -0.23209822, 0.03893353, -0.018760828, 0.02268849, 0.11749825, -0.008635634, 0.0038500153, -0.13355535, -0.12914866, 0.0071882135, 0.007860745, 0.012512622, 0.030386984, -0.031087834) * inp_7_2_1; - result4 += M4(-0.009360264, -0.011174697, -0.091026984, 0.035137787, 0.02388749, -0.30369893, -0.020562654, 0.009711846, -0.018242428, 0.002327931, 0.17044173, -0.016146963, 0.0100063365, 0.061345592, 0.08208964, -0.028663639) * inp_7_0_2; - result4 += M4(0.017400121, -0.05774096, -0.05525775, 0.0007034017, -0.029358411, -0.46335852, -0.23269293, 0.028715033, 0.00117103, 0.041296083, -0.13811837, 0.007900045, -0.01844481, -0.06768664, -0.033415593, -0.011509413) * inp_7_1_2; - result4 += M4(0.0070424783, -0.0048917797, 0.016812801, -0.078436755, 0.015208116, 0.05445388, -0.12154233, -0.00801631, -0.05455406, 0.06005538, 0.061371353, -0.03962247, 0.0031631305, 0.017275913, -0.02545303, 0.021760812) * inp_7_2_2; - result5 += M4(-0.23289678, -0.035033356, -0.06364665, -0.1196806, -0.09369248, -0.00703217, 0.07554488, -0.13666913, -0.18377982, -0.07656051, 0.25209007, -0.062217586, 0.19554839, 0.037924796, 0.020915683, 0.05819048) * inp_7_0_0; - result5 += M4(-0.2212145, -0.02357794, -0.035324357, -0.16702062, -0.08647951, 0.036781978, -0.22914602, -0.063273385, 0.13856044, 0.051348757, -0.062849596, -0.06292731, -0.117736615, -0.0013490042, 0.08450001, 0.027902564) * inp_7_1_0; - result5 += M4(0.016696801, -0.026166635, -0.11594664, 0.041560873, 0.058048833, -0.002386438, -0.0019731747, 0.028062105, 0.19245487, 0.008410625, -0.040312212, 0.014394678, -0.053450204, 0.020591753, 0.022523206, -0.08405382) * inp_7_2_0; - result5 += M4(-0.35987878, 0.029412296, -0.15540446, -0.103618056, -0.738991, -0.12609427, 0.09582196, -0.49105817, 0.077286944, 0.18663901, -0.0059448285, -0.04050661, -0.058915913, -0.003760278, 0.053683292, -0.08824418) * inp_7_0_1; - result5 += M4(-0.76397014, -0.18430872, -0.31231982, -0.19020091, -0.66921103, -0.4108529, -0.39752144, -0.12501271, 0.069163665, -0.017098418, 0.05041597, -0.022517912, -0.09854905, 0.025245756, 0.13630551, 0.046874993) * inp_7_1_1; - result5 += M4(-0.72415245, 0.017613223, -0.1707271, 0.066994466, 0.10998265, 0.08632077, 0.06143453, 0.09399342, -0.070226386, -0.05401474, -0.042211916, 0.17819966, 0.14538178, 0.010475057, -0.021859512, -0.08041211) * inp_7_2_1; - result5 += M4(-0.1967843, 0.023538217, -0.00030865028, -0.047603182, -0.14025857, 0.009211239, 0.08050383, -0.06565929, 0.17029011, -0.036036443, 0.0037914347, 0.098522596, 0.0015055476, -0.029952371, 0.02538209, 0.038706858) * inp_7_0_2; - result5 += M4(-0.05105246, -0.0074749226, -0.106191084, -0.00314043, -0.29975292, -0.08319968, -0.009589903, -0.112687364, -0.021954458, -0.022352124, -0.075997695, -0.08077167, -0.251991, -0.00854306, -0.016145559, 0.0020615666) * inp_7_1_2; - result5 += M4(-0.2386809, -0.028441254, -0.117049344, -0.07033173, -0.103512496, -0.013883006, 0.04719195, -0.04000895, -0.18723257, 0.027815504, -0.0010531788, 0.05340064, 0.31589448, -0.022415001, -0.020806218, -0.015620994) * inp_7_2_2; - result6 += M4(-0.18982378, -0.0042961705, 0.05191979, 0.041195814, -0.6908791, 0.021954171, 0.029734269, -0.060804404, 0.056036007, 0.11778974, -0.04343348, -0.1961967, -0.20997678, 0.09190082, -0.015736345, 0.041433968) * inp_7_0_0; - result6 += M4(-0.24441227, 0.031170337, 0.044161852, -0.20150767, 0.22152342, 0.038667183, -0.5172872, -0.14052124, 0.13932905, 0.010128754, -0.13162607, 0.0041877525, 0.176037, -0.07828772, -0.008233357, 0.061128784) * inp_7_1_0; - result6 += M4(-0.0042358176, -0.019372733, 0.028941613, -0.26208058, -0.08988144, 0.06710253, -0.18090768, -0.049069516, 0.0037718914, 0.0066445214, -0.04823457, -0.0296632, -0.07106701, -0.013518763, 0.029398292, -0.017920503) * inp_7_2_0; - result6 += M4(-0.3178206, -0.07757242, -0.021891061, -0.08206828, -0.13208757, 0.021714196, -0.01859382, -0.0128954435, 0.21074452, -0.06414831, -0.048334725, 0.0132313045, 0.10082049, -0.022419797, -0.021602245, -0.03670405) * inp_7_0_1; - result6 += M4(-0.35633278, -0.12651435, -0.023523487, -0.13910043, -0.16104059, -0.368285, -0.049619555, -0.21264726, -0.21929352, 0.07338095, 0.22390582, 0.055195622, -0.05244217, 0.06818493, 0.023903633, -0.033312846) * inp_7_1_1; - result6 += M4(-0.0019770225, -0.017548773, 0.026513377, -0.074982, 0.010031197, 0.09066287, 0.07497383, -0.07269284, 0.13004415, 0.020835178, -0.074842595, 0.020670936, 0.0046553467, -0.014552916, 0.010988906, -0.016415868) * inp_7_2_1; - result6 += M4(-0.19315866, 0.024062954, -0.031212576, -0.010724342, -0.45765087, -0.051717155, -0.021205325, -0.065005414, 0.088548556, 0.035154648, -0.016074887, -0.031112758, -0.1430477, 0.005909628, 0.0045271, -0.0052811997) * inp_7_0_2; - result6 += M4(-0.162456, 0.0045908545, 0.013486266, 0.010140943, -0.1462838, -0.10490697, -0.024067609, -0.07152064, -0.21908168, 0.06489851, 0.004260959, -0.0568115, 0.25470036, 0.042103946, 0.011981542, 0.0148837175) * inp_7_1_2; - result6 += M4(0.07030969, -0.04093818, -0.010656058, 0.019158717, 0.100185774, 0.001252645, 0.0048584384, 0.014693651, 0.042730525, 0.012882735, 0.03310608, 0.027775433, -0.1720352, 0.020947393, -0.0007719789, 0.032501142) * inp_7_2_2; - result7 += M4(0.008489847, -0.004571824, 0.19918513, -0.0061925654, 0.021797908, 0.02254027, -0.010575891, -0.007183875, 0.06630969, -0.018089699, -0.10469991, 0.047701426, -0.020889213, 0.081901446, 0.22391416, -0.085323595) * inp_7_0_0; - result7 += M4(0.01564121, 0.036040768, 0.1063838, -0.02414961, -0.009747731, -0.021039102, -0.17341341, -0.06840737, 0.037249528, -0.009474975, -0.0558853, 0.014348766, -0.009640962, -0.014656048, -0.11760064, 0.036743667) * inp_7_1_0; - result7 += M4(0.0009968507, 0.0006195375, 0.026944831, -0.0037750814, -0.00023158567, 0.04007738, 0.060480077, -0.022176595, 0.008073931, -0.0008379712, -0.046839975, 0.038194846, 0.0026338315, -0.03355266, -0.20952258, 0.015611825) * inp_7_2_0; - result7 += M4(-0.05525819, -0.005118117, 0.002277954, 0.034858245, -0.13240924, 0.054761246, -0.5507019, -0.06448863, -0.12931302, 0.06774386, -0.18393432, -0.1221775, -0.018034246, -0.0949525, -0.57236135, -0.0339087) * inp_7_0_1; - result7 += M4(-0.026370615, -0.05886861, 0.22845557, 0.019411797, 0.030319516, -0.36086288, -0.37035143, -0.15355328, -0.046847735, 0.051204402, 0.14661282, 0.08646364, -0.009769926, 0.068488315, 0.18660435, 0.051128592) * inp_7_1_1; - result7 += M4(-0.008572503, 0.022621369, -0.12895532, 0.008508917, 0.0019112423, -0.21257272, -0.6760336, -0.079635665, -0.012069421, -0.10122266, 0.044606727, 0.036520045, -0.006052825, 0.0866851, 0.3320228, 0.039579105) * inp_7_2_1; - result7 += M4(0.001088456, -0.0050538187, 0.025463467, -0.0010248718, -0.1335885, 0.0047203717, -0.13373981, -0.03578565, 0.1131316, -0.08939906, 0.0070404764, -0.010147748, 0.008819048, 0.0023439964, 0.07724147, 0.010405322) * inp_7_0_2; - result7 += M4(0.012494671, 0.07004667, 0.10949977, -0.050321754, 0.0026148693, -0.17604466, -0.098940045, 0.07924563, -0.023134008, 0.0966113, 0.16332023, -0.0022508018, 0.0093028685, -0.0124924285, -0.056747362, -0.009782482) * inp_7_1_2; - result7 += M4(-0.0062390068, -0.003621609, -0.03868105, -0.035783745, 0.0034250775, 0.06723411, 0.19775143, -0.0061105173, -0.006661267, 0.018978328, -0.03424416, 0.0016211927, 0.0003651056, -0.008361528, -0.13613261, 0.016372925) * inp_7_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(4, 2); - imageStore(out_image, output_base + ivec2(0, 0), max(result0, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 0), max(result1, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 0), max(result2, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 0), max(result3, V4(0.0))); - imageStore(out_image, output_base + ivec2(0, 1), max(result4, V4(0.0))); - imageStore(out_image, output_base + ivec2(1, 1), max(result5, V4(0.0))); - imageStore(out_image, output_base + ivec2(2, 1), max(result6, V4(0.0))); - imageStore(out_image, output_base + ivec2(3, 1), max(result7, V4(0.0))); -} - -//!DESC ArtCNN C4F32 (Conv2D-5) -//!COMPUTE 48 32 12 16 -//!HOOK LUMA -//!BIND conv2d_4 -//!SAVE conv2d_5 -//!WIDTH LUMA.w 4.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared V4 inp[8][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(4, 2); - inp[0][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(0, 0), 0)); - inp[1][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(1, 0), 0)); - inp[2][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(2, 0), 0)); - inp[3][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(3, 0), 0)); - inp[4][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(0, 1), 0)); - inp[5][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(1, 1), 0)); - inp[6][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(2, 1), 0)); - inp[7][y][x] = V4(conv2d_4_mul * texelFetch(conv2d_4_raw, input_base + ivec2(3, 1), 0)); - } - } - - barrier(); - V4 result0 = V4(5.649633e-06, 0.0006727532, -6.588314e-05, -0.029685518); - V4 result1 = V4(0.00082530384, -0.00026431106, 0.001350256, -0.0007166308); - V4 result2 = V4(0.0014627855, -0.011221823, -0.0016920598, -0.00013782016); - V4 result3 = V4(0.0009777114, -0.021467287, 0.00032818047, -0.00039368647); - V4 result4 = V4(0.00016073485, 6.783708e-06, -0.0005276576, -0.00039170176); - V4 result5 = V4(-0.00025244785, 0.000108880384, -5.6918954e-05, 0.00017526979); - V4 result6 = V4(0.00046683406, -4.8158847e-05, 0.030069074, 0.011954599); - V4 result7 = V4(0.00062386674, -0.028939229, -0.0032596758, 9.520764e-05); - const V4 inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.0034604296, 0.046359878, 0.04608654, -0.056622017, -0.046207663, -0.14516045, 0.013872807, -0.10388713, 0.003743601, 0.049990408, -0.11438255, 0.062399853, -0.022633621, -0.034783263, -0.06679882, -0.059906017) * inp_0_0_0; - result0 += M4(-0.080616586, 0.05534087, -0.02965255, 0.034891143, -0.10364741, 0.03634926, 0.09605793, -0.02806089, 0.034213975, 0.056342516, -0.10168407, 0.05687626, -0.08023972, 0.181959, -0.17893119, 0.15378445) * inp_0_1_0; - result0 += M4(-0.009220239, -0.05127675, 0.07722563, 0.047007363, 0.0030461967, 0.012344051, -0.019684128, -0.044248182, 0.03712375, 0.14988872, 0.018521596, -0.06520305, -0.047863696, 0.07108234, -0.0014826752, 0.07356121) * inp_0_2_0; - result0 += M4(-0.060842972, -0.013430676, 0.16560476, 0.0053428854, -0.107849166, 0.02106321, -0.0129493065, -0.15222561, 0.033005275, -0.114956714, 0.09081802, 0.035153456, 0.031328045, 0.03933653, 0.06395653, 0.048514616) * inp_0_0_1; - result0 += M4(0.047304064, -0.07570065, 0.026333803, 0.059438776, -0.16640303, 0.05952861, -0.18074949, 0.2968343, 0.008506116, 0.06380072, 0.024479834, -0.19506985, -0.17726316, 0.04590411, 0.11536085, -0.11121072) * inp_0_1_1; - result0 += M4(0.033091966, 0.092754595, -0.010387883, 0.03960938, -0.03831898, 0.03929795, -0.023243057, 0.055324085, 0.0009955837, -0.029435338, -0.065309055, -0.011093929, -0.043868802, 0.04456156, -0.00080055464, 0.071773045) * inp_0_2_1; - result0 += M4(0.08062181, 0.06288208, -0.06573706, 0.007982499, 0.148237, 0.116023935, -0.095747694, -0.034983374, 0.04339274, -0.11553249, -0.094952874, 0.08007751, -0.0071002394, 0.05635857, 0.010612378, 0.0016813296) * inp_0_0_2; - result0 += M4(-0.008505843, 0.04086676, 0.089940876, -0.031808976, -0.08673314, 0.07507258, -0.036029972, -0.06111206, 0.047638014, -0.1279222, 0.059526585, -0.0021941112, 0.072870865, -0.18167533, 0.0214262, -0.081372015) * inp_0_1_2; - result0 += M4(0.063776694, -0.026500335, 0.0046752915, 0.046670705, -0.01975549, 0.07029256, -0.03656071, 0.004485956, 0.117496915, -0.10584317, 0.27419797, -0.091179654, 0.07276066, -0.1118816, 0.066380635, 0.07300706) * inp_0_2_2; - result1 += M4(-0.08853989, 0.029993253, 0.061427083, 0.10241136, -0.14602952, -0.01950073, 0.10768248, -0.04612119, 0.14837895, 0.023217674, -0.04895803, 0.046966847, 0.12444529, 0.009798832, 0.020996016, 0.021884233) * inp_0_0_0; - result1 += M4(0.12844722, -0.04580959, -0.036788434, -0.033584088, -0.13661535, -0.045847468, -0.015642757, -0.067164905, 0.13100539, 0.03043028, -0.008809947, 0.05210644, 0.28685042, 0.081278145, -0.03620796, 0.056618232) * inp_0_1_0; - result1 += M4(-0.10399191, -0.009850353, -0.115178585, 0.050160512, -0.026110858, -0.009067307, 0.020186948, -0.09405578, 0.3095613, 0.002289235, 0.04810237, -0.0058800406, -0.035615288, -0.022769798, -0.06696305, 0.055394985) * inp_0_2_0; - result1 += M4(0.02209097, 0.047398537, -0.05092115, -0.002255745, -0.019574504, -0.15042152, -0.0655897, -0.035502978, 0.03925334, 0.02063245, 0.045473445, -0.060866516, -0.029626865, 0.048684344, 0.016189262, 0.039405476) * inp_0_0_1; - result1 += M4(0.0070796115, 0.14980806, 0.14960426, 0.018482508, -0.1547638, -0.15638639, 0.328809, -0.00323772, -0.03833926, -0.050700262, 0.042395175, 0.105822094, -0.080845386, 0.09024774, 0.024708362, -0.01564107) * inp_0_1_1; - result1 += M4(0.22975679, -0.07126146, -0.047278505, -0.009715538, -0.08919471, 0.008067857, 0.08196639, 0.05187098, 0.009787045, 0.14960378, -0.1723975, 0.058202613, -0.008499098, 0.02678337, 0.08316201, 0.17680408) * inp_0_2_1; - result1 += M4(0.04064507, 0.065673545, -0.001870999, -0.07063028, -0.16675913, 0.097352125, 0.022133848, -0.080686525, -0.05133467, -0.065383635, 0.023838617, 0.24223876, -0.043236677, -0.024484266, 0.041242514, -0.055673577) * inp_0_0_2; - result1 += M4(-0.082769446, 0.0026211522, -0.026593378, 0.0115648005, -0.07378918, 0.08343126, 0.052103817, -0.016335383, 0.10606267, 0.05948298, -0.026397215, 0.0003102588, -0.23236808, -0.08637152, 0.110302255, 0.008154632) * inp_0_1_2; - result1 += M4(-0.004805181, 0.07261701, 0.19285999, -0.07804535, 0.047466315, 0.074974254, 0.0030864563, -0.036331, 0.14255658, 0.009438491, -0.26888105, 0.035260852, 0.03511677, 0.03805377, 0.0482701, -0.07819417) * inp_0_2_2; - result2 += M4(-0.037514895, 0.13307613, -0.15555884, 0.11374846, -0.03102794, 0.04863651, 0.014877046, -0.022843545, -0.08671126, -0.16719382, 0.06722302, -0.08032712, 0.11250361, 0.041836437, -0.04302602, 0.22203118) * inp_0_0_0; - result2 += M4(0.16266906, 0.0652256, 0.09008826, 0.12905549, -0.050330743, -0.0039677257, 0.032177076, -0.089897744, -0.073442586, -0.06632707, 0.011488907, -0.050489604, -0.10700614, 0.16314684, -0.13538149, 0.3535238) * inp_0_1_0; - result2 += M4(0.091081716, -0.07684506, 0.050469927, 0.11815173, 0.04682995, 0.066177756, 0.000757632, -0.11639864, -0.11865262, -0.0069143996, 0.040499493, -0.096087426, 0.1476954, -0.0338288, -0.038219586, 0.21603872) * inp_0_2_0; - result2 += M4(0.014842829, 0.058694363, -0.026229782, 0.013752128, 0.077484265, 0.08856224, 0.06862102, -0.34694222, -0.08571522, -0.15038104, -0.031001668, -0.09086565, 0.065585464, 0.07672071, -0.06765769, 0.045240924) * inp_0_0_1; - result2 += M4(0.018740604, 0.1417599, -0.18008865, 0.4880559, -0.14652954, -0.18183929, -0.06923827, -0.068561025, -0.10161812, -0.37797517, 0.036212508, -0.72146076, -0.021771938, 0.107960775, -0.038881894, 0.3470531) * inp_0_1_1; - result2 += M4(0.0056704413, 0.0057854336, -0.03544198, 0.022966914, -0.07809746, -0.06305099, 0.0017007316, -0.10661038, -0.03174759, 0.0002836016, 0.05189047, -0.10452447, -0.047655176, -0.0743026, 0.00062795886, 0.01671406) * inp_0_2_1; - result2 += M4(-0.023666427, 0.05700439, -0.026134238, 0.13338687, -0.0702518, 0.074614905, -0.009049774, -0.10704095, 0.05418411, -0.11009473, 0.046395864, -0.1441461, -0.036314357, 0.05481348, 0.0068577323, 0.04297471) * inp_0_0_2; - result2 += M4(0.08562004, 0.053359345, 0.04522385, 0.17730384, -0.034875143, -0.0021474871, -0.0583912, -0.121497266, -0.01545037, 0.060134884, 0.02559615, -0.08477596, 0.36008564, -0.012338267, 0.24932086, 0.3682217) * inp_0_1_2; - result2 += M4(0.042751182, -0.022283932, 0.031839147, 0.18807454, -0.000994266, 0.06291217, -0.00019743145, -0.09904224, 0.083863236, 0.0056221024, 0.048429217, -0.025086297, -0.0011440822, 0.038589183, 0.076988876, 0.19478121) * inp_0_2_2; - result3 += M4(0.08766954, 0.06831764, -0.012528938, 0.05895398, 0.041953146, -0.027996821, 0.053623594, -0.09062052, -0.13021937, -0.031868882, 0.08695754, -0.017222721, 0.013070132, 0.05593187, -0.09226305, 0.004974662) * inp_0_0_0; - result3 += M4(0.07075748, 0.0011783495, -0.016677897, 0.047718946, 0.021496007, -0.0025332512, 0.08542731, -0.065882586, -0.15655078, -0.019826738, -0.005712146, 0.0068261228, 0.103864536, 0.015821477, -0.13530174, 0.1157932) * inp_0_1_0; - result3 += M4(-0.012552848, -0.0011612177, 0.08928263, -0.02129051, 0.13616723, 0.012660772, -0.01665146, 0.024481574, -0.025328152, -0.023913166, -0.018899174, 0.04124303, -0.038724523, -0.011146892, -0.071555845, -0.03582969) * inp_0_2_0; - result3 += M4(0.08896971, -0.03892573, 0.057871565, -0.093459256, 0.18992698, 0.027197393, 0.08762989, -0.069053054, 0.0563312, -0.053577468, -0.09238368, -0.038338635, -0.10349082, 0.031073367, 0.07323499, -0.01635451) * inp_0_0_1; - result3 += M4(-0.059170213, -0.0040947986, 0.05801903, 0.17273365, 0.34611687, 0.07389358, -0.08374566, 0.22281833, -0.090706795, -0.023434594, 0.14440814, -0.06427662, -0.025128212, -0.03735657, 0.03547581, 0.018539941) * inp_0_1_1; - result3 += M4(0.084117614, -0.008905891, -0.17623527, 0.10101096, -0.019019023, 0.019670343, 0.051679082, -0.023446215, 0.07113499, 0.025242154, 0.0071583632, -0.14636646, -0.092724875, -0.0018694047, 0.004236227, 0.0029981842) * inp_0_2_1; - result3 += M4(-0.06873267, 0.061046418, -0.10860676, 0.09367622, 0.000760558, -0.058479052, -0.027285123, 0.13937435, -0.12718248, -0.022235518, 0.109278135, -0.07762178, -0.070579015, 0.01912146, 0.03200816, -0.08212269) * inp_0_0_2; - result3 += M4(-0.020358711, -0.02201965, -0.025757574, -0.086247444, -0.033583634, -0.043647237, -0.011471106, -0.020079277, -0.13191189, 0.1099827, 0.025344597, -0.10803841, 0.050518144, -0.0024946346, 0.16184743, -0.30262017) * inp_0_1_2; - result3 += M4(-0.09679929, -0.075668626, 0.101206176, -0.06292818, 0.065329395, 0.033891015, -0.0047297687, 0.015178267, 0.04901879, 0.046120256, 0.047192805, -0.09185519, -0.110924765, -0.08541136, 0.047636896, -0.08899251) * inp_0_2_2; - result4 += M4(0.052822623, -0.014083926, -0.022294737, 0.01780114, -0.08671286, -0.03542587, 0.2070736, -0.038856637, 0.032665614, 0.08325787, -0.12430742, 0.029740963, -0.021903438, 0.18739128, -0.10488425, 0.006337199) * inp_0_0_0; - result4 += M4(-0.21603334, 0.0513794, 0.07160664, 0.074636, 0.0638251, 0.0003192646, 0.018396644, 0.009705631, 0.13665017, 0.0051823976, -0.18688531, 0.05273399, -0.17271297, -0.058101147, -0.01403609, 0.400858) * inp_0_1_0; - result4 += M4(0.0025524886, 0.010591503, 0.02861609, -0.030205365, -0.025830517, -0.06251529, 0.007699546, -0.033947468, 0.062159542, -0.01670476, -0.13160819, 0.07878656, -0.11601005, 0.123041876, 0.016962996, 0.09768567) * inp_0_2_0; - result4 += M4(0.037186883, 0.06910256, 0.083145455, 0.003149972, -0.0033130206, 0.045027558, 0.08669281, -0.07428807, -0.04333853, -0.058345865, -0.037735827, -0.07878433, -0.13347614, -0.04999992, 0.10478387, 0.08288403) * inp_0_0_1; - result4 += M4(0.43173108, -0.0063256864, -0.06693647, -0.1147052, -0.24744429, 0.076265045, -0.13564236, -0.09265516, -0.20762008, -0.061034683, -0.0028227458, 0.1657345, 0.31249097, -0.08376558, 0.057221416, 0.017414216) * inp_0_1_1; - result4 += M4(0.008566852, -0.05290139, 0.0013872285, 0.15106772, -0.026707178, 0.09477694, -0.013252345, 0.032021753, -0.097144015, -0.005105025, 0.011112111, 0.067764536, 0.015175933, -0.076159224, -0.07556933, 0.035427902) * inp_0_2_1; - result4 += M4(-0.018604867, -0.022542909, 0.006349819, -0.028002925, -0.045337893, -0.08970132, -0.021743082, 0.035971303, -0.15709972, 0.0014573192, 0.14813903, 0.1659992, 0.00066883833, -0.076659575, -0.04971664, -0.08496153) * inp_0_0_2; - result4 += M4(-0.21284017, -0.061918862, -0.0499088, 0.11888597, 0.12583528, -0.09569602, 0.03127207, -0.011605333, 0.110662244, 0.13488045, 0.12956654, -0.10820153, -0.2664735, 0.107155494, -0.10075933, -0.16946845) * inp_0_1_2; - result4 += M4(-0.030806672, 0.04348999, 0.0375604, -0.119304836, 0.026759975, 0.030174727, 0.016006479, -0.013249496, 0.22291408, 0.052240346, 0.009374497, 0.01985347, -0.028648024, -0.050707713, 0.05757869, 0.004777256) * inp_0_2_2; - result5 += M4(-0.09394742, -0.0020114959, 0.012473494, -0.004576709, 0.028792636, 0.1867929, -0.1588313, -0.027771398, 0.16472548, -0.10592947, -0.03391866, -0.046200175, 0.009281799, -0.03441146, -0.042214524, -0.082844056) * inp_0_0_0; - result5 += M4(-0.034990422, 0.052842062, -0.10930381, -0.00253232, 0.024048813, -0.14266834, -0.096335635, 0.07629296, 0.08700051, 0.0511216, -0.015954226, -0.04950173, -0.20852311, -0.055702765, -0.025112605, 0.088620394) * inp_0_1_0; - result5 += M4(0.008026741, -0.075149864, 0.07311696, -0.02103436, 0.059552617, 0.022902854, 0.004995157, 0.046885185, -0.05116645, 0.011079876, 0.052877218, 0.039314747, 0.00097246235, -0.07651566, 0.113438495, 0.074853435) * inp_0_2_0; - result5 += M4(-0.021278048, 0.017087905, 0.053191807, 0.0155587755, -0.030022178, -0.03901649, -0.033953987, -0.0040960233, -0.04484825, -0.020226749, 0.016161846, -0.03392181, 0.061634813, -0.06799762, -0.04493721, 0.06335031) * inp_0_0_1; - result5 += M4(0.010173072, -0.058274295, 0.12831095, 0.14801665, 0.016542222, 0.21792342, 0.20409054, -0.034689702, -0.13219248, 0.12790166, 0.07944686, 0.039794933, -0.017203592, -0.0071621635, -0.0092378585, 0.14034523) * inp_0_1_1; - result5 += M4(0.03313965, 0.036054473, -0.09929448, 0.047873177, -0.033644937, 0.07971446, 0.0041830963, -0.012184522, -0.0058825687, 0.04740198, 0.09067993, -0.11120585, 0.05296985, 0.030008575, -0.17246991, -0.12286725) * inp_0_2_1; - result5 += M4(-0.017580729, 0.071390174, -0.03980736, -0.06953296, 0.03122534, 0.013710687, -0.0026386725, 0.041522853, -0.022506049, 0.035616346, -0.05262587, 0.061891105, -0.022937384, 0.08983585, -0.10526769, -0.047300328) * inp_0_0_2; - result5 += M4(-0.048368756, -0.066393964, -0.17122273, -0.050558057, 0.16432367, -0.1713737, 0.06226258, 0.08463943, -0.01662237, -0.10207328, -0.047250263, -0.05312536, 0.327928, -0.06667691, -0.033484973, -0.290398) * inp_0_1_2; - result5 += M4(-0.08766798, 0.010467219, 0.06229386, 0.012880454, 0.033454344, -0.023233483, -0.015324345, -0.017793717, 0.13840027, -0.14323962, -0.05710519, -0.012645213, -0.049666047, -0.017097116, -0.022415988, -0.004198343) * inp_0_2_2; - result6 += M4(-0.0044865236, -0.08064832, -0.059066065, -0.039773013, -0.040013485, 0.073500216, 0.009909014, 0.020064956, 0.049023047, 0.15576221, 0.0016077295, 0.13392839, 0.17449084, 0.055469617, -0.025770703, -0.19746335) * inp_0_0_0; - result6 += M4(0.0421019, 0.03077191, -0.06395342, -0.031727865, -0.028625434, -0.049571775, 0.08321686, 0.013660383, -0.036410216, -0.034192637, 5.7762554e-05, 0.06287472, 0.07845672, -0.060796075, -0.19715282, 0.32123843) * inp_0_1_0; - result6 += M4(0.017570501, 0.017461475, 0.033809893, -0.08159319, 0.050167464, 0.006757208, -0.022012005, 0.00094507646, -0.07865825, -0.062691726, 0.02120332, 0.013134193, -0.0077404315, -0.010307764, 0.005679048, -0.087156184) * inp_0_2_0; - result6 += M4(-0.13852967, 0.041877396, 0.054781493, -0.12720211, 0.05354816, 0.14173035, 0.09724079, 0.06979567, -0.038605098, -0.03659603, -0.021394484, 0.009404507, 0.055929925, -0.053479422, 0.017573733, -0.10972872) * inp_0_0_1; - result6 += M4(0.0237189, 0.10936649, -0.13895872, -0.21464437, -0.12618971, 0.16071332, 0.1687479, 0.27317, -0.08956925, -0.12948772, 0.11273067, 0.013108196, 0.052038293, -0.0195363, -0.13389382, -0.22755502) * inp_0_1_1; - result6 += M4(-0.09903543, 0.109887384, 0.042012803, -0.05633655, 0.043949235, -0.0025837503, 0.0038835546, 0.09188776, 0.06428799, -0.11616592, -0.013914321, 0.08323901, 0.046426322, 0.10538389, 0.07780073, 0.030629426) * inp_0_2_1; - result6 += M4(0.066422954, 0.04146655, -0.09991522, 0.11232046, 0.05576669, -0.13443427, -0.029797072, 0.24348445, -0.05375273, -0.15397598, 0.10806383, -0.057168674, 0.025263377, 0.029306704, -0.06758324, 0.11083881) * inp_0_0_2; - result6 += M4(0.0026263332, -0.035856146, -0.0450158, -0.05261787, 0.05156732, -0.07728555, 0.05426869, 0.11363093, 0.11245666, -0.055853892, 0.038180877, -0.064015165, -0.01914824, 0.049390685, 0.027365401, -0.2923445) * inp_0_1_2; - result6 += M4(0.028998232, -0.10961401, -0.005185595, 0.11887038, -0.024986325, 0.02501903, -0.055258006, 0.01399558, -2.504139e-05, -0.06849541, 0.027588101, -0.25254217, -0.009953534, -0.13357127, 0.012158257, 0.12574211) * inp_0_2_2; - result7 += M4(0.034879167, 0.00045798288, -0.17338802, 0.021805877, 0.058209065, -0.011112338, -0.13841105, 0.013629267, -0.1348027, 0.020119704, 0.107353054, -0.03602873, 0.07760842, 0.014995411, -0.1135761, 0.14822768) * inp_0_0_0; - result7 += M4(0.035178408, -0.027421053, -0.07808762, -0.04905623, -0.027781555, 0.026446057, 0.052375246, 0.12714602, -0.09877785, -0.03997546, 0.09448941, -0.06228583, 0.11399305, -0.13376163, -0.2631905, 0.24790107) * inp_0_1_0; - result7 += M4(0.040242486, 0.016244821, -0.029406317, -0.03703265, -0.026328389, -0.0006855843, -0.06065422, 0.0215182, 0.029332234, 0.061482724, -0.022678232, 0.0020091797, 0.14812788, -0.040422585, -0.090559445, 0.056643754) * inp_0_2_0; - result7 += M4(-0.14331675, 0.031971816, 0.030157862, 0.039196715, -0.06208843, -0.01407949, 0.1120882, -0.039176114, -0.02324071, -0.019180475, 0.027940525, -0.0936125, -0.0074340547, -0.003571667, -0.04605286, -0.06587281) * inp_0_0_1; - result7 += M4(-0.2215102, -0.24575868, -0.43796587, -0.051996, -0.3650676, 0.056127638, -0.09943789, 0.00969389, -0.050232474, 0.39618614, 0.56501424, 0.041113205, -0.1441548, -0.21495715, -0.35117438, -0.15626001) * inp_0_1_1; - result7 += M4(-0.053246852, -0.05693673, 0.012933495, 0.03129781, -0.002808405, 0.06608624, -0.08381212, 0.028026547, 0.11096984, 0.02900286, 0.0017841714, -0.030065635, 0.020571142, -0.06833293, -0.028214743, 0.051134985) * inp_0_2_1; - result7 += M4(0.027004262, -0.021875277, -0.015893692, 0.057215497, 0.21277884, -0.05248872, -0.026791016, 0.13012166, -0.04259391, 0.065819435, 0.045742217, -0.051243, 0.086796865, -0.00938116, 0.04333153, 0.03238596) * inp_0_0_2; - result7 += M4(0.07781446, -0.094062604, -0.11517027, 0.051992435, 0.049155604, 0.03183495, 0.016153542, 0.008170301, -0.023438543, 0.096607015, 0.1893959, -0.073857546, 0.17926244, -0.03237222, -0.13278088, 0.10423509) * inp_0_1_2; - result7 += M4(-0.10090069, -0.06830984, -0.12110139, -0.03428654, 0.04465783, -0.0003599364, -0.029713994, -0.08015684, 0.14852206, 0.0753984, 0.12457691, -0.05575991, -0.0152009195, -0.081003174, -0.124588065, 0.057021156) * inp_0_2_2; - const V4 inp_1_0_0 = inp[1][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_1_1_0 = inp[1][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_1_2_0 = inp[1][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_1_0_1 = inp[1][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_1_1_1 = inp[1][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_1_2_1 = inp[1][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_1_0_2 = inp[1][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_1_1_2 = inp[1][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_1_2_2 = inp[1][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.031480134, 0.022504607, -0.02750034, 0.026851013, -0.055708077, 0.07170976, -0.070243254, -0.0065298458, 0.06899681, -0.0028600846, 0.0032809682, -0.004996292, 0.024207197, -0.007651659, 0.07757207, 0.037213583) * inp_1_0_0; - result0 += M4(-0.012441978, 0.0034176179, -0.03361243, 0.017559242, 0.0060279486, 0.021163693, -0.019269442, 0.04769179, -0.030220052, -0.06281222, -0.014371619, -0.050369434, 0.013997505, -0.06996628, 0.023995461, 0.063480906) * inp_1_1_0; - result0 += M4(-0.008759604, -0.04951979, 0.05102022, 0.0017029941, 0.050905816, -0.056640524, 0.07649713, 0.035654396, 0.00427665, 0.06401766, 0.07753079, -0.025118385, -0.0044859177, 0.2058421, -0.17279617, 0.06928524) * inp_1_2_0; - result0 += M4(0.04290967, -0.013302464, 0.015044507, 0.0857753, 0.07619337, 0.062953755, 0.01589828, -0.020596823, 0.03972262, 0.03550127, 0.019688614, 0.092569076, 0.004516904, 0.080200285, 0.02064298, -0.026211804) * inp_1_0_1; - result0 += M4(-0.020641228, 0.07598462, 0.021477671, 0.06988232, -0.09407873, -0.11900485, 0.1156955, -0.1030279, -0.03962574, 0.029488564, -0.010367837, -0.0529273, 0.32971036, -0.010841562, 0.35500067, 0.12690964) * inp_1_1_1; - result0 += M4(0.09933516, 0.07683861, 0.070552304, 0.045429543, -0.03121993, -0.009703804, -0.06331376, -0.036947217, -0.041279823, 0.00354611, -0.070087224, 0.054837074, 0.1187459, -0.16770424, 0.03295034, -0.110784754) * inp_1_2_1; - result0 += M4(-0.005448111, -0.054279003, 0.057456307, 0.008584563, -0.1297482, 0.028048642, -0.6236852, 0.046218157, 0.38579345, 0.10507107, -0.34008276, 0.0804456, -0.11048847, 0.0029664394, -0.11039505, -0.031908937) * inp_1_0_2; - result0 += M4(-0.014053733, -0.015274395, 0.04369264, -0.048567593, -0.33751306, -0.0006919785, -0.8714137, 0.29593474, -0.2234228, -0.038645227, 0.08446201, 0.19311851, -0.1262271, -0.0838822, -0.13839994, -0.11843266) * inp_1_1_2; - result0 += M4(0.0597845, -0.02361284, -0.1754463, -0.12823744, -0.038144067, -0.00030823884, -0.07397957, 0.07538066, -0.049707428, 0.11772805, 0.25095862, 0.14273249, -0.08096025, -0.0786103, -0.053230636, 0.011765605) * inp_1_2_2; - result1 += M4(-0.041214515, -0.022783551, -0.007854777, 0.011424497, 0.048652228, 0.024216479, -0.08327773, 0.03330842, 0.046059, -0.012574716, -0.051844712, 0.012575741, -0.10872949, 0.0652668, 0.068628065, -0.12344464) * inp_1_0_0; - result1 += M4(-0.047421794, -0.0042900466, -0.09755643, 0.021290427, -0.019125689, 0.05894493, 0.108833686, -0.03896826, 0.034521278, 0.04110817, 0.16736257, -0.13419849, 0.32663566, -0.02243724, 0.22435305, 0.0015056706) * inp_1_1_0; - result1 += M4(-0.0063731284, -0.048223697, -0.0257136, 0.054564774, -0.017797744, -0.09169449, -0.03490447, -0.005628338, 0.10449499, -0.022218069, 0.057933014, 0.063172325, -0.3315207, -0.53118134, -0.11165747, -0.11655941) * inp_1_2_0; - result1 += M4(0.014127968, 0.019844344, -0.041556776, -0.022626622, -0.3077768, -0.016684685, -0.17728744, 0.02716392, 0.17554432, 0.048318308, 0.011630752, 0.050423477, 0.0076396307, 0.1246161, -0.016712481, -0.124416895) * inp_1_0_1; - result1 += M4(0.34330148, -0.027847465, 0.06134694, -0.17701492, 0.36956406, 0.3542786, 0.17885083, 0.100473754, 0.096133925, 0.06349665, 0.044160556, -0.077218466, 0.2494421, 0.35502204, -0.06153945, -0.09098579) * inp_1_1_1; - result1 += M4(-0.1906175, 0.110962786, -0.074767, -0.03940394, -0.039098483, -0.2524961, 0.03541422, -0.13015822, -0.089974515, -0.01388011, -0.054019574, 0.08053615, -0.012862676, -0.29962274, -0.22421661, 0.164933) * inp_1_2_1; - result1 += M4(0.046955675, -0.0020843735, 0.024131287, 0.059485376, -0.16264954, -0.0018706354, -0.16672719, -0.17812519, -0.21307985, 0.01251039, -0.098445274, 0.06601699, 0.010622129, -0.13259597, 0.06293575, 0.081812285) * inp_1_0_2; - result1 += M4(-0.14296159, -0.27319872, 0.003056584, -0.04481623, -0.239822, 0.30125526, -0.3768209, -0.07221183, 0.14043114, 0.08845101, 0.1153593, -0.17431736, 0.31998786, -0.09081244, -0.012719533, -0.1150432) * inp_1_1_2; - result1 += M4(0.03607832, -0.053118367, 0.12206769, 0.12573037, 0.016049556, 0.14021628, -0.60453457, 0.043669682, 0.0927199, -0.04202347, -0.02230127, 0.10041387, -0.013005157, -0.037925337, 0.20434196, -0.008807346) * inp_1_2_2; - result2 += M4(0.085524045, -0.04726476, 0.0025043243, 0.02211397, -0.031442154, -0.009824152, -0.04868665, 0.024380827, -0.089414954, -0.020452585, 0.02611986, 0.02746525, -0.026081663, 0.008058045, -0.024885932, -0.09756925) * inp_1_0_0; - result2 += M4(0.14009194, 0.077190965, -0.014647526, -0.022815943, 0.027628496, -0.045014247, 0.048588466, -0.06003301, -0.036754172, 0.031951413, 0.004520675, -0.054952823, 0.116246305, -0.053753987, -0.029616896, -0.035481684) * inp_1_1_0; - result2 += M4(0.0731957, 0.021592917, 0.022428276, 0.02819652, -0.0056193573, 0.022294624, 0.043987297, 0.045787323, -0.18264157, -0.05378185, 0.021316234, 0.023163464, -0.0378671, 0.048951052, -0.06701447, 0.011839914) * inp_1_2_0; - result2 += M4(0.023698011, 0.010092461, -0.013971513, 0.09212325, -0.050817706, 0.021730527, -0.162843, -0.10750212, -0.11302532, -0.021604111, 0.036292415, 0.04150645, -0.03448777, 0.03934349, -0.000643943, -0.037141915) * inp_1_0_1; - result2 += M4(0.1273163, -0.20044346, 0.22307473, -0.002607279, -0.088810526, -0.01018931, -0.036336742, -0.074329466, -0.2198094, -0.13896179, -0.027855778, -0.026664797, 0.055611413, 0.2728389, 0.074398644, 0.06719183) * inp_1_1_1; - result2 += M4(0.08248264, -0.03958757, -0.1574347, 0.055085007, 0.014108534, 0.10217436, 0.16581772, 0.11076202, -0.026574718, 0.14058042, -0.091445215, 0.072632134, -0.015471814, 0.17361253, -0.11562396, 0.16116662) * inp_1_2_1; - result2 += M4(-0.036110546, 0.014922259, 0.03722302, 0.08972748, -0.05882626, -0.04369316, -0.17843926, -0.079488635, -0.11866699, -0.046404492, 0.01462289, 0.13743721, 0.049024098, 0.009446403, -0.05974156, -0.0836173) * inp_1_0_2; - result2 += M4(0.14417793, -0.12449359, 0.19634986, 0.03615379, -0.042494725, -0.0888043, -0.222145, -0.34039366, -0.28314266, 0.19263896, 0.0003379376, 0.14055537, -0.048554685, 0.11350628, 0.111550525, 0.19810182) * inp_1_1_2; - result2 += M4(0.17055759, -0.19232155, -0.08552316, 0.15144835, -0.16844755, 0.1626488, -0.3597869, -0.2739759, -0.0869378, 0.037314333, 0.08125157, 0.046879493, 0.04942182, -0.085242175, 0.020566402, 0.03357786) * inp_1_2_2; - result3 += M4(0.00036584082, 0.0738929, -0.04572539, -0.0012843242, -0.0030120017, -0.0041420124, 0.0283537, -0.14216274, -0.07171603, -0.040536903, 0.037717972, -0.03271703, 0.10293497, 0.011163896, -0.039166804, 0.06779274) * inp_1_0_0; - result3 += M4(0.09888187, 0.049035363, -0.07075683, 0.02288465, -0.08808854, 0.077348836, -0.05631992, 0.11476631, 0.08141408, -0.05905511, -0.063237794, 0.059854712, 0.07303647, -0.122965515, 0.21723406, -0.21770875) * inp_1_1_0; - result3 += M4(0.041968178, 0.045095038, -0.04187227, 0.03839533, 0.066174425, -0.018372115, 0.101509646, 0.034778282, -0.15746263, -0.021688193, 0.12761101, 0.0005590278, -0.06495877, 0.08993167, 0.08493154, 0.100946926) * inp_1_2_0; - result3 += M4(-0.12990578, -0.063872226, 0.023313195, -0.102485776, -0.07710697, 0.047350243, 0.0027049147, 0.044569127, -0.23771174, 0.013232883, -0.042979818, 0.021591274, 0.10553398, 0.021377036, -0.05979461, 0.1297515) * inp_1_0_1; - result3 += M4(0.041767593, -0.23734885, -0.04018287, 0.0021905825, 0.058974028, 0.092547245, 0.0052623916, -0.0038457026, -0.042447865, -0.06745353, 0.121213816, -0.1727163, 0.30826557, 0.14860876, -0.17683196, -0.2522164) * inp_1_1_1; - result3 += M4(-0.15903552, 0.058151513, 0.100160204, -0.08453247, 0.024600973, 0.07015041, 0.018457606, -0.02940498, -0.28345245, 0.0012391646, -0.00924876, 0.0022620042, 0.41158104, -0.23476022, 0.08815258, 0.37193108) * inp_1_2_1; - result3 += M4(0.02046382, 0.06482451, 0.07025366, 0.047283176, -0.49082857, -0.10276241, -0.18953465, 0.33669, -0.07672553, 0.07237662, -0.16632302, 0.020866703, -0.008033319, -0.0140120685, 0.10647299, 0.11572522) * inp_1_0_2; - result3 += M4(-0.03480249, -0.059787698, 0.13420132, -0.058501054, -0.55851614, -0.24554124, 0.10433807, 0.01223755, -0.07957651, -0.017458556, 0.17455065, -0.05367447, 0.19968064, 0.047660735, 0.07357433, -0.155887) * inp_1_1_2; - result3 += M4(-0.0030073624, 0.10810762, -0.18044378, 0.067629024, -0.48736268, 0.028282214, 0.16534877, 0.14841224, -0.38103735, 0.056693874, 0.050072443, 0.026725601, 0.3106084, 0.042087603, 0.1353113, -0.15954271) * inp_1_2_2; - result4 += M4(0.049907044, 0.05917379, -0.0070446306, -0.0125782965, 0.06958402, 0.010411088, 0.09445976, 0.1306928, 0.078032605, -0.024585722, -0.06634273, -0.04562438, -0.06356682, -0.14808829, -0.058135133, -0.0176488) * inp_1_0_0; - result4 += M4(-0.049305007, -0.09119424, -0.020125449, 0.06657149, -0.026055757, 0.032714486, -0.113167875, 0.03647543, -0.053998318, 0.039899196, 0.033228494, -0.04177448, 0.15518185, 0.020502375, 0.12221952, 0.22044659) * inp_1_1_0; - result4 += M4(-0.0042459243, -0.024827003, 0.016229805, -0.0022263292, -0.027433382, -0.045722224, -0.015748752, -0.13316798, 0.05410119, -0.056025855, -0.040435337, -0.018760245, 0.009213945, 0.3852679, 0.000578873, -0.28317082) * inp_1_2_0; - result4 += M4(0.034161624, 0.007418905, 0.0056263413, 0.0134465, -0.062138826, 0.10297515, -0.12675077, -0.22341436, -0.057107937, -0.075487636, 0.118391424, -0.051086467, -0.068698496, -0.109848805, -0.16419601, 0.07985009) * inp_1_0_1; - result4 += M4(-0.289909, 0.11116721, -0.05000816, 0.014985705, -0.062454224, -0.31514457, -0.0134612415, 0.2906185, 0.29426044, -0.09375476, -0.12609719, -0.018698383, -0.4959687, 0.11218079, -0.36311164, 0.2827361) * inp_1_1_1; - result4 += M4(-0.12141261, -0.03322532, 0.02778503, -0.18592703, 0.16356562, 0.1862531, 0.10289074, -0.02910688, 0.074913174, 0.04176986, 0.029782522, 0.07551553, -0.14691809, -0.20474134, 0.25737017, 0.0036834145) * inp_1_2_1; - result4 += M4(-0.026830075, 0.0102805, 0.050740518, -0.030503534, 0.12479471, -0.2997582, 0.39288667, -0.36012942, 0.06627369, 0.018240752, -0.18103112, 0.009833147, 0.10051215, 0.07757615, 0.03269702, 0.1315916) * inp_1_0_2; - result4 += M4(0.38367394, -0.17794202, 0.034007493, 0.16756037, -0.3462468, -0.08931065, 0.83406174, -0.8299837, -0.06436015, 0.018899275, -0.029526684, 0.059355065, -0.08902517, 0.0025220488, -0.12519355, 0.091307715) * inp_1_1_2; - result4 += M4(-0.062145147, 0.18577932, -0.0880551, 0.121524155, 0.34152356, -0.26200464, 0.14587915, -0.19998455, 0.03422614, 0.04158095, 0.06141245, -0.08567144, -0.0099176, -0.03126393, 0.19342414, -0.029076293) * inp_1_2_2; - result5 += M4(-0.0018104424, -0.04740306, 0.008606481, -0.057826642, 0.028359115, 0.03855738, 0.024834067, -0.05892849, -0.06852567, 0.0014034081, -0.017360523, -0.0034612792, -0.053556345, -0.16744903, 0.011242206, 0.06495266) * inp_1_0_0; - result5 += M4(0.0076297154, 0.053831212, 0.012087942, -0.017794803, -0.015621248, -0.11158887, 0.015844794, 0.034641407, 0.015440859, -0.0029511496, -0.018026209, 0.058421873, 0.11149868, -0.3772246, 0.11445935, 0.11466591) * inp_1_1_0; - result5 += M4(0.018695602, -0.016999591, 0.041074533, 0.017925212, -0.02783583, 0.035658825, -0.06383002, 0.037043292, -0.034911964, -0.019873073, -0.01734665, -0.009707079, 0.18712191, -0.597724, -0.48827893, -0.15412585) * inp_1_2_0; - result5 += M4(0.008229301, 0.05874537, -0.020877894, 0.051652975, -0.021933421, 0.08803422, 0.05889715, -0.030001901, -0.09020934, -0.00093469815, -0.028563846, 0.14848892, 0.03571232, -0.20264493, -0.14047436, -0.044526584) * inp_1_0_1; - result5 += M4(0.20835799, 0.08425257, -0.031775605, 0.0604564, -0.024688438, 0.074072696, 0.22773655, 0.071057804, -0.07424373, -0.05189683, -0.24849279, 0.012247315, -0.15502611, -0.7149815, -0.012028348, 0.20658933) * inp_1_1_1; - result5 += M4(-0.0291081, 0.17835686, 0.1379435, -0.13504569, -0.03562398, -0.25263202, -0.24820459, -0.10914973, -0.06401897, -0.012636178, 0.0407837, -0.1221712, 0.0008696161, -0.99497575, -0.34240752, -0.3956755) * inp_1_2_1; - result5 += M4(-0.055273805, 0.020010803, 0.032364372, 0.021821553, 0.07773637, -0.11825204, -0.0585737, -0.23029865, 0.0041647237, 0.1847297, -0.10723596, -0.040413555, 0.05951613, -0.19049922, 0.1110859, 0.0075152526) * inp_1_0_2; - result5 += M4(-0.027073802, -0.18725133, -0.062199067, -0.07966089, -0.036935627, -1.0838538, -0.2299379, -0.0776096, -0.056953266, -0.09772756, -0.016039046, 0.25972503, -0.16613887, -0.29878625, 0.02102991, -0.0075961067) * inp_1_1_2; - result5 += M4(0.084981486, -0.049690872, -0.06729748, 0.09547587, -0.223316, -1.3110473, 0.03750193, -0.15361217, -0.12954216, -0.10045158, 0.06451402, 0.008062529, -0.033319175, -0.5449086, -0.16870773, 0.072470695) * inp_1_2_2; - result6 += M4(0.035710134, -0.004272795, -0.0030682434, -0.10361778, -0.06331565, -0.06025608, -0.0022991255, 0.03765545, -0.028815068, -0.034663733, 0.020915102, 0.040111464, 0.018591635, 0.049653575, 0.009148295, 0.07538383) * inp_1_0_0; - result6 += M4(0.019738814, -0.05839733, -0.06505472, -0.13510013, 0.09890182, 0.1891451, 0.021422703, -0.042574145, 0.0042094113, 4.579787e-05, 0.008323813, 0.104889534, -0.041459255, 0.02876048, 0.009126818, 0.04232417) * inp_1_1_0; - result6 += M4(-0.020357303, 0.101321034, 0.006097082, -0.11298897, -0.05311815, -0.10926171, -0.023567012, -0.0021390421, -0.029851168, -0.04654526, 0.013573414, 0.07828777, -0.1216066, 0.16882752, 0.001086939, -0.050930224) * inp_1_2_0; - result6 += M4(-0.16762364, 0.00041041707, 0.0047406727, -0.1872355, -0.1167771, 0.049215507, 0.045813188, -0.12599264, -0.015456616, -0.09617353, -0.07760548, 0.3573423, 0.085120894, -0.052515253, -0.041856173, 0.09151189) * inp_1_0_1; - result6 += M4(0.25298527, -0.083033815, 0.07842838, -0.20436326, 0.2141105, -0.081563264, -0.03578718, -0.14552186, 0.09011429, 0.09337912, -0.17800711, 0.35518906, 0.34146005, 0.21679604, -0.14178607, 0.29695487) * inp_1_1_1; - result6 += M4(-0.015039324, -0.11801624, 0.3308996, -0.20301448, -0.1029583, -0.01371626, 0.02209448, -0.23469046, -0.017852006, 0.045394216, -0.1108695, 0.26390383, 0.17035092, -0.16483067, -0.09092368, -0.08701643) * inp_1_2_1; - result6 += M4(0.031161798, 0.008572961, -0.040698856, 0.07290603, -0.46013176, 0.08443932, -0.03847323, -0.0050219405, 0.019950045, -0.03748009, -0.05836353, 0.064596914, -0.020090474, 0.054859094, -0.0053050932, -0.08853301) * inp_1_0_2; - result6 += M4(-0.084764175, 0.012020918, 0.00015554744, 0.1531305, -0.33220297, -0.17982721, 0.28655532, -0.029537294, -0.20199123, -0.05748397, -0.08752159, 0.101133555, 0.026785634, 0.03626457, 0.00612663, -0.0089569455) * inp_1_1_2; - result6 += M4(0.020700581, 0.0057524317, 0.17061627, 0.13423783, 0.2793002, -0.15452349, -0.11238209, 0.05201116, 0.020945266, -0.010477651, -0.09111721, 0.18077657, 0.007817896, -0.0045658727, -0.061545387, -0.2459529) * inp_1_2_2; - result7 += M4(0.027733237, 0.038972043, -0.03088507, -0.0074141766, -0.11064113, -0.0043980954, -0.058969297, -0.006910389, -0.015636815, 0.011484409, -0.03570867, 0.08492805, 0.11756981, -0.013650826, 0.031284023, -0.007139631) * inp_1_0_0; - result7 += M4(0.069567926, -0.00613218, -0.012121846, -0.050250504, 0.12377311, -0.06269611, 0.031104371, 0.0056001255, -0.07889045, -0.042404916, 0.1145589, 0.005229294, -0.112692, 0.014950937, 0.11265732, 0.35954937) * inp_1_1_0; - result7 += M4(0.005378605, 0.002725332, -0.051373534, -0.02157908, -0.024585038, -0.029680984, 0.019898454, 0.016664904, -0.027567513, 0.023566173, -0.09247306, 0.021096438, -0.16182888, 0.011246899, -0.026068551, -0.13940927) * inp_1_2_0; - result7 += M4(-0.061125427, -0.017961377, 0.037990037, 0.09285938, 0.03901359, 0.039907802, -0.06193245, -0.001297714, -0.07116101, 0.040651117, 0.0134698525, 0.0499299, 0.10181796, -0.013673448, -0.05742784, -0.047678668) * inp_1_0_1; - result7 += M4(0.015785968, -0.16612265, 0.20642702, -0.12645264, 0.2055037, 0.24102506, -0.15565194, 0.08455558, -0.029321713, 0.20607245, -0.23393583, 0.026113318, -0.4376399, -0.0051516, 0.06587485, -0.17734307) * inp_1_1_1; - result7 += M4(0.01350173, -0.07216518, 0.21655977, -0.03375292, -0.1868103, -0.029453665, -0.04318684, -0.10005376, -0.03857597, -0.05963412, 0.0089385845, 0.10560614, -0.21511024, -0.11504748, 0.15365157, 0.09674078) * inp_1_2_1; - result7 += M4(-0.08949881, 0.021742478, 0.03298201, -0.010393788, 0.7199584, -0.0027156998, -0.13432813, 0.37697923, -0.111123726, 0.025214864, -0.048953548, 0.22592115, 0.1345457, 0.022827635, -0.012038413, 0.042285312) * inp_1_0_2; - result7 += M4(-0.2318804, -0.042549968, 0.003076829, 0.0812493, 0.96494234, 0.115368605, 0.26462525, 0.008074855, -0.17962907, -0.08389085, 0.13855058, -0.14960603, 0.114419475, 0.0055155302, 0.11441841, -0.036788214) * inp_1_1_2; - result7 += M4(-0.029846653, 0.09816073, 0.29667217, 0.039547663, 0.48146144, 0.08200442, 0.128414, -0.014489124, 0.1446394, 0.02353629, -0.05249817, 0.05469321, -0.0534344, -0.015874032, 0.085210845, 0.08815681) * inp_1_2_2; - const V4 inp_2_0_0 = inp[2][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_2_1_0 = inp[2][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_2_2_0 = inp[2][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_2_0_1 = inp[2][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_2_1_1 = inp[2][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_2_2_1 = inp[2][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_2_0_2 = inp[2][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_2_1_2 = inp[2][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_2_2_2 = inp[2][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.102626026, -0.0378138, -0.020769343, 0.007368121, -0.016526962, 0.08776557, 0.17823024, 0.087599255, 0.016235558, -0.04522307, -0.06772902, -0.064329505, 0.0021017354, -0.03170066, 0.001691324, -0.04279465) * inp_2_0_0; - result0 += M4(0.13243054, 0.014472338, -0.083450876, 0.013659966, 0.07972569, 0.054905854, 0.05906461, 0.02754161, -0.067101546, -0.10529769, -0.035395183, -0.06387251, -0.018989632, -0.061490856, 0.015145441, 0.0021654118) * inp_2_1_0; - result0 += M4(-0.1525686, -0.13395174, -0.10757616, 0.007979974, 0.030142508, -0.08858484, -0.0115399975, -0.089607134, 0.070242435, 0.06293386, -0.040147502, -0.09941832, -0.043413296, 0.009334943, -0.013120559, 0.101818055) * inp_2_2_0; - result0 += M4(-0.026650494, -0.06144339, 0.14248, -0.06253997, -0.15318929, -0.060040213, 0.19732086, 0.004659254, -0.02383706, 0.07070178, 0.014485851, -0.08196497, 0.041479446, -0.037068035, -0.0042144526, 0.003230726) * inp_2_0_1; - result0 += M4(0.08663478, 0.38924518, 0.3046044, 0.17067753, 0.023407796, -0.039609946, -0.22201665, -0.08697131, -0.0024897512, -0.12671809, -0.029388973, -0.044726096, -0.054724198, -0.0513072, 0.07526693, 0.13014683) * inp_2_1_1; - result0 += M4(0.04421704, -0.009702661, 0.1203698, -0.15590294, -0.07504153, 0.07861127, -0.026001224, 0.037677668, -0.005250857, 0.059194393, 0.033944294, -0.031211345, 0.016431559, -0.021823363, 0.013531701, 0.07076996) * inp_2_2_1; - result0 += M4(0.06436249, -0.011580038, 0.06488756, 0.037659034, -0.14665744, 0.020148993, 0.033959374, -0.071903676, 0.03318206, 0.04746019, 0.021691663, 0.007678443, 0.0020073992, -0.018149707, -0.021546392, -0.008433799) * inp_2_0_2; - result0 += M4(-0.007996668, -0.050261617, 0.07731974, -0.10224194, -0.02616626, 0.0004953605, 0.046488836, 0.025740415, -0.08061821, 0.011366273, 0.006529177, 0.017454254, 0.033323236, 0.040516824, -0.07195071, 0.011409133) * inp_2_1_2; - result0 += M4(0.053438187, -0.09089951, 0.2440525, -0.1324565, 0.099874504, 0.02447203, -0.15702766, 0.034565087, 0.031376705, 0.01295717, 0.085221685, 0.03262457, -0.08936327, -0.015295609, -0.124098696, 0.002835575) * inp_2_2_2; - result1 += M4(0.16019587, -0.0515186, 0.013615225, 0.121898755, 0.011441191, 0.030647568, 0.06919563, -0.24421613, 0.0065716603, -0.0073198997, -0.010487829, -0.055828173, -0.07465893, 0.07650894, -0.0034516328, 0.046492565) * inp_2_0_0; - result1 += M4(0.091461204, -0.045833334, -0.10035038, -0.025176672, 0.08045068, -0.019254649, -0.058673885, -0.03127825, -0.042739026, -0.07128582, 0.11008445, 0.063810885, 0.055749726, 0.022268586, 0.00016013818, -0.012536) * inp_2_1_0; - result1 += M4(0.07670493, 0.101615846, -0.20144957, 0.098949134, 0.031775758, 0.2138774, 0.13720912, 0.084109835, 0.105399415, -0.029400298, 0.098876305, -0.03214166, -0.095566034, -0.03424538, -0.10133411, 0.025917798) * inp_2_2_0; - result1 += M4(-0.013170599, -0.0024985115, 0.055577427, 0.048873395, 0.08682708, 0.13055427, 0.15758575, 0.013761445, -0.056211665, 0.04702216, -0.00610366, -0.080555156, 0.08458422, 0.124975406, -0.016580112, 0.096349955) * inp_2_0_1; - result1 += M4(-0.1890591, 0.13201927, 0.118629955, -0.13454923, -0.25569218, -0.44141504, 0.10523596, 0.13301924, 0.045317512, 0.18946074, 0.004729886, 0.021649776, 0.13188155, -0.047694493, -0.07527121, 0.006226415) * inp_2_1_1; - result1 += M4(0.096434765, 0.20711468, 0.027942741, 0.08371446, -0.1326204, -0.088750854, 0.10190294, -0.0044493563, -0.08976341, 0.17278244, -0.066094026, -0.074300334, 0.0025499635, 0.028562948, 0.0057129157, 0.03719291) * inp_2_2_1; - result1 += M4(0.07887642, -0.096795306, 0.08951601, 0.2202021, 0.15527564, 0.11085346, -0.10906232, -0.0045662075, -0.101505615, -0.026102083, 0.02747061, 0.046167426, 0.035964143, 0.06407939, 0.0077214376, -0.057969805) * inp_2_0_2; - result1 += M4(-0.057912838, -0.07709548, 0.09053219, 0.0141200805, -0.021389624, -0.048085175, -0.1068871, 0.044762302, 0.048573807, 0.059034944, 0.020754114, 0.154847, -0.13091393, -0.051150635, 0.10909996, -0.13846873) * inp_2_1_2; - result1 += M4(-0.055644743, 0.02751157, -0.0541025, 0.059359703, 0.011699482, 0.15671876, 0.1697867, -0.12131408, 0.08831554, -0.0722534, -0.08469012, 0.015968846, -0.11808802, 0.024787262, 0.06809935, -0.09480598) * inp_2_2_2; - result2 += M4(-0.05920761, -0.00848376, 0.024428904, 0.047450554, 0.079389155, -0.06695981, 0.11275496, -0.10183089, -0.07814928, 0.029063111, -0.087552786, -0.005981822, -0.06576211, 0.111629896, -0.0650491, -0.02131078) * inp_2_0_0; - result2 += M4(0.07220693, 0.15114598, -0.070295304, 0.1511436, 0.018612089, 0.057495188, -0.05515548, -0.13212427, -0.08390004, 0.076943606, 0.03839483, -0.1769894, 0.039399132, -0.008770695, 0.089487016, 0.09367663) * inp_2_1_0; - result2 += M4(0.09929771, -0.008270282, 0.0032736282, 0.099983804, -0.026375752, -0.005757466, 0.1410237, -0.06956426, 0.01777521, 0.02574528, -0.004664453, -0.12907864, 0.011568799, -0.013755039, -0.053137656, 0.06613922) * inp_2_2_0; - result2 += M4(-0.071287304, -0.15717238, 0.06201475, 0.014531967, -0.055900447, 0.03780863, 0.03358501, -0.02321918, 0.046899177, -0.077546254, -0.15915193, -0.24280348, -0.17045207, 0.08481845, -0.08389518, 0.13873109) * inp_2_0_1; - result2 += M4(-0.24308908, -0.2851145, 0.30875087, -0.38855785, 0.16271521, 0.014828467, -0.33124524, 0.48728982, 0.20194696, -0.18667065, -0.11229231, -0.7334426, 0.013326955, 0.17379054, -0.0064045223, 0.6246031) * inp_2_1_1; - result2 += M4(0.011905945, -0.06473281, 0.09278593, -0.16349408, -0.08539466, -0.039314058, 0.026767116, 0.037749525, 0.08813163, 0.09044113, 0.0112176575, -0.04252613, -0.06424311, -0.06551719, -0.04475247, 0.06258853) * inp_2_2_1; - result2 += M4(0.027131632, 0.035325296, -0.030636352, 0.05181929, -0.11553865, 0.115788646, -0.044848025, 0.14784437, 0.11515012, -0.008829454, -0.029135257, -0.12861982, -0.087970436, 0.036905795, 0.010701245, 0.11582345) * inp_2_0_2; - result2 += M4(0.011756057, 0.104375295, 0.061644692, 0.12552465, -0.047188845, -0.011353173, 0.09280525, 0.044770982, 0.027056836, -0.013194503, -0.11583078, -0.10410312, 0.039174333, 0.027061587, 0.012038754, 0.062167697) * inp_2_1_2; - result2 += M4(0.017940208, -0.04443657, -0.015382429, 0.062300067, -0.026605817, 0.007039876, 0.07133211, 0.03217889, 0.08692454, 0.020983698, 0.07895373, -0.044144846, -0.035861965, -0.03042255, -0.07802219, 0.0004299492) * inp_2_2_2; - result3 += M4(-0.01826607, -0.0066530444, 0.02325791, 0.035230912, 0.027009634, 0.0017351048, 0.031480547, -0.012188349, 0.028297268, -0.041219946, 0.01732752, -0.004695244, -0.057295706, 0.04531487, -0.024239196, 0.017303359) * inp_2_0_0; - result3 += M4(0.042460658, 0.013017525, -0.1263443, -0.039664153, 0.09536156, 0.03564434, -0.04610274, 0.03802673, 0.040715545, -0.02100789, -0.02928364, 0.14467373, 0.019568602, 0.005026924, -0.025226936, -0.04228476) * inp_2_1_0; - result3 += M4(0.19582418, -0.056329336, -0.1894391, -0.04389681, 0.010689866, -0.028507339, -0.095214784, -0.18918866, -0.0388744, 0.049673073, -0.0017970563, 0.06084371, -0.021068418, -0.000118826654, 0.04550341, 0.029594148) * inp_2_2_0; - result3 += M4(-0.007679755, -0.021685284, 0.10964818, 0.020976722, 0.05765831, 0.0015699534, -0.093542814, 0.12347134, -0.06438842, -0.00091600214, -0.15243804, -0.06771118, -0.13791879, -0.023073325, 0.050979823, -0.07362422) * inp_2_0_1; - result3 += M4(-0.05851016, 0.018508844, 0.043994196, -0.19171771, 0.09446859, 0.01654996, -0.20067103, 0.1140589, -0.3094334, 0.03520959, -0.008300896, 0.015405446, 0.06835506, -0.030157428, 0.15928513, 0.03287838) * inp_2_1_1; - result3 += M4(-0.09774515, -0.017597707, -0.09912412, -0.117702864, -0.075169645, 0.0014701256, -0.035943802, 0.03185316, -0.115866765, 0.0015667621, 0.08044575, -0.052443694, 0.01999993, 0.021734782, 0.0012890137, -0.021932246) * inp_2_2_1; - result3 += M4(-0.009755928, 0.048143324, 0.1876031, -0.10052089, 0.015314587, -0.01912244, 0.04273652, -0.0118960915, 0.047364738, -0.019659618, -0.016098775, 0.017650392, 0.06663964, 0.007682004, -0.039681807, 0.056215767) * inp_2_0_2; - result3 += M4(0.06507892, 0.026762336, 0.021327747, -0.11281578, 0.13315207, -0.004609424, -0.098822564, 0.121075295, 0.01924004, -0.011302512, 0.11890607, 0.03439876, -0.06490099, -0.080380924, -0.08899524, 0.007505809) * inp_2_1_2; - result3 += M4(0.01065066, 0.001668953, -0.03551495, -0.13502638, -0.055165004, -0.0054646777, 0.045958962, 0.07300568, 0.054705407, 0.06694819, -0.03203487, -0.00035117165, 0.010502735, 0.010018067, 0.009847523, -0.001408804) * inp_2_2_2; - result4 += M4(-0.015826896, 0.06917265, 0.049686335, -0.1167027, -0.26069096, -0.013127824, -0.0028007445, 0.13114433, 0.059743095, -0.06695579, 0.017709337, 0.1428268, 0.034187734, -0.002404495, 0.03890739, -0.042220946) * inp_2_0_0; - result4 += M4(-0.16117539, -0.038765643, -0.061650764, -0.061134994, 0.10669197, 0.013669264, 0.042007297, 0.052603338, 0.1869264, 0.04415185, -0.06434306, -0.058247536, -0.023762595, -0.034596574, 0.03804992, -0.0063704704) * inp_2_1_0; - result4 += M4(0.07131793, 0.15216163, 0.039324246, 0.22150601, 0.07119968, -0.071473174, -0.021626662, 0.057144642, -0.04565161, 0.010528631, -0.011568502, -0.100792065, 0.032645226, 0.01153916, -0.01372997, -0.0019403652) * inp_2_2_0; - result4 += M4(0.042483468, 0.053211838, 0.0012676227, -0.02189949, -0.22104315, -0.0832742, -0.08689072, -0.0637403, -0.08430441, 0.08219517, -0.12317496, -0.07255116, -0.09191781, 0.061839443, 0.021465674, -0.050172675) * inp_2_0_1; - result4 += M4(0.12775292, 0.12687851, -0.53868926, -0.16686065, -0.12110094, -0.18657479, 0.27162346, 0.101076216, -0.0348021, -0.06128497, 0.08849443, 0.1394815, 0.16526626, -0.054693505, -0.051795706, -0.12551151) * inp_2_1_1; - result4 += M4(0.17541611, -0.10612492, -0.11546083, 0.13819702, -0.1165598, 0.07004556, 0.005885727, 0.051862016, -0.10243124, -0.068547234, 0.12018217, -0.041577756, 0.056384064, 0.015679555, -0.046636127, 0.023815924) * inp_2_2_1; - result4 += M4(-0.017327083, -0.03633008, 0.06958135, 0.17939776, -0.15981276, 0.03141518, -0.18650283, -0.009615029, 0.07115878, 0.012167006, 0.002995449, -0.08227693, -0.032309502, 0.04248359, -0.11278277, -0.07767419) * inp_2_0_2; - result4 += M4(-0.12574057, -0.011044239, -0.113864034, 0.083027184, -0.012111041, 0.040626924, 0.06257254, 0.07961706, -0.07899811, -0.03343451, -0.019448357, -0.029980913, 0.057420753, -0.061999623, 0.05357393, 0.07783974) * inp_2_1_2; - result4 += M4(0.1636145, 0.10479496, 0.05521608, 0.2312062, 0.09833689, 0.2946943, 0.041808147, 0.009459199, 0.010442832, 0.09965618, 0.07112207, -0.018653119, -0.024809595, -0.030326303, -0.0035162107, 0.01875811) * inp_2_2_2; - result5 += M4(0.09454266, 0.22226144, -0.09625052, 0.059430882, 0.10054764, -0.270846, 0.06691808, -0.023298275, -0.004298617, -0.015265271, -0.0150652, -0.029100396, -0.12971711, 0.02541701, -0.006521928, 0.009940611) * inp_2_0_0; - result5 += M4(-0.012562176, 0.21147022, -0.072183646, -0.055101555, -0.03212912, -0.24858886, 0.14327908, 0.16713053, 0.0038564801, -0.019752631, -0.1343139, 0.09394952, -0.018133556, 0.003851989, 0.01854155, -0.05616593) * inp_2_1_0; - result5 += M4(-0.20211107, 0.34876615, -0.03214166, 0.27994224, 0.10176413, -0.14796828, 0.106838115, -0.18871227, 0.027729213, -0.015080514, 0.037771504, 0.0660284, -0.008867133, -0.028537573, -0.023686124, 0.0073551442) * inp_2_2_0; - result5 += M4(-0.04990112, 0.23070577, 0.11801518, 0.002223974, -0.010193933, -0.4954203, 0.012780313, -0.10568479, -0.054530486, -0.062780134, -0.08185782, 0.057198916, 0.010038724, -0.036114004, 0.039263412, 0.065156475) * inp_2_0_1; - result5 += M4(0.24415307, 0.49842355, 0.4635129, -0.14291017, 0.07250756, -0.6894674, -0.30685106, 0.10949509, -0.09831885, -0.022708442, -0.015343803, -0.09287685, -0.05328344, -0.025743987, 0.053145565, -0.05100948) * inp_2_1_1; - result5 += M4(0.19958174, 0.35889962, 0.1491392, 0.008796288, 0.21923861, -0.23957147, 0.043173857, -0.11702005, -0.16129881, -0.021988109, 0.077854455, -0.05624276, 0.051492322, 0.00064318813, -4.8282443e-05, 0.019928254) * inp_2_2_1; - result5 += M4(-0.09013258, 0.24360223, -0.016631782, 0.11967349, 0.05039528, -0.2991632, 0.019954495, -0.002130346, 0.052014247, 0.031181742, -0.016942289, 0.020443013, 0.018481527, -0.06301097, 0.022981536, -0.029466378) * inp_2_0_2; - result5 += M4(-0.029354772, 0.4572264, -0.059002493, 0.06830962, 0.029163385, -0.39860263, -0.08577528, 0.03438272, 0.016546732, 0.07882137, 0.043091528, -0.034724772, -0.06960692, -0.05319041, -0.07580103, -0.019318732) * inp_2_1_2; - result5 += M4(0.1491323, 0.2740244, -0.18554774, 0.1331881, -0.050890043, -0.19901018, 0.098771594, -0.016183032, -0.0072421795, -0.11984727, 0.04417481, -0.0012006474, 1.0024404e-05, -0.0256193, 0.015188907, 0.032976035) * inp_2_2_2; - result6 += M4(0.12927069, -0.04788145, -0.035654377, 0.05472472, 0.036944386, 0.12241402, 0.029210342, 0.0006613419, -0.11034718, 0.021949327, -0.019717757, 0.014101179, -0.08052999, 0.056536376, -0.03335772, -0.020928051) * inp_2_0_0; - result6 += M4(-0.043508776, -0.22089364, 0.057888504, 0.005269894, -0.0069607403, -0.058313895, -0.0016437698, 0.022705812, 0.106695525, -0.07886121, 0.045684285, 0.06073523, -0.0026385693, -0.030321883, -0.0074786902, -0.045912713) * inp_2_1_0; - result6 += M4(0.08340934, 0.23959383, -0.020417372, 0.0073409537, 0.025686247, 0.036541276, 0.0124189695, 0.018640414, -0.030533707, 0.045103513, -0.02702233, -0.09495187, 0.030507822, 0.009606613, 8.011128e-05, 0.06796167) * inp_2_2_0; - result6 += M4(-0.010019355, 0.09044801, -0.027655838, -0.05553067, -0.053878576, 0.047621686, 0.025806595, -0.01572834, 0.22251786, -0.046802547, -0.00998367, 0.11406194, -0.14088406, 0.08644174, 0.02303095, -0.055143192) * inp_2_0_1; - result6 += M4(-0.16384523, -0.21605821, -0.14750935, 0.2296098, -0.10265978, 0.10062264, -0.12620148, -0.15340239, -0.092419825, 0.076204084, 0.42127916, -0.15674439, 0.033999488, 0.06077264, -0.13453011, 0.029507114) * inp_2_1_1; - result6 += M4(0.07241956, -0.06735081, 0.015880913, 0.07408612, -0.036953896, 0.077214785, 0.031301107, 0.05217652, 0.07453632, 0.05610073, -0.028826324, -0.05008512, 0.004743467, -0.01476806, -0.0038863362, 0.03860628) * inp_2_2_1; - result6 += M4(0.040110435, -0.047259893, 0.004500201, -0.0722655, 0.027920771, -0.06550228, -0.038455263, 0.06792031, 0.010715792, 0.09458084, 0.05089199, -0.008353594, -0.012783175, -0.030230613, -0.04077522, 0.024102436) * inp_2_0_2; - result6 += M4(0.1892698, 0.0059054433, -0.07277205, 0.00035051556, 0.021839658, 0.045017987, -0.014208444, 0.05759779, -0.09436729, -0.100918844, 0.015912239, 0.049291864, 0.014792895, -0.053184167, 0.01920317, -0.009236205) * inp_2_1_2; - result6 += M4(0.046335507, -0.014249353, 0.044433814, -0.19790617, 0.054873437, -0.1288342, -0.015574008, 0.06214326, -0.0033613641, 0.07936065, -0.017087737, -0.047452837, 0.05417076, 0.012519781, 0.017227583, -0.02910676) * inp_2_2_2; - result7 += M4(-0.037673384, -0.0084757535, -0.011932829, -0.02961507, 0.0863391, -0.035295233, 0.1715905, -0.13187055, -0.103390194, 0.020133497, -0.05836819, -0.06569643, 0.022129392, -0.01560979, -0.076123625, 0.056850314) * inp_2_0_0; - result7 += M4(-0.19077015, -0.06710114, 0.05563319, 0.053546034, -0.024458237, -0.04361286, 0.22921741, 0.071017385, -0.009808336, -0.050461303, -0.15481746, 0.027252667, 0.02744765, 0.014075787, -0.018325131, 0.06567749) * inp_2_1_0; - result7 += M4(-0.026295412, -0.054290432, -0.005031886, -0.037141036, 0.12624882, 0.013625131, -0.027520658, 0.013242262, -0.06689462, 0.08114093, 0.008072359, 0.036432672, -0.012343785, -0.060094923, 0.015540525, 0.014483667) * inp_2_2_0; - result7 += M4(-0.036839493, -0.0022719041, 0.071011506, -0.11204108, -0.09125283, -0.06611527, 0.18145661, -0.109669104, -0.08492413, -0.013233175, -0.07264043, 0.037448876, 0.036999997, -0.001248583, 0.011127948, -0.021779861) * inp_2_0_1; - result7 += M4(-0.21410789, -0.08422195, 0.6360667, 0.017071432, 0.110611685, -0.05932815, 0.2692452, 0.02086283, 0.10432365, 0.4386733, -0.036295094, -0.087741904, -0.14124534, -0.20801611, -0.021789098, -0.057935707) * inp_2_1_1; - result7 += M4(0.08583435, 0.07511285, 0.08750457, 0.09360896, -0.017609928, -0.013171827, -0.16572402, 0.029099222, 0.08527667, 0.047085036, 0.041745447, 0.015070771, 0.035679094, 0.001360386, -0.07632367, -0.03840468) * inp_2_2_1; - result7 += M4(-0.010392951, 0.0007112454, -0.027814351, -0.07043356, 0.0286794, -0.008124113, -0.004937803, -0.030679287, 0.042924844, -0.0061345184, -0.07048976, 0.05361659, -0.039766252, -0.008026199, 9.929426e-05, 0.049768012) * inp_2_0_2; - result7 += M4(-0.26968455, -0.051173754, -0.059732463, -0.07134896, 0.10959697, -0.02736446, -0.0033861417, 0.12685192, -0.03339522, 0.03798147, -0.020897876, 0.03495772, 0.06951386, -0.015403556, -0.038977247, -0.029355602) * inp_2_1_2; - result7 += M4(-0.048703693, 0.013826189, 0.19190419, -0.029781157, 0.042310856, -0.032621592, -0.094946064, -0.12843671, -0.0038501269, 0.022443397, -0.0038473813, -0.067236155, -0.030158995, -0.010139937, -0.010876401, -0.013391723) * inp_2_2_2; - const V4 inp_3_0_0 = inp[3][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_3_1_0 = inp[3][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_3_2_0 = inp[3][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_3_0_1 = inp[3][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_3_1_1 = inp[3][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_3_2_1 = inp[3][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_3_0_2 = inp[3][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_3_1_2 = inp[3][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_3_2_2 = inp[3][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.10227068, -0.049428917, 0.1734918, 0.07449543, -0.23153585, -0.005773218, -0.23073955, -0.17913961, -0.075176254, 0.084810406, -0.015946515, 0.045134183, -0.57000095, -0.20868433, 1.7600117, 0.57630855) * inp_3_0_0; - result0 += M4(0.11793769, 0.16458535, 0.057056326, 0.08691454, -0.03102683, -0.068584174, -0.14386982, -0.057611328, -0.047876086, -0.10826888, 0.048648596, -0.039107982, -0.02671236, 0.106275514, 0.20663655, 0.08713148) * inp_3_1_0; - result0 += M4(-0.045471735, -0.26130554, -0.072732866, 0.14155512, 0.088650905, -0.18502085, -0.035421062, 0.077035606, -0.030984791, -0.036803804, -0.02701694, 0.028450746, 0.05403082, -0.0693006, -0.16134244, -0.012980172) * inp_3_2_0; - result0 += M4(-0.21136734, -0.0107752485, 0.04894971, 0.070918515, 0.07406947, 0.10308106, -0.09124698, -0.1310252, 0.0025654559, -0.0077738445, 0.090293884, -0.037954353, 0.074726015, 0.19344127, 0.17457776, 0.22258581) * inp_3_0_1; - result0 += M4(0.078000866, 0.054868568, -0.06897889, 0.033257652, -0.12415088, 0.15816206, 0.41441151, 0.17384452, 0.1363725, 0.06682442, -0.0016357517, -0.078484796, -0.12301643, -0.062983386, -0.32202646, 0.21539623) * inp_3_1_1; - result0 += M4(-0.027057195, -0.011429583, 0.0038044362, -0.057895698, -0.022515114, 0.11642976, 0.03611869, -0.0037949765, -0.0661491, -0.0040663425, -0.0059381477, 0.026318936, 0.021316357, -0.11091244, 0.11141851, 0.118255734) * inp_3_2_1; - result0 += M4(-0.13312925, 0.01735574, -0.036023885, -0.061182003, 0.08700152, 0.016173804, -0.11711236, 0.06892917, -0.14460355, -0.053804446, -0.028510766, 0.01617454, -0.089964814, -0.087490395, -0.11405036, -0.004337573) * inp_3_0_2; - result0 += M4(-0.009725278, 0.13636443, -0.058511566, 0.057967406, 0.08958501, -0.043162964, 0.08381805, -0.10018465, 0.062566586, 0.07169726, 0.010869863, -0.019029988, 0.16371986, -0.09138505, 0.09015613, 0.103351444) * inp_3_1_2; - result0 += M4(0.059256505, -0.11249339, 0.007562034, -0.097430505, 0.053929627, -0.01530957, -0.06950464, -0.043723892, 0.026575986, 0.048022065, 0.031182474, 0.03032361, -0.08680397, 0.16936445, 0.04608902, 0.041123252) * inp_3_2_2; - result1 += M4(0.17610088, 0.041681495, 0.24925806, -0.041814722, -0.36655736, -0.15911841, -0.13211428, 0.23912798, -0.038864266, -0.03596916, -0.07406427, 0.00749599, 0.71283025, 0.5504544, 0.8889286, 2.093033) * inp_3_0_0; - result1 += M4(-0.16059244, -0.088813566, -0.06302033, -0.08937155, -0.02720415, -0.00770145, 0.0058933874, 0.16067958, -0.07114399, 0.024798749, -0.025047002, -0.020422801, 0.2686512, -0.15760209, 0.31412336, -0.04737337) * inp_3_1_0; - result1 += M4(-0.17340274, 0.11439879, -0.11552762, 0.0674914, -0.10049274, 0.021814855, -0.06730126, 0.0061264304, -0.059822574, 0.008676744, -0.053764332, 0.0082050795, 0.011291897, 0.14865798, 0.04486035, 0.0694429) * inp_3_2_0; - result1 += M4(0.07656472, 0.061655745, 0.1003838, 0.061613757, -0.18365191, -0.076470405, -0.10932672, 0.018295873, 0.044424754, 0.10816937, -0.029570144, 0.06456166, 0.28043348, 0.1569226, -0.010579585, -0.022842012) * inp_3_0_1; - result1 += M4(-0.1457813, -0.033974994, 0.051456187, -0.08848945, 0.33910355, -0.063087836, -0.056278896, -0.14184383, 0.04622576, -0.09980941, 0.17526813, -0.04372839, -0.2766497, 0.3688827, -0.048327815, 0.15496252) * inp_3_1_1; - result1 += M4(0.019397449, 0.04054585, -0.03832291, -0.053395923, -0.010315072, 0.036141377, 0.01020921, 0.032436173, -0.031719822, -0.059594758, 0.012420921, -0.056485206, -0.06992938, -0.4688838, -0.029532025, -0.08884117) * inp_3_2_1; - result1 += M4(0.13726594, 0.06981075, -0.02197747, -0.10945096, -0.08533751, 0.01077561, 0.02620247, 0.009189, -0.047181055, -0.04993691, -0.040256213, -0.012520252, -0.12268881, -0.106644295, 0.23557284, -0.013439731) * inp_3_0_2; - result1 += M4(-0.087284684, -0.041448455, -0.023808671, 0.2137635, 0.009145852, -0.0121870395, -0.05859107, -0.05132722, -0.0021463484, 0.053469438, -0.029116249, 0.10084807, -0.009684047, -0.23845845, -0.18750598, -0.0141837085) * inp_3_1_2; - result1 += M4(-0.057390634, 0.011502173, 0.100918666, -0.10523019, 0.02546328, 0.18196598, 0.058930792, -0.10174205, 0.031569313, 0.060081102, 0.05052914, -0.019464511, 0.06625804, 0.3027454, -0.017831849, 0.055842422) * inp_3_2_2; - result2 += M4(0.048401, 0.010457286, 0.10615595, -0.015960513, 0.01436165, 0.13536432, -0.04354507, 0.15591969, -0.07679796, 0.025946034, -0.0547209, -0.009420165, -0.15810594, -0.12670669, -1.8793825, -0.945759) * inp_3_0_0; - result2 += M4(0.07344445, 0.122381985, -0.13220039, -0.015782509, 0.018498057, 0.07404361, -0.046128277, 0.038325205, 0.07567834, 0.0032700424, 0.15257852, 0.0800536, -0.0697215, -0.109767824, 0.03588201, 0.0020669473) * inp_3_1_0; - result2 += M4(0.088903084, 0.15954436, -0.06742948, 0.1184555, 0.12918748, 0.06685744, -0.06795341, 0.09680603, 0.010840433, -0.023055708, -0.008906924, 0.028284231, -0.06900154, -0.101653926, -0.03126233, 0.10154776) * inp_3_2_0; - result2 += M4(-0.17031875, 0.043836556, 0.024054531, 0.10064961, -0.01885957, -0.03745506, 0.09347482, -0.021063862, -0.041169718, -0.022611119, -0.0041668485, -0.009198656, 0.3631841, -0.22319758, -0.03458737, -0.037733827) * inp_3_0_1; - result2 += M4(-0.06772473, 0.002851483, -0.02702811, 0.4627054, 0.035274934, 0.109035805, 0.34211168, 0.17485684, 0.032376494, 0.03904631, -0.005110629, -0.097648576, 0.08375805, 0.01947277, 0.06281295, -0.04415618) * inp_3_1_1; - result2 += M4(-0.12755804, -0.021719642, -0.0536458, 0.002944098, -0.05757711, -0.08049594, 0.038666703, 0.06651493, -0.02840394, 0.072007425, 0.06560716, 0.03788276, 0.06644833, 0.055841863, -0.028713593, 0.016308472) * inp_3_2_1; - result2 += M4(-0.17176302, 0.07364913, -0.03356221, 0.14571264, -0.020846384, -0.048687752, -0.054971583, -0.043598082, 0.040896054, 0.02241982, 0.015945142, -0.077173874, 0.119871624, 0.060108412, 0.017309517, 0.006981804) * inp_3_0_2; - result2 += M4(-0.09758634, -0.029076004, 0.0890852, 0.060474917, 0.12633894, -0.033396948, -0.024041882, -0.0060905037, 0.025435926, 0.013359907, -0.00023620269, 0.00744141, -0.10661568, -0.07602517, -0.10066449, -0.009743779) * inp_3_1_2; - result2 += M4(-0.1294338, -0.007561179, -0.22532, 0.0042642727, 0.020862538, 0.0068704053, 0.04875048, 0.011978193, 0.020573478, 0.028029349, -0.033522267, 0.063017346, -0.05232963, 0.039960828, 0.083793595, -0.021264963) * inp_3_2_2; - result3 += M4(0.1555081, -0.03724454, -0.083808094, 0.111123376, -0.09500522, 0.045674328, -0.21993357, 0.033019986, 0.019868055, 0.03749911, 0.007533484, -0.03673407, -0.55468816, -0.5771132, -0.43972653, 0.26768875) * inp_3_0_0; - result3 += M4(0.0879189, -0.020198712, 0.08439903, 0.108596556, 0.070379786, -0.010553367, 0.014719776, -0.077312455, 0.08991858, -0.056058474, 0.028315438, -0.041584603, 0.25654116, 0.080755584, -0.11262604, 0.1020525) * inp_3_1_0; - result3 += M4(0.06888355, -0.0535523, -0.10034253, -0.039436273, -0.06985231, 0.0051379967, -0.029141285, -0.0562646, 0.067592904, 0.0029614535, 0.008860364, -0.02082596, -0.1344299, -0.028012034, -0.06523094, -0.091600284) * inp_3_2_0; - result3 += M4(-0.01719606, 0.026340505, 0.12280919, 0.10676227, -0.006416556, -0.036854077, -0.11051513, 0.17424403, 0.11886585, -0.046527226, 0.013657661, -0.053723544, -0.034496423, 0.18901262, -0.29559115, 0.2709022) * inp_3_0_1; - result3 += M4(0.28292638, 0.096855275, -0.08531709, -0.20435618, 0.10923481, 0.05283494, 0.1824189, -0.11217704, -0.04538161, -0.021881856, 0.09900563, 0.14495343, 0.033594746, 0.35605243, 0.31956923, -0.3262553) * inp_3_1_1; - result3 += M4(0.034743957, -0.056341235, 0.1209838, 0.06772071, 0.097947545, 0.021129949, 0.03918012, 0.0075649116, -0.07631773, 0.00071916287, 0.06511134, 0.0109486375, 0.047653943, 0.09503581, -0.06288393, 0.102238424) * inp_3_2_1; - result3 += M4(-0.019787202, 0.04247501, 0.12611373, -0.039756313, -0.13031532, 0.0074847294, -0.09632768, 0.056945175, 0.011510852, -0.014236425, 0.0121115, -0.047466192, 0.0026160968, 0.015195236, 0.08688487, -0.13048987) * inp_3_0_2; - result3 += M4(0.011922017, -0.040727507, 0.118848994, 0.00953689, -0.165974, 0.004633829, -0.04331895, -0.073480025, 0.028550532, 0.044204075, -0.066303216, 0.06444076, -0.09267407, 0.0626365, -0.20238824, 0.16333474) * inp_3_1_2; - result3 += M4(-0.01857171, -0.008621009, -0.054400507, -0.14170729, -0.005015932, -0.04881697, -0.030246232, -0.008143024, -0.01884586, -0.026514944, 0.003788601, -0.060649563, 0.09565807, -0.028913192, 0.097076714, -0.019540707) * inp_3_2_2; - result4 += M4(-0.18114932, 0.02140818, 0.016176756, 0.05789516, 0.31094024, 0.11641281, 0.25946087, -0.21094716, 0.04780183, -0.03082455, 0.0066994634, 0.046175454, 0.007811417, 0.19963393, 0.95683265, 2.3154407) * inp_3_0_0; - result4 += M4(0.022482906, -0.10557376, -0.13497931, -0.12813355, -0.22937997, 0.12935153, -0.04298075, -0.075419456, -0.040094003, 0.14808881, 0.040795475, -0.010447166, 0.008752226, -0.08149401, 0.009286475, 0.095943965) * inp_3_1_0; - result4 += M4(0.09761956, 0.15695432, 0.12567873, 0.17347771, -0.19428809, 0.012556569, 0.12693614, -0.08456924, -0.015522652, 0.005452989, 0.05560473, 0.016288346, -0.036735322, 0.104225494, -0.020187149, 0.14822799) * inp_3_2_0; - result4 += M4(0.027398039, -0.08474282, 0.042534925, -0.019844316, 0.027953062, 0.02630413, 0.061584856, -0.03941869, -0.116407104, -0.040396158, 0.009337222, 0.04567556, 0.11280234, -0.04451639, 0.17864928, 0.18086901) * inp_3_0_1; - result4 += M4(-0.0811594, 0.085324734, -0.25412893, -0.19661549, 0.26668623, 0.06688183, -0.47062737, 0.09065609, 0.20505854, -0.10294042, -0.010707813, -0.065027006, 0.004826583, -0.1321636, -0.3098811, -0.15271185) * inp_3_1_1; - result4 += M4(0.09264006, -0.032731194, 0.09240036, 0.098611996, 0.12010023, -0.11862617, -0.02837475, 0.056740597, 0.012724459, -0.05363478, 0.10584621, 0.015040541, -0.05907198, 0.11391599, 0.19143502, -0.0027243383) * inp_3_2_1; - result4 += M4(-0.051688515, -0.09113618, 0.0044878987, -0.03418274, 0.027030036, -0.018979566, 0.114926, -0.0074516498, -0.0038681186, 0.01432103, -0.06287076, 0.0051641213, 0.03317922, -0.05618104, -0.22950897, 0.10702738) * inp_3_0_2; - result4 += M4(0.099349804, -0.1078796, -0.15446414, -0.14759573, 0.056190792, -0.0043055234, 0.104098715, 0.07413917, 0.087387614, 0.12376164, 0.046574812, 0.07932033, -0.04121102, 0.23887165, 0.32481006, 0.046419457) * inp_3_1_2; - result4 += M4(0.07932458, 0.09117578, 0.0904015, 0.20245345, 0.10085533, -0.021833034, 0.036700178, -0.011505421, 0.049821403, 0.020698125, 0.02338953, -0.04532784, 0.0539348, -0.21502109, -0.13265319, -0.10452221) * inp_3_2_2; - result5 += M4(0.057502948, 0.061667062, 0.016759343, 0.07019181, -0.106142744, 0.38271058, -0.09599142, -0.12504996, -0.049644973, -0.03594548, -0.034835182, 0.05305433, -0.13018999, 1.124966, -1.3024439, 0.42875156) * inp_3_0_0; - result5 += M4(-0.04561249, -0.17226759, 0.12673031, 0.022335723, 0.09045587, 0.44465643, -0.11759979, -0.014856056, -0.011209363, 0.09603372, -0.0787383, -0.022970265, 0.024512213, -0.19467488, -0.08090151, -0.12580127) * inp_3_1_0; - result5 += M4(0.008720371, 0.17581697, -0.03552383, -0.14504492, 0.08120021, 0.16028371, -0.02451649, -0.061432727, -0.009191608, 0.049498986, 0.079434305, 0.08837059, -0.037092987, 0.067979515, -0.06960691, -0.13317259) * inp_3_2_0; - result5 += M4(0.081595644, 0.081433855, 0.010499252, -0.036366597, -0.04942491, 0.5841186, 0.16212952, 0.02753932, 0.020163834, 0.05562324, 0.07950786, 0.066806674, 0.15624711, -0.050528847, 0.058894668, -0.4304952) * inp_3_0_1; - result5 += M4(0.054010607, -0.10567245, -0.007959134, 0.08476525, -0.020621965, 0.8253278, 0.5853185, -0.017596468, -0.0468934, -0.0055799703, 0.08596, 0.051026158, -0.051725596, 0.12566589, -0.4617202, 0.16609883) * inp_3_1_1; - result5 += M4(0.10296848, 0.021544961, 0.016568225, -0.15253365, -0.023999596, 0.21428645, -0.15082721, 0.12700182, 0.005449154, -0.10447164, 0.043784138, -0.084021024, -0.024616443, -0.04020064, 0.36423302, 0.23622979) * inp_3_2_1; - result5 += M4(-0.019628113, 0.10561936, -0.045276668, -0.059872933, -0.06817614, 0.22441876, 0.007887333, 0.015552666, 0.043620065, -0.072342634, -0.04876014, 0.06447673, -0.050164882, 0.053542018, -0.24243161, 0.11103892) * inp_3_0_2; - result5 += M4(-0.010120241, -0.096028104, -0.030988105, 0.0186527, -0.022566989, 0.1167646, 0.06965991, 0.025109788, -0.011098491, 0.06369983, -0.0419245, -0.08365385, 0.0057414896, -0.008070406, 0.50393313, -0.04211062) * inp_3_1_2; - result5 += M4(0.008925139, -0.006516404, -0.19470415, 0.13029473, -0.10724351, 0.114959955, -0.13923648, 0.05700529, 0.0074673067, -0.06513207, -0.06382995, 0.031563938, 0.037139107, -0.043501556, -0.25039876, -0.09979714) * inp_3_2_2; - result6 += M4(0.13183357, -0.0685768, -0.003364797, 0.10596008, -0.2655169, -0.2845787, 0.0051305257, -0.08047208, -0.022705482, -0.03448457, -0.019370059, 0.052688114, -0.73651034, -1.1172142, 0.09569214, 1.147398) * inp_3_0_0; - result6 += M4(-0.18874471, -0.012151557, 0.027356902, 0.088512786, -0.11636543, 0.11325189, 0.11401201, -0.078768514, 0.051422402, -0.038042262, -0.03034242, 0.02788981, 0.037089523, 0.04860719, 0.008045657, 0.09943066) * inp_3_1_0; - result6 += M4(-0.0012201817, 0.12261793, -0.05735522, 0.16233231, -0.034362648, 0.056346737, -0.0071808943, -0.020067843, -0.026238838, -0.03850114, -0.042992923, -0.026584214, 0.01577008, 0.041349415, -0.023376701, -0.011545091) * inp_3_2_0; - result6 += M4(0.0407302, -0.017451532, -0.08599833, 0.2276884, -0.09700851, -0.02604339, -0.016260792, -0.11170316, -0.060572635, -0.116899386, 0.037595097, -0.06492634, -0.11159082, 0.24332798, -0.11609543, -0.093728885) * inp_3_0_1; - result6 += M4(0.008165304, -0.015540151, -0.492284, 0.22752689, -0.12539324, 0.12750767, -0.007828959, 0.12108024, 0.047894582, 0.0081966, 0.108297385, 0.011522855, -0.107434936, -0.2154524, -0.192709, -0.16339536) * inp_3_1_1; - result6 += M4(0.1569919, -0.12034444, -0.035937924, 0.16221236, -0.018787507, 0.035016194, 0.047026344, 0.038144544, 0.05721828, 0.08232297, -0.04861749, -0.031205865, 0.18768746, 0.025578985, -0.10899324, 0.119344324) * inp_3_2_1; - result6 += M4(-0.05233636, 0.035596572, -0.12308809, 0.03233594, -0.0020253353, 0.06268286, 0.006158363, -0.008008608, -0.0253648, 0.020287864, 0.056382015, -0.017452821, 0.10307367, -0.03392304, 0.0138347605, 0.04978332) * inp_3_0_2; - result6 += M4(-0.032000426, -0.079963095, 0.023668919, -0.098663434, 0.12179241, -0.037346005, 0.008348811, 0.07692611, 0.10620806, -0.045953143, -0.050497156, -0.045345847, 0.12713122, 0.15527378, 0.013317257, 0.10662805) * inp_3_1_2; - result6 += M4(0.14502594, -0.103895895, -0.061423052, 0.013106004, 0.03870256, -0.04674004, 0.037784573, 0.024771444, -0.06400123, -0.05290131, -0.032816786, -0.034518547, -0.21931285, -0.09812159, 0.01890469, -0.05288997) * inp_3_2_2; - result7 += M4(0.07233312, -0.046582248, 0.2784537, -0.06462938, 0.036965515, 0.060767014, -0.3364919, -0.08271949, -0.008522387, 0.01818559, -0.075079195, -0.033775598, -2.2845144, 0.7554768, 1.063004, 0.5793396) * inp_3_0_0; - result7 += M4(-0.1663902, -0.061462242, 0.1963004, -0.032433696, 0.05668043, 0.007871934, 0.0050503057, 0.059519272, 0.054455597, -0.019779637, -0.04539206, 0.07735627, -0.116058804, 0.21242124, 0.010074689, 0.090101354) * inp_3_1_0; - result7 += M4(-0.102266766, -0.14984554, 0.24127428, 0.0014910589, -0.05628581, -0.019510163, 0.11317453, 0.028666187, 0.035553005, 0.0046505593, 0.0056852247, -0.029953867, 0.09505077, 0.029150032, 0.059348762, -0.08360827) * inp_3_2_0; - result7 += M4(-0.0384542, -0.034784086, 0.20640644, 0.06396207, 0.19178003, -0.012204543, 0.009071525, -0.23519501, 0.1437744, -0.0005086697, 0.02712074, 0.03989527, 0.17912261, 0.096137345, 0.047170248, 0.04497029) * inp_3_0_1; - result7 += M4(0.19027263, -0.29822338, 0.8178429, -0.19726944, -0.1483865, -0.15237442, -0.6372174, -0.17307808, -0.0020504203, 0.1607978, -0.019121233, -0.041901182, 0.13929054, 0.21972741, 0.07070371, -0.14865905) * inp_3_1_1; - result7 += M4(-0.10169179, -0.033009373, 0.14187475, 0.018824438, -0.014420235, -0.038725648, 0.041112997, 0.091742694, -0.02598256, -0.020774372, 0.011639721, 0.097475685, -0.2068942, -0.019979918, -0.041526254, 0.11178287) * inp_3_2_1; - result7 += M4(-0.0032222753, -0.020519845, 0.12049059, 0.0012252103, 0.014761344, 7.745201e-05, -0.0068900324, 0.14855804, -0.076656364, 0.04295163, -0.023564175, -0.039016467, -0.12474921, 0.029710816, 0.016535856, -0.068068996) * inp_3_0_2; - result7 += M4(0.004348131, -0.022431096, 0.0666243, -0.07138664, -0.032642957, -0.004479147, 0.0039330292, -0.12329353, -0.031076761, -0.04902474, -0.012809761, 0.07962872, 0.031903848, 0.06315789, -0.00830329, 0.031762466) * inp_3_1_2; - result7 += M4(0.029925706, -0.014971277, 0.11419478, 0.089479305, -0.046310183, -0.016204754, 0.04155515, -0.05087867, -0.020297104, -0.025846753, -0.005391528, -0.021830704, 0.10947169, -0.012422593, -0.025585085, 0.0033176525) * inp_3_2_2; - const V4 inp_4_0_0 = inp[4][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_4_1_0 = inp[4][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_4_2_0 = inp[4][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_4_0_1 = inp[4][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_4_1_1 = inp[4][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_4_2_1 = inp[4][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_4_0_2 = inp[4][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_4_1_2 = inp[4][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_4_2_2 = inp[4][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.040254124, 0.023784833, 0.016969068, 0.06669444, 0.10167307, 0.07268246, -0.065858126, 0.04780328, 0.21444958, 0.008188026, -0.37636676, -0.07614952, 0.08462594, 0.071015805, 0.064497784, -0.077906236) * inp_4_0_0; - result0 += M4(0.065531984, 0.14337476, -0.12027812, -0.00444513, -0.011623902, -0.023195753, 0.036224697, -0.077126175, 0.24384212, -0.11727269, -0.016289476, 0.02916831, -0.107921265, -0.0669281, 0.093781605, -0.062601455) * inp_4_1_0; - result0 += M4(0.07672706, -0.13123105, -0.036716808, 0.029415945, 0.014386412, 0.017434973, -0.033882633, 0.09211911, -0.075761616, 0.113707185, -0.0870637, -0.11365591, 0.030938618, 0.05503954, 0.18336627, -0.01053756) * inp_4_2_0; - result0 += M4(-0.059879273, -0.06497769, 0.097304806, 0.031407285, 0.08192102, -0.07759363, -0.17978302, 0.055841055, 0.14720967, -0.15387613, -0.20784663, 0.1310452, 0.11918311, 0.019587727, -0.14397198, 0.047314066) * inp_4_0_1; - result0 += M4(0.072081834, 0.02874765, 0.15299614, -0.10652579, 0.11671089, 0.19809419, -0.020578058, 0.1970861, 0.141228, -0.1301701, -0.24728371, -0.020862784, -0.053485673, -0.24631651, -0.011359131, 0.060595945) * inp_4_1_1; - result0 += M4(-0.027404897, -0.0050776633, -0.061909687, -0.009668925, -0.07316057, 0.09342875, 0.13309799, 0.033108972, -0.11369283, 0.058712542, 0.06881387, -0.004706108, -0.08327273, 0.033919197, 0.0736478, 0.06002427) * inp_4_2_1; - result0 += M4(-0.026296785, -0.015915154, 0.034939528, -0.011709156, 0.0079590995, -0.04153017, -0.07370495, 0.07317423, -0.1111204, -0.058003746, 0.040929377, 0.035913758, -0.019783784, 0.057501335, 0.0789353, -0.078544766) * inp_4_0_2; - result0 += M4(0.016062208, 0.044562172, 0.09162558, 0.013052973, 0.14236775, -0.04207627, 0.07501087, 0.078348465, -0.007054615, 0.13201872, 0.09181997, 0.003803693, 0.0005581723, 0.04514005, -0.22244525, -0.012113264) * inp_4_1_2; - result0 += M4(0.0139282225, 0.0024784468, -0.016542312, 0.00057138613, 0.016903913, -0.034509897, -0.014836745, 0.07536861, -0.16109914, 0.11503454, 0.14188123, -0.040595885, -0.0005724403, 0.05844858, -0.10581434, 0.06386525) * inp_4_2_2; - result1 += M4(0.056380324, -0.014097999, 0.048571397, -0.07120334, 0.02255106, -0.10521682, -0.1785841, 0.07687957, -0.26800177, -0.26358414, -0.2330984, 0.23577537, -0.31038895, 0.10396646, -0.061946068, -0.052372392) * inp_4_0_0; - result1 += M4(-0.009649826, -0.0827058, -0.057233457, -0.08100835, -0.08596979, -0.114758216, 0.061034787, 0.06265703, 0.14481278, -0.22437643, 0.008767626, 0.17491634, -0.037204728, 0.11757873, 0.11193847, 0.037508) * inp_4_1_0; - result1 += M4(-0.013829306, 0.015193981, -0.0698706, -0.0031210757, 0.03382672, 0.14626767, -0.03642308, 0.21278192, 0.24759321, 0.0058563733, 0.10873221, -0.040442366, -0.120922066, 0.013237577, 0.021536343, -0.018291734) * inp_4_2_0; - result1 += M4(-0.001584705, 0.017861264, 0.077201724, 0.02429901, -0.07885612, -0.08545737, -0.04387412, 0.07849732, -0.2472524, -0.16671489, -0.07699655, -0.068864346, 0.28467104, 0.04793587, 0.06700799, -0.03690919) * inp_4_0_1; - result1 += M4(-0.016972855, -0.027317395, 0.08937238, -0.08193722, -0.21248464, -0.03267037, -0.031292073, -0.1795831, -0.08036117, 0.0033038876, -0.21893688, -0.061557226, 0.18104647, 0.009221641, -0.17897351, -0.12037378) * inp_4_1_1; - result1 += M4(-0.08828859, -0.077611454, 0.14840798, -0.042631716, 0.22965327, -0.15689658, 0.03505325, 0.1594837, 0.061658513, -0.06473623, -0.00044867903, 0.009177837, 0.052174944, -0.07058418, 0.0009045427, 0.038987167) * inp_4_2_1; - result1 += M4(0.06816083, 0.010074652, -0.007010727, 0.08498377, -0.022468526, -0.037031803, 0.025970647, 0.087351106, 0.05918878, -0.052506417, 0.06836136, 0.011866433, -0.025732849, 0.14411545, 0.02688138, 0.044894334) * inp_4_0_2; - result1 += M4(0.14771608, -0.07294277, -0.04770057, 0.07690571, -0.0028288786, -0.041936386, -0.011457716, -0.09285959, 0.14629431, 0.122282304, -0.13238996, -0.059781138, -0.020371092, 0.07049048, 0.079961024, -0.05905107) * inp_4_1_2; - result1 += M4(0.012214621, 0.041557748, -0.027715644, 0.07767134, 0.014521211, -0.04077136, 0.041689586, -0.023560915, 0.08131704, -0.027351148, -0.12832664, 0.10837947, 0.06500553, -0.13725108, 0.069873825, 0.021006638) * inp_4_2_2; - result2 += M4(-0.016417256, -0.054461617, 0.13332182, -0.0830487, -0.07646377, -0.054517608, 0.14341286, -0.03387982, 6.961904e-05, 0.0828152, 0.12991548, -0.13555405, -0.056260675, 0.098154396, -0.12730925, -0.080292545) * inp_4_0_0; - result2 += M4(-0.05149783, 0.03463677, -0.053025514, -0.018780118, -0.29047903, 0.068862304, 0.027584314, 0.046060648, 0.23800845, 0.18213424, -0.020995546, 0.28319013, -0.03708082, -0.07812496, 0.21831456, -0.16609986) * inp_4_1_0; - result2 += M4(-0.012538801, 0.12186098, -0.02847482, -0.0027085869, -0.09639111, 0.048150957, -0.083314784, 0.006533883, 0.111615844, 0.010944576, 0.089984044, -0.0954402, -0.0037098385, -0.044876114, 0.009311254, -0.038764834) * inp_4_2_0; - result2 += M4(-0.13063143, -0.031683408, 0.104365185, -0.06675567, -0.053277943, -0.10100952, 0.15071975, 0.0011126195, -0.06907863, -0.08334479, 0.31569028, 0.06571393, 0.060176264, 0.1742087, -0.100910276, 0.03049939) * inp_4_0_1; - result2 += M4(-0.1893854, -0.03995117, -0.042437945, -0.248877, 0.089425266, 0.190167, -0.06470772, 0.13507998, -0.17300014, -0.14408088, -0.1814986, -0.3994995, 0.22721918, 0.25103697, 0.06335937, 0.36730596) * inp_4_1_1; - result2 += M4(-0.1423151, 0.035068993, 0.05811014, -0.12471467, -0.09236915, 0.106061116, 0.044420123, -0.0062890104, -0.044488434, -0.049489286, -0.068022326, 0.0080442345, 0.07412932, -0.09116495, 0.05072049, 0.1380264) * inp_4_2_1; - result2 += M4(-0.08094104, -0.02558297, 0.029419282, 0.02211813, -0.05548028, -0.03104562, 0.046309333, 0.07639432, -0.0067626317, -0.0058812485, 0.039054487, -0.023086097, 0.018449124, 0.018371595, -0.08233855, 0.06776545) * inp_4_0_2; - result2 += M4(-0.12933193, 0.08165892, 0.12952228, 0.009017148, -0.0702291, 0.037656046, 0.056239862, -0.01595208, 0.072816886, -0.036972765, 0.037874095, 0.053464934, 0.059997946, -0.075837925, -0.10976563, 0.046708155) * inp_4_1_2; - result2 += M4(-0.096606866, 0.0049507115, -0.06356404, -0.041436788, -0.08936857, -0.013143858, -0.029884776, 0.059120923, -0.04126984, 0.069472365, 0.0018569627, -0.13340972, 0.041536234, 0.023160797, -0.009154675, 0.02276351) * inp_4_2_2; - result3 += M4(-0.046569087, -0.037572913, 0.040114965, 0.04023332, -0.22488907, 0.030811662, -0.04991544, 0.08694762, 0.19545127, 0.15012771, 0.090112105, 0.09842437, 0.047185127, 0.06985886, 0.06855831, -0.00024043526) * inp_4_0_0; - result3 += M4(0.02661323, -0.0051871394, -0.03923625, -0.12224592, -0.07059724, -0.15135266, -0.08348933, -0.215152, -0.10680237, -0.17321731, 0.11948585, 0.10413774, 0.09362243, 0.015958473, 0.051215254, -0.115710996) * inp_4_1_0; - result3 += M4(0.099804565, -0.031136183, -0.030753588, 0.041192986, -0.21599917, 0.009704519, -0.019216605, -0.048237585, 0.06019497, -0.0332217, -0.22877885, -0.077917784, -0.15717766, 0.026479824, 0.13542108, -0.0548648) * inp_4_2_0; - result3 += M4(0.08888008, 0.03954044, 0.08907399, 0.03885218, -0.24962376, -0.049849823, -0.20030631, 0.22282915, -0.15589108, -0.14870428, -0.105751395, 8.2473925e-05, 0.06426606, 0.006069696, -0.04100779, 0.16185671) * inp_4_0_1; - result3 += M4(-0.03390535, 0.022124652, -0.1647943, -0.054672956, -0.35023, 0.057229776, -0.0230345, -0.48731413, 0.043159362, 0.09309281, 0.0833395, 0.0729439, 0.117533214, -0.11978879, -0.081536785, 0.0395116) * inp_4_1_1; - result3 += M4(-0.01522393, -0.055599768, -0.040624555, -0.0574044, -0.09277572, -0.033566214, 0.058392275, 0.10123689, 0.087351374, 0.0692019, -0.037968222, 0.10588013, 0.07073144, -0.0117773535, 0.010938989, 0.08280045) * inp_4_2_1; - result3 += M4(-0.043670308, 0.0023391445, 0.07342367, 0.012054279, -0.12345156, 0.044143975, 0.07273415, -0.014272413, -0.03295963, 0.029572686, 0.04442286, -0.07135756, 0.04097037, 0.043416295, -0.10699765, 0.0903346) * inp_4_0_2; - result3 += M4(0.037999824, -0.010960676, 0.064092875, 0.021929376, -0.07243741, -0.008380336, -0.12068307, -0.035604183, -0.037169106, 0.055681407, -0.042911265, 0.08133999, 0.042571917, -0.00044882196, -0.024063893, 0.093770884) * inp_4_1_2; - result3 += M4(-0.03408759, 0.030898253, 0.009265578, 0.029569872, -0.11081649, 0.044681963, -0.013290576, -0.07831191, 0.12133847, -0.03399961, 0.066253714, 0.03040812, 0.06263168, -0.01846427, -0.0024431127, 0.05073106) * inp_4_2_2; - result4 += M4(-0.050964892, -0.0063690776, -0.0087824995, 0.08168006, 0.05169279, -0.027573042, -0.06591573, -0.1064297, 0.40523428, 0.05384965, -0.38498634, -0.53910744, 0.16302128, -0.08516283, -0.050172657, -0.01885089) * inp_4_0_0; - result4 += M4(0.07141645, 0.020458274, -0.082033426, -0.080226235, 0.25762627, 0.13549428, -0.050243635, -0.16507979, -0.34844458, 0.094990686, -0.0069557675, -0.043390222, 0.06248015, -0.19814742, -0.02933099, 0.057173267) * inp_4_1_0; - result4 += M4(0.034913354, -0.074864, -0.007230885, 0.061088365, -0.09103237, 0.099735826, -0.0033827743, -0.11815412, -0.103790835, -0.092190355, 0.05633921, 0.015630541, -0.043054793, -0.13092637, -0.010361383, -0.20548466) * inp_4_2_0; - result4 += M4(-0.06581607, 0.014016728, 0.15540999, 0.007427462, 0.15189081, -0.08360716, 0.038675684, -0.19303715, 0.45133808, -0.10893691, -0.20862585, -0.06778942, -0.09668482, -0.060952112, -0.04454259, 0.051577467) * inp_4_0_1; - result4 += M4(-0.009876462, -0.060736664, -0.11327267, 0.14533466, 0.03249, 0.09558259, -0.091297, 0.009654489, -0.32489312, 0.289976, 0.37581176, -0.1458279, -0.008925836, -0.014438416, 0.3333878, 0.0562778) * inp_4_1_1; - result4 += M4(-0.008701809, 0.059735037, 0.01050907, 0.08863172, -0.06171705, -0.08944047, -0.020317025, -0.02864578, 0.09044898, -0.18081737, 0.04534782, -0.05610484, -0.017006055, 0.02615483, -0.032696374, -0.07421204) * inp_4_2_1; - result4 += M4(0.011054926, 0.08320686, 0.07633896, -0.005137874, -0.083826765, 0.045450486, 0.04663647, 0.11206987, -0.009435335, 0.0448625, 0.021221919, 0.30104306, -0.0714608, 0.12832212, -0.13814387, 0.014349162) * inp_4_0_2; - result4 += M4(-0.012469525, 0.08862264, -0.029788077, -0.04284809, 0.038979873, 0.06264196, 0.04764523, -0.08872399, -0.058976427, 0.11027174, 0.11862548, 0.011269148, -0.049080648, -0.067356735, -0.027819974, -0.070202574) * inp_4_1_2; - result4 += M4(-0.014746877, -0.01803976, -0.04730612, 0.016129607, 0.019371342, 0.045644555, 0.047654536, 0.08038766, -0.13981853, -0.29884756, -0.046391927, -0.05194912, -0.26105058, 0.06291727, -0.07431729, -0.11981642) * inp_4_2_2; - result5 += M4(0.032250796, -0.006136215, 0.0071300603, -0.01468875, -0.061703444, -0.068305396, 0.017626345, 0.1022067, -0.04355076, -0.24671909, 0.047739998, 0.23351733, -0.22185671, -0.11264243, 0.11192195, -0.024310715) * inp_4_0_0; - result5 += M4(0.118891105, -0.103900015, -0.019823797, 0.053338822, -0.07843818, 0.1693801, 0.07466978, 0.12700436, 0.12208045, -0.29558787, 0.11044142, 0.109554164, -0.049587514, -0.16902561, 0.14328432, 0.056532238) * inp_4_1_0; - result5 += M4(0.011623804, 0.17211536, -0.04219695, -0.05897373, -0.076629765, -0.020362107, -0.07631434, -0.28538394, 0.0033976177, -0.068981126, 0.22173731, 0.28569517, 0.043858327, -0.053102672, 0.013904859, -0.06938083) * inp_4_2_0; - result5 += M4(-0.074095815, -0.02781768, 0.015512248, 0.00013527388, 0.026245926, 0.06330022, -0.0013558666, 0.06941879, 0.046700757, -0.18201411, -0.049468316, 0.14159635, 0.077171825, 0.030884406, -0.16131774, 0.16664876) * inp_4_0_1; - result5 += M4(-0.02153901, -0.0788423, -0.0088931965, -0.010960566, -0.025125807, 0.072461754, 0.09803667, -0.031877972, -0.052463364, -0.14583865, -0.058291618, 0.061922275, -0.11568664, -0.27605262, -0.34012812, 0.15242305) * inp_4_1_1; - result5 += M4(0.037484467, 0.23888843, -0.16812752, 0.07055779, 0.10309636, 0.0051912637, 0.0779793, -0.2511514, -0.031667314, -0.33499163, -0.102766894, 0.118041776, -0.03721888, -0.094319336, -0.045052636, 0.09336235) * inp_4_2_1; - result5 += M4(0.010764323, 0.05378665, 0.057596494, 0.009610775, 0.036740568, 0.067193605, 0.022911252, 0.043731026, -0.030127859, -0.0049977936, 0.0070923106, 0.024089418, 0.03145476, -0.16820632, 0.048066378, -0.037091974) * inp_4_0_2; - result5 += M4(0.051468357, 0.036376934, 0.12916705, -0.030121034, -0.036983605, -0.020564575, 0.04654972, -0.12568536, 0.12536864, -0.14805642, 0.18087967, 0.021888146, 0.012633722, -0.11187144, -0.013384568, -0.020758668) * inp_4_1_2; - result5 += M4(-0.00792868, -0.016597643, -0.013848122, -0.034259252, -0.017335681, 0.052992567, -0.0307149, 0.0083477665, 0.00092679006, -0.0057602488, 0.018168533, -0.17287752, -0.03981724, -0.038467154, 0.21104631, -0.1606008) * inp_4_2_2; - result6 += M4(-0.009131005, 0.014733754, -0.00081833376, 0.12511231, 0.0029927364, 0.11442367, -0.020121034, -0.013345183, 0.06092362, -0.037546024, -0.0381215, -0.10909266, -0.19103934, 0.12197996, -0.020795433, -0.08174677) * inp_4_0_0; - result6 += M4(0.004873129, 0.023221698, -0.0075842296, 0.08183805, -0.12940039, -0.11669385, -0.014931873, 0.28318465, -0.3532139, -0.07960185, -0.18364964, -0.033198744, 0.037171524, -0.009985573, -0.016391862, -0.080576636) * inp_4_1_0; - result6 += M4(0.022729274, -0.06378711, -0.087427616, 0.083616465, -0.04179661, 0.08040135, 0.005251388, 0.20018259, -0.07717142, 0.044052772, -0.0049221306, -0.09187589, -0.019494846, -0.048276424, 0.05306421, -0.009243385) * inp_4_2_0; - result6 += M4(-0.0056404485, -0.06900967, -0.030558696, 0.12786116, -0.01205978, 0.0010949586, 0.012845277, 0.25668174, -0.19131935, 0.20358385, 0.16306546, 0.25489923, 0.19067988, 0.01745041, -0.0631158, 0.022203408) * inp_4_0_1; - result6 += M4(0.14979564, -0.011132069, -0.14238566, 0.09115176, -0.023083497, -0.039652742, -0.24065877, 0.23451285, 0.020805638, -0.11751017, 0.03316455, -0.026526887, 0.020918002, 0.15013443, 0.045363884, -0.16161148) * inp_4_1_1; - result6 += M4(-0.010881028, -0.03167117, -0.042343885, 0.10072146, -0.15371601, 0.06876375, -0.123833925, 0.42735744, 0.087796554, 0.083633624, 0.05126713, -0.024334084, -0.072717465, 0.06827911, 0.04292081, 0.0063673365) * inp_4_2_1; - result6 += M4(-0.028490946, 0.05002069, -0.02204618, -0.044640772, -0.090053454, -0.049262587, -0.027209666, -0.063275926, -0.07621954, -0.109855615, -0.027028222, -0.1003809, 0.12692624, -0.07292208, -0.04753664, 0.059769783) * inp_4_0_2; - result6 += M4(-0.029767223, 0.08878309, 0.010713954, 0.04707242, 0.014943109, -0.029353192, -0.007129989, 0.1531851, -0.10317129, 0.049915142, 0.008560243, 0.09828438, -0.09224863, -0.024969222, -0.02663715, 0.04368934) * inp_4_1_2; - result6 += M4(0.020361172, -0.023847729, -0.027179327, -0.02753865, -0.0008414369, 0.0088028135, -0.041825175, -0.004697352, -0.07111818, 0.088140875, 0.016414322, 0.033908457, -0.07452986, 0.05907254, -0.013709542, 0.11067007) * inp_4_2_2; - result7 += M4(0.021681812, -0.030750737, 0.18476585, -0.003749813, 0.16888434, -0.058308363, -0.12307798, -0.14237708, 0.06910917, -0.13363609, -0.14190136, 0.4041437, -0.011541818, 0.021994412, -0.12350986, 0.056265596) * inp_4_0_0; - result7 += M4(-0.050269615, 0.00928146, 0.055963118, -0.062200494, -0.14255945, 0.008646936, 0.20283648, 0.119645126, -0.34805486, -0.14542794, 0.32493705, 0.44575825, 0.20927483, 0.07676889, -0.14827348, 0.09446498) * inp_4_1_0; - result7 += M4(0.04829281, -0.06975755, -0.0023850626, -0.02197501, 0.19673394, -0.014057803, 0.05769273, -0.05252644, -0.061207402, 0.06361852, -0.015541932, 0.13022926, 0.026130637, 0.041627593, -0.05050232, 0.032164518) * inp_4_2_0; - result7 += M4(-0.04244844, -0.029559886, 0.06135859, -0.006189883, 0.17864427, 0.069785506, 0.04571249, 0.059397392, -0.046227474, 0.1619696, 0.14253883, -0.029189803, 0.16609927, -0.030937657, -0.10636132, 0.17948565) * inp_4_0_1; - result7 += M4(-0.08251767, 0.07784834, 0.7014627, 0.11873651, 0.26067674, -0.020620268, 0.20609449, -0.18274817, 0.07013485, 0.17402351, 0.14962889, 0.19402057, 0.025927592, -0.2183671, -0.774127, -0.056905355) * inp_4_1_1; - result7 += M4(0.030634975, -0.021602899, 0.014386199, -0.0283986, 0.06459738, -0.032282196, -0.05953874, 0.014938481, -0.050415907, 0.02149553, 0.061751716, 0.029151276, -0.053461093, -0.016440889, -0.045815196, -0.021589514) * inp_4_2_1; - result7 += M4(-0.018579643, -0.013928521, 0.04059711, 0.018799204, 0.026039107, 0.015434944, 0.010800067, -0.06149939, -0.11396021, -0.0074720164, 0.051474486, -0.13716117, -0.047331557, -0.029034512, 0.0021339841, 0.004881613) * inp_4_0_2; - result7 += M4(0.023478985, 0.0017652238, 0.034198742, -0.11484811, 0.049793184, 0.011865047, -0.0037888451, -0.03928599, 0.0914984, 0.059655692, 0.004710378, -0.104674965, 0.018416632, 0.0063515217, -0.011539775, 0.083738476) * inp_4_1_2; - result7 += M4(0.05613091, 0.032254424, 0.039090075, 0.05022915, 0.034277514, -0.010730927, -0.013694739, 0.00819198, 0.039632495, -0.022745872, -0.058205273, 0.054558367, -0.00096786895, -0.033464693, -0.15401304, -0.00928237) * inp_4_2_2; - const V4 inp_5_0_0 = inp[5][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_5_1_0 = inp[5][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_5_2_0 = inp[5][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_5_0_1 = inp[5][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_5_1_1 = inp[5][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_5_2_1 = inp[5][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_5_0_2 = inp[5][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_5_1_2 = inp[5][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_5_2_2 = inp[5][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.08619677, 0.036900286, -0.116892405, 0.011974556, -0.082553364, 0.0005136975, -0.14039314, -0.11124557, 0.1017296, -0.0636615, 0.014600075, -0.098225586, -0.030448291, 0.027048595, 0.020503549, 0.10419736) * inp_5_0_0; - result0 += M4(-0.030211892, 0.005009583, -0.045740638, -0.0006228763, 0.032177363, -0.12431716, 0.1738094, 0.024685275, -0.068154715, 0.06498621, 0.009302527, 0.0068388344, 0.15763418, 0.018065883, -0.058523767, -0.030205872) * inp_5_1_0; - result0 += M4(0.13053875, 0.009920054, 0.06594053, -0.051577058, 0.041818477, -0.13544585, 0.04696698, 0.11088571, 0.008169006, -0.04149569, 0.096615806, 0.03728143, 0.04920373, -0.06610618, -0.08590689, 0.05377632) * inp_5_2_0; - result0 += M4(-0.034899484, -0.011562722, 0.034938134, 0.026265865, 0.09401387, -0.03699825, 0.15448712, -0.03410872, -0.0132615175, 0.0033167922, 0.021548234, -0.00710526, 0.0367564, 0.045955956, -0.11686238, 0.10612351) * inp_5_0_1; - result0 += M4(0.04787384, -0.049759652, -0.015672436, 0.01973098, 0.0009279048, 0.42768317, 0.47786838, 0.09878302, -0.006752275, -0.080970764, -0.1666149, 0.2091795, -0.032831315, -0.03630806, 0.17104104, -0.024154225) * inp_5_1_1; - result0 += M4(0.011805295, -0.05554486, 0.12038188, -0.15036483, 0.021195373, -0.025833873, 0.042569134, -0.02776842, 0.049497373, -0.122140035, -0.06910942, 0.053280406, 0.17084503, 0.0596893, 0.09137874, -0.060728308) * inp_5_2_1; - result0 += M4(-0.015280425, -0.07970221, -0.029302109, -0.00028694372, 0.07132711, 0.0033078126, -0.036094483, 0.027236689, -0.059174497, 0.057640098, 0.028451597, -0.08493248, 0.008739508, -0.06070656, 0.047622174, 0.12447161) * inp_5_0_2; - result0 += M4(-0.086618714, -0.065428205, 0.030763993, 0.048813242, -0.10350522, 0.03602564, -0.09272924, -0.08326141, -0.069374815, 0.038386133, 0.037556503, 0.0037637376, 0.22889163, -0.13463624, 0.029668197, -0.08118802) * inp_5_1_2; - result0 += M4(0.06832685, -0.036657475, 0.07739637, -0.04537427, 0.06613512, -0.07181327, 0.047433443, -0.13230465, 0.046102177, 0.008591806, -0.022872534, 0.013261598, 0.09463203, -0.09336329, -0.00518846, -0.04279869) * inp_5_2_2; - result1 += M4(0.05135006, 0.025457768, -0.03129044, 0.0020666912, -0.10564868, -0.12581445, -0.110445455, 0.15043573, -0.1462252, -0.08105915, 0.14857708, 0.02736926, 0.08703647, -0.063583605, -0.092477955, 0.04287587) * inp_5_0_0; - result1 += M4(0.03673766, 0.07331911, -0.08510954, -0.001231457, 0.04897351, 0.097367704, -0.08141365, 0.00096712564, -0.0049493443, -0.121343024, -0.13588259, 0.02030536, 0.05659328, -0.1299175, -0.13322386, 0.0472295) * inp_5_1_0; - result1 += M4(0.25919482, -0.06164661, -0.01407821, 0.010762975, -0.042549647, -0.0061904797, -0.27493402, 0.0070570423, -0.037698176, 0.005513425, -0.11604465, 0.042653922, 0.08904143, -0.03969584, -0.16537769, 0.11369742) * inp_5_2_0; - result1 += M4(-0.00891578, 0.0034845644, -0.08355478, 0.013851951, 0.04360689, -0.13414562, -0.055357795, -0.012069463, -0.061249644, -0.22317933, 0.08612118, 0.05169604, 0.09022559, 0.028068135, -0.2124163, -0.17308845) * inp_5_0_1; - result1 += M4(-0.020599598, 0.004951441, -0.11632279, -0.0691512, -0.00044424887, 0.20430364, 0.34247226, -0.06716582, -0.110345304, -0.01420282, 0.3538318, -0.14525804, 0.14234526, 0.10409842, 0.0766974, -0.109448306) * inp_5_1_1; - result1 += M4(0.009243657, 0.12677078, -0.06852512, 0.120374426, 0.0753341, 0.037618086, -0.00016632616, 0.017921291, 0.071356595, -0.112582706, 0.00812883, -0.0833917, -0.03411059, -0.11522727, 0.15849163, -0.26892105) * inp_5_2_1; - result1 += M4(0.012049914, -0.055856187, 0.049599905, 0.10830049, -0.040683903, -0.14215946, 0.10483533, 0.0055955295, 0.07001724, 0.113763936, -0.06770016, -0.1177259, 0.05842379, -0.013908719, 0.01254569, 0.20347081) * inp_5_0_2; - result1 += M4(0.057642624, 0.039384652, -0.12233165, -0.05820041, -0.1414254, -0.019116063, 0.12099546, 0.04355352, 0.022849131, 0.059321977, -0.051921044, 0.14979818, 0.21658589, -0.19856817, -0.2660162, -0.04247581) * inp_5_1_2; - result1 += M4(-0.011299239, -0.05326243, -0.1013151, 0.05631885, -0.04029368, 0.040995486, -0.13749479, 0.0021455314, 0.17825736, 0.19415565, 0.1964181, -0.048109397, 0.02867843, 0.015494033, 0.05669802, 0.20109844) * inp_5_2_2; - result2 += M4(-0.030047532, -0.059978407, 0.01420588, -0.090043105, -0.012883665, 0.023169374, 0.0005651511, 0.0386745, 0.09386651, 0.13460395, -0.11574492, 0.08803671, 0.10273649, -0.05321263, 0.099005386, 0.05304952) * inp_5_0_0; - result2 += M4(-0.15405549, -0.032505944, 0.08994283, -0.17971961, -0.0247562, -0.019090218, -0.08942624, 0.13372868, 0.05109986, -0.043970548, 0.08707235, 0.011967677, 0.043884944, -0.06933435, 0.001963502, 0.07665986) * inp_5_1_0; - result2 += M4(-0.06306985, 0.08061473, -0.001718725, -0.08653185, 0.019173281, 0.018367955, -0.15681459, 0.12386136, 0.023186032, -0.07609958, 0.05501072, 0.094118275, 0.060194343, -0.043996047, 0.021270854, 0.10809246) * inp_5_2_0; - result2 += M4(-0.024482662, -0.10631983, 0.004268044, -0.065059274, 0.13093394, 0.002335239, 0.04914575, 0.12729013, 0.15680388, 0.09345998, 0.07123617, 0.02905691, -0.010459302, -0.2559104, 0.1429763, 0.056112856) * inp_5_0_1; - result2 += M4(0.003432408, -0.3699431, 0.10704195, -0.5304259, -0.19219227, 0.17019029, 0.45277864, -0.010221638, -0.008614841, 0.17167573, -0.14349887, 0.71837634, 0.031245168, 0.065272756, -0.0020780729, 0.26817808) * inp_5_1_1; - result2 += M4(0.042282823, -0.03196557, 0.06656363, -0.033248987, 0.06848264, -0.0494077, 0.0005798893, -0.010814694, -0.008647981, -0.024369447, -0.038864832, 0.06686004, -0.037884235, 0.11898186, -0.2924853, 0.24913627) * inp_5_2_1; - result2 += M4(0.04630719, -0.024272243, -0.016746147, -0.08802461, 0.091328524, -0.062480293, -0.020715553, -0.07414549, -0.031161062, 0.07124336, 0.007544982, 0.14347605, 0.054296393, -0.08563085, 0.016239526, 0.05655842) * inp_5_0_2; - result2 += M4(-0.06890359, -0.028243644, -0.00935118, 0.0041620005, -0.08632748, -0.021906171, -0.10208242, -0.09634022, -0.026870364, 0.0017674147, -0.041691516, -0.01288855, -0.03832137, -0.07807739, 0.22896774, 0.15596408) * inp_5_1_2; - result2 += M4(0.0022658138, 0.029420761, -0.09548474, -0.10347767, -0.021742592, -0.03254662, -0.13179669, 0.008116264, 0.045060523, 0.024434991, 0.13914952, 0.052609235, 0.124990135, -0.07908434, 0.08893391, 0.1038348) * inp_5_2_2; - result3 += M4(-0.013022487, -0.05655749, 0.09241707, -0.06681311, 0.033993773, -0.0018267868, -0.05062223, -0.09547787, -0.02890836, 0.039996617, -0.11041391, 0.113548405, -0.09861992, 0.05602147, -0.086761355, -0.028653074) * inp_5_0_0; - result3 += M4(-0.2129928, 0.019406088, 0.13266669, -0.013995146, -0.12171307, 0.05507354, 0.05954758, 0.088955715, 0.107645355, 0.011521309, 0.043459687, -0.078467764, -0.13958776, -0.012516008, -0.16046521, 0.019953115) * inp_5_1_0; - result3 += M4(-0.07010436, 0.019274471, -0.07020737, 0.00026096162, -0.012670181, -0.0189444, 0.1867549, 0.20995474, -0.050733425, -0.0062290323, 0.07894111, -0.028710445, -0.21000817, 0.009464357, -0.030552085, 0.1403396) * inp_5_2_0; - result3 += M4(-0.09396537, -0.01105261, -0.12184349, -0.0004162088, 0.119800255, 0.019810783, 0.17440286, -0.081712335, 0.08554776, 0.006902945, -0.011670557, 0.04037165, -0.22128578, -0.054560017, 0.05911887, -0.18625955) * inp_5_0_1; - result3 += M4(-0.19193503, -0.0217373, -0.007767318, -0.20052655, -0.315011, -0.0170635, 0.14764206, -0.30996975, -0.097641416, 0.0127904685, -0.0038495902, 0.05439913, -0.17097725, 0.077994935, -0.08902109, 0.014534258) * inp_5_1_1; - result3 += M4(-0.051296648, -0.028253313, 0.065184936, -0.056425385, 0.0083700465, 0.0010997957, 0.13598596, -0.16343771, -0.089389406, 0.0061499034, -0.11445137, -0.07582671, -0.47003025, -0.1253498, -0.03412349, -0.12078744) * inp_5_2_1; - result3 += M4(0.019830365, -0.014217189, 0.10557302, -0.0014027354, -0.043215264, -0.0064453892, 0.11188929, -0.055303756, 0.05827603, 0.0076736542, -0.10080767, 0.080206774, -0.24143274, 0.011397971, -0.034095418, -0.055723816) * inp_5_0_2; - result3 += M4(-0.12305643, 0.030867087, -0.066588946, -0.0684208, -0.07684066, -0.006011564, -0.048514873, -0.022975463, 0.046962477, -0.063218206, 0.04615546, 0.016453626, -0.2338124, 0.035106216, 0.10601761, -0.114575386) * inp_5_1_2; - result3 += M4(0.016756019, 0.06401902, -0.040021986, -0.056590453, -0.10231467, -0.011149198, -0.13670088, -0.08691577, -0.11957131, -0.014042816, 0.048864707, 0.050154053, -0.24649796, -0.026487827, 0.021506237, -0.044545732) * inp_5_2_2; - result4 += M4(-0.058258668, 0.011653479, -0.03250637, 0.0928866, 0.15060046, 0.045467336, 0.15287943, -0.22024597, 0.054219525, -0.033904966, 0.0069215507, 0.00017970412, -0.030980606, 0.07395817, 0.04386966, -0.08688773) * inp_5_0_0; - result4 += M4(0.07430633, 0.07437019, -0.02203957, -0.051100615, -0.12894763, -0.06538177, 0.07659497, 0.14042062, -0.16081823, 0.0680576, 0.038981333, -0.05807983, 0.015301596, 0.08266427, -0.23524246, 0.06710496) * inp_5_1_0; - result4 += M4(0.06546034, -0.08460899, -0.010838972, -0.03555585, -0.0062517175, 0.019843254, -0.0011980417, -0.00039139393, -0.048573036, -0.01479708, -0.015174526, -0.03548647, 0.13560979, 0.20247169, -0.14142707, 0.071047105) * inp_5_2_0; - result4 += M4(-0.016476562, -0.00819561, -0.017723704, -0.047305964, -0.12064703, 0.22378218, 0.1630846, 0.09123351, 0.13581872, 0.001173443, 0.11464827, -0.007850379, 0.013134898, -0.0032090058, -0.034668855, 0.020589404) * inp_5_0_1; - result4 += M4(-0.41595262, -0.09709474, 0.06823571, 0.014888401, 0.15959823, 0.07983225, -0.58667624, 0.2550338, 0.1845694, 0.02431382, 0.06499233, -0.118833214, 0.18788978, 0.05590002, 0.113152266, -0.11881982) * inp_5_1_1; - result4 += M4(-0.07761461, -0.058293346, 0.01803313, 0.058438353, 0.13079798, 0.12460156, -0.024445811, -0.026606547, -0.02061763, -0.014837139, -0.023401009, 0.021965954, 0.059381608, -0.024218999, 0.039776426, -0.16864379) * inp_5_2_1; - result4 += M4(-0.017332124, -0.04133359, 0.045941923, 0.13906185, 0.096406415, -0.13622396, 0.21859266, 0.031627238, -0.1303556, -0.044715706, -0.10050429, -0.046631124, -0.09038769, 0.07293431, 0.1153773, 0.10826166) * inp_5_0_2; - result4 += M4(0.15643282, 0.10324319, -0.010635639, -0.09904657, -0.05799351, -0.22726378, -0.10169744, -0.104854524, -0.019357521, -0.108562365, -0.18929788, 0.05305627, -0.131204, -0.056608163, 0.18237141, 0.09693902) * inp_5_1_2; - result4 += M4(-0.03851219, 0.025141092, 0.022767035, 0.048618935, 0.06911714, -0.15745193, -0.009460588, 0.13724358, 0.21318908, 0.10900201, -0.0053719943, -0.116118774, -0.12400516, 0.060818456, 0.16942088, -0.01634364) * inp_5_2_2; - result5 += M4(0.09698608, 0.026600894, -0.06282962, 0.005576882, 0.06611765, 0.32377848, -0.18975173, -0.05466768, -0.060024668, -0.0025439896, 0.003303838, 0.00026120708, 0.01862474, 0.021772774, 0.036497608, -0.00015708529) * inp_5_0_0; - result5 += M4(0.035056256, 0.09978243, -0.10803333, -0.015135669, -0.14331178, 0.50949675, -0.16728583, -0.15675557, 0.01963188, 0.0813095, -0.07830416, -0.008043072, -0.099433854, -0.10969567, 0.09855358, 0.0023154954) * inp_5_1_0; - result5 += M4(-0.0023403377, -0.044798285, 0.00050046784, -0.04411289, -0.18297395, 0.3319683, -0.20301545, -0.07742063, -0.0833587, 0.0069142035, -0.008214602, -0.012090888, -0.12102792, 0.13118547, -0.020407792, -0.057493087) * inp_5_2_0; - result5 += M4(-0.04290189, 0.004197752, 0.054173786, -0.04256465, 0.0051586484, 0.5056183, 0.097300194, -0.04743368, 0.021228958, 0.09366932, 0.13343437, 0.05996553, 0.06958033, -0.10334397, -0.01602539, -0.018332642) * inp_5_0_1; - result5 += M4(-0.021068355, -0.17684124, 0.037242025, -0.04980762, 0.06311729, 1.0244594, 0.39622024, 0.0043471013, 0.029956685, -0.042461537, 0.1380741, 0.029157225, 0.02419411, -0.1411104, 0.04029417, -0.058682036) * inp_5_1_1; - result5 += M4(0.033550393, -0.013144504, -0.05521609, -0.114124805, -0.03578267, 0.44246033, -0.017824171, 0.044483934, 0.15611763, 0.10058675, 0.003831144, 0.029455952, 0.059810065, -0.18396924, 0.038145825, 0.14474481) * inp_5_2_1; - result5 += M4(-0.022374809, 0.045045618, -0.0047080754, 0.08677269, -0.07340093, 0.25254175, -0.029238742, 0.028633058, 0.065307744, -0.03989925, -0.025805753, -0.099939026, -0.05573456, -0.047414444, 0.043095574, 0.03692592) * inp_5_0_2; - result5 += M4(-0.039368667, 0.03342025, 0.059790913, 0.10144083, -0.075773224, 0.4872901, -0.03602646, -0.010884307, -0.036335975, -0.013419043, -0.034071624, 0.042746138, -0.083227694, 0.12715061, 0.064581424, 0.052306026) * inp_5_1_2; - result5 += M4(0.020228395, 0.095249176, -0.119411096, -0.022559868, -0.055999264, 0.22806399, -0.33997774, 0.082449295, -0.09755775, -0.096989006, 0.04387388, -0.021062598, -0.15941606, 0.112267435, 0.07617105, -0.09575019) * inp_5_2_2; - result6 += M4(0.05469036, 0.03342343, 0.021770312, 0.110835746, 0.05680977, -0.0778895, 0.050711554, -0.024741521, -0.09203433, 0.13238351, -0.04872118, -0.1686085, 0.046670318, -0.08508458, 0.04039272, -0.08811937) * inp_5_0_0; - result6 += M4(0.053297825, -0.0239903, 0.08569062, 0.058783315, 0.10465674, 0.038815103, 0.043139536, -0.06579884, -0.13868287, 0.07384181, 0.023872703, -0.057288714, -0.07709621, -0.19531755, -0.04168958, -0.09861565) * inp_5_1_0; - result6 += M4(-0.067949854, -0.03756155, 3.2008353e-05, -0.024942702, 0.045993533, -0.03173156, -0.0073168613, 0.016193338, 0.034363557, -0.03718191, 0.026674073, -0.055586845, 0.006419083, -0.0015491684, -0.028064767, -0.09770451) * inp_5_2_0; - result6 += M4(0.0109729115, 0.020742103, -0.03936538, 0.084315956, 0.04734649, -0.14514065, -0.0057589463, -0.13403784, -0.06647492, 0.067076616, 0.08504993, -0.22503619, -0.1664635, 0.11830319, 0.0034258887, -0.1347454) * inp_5_0_1; - result6 += M4(0.002017004, -0.029851856, 0.15016274, -0.109317616, 0.17447048, -0.1961409, -0.092576824, 0.24705853, 0.037752688, 0.043043647, -0.18306765, 0.12998371, 0.01597145, 0.022569867, -0.11251913, -0.05946482) * inp_5_1_1; - result6 += M4(0.062812366, -0.030802237, -0.034503363, -0.1029137, -0.021570109, -0.00744846, 0.012733414, -0.0016468413, -0.07326628, -0.00782985, 0.07153, 0.008617154, -0.112899974, -0.13654679, -0.0058764005, -0.11014598) * inp_5_2_1; - result6 += M4(-0.027768735, -0.04709874, 0.06611504, -0.090994366, -0.008809776, 0.08818192, 0.008855799, -0.019503737, 0.09518909, -0.07240619, -0.062349316, 0.14017326, -0.09268674, -0.07181296, 0.0422236, -0.12922758) * inp_5_0_2; - result6 += M4(-0.03441505, -0.023750428, 0.047043357, -0.05339059, 0.12522976, 0.08431361, -0.0024175397, -0.012811375, 0.06608681, 0.0015975401, 0.03197356, 0.051992226, -0.05679032, -0.0069855503, 0.0055084415, -0.09357715) * inp_5_1_2; - result6 += M4(0.012080443, 0.054697342, -0.029215833, -0.14609809, 0.09866579, -0.030215101, 0.023371436, -0.06342141, 0.05347571, -0.071824074, 0.013920793, 0.09302227, 0.09128539, 0.11146907, 0.019962724, -0.09253703) * inp_5_2_2; - result7 += M4(-0.105147466, 0.0112444265, 0.053984255, 0.12131753, -0.040302847, 0.039169203, -0.24648727, -0.13148472, 0.050426584, -0.021784807, -0.11796505, -0.12034427, 0.07545748, 0.0020423916, 0.035816867, -0.07286499) * inp_5_0_0; - result7 += M4(0.0055088983, 0.07523934, 0.062021546, -0.07961215, -0.012734579, 0.010482122, 0.03870079, -0.03268848, -0.028236734, 0.027813554, 0.07481855, 0.034975637, 0.016289493, -0.030882124, 0.062161416, -0.036649574) * inp_5_1_0; - result7 += M4(0.023012932, 0.04932317, 0.026274674, -0.103905305, -0.045967713, -0.06412413, 0.098877326, -0.13989787, 0.09648459, -0.013154193, -0.03800215, -0.0031051117, 0.089625075, -0.0660683, 0.046989437, -0.015071315) * inp_5_2_0; - result7 += M4(-0.043384816, -0.018247325, 0.05943973, -0.12374425, 0.04904255, 0.0156879, -0.05375267, 0.10805165, 0.040032357, -0.009622618, 0.01410498, -0.10900583, -0.11417167, 0.022121528, 0.11435251, -0.011809514) * inp_5_0_1; - result7 += M4(-0.025407938, 0.23791826, 0.46826974, 0.04620859, -0.20931284, -0.26947758, 0.056014765, -0.10155064, -0.109176636, -0.3072645, -0.5109159, -0.07638442, 0.034984585, -0.062630124, -0.14421067, 0.006742479) * inp_5_1_1; - result7 += M4(0.104709454, 0.057262886, 0.16372938, 0.030507633, -0.093229525, 0.007709068, 0.094881356, -0.03731367, -0.06572258, -0.020130599, -0.04598404, 0.010390982, 0.1701014, -0.02035937, -0.04741098, -0.04771389) * inp_5_2_1; - result7 += M4(0.008919801, 0.026048765, 0.011644059, -0.049013555, 0.06921417, -0.017201679, 0.035477195, 0.033192433, 0.08135106, -0.022967547, -0.013898442, -0.02301414, -0.035617758, 0.0039148727, 0.009098705, -0.08136681) * inp_5_0_2; - result7 += M4(-0.073810734, 0.07011909, 0.066458635, 0.03856288, -0.29271278, -0.0048771994, 0.09024985, -0.09396611, -0.041181788, -0.042466737, 0.002737812, 0.04506687, 0.21328571, -0.046859078, -0.045218024, -0.094299585) * inp_5_1_2; - result7 += M4(0.0021971157, 0.054297227, 0.15436453, -0.017166387, 0.03960466, 0.033980224, 0.21259756, 0.09134299, -0.033449747, -0.00788985, -0.06531301, -0.026874386, -0.11710958, 0.0033466013, 0.1344271, -0.083653435) * inp_5_2_2; - const V4 inp_6_0_0 = inp[6][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_6_1_0 = inp[6][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_6_2_0 = inp[6][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_6_0_1 = inp[6][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_6_1_1 = inp[6][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_6_2_1 = inp[6][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_6_0_2 = inp[6][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_6_1_2 = inp[6][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_6_2_2 = inp[6][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.04773768, 0.001959462, 0.057930946, -0.09827442, 0.052218422, 0.0063877082, -0.033328712, -0.06460121, -0.01232119, 0.012475813, -0.029344268, -0.009060846, -0.037446085, 0.013201245, -0.11293085, 0.07459699) * inp_6_0_0; - result0 += M4(0.030278446, -0.06631371, 0.10371911, -0.11528509, -0.062486928, 0.056186654, -0.012946878, 0.035941787, -0.070863366, -0.04122392, 0.033540916, -0.0009271403, 0.160896, -0.017202087, -0.0005550714, -0.12686999) * inp_6_1_0; - result0 += M4(0.102951944, -0.07263826, 0.1512848, -0.13043968, 0.008441888, 0.3924855, -0.10288744, -0.11114517, -0.0018250938, 0.015481879, 0.03279379, 0.04459866, 0.06075861, -0.086832516, -0.09535426, 0.0017060342) * inp_6_2_0; - result0 += M4(-0.057549622, 0.014948271, 0.0014016473, -0.03306045, 0.060931765, 0.082405366, 0.01242348, 0.015260926, -0.04429865, -0.044792388, 0.02179715, 0.018821955, -0.039516237, 0.18473051, -0.22071347, -0.037266523) * inp_6_0_1; - result0 += M4(0.10259757, 0.023008056, 0.070955455, -0.17649914, 0.09040476, -0.42065042, 0.055676877, 0.0148492055, -0.005293075, 0.17917627, 0.15663664, -0.16202454, -0.13865252, 0.014088587, 0.13608615, -0.19345745) * inp_6_1_1; - result0 += M4(-0.15989162, 0.13427083, -0.29786888, 0.093550906, -0.030151883, 0.10862266, 0.10953447, 0.069745086, -0.02618948, -0.025868298, -0.11169783, 0.00631567, -0.059330758, 0.16486694, 0.14105, 0.09305139) * inp_6_2_1; - result0 += M4(-0.03628722, -0.0069554755, -0.072481, -0.13077278, 0.032523632, 0.015808582, -0.006633166, -0.0153592415, 0.19204703, 0.19000784, -0.09753196, 0.055886272, -0.052743692, -0.13763134, 0.06448058, 0.16680056) * inp_6_0_2; - result0 += M4(-0.059894715, -0.0133255515, -0.013678723, -0.15701617, -0.013081536, 0.0046300474, 0.061698213, -0.07221047, -0.061949108, 0.069269426, -0.20260338, 0.12874296, 0.18569933, 0.013858427, 0.100956, -0.17616035) * inp_6_1_2; - result0 += M4(-0.25991002, 0.03298657, -0.14688253, 0.06837542, -0.06401629, -0.09839077, -0.054921936, -0.05276473, 0.0020148205, 0.025005847, -0.10156508, 0.08645296, -0.11356976, 0.082593955, -0.13218881, -0.028871438) * inp_6_2_2; - result1 += M4(-0.150547, 0.054902937, 0.08743638, -0.109163485, -0.004064822, 0.014688617, -0.09523924, 0.08531238, -0.047227126, -0.032090753, -0.07533178, -0.021429002, -0.11880135, -0.040820006, -0.13193382, -0.012157055) * inp_6_0_0; - result1 += M4(0.045117386, 0.12848938, -0.003735251, -0.32201138, -0.106285736, -0.059493847, -0.12648083, -0.097637944, -0.061813448, 0.02675488, 0.05256317, -0.014833707, 0.1090593, 0.03882462, 0.059257247, 0.10901662) * inp_6_1_0; - result1 += M4(-0.47226495, 0.059537727, 0.086151265, -0.12649864, 0.18422088, -0.13727866, 0.3496055, -0.12120121, 0.0004614673, 0.043310508, -0.032893207, 0.041297607, -0.052588675, 0.076163456, 0.026309138, 0.03855429) * inp_6_2_0; - result1 += M4(0.057502, -0.058547728, 0.022078164, 0.04180765, -0.098163, -0.09102089, -0.07259237, -0.07664438, 0.026525082, 0.009777429, 0.14917089, 0.1495326, 0.19852416, 0.05333671, -0.14167045, -0.06647103) * inp_6_0_1; - result1 += M4(-0.0714242, 0.1053335, 0.15287296, -0.08933932, 0.4078643, 0.26966506, -0.18579166, 0.117150836, 0.23800363, -0.18168208, 0.3087728, -0.08012253, -0.13966234, -0.08600794, -0.23434724, 0.09054735) * inp_6_1_1; - result1 += M4(0.07561733, -0.054181695, -0.059296504, 0.11398675, 0.1113775, -0.13213989, -0.1101493, 0.1838302, 0.003269095, 0.09090046, -0.05287613, 0.03830091, -0.2077058, -0.13577144, 0.020854933, 0.07044372) * inp_6_2_1; - result1 += M4(-0.10934249, 0.019651866, 0.032717764, -0.09384438, -0.032447584, -0.074489035, 0.033754174, -0.0030005996, 0.06527405, -0.05509112, -0.08247481, -0.00660344, 0.16588798, -0.074636854, 0.10375235, 0.22372392) * inp_6_0_2; - result1 += M4(-0.25989288, -0.02183265, 0.1742702, 0.012360525, -0.09088728, -0.09550382, 0.007551419, 0.09008955, -0.121579915, -0.14574696, -0.008717068, -0.03389179, 0.37796816, 0.06572508, -0.2713046, -0.1331926) * inp_6_1_2; - result1 += M4(0.04897763, 0.010182655, 0.03387247, -0.23113786, 0.0004767232, 0.11502336, 0.08730761, -0.05040379, -0.046073247, 0.06722634, -0.012487664, -0.05279485, 0.001407764, 0.07172754, 0.026461743, -0.016272027) * inp_6_2_2; - result2 += M4(-0.060256526, 0.112150945, -0.025988633, -0.16799934, 0.027502054, 0.012286108, -0.07694939, 0.08059354, -0.022266777, 0.044626787, 0.017066395, -0.027540738, -0.028653417, -0.10717886, 0.08175702, -0.15655318) * inp_6_0_0; - result2 += M4(-0.09728798, 0.18630813, -0.0625653, -0.11316158, 0.004692843, -0.048112217, -0.11782566, -0.0969471, 7.3867835e-05, 0.042700753, -0.046699464, 0.025244784, 0.021610184, 0.08873352, -0.0930031, -0.013723512) * inp_6_1_0; - result2 += M4(-0.028756456, 0.06300878, -0.036910012, -0.23645233, -0.021729387, -0.038263973, -0.064200416, -0.09499333, -0.03474316, 0.005384173, 0.0009628052, 0.0151760215, 0.0004901526, 0.07439028, -0.0022532626, -0.04896856) * inp_6_2_0; - result2 += M4(-0.039166976, 0.04952014, 0.037024565, -0.175038, 0.14617248, -0.044369668, 0.031225849, -0.1662472, -0.14479308, 0.010109956, 0.06498283, 0.06387595, 0.040582776, -0.14286375, 0.0614813, -0.23442) * inp_6_0_1; - result2 += M4(-0.04755763, 0.3012325, -0.122010835, 0.027378252, 0.30109185, -0.1254678, 0.049578574, -0.2645931, -0.16152179, -0.21544388, 0.08801139, -0.099449664, -0.039607633, -0.16900626, 0.07484608, -0.3184762) * inp_6_1_1; - result2 += M4(0.1088548, 0.12254615, 0.14726411, -0.4620232, 0.013625746, -0.013246359, 0.05529667, -0.00992397, -0.0010666037, -0.0148861455, -0.10293956, 0.06193901, 0.007508832, -0.00078815676, -0.014970336, 0.015786596) * inp_6_2_1; - result2 += M4(-0.04635994, 0.07583577, -0.06591772, -0.124390066, 0.054599606, 0.058142394, -0.07236235, -0.09354423, 0.060981758, 0.045049127, 0.11388943, 0.053745512, -0.103569545, -0.077407844, -0.017736936, -0.09980813) * inp_6_0_2; - result2 += M4(0.060915213, 0.12933595, -0.18382381, -0.1757938, 0.12987927, -0.018746467, -0.12101489, 0.10063528, -0.11724033, -0.0566377, -0.07017246, 0.080415994, -0.1981529, 0.035776366, -0.005114726, -0.2337526) * inp_6_1_2; - result2 += M4(-0.30518332, 0.12621066, -0.16452695, -0.21991894, 0.09800236, 0.008548892, 0.040756304, 0.03482984, -0.010884391, 0.06505693, -0.060997058, -0.014016731, 0.0027711578, 0.05262998, 0.019566158, -0.03353553) * inp_6_2_2; - result3 += M4(0.1727755, -0.03763011, -0.024353556, 0.1153669, 0.055638857, -0.006406641, 0.012215018, -0.07547803, -0.019176278, 0.0058627157, -0.007531276, -0.0128019005, -0.044132702, -0.014585372, 0.07086872, -0.08586232) * inp_6_0_0; - result3 += M4(0.4023844, -0.061458018, -0.020569447, -0.056065127, -0.22423393, -0.04879322, -0.056515153, 0.0015336607, 0.04431537, -0.040847298, -0.037138775, -0.049804915, 0.10264614, -0.029966217, 0.0048804926, -0.018913448) * inp_6_1_0; - result3 += M4(0.33691147, -0.022325333, 0.2870626, -0.096973985, -0.35119826, 0.06912846, -0.17820448, 0.008856164, -0.086611405, 0.028947834, 0.017339103, -0.04095514, 0.080151096, 0.0038969882, -0.043211497, -0.1103359) * inp_6_2_0; - result3 += M4(0.13112473, 0.028789757, -0.03465137, 0.027741719, 0.12540708, 0.041666668, 0.0482047, -0.00092091475, -0.2018984, -0.06608104, -0.015719254, 0.1747226, 0.0076687313, -0.0818016, -0.25364584, 0.038222622) * inp_6_0_1; - result3 += M4(0.20331907, 0.1832256, -0.24612497, 0.21600969, -0.20726536, 0.09027787, -0.10975036, 0.37722638, -0.0884568, 0.029331498, 0.06466187, -0.12825322, 0.14845504, 0.1521115, -0.12461017, -0.08129323) * inp_6_1_1; - result3 += M4(0.57582384, 0.084431656, -0.23008075, 0.24977052, 0.33035865, -0.062120315, -0.04381122, -0.19541477, -0.0756561, -0.043074053, 0.0022799775, 0.004413274, 0.075887956, 0.01745265, 0.038218193, 0.17106542) * inp_6_2_1; - result3 += M4(0.17629153, -0.05250689, -0.0027985398, 0.10920531, 0.07742577, -0.0344837, -0.094456695, -0.026847046, -0.17161724, 0.06255551, -0.20143765, 0.23929735, -0.0035225465, -0.04535167, 0.22347286, -0.06719533) * inp_6_0_2; - result3 += M4(0.38663247, -0.060137752, 0.17506874, 0.12503928, 0.03017985, 0.025013078, 0.023787659, 0.011888238, 0.24524051, -0.016398503, -0.039571356, 0.034483798, 0.04039114, 0.042806055, -0.26452905, 0.17221452) * inp_6_1_2; - result3 += M4(0.31489953, 0.0076584965, -0.006009802, 0.29646194, 0.07202351, -0.02412933, 0.053954337, 0.058348548, -0.07993248, 0.013296377, -0.09899627, -0.060507085, 0.0363391, -0.0012775703, -0.101326205, 0.027865807) * inp_6_2_2; - result4 += M4(0.020784322, -0.08085469, -0.01662568, 0.0036544928, -0.055719923, 0.03733591, 0.15311809, 0.06769914, 0.04067207, 0.01013517, 0.04577928, -0.008320985, -0.037479892, -0.044493906, 0.027496453, -0.08657806) * inp_6_0_0; - result4 += M4(0.1844264, -0.18994398, -0.041882403, -0.16638136, 0.22983031, -0.04093075, -0.031717654, 0.066274695, -0.041572757, -0.008294108, 0.0717663, 0.0147034135, 0.1228811, -0.059769716, 0.06499911, -0.07358117) * inp_6_1_0; - result4 += M4(-0.10922153, -0.27854297, 0.09098042, -0.1933134, -0.11917356, -0.07815518, -0.008751191, -0.11327798, 0.021927334, 0.046120528, 0.013780936, -0.016143516, -0.0005557552, -0.05442804, 0.06990909, -0.027121864) * inp_6_2_0; - result4 += M4(0.15096483, 0.119068004, 0.064184986, -0.119605094, 0.08603158, 0.00047630936, 0.02851227, 0.12226796, -0.027884342, 0.15013617, 0.15669696, 0.02584349, 0.026068926, 0.20638704, -0.1678511, -0.062482312) * inp_6_0_1; - result4 += M4(0.12820128, 0.048624434, -0.066702716, -0.3024967, -0.1970876, 0.020530209, 0.077830344, -0.08447526, -0.14719813, -0.1527433, -0.16252525, -0.14208332, -0.08664364, -0.24624044, -0.23259495, 0.094325475) * inp_6_1_1; - result4 += M4(-0.008551754, 0.35518387, -0.011879481, -0.009276819, -0.22661164, 0.0727724, -0.065323345, -0.090120375, 0.07711801, 0.060850076, -0.043359086, 0.025293885, -0.11856221, 0.11024678, 0.03367849, 0.0055428655) * inp_6_2_1; - result4 += M4(0.01058194, -0.10157144, -0.073607236, -0.04064452, 0.1304814, -0.011711504, -0.023931535, -0.049846675, 0.13696872, -0.022219677, 0.21517922, 0.039131165, 0.0029566681, 0.03455885, 0.017687602, 0.23300457) * inp_6_0_2; - result4 += M4(0.07599372, -0.09190264, -0.06670795, -0.011278573, -0.090940855, 0.14588097, -0.049814615, 0.1852138, -0.16191384, 0.07041568, -0.03997698, 0.027623639, 0.10789044, 0.18317771, 0.10181906, 0.19630185) * inp_6_1_2; - result4 += M4(0.34494078, -0.18516955, -0.047164354, 0.020765288, -0.05012332, -0.08287178, -0.008696478, -0.050518088, -0.0477493, -0.052536886, -0.06716131, -0.015497525, -0.11314282, 0.008808684, 0.06105265, 0.08454718) * inp_6_2_2; - result5 += M4(-0.0098594325, -0.0055030943, -0.007857921, -0.011821983, -0.05287394, 0.18185322, -0.07842678, -0.05045482, -0.055094346, 0.0066423384, -0.036352996, -0.029138763, 0.107591696, 0.057252053, -0.018380277, 0.06913811) * inp_6_0_0; - result5 += M4(-0.11480295, 0.07442495, 0.042270523, 0.095394716, -0.04003298, -0.046663422, -0.024837278, 0.012772692, 0.03937366, 0.019569809, -0.020946737, 0.04385851, 0.047111746, 0.07495863, -0.006033504, 0.0077258074) * inp_6_1_0; - result5 += M4(0.27454954, 0.23601109, 0.12949172, 0.005877136, 0.2123036, -0.19559526, 0.033447932, 0.13564067, -0.016131232, -0.009941528, -0.038297217, -0.077464566, 0.16799688, -0.08617262, 0.06524058, -0.13296159) * inp_6_2_0; - result5 += M4(-0.02094186, -0.04838286, 0.09688137, -0.036806263, 0.0065128887, -0.03600461, -0.04719011, 0.0018870253, -0.07924403, 0.090021856, 0.00277038, 0.021571511, 0.10750625, 0.033650897, 0.029239105, -0.15609364) * inp_6_0_1; - result5 += M4(-0.075347096, -0.045295488, 0.05593668, -0.2429266, -0.02558432, -0.09995219, -0.0070652016, -0.04344672, 0.06625958, -0.37590194, 0.07487936, -0.08478763, -0.2569391, 0.2849341, -0.06316496, -0.17823793) * inp_6_1_1; - result5 += M4(-0.14011423, -0.017914226, 0.24613917, -0.24457592, -0.023976726, 0.023810089, -0.025477055, -0.022891687, 0.056751464, 0.08547485, -0.06403005, 0.003865823, -0.12864947, 0.028097872, -0.0037051893, 0.12779927) * inp_6_2_1; - result5 += M4(0.037950262, -0.0073972233, -0.04170087, 0.010716162, -0.04729806, 0.03708199, -0.11025019, 0.05807917, 0.034382865, 0.26279795, 0.0017784073, -0.09346307, -0.044856254, -0.11926652, 0.044202928, 0.18996905) * inp_6_0_2; - result5 += M4(0.04471687, 0.032196492, 0.006301388, 0.04968424, 0.0057244073, -0.056578696, 0.0017138695, -0.051911812, -0.13070044, -0.2021769, 0.069969304, -0.01035776, 0.09795845, -0.22660214, 0.079370625, -0.038810402) * inp_6_1_2; - result5 += M4(-0.078447945, 0.10018317, -0.021208925, 0.24495393, -0.0026559755, 0.19463222, -0.023494383, -0.015209821, 0.0009825485, 0.018631315, -0.03595612, -0.043249756, 0.039936334, 0.073131286, -0.059881702, 0.057013884) * inp_6_2_2; - result6 += M4(0.037209295, -0.050063074, -0.010220902, 0.11707704, -0.02084438, -0.024680117, 0.031885773, -0.09423414, -0.016938316, -0.046386693, -0.014814487, 0.0111893555, -0.032258764, -0.08483458, 0.06323948, 0.05468902) * inp_6_0_0; - result6 += M4(0.015897436, 0.121769734, 0.029597314, 0.15221149, 0.11633909, -0.042338204, -0.011930534, 0.05133176, 0.0027398856, 0.028034959, 0.03518836, 0.07806504, 0.0048895567, 0.01996425, 0.10549172, 0.019790227) * inp_6_1_0; - result6 += M4(-0.0013211244, -0.03798763, -0.018917317, 0.022874637, -0.08522377, -0.12338777, 0.035954826, -0.0966936, 0.0024507872, 0.04857881, 0.005735548, 0.030774018, 0.06731993, 0.049679667, -0.008757346, 0.07279027) * inp_6_2_0; - result6 += M4(0.06292444, 0.10052756, 0.008063465, 0.17784424, 0.07310286, -0.019227033, 0.016693944, -0.017666822, -0.045845564, 0.10794333, 0.06462252, 0.07771655, 0.06256301, 0.12213898, 0.031279724, 0.0010809185) * inp_6_0_1; - result6 += M4(0.2020988, -0.1354307, 0.07126954, 0.22662215, -0.19457316, -0.02094151, 0.1359314, -0.21436588, 0.21037516, -0.20815274, -0.14144185, 0.0114655765, 0.060350437, -0.048541997, 0.1233999, 0.064946786) * inp_6_1_1; - result6 += M4(-0.03801499, 0.056026544, -0.038884852, 0.23788519, -0.122079566, -0.16254437, 0.04029365, -0.066527, -0.045467246, 0.015085265, -0.035734266, 0.06934848, 0.027953278, -0.00040359018, -0.02432993, 0.17086232) * inp_6_2_1; - result6 += M4(0.016163094, -0.03828607, 0.008515226, 0.11465089, 0.1298134, 0.06204608, 0.04309012, -0.021834074, 0.10644005, 0.10702939, -0.10943198, 0.14087749, -0.14724636, -0.17569791, 0.05019082, 0.083955005) * inp_6_0_2; - result6 += M4(-0.09204167, -0.031187754, 0.10056521, -0.01771543, 0.019897467, -0.00941387, -0.005509536, -0.12569466, -0.06307273, 0.08538708, -0.057971165, 0.077682935, -0.17311402, -0.24178128, 0.06330053, 0.11128207) * inp_6_1_2; - result6 += M4(0.046400517, -0.012891216, -0.11019827, 0.26779193, 0.013926303, 0.016950876, 0.07223702, -0.08022898, -0.042762138, -0.018206207, -0.025495933, 0.06634808, -0.05644897, 0.12381476, 0.0046831993, -0.022533525) * inp_6_2_2; - result7 += M4(0.060947925, -0.0131668635, -0.059049744, -0.02420071, -0.027340708, 0.06654622, -0.14738338, -0.10240902, 0.022133015, -0.012878923, -0.049979765, 0.024228211, -0.09164792, 0.02301926, 0.102424234, 0.008795374) * inp_6_0_0; - result7 += M4(-0.075842544, 0.02614748, 0.03232756, 0.06416096, -0.16814534, 0.0034736146, -0.06254206, 0.09317517, -0.036377206, 0.016250707, 0.07924059, 0.003289984, -0.020555865, 0.016522324, 0.13777958, -0.15894508) * inp_6_1_0; - result7 += M4(-0.11553593, 0.037934247, -0.030346276, -0.18000571, -0.034417633, 0.12953782, -0.060644384, 0.138747, 0.03996823, 0.005248729, -0.02440235, -0.054184724, 0.013278288, -0.025382731, -0.0064401207, -0.050892755) * inp_6_2_0; - result7 += M4(-0.012102487, -0.021994375, -0.002057026, -0.02113673, 0.034217566, -0.037720148, -0.04422399, -0.07715419, 0.17933065, 0.048809122, 0.07449377, -0.015710318, 0.13151926, -0.028760374, 0.18738586, -0.10760298) * inp_6_0_1; - result7 += M4(0.2165887, 0.033794247, -0.11268847, 0.21586457, -0.25317687, 0.099120155, -0.5126508, 0.11133834, 0.1583835, 0.17014144, -0.34262654, 0.02169373, 0.12829499, 0.20543833, 0.2551269, 0.055904746) * inp_6_1_1; - result7 += M4(-0.032080367, -0.0028072046, 0.1775265, -0.17336431, 0.26392803, -0.059076168, -0.10762289, 0.07914442, -0.04225748, -0.051785145, -0.0020702602, -0.08700444, 0.015553518, -0.04046392, -0.07668666, 0.10713023) * inp_6_2_1; - result7 += M4(0.062178094, -0.0138251195, -0.062473442, -0.04928566, -0.047398448, 0.018526085, -0.022303054, -0.0022937227, 0.20345382, -0.041759096, -0.11410796, 0.0034076627, -0.18845843, 0.005053759, 0.056776986, 0.0921597) * inp_6_0_2; - result7 += M4(0.18777321, 0.07502034, 0.008985812, -0.19832358, 0.068465255, 0.01314258, -0.041850977, 0.0562032, 0.01363345, -0.047923792, -0.06541371, -0.053187225, 0.34736007, 0.12043036, 0.073892035, 0.14952186) * inp_6_1_2; - result7 += M4(-0.1609609, -0.042031422, -0.028909644, 0.22433753, -0.10052288, -0.00801001, 0.018861134, 0.04836219, 0.11426792, 0.0005085676, -0.038933937, 0.08721044, -0.01724785, -0.015636204, 0.0049444535, -0.0660851) * inp_6_2_2; - const V4 inp_7_0_0 = inp[7][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_7_1_0 = inp[7][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_7_2_0 = inp[7][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_7_0_1 = inp[7][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_7_1_1 = inp[7][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_7_2_1 = inp[7][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_7_0_2 = inp[7][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_7_1_2 = inp[7][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_7_2_2 = inp[7][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.13067406, 0.028832154, 0.039388724, 0.015019381, 0.061779, 0.042300593, -0.12909865, -0.1148127, -0.01529291, 0.072751045, -0.17547236, -0.10018975, -0.044795718, 0.009151746, 0.018336726, 0.036446154) * inp_7_0_0; - result0 += M4(0.116337374, 0.08905745, -0.077871114, -0.013879889, -0.13316694, -0.23820901, 0.08242977, 0.02888628, -0.039076082, -0.13740012, 0.09964702, 0.06071062, 0.11820365, 0.033477437, 0.16741292, 0.03193548) * inp_7_1_0; - result0 += M4(0.05061702, 0.0823785, -0.09602578, 0.031410098, -0.039475903, 0.028294675, 0.07305489, -0.07635677, 0.007946014, 0.091116756, 0.034513436, -0.09802177, -0.006571153, -0.10009209, -0.04186956, -0.0554383) * inp_7_2_0; - result0 += M4(0.03423166, -0.015950177, -0.058272224, 0.0010492966, 0.018822135, 0.026092965, -0.066259615, -0.03219676, -0.069386445, -0.009401991, 0.26162297, -0.04670582, -0.13900985, -0.011975655, 0.1555488, -0.17420706) * inp_7_0_1; - result0 += M4(-0.1779387, -0.07935647, 0.07630096, -0.043877553, -0.075177014, -0.02088941, 0.16713355, -0.027095472, 0.032332443, 0.07213087, 0.011319218, -0.060872484, 0.19048789, -0.17313117, -0.0046990584, -0.120225325) * inp_7_1_1; - result0 += M4(-0.0679712, 0.0014982347, 0.16835289, 0.13275732, 0.045971878, -0.06462141, 0.012273774, 0.0033808034, 0.05756958, -0.049381122, -0.100551225, -0.036820434, -0.12508367, 0.044211876, -0.008688207, -0.08462092) * inp_7_2_1; - result0 += M4(0.07749491, 0.019272378, -0.028934374, 0.018170493, 0.025768165, -0.017576093, -0.103738874, -0.032738257, 0.084851995, 0.02328588, 0.07367822, -0.016028477, -0.06071663, -0.11663664, 0.3232571, 0.032633957) * inp_7_0_2; - result0 += M4(0.0747207, -0.014200549, -0.0086948145, 0.031706877, 0.0893843, -0.16086516, 0.0835786, 0.022921033, 0.13708672, -0.05682044, 0.07720748, 0.032989893, 0.34230405, -0.03602262, 0.12719204, -0.20689873) * inp_7_1_2; - result0 += M4(0.16810031, -0.08451505, 0.31090537, -0.04479524, -0.120775014, 0.082496874, -0.014403937, 0.07312736, -0.07519187, 0.0033120897, 0.025125379, 0.032836307, -0.089279786, -0.0033897697, -0.20561327, 0.029450448) * inp_7_2_2; - result1 += M4(-0.05358433, -0.051166553, 0.01799522, -0.08417149, -0.17365077, 0.048117477, -0.07990638, 0.037287813, -0.20324647, -0.047508366, -0.07467025, -0.013626848, 0.05778924, -0.12558205, -0.0303156, -0.08947) * inp_7_0_0; - result1 += M4(-0.008373269, -0.038494088, -0.01432257, -0.06859234, -0.0030889353, 0.114407144, 0.112283155, 0.07452082, 0.04202021, -0.05332718, 0.056014493, 0.081741214, 0.03734258, 0.046955884, 0.061512005, 0.056836437) * inp_7_1_0; - result1 += M4(0.095733695, 0.07105126, -0.33165723, 0.09798114, -0.00018651325, 0.02871746, -0.0014896247, 0.0015228483, 0.04926809, -0.12781562, -0.034009118, -0.07865962, -0.08457162, -0.02659428, -0.070909, -0.017750109) * inp_7_2_0; - result1 += M4(0.049441442, 0.049887598, -0.015305671, 0.09287625, 0.0011477629, 0.02460837, -0.08218665, -0.06426695, 0.03651719, -0.030062119, -0.1479013, -0.039886933, -0.152968, 0.11601564, -0.046828054, -0.13034426) * inp_7_0_1; - result1 += M4(-0.0666769, -0.046882167, 0.25199586, 0.19112575, -0.11659738, 0.055139177, 0.045638174, -0.12337854, 0.016630938, 0.06459855, 0.10086822, 0.08199916, 0.118646435, 0.11060275, -0.16545276, -0.06970648) * inp_7_1_1; - result1 += M4(0.44034556, 0.04092956, -0.27699018, 0.06271716, 0.07626376, 0.019908637, 0.02313036, 0.04385375, -0.06581417, 0.0014359815, -0.063302204, 0.034963973, -0.09815691, -0.12783496, 0.08379812, 0.09307187) * inp_7_2_1; - result1 += M4(0.007760622, 0.008819667, -0.05412107, 0.0039714575, -0.1251414, 0.03176161, 0.053509824, 0.056864757, -0.14814511, 0.037073277, 0.05188728, 0.038299482, 0.18033518, 0.015588917, 0.057779737, 0.10798925) * inp_7_0_2; - result1 += M4(0.13056533, 0.08232402, -0.29978523, -0.13426647, 0.051910676, 0.08373958, -0.09457672, -0.22553246, -0.0545481, -0.031182704, 0.0020456996, -0.02868866, -0.06648373, -0.18830647, 0.052763414, -0.029948968) * inp_7_1_2; - result1 += M4(0.34867358, 0.06583776, -0.22922067, -0.11264372, 0.034143683, -0.009171592, -0.00949391, 0.012984934, 0.045153793, -0.037343267, -0.037692238, -0.031469643, -0.2382531, 0.053330287, 0.055302203, -0.1825571) * inp_7_2_2; - result2 += M4(0.030271148, -0.007737505, 0.057129323, -0.041894812, -0.026781835, 0.04428295, -0.16144896, -0.027526084, 0.11059383, 0.0065614725, -0.057720657, 0.004098372, 0.14758441, 0.017132191, 0.00446399, 0.05744678) * inp_7_0_0; - result2 += M4(0.034728736, -0.10280771, 0.08125157, 0.03332683, 0.032993034, -0.010467488, 0.060483724, -0.057153646, 0.12141494, 0.0016803875, -0.028403023, 0.053882364, 0.18510398, 0.111922555, -0.21885212, -0.04206883) * inp_7_1_0; - result2 += M4(-0.04772853, -0.11217128, 0.18948436, 0.019152148, 0.030757114, -0.08362043, 0.036688127, -0.059582487, 0.08038792, -0.10257601, 0.097472966, -0.09027937, 0.18736614, -0.0018967049, 0.012998825, -0.029992562) * inp_7_2_0; - result2 += M4(-0.027499855, -0.10176088, 0.00091364334, -0.03837928, 0.23490189, 0.07678607, -0.08136627, 0.028936591, 0.26001254, -0.06483215, 0.07862464, -0.15106715, 0.057786442, 0.0016549892, 0.15167485, -0.10726432) * inp_7_0_1; - result2 += M4(0.02487009, 0.009946823, -0.06896411, 0.06470131, 0.03699393, 0.09275824, 0.04077723, -0.1971703, 0.11484442, -0.05049749, 0.0850754, -0.29247636, 0.120437585, 0.09171946, -0.22753136, -0.06612396) * inp_7_1_1; - result2 += M4(0.07000594, 0.024084648, 0.41553754, 0.22833507, 0.1627025, -0.05361627, 0.011571902, 0.124527864, 0.10049124, -0.1257422, 0.03198915, -0.059686437, -0.04917472, -0.110104494, 0.1244924, 0.068160005) * inp_7_2_1; - result2 += M4(0.04665325, 0.017537083, -0.023751475, -0.026525868, 0.06986137, -0.0419673, -0.07226155, -0.12024144, 0.11888514, -0.06618652, -0.053661197, -0.15042521, -0.014840175, 0.017158445, 0.078231715, -0.024895946) * inp_7_0_2; - result2 += M4(-0.008151341, -0.031842563, 0.10339782, 0.009342193, 0.0834332, -0.001414612, -0.043162216, -0.033515673, 0.18836306, -0.041193325, -0.10078249, -0.1473947, 0.05938955, -0.108871326, 0.078512065, -0.1151615) * inp_7_1_2; - result2 += M4(0.12766203, 0.22947493, 0.18097287, 0.079979375, 0.037532926, 0.02795079, 0.13459583, 0.008273216, 0.10545514, -0.038298555, 0.107081085, -0.028399749, 0.114563294, -0.030273857, 0.12185006, -0.07019807) * inp_7_2_2; - result3 += M4(-0.0359248, 0.017283894, -0.038338896, 8.852221e-05, -0.030350326, 0.053811096, -0.08466654, -0.018384637, 0.07907651, 0.03767366, -0.06292447, -0.06480903, 0.07928441, 0.0055019865, -0.07849808, -0.03511208) * inp_7_0_0; - result3 += M4(-0.008705628, 0.08240074, -0.091059975, 0.17644837, 0.17334434, 0.050576363, 0.04615256, 0.19023484, 0.026610808, 0.05069111, -0.025897656, 0.053042095, 0.070091, 0.06314606, 0.09423873, 0.24063678) * inp_7_1_0; - result3 += M4(0.059357733, -0.09791369, 0.009596558, -0.15852389, 0.055170197, 0.010385632, 0.09325756, -0.027273592, 0.17088908, 0.04583252, 0.048495945, 0.050565727, 0.28928453, -0.036459588, -0.024114065, 0.006234543) * inp_7_2_0; - result3 += M4(-0.042018082, -0.0029178006, 0.0794925, -0.026625965, 0.07733945, -0.018536583, -0.18128335, 0.11651808, 0.16333766, -0.03563363, 0.0490224, -0.14087391, -0.00077277876, 0.00592992, 0.06796556, -0.23428263) * inp_7_0_1; - result3 += M4(-0.017615339, 0.18298455, 0.016097123, -0.051654737, 0.143653, -0.09442327, 0.22942878, -0.03242901, -0.14603686, -0.082938276, 0.0056298785, 0.12434936, -0.13988517, 0.17576301, 0.21395995, 0.0967396) * inp_7_1_1; - result3 += M4(0.39661255, -0.3329107, 0.062054344, -0.17750584, 0.03201465, 0.020365896, 0.02603651, -0.04899849, 0.17996706, -0.009336932, -0.092292815, -0.047145292, 0.39293876, -0.027589593, -0.050139025, -0.04098591) * inp_7_2_1; - result3 += M4(0.022159833, 0.02219056, -0.07036066, -0.0025751526, 0.024623485, -0.014756634, -0.049184352, 0.030593667, 0.081157655, -0.0055734585, -0.07931024, -0.015757801, 0.110377766, -0.04936761, 0.16547492, -0.0987077) * inp_7_0_2; - result3 += M4(0.0270075, 0.18694495, 0.056208022, -0.08387814, -0.07845644, 0.011949885, -0.016939078, -0.061690614, 0.061734054, 0.006281954, -0.17223981, -0.08565108, 0.13835277, -0.08478053, -0.062062893, 0.06344179) * inp_7_1_2; - result3 += M4(0.24890466, -0.12029491, 0.00031744814, -0.20392807, 0.028673409, 0.0034289309, 0.043343283, 0.07637428, 0.026673166, 0.041918024, 0.026808957, -0.02847315, 0.014535576, 0.01997328, -0.06437138, 0.24981296) * inp_7_2_2; - result4 += M4(0.07955387, 0.02920801, 0.0039356514, -0.020531273, 0.27086037, -0.031574782, -0.057735946, -0.027034195, 0.11195528, 0.042918865, -0.08636478, 0.02290785, 0.0066887373, 0.11742869, -0.013265278, -0.0069362707) * inp_7_0_0; - result4 += M4(-0.106391475, -0.09140498, -0.17148654, 0.12906685, -0.016191894, -0.038174044, 0.089073144, 0.2521505, -0.14236915, -0.023523925, 0.11963699, 0.16456422, -0.13486183, -0.027022168, -0.046793513, 0.14376935) * inp_7_1_0; - result4 += M4(0.15040965, -0.053356398, -0.19252855, 0.003616789, -0.07656162, -0.017565565, 0.010892067, -0.12568311, -0.057327043, -0.01570072, -0.0825886, -0.066023186, -0.053973287, -0.08822645, 0.048079897, -0.0874818) * inp_7_2_0; - result4 += M4(-0.07970787, -0.03986214, 0.040805575, 0.032835215, -0.006681357, 0.15279493, -0.042064656, -0.061980218, -0.19581535, 0.04779575, -0.056096062, -0.016176134, -0.14304012, 0.0790924, -0.0040596435, -0.0694475) * inp_7_0_1; - result4 += M4(0.36187243, -0.024287242, 0.13909514, -0.11013583, 0.008367743, -0.15377219, 0.023453519, -0.046148, 0.041336227, 0.0800339, 0.048884287, -0.052332267, -0.105812736, -0.0129545005, -0.10177371, 0.08276029) * inp_7_1_1; - result4 += M4(-0.14234243, 0.30068526, -0.01395596, -0.020150678, -0.002619391, -0.030882766, -0.0073830565, -0.12919247, 0.049711064, 0.035933882, -0.07687213, 0.08845769, 0.11541978, 0.060703345, 0.04693176, 0.033992272) * inp_7_2_1; - result4 += M4(0.000979341, -0.022977252, -0.05856092, 0.008533235, -0.018859994, -0.027529988, -0.00959131, 0.006543818, 0.0088757295, 0.09457897, 0.04723793, 0.07543671, -0.119229294, 0.09193762, -0.042902473, 0.005911796) * inp_7_0_2; - result4 += M4(-0.2719154, 0.0357115, 0.038124163, 0.03350917, 0.05874676, 0.074151084, 0.095171124, 0.07386939, -0.029964093, 0.012157447, 0.09911337, -0.012254807, -0.01261792, -0.18675168, -0.08593714, 0.105773054) * inp_7_1_2; - result4 += M4(0.013380939, -0.13648096, -0.048079025, 0.006938175, -0.033343375, -0.09736838, -0.08687836, -0.07699828, 0.075971305, -0.0057571474, -0.03589876, -0.017933099, 0.0027181774, 0.07744509, 0.124837294, 0.032714948) * inp_7_2_2; - result5 += M4(0.028875036, -0.031110492, 0.038149834, -0.019501051, -0.11432928, -0.1126801, 0.04141345, -0.08375193, 0.14768237, -0.026936755, 0.029749572, -0.07862247, 0.05488157, -0.057243664, -0.027309591, -0.014692148) * inp_7_0_0; - result5 += M4(0.040109817, -0.082867965, 0.13060012, -0.03809029, -0.06899979, 0.042197473, 0.005456445, -0.057270754, 0.1111761, 0.1612422, 0.05277471, -0.09006354, 0.00213591, -0.08687637, 0.11041009, -0.05709528) * inp_7_1_0; - result5 += M4(-0.046579342, -0.018886335, 0.099409774, -0.037032224, -0.02348206, -0.053438433, 0.017320352, 0.04280165, 0.00092986244, -0.1228265, 0.043787174, 0.12060852, 0.03722829, 0.025750121, 0.11384708, 0.1756499) * inp_7_2_0; - result5 += M4(0.0074765706, 0.05790361, -0.0116465045, -0.049124423, 0.06266538, 0.11351701, 0.035390466, 0.06770555, 0.019044822, -0.19484474, 0.16679585, -0.13847041, -0.12544526, -0.18617591, 0.02353378, 0.020221846) * inp_7_0_1; - result5 += M4(-0.007902586, 0.14058022, -0.16530368, -0.06260437, 0.038545534, 0.25054374, 0.13552001, 0.020178216, 0.12771593, 0.19850408, 0.04699, -0.10122105, 0.2017841, 0.26480493, -0.043371145, -0.06270135) * inp_7_1_1; - result5 += M4(0.25010723, 0.2402388, 0.20971651, 0.036180113, -0.029777044, -0.07594215, 0.04137275, 0.048368115, 0.03706764, -0.00073697296, 0.037749782, 0.021037064, -0.13677695, -0.09792497, -0.10095842, 0.24692741) * inp_7_2_1; - result5 += M4(-0.02564651, -0.020244665, -0.008348912, 0.027030928, -0.020515114, -0.033440787, -0.07904484, 0.032425735, 0.036625206, -0.045109116, -0.00799591, 0.020850739, 0.0038102441, -0.09672524, 0.08192917, 0.14849305) * inp_7_0_2; - result5 += M4(0.015751118, -0.04055089, -0.033026878, 0.08955593, -0.003377252, -0.0695461, 6.159837e-05, 0.087183736, 0.04109956, 0.13342987, 0.03369882, -0.05958476, 0.09203602, 0.11256653, -0.01000415, -0.08522292) * inp_7_1_2; - result5 += M4(-0.036779873, 0.31538376, -0.14045164, -0.0030863027, -0.05344898, -0.0057917326, 0.07769719, -0.01430841, 0.055728193, -0.09356526, 0.0502023, -0.059932925, -0.090438254, 0.06502997, 0.1859353, 0.094580725) * inp_7_2_2; - result6 += M4(-0.028811952, 0.06808008, -0.00074339815, -0.013251018, -0.09201377, 0.1598266, -0.02212522, -0.13484718, 0.09378674, 0.0736567, 0.0024271107, -0.13925199, 0.04235034, -0.12660773, 0.01906119, -0.0815016) * inp_7_0_0; - result6 += M4(-0.08425879, -0.031677764, -0.115849026, 0.017986657, 0.023678906, 0.08667273, -0.06329504, -0.10400462, 0.030330384, -0.11987986, -0.030369766, -0.11652716, -0.04199533, -0.01593327, -0.028968424, -0.1081266) * inp_7_1_0; - result6 += M4(-0.08210173, -0.13455419, -0.04753535, -0.035527173, 0.028721347, 0.035182476, 0.045837738, -0.08479002, 0.055135626, -0.03541346, 0.029479181, -0.21670868, 0.047731355, -0.00046996848, -0.047037322, -0.09572143) * inp_7_2_0; - result6 += M4(-0.0338389, -0.036116943, -0.038523655, 0.045946993, 0.037073463, -0.062394448, 0.012121649, -0.24428302, -0.068229295, 0.13113022, 0.12160596, -0.2816442, -0.070545554, 0.10254308, 0.120189466, -0.17537874) * inp_7_0_1; - result6 += M4(0.11855433, 0.08783517, -0.10247937, -0.1274302, -0.020053992, -0.1142122, 0.25415573, -0.23599103, 0.057993405, -0.07266704, 0.2837777, -0.23303199, -0.03932779, -0.20875753, 0.19161949, -0.35420355) * inp_7_1_1; - result6 += M4(-0.34341362, -0.07703186, -0.12074311, -0.011205127, -0.07073266, 0.07917293, -0.017609397, -0.14996485, -0.019230703, 0.09394668, 0.10345531, -0.3261532, -0.023898399, 0.27006006, 0.081257425, -0.1729889) * inp_7_2_1; - result6 += M4(0.008694641, -0.029521143, 0.020018613, -0.073166475, 0.0640718, -0.007258188, 0.06112204, -0.051134977, 0.09982136, -0.041925915, 0.064289495, -0.058863305, -0.030203123, 0.03520795, 0.04954357, 0.045935135) * inp_7_0_2; - result6 += M4(-0.016051898, -0.0927769, -0.13578846, -0.10517915, -0.008618042, -0.042284966, 0.030864306, 0.074726395, 0.09320223, 0.061838787, 0.013353918, -0.026347045, -0.06560178, 0.13890897, 0.14699252, 0.033004515) * inp_7_1_2; - result6 += M4(-0.119441554, -0.15816481, -0.122414395, -0.16438164, -0.06870667, 0.03847008, -0.0034880138, -0.007743884, -0.07260764, 0.04237305, 0.018275991, -0.10002071, 0.094237596, 0.0451565, 0.05818304, 0.03773225) * inp_7_2_2; - result7 += M4(0.017765123, -0.025564613, 0.040225025, -0.08534618, -0.038929053, 0.06172722, -0.24709737, -0.013401355, -0.0020410924, 0.047454473, -0.2064527, -0.0634405, -0.12670997, 0.016485076, 0.053914085, 0.056610946) * inp_7_0_0; - result7 += M4(0.10947243, -0.046322983, 0.10063349, -0.013043788, 0.07481651, -0.054205686, -0.007200137, -0.012790777, 0.10835742, -0.025409449, 0.045701068, -0.019426627, 0.10639986, -0.11198351, 0.107712574, 0.030220548) * inp_7_1_0; - result7 += M4(0.33133078, 0.034053165, -0.12562154, -0.21957374, 0.022210239, 0.06144255, -0.062330592, -0.038895603, 0.054605782, 0.09148644, -0.12929791, -0.007249944, -0.018601814, 0.002457462, 0.049166933, -0.022382302) * inp_7_2_0; - result7 += M4(-0.0034478705, -0.03455267, 0.04882014, 0.027226288, 0.048017103, -0.018127222, -0.08966526, -0.119999066, -0.028970087, 0.07599657, -0.21222481, -0.10170057, -0.036934838, -0.045431033, -0.038236417, -0.0030916482) * inp_7_0_1; - result7 += M4(-0.028794242, 0.12775825, -0.104700975, -0.031223094, 0.013559511, 0.08467438, -0.77689874, 0.04345405, 0.086275175, 0.19565463, -0.4985069, 0.08432266, -0.066670954, 0.005572425, -0.25247312, 0.12706019) * inp_7_1_1; - result7 += M4(-0.058909375, -0.110902905, -0.4302168, 0.048652552, -0.06911404, 0.028950369, 0.04042155, -0.090551324, 0.031534012, 0.10965761, -0.20398866, -0.05768389, -0.07909678, -0.0104359845, -0.1747402, -0.052253652) * inp_7_2_1; - result7 += M4(0.00022790722, -0.015714, -0.03526806, 0.0024462987, -0.024748744, 0.01919833, -0.0092295585, 0.007298631, 0.032980975, 0.009574746, -0.06634956, -0.030421874, -0.18621956, -0.052046597, 0.06406029, -0.021320768) * inp_7_0_2; - result7 += M4(-0.029107574, -0.026585331, -0.10107789, 0.022651138, 0.054188922, 0.0453873, 0.025297597, 0.0074593243, 0.03387115, 0.049139693, -0.044487085, 0.044495225, -0.1205608, 0.081859335, -0.20431356, 0.1471141) * inp_7_1_2; - result7 += M4(0.09772488, -0.07170561, -0.14094384, 0.05157912, -0.04845413, -0.010399627, -0.09966219, -0.003176897, 0.026169071, 0.009433274, -0.041734595, -0.101598084, -0.13892671, -0.014976504, -0.0061525363, -0.00069722114) * inp_7_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(4, 2); - imageStore(out_image, output_base + ivec2(0, 0), result0); - imageStore(out_image, output_base + ivec2(1, 0), result1); - imageStore(out_image, output_base + ivec2(2, 0), result2); - imageStore(out_image, output_base + ivec2(3, 0), result3); - imageStore(out_image, output_base + ivec2(0, 1), result4); - imageStore(out_image, output_base + ivec2(1, 1), result5); - imageStore(out_image, output_base + ivec2(2, 1), result6); - imageStore(out_image, output_base + ivec2(3, 1), result7); -} - -//!DESC ArtCNN C4F32 (Conv2D-6) -//!COMPUTE 12 16 12 16 -//!HOOK LUMA -//!BIND conv2d -//!BIND conv2d_5 -//!SAVE conv2d_6 -//!WIDTH LUMA.w 1.0 * -//!HEIGHT LUMA.h 1.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -const ivec2 ksize = ivec2(3, 3); -const ivec2 offset = ksize / 2; -const ivec2 wg_size = ivec2(gl_WorkGroupSize); -const ivec2 isize = wg_size + ksize - 1; -shared V4 inp[8][isize.y][isize.x]; -void hook() { - const uvec2 local_xy = gl_LocalInvocationID.xy; - ivec2 base = ivec2(gl_WorkGroupID) * wg_size; - for (uint y = local_xy.y; y < isize.y; y += wg_size.y) { - for (uint x = local_xy.x; x < isize.x; x += wg_size.x) { - const ivec2 input_base = (base + ivec2(x,y) - offset) * ivec2(4, 2); - inp[0][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(0, 0), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(0, 0), 0)); - inp[1][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(1, 0), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(1, 0), 0)); - inp[2][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(2, 0), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(2, 0), 0)); - inp[3][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(3, 0), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(3, 0), 0)); - inp[4][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(0, 1), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(0, 1), 0)); - inp[5][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(1, 1), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(1, 1), 0)); - inp[6][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(2, 1), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(2, 1), 0)); - inp[7][y][x] = V4(conv2d_5_mul * texelFetch(conv2d_5_raw, input_base + ivec2(3, 1), 0) + conv2d_mul * texelFetch(conv2d_raw, input_base + ivec2(3, 1), 0)); - } - } - - barrier(); - V4 result0 = V4(0.09878782, 0.09473654, 0.09866235, 0.09544336); - const V4 inp_0_0_0 = inp[0][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_0_1_0 = inp[0][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_0_2_0 = inp[0][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_0_0_1 = inp[0][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_0_1_1 = inp[0][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_0_2_1 = inp[0][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_0_0_2 = inp[0][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_0_1_2 = inp[0][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_0_2_2 = inp[0][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.021845995, 0.00923297, -0.014651779, -0.0005667969, -0.023344567, -0.01833543, -0.011601852, -0.0020169015, 0.045326777, -0.032315172, 0.007078589, -0.020654466, -0.11703377, -0.011664843, -0.02867888, 0.0016418267) * inp_0_0_0; - result0 += M4(-0.030409543, -0.01275331, 0.03163342, 0.008023201, -0.0063992543, -0.0284605, -0.046062823, -0.046731375, 0.013351812, 0.021334628, 0.011847752, 0.040223304, -0.02904078, -0.10056173, -0.0070626857, -0.0431445) * inp_0_1_0; - result0 += M4(0.0039925133, -0.013273887, 0.024387475, 0.031861275, 0.008615945, 0.0074427924, 0.008972938, 0.027460922, -0.032001305, 0.0031068195, 0.009632848, 0.013365713, -0.058926478, -0.12789509, -0.00612882, -0.011997772) * inp_0_2_0; - result0 += M4(0.009170344, -0.0324075, 0.004619318, -0.034588158, 0.0018333842, 0.051718693, -0.049646277, -0.01178411, 0.002353625, -0.001988641, -0.01177594, -0.021371564, 0.010874673, 0.046233833, 0.0061872797, 0.030681292) * inp_0_0_1; - result0 += M4(0.013369006, 0.012099311, 0.0011759301, 0.0048387344, -0.08040615, -0.008611932, 0.054661606, 0.045823786, -0.042669304, 0.02729385, 0.015340368, -0.07672151, 0.23866998, 0.21135826, 0.25820324, 0.21249358) * inp_0_1_1; - result0 += M4(0.0068678367, -0.006582608, -0.04242511, 0.0067600315, 0.04003407, 0.023596024, -0.040863767, 0.00013780208, 0.011312975, -0.034471445, 0.0010264408, 0.045765247, 0.0036205058, -0.043013114, -0.020834597, -0.037008144) * inp_0_2_1; - result0 += M4(-0.006931655, -0.0037352392, 0.0047042053, 0.005864766, 0.0031939682, -0.022786241, 0.060393747, 0.009342759, -0.0069679413, -0.014066365, -0.0020358474, 0.017902795, 0.02122528, 0.018485093, -0.07797075, 0.012235483) * inp_0_0_2; - result0 += M4(-0.006360104, 0.020608008, -0.037814878, -0.024628675, 0.054318395, 0.021033965, 0.01898423, 0.017190056, 0.016437622, 0.0072630853, -0.007951118, 0.020473938, 0.049010765, 0.049702216, 0.033800196, 0.014753147) * inp_0_1_2; - result0 += M4(-0.011965985, 0.027404882, 0.02935067, 0.0021004486, 0.0022131826, -0.025667844, 0.005243409, -0.039458003, -0.0074959868, 0.023709431, -0.022327172, -0.019713128, 0.018060282, -0.017483944, -0.021819854, -0.14553426) * inp_0_2_2; - const V4 inp_1_0_0 = inp[1][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_1_1_0 = inp[1][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_1_2_0 = inp[1][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_1_0_1 = inp[1][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_1_1_1 = inp[1][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_1_2_1 = inp[1][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_1_0_2 = inp[1][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_1_1_2 = inp[1][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_1_2_2 = inp[1][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.020909442, -0.008989111, -0.0021687713, -0.0069194324, -0.040283523, -0.025767792, -0.061803088, 0.0076894625, -0.038674932, 0.02617475, -0.012287884, 0.013908166, 0.006555676, -0.025049394, 0.0214629, -0.009989944) * inp_1_0_0; - result0 += M4(0.02582961, -0.0068905153, 0.00027230143, 0.014628823, 0.04316013, -0.015099009, 0.0050969617, -0.028622165, 0.03956802, 0.029235221, -0.012187185, -0.008831148, 0.023902493, 0.013305333, -0.009518938, -0.010144944) * inp_1_1_0; - result0 += M4(0.0104014985, 0.012121211, -0.009303343, 0.013048964, -0.03256103, 0.019941146, 0.012937486, 0.008066967, 0.012465702, -0.047337092, -0.0074795485, -0.011997537, 0.0038883304, -0.044082843, 0.028101234, -0.028852245) * inp_1_2_0; - result0 += M4(0.006129608, -0.029761057, 0.020156607, -0.003944418, 0.053577717, 0.011727514, 0.044621803, 0.019679843, 0.037838075, 0.016743049, -0.02557201, 0.007592878, 0.0017753294, 0.033697546, -0.009347553, -0.015898146) * inp_1_0_1; - result0 += M4(0.01766015, 0.0041769426, -0.060872417, -0.036149625, 0.0033517217, 0.051414177, 0.0072023966, -0.026097808, -0.004782113, -0.047765225, 0.06063902, -0.03142622, 0.07265865, 0.04818854, 0.030932182, 0.053911157) * inp_1_1_1; - result0 += M4(-0.028035065, 0.01271305, 0.017770875, 0.040135622, -0.016889933, -0.041969404, -0.001332217, 0.022146843, -0.029414564, 0.012494689, 0.0051135183, 0.022950288, -0.05793264, -0.01467772, 0.0044534863, -0.0069829407) * inp_1_2_1; - result0 += M4(-0.013476227, -0.010227336, 0.035730336, -0.007607085, -0.009037083, 0.011669305, -0.024595153, -0.024000788, -0.01305629, 0.010675441, 0.062531665, 0.0058305357, -0.0035399124, 0.013548699, -0.017104633, -0.025176737) * inp_1_0_2; - result0 += M4(-0.02265931, 0.033375267, -0.018153738, 0.031275585, 0.011745682, -0.014601294, 0.0025895135, 0.02577678, 0.0033817946, -0.028464083, -0.033894673, 0.016219346, -0.051407386, -0.025466394, -0.044046972, -0.013803419) * inp_1_1_2; - result0 += M4(0.025124358, -0.006627566, 0.018165471, -0.045887575, -0.013303172, 0.00233562, 0.014297578, -0.004453115, -0.0072876206, 0.027656792, -0.03509256, -0.014018425, 0.0042956136, -0.0003635888, -0.0038194112, 0.05571797) * inp_1_2_2; - const V4 inp_2_0_0 = inp[2][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_2_1_0 = inp[2][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_2_2_0 = inp[2][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_2_0_1 = inp[2][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_2_1_1 = inp[2][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_2_2_1 = inp[2][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_2_0_2 = inp[2][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_2_1_2 = inp[2][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_2_2_2 = inp[2][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.045293126, -0.009507033, -0.020958012, 0.0028741835, -0.028892173, -0.013422339, -0.01375965, 0.015121977, -0.026627388, -0.026482955, -0.00880384, 0.018158864, 0.01903999, 0.0047557238, -0.004414449, 0.019542456) * inp_2_0_0; - result0 += M4(0.04765631, 0.08073932, 0.04718635, 0.10314033, -0.0497485, -0.03233656, -0.052061938, 0.013144127, -0.034823216, -0.018248862, -0.011374393, 0.010479364, 0.049451914, -0.027185217, 0.0057518627, -0.014667739) * inp_2_1_0; - result0 += M4(0.0682864, 0.0014723825, 0.017564783, -0.020534838, -0.0072129145, -0.033394653, -0.023130465, -0.06629361, 0.020750413, 0.029277522, 0.011851179, -0.0038010993, 0.007314412, 0.08797337, -0.019982358, 0.018098628) * inp_2_2_0; - result0 += M4(0.059612896, 0.048109267, 0.015829114, -0.016320577, -0.029167362, -0.08519065, -0.03226275, -0.041980375, -0.060908087, -0.052325465, -0.070109524, -0.044936456, -0.020929731, 0.042971224, -0.0021150808, 0.0029793526) * inp_2_0_1; - result0 += M4(0.0059181005, -0.12868848, -0.1428892, -0.20816758, 0.21199383, 0.1365571, 0.25739637, 0.13362871, 0.0453919, 0.16896047, 0.10884528, 0.07509096, 0.10747506, -0.22761816, 0.21628167, -0.05490478) * inp_2_1_1; - result0 += M4(0.036632143, 0.10728248, -0.012191513, -0.027990773, -0.13214794, -0.05118176, -0.10765409, 0.00035716637, 0.047775343, -0.034511272, -0.0006371164, -0.03463688, -0.07406134, -0.011930151, -0.07452722, -0.012726115) * inp_2_2_1; - result0 += M4(-0.018006856, -0.024927055, -0.039779406, -0.034424353, 0.008507468, 0.0399062, 0.00968349, 0.021581966, -0.011046537, -0.00012341797, 0.020918565, -0.014472872, 0.02436196, 0.013794884, -0.00067718164, 0.009589558) * inp_2_0_2; - result0 += M4(0.020470805, 0.019855456, -0.043477852, -0.043963335, 0.03349275, 0.043551378, -0.006940629, -0.08597366, -0.0044056503, -0.07239349, -0.05716467, -0.00083604624, -0.0015783524, 0.00075090653, 0.0605259, -0.052989032) * inp_2_1_2; - result0 += M4(-0.014607917, -0.006769994, -0.0026060787, -0.010657442, -0.018661296, 0.0012874923, -0.02776995, 0.041963838, 0.023855781, 0.006731541, 0.008845393, -0.007686197, -0.04012487, -0.02294487, -0.043985743, 0.0011835934) * inp_2_2_2; - const V4 inp_3_0_0 = inp[3][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_3_1_0 = inp[3][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_3_2_0 = inp[3][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_3_0_1 = inp[3][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_3_1_1 = inp[3][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_3_2_1 = inp[3][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_3_0_2 = inp[3][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_3_1_2 = inp[3][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_3_2_2 = inp[3][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(-0.021677352, -0.0117401695, 0.004518356, -0.009685185, 0.094834596, 0.013126099, 0.033670343, 0.004231779, -0.029283414, 0.012214747, -0.022137742, 0.016818568, 0.00095621543, -0.014504671, 0.0045239134, 0.011290582) * inp_3_0_0; - result0 += M4(0.02804712, -0.0113771595, 0.007347934, -0.027659193, 0.17502117, 0.19472298, 0.123926565, 0.14307262, -0.013111147, 0.008779482, -0.009959132, 0.005732099, 0.028414708, -0.04436345, 0.011360493, -0.010027618) * inp_3_1_0; - result0 += M4(-0.003838526, 0.011423468, -0.0011499735, 0.024384381, 0.09888151, 0.15951113, 0.013506597, -0.002353069, 0.06127302, -0.014568737, -0.011889662, -0.023750147, -0.026105855, 0.01895885, 0.011877856, 0.022671351) * inp_3_2_0; - result0 += M4(-0.018721849, 0.033940632, -0.0058633573, -0.0006167294, 0.1878491, 0.093363136, 0.18128133, 0.17116942, 0.012423489, -0.010392725, 0.019000173, -0.0169145, -0.035966814, 0.004880984, 0.011222432, 0.023008749) * inp_3_0_1; - result0 += M4(0.017326716, -0.031237172, 0.03410064, 0.044671513, 0.15124398, 0.2144302, 0.18934388, 0.18356955, -0.00025861885, 0.008206613, -0.009892421, -0.010072149, 0.07948794, -0.013292945, -0.014529488, 0.008760314) * inp_3_1_1; - result0 += M4(-0.029952483, 0.012424221, -0.021917323, 0.014153385, 0.010196946, 0.054626264, 0.07610725, 0.15059759, -0.048268948, 0.01518732, 0.003959537, 0.019882564, -0.034728136, 0.020078616, 0.023970602, -0.054023765) * inp_3_2_1; - result0 += M4(0.018374931, 0.00496525, -0.021751571, -0.025935546, 0.04511196, 0.06007452, 0.11724879, 0.054520566, 0.008097092, -0.009317496, -0.030522656, 0.03273854, 0.012870774, -0.022377662, -0.018366655, 0.033529308) * inp_3_0_2; - result0 += M4(0.026773151, 0.009335391, 0.02321184, -0.0072314255, 0.1914924, 0.15432239, 0.19257082, 0.11107709, 0.020814097, -0.0065054037, 0.025610423, -0.0074282633, -0.018777713, 0.032589786, -0.0071435496, -0.009558263) * inp_3_1_2; - result0 += M4(-0.01614204, -0.013995716, -0.024556905, -0.010945395, 0.025782371, 0.04715687, 0.052295957, 0.17307253, -0.012228171, -0.0034974797, 0.03626981, -0.01724794, -0.0063924934, 0.018752439, -0.025179146, -0.023961835) * inp_3_2_2; - const V4 inp_4_0_0 = inp[4][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_4_1_0 = inp[4][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_4_2_0 = inp[4][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_4_0_1 = inp[4][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_4_1_1 = inp[4][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_4_2_1 = inp[4][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_4_0_2 = inp[4][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_4_1_2 = inp[4][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_4_2_2 = inp[4][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.019233782, -0.015165059, -0.038414046, 0.0044954726, 0.011204252, 0.04189584, -0.021014044, 0.0009775371, 0.04242332, 0.012255439, -0.0007449484, 0.02052313, 0.03485092, -0.012134074, 0.004389388, -0.0014908464) * inp_4_0_0; - result0 += M4(0.028782545, 0.009470256, -0.01541961, 0.015471757, 0.009774452, -0.014652784, 0.0007463575, 0.031451415, -0.07373567, -0.024669297, -0.01780204, -0.03869637, -0.013541652, -0.016476562, 0.02350204, 0.0055448296) * inp_4_1_0; - result0 += M4(0.005574446, -0.0156076485, -0.012073491, 0.021793216, -0.025638446, -0.0064817294, 0.004325301, 0.0032413984, 0.016225765, -0.018339487, 0.009920945, 0.04658623, 0.036285006, -0.012757719, 0.01668213, -0.025542723) * inp_4_2_0; - result0 += M4(0.009313834, -0.022023713, 0.054740716, -0.0046449453, -0.0038328264, -0.004731104, -0.0030217846, -0.009901582, -0.04144257, 0.0039868546, -0.0009157865, -0.023685891, -0.04189296, -0.008065431, -0.0018986162, 0.034864567) * inp_4_0_1; - result0 += M4(-0.033850703, -0.02981953, 0.044203404, -0.05170425, -0.019150872, 0.038871318, -0.011871686, -0.014906511, 0.08776331, 0.010405535, -0.06530442, 0.10109231, -0.01247806, 0.030118234, 0.018255925, -0.04644983) * inp_4_1_1; - result0 += M4(0.013363665, 0.05365835, -0.0080188615, -0.04533615, -0.010505944, -0.019319572, 0.012085702, 0.018746953, -0.030789211, 0.035555065, 0.048638955, -0.060334958, 0.03077203, 0.03312572, -0.003593782, 0.029485438) * inp_4_2_1; - result0 += M4(0.0051345294, 0.023436071, -0.0077538597, 0.0029680484, 0.031210141, -0.016144648, -0.007804191, -0.000639, 0.0038666534, 0.013053829, 0.019085327, 0.006428825, 0.015040178, 0.011052756, -0.0061197295, 0.00064434315) * inp_4_0_2; - result0 += M4(-0.027774539, 0.010080438, -0.007904666, 0.025843294, -0.001809348, -0.0052564964, 0.010171315, -0.036257602, 0.007382936, 0.000710884, 0.03675937, -0.054207988, -0.0033079379, -0.007492857, -0.036551356, 0.037562624) * inp_4_1_2; - result0 += M4(-0.020291371, -0.0135067245, -0.009745377, 0.031590693, 0.009073487, -0.014500891, 0.017604554, 0.006615444, -0.010812366, -0.033496596, -0.030757034, 0.003623485, -0.045518775, -0.018312827, -0.012984233, -0.035579395) * inp_4_2_2; - const V4 inp_5_0_0 = inp[5][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_5_1_0 = inp[5][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_5_2_0 = inp[5][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_5_0_1 = inp[5][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_5_1_1 = inp[5][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_5_2_1 = inp[5][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_5_0_2 = inp[5][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_5_1_2 = inp[5][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_5_2_2 = inp[5][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.021392154, -0.04481118, -0.025659792, -0.018115979, -0.0162344, -0.0031181679, 0.0048183156, -0.012093688, 0.014172713, 0.05281507, 0.044272874, 0.015096085, 0.03004133, 0.0078117596, -0.040290818, 0.011920343) * inp_5_0_0; - result0 += M4(0.003935762, -0.016772285, 0.0074610407, 0.020580398, 0.012782687, -0.014274959, -0.013686723, 0.020124272, -0.026106529, -0.06202789, -0.028806278, 0.017611576, -0.0063033686, -0.009796388, 0.017634671, 0.021701822) * inp_5_1_0; - result0 += M4(-0.01126909, 0.020495001, 0.002539927, 0.009516308, 0.010247538, -0.0006374959, -0.005510141, 0.010154715, -0.014088566, 0.014521846, -0.011839686, 0.004684481, 0.004166807, -0.012444833, 0.006424152, -0.023572352) * inp_5_2_0; - result0 += M4(0.040388003, -0.029881483, -0.057309493, 0.046086986, 0.019913333, 0.0007068011, 0.00027581103, 0.040743127, 0.05739379, 0.0063867355, -0.020870255, 0.020377604, -0.004864155, 0.046745323, 0.009826212, 0.02760339) * inp_5_0_1; - result0 += M4(-0.029892137, 0.010040926, 0.028237386, 0.022597332, -0.064409144, 0.058986817, 0.042260945, -0.0625515, -0.050471894, 0.021828845, 0.058564726, -0.054811925, 0.017653879, 0.007535327, 0.0055531706, -0.022872955) * inp_5_1_1; - result0 += M4(-0.009040554, 0.03354936, -0.011932947, -0.020966467, -0.024817932, 0.014737554, 0.0004824739, -0.011072206, 0.0060642264, -0.041654542, 0.008506339, -0.0116498135, -0.03797305, -0.050029065, -0.012251583, 0.010174026) * inp_5_2_1; - result0 += M4(-0.02201589, 0.029991172, 0.025814207, 0.0199784, -0.002038181, -0.007519278, -0.011738085, -0.0076679164, -0.024628848, 0.01716019, 0.0042316145, -0.022639744, -0.025593556, -0.034525767, 0.021443795, -0.03779618) * inp_5_0_2; - result0 += M4(-0.023332486, 0.0075709624, 0.016141376, -0.01976806, 0.01827179, -0.003539572, 0.018100504, -0.0037530842, 0.038870916, -0.021204714, -0.06045873, 0.022238068, -0.002437607, -0.0025254504, -0.04341895, -0.010414948) * inp_5_1_2; - result0 += M4(0.030545482, -0.010887457, 0.014306388, -0.05985375, 0.007032392, -0.0074627553, -0.005134922, -0.0021265035, -0.0015534473, 0.013533022, 0.005196969, 0.009838008, 0.025642194, 0.047146488, 0.035174802, 0.02292211) * inp_5_2_2; - const V4 inp_6_0_0 = inp[6][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_6_1_0 = inp[6][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_6_2_0 = inp[6][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_6_0_1 = inp[6][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_6_1_1 = inp[6][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_6_2_1 = inp[6][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_6_0_2 = inp[6][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_6_1_2 = inp[6][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_6_2_2 = inp[6][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.04895621, 0.033444706, 0.022162106, 0.026694214, 0.0021245852, -0.005840921, 0.022099504, 0.0002869935, 0.050674517, 0.023502694, 0.028487528, 0.031746116, 0.03148947, 0.036248755, 0.021912456, 0.010571573) * inp_6_0_0; - result0 += M4(-0.052591007, -0.0017953392, -0.050473, -0.031431798, -0.017156571, 0.00080332335, -0.015072964, 0.0118451025, -0.093807325, -0.10117188, 0.005661041, -0.0040574246, 0.09849568, 0.046757482, 0.12010055, 0.103599615) * inp_6_1_0; - result0 += M4(-0.03765376, -0.029832983, -0.011725054, -0.012807199, 0.008137142, 0.0031612592, -0.018345634, 0.028766897, 0.01990054, -0.026210047, -0.0023832824, -0.021838618, 0.057052597, 0.082380325, 0.016509969, 0.002374868) * inp_6_2_0; - result0 += M4(-0.031158147, -0.012876452, 0.024566712, -0.025070176, -0.0054019196, 0.046503052, -0.0097213015, 0.012948774, 0.062119573, 0.075426705, 0.10073122, 0.1607912, 0.029890282, 0.029083041, -0.008166052, 0.030011285) * inp_6_0_1; - result0 += M4(0.051949676, 0.0026599355, 0.06839426, 0.035303876, 0.043927867, -0.020438084, 0.023172678, -0.011855767, -0.22268605, -0.22342284, -0.33833888, -0.34882563, -0.20737693, -0.16748215, -0.14986652, -0.1511559) * inp_6_1_1; - result0 += M4(-0.008782758, 0.031245582, -0.06797611, 0.03258001, 0.013847654, -0.051280174, -0.021121792, -0.028629825, -0.15271252, -0.15525945, -0.09532162, -0.09459921, -0.017235694, -0.029691847, -0.046402782, -0.02710881) * inp_6_2_1; - result0 += M4(-0.007705225, 0.01562444, -0.027051156, 0.019640312, 0.015288926, 0.0095897615, -0.009082686, -0.011777561, 0.111967355, 0.101920836, 0.13098808, 0.11525785, 0.021068454, 0.014203576, 0.010398689, -0.012018553) * inp_6_0_2; - result0 += M4(0.0025176252, -0.021547073, 0.053279445, 0.03631143, -0.029470364, -0.009878799, 0.0047456236, 0.017005615, 0.20778167, 0.1522982, 0.18931435, 0.02524994, -0.011741181, -0.018575177, -0.017983139, -0.018387204) * inp_6_1_2; - result0 += M4(0.033195987, -0.018054826, -0.0082814535, -0.08218203, -0.031923074, 0.027260855, 0.023896065, -0.018352447, 0.020977572, 0.0142076425, 0.01884883, 0.03549403, -0.012022381, -0.009845198, -0.0018749286, -4.8127735e-05) * inp_6_2_2; - const V4 inp_7_0_0 = inp[7][local_xy.y + 0][local_xy.x + 0]; - const V4 inp_7_1_0 = inp[7][local_xy.y + 0][local_xy.x + 1]; - const V4 inp_7_2_0 = inp[7][local_xy.y + 0][local_xy.x + 2]; - const V4 inp_7_0_1 = inp[7][local_xy.y + 1][local_xy.x + 0]; - const V4 inp_7_1_1 = inp[7][local_xy.y + 1][local_xy.x + 1]; - const V4 inp_7_2_1 = inp[7][local_xy.y + 1][local_xy.x + 2]; - const V4 inp_7_0_2 = inp[7][local_xy.y + 2][local_xy.x + 0]; - const V4 inp_7_1_2 = inp[7][local_xy.y + 2][local_xy.x + 1]; - const V4 inp_7_2_2 = inp[7][local_xy.y + 2][local_xy.x + 2]; - result0 += M4(0.009165479, -0.008698953, -0.021462748, -0.020848881, 0.016930848, -0.0018519993, -0.0026254382, 0.009120888, 0.060157303, -0.004048518, 0.005259344, -0.0062268097, 0.015395012, -0.020801028, 0.016654074, -0.009187287) * inp_7_0_0; - result0 += M4(-0.009528176, -0.04606582, 0.002827408, -0.0070309443, 0.10304533, 0.061039165, 0.063341014, 0.07237408, 0.013601314, 0.048085064, -0.031053858, -0.023337703, 0.02948484, -0.016950078, 0.013391826, -0.019121265) * inp_7_1_0; - result0 += M4(0.0325016, -0.007798743, -0.022440113, 0.012150947, -0.032955628, -0.03427973, -0.015344162, -0.04266901, 0.017220825, 0.02218315, -0.011773896, 0.001618144, -0.0072916434, -0.0053652897, -0.010072158, 0.029030822) * inp_7_2_0; - result0 += M4(0.025213646, 0.02245886, 0.039504524, -0.025092835, 0.15036894, 0.023286892, 0.06597429, -0.045287404, 0.016733807, 0.005125903, 0.07001157, -0.031541523, -0.02124107, 0.017432276, -0.012416234, 0.0007289886) * inp_7_0_1; - result0 += M4(-0.04779597, -0.018533265, 0.002221774, 0.06374125, 0.37603468, 0.42516834, 0.23503834, 0.3698628, -0.23278037, -0.05660784, 0.049247917, 0.22647466, -0.012263151, 0.03471921, -0.030884063, 0.0038005607) * inp_7_1_1; - result0 += M4(-0.0456132, 0.03916306, 0.004180005, -0.047036458, -0.14230324, -0.03966774, -0.17610934, -0.17105536, 0.004771039, -0.08297986, -0.0018637177, -0.029170942, -0.03435574, 0.021944506, 0.007175809, -0.015327818) * inp_7_2_1; - result0 += M4(0.017349165, 0.0053192223, -0.0091194725, -0.016326236, -0.07863331, -0.067475334, 0.018275704, -0.062506095, 0.029034514, 0.02288371, -0.008628643, -0.0024705012, -0.0093607, -0.002580434, 0.020385062, 0.0037343465) * inp_7_0_2; - result0 += M4(0.010348636, -0.03127588, 0.022416286, 0.042963654, -0.17467192, -0.2233974, -0.009850513, -0.04556525, 0.04829571, 0.017565792, -0.086523086, -0.07105858, 0.037150603, -0.0181264, -0.04215805, -0.0015138985) * inp_7_1_2; - result0 += M4(0.010021619, 0.044416822, -0.020417435, -0.0011495892, -0.15771282, -0.14838748, -0.17133443, -0.14307828, 0.042705785, 0.02880333, 0.011857535, -0.06327709, 0.0028345648, -0.011308451, 0.038270682, 0.008408807) * inp_7_2_2; - const ivec2 output_base = ivec2(gl_GlobalInvocationID) * ivec2(1, 1); - imageStore(out_image, output_base + ivec2(0, 0), result0); -} - -//!DESC ArtCNN C4F32 (Depth-To-Space) -//!COMPUTE 12 16 12 16 -//!HOOK LUMA -//!BIND conv2d_6 -//!WIDTH LUMA.w 2.0 * -//!HEIGHT LUMA.h 2.0 * -//!COMPONENTS 4 -//!WHEN OUTPUT.w LUMA.w / 1.3 > OUTPUT.h LUMA.h / 1.3 > * -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable -#ifdef GL_EXT_shader_explicit_arithmetic_types_float16 -# define V4 f16vec4 -# define M4 f16mat4 -# define F float16_t -#else -# define V4 vec4 -# define M4 mat4 -# define F float -#endif - -void hook() { - vec4 result = vec4(0.0, 0.0, 0.0, 1.0); - vec2 f0 = fract(conv2d_6_pos * conv2d_6_size); - ivec2 i0 = ivec2(f0 * vec2(2.0)); - result.x = conv2d_6_tex((vec2(0.5) - f0) * conv2d_6_pt + conv2d_6_pos)[i0.y * 2 + i0.x]; - imageStore(out_image, ivec2(gl_GlobalInvocationID), clamp(result, 0.0, 1.0)); -} diff --git a/config/mpv/.config/mpv/shaders/nnedi3-nns128-win8x4.hook b/config/mpv/.config/mpv/shaders/nnedi3-nns128-win8x4.hook deleted file mode 100644 index 33a980c..0000000 --- a/config/mpv/.config/mpv/shaders/nnedi3-nns128-win8x4.hook +++ /dev/null @@ -1,418 +0,0 @@ -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Lesser General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public License -// along with this program. If not, see . - -//!DESC NNEDI3 (double_y, nns128, win8x4) -//!HOOK LUMA -//!BIND HOOKED -//!SAVE nnedi3_int -//!WHEN HOOKED.h OUTPUT.h / 0.707106 < -float nnedi3(vec4 samples[8]) { -float sum = 0.0, sumsq = 0.0; -for (int i = 0; i < 8; i++) { - sum += dot(samples[i], vec4(1.0)); - sumsq += dot(samples[i], samples[i]); -} -float mstd0 = sum / 32.0; -float mstd1 = sumsq / 32.0 - mstd0 * mstd0; -float mstd2 = mix(0.0, inversesqrt(mstd1), mstd1 >= 1.192092896e-7); -mstd1 *= mstd2; -float vsum = 0.0, wsum = 0.0, sum1, sum2; -#define T(x) intBitsToFloat(x) -#define W(i,w0,w1,w2,w3) dot(samples[i],vec4(T(w0),T(w1),T(w2),T(w3))) -#define WS(w0,w1) sum1 = exp(sum1 * mstd2 + T(w0)); sum2 = sum2 * mstd2 + T(w1); wsum += sum1; vsum += sum1*(sum2/(1.0+abs(sum2))); -sum1=W(0,-1106336704,-1104338237,1041734649,-1112016931)+W(1,-1134422686,-1108550970,-1135080854,-1117701445)+W(2,-1097058997,1036063029,1053379177,-1099451832)+W(3,-1096794255,1068454954,1068510503,-1092648385)+W(4,-1096428577,1045547931,-1114733521,-1101312270)+W(5,-1108910446,-1102009308,-1146436468,-1118387353)+W(6,-1110459731,-1122481515,-1107441476,-1118789516)+W(7,-1101174078,1017740065,-1113618698,-1107281979);sum2=W(0,-1107960738,1034572820,-1105088633,-1147785184)+W(1,1022891960,1003346080,-1103397515,1035529310)+W(2,-1112828174,-1096749055,1056062200,-1105585021)+W(3,-1099542471,1067566060,-1127174872,1034766166)+W(4,1028527356,-1090311143,1048792675,-1117109292)+W(5,-1124169384,1028295012,-1106700271,-1116900804)+W(6,1003609248,-1101382023,1033154740,-1121486356)+W(7,1019646072,-1102277943,1037356874,-1114899026);WS(-1075683047,-1087125913); -sum1=W(0,1042687663,1052977914,-1087267578,1041384601)+W(1,1034752002,1046022844,-1097639380,1034807969)+W(2,1020877136,1051043629,-1087388173,1037740431)+W(3,1043598702,1049374510,-1095656786,1044538321)+W(4,1032834596,1044576234,-1108370107,-1113942663)+W(5,1049059763,-1108783446,-1101488315,1043415765)+W(6,1041786741,-1105784362,-1111228387,1011031587)+W(7,1050972591,-1089957133,-1108747496,1034104676);sum2=W(0,-1129327146,-1112916736,-1109246006,-1168639863)+W(1,-1149557934,-1120018795,1012425107,-1122303521)+W(2,1027469999,-1105442406,1044505132,-1114911422)+W(3,-1116270499,1056936993,1054092693,-1109477794)+W(4,-1107094547,1036431709,1015080154,-1122292075)+W(5,-1114668504,1029410453,-1102188513,1038663029)+W(6,-1136313139,-1126491682,-1123974759,-1124857486)+W(7,-1115408970,-1112281372,-1115235380,1004657207);WS(1042212664,-1102203684); -sum1=W(0,-1140902818,1040147851,1035472140,-1111794429)+W(1,1019874102,-1104962202,1045102086,1033944684)+W(2,-1138465404,-1102798136,1044852023,-1122108180)+W(3,1041713132,-1085739950,1052255697,1042129278)+W(4,1031911135,-1090423514,1050093153,1026181805)+W(5,1032244040,-1096835716,-1114874577,1045351411)+W(6,-1122713961,1015091005,-1125530488,1045226448)+W(7,1032066151,-1100137137,1025859399,1037723887);sum2=W(0,1025219442,-1109152196,1026944460,-1136900198)+W(1,-1119436548,-1122141349,1040314652,-1112897189)+W(2,1041363772,1032935700,-1124096755,-1144192892)+W(3,1026037858,-1095545125,-1132954458,1046665648)+W(4,-1106963956,1029288712,1063106013,-1112667488)+W(5,-1148187164,1048235476,1044093468,-1091150222)+W(6,-1115265228,1017807431,-1119277141,-1098670428)+W(7,1027834104,-1124373883,-1115291573,-1099776205);WS(-1106435384,1038338229); -sum1=W(0,1040095954,1057302312,-1085504617,1038469973)+W(1,1019822615,1048464174,-1109673285,1008999077)+W(2,1037825128,1048602738,-1088007186,1047759857)+W(3,1041126536,1046177110,-1089584127,1042217259)+W(4,1042659628,-1113571175,-1112427435,-1122205838)+W(5,1046281616,1010729037,-1099904421,1042535855)+W(6,1025627498,-1116720143,985851280,1020820192)+W(7,1052688116,-1090676327,-1109333660,1034203799);sum2=W(0,1016257202,1059204215,1078138204,1045786159)+W(1,1025056091,1059357388,1057901024,-1115583727)+W(2,-1123344133,-1096239491,-1075026282,1040463834)+W(3,-1117490597,-1080318626,-1073900782,1043123901)+W(4,-1139226916,-1097775023,1041808545,1021989454)+W(5,-1121712633,-1121076469,1040778731,-1105966927)+W(6,1032149092,-1108589001,1040543247,1015040126)+W(7,1018740994,1042934709,1013253724,-1147555881);WS(-1079558823,-1098708322); -sum1=W(0,-1107155318,-1102044491,-1157836704,1018716763)+W(1,1025234303,-1098872409,1050456336,1032647774)+W(2,1015859078,-1087610848,1055919296,1043448582)+W(3,1036194249,-1086405173,1051086989,1041211303)+W(4,-1109510417,1049149960,1049231261,1032229161)+W(5,-1106597869,-1113006787,1047976577,-1113988824)+W(6,-1106784003,1034815041,1037659280,-1114873522)+W(7,-1107821257,-1109243348,1045770027,-1115826050);sum2=W(0,-1115121954,1038073794,-1128914993,-1116577465)+W(1,1012713185,-1114116718,1041575276,-1124395325)+W(2,-1120959275,1048906430,1074552079,1055266270)+W(3,979525395,-1089285214,-1076455267,1060162115)+W(4,1031308048,1044939824,-1081125046,-1098098687)+W(5,1023425822,960279117,-1109266711,1021768571)+W(6,1008898041,-1114246838,1028966618,-1124862202)+W(7,1015643115,-1116674868,-1116558128,1013382601);WS(1045132600,-1120782135); -sum1=W(0,-1105751784,1057393815,-1105555137,-1117651397)+W(1,-1105178898,1048859946,-1097544977,1030868229)+W(2,-1104184899,1059464001,-1093321826,-1113548192)+W(3,-1114219853,1046945589,-1096850414,-1114482291)+W(4,-1110381909,-1115358437,1045680426,-1100710867)+W(5,1038688878,-1101266388,1054674458,-1101910270)+W(6,-1129240105,1006928425,1040711722,-1109195062)+W(7,1028338913,1001553277,1051440502,-1106616547);sum2=W(0,1017265392,1041015042,-1100279165,1015388608)+W(1,-1109811903,1031690548,-1110095441,-1118750728)+W(2,1023756444,1041543835,-1121800962,1018680528)+W(3,-1113627340,1061785433,1052269299,-1143924414)+W(4,1014378799,-1112539854,1027655784,-1099334823)+W(5,-1145950526,1033767962,-1103181542,1020584168)+W(6,-1129429444,-1111764061,-1110834939,-1108053853)+W(7,1013677319,-1098545742,-1106577514,1036964648);WS(1052573852,-1122511817); -sum1=W(0,-1122539822,-1107197216,-1123108403,1051517474)+W(1,1036520122,-1104137920,1038549849,1023654291)+W(2,-1150669710,-1095755763,1032946604,1039184399)+W(3,-1131456914,-1089160552,1050538028,1041388597)+W(4,1027717464,-1090293588,1052989852,-1168884669)+W(5,1032118773,-1090056564,1057974832,1033029075)+W(6,1021054902,-1092174087,1053464075,1028526105)+W(7,1030809195,-1086001910,1057808582,1041880934);sum2=W(0,-1085894681,-1108201039,1070882268,-1081052443)+W(1,1038192816,-1090848333,-1093216289,-1102549623)+W(2,-1098445483,1052221636,1067999858,-1087793608)+W(3,-1102898046,1071505414,1073865984,-1090403840)+W(4,1008806191,-1098981857,1058878464,-1095780376)+W(5,1050638036,-1086351349,-1083525828,1055133376)+W(6,-1102617523,-1096799400,-1107159037,-1096503933)+W(7,1057325981,-1088620184,-1083206959,1053790412);WS(-1073219892,-1080326418); -sum1=W(0,-1114077580,-1101602915,1057495924,-1151047116)+W(1,-1142635506,-1103425331,1053716920,-1114784094)+W(2,-1142955026,-1090278522,1055741332,-1111276924)+W(3,-1123237842,-1092662145,1051447237,-1121668701)+W(4,1038107057,-1091646784,1052494629,1000704387)+W(5,-1103324917,-1114692451,1049044089,-1109204280)+W(6,1026598572,-1101848592,1043005848,1010568075)+W(7,-1095875035,1038718196,1047828379,-1156952092);sum2=W(0,-1121663397,-1095443331,-1067370736,1005231721)+W(1,-1116542136,1050195534,-1071776975,974104521)+W(2,1042431779,-1123573301,1068672794,-1111985184)+W(3,1037730633,-1100504352,1077012119,1047585075)+W(4,1010053773,1043186658,1070664889,1016528922)+W(5,-1137348615,-1102861372,1045361006,-1109020232)+W(6,1028087910,-1110454800,-1123945395,1037668055)+W(7,-1119025600,1040229501,1027642294,-1117277443);WS(-1130027456,1047744266); -sum1=W(0,1030328637,-1103440100,1050534604,-1130350917)+W(1,-1100312969,1043447132,1038395889,-1105733872)+W(2,1036569044,-1096543805,1037345619,1043114871)+W(3,1044449278,-1093151398,-1106526388,1022399622)+W(4,-1106699970,1024264999,-1115006287,1020228332)+W(5,1046212150,-1115860524,1035372917,1024836117)+W(6,-1104762293,1041344218,980910400,-1123108872)+W(7,-1124975021,1032410566,1044066628,-1112803412);sum2=W(0,1029880722,1033391383,-1137819024,-1114516031)+W(1,-1098453144,1041649400,-1137377888,1025620716)+W(2,1029103498,-1095624145,1040796761,1035240799)+W(3,1067660000,-1082091368,-1080643124,1066795978)+W(4,-1094604015,1056223691,-1102259819,-1098376459)+W(5,1046293202,1027973488,-1121978412,1036814117)+W(6,-1104816365,1034193475,-1148596400,-1107858514)+W(7,-1117927817,1034286113,1041009105,-1114981924);WS(1049012636,1037011386); -sum1=W(0,-1108102978,-1097922903,1049818257,1041216474)+W(1,1042768739,-1089977373,1052134241,-1106782690)+W(2,1036457352,-1083790961,1059747641,-1120768141)+W(3,-1105146600,1050515995,1062551839,975424142)+W(4,-1100621772,1053649082,-1088576433,1042971413)+W(5,-1100160944,1044221701,-1093385002,1047421135)+W(6,-1149100234,1020595485,-1108848982,-1142399358)+W(7,-1116535239,-1110188826,-1147628986,1034144007);sum2=W(0,-1130376652,-1109271051,-1098570547,1029552052)+W(1,-1109307779,1040605589,-1097221185,-1097745138)+W(2,998991648,-1117670218,-1087670872,-1101762859)+W(3,-1105231849,1068278024,1068017963,-1100990121)+W(4,-1124853008,-1099193318,-1103240593,-1094879980)+W(5,-1110904873,1035466738,1049832589,-1119653306)+W(6,1033926100,-1111928806,1018913792,-1099498770)+W(7,1012787248,1025845624,1035573068,1046656503);WS(-1099128120,1074104605); -sum1=W(0,1001695642,1031876531,-1106225286,1039516460)+W(1,-1114738061,1036082771,-1127447088,1037331996)+W(2,-1137881464,1049670772,-1114090766,1048871226)+W(3,1035838167,1045634202,-1084335000,1024672505)+W(4,1036976671,1039176783,-1092101927,-1111706306)+W(5,1043227732,1044499416,-1106295064,1040216275)+W(6,1024532056,-1115296143,-1108352670,1018355325)+W(7,1041576607,1036111714,-1103209586,-1129216251);sum2=W(0,-1125983803,1057121124,-1097673861,-1097055530)+W(1,1026289226,1048908439,-1081617292,-1105528539)+W(2,1003361806,1042597022,-1083990029,-1094090339)+W(3,1036989304,-1101738899,1066557847,1060807350)+W(4,-1121376018,-1101518001,1050089807,1045798092)+W(5,-1127516251,-1114490175,1021212715,1007168711)+W(6,999276462,1032222895,-1107462587,1021142275)+W(7,1020382491,-1111061815,1048167829,1024157832);WS(1043392312,-1114334171); -sum1=W(0,1041086874,1046571639,-1101297859,-1108043111)+W(1,1027676176,1051603231,-1100311555,1031499310)+W(2,1029494548,-1114765098,-1090719068,-1123479337)+W(3,1038182418,1063881062,-1092551191,1047470620)+W(4,1033375641,1036439434,-1093343060,1029157954)+W(5,1014428948,1039261900,-1095549099,-1113522785)+W(6,1016176348,1049353410,-1102133676,1032866554)+W(7,1036956537,1039119196,-1097401399,-1108903402);sum2=W(0,1032922039,-1110774431,1024080221,-1111786600)+W(1,1034144522,1041464609,1024001520,1038622987)+W(2,1035186417,-1089347840,-1102975683,-1098326560)+W(3,-1106146153,1063858171,1062496232,-1094555153)+W(4,995983013,-1103182741,-1104694448,-1110476474)+W(5,1014708981,-1105498679,1034761930,-1107944280)+W(6,-1118508182,1046443094,-1113235807,1045574278)+W(7,-1122673776,-1107403517,-1126790312,-1119406695);WS(1055141020,1060902337); -sum1=W(0,1034435725,1057965143,-1123568702,-1104499136)+W(1,-1133288704,1052483105,-1121795134,1006999415)+W(2,1026181508,1052696320,-1094115828,-1153162900)+W(3,1033934442,-1122504460,-1084201687,1029709087)+W(4,1030709219,1052884304,-1093347107,1036285529)+W(5,-1118188821,1049027177,-1096042081,-1155692311)+W(6,1027652318,1046782257,-1098441692,1013713298)+W(7,1035419593,1045790650,-1101051195,-1111952258);sum2=W(0,1043194323,-1070666261,-1098866335,-1101126135)+W(1,1017945729,-1075189642,-1106608294,1010301074)+W(2,992756489,1068575013,1051129947,-1107911121)+W(3,-1117717167,1076566585,1049134123,1046700061)+W(4,1023440269,1056539999,1047751107,1020103457)+W(5,-1108161809,-1098049115,-1097073139,1026363561)+W(6,1034607052,1036076910,1011007330,1035420194)+W(7,-1115924363,-1112346970,1016205049,-1137869730);WS(-1090579868,1070279725); -sum1=W(0,1032329895,1048430680,-1101560157,-1129281319)+W(1,-1102328821,1050349544,-1091335294,1012204235)+W(2,-1113203900,1052980239,1039656780,1033674783)+W(3,-1098061089,1057014372,-1084573078,-1115372202)+W(4,-1105344998,1057962188,-1103450436,-1108117804)+W(5,1034205973,1038273502,1043587871,-1111454739)+W(6,-1106552005,1046276062,-1098888483,-1115265901)+W(7,1041435478,1049777060,1002064136,-1109943484);sum2=W(0,987673807,1027892228,-1103141235,1005138532)+W(1,1036995374,-1102736131,1049007178,1028221332)+W(2,-1095509641,1034852634,-1090760003,-1123669832)+W(3,-1094252408,1059241808,1060311666,-1128511149)+W(4,-1119095571,-1103859919,-1129798465,1032914452)+W(5,-1103179232,1043446486,-1100012675,1006285508)+W(6,1040985329,-1109795439,1051746582,-1122773902)+W(7,-1114181285,1004807604,-1113144024,987177167);WS(1058381774,-1086956646); -sum1=W(0,1005434106,-1096145742,1046241393,1026532260)+W(1,-1149835360,-1100460324,1039571170,-1120107684)+W(2,1034370117,-1096424577,1054608457,-1107524072)+W(3,1036055789,1033532617,-1110152984,-1123297125)+W(4,1007595428,1049990129,-1100950084,1032832748)+W(5,-1173712576,1042033667,-1103984787,1041584782)+W(6,-1122685332,-1147483724,-1122634471,-1111048693)+W(7,-1119060568,1021597150,1016207588,1023439817);sum2=W(0,1073050559,1049113865,1048373410,-1123382260)+W(1,1069067455,1035642194,-1101089925,1035361564)+W(2,-1096535796,-1105600932,1050248373,-1105239942)+W(3,-1073893027,-1114871718,-1113393188,1000972215)+W(4,-1077684470,-1104998692,1015693919,-1112223483)+W(5,1038335059,1034875990,1032989733,987872957)+W(6,994568047,1004288083,1024635942,1016564448)+W(7,-1109196141,1019116562,1041247426,1019016937);WS(1051792028,1027146209); -sum1=W(0,-1173418992,-1096555104,1048715847,1037767898)+W(1,1031492470,-1099279313,1043543405,1032372106)+W(2,1030866682,-1102472206,1045948678,1031937048)+W(3,-1111745573,-1086728512,1048944276,1030986133)+W(4,1037975597,-1098029143,1053562136,1035090980)+W(5,1032231158,-1099704976,1041023999,1038793940)+W(6,1021051177,-1107704157,1031959404,1031982829)+W(7,1029296729,-1088435526,1046674105,1043937550);sum2=W(0,1076285256,-1071495861,-1089164092,1024798548)+W(1,1067013205,-1080654015,1044446905,-1130255717)+W(2,1054912747,-1092768710,-1089831336,-1111620633)+W(3,-1103468782,1053690657,1049463752,-1129289568)+W(4,-1082179927,1062196550,-1116071286,1022374674)+W(5,-1086354611,1059230433,1055604285,-1147177200)+W(6,-1086555076,1065208788,-1102169042,1008723412)+W(7,-1077304359,1069826015,1049830695,990531682);WS(-1116843232,1041538044); -sum1=W(0,1038718416,1050813118,-1091780513,-1107356403)+W(1,1041393778,1048646402,-1107072481,1032833522)+W(2,1023355030,1043671731,-1097953353,-1126022145)+W(3,1040958951,1037057641,-1088265503,-1185162751)+W(4,1040537034,1050123337,-1105750724,1038008293)+W(5,-1112360254,1052799074,-1091053114,-1123581176)+W(6,1043346413,1037436293,-1121572392,1033129910)+W(7,1047211822,1042212684,-1091261766,-1116284746);sum2=W(0,-1127892588,-1090048491,-1076486023,1071993665)+W(1,1025248710,-1124324076,-1080184847,1067215194)+W(2,-1127740272,-1092974499,-1080442855,1068762214)+W(3,-1114879615,1047668544,1048567939,1014309155)+W(4,-1125515678,1042122418,1066323214,-1079656754)+W(5,-1135605467,1052455522,1068938556,-1077318729)+W(6,1015277154,-1102075660,1066205534,-1083078137)+W(7,-1118452308,1052515578,1058048535,-1086246531);WS(1045082936,1047750074); -sum1=W(0,1017867382,1038967959,-1107005280,-1117189504)+W(1,-1105827232,1036533543,-1101431328,1000061951)+W(2,-1139557912,1048524561,1044741561,1034808454)+W(3,-1098507795,1057427781,-1099209723,-1102176472)+W(4,-1112138258,1057555836,-1103886606,-1102736460)+W(5,-1113781499,1044700722,-1117912777,-1102956733)+W(6,-1117154624,1037485187,-1108908881,-1113728179)+W(7,1024003356,1046059755,1024367918,-1108156515);sum2=W(0,1003184961,1024857236,-1114215978,1037587704)+W(1,971431442,-1109323954,1030818718,-1121823736)+W(2,-1131894760,1026446282,1031262679,1045339410)+W(3,-1133283297,-1105665514,1056963612,-1107079097)+W(4,984723076,-1116186208,1055283667,-1090072253)+W(5,1031831407,1024492508,975724297,-1102678968)+W(6,-1125590160,-1121629964,-1116339968,-1103014356)+W(7,1031681833,-1148808497,1026784592,-1123463096);WS(1059869006,1015916977); -sum1=W(0,-1111801867,-1103727218,1051877295,-1115491581)+W(1,1039164638,-1102716146,1051739903,-1106752078)+W(2,1023424768,-1089648586,1057614174,-1104830517)+W(3,-1118862224,-1092420393,1055627629,-1112797325)+W(4,-1114194639,1049092536,-1096079006,1038662167)+W(5,-1099094340,1052180160,1008315659,1030088557)+W(6,-1118811114,1032231232,-1121275805,-1131680577)+W(7,-1096321008,1046058153,1039975892,-1175801754);sum2=W(0,-1113427160,-1090644207,1034414883,1038986783)+W(1,-1104433368,-1091764889,-1120815960,-1135559136)+W(2,-1104169884,-1109333336,995253792,1033390214)+W(3,-1117600576,1065407690,1059846520,-1120264784)+W(4,-1102319880,-1098732665,1048874179,-1104270640)+W(5,1039627671,-1109931470,1008884504,1019376128)+W(6,-1097619580,1043714297,1021072320,-1111461786)+W(7,1047721667,1041133481,-1103318888,-1142244432);WS(1054131356,-1077482588); -sum1=W(0,-1100136045,-1101215881,1045307006,1047064142)+W(1,989703980,-1100083265,1039854844,-1120855287)+W(2,-1114161471,-1091699940,1051542530,1042850313)+W(3,-1117800461,-1088812180,1056393300,-1122501592)+W(4,1013262449,-1095974704,1053327664,-1118254671)+W(5,-1112319975,1033042241,1059113280,-1111473941)+W(6,1027862775,-1095224480,1049428707,-1119385054)+W(7,-1103330903,-1102789769,1055440053,-1109190398);sum2=W(0,-1098032416,1063396296,1043414797,-1093635160)+W(1,1055692800,1024719031,1032661901,1049215120)+W(2,-1101668743,1065491656,1058961916,-1090478816)+W(3,-1100435053,1073645059,1063424749,1050905898)+W(4,-1089098280,1060161647,-1096580753,-1135528507)+W(5,-1094416925,-1074198531,-1098776178,1042380471)+W(6,-1099202751,-1081296593,-1115458644,1032695397)+W(7,-1104551065,-1083400329,-1092624053,1054277265);WS(-1082679118,-1072338335); -sum1=W(0,-1126832308,-1092407662,1041636256,1032452512)+W(1,998650886,-1099976035,1035459839,-1118647007)+W(2,1029713605,-1098757312,1053507448,-1113994637)+W(3,1045660229,1049242330,-1097348797,1019901759)+W(4,-1125245511,1052609817,-1097111418,1026546307)+W(5,1001090478,1049104969,-1099322690,1041545965)+W(6,-1126242526,958956607,-1116731426,-1113342195)+W(7,-1128346278,-1170516592,1009511091,1027607012);sum2=W(0,-1069228184,-1099529380,-1112044089,-1144476451)+W(1,-1073602631,1043301860,1041147606,-1112019052)+W(2,1021776922,1054858487,-1119872164,1036271953)+W(3,1076866983,1044685536,-1106846135,1018899191)+W(4,1069809281,1062109344,1042271976,-1114284680)+W(5,-1101499289,-1097491140,1035368326,-1126672913)+W(6,1013617559,-1149319294,1025827813,-1112053703)+W(7,1036050969,-1113127688,-1115137330,-1146921887);WS(-1125906880,1029353026); -sum1=W(0,1052620124,-1082830235,1044570800,1033131793)+W(1,1040928385,-1087911853,1048894344,1031982257)+W(2,1053619569,-1088553290,1054767249,-1118254573)+W(3,1034478636,-1115166792,1052323270,1037418321)+W(4,-1149501032,-1104403058,-1096342700,1045103465)+W(5,1027228408,1046902211,-1092690897,1053685367)+W(6,1033816441,-1140598044,-1112660402,1032758420)+W(7,-1143379631,-1115398454,-1089842615,1056771243);sum2=W(0,1052242091,-1123374674,-1088438592,-1109756837)+W(1,-1105901664,1032004261,-1109896025,-1117902306)+W(2,1041713460,1057464262,-1106721416,-1106560728)+W(3,-1098081544,1055897675,1057898227,-1101499608)+W(4,-1101414896,-1108453649,1044097375,-1114554169)+W(5,-1140318759,-1099401944,1041656473,1042131382)+W(6,-1123485994,1039811869,1042751001,-1104786072)+W(7,-1108472633,-1092934450,1033994653,1048148308);WS(-1080878567,1068324028); -sum1=W(0,-1115471279,-1095139206,1057833304,1032811018)+W(1,1019310859,-1103458412,1049561152,-1118469827)+W(2,-1121098697,-1090917913,1058273109,-1107876783)+W(3,-1115193805,-1094785898,1054221326,-1109399058)+W(4,-1153442440,-1100131090,1050583410,-1121957752)+W(5,-1104713039,-1118370765,1048985266,-1109945243)+W(6,1023975060,-1102569730,1041261354,-1125987028)+W(7,-1094675607,1044057356,1045920684,-1144681671);sum2=W(0,-1122597644,1052263517,1084267296,1037076324)+W(1,1032420914,-1132353885,1077171750,1017945885)+W(2,-1109997244,-1113437764,-1076080701,1045994672)+W(3,1029919127,-1086124512,-1066836895,-1105598049)+W(4,-1129031901,-1134522929,-1073829589,-1115453382)+W(5,1025876905,-1137529969,-1128728545,1027437378)+W(6,-1121404056,1041285329,-1128683125,-1112127416)+W(7,1025649559,-1111439550,-1109934248,1032857588);WS(-1106960696,-1099012034); -sum1=W(0,-1114528403,-1099071342,1055554285,-1109121109)+W(1,-1119077260,-1099370430,1049964157,-1115766890)+W(2,-1143558020,-1089278443,1061104081,-1114965299)+W(3,-1119877760,-1086538844,1056629915,-1120868875)+W(4,-1109244232,1010994112,1049997315,1034547527)+W(5,-1096650748,1041376829,1042073805,-1114495407)+W(6,-1112604445,1042854492,1031563405,-1139584324)+W(7,-1100402892,1049345155,-1123516568,-1118254096);sum2=W(0,-1116593925,1027806287,1032648371,1024756439)+W(1,1028908115,-1136470458,1006654490,-1116529299)+W(2,999050165,1039840949,1052059722,-1107372324)+W(3,1037914955,-1122048333,1057985079,-1128153177)+W(4,-1106109711,1057135276,-1090440242,-1142966917)+W(5,-1105957739,-1105275062,-1131926605,-1123338691)+W(6,-1123834115,-1096566133,1018741845,1013415162)+W(7,-1113783754,-1105721601,-1124260101,1018182189);WS(-1103089976,1059868827); -sum1=W(0,1026631887,-1091300264,1056895190,1031003956)+W(1,1033737723,-1096562704,1050565142,-1140469197)+W(2,1034000797,-1087537316,1059766350,-1108911023)+W(3,-1130496915,-1094386976,1053939124,1032926090)+W(4,-1106694966,1044429902,-1108577640,-1120892680)+W(5,-1105866475,1045093007,-1109922270,1034482579)+W(6,-1106727101,1040636078,-1122075862,-1136817768)+W(7,-1098705919,1044615672,-1100982776,1045052014);sum2=W(0,-1114832682,1044376552,1052671036,-1084839384)+W(1,1038307608,-1101986459,-1094811671,-1076225566)+W(2,-1109268272,1025272345,-1106762472,-1074779618)+W(3,1031259614,-1112738770,1052706603,-1088390497)+W(4,-1136199018,1014008179,1040752903,1066038403)+W(5,-1118450441,1042085570,-1100877636,1071357616)+W(6,1025376385,-1110075404,1051973899,1068318141)+W(7,-1125957173,1027010884,1036345951,1050587817);WS(-1089897038,998399462); -sum1=W(0,-1100326508,-1114312802,1049930251,-1141222070)+W(1,-1099771006,-1109889234,1047140918,-1114407115)+W(2,-1103969415,-1092992143,1060325312,-1106384368)+W(3,1030998252,-1098209637,1062808044,1017922927)+W(4,-1111096702,-1116385180,-1128865717,1023432554)+W(5,-1129527451,-1096464604,1048691588,-1125954964)+W(6,-1115021151,-1111889198,-1137813989,-1121716413)+W(7,-1124899748,-1109224641,1043572929,1020452535);sum2=W(0,-1094975511,-1113696880,1023473326,1029862812)+W(1,-1089233591,1032844980,1036803698,-1117299445)+W(2,-1089977002,1066397244,-1129026618,1025970568)+W(3,1033778332,1037917830,-1104280508,1031377784)+W(4,1006981461,1039504138,1024702770,-1122944997)+W(5,-1137053176,1032622380,-1121975322,1022461928)+W(6,-1125132764,1021506052,974010432,-1130740686)+W(7,979684320,-1119563165,-1138205260,1024270227);WS(-1096120220,-1099720911); -sum1=W(0,1052677544,-1105594052,-1101878153,990296621)+W(1,1027883172,1050583742,-1120505890,1026529890)+W(2,1046184634,1030711656,-1094174707,1039246623)+W(3,1036941212,1050761182,-1087347673,1031039363)+W(4,1037786724,1044997418,-1091299260,1038193547)+W(5,1039372749,1051859318,-1092171165,1036921611)+W(6,992842790,1041579690,-1105854769,-1115076484)+W(7,1040590154,1052858474,-1087724293,1007468831);sum2=W(0,1040381409,1023777345,-1110031849,1022623295)+W(1,-1131846701,-1095435966,-1146822820,-1096899181)+W(2,1030695069,-1111411494,-1089001391,1049343346)+W(3,1015259161,-1085163747,-1074171332,-1107180310)+W(4,1026868853,-1100600319,-1078760233,1043071461)+W(5,-1164136976,1052695808,1048168469,1020495459)+W(6,-1121164685,1041440525,1074132102,1017314953)+W(7,-1109936403,1051545155,1072577306,1050115198);WS(-1080112807,-1111145054); -sum1=W(0,-1103297132,1049824404,-1133975251,1026400021)+W(1,-1106341774,1049617192,-1122989109,1042898005)+W(2,-1098278655,1059552348,-1086286580,1041608840)+W(3,1024154699,1031972225,-1137351813,-1145221295)+W(4,1037514093,-1085661228,1056970252,-1102084285)+W(5,1034961350,-1097823136,992708574,1041904442)+W(6,-1125780682,-1114326813,1021582000,1038246926)+W(7,-1109009483,-1119831648,1040424089,1042525799);sum2=W(0,1041258750,989910477,-1134607603,-1109794979)+W(1,-1109734283,-1100922013,1016064722,1041809078)+W(2,-1123542769,-1096844113,1041392492,-1126381362)+W(3,-1113561957,1051742866,1057819912,982123162)+W(4,-1110564237,-1100235579,1047439582,-1119465765)+W(5,1026811493,-1105813951,-1113868277,1026735929)+W(6,-1130694514,-1151284621,-1118083589,1019553626)+W(7,1024057869,-1136706867,-1114600003,-1114678252);WS(1043409720,-1105036943); -sum1=W(0,1040191749,-1096303173,-1115184605,1041655059)+W(1,1033970558,-1095924673,1041748910,1041917006)+W(2,1042494496,-1093807736,1044442592,-1160531625)+W(3,1046767380,-1092831585,1042876074,1039311757)+W(4,972615552,-1096756208,-1140612185,1020654492)+W(5,1032778168,-1126846855,1018241414,1043700571)+W(6,1032217109,-1115229280,1027878365,1034107952)+W(7,1032356247,-1098580285,1034858676,1036396440);sum2=W(0,1027808259,-1139047739,986751832,-1095774205)+W(1,1010119787,1043340308,1026247831,-1093511024)+W(2,-1111510504,-1106790738,1065364148,-1089533357)+W(3,-1113418759,-1096910874,1040723354,1053173071)+W(4,1032132185,1040059331,1038861011,-1106558855)+W(5,-1121052855,-1115460243,-1113647147,1027584935)+W(6,1014515195,1017581734,1041604470,-1121443175)+W(7,1010692603,-1120741339,-1135975307,1014681515);WS(1035857520,1029952289); -sum1=W(0,-1143077795,1037051011,-1110400621,-1121149466)+W(1,-1105351783,1029971495,-1106469910,1043652126)+W(2,-1113811952,1049064844,-1094483622,1027875988)+W(3,-1106526780,1035603988,1058276716,1035104701)+W(4,1035289215,-1083894414,1056346487,-1114346217)+W(5,999420801,-1098557596,1050633420,-1123554317)+W(6,-1129002434,-1111645039,1042325343,-1130799743)+W(7,-1113970285,-1130790920,1026109447,1025377311);sum2=W(0,-1118517607,1026484093,1039465846,1008581907)+W(1,-1101077931,1046485772,1030900361,-1114630284)+W(2,1029148161,-1098019518,1048118782,-1106945018)+W(3,-1087996420,1071267691,1064954318,-1097625455)+W(4,1047526016,-1082674625,-1084489705,-1156379726)+W(5,-1108756119,1032470282,-1118487613,1024110641)+W(6,1038718292,-1106613565,-1112021711,1020048570)+W(7,1024464693,-1113199029,-1120012731,1036291722);WS(1058189134,1034857672); -sum1=W(0,-1171748679,1031241360,-1100969760,987174985)+W(1,-1105475825,1044072484,-1094075536,1045893176)+W(2,-1097172873,1057114388,-1082247827,1042860595)+W(3,-1108837708,1051374554,1060030327,1031954257)+W(4,1038034707,-1083662360,1058651386,-1120638978)+W(5,-1131134898,-1099379283,1046921459,-1137288661)+W(6,-1113151849,-1121036423,1041721673,1037681908)+W(7,-1119273967,1018101850,1036514264,1029972391);sum2=W(0,1003810984,1020569783,-1128982694,1043745048)+W(1,1036204547,-1114489126,-1099380876,-1104004872)+W(2,-1101998989,-1121260135,-1101918458,-1104165612)+W(3,1041029203,1052640914,1059611184,-1121067579)+W(4,-1098215637,1059150102,1040381797,-1100369008)+W(5,1044393168,-1098121773,-1094102036,1032515174)+W(6,-1110527635,1037147118,1028175839,-1114899975)+W(7,1027560485,-1110248773,-1113935142,1000033398);WS(-1107450480,1040804833); -sum1=W(0,1040192716,1040473489,-1095196747,-1124855402)+W(1,1022226221,1047969017,-1098407451,1020416041)+W(2,1002013395,1044185574,-1087290490,-1160070647)+W(3,-1117682794,1060667554,-1089168888,1045737613)+W(4,1001040843,1057909434,-1111951852,-1101676720)+W(5,1000424795,1049088596,-1119291421,-1103624738)+W(6,-1120982404,1038016429,1031577591,-1104451167)+W(7,1025306833,1042416864,-1112956481,-1115902938);sum2=W(0,1014727333,-1124633329,1026257754,-1111611661)+W(1,-1117243126,-1107065949,-1111801245,-1136702760)+W(2,1029406572,1041729284,-1084100906,-1103677442)+W(3,1027900147,-1094200388,1052541581,1050798725)+W(4,-1112527674,-1104959017,1070744988,-1105828213)+W(5,-1114664521,1040214496,-1111707080,-1111536822)+W(6,-1111634336,1005029260,-1127513012,-1106506739)+W(7,-1107116047,1049039902,-1107038609,-1140667375);WS(-1113867888,1064515135); -sum1=W(0,-1113562537,1048061265,1011269086,-1105945126)+W(1,-1107046062,1043460993,-1098944190,-1148623547)+W(2,-1103978495,1060048584,-1107431310,-1111558073)+W(3,-1098739202,1062873548,1045822761,-1114838028)+W(4,-1122423580,-1119786749,1025265092,-1101841139)+W(5,1019693149,1023528257,-1112998912,-1117915947)+W(6,-1116789880,-1106657727,-1142662356,-1106868487)+W(7,1020558520,-1137576074,-1104660585,-1122252061);sum2=W(0,-1145158406,1022878354,-1111624996,1010204019)+W(1,1012385731,-1129472106,1015658802,-1123973089)+W(2,1016118130,1044961455,1040055751,-1157676569)+W(3,1024197601,1049544336,1057430996,1022031298)+W(4,-1112179804,1030346877,-1114498280,-1124728962)+W(5,-1119519161,-1131221354,1020564842,1023003938)+W(6,-1127326042,-1095482557,-1112131584,-1121117277)+W(7,-1113792718,-1093377057,1019749938,-1141925830);WS(1051333020,-1087054195); -sum1=W(0,-1112042433,-1104387605,1052246829,-1113527444)+W(1,1019002067,-1096771599,1048899277,-1098301717)+W(2,-1115058903,-1102529947,1054136106,-1095193948)+W(3,1046618143,-1093976551,1044227957,1044013586)+W(4,-1107874438,-1089735051,1060328029,-1107288943)+W(5,-1148774132,-1129150690,1046377228,1038700845)+W(6,1036768028,-1101876091,1045160291,1024370318)+W(7,-1154881470,-1098135714,1045432325,1019966234);sum2=W(0,-1114066012,1041392892,1044719218,-1097547793)+W(1,1029900262,-1112610934,1046575198,-1095644935)+W(2,-1114806697,1041587346,1050162797,-1102972970)+W(3,-1110038644,1025557898,1055420600,-1095936036)+W(4,1036646832,1055783298,-1099287148,1028020818)+W(5,-1110070018,-1102485451,-1100701871,-1113902766)+W(6,1020625547,988088600,1033323822,-1135974783)+W(7,987867800,1039502616,-1119304428,1018696751);WS(-1120103648,-1090070191); -sum1=W(0,-1117418940,1049030490,-1112262737,-1114427969)+W(1,1024592611,1050801054,-1094705236,1032013281)+W(2,1040968250,-1111205267,1042055990,-1110419822)+W(3,1049918615,-1116228463,-1085341341,1047944497)+W(4,1034410595,1050512309,-1106227665,-1132367051)+W(5,1035134604,-1102511675,1036298997,1025392341)+W(6,-1119948353,1034763283,-1138448657,-1111046724)+W(7,-1144523437,1039656998,-1110564136,-1120201127);sum2=W(0,-1122606938,1046354401,-1124762815,-1118515993)+W(1,-1141997982,1040228902,-1102583710,1036845124)+W(2,1027805544,-1143835982,1052785838,-1106443071)+W(3,-1120462650,1061896257,1059397472,1043676745)+W(4,-1100560083,-1080731069,-1120768779,995709275)+W(5,-1105726471,-1098049024,-1126645315,-1128858827)+W(6,1025575588,1026943708,1011421951,-1112152255)+W(7,-1113668318,1032253740,-1122685018,-1127110207);WS(1060158670,1068766623); -sum1=W(0,-1116432453,1056712636,-1087151539,1040295867)+W(1,-1131098839,1049784895,-1102593034,1033948341)+W(2,-1099753724,1057908127,-1089291740,1031077093)+W(3,1034945056,1044163070,-1094800699,1027113355)+W(4,-1122123599,1028198895,1036808107,-1132674679)+W(5,1040823512,-1122504371,-1120242995,-1117547229)+W(6,1040184285,-1123329903,-1127465369,1040274980)+W(7,1050332416,-1096645803,-1132187055,-1137741501);sum2=W(0,1036379663,-1098232449,-1128107780,-1120677803)+W(1,-1108907739,1058983203,1035811659,-1120240179)+W(2,1070189048,1016986873,1040144345,1029686139)+W(3,1073213180,1047923452,-1105399966,-1109097268)+W(4,1065321765,1033582270,-1110681209,1041308319)+W(5,-1076673488,1031365639,1039880527,-1109042515)+W(6,-1079893128,1038048757,-1116001167,1034493417)+W(7,-1072585926,-1107019906,1018297481,-1131123922);WS(-1112459888,1031046963); -sum1=W(0,-1112719265,-1128634346,1043326546,-1115081924)+W(1,-1129483154,-1120462421,-1103778738,-1114915140)+W(2,-1103727283,-1112785958,1050524372,-1104237825)+W(3,-1091575740,1056781779,1067939282,-1096588493)+W(4,-1104335643,-1153409228,1048587330,-1108534894)+W(5,-1155155940,-1108013960,-1132710977,-1114726045)+W(6,-1114094348,-1118230989,-1109505653,991235804)+W(7,-1105426861,1027667442,1036777787,-1111746006);sum2=W(0,-1119086167,1037241732,-1114652243,-1131518324)+W(1,1013020612,-1129818230,1028260797,-1115730540)+W(2,-1141008560,1029187991,-1112264831,1036245214)+W(3,-1108719150,-1074141953,1072760747,1034705438)+W(4,1023891147,1019083994,1042535682,-1119172530)+W(5,-1145112744,-1124211508,-1131878972,-1133917220)+W(6,1018251990,-1122886966,1037493286,-1114007324)+W(7,-1116478859,1027168441,-1129254230,1018465006);WS(-1086783566,-1086791567); -sum1=W(0,-1115195632,-1095708330,-1123676804,1041725033)+W(1,-1153026662,-1093442522,1018199561,-1121101892)+W(2,-1134496297,-1098161001,1037878573,1034570216)+W(3,-1108787789,1044632085,1064261167,-1103584185)+W(4,-1119803561,-1091375169,1057417647,-1108866704)+W(5,-1145121243,-1107384199,1052226946,-1122033784)+W(6,-1131708777,-1100078210,1046948682,-1117964907)+W(7,-1110064394,-1104664012,1047330733,1022321300);sum2=W(0,1031515378,-1077397139,-1134939312,-1112896962)+W(1,-1121810184,-1079753374,-1097085111,1035985281)+W(2,1010081392,1044674665,1052841311,-1105060263)+W(3,-1119765868,1073378801,1007836336,1031953140)+W(4,1035546479,1056367001,1044809025,1022446080)+W(5,-1106495935,-1109376902,-1118570548,1031289566)+W(6,1028378344,1035615024,992033726,1032016077)+W(7,1003402623,-1118889676,1010750288,-1150317246);WS(-1096711324,-1080143969); -sum1=W(0,-1135181951,-1095339398,1050582337,1026786373)+W(1,1025399430,-1094144146,1049483953,-1123204644)+W(2,1033906501,-1093853897,1045129706,1006467326)+W(3,1041786535,-1089314149,1046728732,1031608549)+W(4,-1133559462,-1089126233,1045641984,-1135165794)+W(5,1003671004,-1110956839,1051092970,1017185520)+W(6,-1123695637,-1129083412,1049638101,996324016)+W(7,-1105366874,-1113909272,1057307443,1009923752);sum2=W(0,1023911567,-1108118447,1044892126,-1112738860)+W(1,1004932796,-1134375038,-1138359022,1020475455)+W(2,-1119124867,1035251904,1063133445,-1102926770)+W(3,1022775023,1037995724,1074655410,1047698054)+W(4,1011639102,1050162042,1070062472,-1113839430)+W(5,1036397588,1037707684,-1083132698,-1117927031)+W(6,999444348,-1111062570,-1073510095,1017195567)+W(7,-1106309084,-1101285996,-1073687480,1041743674);WS(-1089880270,1068594400); -sum1=W(0,-1114467040,-1104513741,1050219169,-1118490053)+W(1,1023170830,-1091458130,1042545281,-1120682309)+W(2,1036273894,1034367029,1048674674,1031296832)+W(3,-1107800974,-1100997781,1042739212,-1110241363)+W(4,1029867434,-1095286649,1053624831,1034289100)+W(5,-1106779367,1047811540,1034908007,-1107012174)+W(6,1024593089,-1096228817,1034674708,1021221591)+W(7,-1110449433,-1109179032,1049808694,-1126204757);sum2=W(0,1030004067,-1133064657,1024174065,-1119836251)+W(1,-1117028113,-1134091777,-1113615539,1025775761)+W(2,-1105887481,1045929484,1032698350,-1118489229)+W(3,-1066126465,1081917443,-1097201480,1041573100)+W(4,-1104777348,1043726141,1033613382,-1124268877)+W(5,-1122550707,1028310407,-1107697461,1030764051)+W(6,-1130918117,1016764395,1029778305,-1116797441)+W(7,1023720579,-1116064873,1018371831,1018350967);WS(1067475431,-1126058166); -sum1=W(0,-1108052732,-1097851361,1049362324,1040199303)+W(1,1043040440,-1108210069,1048929252,-1109622414)+W(2,1048922396,-1084429932,1054104112,1041203782)+W(3,-1097574342,1055911149,1047147106,-1104274751)+W(4,-1119673025,1041902328,-1085779789,1047880876)+W(5,-1101774749,1035827603,1049622021,-1116198608)+W(6,1019400344,-1115594513,1019477630,-1107876353)+W(7,1007801026,-1107003538,1037086373,1036701569);sum2=W(0,1013753738,1020731454,-1120697178,1009873360)+W(1,-1113150555,1046742995,1034035253,-1099358283)+W(2,1015248850,1045156685,-1094710566,1039470065)+W(3,1042650722,-1104352239,-1128318417,1046693145)+W(4,1040818978,-1089864705,1045040370,1036008061)+W(5,-1105652199,1045331461,1025091411,1030627793)+W(6,1033430289,-1109224259,-1106535436,1017876415)+W(7,-1120377801,1016214593,1019751894,-1132110931);WS(1060496974,-1099362699); -sum1=W(0,1054706808,-1109706041,-1098091909,-1129324363)+W(1,1036662868,1041317773,-1123237413,1015757258)+W(2,1045895019,1051554925,-1091928498,1021341985)+W(3,1033303646,1049334366,-1083798889,-1112852963)+W(4,1044095763,1051166813,-1095315343,1041804248)+W(5,-1130190200,1053590462,-1087007295,-1127492145)+W(6,1035564779,1049285205,-1097088265,1039262630)+W(7,1040746168,1055551482,-1094550458,-1114905285);sum2=W(0,-1073385920,1077926840,1032559783,-1094451238)+W(1,-1084887580,1058818874,-1089669880,-1121878040)+W(2,-1083140914,1060159151,1045764296,-1173171215)+W(3,-1081800202,1074845707,1059775011,-1120435570)+W(4,-1085954594,1061906872,-1103860568,-1115590029)+W(5,1037413129,-1084431515,-1094536545,1053315192)+W(6,-1096433065,-1126824848,-1133232881,-1107838893)+W(7,1054210787,-1087315344,-1099186518,1052978812);WS(-1078369703,1041267413); -sum1=W(0,1024386586,1041630887,-1102607056,1016693023)+W(1,-1098405416,-1112635974,1051293608,1018393854)+W(2,1044040033,-1132435208,-1094040968,1046099151)+W(3,-1098286219,1041292515,1052507157,-1095618428)+W(4,-1130684104,-1091497929,1056853585,1018959206)+W(5,1045750173,1016159377,-1105775474,-1117949682)+W(6,-1098338270,-1139597330,1049412460,-1118540325)+W(7,1041584973,-1101611546,1026100205,1040982949);sum2=W(0,1035615459,-1097925659,1043665288,1020457849)+W(1,1028814353,1038714809,1033337220,-1103657321)+W(2,1062855981,-1077657685,1051048913,-1109823715)+W(3,1052250964,-1101970047,-1113114333,1058024935)+W(4,1056109526,-1098468896,-1085664062,1056999181)+W(5,-1106019250,-1114182260,1040975429,-1105846491)+W(6,1048995011,-1104046747,-1109605260,1042595027)+W(7,-1115640692,-1130122971,1034778788,-1112374505);WS(1049151900,-1114127847); -sum1=W(0,1050216581,1044969414,-1106856243,-1099359923)+W(1,1000015204,1047621718,-1112471205,-1148711507)+W(2,-1136218178,1057314961,-1091938023,-1133921207)+W(3,1023136961,1055877843,-1092033343,-1112054390)+W(4,-1130455775,1054358666,-1099719178,1034273823)+W(5,-1133465094,1052966059,-1089783713,-1122838974)+W(6,-1160090192,1045850836,-1099053307,1019980258)+W(7,1035991733,1052491071,-1087984664,-1112322824);sum2=W(0,-1105478410,1011113448,1068049752,-1082501551)+W(1,1039552519,1050864081,-1103020148,1059003564)+W(2,-1131405058,-1125310098,1066695202,-1098156272)+W(3,-1099466970,1043215106,1074596924,1039344435)+W(4,1049027924,1034334973,1067601936,-1099880092)+W(5,-1115050596,-1095883745,-1084539788,-1107282542)+W(6,-1129231446,1036178144,-1075514015,-1097076855)+W(7,1049583286,-1088635155,-1074115054,1042018058);WS(-1081332839,-1093454830); -sum1=W(0,-1109709318,1035356975,1039420520,-1111308088)+W(1,-1104916884,1037116623,-1122158672,1014687039)+W(2,-1108177419,-1125155242,1053028347,-1112931654)+W(3,-1117212646,1030327966,-1104761999,1020526050)+W(4,-1119705461,1050241163,1032136206,-1119448076)+W(5,1032417267,-1103907222,-1115200780,-1112611266)+W(6,-1118748528,1046095669,-1115609017,-1136487898)+W(7,987327371,1033262333,1029855614,-1104533373);sum2=W(0,1013207527,-1118344664,-1124997045,1036829905)+W(1,-1127355075,1028266047,-1117884424,1016171285)+W(2,-1103159789,1043690369,-1116887196,1024917624)+W(3,1040955478,1051132935,1047094008,1041601336)+W(4,1008876024,-1108842627,1057384051,-1127506713)+W(5,-1116686760,1041402295,-1100609336,1033786361)+W(6,1035764738,-1105537330,-1098518151,-1114313206)+W(7,-1154118338,-1128237045,-1089828796,-1102385561);WS(1063446990,1030048893); -sum1=W(0,-1131562670,1043069042,-1108681470,-1108650254)+W(1,-1099483503,1049571969,-1106599551,-1106453175)+W(2,-1106193120,1061428532,-1097709592,1008661917)+W(3,-1102405700,1053095529,1046689338,-1102088711)+W(4,1021119810,-1115069793,1029025472,-1123233168)+W(5,-1113568905,-1119868742,1006738196,-1104754348)+W(6,1009340592,1027160065,-1120287391,-1136963210)+W(7,1030255032,1043118346,-1111789333,-1114502129);sum2=W(0,1012371361,1017109065,-1110016822,-1103671135)+W(1,-1149491589,-1115161102,-1109821790,-1097972516)+W(2,1023756477,1012418345,1060485172,-1094449842)+W(3,-1165255819,-1111308586,1031379047,1049769129)+W(4,-1111467932,1015942947,1046805034,999148403)+W(5,1019335917,-1106016138,-1114576028,1022790203)+W(6,-1140694601,1015823021,1024897044,1032463998)+W(7,1010513313,1026481588,-1114618076,-1146831635);WS(1060385486,1040268319); -sum1=W(0,-1115333181,-1105770459,1048230464,1022495614)+W(1,-1113839600,-1104706211,-1122113023,-1115044751)+W(2,1026945989,-1085502934,1051932092,997701279)+W(3,1041834949,-1112644646,1065603891,1044329112)+W(4,-1100015113,-1102865873,-1105250533,1038196649)+W(5,1010458454,-1112283012,1054415097,-1113673817)+W(6,-1113704543,-1108020290,-1122402466,-1105082025)+W(7,-1110169699,-1115522389,1046973419,-1115640050);sum2=W(0,-1115664423,1041813775,-1142717933,-1120925434)+W(1,-1122287706,1041645390,-1094011677,-1119842210)+W(2,1044568139,-1087138046,-1124627987,-1120985148)+W(3,-1099350461,1067461852,1027339570,-1113918825)+W(4,-1102715015,-1116572542,1045144111,-1100833175)+W(5,1042022920,-1109622665,1054026149,-1101147879)+W(6,1031291077,-1113357449,-1122353792,-1112018489)+W(7,1032474264,-1110133469,1047364150,-1109170005);WS(1049043868,1050086952); -sum1=W(0,-1127858130,-1091279607,1054362490,1028884238)+W(1,1025810768,-1101354119,1044465651,1022883995)+W(2,1034666762,-1089232423,1050465752,1032068165)+W(3,989092984,-1092016019,1058690160,1005443958)+W(4,-1115481017,-1089729669,1053482909,1007092039)+W(5,-1119959429,-1104525366,1051092259,-1149438996)+W(6,1012364567,-1121438163,1019953121,-1137072337)+W(7,-1097661520,-1160888088,1051219071,1017307814);sum2=W(0,1030282550,-1099759289,1070065566,-1078832473)+W(1,1012065197,1050936278,1068820850,-1076346523)+W(2,1049708534,1018991152,1068572253,-1075628240)+W(3,-1101566471,1050588571,1075164582,-1072955990)+W(4,1043525707,-1112383125,1046261639,-1093459475)+W(5,1038111746,-1121285468,1053555382,-1088795804)+W(6,1040589253,1039884984,1040055978,-1099780818)+W(7,-1106531005,-1113841779,1058828770,-1090423367);WS(-1083655502,1074535575); -sum1=W(0,973651072,-1100106921,1049212555,-1122472503)+W(1,1028862937,-1096173461,1052529147,996549482)+W(2,1029517469,-1088250868,1057957824,-1111380529)+W(3,-1111330742,-1101351113,1060855844,-1125410415)+W(4,1043404639,-1092528244,1050267538,-1109626381)+W(5,-1105397947,1034877328,-1104065896,-1122247818)+W(6,-1129726574,-1113904430,1041335934,-1108333759)+W(7,-1099887737,-1118418050,1047916353,1037233742);sum2=W(0,1037582341,-1116649305,-1107051108,1040538112)+W(1,1032149251,-1112916551,1041643977,-1112067691)+W(2,-1135487115,1044443302,1030763641,1036263743)+W(3,-1107247151,-1117703407,1053360182,-1115814520)+W(4,1053968825,1049963138,-1087331905,1035849297)+W(5,-1096732175,1042101117,-1089009482,-1104153316)+W(6,1034930229,1046616621,-1110671517,-1104877620)+W(7,-1094249638,-1127010106,1059951262,-1116847106);WS(-1132786560,1056578758); -sum1=W(0,1031072232,1043718831,-1098888378,-1123786893)+W(1,1019453021,1050053971,-1104586611,1030360908)+W(2,-1112153353,1057505465,-1090760605,-1123598824)+W(3,-1127115205,1049535379,-1081773448,1035671447)+W(4,-1153314582,1052394474,-1106021324,1044649456)+W(5,-1105591705,1045418390,-1120283669,-1105554848)+W(6,986346381,1044283028,1036365944,1033186457)+W(7,1024604121,1048806335,-1103287167,-1108912601);sum2=W(0,1040658557,1011638864,1041865287,-1109113498)+W(1,-1106354313,1020064744,-1103147627,1033931950)+W(2,1027144364,1049840877,1026998340,-1120927100)+W(3,-1103628435,1050147177,1053587315,-1102211113)+W(4,-1123462592,-1117174472,-1118058864,1033328738)+W(5,-1130705048,-1105120318,1036775410,-1101351534)+W(6,-1126068784,-1113970774,-1104140895,1028877580)+W(7,1016031184,-1135769248,1030416564,-1112076066);WS(1062711758,-1109562142); -sum1=W(0,-1107075140,-1100622401,1053288051,1017596397)+W(1,-1125545776,-1104747337,1049612355,1007433175)+W(2,-1121788380,-1103229831,1059638178,-1120034657)+W(3,-1112684886,-1083301774,1048337697,-1098025711)+W(4,-1128625782,1050510715,1052952654,-1112854653)+W(5,-1102890883,-1097610180,1051307580,-1108240645)+W(6,-1129119788,-1109077454,1041285742,1022176121)+W(7,-1102110160,1030737729,1049115768,1020667959);sum2=W(0,1022257834,977550902,-1113927342,1036504102)+W(1,1033804876,-1105772859,1042844173,-1107093105)+W(2,1033963400,-1098748483,-1096777339,1028160469)+W(3,-1113268759,1063293804,1059312088,-1089861840)+W(4,-1123922685,-1090033704,-1134320563,-1101525036)+W(5,1029999681,1051039483,1037687330,1017532722)+W(6,1015463858,-1104977553,1024487701,-1122996995)+W(7,-1125618402,1022914778,1004875175,-1116068477);WS(1046002488,-1083997249); -sum1=W(0,-1116203964,-1099156844,1050076828,1025075217)+W(1,1044431961,1028498222,1049400252,1035032656)+W(2,1041235242,-1096363997,1050263757,1032516798)+W(3,1046371486,-1079124621,1020370202,1050189128)+W(4,-1106267745,-1088685662,1048790666,1042510329)+W(5,-1117705943,-1103556299,1053355933,1039724554)+W(6,-1122870401,999993136,1034829570,1027729159)+W(7,-1109240562,-1106798659,1037276039,1037249299);sum2=W(0,-1094982381,1041875660,1017839086,1045890174)+W(1,1024745423,-1091311273,1044409386,-1107764806)+W(2,-1097113645,1042706326,974632891,1048260200)+W(3,1017043870,-1148119319,1061393923,-1118443235)+W(4,1052555320,-1098101314,1043955676,-1097368628)+W(5,-1107563793,1010824956,-1098402228,1041238578)+W(6,1049262968,-1094774489,1042935118,-1116185663)+W(7,-1118735987,1030619863,-1094515595,1042214090);WS(-1083255246,-1075588436); -sum1=W(0,-1154522904,1026375684,-1099839750,1037990411)+W(1,-1106371438,1036249778,-1113752075,-1119606102)+W(2,-1105464695,1056687627,-1092436626,1043935324)+W(3,1036086422,-1097055709,1050924256,1036476796)+W(4,1023783355,-1088556578,1056650964,-1111337285)+W(5,-1127243930,-1108055408,1045926824,-1110940389)+W(6,1030176790,-1105944807,1039385437,-1124332025)+W(7,1031412139,-1123388097,1041066449,1021333175);sum2=W(0,-1117330831,1032531181,1043756688,1060766869)+W(1,1023708058,-1114369361,1031926890,1067300065)+W(2,-1133288218,1017487862,-1104593512,-1105945514)+W(3,-1122435213,1047518334,1043258354,-1075696003)+W(4,-1139180683,-1122916014,-1096895795,-1102393264)+W(5,1020252429,1027012545,1049767697,-1106946489)+W(6,1025188082,-1103557501,1019544307,1020047431)+W(7,-1109968059,1046855474,-1112657711,-1113285900);WS(1056055196,1023945849); -sum1=W(0,-1104545849,1036175954,1032040419,-1111539988)+W(1,-1139517988,-1138851412,1009002268,1026875367)+W(2,-1101013315,1048468083,1040659763,-1104005681)+W(3,-1136100212,-1097789539,1059870683,-1112873620)+W(4,-1148373856,-1096999890,1039368714,-1135793772)+W(5,1013350648,-1097071058,1053644410,-1132670698)+W(6,-1120654743,995622088,-1122818538,1028030253)+W(7,-1108930702,-1128233700,1033002810,-1133516850);sum2=W(0,1033182461,-1110992702,1011638125,-1116812221)+W(1,-1135790885,1041801313,976542168,-1135785781)+W(2,1036058972,-1115959119,-1106760241,1013579453)+W(3,-1145806187,-1083556559,-1068720208,1034110873)+W(4,1026470367,1047402951,1080067579,1048786168)+W(5,-1125994579,1026458945,1043021822,-1124564059)+W(6,-1123856921,1021989349,-1118809257,-1115658442)+W(7,-1152817846,1029289545,1027196491,-1110636256);WS(1047050040,1036867972); -sum1=W(0,1031952202,1041031945,-1098508279,-1117663192)+W(1,1040033213,1050476745,-1097704487,1033331580)+W(2,1049413776,1016870010,-1091275871,1012948685)+W(3,1052329098,1054273441,-1087382286,1043041286)+W(4,-1134253939,1041748879,-1095309386,-1131302504)+W(5,1023712847,1035493153,-1117526273,-1125396951)+W(6,-1129317744,1041656495,-1112254893,-1153578470)+W(7,1023414180,1041394937,-1108492595,-1112644847);sum2=W(0,-1120609508,-1138324119,-1110367912,1021280635)+W(1,-1098653081,1042859622,1038385587,1026624912)+W(2,-1074671298,1072071026,1026263792,1026288466)+W(3,-1081276780,1068070176,-1107049493,-1122098825)+W(4,-1097107702,1044485226,1024907208,1040255596)+W(5,-1110118090,1040658983,-1122488627,-1152233050)+W(6,-1137118351,-1118978815,1038809437,-1126727249)+W(7,-1119823807,1035453187,-1111098449,1006813455);WS(1047287096,1059538103); -sum1=W(0,1030804480,1034749929,-1102474905,1013951379)+W(1,-1111595219,1051408038,-1094490621,1039425378)+W(2,-1123153834,1049213285,-1099609086,-1112788128)+W(3,-1098057279,1057344539,1048597242,-1098419769)+W(4,1007980582,1048793645,-1094890059,-1118093753)+W(5,1018775223,-1106759404,1046324795,-1108341356)+W(6,1036089754,-1115115061,1003815995,-1120388747)+W(7,1030691489,1033654600,-1126686757,-1135294247);sum2=W(0,-1112864979,1024004698,1034996841,1004307827)+W(1,1034721747,-1109416755,1041661735,-1116757818)+W(2,-1108077379,988806988,1041642045,1037366938)+W(3,1023366533,1058238498,1008174217,-1107547239)+W(4,1021246669,-1115279539,-1122858630,-1108868659)+W(5,1032508120,1041332549,-1089151778,-1128614293)+W(6,-1113986367,1033457886,-1130797677,-1130732717)+W(7,-1153257254,1018109285,-1111548255,-1122125438);WS(1066216871,-1084582294); -sum1=W(0,1009745022,-1095963722,1050775177,1027534757)+W(1,1023325836,-1096473834,1046303345,-1126933960)+W(2,1034246149,-1087129751,1057767679,-1118146623)+W(3,-1103455511,-1142570129,1064400323,-1103828265)+W(4,1025953385,-1094684497,1038452388,1018950609)+W(5,-1105242559,-1107829831,992534739,1030437560)+W(6,988118663,-1107520037,1025316967,1020674901)+W(7,-1107601837,-1117719279,1044853309,1033139589);sum2=W(0,-1127013105,1031626404,1029958550,1017794797)+W(1,1018526115,-1117975133,-1113082476,1023300847)+W(2,-1123587641,1062148372,1035325186,-1145491637)+W(3,1052346460,1074624908,-1130733653,1041942663)+W(4,-1098654594,-1090512380,1046581721,-1113152926)+W(5,1029804743,-1070854231,-1113725416,-1139181075)+W(6,-1118240305,-1095518794,1031776819,-1120299385)+W(7,1030491706,1041467716,-1115594754,-1142763637);WS(1033725552,-1082653885); -sum1=W(0,1027658456,-1091894661,1054730080,1024810077)+W(1,1033791775,-1094613753,1052727904,1020875129)+W(2,1038169633,-1085886368,1060322284,-1114253244)+W(3,-1130834725,-1094605577,1054915405,1021660859)+W(4,-1105755912,1049096200,-1115316932,1010914050)+W(5,-1107114253,1038006563,-1113871235,1032412472)+W(6,-1106878767,1040399888,-1114082704,1016596422)+W(7,-1102176852,1038046228,-1098681477,1044096992);sum2=W(0,-1126607908,-1109006144,-1093467963,1059727060)+W(1,-1111819446,1050929158,1063076656,1073053378)+W(2,1032709615,1025316173,1048889614,1073749745)+W(3,-1119610542,-1107176811,-1090320472,1058093447)+W(4,1027594385,-1123863107,1046933317,-1079533534)+W(5,1029384695,-1122531221,1051206364,-1073154062)+W(6,-1115269200,1026796828,997945380,-1075936158)+W(7,1032209203,-1115616555,-1109796884,-1088004581);WS(-1087442510,1045166814); -sum1=W(0,-1106921670,1032009478,1041337656,-1110338367)+W(1,1032907600,-1127325529,-1100890040,1042108264)+W(2,-1111070674,-1106321881,1060092296,-1105899594)+W(3,1047421629,-1085655355,1044767811,1027442111)+W(4,-1094092352,1057239638,1040377247,-1105935775)+W(5,1031075349,-1098381173,1037296628,1037469097)+W(6,-1136240762,-1128650952,-1131454723,1027139781)+W(7,-1129052086,-1107389381,1037463686,991481919);sum2=W(0,-1119426781,1040351141,-1104019881,1015410156)+W(1,-1109786529,1043540747,-1106797782,1043466418)+W(2,1041819143,-1105926532,-1098594115,1048709183)+W(3,1018220925,-1133247980,1066013053,-1092013542)+W(4,-1103055916,-1096724541,-1136157126,-1109288787)+W(5,-1124599508,1038612076,-1097021086,1027934232)+W(6,986571056,1019567362,1025702119,-1140871148)+W(7,1024618671,-1143357456,1008181894,1027080058);WS(1059279054,1041683061); -sum1=W(0,1028823114,-1096417644,1041071884,1040139175)+W(1,1033060856,-1095251776,1051348966,-1133443258)+W(2,-1136683218,-1096755466,-1106154521,1027763154)+W(3,1041097809,-1095420880,1062896338,1037083176)+W(4,-1108712682,-1087904547,1057053635,-1109247178)+W(5,-1099515041,-1117180600,1050313119,-1169250436)+W(6,-1114499693,-1113115866,1041134484,1007514196)+W(7,-1105525449,-1121084634,1043053335,1031868218);sum2=W(0,-1104031080,1039900182,1028023758,-1125301559)+W(1,-1113246189,1044206765,-1122555834,1027754708)+W(2,-1124792744,1043086617,1041018096,-1129842792)+W(3,-1107688308,1057123143,-1100462314,1022410763)+W(4,-1084040655,1066602722,-1123151815,1034604384)+W(5,-1089958554,1037219700,1032289221,1029558442)+W(6,-1098618924,-1111210157,1028867168,-1139711519)+W(7,-1098033920,1036938090,-1143651414,-1122704124);WS(-1093886876,-1092780259); -sum1=W(0,1031521076,1034696971,-1098366291,991412379)+W(1,1040859655,1027092583,-1107551117,1023411481)+W(2,-1123954783,1057011018,-1084481759,1037665034)+W(3,-1115369432,1055452141,-1086775792,1037775165)+W(4,1027325374,1055461116,1050583573,-1102735091)+W(5,-1130075936,1043845385,-1098824964,-1106471523)+W(6,1017430099,1041326696,1032795870,-1113156096)+W(7,1005655277,1045628689,-1110858724,-1108701199);sum2=W(0,-1099549152,-1115620025,1042476476,-1128057356)+W(1,-1101982776,-1110046443,-1138118945,-1104607948)+W(2,1039636960,1067650764,1056117723,-1129519972)+W(3,1065032135,-1096892917,-1084935200,1039009532)+W(4,1046191187,-1084058149,1043334912,1042222420)+W(5,-1112740199,-1089814493,-1116550886,-1114781123)+W(6,-1120755726,1022618460,1030169574,1023299940)+W(7,-1138571865,-1106519005,-1123579094,1029490149);WS(-1103384376,1050555318); -sum1=W(0,990997212,1056616014,-1113359817,-1104278389)+W(1,-1104723373,1049493908,-1101985253,-1112669305)+W(2,-1102560870,1060440249,-1095607555,-1117918862)+W(3,-1110645588,1063537686,-1091747296,-1124628967)+W(4,-1114771100,1049398171,-1098384586,-1120789735)+W(5,1006886950,-1123261404,-1094355067,1020875660)+W(6,1011892746,1042753094,-1098733239,1029891897)+W(7,1041403778,1041297647,-1099641616,-1143354303);sum2=W(0,-1097904627,1056762738,1033294591,-1113205081)+W(1,-1102268820,998260703,-1102966386,-1105114179)+W(2,-1101696600,1049156882,1040206209,1028552759)+W(3,-1102083058,1055125136,1048772561,1023069474)+W(4,-1100977750,1040009482,1004029807,-1108173489)+W(5,1022682138,-1099421122,1040485303,1040370279)+W(6,-1105396681,-1114104451,-1118051402,-1109779069)+W(7,1035758392,-1112582051,1040482786,-1135668672);WS(1042369848,-1095650924); -sum1=W(0,1032801852,1060985291,-1088222536,-1154392525)+W(1,-1124780413,1056066249,-1093287088,1017158008)+W(2,-1142443027,1059062488,-1089766974,1041310978)+W(3,1031124370,1046815795,-1084610255,-1111535759)+W(4,1024489633,1051554984,-1096293908,-1118760812)+W(5,1037041722,1026983110,1035048291,-1118618480)+W(6,-1157391942,1037131073,-1113190096,1032589425)+W(7,1048283534,1028118439,-1107690581,-1101944856);sum2=W(0,1056251107,-1084477192,-1077785336,1053829707)+W(1,-1118435725,1041984407,-1086371528,-1113013425)+W(2,-1111043713,-1093515412,-1093010832,1046411943)+W(3,-1090037466,1073185178,1074151927,-1090694669)+W(4,-1129656805,1051712939,1054463958,-1095714333)+W(5,-1093926860,1053076395,-1094829660,-1103046632)+W(6,1052716525,-1096065312,-1090812268,1035367276)+W(7,-1083761792,1066458198,1063500158,-1087950464);WS(-1081634407,-1072784825); -sum1=W(0,-1102740818,1024862651,1056867014,1016622683)+W(1,-1115394775,1046040367,1027952685,-1112643478)+W(2,-1101924733,-1109613465,1058509811,-1096240139)+W(3,-1100839185,-1115978107,1050187219,-1101581667)+W(4,-1123768914,1049722038,-1098437541,1008822020)+W(5,-1140848016,-1098661743,1033615035,1023463264)+W(6,-1118249725,-1138059466,-1143195264,-1116668435)+W(7,-1116477425,1025943000,-1132571500,1036595961);sum2=W(0,-1139809909,1046126277,-1119940899,1040903120)+W(1,-1126178115,-1111752353,1055245806,-1104413152)+W(2,1032546581,1034216546,-1088954301,1019748625)+W(3,-1097752958,1042101074,1058677046,-1089277711)+W(4,1042272246,1043290796,-1087007443,1028591970)+W(5,-1118367610,-1112722386,1048637958,-1139620757)+W(6,-1138081685,1034532478,-1140548675,1017306737)+W(7,1017774855,1030093406,1029648824,1033828758);WS(1050645916,1033550915); -sum1=W(0,-1118556120,-1107219907,1039060494,1030703933)+W(1,-1108262319,1043545243,-1145250020,-1110184190)+W(2,1043230361,-1086762442,1059123936,-1110311564)+W(3,-1094947334,-1104041435,1057758321,-1100512367)+W(4,-1103841584,1058293794,-1096913490,1044416908)+W(5,1018079143,-1097977901,1039599795,-1132472896)+W(6,1032598742,1041130248,-1151122424,-1147952664)+W(7,1008731683,-1123331655,-1123961290,1022228292);sum2=W(0,1040267615,-1112791644,1010515766,1024308395)+W(1,1048409433,-1110540665,1032365064,1041630361)+W(2,-1107165984,-1088877638,-1090038325,1040244783)+W(3,-1086251247,1053330884,1049266570,1037513285)+W(4,-1113957324,1057377190,1028890653,-1098504745)+W(5,-1107976602,1057673067,-1103454662,1039941233)+W(6,-1122078587,1024512949,1041725883,-1103661415)+W(7,-1111525785,1042772014,-1143554104,1024552651);WS(1051978908,-1102077462); -sum1=W(0,-1132165009,1045761591,1013540534,-1106078467)+W(1,-1117187439,1051430047,-1096198150,1014010165)+W(2,-1108837850,1060286099,-1130717861,-1121999817)+W(3,1037183202,1046972447,-1085387922,1030141582)+W(4,1028473682,-1128782822,-1105434962,1008925446)+W(5,1045655273,1028047735,-1101497054,1018887490)+W(6,1025240990,-1178179968,-1110960744,-1122721428)+W(7,1033734537,1035331372,-1102517015,1026996307);sum2=W(0,1023072493,974611657,-1101792417,-1112121991)+W(1,-1125531833,1047662948,1051899312,1037288067)+W(2,1030396885,1035351326,1080526024,1042102238)+W(3,-1118880502,-1090109833,-1069022098,-1113214479)+W(4,1027419877,-1110942359,-1087739606,1032127295)+W(5,-1161271853,1033315833,1036440530,-1143368203)+W(6,1019485964,1010290822,-1124554651,-1132377096)+W(7,1028708277,-1156901930,-1114394737,-1141169667);WS(1058455886,-1096183470); -sum1=W(0,-1105360672,-1112611850,1060616064,-1104075433)+W(1,-1112035684,1032735242,1033545283,-1111940643)+W(2,-1105059667,1048808633,1051085625,-1115570744)+W(3,-1103063975,1042817013,-1097442806,-1097216429)+W(4,-1112638549,1058906409,-1102188695,-1107200030)+W(5,-1104182327,1047248804,-1103229812,-1108265532)+W(6,-1106250503,1047193699,-1106970890,-1119499692)+W(7,-1103319623,1057710235,-1109193562,-1106901731);sum2=W(0,-1135393651,-1114274101,-1117767149,-1110403581)+W(1,-1131009665,1016197705,-1130986601,-1136444051)+W(2,1004138181,-1143366053,1026922589,-1112183743)+W(3,-1111055824,1051632163,1048764370,-1121253595)+W(4,-1134829555,-1111579981,1036257166,1009689523)+W(5,-1127256265,1038147066,-1112945554,989872074)+W(6,-1113946573,1025185617,-1143942149,-1123668797)+W(7,1010148467,-1137859715,-1123068365,-1123716033);WS(-1103618872,1023577831); -sum1=W(0,1041702149,1057806109,-1091063799,1022049043)+W(1,1032268701,997904496,-1106010126,-1102660926)+W(2,1021026046,1057675340,-1090884608,1046995709)+W(3,1032012647,-1129702414,-1094077941,-1100395542)+W(4,1023662430,1056283152,-1094732237,1050214494)+W(5,-1111766616,1039716321,-1100869456,-1096243374)+W(6,-1112590149,1049875952,-1105996279,1047647816)+W(7,1042231991,1054291708,-1098425069,-1100607928);sum2=W(0,1073849383,-1072987051,1040644897,1022236877)+W(1,1069429154,-1080077361,-1098556311,-1128073567)+W(2,1070121938,-1076996297,-1124122091,-1118780260)+W(3,1066905653,-1086754234,-1095882058,1027638421)+W(4,-1087755842,1060194671,-1096747545,1012182550)+W(5,-1080359597,1067521081,1048551041,-1129108935)+W(6,-1073496568,1074652354,-1092793409,-1130588931)+W(7,-1070245916,1075883836,1058695504,1001812541);WS(1010873216,-1100304815); -sum1=W(0,-1154187044,1045945805,-1102222630,-1113759340)+W(1,1028741017,1051026373,-1103217414,1022415534)+W(2,-1114247598,1058185854,-1097780567,-1105383733)+W(3,-1099084427,1059904750,-1091550752,-1111624796)+W(4,-1104966895,1052860588,-1108718914,-1114326870)+W(5,994968800,1038231664,-1110664976,-1110217221)+W(6,-1113228468,1040557287,1017403508,-1108875519)+W(7,1028263947,1032103905,1017865354,-1109350878);sum2=W(0,-1114639192,-1100331344,1035901690,1012858414)+W(1,1039210963,1069298433,1043940791,-1126620651)+W(2,1047528380,1080352854,1030733380,1036529177)+W(3,-1099502544,-1067747068,-1084572959,-1099630936)+W(4,1041344628,-1080996124,1003800555,1043527822)+W(5,-1108972702,1032407437,1045939813,-1119860547)+W(6,1021595805,-1121090437,-1121287047,-1145664907)+W(7,-1116883371,1016604711,-1122259179,1034105585);WS(1044302648,-1104457270); -sum1=W(0,-1115179413,1029190781,-1108944696,-1115207128)+W(1,-1101763748,1045938783,-1102720380,1013266237)+W(2,999269803,1034810490,1038235218,1025157307)+W(3,-1106420033,1055724168,-1101615303,-1105407492)+W(4,1041707045,1053359959,-1094303566,1045691477)+W(5,-1128885581,-1100033022,1043259278,-1113033137)+W(6,-1110751840,1037908026,1011056201,-1114066571)+W(7,1029110244,1035419021,-1123807773,-1113282394);sum2=W(0,-1117238549,-1109414288,-1115125848,1023475415)+W(1,-1115295266,-1128441429,-1121954754,1024122972)+W(2,1033754662,-1104877135,1018153798,1002646200)+W(3,-1095438097,1053172955,1038786210,-1106263750)+W(4,-1106855439,1056926069,-1104082080,1034246226)+W(5,1011060498,-1108715476,1043675119,1025499367)+W(6,-1117460606,1036225840,1008366234,-1107090094)+W(7,1032653312,-1114450934,1018894269,1013321052);WS(1068015911,1043072951); -sum1=W(0,-1127841379,-1101991257,1041159238,1035382295)+W(1,1035792844,-1091973141,1040826438,-1098419575)+W(2,-1155603908,-1110119406,1052691071,1043898844)+W(3,1018341976,-1095315357,1053842800,1030324599)+W(4,-1111053022,-1107228151,1042506601,-1108241413)+W(5,1044403491,-1111437840,1050221764,1043481954)+W(6,-1112313859,-1097295811,1030249017,-1098652336)+W(7,1005208661,-1103670736,1046985745,1032196534);sum2=W(0,-1134315530,-1125722365,-1135384490,-1118933131)+W(1,1033824390,1019923991,998580556,1027495017)+W(2,-1112867968,1039464885,-1093291922,1045077367)+W(3,1039862799,-1087456726,-1061395777,1087627027)+W(4,1005143468,-1119378177,-1106942114,1034637079)+W(5,-1114969920,1042059959,-1121281813,-1148550692)+W(6,1030354102,-1113780490,1034179020,-1118611519)+W(7,-1131720457,1009971850,1032010553,-1117397469);WS(1060186318,-1131602669); -sum1=W(0,1022422466,1050205114,-1099402401,-1112848707)+W(1,-1102049002,1052887138,-1102238785,-1106285089)+W(2,1050775273,1052456073,-1100510367,1039607513)+W(3,-1097141731,1049038746,-1088759247,-1098786589)+W(4,1056872997,1040490435,-1122526498,1048305743)+W(5,-1099566807,1039690728,-1099089908,-1104192622)+W(6,1025667942,1043457059,-1102859210,1032266998)+W(7,1032894309,1045856748,-1106963501,-1118572779);sum2=W(0,989650422,-1120410947,1047633630,-1081060940)+W(1,-1108234271,1050158699,1066272871,-1074101109)+W(2,-1120122674,-1092804082,1075424781,-1079387458)+W(3,1045260201,1024838498,1061734347,1050344942)+W(4,-1114112879,-1125280065,-1091697647,1043540897)+W(5,1037831837,-1119936776,1003481288,1039609275)+W(6,-1117501250,-1114421818,1011848513,-1131708367)+W(7,1024132690,1035095434,-1106020023,1026462111);WS(1057810382,986287880); -sum1=W(0,-1105255365,-1110142276,1041191503,1050176972)+W(1,1027767677,-1106138450,1031406779,-1130243957)+W(2,1037147968,-1092238936,1027980992,1041310918)+W(3,1038550632,-1090210593,1049547413,1041377527)+W(4,-1136315263,-1089134184,1052451129,-1115128119)+W(5,1035749561,-1093055129,1057536820,1033537239)+W(6,-1115075413,-1097497096,1050343212,-1127231554)+W(7,1028257967,-1089420006,1058108487,1031965752);sum2=W(0,-1099824579,1070708271,1075074245,-1097074436)+W(1,-1113793286,-1104040400,-1084124078,1023561426)+W(2,1053512844,-1091831853,-1082668198,1039380165)+W(3,-1112943238,-1072548459,-1072503695,1009216489)+W(4,1041834894,-1093778092,1056090411,1043969626)+W(5,-1099992002,1057576575,1053907302,-1107563771)+W(6,-1120789532,1064181862,1058602971,1034348623)+W(7,1024916046,1051972140,1054786345,-1106961801);WS(-1075707047,1038147646); -sum1=W(0,1038492938,1050722763,-1095596015,1040870942)+W(1,-1115961531,1026800423,-1103730686,-1122935577)+W(2,1036899040,1055626176,-1091210886,1047700685)+W(3,1041066756,1052178217,-1090286882,1036539085)+W(4,1038870159,1027667391,-1094135001,-1102625947)+W(5,1045702796,1053246416,-1095582752,1048523811)+W(6,1022987667,-1100305296,-1109653838,-1105859960)+W(7,1044017707,1049962981,-1093296229,-1117734303);sum2=W(0,-1145353723,1027969677,-1115030411,1052090154)+W(1,-1113260796,-1095928859,1031463199,-1110261785)+W(2,-1112198364,1052169305,-1108227013,1041877601)+W(3,-1113367096,1052353113,1051016428,-1099630700)+W(4,1007958125,-1129450520,1041462653,-1087173862)+W(5,1047146251,1051473061,1045242344,-1102681887)+W(6,-1122974002,-1091037095,1032341221,-1095485390)+W(7,1021064313,1050393555,1020102815,-1111896409);WS(-1102302520,1068562064); -sum1=W(0,-1130894152,-1101486038,1044130034,1031789673)+W(1,1029216267,-1094978851,1029251017,-1102217970)+W(2,1029150351,-1104755260,1053252560,1042516209)+W(3,1029804895,-1093484995,1050941559,1040658618)+W(4,-1108054071,-1110271975,1036880709,-1113036417)+W(5,1046304488,-1106599349,1050863202,1041743615)+W(6,-1107326720,-1102131284,-1128083416,-1102226940)+W(7,1018120580,-1102274525,1047248574,1032422999);sum2=W(0,1019111797,1022527979,-1131519898,1029130971)+W(1,-1123809812,-1111065998,1023737355,-1117143513)+W(2,1006739898,1031759809,1045357020,-1106220344)+W(3,1041109085,-1095097056,1082939698,-1064938697)+W(4,-1126211453,1034613952,1027342607,-1122955245)+W(5,1028972357,-1107360163,1033832936,-1112280546)+W(6,-1118372569,1033659253,-1112248823,1032152906)+W(7,1025713585,-1118642675,-1118824157,1028082979);WS(1066566439,-1125753148); -sum1=W(0,1020091828,-1096367972,1038767583,1030663671)+W(1,1041951168,-1098758994,1048997640,1025331919)+W(2,-1130301450,-1093467737,-1130818632,-1108818909)+W(3,1052053147,-1089881409,1064063659,1044746920)+W(4,-1131231944,-1092544881,-1116991019,1022962726)+W(5,1033588155,-1098181717,1042770882,1041997189)+W(6,1009411772,-1110070786,1046860728,1018371147)+W(7,-1116682291,-1096392077,1027361773,1038578846);sum2=W(0,-1105507764,1019815533,-1136431769,1024962860)+W(1,-1149004498,1047279899,-1121679526,1041000955)+W(2,-1098298748,-1106660204,-1096656341,-1107413740)+W(3,-1115729482,1058550934,1058580319,1027135608)+W(4,-1094576030,1031191852,-1098228632,-1101441076)+W(5,-1111478010,1032716298,1041490224,1035067556)+W(6,-1129010369,-1117054989,1047791827,-1123460834)+W(7,1018600957,1019851909,-1106522387,1005788722);WS(1050996380,1066787661); -sum1=W(0,1042843177,-1109518091,-1098674409,-1112832565)+W(1,-1120310187,1043911830,-1097687209,-1133582755)+W(2,1033453959,1059519229,-1096304487,-1116528532)+W(3,-1107450543,1061971625,-1098011863,-1105396874)+W(4,1017862620,1051823058,-1095767039,1033796902)+W(5,-1134072575,1046601317,-1095249970,999923683)+W(6,1025308393,1042112788,-1098354285,1030029487)+W(7,1033769739,1046863997,-1098417599,-1109771063);sum2=W(0,-1103321099,-1087654445,-1098379129,1013739975)+W(1,1033376724,-1114493691,-1096458683,1015354012)+W(2,-1108916223,1049058628,1036368268,-1121134774)+W(3,1033194077,1065240604,1054396447,-1115257551)+W(4,1038197771,-1128335788,1049730119,-1129699908)+W(5,1032881798,-1094150295,-1108472207,1021079748)+W(6,1017830932,1006224046,1031462702,-1117224382)+W(7,-1138730935,-1112103411,-1102017203,1038189385);WS(1027314912,-1081149641); -sum1=W(0,-1109480125,1051429188,-1118844062,-1097611416)+W(1,-1114947760,1053252314,-1094077252,1034118735)+W(2,-1101195017,1058130398,-1113091794,-1104617542)+W(3,-1132100201,1061393767,-1085308129,1035982720)+W(4,-1103759537,1057940398,-1102037735,-1114189097)+W(5,1044342469,-1104522586,-1094497965,1036294793)+W(6,-1111893319,1055491172,-1103334896,-1128796810)+W(7,1051194426,-1120202825,-1094870250,1030785028);sum2=W(0,-1131039707,-1098833779,-1147567565,1035790053)+W(1,1024995350,-1124760267,1057070390,995065627)+W(2,-1104486127,-1078713050,-1091843304,1037354874)+W(3,1015537291,-1065942779,-1081156610,-1154356731)+W(4,1053996441,1047686732,-1094140189,-1107145709)+W(5,-1103676904,1084085461,1060423478,1026796886)+W(6,1047124046,1064521940,1046849692,-1108476011)+W(7,-1111129691,-1093915430,1018309905,1038591472);WS(-1081542375,1044780323); -sum1=W(0,1026864081,1046719985,-1098857847,-1114219435)+W(1,-1100303790,1054288460,-1108679899,-1104586877)+W(2,1048337215,1054459103,-1098101851,1041408644)+W(3,-1098110473,1048901488,-1093175556,-1098306531)+W(4,1054474587,1041639871,-1104037973,1046672715)+W(5,-1099969099,1034589376,-1107626335,-1104199322)+W(6,1023999910,1043694031,-1101510966,1022681657)+W(7,1028627178,1046235480,-1106600025,-1126646775);sum2=W(0,1017985090,1024212320,-1099849981,1067245211)+W(1,1027847194,-1098721130,-1081468176,1074345814)+W(2,1036519222,1050387030,-1070464929,1070597407)+W(3,-1113167123,-1094712479,-1096550174,-1088417301)+W(4,1037009826,-1100822056,1057690620,-1104880956)+W(5,-1113380621,1028269032,1042714784,-1102737214)+W(6,1031131596,1009055356,-1145638655,1000105719)+W(7,-1115360802,-1113841920,1046010973,-1112342255);WS(1059294542,1020616832); -sum1=W(0,-1157534552,-1096856701,1050532499,-1112831597)+W(1,1039080142,1044861738,1041652423,1046540791)+W(2,-1097783100,-1089052876,1057029426,-1098369827)+W(3,1031217968,-1085780263,1047119538,1040272239)+W(4,-1164216296,1044573672,1039715347,1024931118)+W(5,-1138897989,-1097342660,1043073721,-1103025619)+W(6,1026686634,1041475528,1040308239,1045404192)+W(7,-1105498094,-1105558033,1048391538,-1114523696);sum2=W(0,-1106291706,1040318024,-1114208076,-1142193319)+W(1,1001372950,-1105705183,-1116263519,-1145917455)+W(2,-1099590495,1045484852,-1108179199,1036599633)+W(3,-1093748925,1061316313,1049891427,-1108356360)+W(4,1015225205,-1098311584,1040668388,-1148092276)+W(5,-1105937891,1041085521,-1111581107,1032743264)+W(6,-1112612361,1028378294,-1115787941,1021281994)+W(7,995169980,1035732349,-1113959318,1024794158);WS(1059376718,-1137270291); -sum1=W(0,-1118257199,1043258576,-1114290826,-1112002778)+W(1,1037392427,-1106073464,-1124279079,1022160871)+W(2,-1097794403,1054680411,-1115190716,1045843716)+W(3,1035766677,-1099046488,1052189312,1011458515)+W(4,1026067385,-1088020070,1054691490,-1110958220)+W(5,1032186693,1041392887,-1097245116,1046761570)+W(6,-1108679762,-1113652045,1025610423,-1117145658)+W(7,-1139304576,-1111666975,-1123561026,1032305501);sum2=W(0,1025244035,1033595807,1016573022,1002397687)+W(1,-1122852568,-1087687504,1048825911,-1104089806)+W(2,-1092220395,1066421651,1058107887,-1130145014)+W(3,1038019467,1047700223,-1089540205,-1111655831)+W(4,1048072683,-1084925862,1045215493,1032935415)+W(5,-1113553750,1050883425,-1098430697,1015641098)+W(6,-1119930901,-1105555859,1041208433,1001885951)+W(7,-1139793711,-1146566911,-1124843514,-1131703250);WS(1058596686,1013962118); -sum1=W(0,1000024554,1052551424,-1088298614,1039656505)+W(1,-1127551432,1049056438,-1098656348,1034731345)+W(2,-1100000762,1057499982,-1090756927,1019232187)+W(3,1035333436,1036076760,-1097067922,1033429441)+W(4,-1122612871,-1127972943,1040213184,-1125045580)+W(5,1044766998,-1116046252,1015197910,-1113717771)+W(6,1041477861,-1118015335,-1123679237,1037833508)+W(7,1051562743,-1099275107,-1122278672,-1122272135);sum2=W(0,-1104434141,1048601996,1033271157,1004930429)+W(1,1029025211,-1091369704,-1119340081,1028438774)+W(2,-1078497608,1052827694,1025214064,-1106316897)+W(3,-1079110377,-1106615386,-1109539756,1034989376)+W(4,-1085502108,-1115334546,1050957039,-1108631008)+W(5,1066279808,1037382016,-1106594885,1023198169)+W(6,1062913146,-1122817088,1036274829,-1134348613)+W(7,1068620036,1048688798,-1118139306,-1139733884);WS(1044771128,1023341948); -sum1=W(0,-1156220044,-1092336191,1051560294,1036528391)+W(1,1034545464,-1098819215,1044146859,1029114797)+W(2,1033488922,-1096491302,1051910286,1022761170)+W(3,-1111313058,-1086850728,1045449190,1029767950)+W(4,1038420969,-1102939421,1053458817,1041877300)+W(5,1008511890,-1100928894,1038883707,1034675856)+W(6,1013986230,-1115524377,1012126018,1037411178)+W(7,1011084871,-1089482302,1046748951,1043196317);sum2=W(0,-1071004894,1076503146,1057610169,-1122913984)+W(1,-1080574884,1066884159,-1107351326,-1130255370)+W(2,-1089987082,1058011283,1054000347,1038970611)+W(3,1049506323,-1098882467,-1090234844,1014162118)+W(4,1065282653,-1084978169,1030898490,-1114000490)+W(5,1062249589,-1088626314,-1090230279,1022492087)+W(6,1060165079,-1082249713,1044380003,-1131621088)+W(7,1070844945,-1077734377,-1096516163,1013009282);WS(-1111817840,-1134998409); -sum1=W(0,1022731056,-1102901203,1029699069,1021112442)+W(1,1045262352,-1094315057,1052915216,-1107194439)+W(2,1044888721,-1085070720,1058770140,-1097785743)+W(3,1029818259,-1111793509,1057078063,-1117717150)+W(4,-1105915720,1055206544,-1095183540,1040740592)+W(5,-1114660906,1046806370,-1097451385,1036425016)+W(6,1027479949,-1123039746,-1112670352,1005586201)+W(7,991785104,-1136267423,-1114500629,1016465988);sum2=W(0,-1129690332,-1113356803,997943457,1015499837)+W(1,1030842707,1026318374,-1119512995,-1180561029)+W(2,-1123486113,1041923626,1037525758,-1144014736)+W(3,1054087898,-1089332833,-1088292904,1037328869)+W(4,-1105176966,1068558125,1040210770,-1107365912)+W(5,-1097205966,-1141184456,1050151959,-1114055561)+W(6,-1098021434,-1107728348,1018682892,1009592392)+W(7,-1106929221,-1104288342,1006954668,1013301204);WS(-1100650808,1043653943); -sum1=W(0,1038392637,1044290651,-1095199164,1033771919)+W(1,1032036848,1040683515,-1115398639,1038316223)+W(2,-1120772452,-1106266873,-1094097345,1042896310)+W(3,1043637149,-1090111931,-1097393337,1045751664)+W(4,1040259489,-1133467790,-1104941765,-1159203906)+W(5,1047398869,1044787930,-1101572298,1015063331)+W(6,1038054351,1023591523,1016760834,1030908740)+W(7,1050576478,1037223428,-1102689443,-1125005703);sum2=W(0,1018053796,1046306039,-1101305605,1031448374)+W(1,1000548496,1043541862,1029064982,-1112893849)+W(2,1049079603,1010667960,-1116813778,1021972628)+W(3,1039189619,1064529690,1038487223,-1105518867)+W(4,-1128574308,1047996002,-1100258391,1037842238)+W(5,-1118597354,-1087406141,1048794746,1033382833)+W(6,-1106984497,-1095617964,-1114392997,1021089548)+W(7,-1104543855,-1086946593,1045938007,-1140458600);WS(-1121537248,1047151836); -sum1=W(0,-1096325448,1052654400,1000450324,-1116556387)+W(1,-1113135282,1035132488,-1110395025,1023519458)+W(2,-1098188693,1046868890,-1139200797,-1111260975)+W(3,-1112146268,-1134150082,1049727010,-1110207458)+W(4,-1108791588,-1129891280,1041189572,-1104838938)+W(5,-1117696601,-1098847494,1056884317,-1098805187)+W(6,-1123869651,1032919412,1041128337,-1146298440)+W(7,-1114157115,-1107856679,1058220805,-1103148146);sum2=W(0,-1142864271,1043572739,-1125571574,-1107989855)+W(1,1021304865,1026011378,1028667063,-1140649559)+W(2,1043366966,-1102859954,1022196210,1020722946)+W(3,-1107584343,-1080136051,-1072538638,-1132367054)+W(4,1014758407,-1103597159,-1076945816,1041979768)+W(5,-1130465374,-1115654645,1048815254,-1126224006)+W(6,-1120740451,1046511165,1072551214,1027667511)+W(7,1000478551,1053224660,1074776028,1048839210);WS(-1086568910,969651201); -sum1=W(0,-1128189323,-1096064919,1047521403,1043461231)+W(1,1044154939,-1089612648,1054908701,-1099266659)+W(2,1043534732,-1084798775,1056987371,-1113308531)+W(3,-1114366976,1053159863,1057685165,-1152040120)+W(4,-1098469330,1053431542,-1089249613,1042761408)+W(5,-1101372520,1050787607,-1090701774,1049635020)+W(6,-1123038043,1036747448,-1105030179,1010635844)+W(7,-1132910587,-1116020373,1027268120,1018344000);sum2=W(0,1042932965,-1103892922,-1104364155,-1139842168)+W(1,-1103428495,1060495074,1060109323,-1118896922)+W(2,1039997403,1052448567,1064108701,991756114)+W(3,-1093583228,-1075640666,-1073056297,-1097481656)+W(4,1044856824,1057723154,1055665788,1040659602)+W(5,-1121819542,1057002090,1060503917,-1099984054)+W(6,-1177180368,-1112150955,-1116550688,1034919451)+W(7,1028413178,-1118134166,-1110515035,1041069777);WS(-1084093518,-1116656412); -sum1=W(0,1002008836,1058416208,-1096672513,-1112390467)+W(1,959481663,1026388179,-1109778819,1023428581)+W(2,-1104590931,1059097973,-1088144465,-1112632704)+W(3,1050696243,1042079029,-1096264126,1040470858)+W(4,-1106608235,1041679827,-1101432288,-1102954054)+W(5,1047962207,1049127990,-1100480244,1047012782)+W(6,1030562773,1031439243,-1113594772,-1112144502)+W(7,1015783795,1042535660,-1093923750,-1145396437);sum2=W(0,1007960967,1027407916,-1129957403,-1132155403)+W(1,-1110192070,1010716935,1018303319,-1121935910)+W(2,1049899326,-1097456083,1037417999,-1137993343)+W(3,1056650247,-1070859565,-1094713389,-1142796285)+W(4,1078512141,-1068241064,-1096379657,1039214170)+W(5,1081472440,-1079514242,1043613542,-1111213656)+W(6,1058404171,-1094427160,1025537830,1032528613)+W(7,999915485,1030657127,-1116925932,1024356221);WS(1052225948,1018668194); -sum1=W(0,-1120453498,1051775516,-1117579103,-1107074656)+W(1,-1123160289,1048325451,-1111291056,-1112742544)+W(2,-1108654867,1058214550,-1093397513,-1147977428)+W(3,-1104839613,1064670427,-1091445969,-1119335936)+W(4,1041378113,-1126638409,-1092047898,-1109154218)+W(5,1036965515,1049967085,-1099225050,1034167881)+W(6,1044186084,-1096299613,-1112850625,-1138567959)+W(7,1034438594,-1128237844,-1112057991,1019177609);sum2=W(0,-1121001958,-1117606942,-1103097305,-1130038396)+W(1,-1148685985,-1111847761,1021935234,-1112487949)+W(2,1018483434,-1120566718,1049895592,1038078839)+W(3,1021815720,-1076982600,-1081972918,-1125812992)+W(4,1049361594,1074852012,1051964198,-1152546434)+W(5,-1108634723,1048076514,1040925857,-1104919092)+W(6,-1132118692,-1102180777,1017568960,1026180028)+W(7,-1105580672,-1116866514,1040155911,-1123068468);WS(-1096382876,-1091051652); -sum1=W(0,-1116126267,1057278592,-1096000788,-1116910752)+W(1,-1113197617,1048826126,-1097274020,-1140807037)+W(2,-1112424211,1058810754,-1088739494,1039925053)+W(3,-1124324715,1056304110,-1091311905,-1132679170)+W(4,-1136579346,1041995897,-1114916522,-1107191661)+W(5,1040875430,1016295122,1038826452,-1119450067)+W(6,-1113905512,1024916389,-1128507781,1023437062)+W(7,1017323784,1042534003,1017648027,-1098370349);sum2=W(0,-1120311657,1025682064,1036682152,-1108273289)+W(1,1036113080,-1107470193,-1108061877,1012612647)+W(2,-1109045199,1035621932,1051542033,-1101063214)+W(3,1029662296,-1118009189,-1101792442,-1076098595)+W(4,-1122358251,1045290388,-1093646778,-1080861029)+W(5,-1114085873,1009830751,1056395710,1039398973)+W(6,1016737279,1035169596,-1091719234,1065137390)+W(7,-1115835645,1030264440,1052430993,1072502688);WS(1040082544,-1114755812); -sum1=W(0,1017784372,-1110974758,1040296296,1024480479)+W(1,1037505264,-1108514902,1041424680,-1104471944)+W(2,1045745417,-1095324708,1054913780,-1106439461)+W(3,1019379817,1052579502,-1106396419,-1115066496)+W(4,-1109308706,1058051822,-1087512533,1040857799)+W(5,-1124056118,1046163210,-1093666877,1001482384)+W(6,1025470519,1038459986,-1106674096,995688529)+W(7,1039469090,998280780,-1109356390,-1108404770);sum2=W(0,-1162396366,1045315846,1034748092,1035646876)+W(1,-1117720653,-1118054954,1034773210,-1100298043)+W(2,-1104226850,1057942904,1043388435,-1097646834)+W(3,-1105580348,1059476362,1067689202,-1093789486)+W(4,-1105643813,-1090022037,-1083232471,1040357620)+W(5,1031813906,1045409162,-1101262587,-1113573448)+W(6,1011045214,-1106412098,-1124577575,1012935222)+W(7,1018164327,1023977529,-1102021751,1024454049);WS(1036525168,-1082462584); -sum1=W(0,-1116308971,-1085123800,1057675329,1019612704)+W(1,1037298441,-1087372070,1051660338,1027541711)+W(2,1027885589,-1086414101,1059597873,-1109257541)+W(3,-1122874917,-1096064460,1059581688,1041073820)+W(4,-1154089797,-1099879381,1052784510,1028059367)+W(5,-1108384819,-1104319094,-1117339864,1045372305)+W(6,1028179743,-1127380522,1039251609,1031554934)+W(7,1003463273,-1096394215,-1110971807,1053758651);sum2=W(0,1060691160,-1081285622,-1080809247,1052276353)+W(1,-1103295177,-1090050073,1050684042,-1106187369)+W(2,1035985281,-1102851017,-1087522637,1048638013)+W(3,-1085964582,1072728426,1060852217,-1090587145)+W(4,-1105398566,1060511611,1058511518,1029176048)+W(5,-1107551093,1033954581,1041242888,-1094879840)+W(6,1049030608,-1086630634,1028348456,1046256182)+W(7,-1090293163,1058069039,1062481845,-1087039462);WS(-1074352935,1040600857); -sum1=W(0,1042034194,1057627204,-1090157751,1024364622)+W(1,1028652336,1025049468,-1105875707,-1105990299)+W(2,1024054004,1057567995,-1088931067,1048022018)+W(3,1030695172,1022098295,-1095088235,-1100928004)+W(4,1029627411,1052602222,-1094832321,1049957878)+W(5,-1117605317,1039437212,-1104356174,-1095846092)+W(6,-1114002447,1049556590,-1107260676,1047165477)+W(7,1041624512,1053416947,-1101255271,-1098759166);sum2=W(0,-1075440350,1073165865,-1112383192,-1148975848)+W(1,-1079714919,1065983198,1048707236,-1115591486)+W(2,-1079134350,1068716226,-1135853868,1038054064)+W(3,-1081735031,1066499710,-1098543278,-1125971282)+W(4,1055569671,-1095308006,1021808504,1040311395)+W(5,1066585571,-1080754250,-1108920844,-1110109816)+W(6,1071644179,-1074800849,1050977418,1035370814)+W(7,1075476470,-1073191304,-1090378667,-1120408347);WS(1041022776,1033480094); -sum1=W(0,-1132576057,1026327841,-1110434490,-1119031508)+W(1,-1123321429,1042302896,-1109312954,1021323174)+W(2,1028959481,1052457903,-1089918670,1029242558)+W(3,-1104176578,1063677500,1025377120,-1118638740)+W(4,1046472198,-1097607903,-1090934974,1013298461)+W(5,-1121060138,-1123802109,1046523967,-1106699146)+W(6,1027556403,-1118671609,-1112257611,1030036314)+W(7,-1115611836,1039698959,1000531209,-1116635705);sum2=W(0,-1106027239,1049930690,-1110218398,1034564779)+W(1,-1122286155,-1127267122,-1108798456,1018367610)+W(2,-1102546078,1041115945,1058786995,-1095860458)+W(3,1055155948,-1091935564,1075372513,1043590800)+W(4,-1096754888,1052250618,-1071163371,-1112711414)+W(5,1032068992,-1103388917,-1123143101,-1119323979)+W(6,-1121774513,1038737216,-1121707895,1016553114)+W(7,1036170969,-1108790214,1032355550,1017858173);WS(1055618972,-1117202987); -sum1=W(0,1030962480,1039894129,-1101932469,1031993659)+W(1,-1101414710,1053882576,-1089999221,1048656807)+W(2,-1098100923,1057347458,-1085784352,1043352452)+W(3,-1111740150,1049814740,1051098296,1031031542)+W(4,1036980413,-1090053902,1056052448,-1104607674)+W(5,1041005827,-1088233382,1051763396,-1119077705)+W(6,1021681163,-1105970903,1044301630,1022017143)+W(7,-1112834597,-1117339136,1032801282,1039235901);sum2=W(0,-1114659327,-1101541229,-1107338771,1039378885)+W(1,-1123577690,1043634319,1057974128,-1111523166)+W(2,1042921002,1066882360,1050113378,1040130625)+W(3,-1105097716,-1077668162,-1080704784,-1104122760)+W(4,1042773509,1037629509,1051155360,1012227066)+W(5,-1093975266,1058638399,1052705661,-1110420726)+W(6,1032061179,-1108208741,1008396554,-1125218199)+W(7,1000405669,-1131856909,-1111189711,1025207949);WS(-1091387548,-1116324289); -sum1=W(0,1026642697,-1112220622,1049897926,1027958127)+W(1,1044682252,-1093973688,1047211372,-1098544270)+W(2,1041967213,1046046637,1050365286,-1112662293)+W(3,1032214050,-1086442024,-1112122925,-1106755108)+W(4,-1131062694,-1099996941,1046223135,-1116559746)+W(5,1015214154,1053177927,-1132096750,1034258897)+W(6,-1137069945,-1098783494,1024489425,-1111108842)+W(7,-1110158325,1037567917,1042021623,1031638516);sum2=W(0,-1108095393,1011776651,-1101257730,1019145070)+W(1,1016776222,1024100809,-1105403134,1032882678)+W(2,977935538,-1097248934,-1101986254,-1124027994)+W(3,-1122468710,1057627889,1060632600,-1103033100)+W(4,1019959206,1042194141,-1090719303,1039533068)+W(5,1030099429,-1117226417,1037412790,-1110127978)+W(6,-1104930054,1051928720,-1109292621,-1125661478)+W(7,1002749526,1041814459,-1115385474,-1108291818);WS(1057965518,-1118811194); -sum1=W(0,-1104352985,-1106566686,1052732873,-1107147458)+W(1,1038892389,-1112643723,1003767366,-1114250980)+W(2,-1105058276,1026830542,1060358287,-1096574819)+W(3,1042490232,-1091938531,1019887594,1048844541)+W(4,-1121521774,1058056073,-1118338013,1024329053)+W(5,-1099594944,-1101314965,1042464324,-1107780158)+W(6,1033536020,-1098044778,1024562028,1032778872)+W(7,-1095161930,1039936570,1046000094,-1107207172);sum2=W(0,-1116205334,993944814,1032713731,-1106373772)+W(1,1042905425,-1113078065,-1104977559,1039619019)+W(2,-1109155755,1044406596,1048672381,-1115343154)+W(3,1044205280,1040105843,-1104277422,1048332350)+W(4,1035597621,1043112037,-1103087244,999501191)+W(5,1008636092,-1123380436,-1153474446,-1106439836)+W(6,1036458751,-1105268129,1015784078,1021528398)+W(7,-1092853308,1005260887,1036094123,-1106473413);WS(1053420700,1049909457); -sum1=W(0,-1115258034,-1106165874,1050401361,-1113250117)+W(1,1034071238,-1089903413,1041332866,1023742249)+W(2,1027276239,1036166247,1049384898,-1130552842)+W(3,-1115686559,-1100423414,1037380859,-1120158506)+W(4,1041096236,-1093491554,1052388787,1037333727)+W(5,-1102788144,1049835542,1034784425,-1103514783)+W(6,1034068157,-1095323722,1031952854,1037170040)+W(7,-1107460367,-1110396954,1050882791,-1114330639);sum2=W(0,-1112500393,1024557142,-1136367764,1020782048)+W(1,1028289272,-1165623582,1035333264,-1122738507)+W(2,1049127312,-1095250820,-1114028070,1025362120)+W(3,1086771603,-1062269001,-1087155359,1034731082)+W(4,1048088739,-1095068995,1022077560,-1125007838)+W(5,1020087240,999933935,1034746908,-1120796207)+W(6,1014851096,-1135945992,-1120864651,1026594640)+W(7,-1146529543,1025716258,-1127622484,-1128255426);WS(1063806286,1027083983); -sum1=W(0,-1114823180,1045480194,-1118427516,-1109705966)+W(1,1030313470,1039206373,-1106496703,1020453816)+W(2,-1111791457,1061885616,1010686340,-1103432478)+W(3,-1111977289,1050451993,-1083830979,1039658735)+W(4,-1108043857,1057912708,-1099420545,-1114670584)+W(5,1019729830,1036575619,-1105267089,-1109909656)+W(6,-1114640622,1039765761,-1131920190,-1113587473)+W(7,1033983240,1034424532,-1125840468,-1112770081);sum2=W(0,1033978022,-1122290634,1016780797,-1164938552)+W(1,-1100194899,-1091664523,-1103111994,1002490582)+W(2,1033701105,-1071413373,1047766898,-1105595809)+W(3,1050426550,1075108998,-1096749849,1051489664)+W(4,-1104028404,1062092502,1027350687,-1108336227)+W(5,1034191613,-1103668501,-1131589290,1021076655)+W(6,-1141130302,1034149895,-1131724600,-1149103768)+W(7,1010895851,-1140709165,1027888251,-1131210373);WS(1058288590,1045994186); -sum1=W(0,1018135640,-1093342072,1052167946,1038262801)+W(1,-1123855059,-1096797372,1041780692,1015346466)+W(2,1040223430,-1086390197,1052872019,-1132654257)+W(3,-1112801779,-1105293320,1059840396,-1134794696)+W(4,1036317947,-1091216419,1051866430,-1117665797)+W(5,-1098800665,-1117054299,1050341107,1012611090)+W(6,1034707665,-1096209979,1048652350,-1139713758)+W(7,-1096517871,1023470716,1050625648,1010858330);sum2=W(0,1041114210,-1099008397,-1123917868,-1125418381)+W(1,-1099284356,1047276236,-1111523652,-1120564910)+W(2,1038292116,-1081084758,1037708884,1020505319)+W(3,-1092208278,-1071665325,-1086778305,-1100128811)+W(4,1054381469,1054365119,-1101037019,1024474915)+W(5,-1104534119,1081581342,1026238413,-1125603475)+W(6,1025804573,1062322644,-1134916894,1025011807)+W(7,1033400256,-1093538640,1052085127,-1103707544);WS(-1088887374,1070119449); -sum1=W(0,1040460421,1052058645,-1090595183,-1105506686)+W(1,1041554590,1048371361,-1115426747,1029097335)+W(2,1013850612,1048732808,-1094790815,-1129317061)+W(3,1038262022,1042754705,-1087902678,1001782464)+W(4,1042710919,1047384127,-1106656361,1038072126)+W(5,-1106869091,1054439312,-1090477876,-1131475029)+W(6,1044864290,1032508990,-1122940954,1028935005)+W(7,1046057615,1042772520,-1091795237,-1119515740);sum2=W(0,1024604999,1056461606,1071685965,-1075212110)+W(1,-1112923336,1030035123,1066713447,-1080779344)+W(2,1027433809,1050727550,1068313262,-1078194918)+W(3,1025504127,-1090534096,1028028856,-1153515923)+W(4,1007245204,-1105339223,-1081367671,1068056044)+W(5,-1144581942,-1095507508,-1078816510,1069903211)+W(6,-1129047399,1043793174,-1081156501,1064173276)+W(7,1021294865,-1095638178,-1090770344,1060536751);WS(1040470840,1011790950); -sum1=W(0,1015095158,1043725275,-1105535856,-1108386992)+W(1,-1120734562,1051465082,-1108441440,1030149375)+W(2,-1116691398,1058372660,-1095343471,-1112701741)+W(3,-1118217942,1055309890,-1081260869,1026499745)+W(4,1019898057,1046636817,1047492563,1032201014)+W(5,-1123629847,1044874098,-1093096561,-1115283258)+W(6,1034607368,1043010193,-1105294873,1028457510)+W(7,1041822001,1040878843,-1106259483,-1112399171);sum2=W(0,1022830461,-1117997331,1037270083,1023767946)+W(1,1021246145,-1110014342,-1125616185,-1130403951)+W(2,1015115055,-1111993293,1044158772,1025796328)+W(3,-1114703004,1036613835,1073620398,1050812248)+W(4,-1120910531,1023720090,-1076883688,-1112499600)+W(5,1015720307,-1117604953,-1087890801,1028283916)+W(6,983370825,-1120463052,1025754476,-1104874229)+W(7,-1123770073,1036937497,-1113287589,1033737696);WS(1058309838,-1101980246); -sum1=W(0,-1118965337,-1110907254,1038642111,1028903966)+W(1,-1098779704,1049643561,1038999679,-1108240479)+W(2,1049071256,-1081904943,1054751182,1040887994)+W(3,-1113399754,1042163763,1056093093,-1118832415)+W(4,1026571427,1052138696,-1083956910,1046797612)+W(5,-1110569018,-1106220306,1050507993,-1104697276)+W(6,-1131332475,1025191299,-1146247429,-1123883748)+W(7,-1128371676,-1129449041,1030864044,1017502086);sum2=W(0,-1137655511,-1111106723,1035105104,-1112318930)+W(1,1043191716,1033166752,-1112822728,1027572041)+W(2,-1121349336,1033268708,-1104857525,1035699332)+W(3,-1097517035,1052576386,1055574555,-1097542777)+W(4,1046822141,-1107318253,-1114990789,-1110157019)+W(5,-1129223371,-1102887232,-1121581721,1031007843)+W(6,-1116759551,1040601750,-1152414880,-1157281192)+W(7,-1124684976,993535634,-1107957817,1025775603);WS(1063710542,-1111213649); -sum1=W(0,1039559517,1052251350,-1101160384,-1113889808)+W(1,-1110192145,1049489370,-1097695264,1031901152)+W(2,-1107309859,1058328276,-1093740712,-1104513406)+W(3,-1118762901,1061120005,-1096321197,-1097003636)+W(4,-1108199122,1049656673,-1097289639,-1112381384)+W(5,1037245627,1033876357,-1114972772,-1176476024)+W(6,-1139769966,1041987905,-1102516745,1022802380)+W(7,1035326852,1045428971,-1103522251,-1115185874);sum2=W(0,1026803387,-1115186477,999853755,-1112425236)+W(1,1021750253,1031459540,1031446318,-1106593609)+W(2,1040812059,-1116326399,1058720440,-1086524651)+W(3,-1107480079,1040651083,1071698983,-1075753828)+W(4,1041131835,1020594503,1051128601,-1096266051)+W(5,-1115082464,1033768858,1034660038,-1108942599)+W(6,1006187407,-1132516997,1027131696,-1123360193)+W(7,1001155939,1015478283,1041372466,-1104453127);WS(1039772272,-1082982873); -sum1=W(0,1039127452,1049032497,-1098139952,-1155633625)+W(1,-1106264016,1053169593,-1088020664,1043520647)+W(2,-1104546353,1060522592,-1087153807,1040400554)+W(3,-1145518233,1056693961,1038834197,-1139907193)+W(4,1041713673,-1095982984,1053429837,-1104883452)+W(5,1044410893,-1088607916,1048228018,-1103034636)+W(6,1039725795,-1099512929,1030077856,-1134131855)+W(7,1007790526,-1120546088,-1130616150,1012687882);sum2=W(0,1032987173,-1092902636,1027660911,1032111389)+W(1,-1102803435,1037122437,1039508875,-1101516234)+W(2,-1097110538,-1083842457,-1115097563,1001644292)+W(3,-1101871105,1067610414,1067552095,-1104358647)+W(4,-1101555589,1033006847,-1096151174,-1145661076)+W(5,-1123533577,1041814167,1026567371,-1104681426)+W(6,-1098769512,1045724867,-1107225085,1020958965)+W(7,1048796624,999019252,-1105667947,1028203943);WS(-1101412664,1073047832); -sum1=W(0,-1113880945,1059007377,-1091904865,-1133362719)+W(1,-1123950537,1047579477,-1097814305,-1131741454)+W(2,-1109995975,1060416389,-1087199740,1032803377)+W(3,-1123565085,1056063051,-1092124214,-1113780884)+W(4,-1123728428,1046383171,-1099567891,-1113889390)+W(5,1035385983,1040643140,1038341800,-1126485237)+W(6,-1115318676,1033389702,-1119557930,1012558775)+W(7,1010675502,1041003725,1042882861,-1096461162);sum2=W(0,1013686761,1030949359,-1109223248,-1132915573)+W(1,-1123503757,1039110679,1035635962,996209923)+W(2,1035262859,-1105775253,-1106751414,1029135163)+W(3,-1115490710,1027204409,1057425426,1070858778)+W(4,1025861040,1019519396,1043312829,1067133266)+W(5,980681483,-1111394964,-1098000154,-1098902818)+W(6,-1125276038,1024413043,1051287795,-1083268694)+W(7,-1129892230,-1126757058,-1103421662,-1073095921);WS(-1103532344,-1105840701); -sum1=W(0,-1106756472,-1105825052,1050195304,1044840709)+W(1,-1106322913,1053932942,1007328528,-1104890465)+W(2,1029810954,-1086676361,1057202097,-1144507642)+W(3,-1096389739,-1098358914,1054492326,-1098185309)+W(4,-1116067305,1054020609,-1093369370,1032208700)+W(5,1035916925,-1096691570,1012599092,1048715303)+W(6,-1105566449,1051257001,1027855335,-1100267787)+W(7,1034505108,1026552303,-1101687900,1050640157);sum2=W(0,-1111707317,-1101137684,-1116414033,-1103752872)+W(1,-1119262447,-1109186725,-1107841286,1034593530)+W(2,1037989791,1049211868,1056722210,-1110917586)+W(3,1056036881,-1099242284,-1094543747,1049861706)+W(4,-1105645897,1038198606,1053421235,1030171051)+W(5,1006194414,-1118866635,-1104714858,-1103907620)+W(6,-1146663095,-1109483964,-1120693058,1032413269)+W(7,-1129479912,-1114787638,-1115357885,1029169157);WS(1045178680,-1115117954); -sum1=W(0,-1102680211,1048681528,1019008549,1008490315)+W(1,-1123018420,-1113607536,1040296293,1012835273)+W(2,-1116849368,-1092105355,1035615004,1027033246)+W(3,1024407336,-1093530556,1061339424,-1128145511)+W(4,-1107241006,-1096193779,1057711678,-1103222073)+W(5,1026392201,-1102060551,1055864515,-1110547491)+W(6,-1107918421,-1102337510,1045891981,-1110097884)+W(7,-1123314455,-1095199752,1052562824,1020395952);sum2=W(0,-1108321996,-1096948503,-1112108000,1026091852)+W(1,-1115537892,-1104693583,-1112710060,1022753169)+W(2,-1106228104,1047339287,-1126080161,-1120501740)+W(3,998645667,1055675007,1051246853,-1105262859)+W(4,-1112292909,1049114511,1041989299,-1123292948)+W(5,1035781218,-1100682049,1025978716,-1139782977)+W(6,-1111036660,1032758858,1034053890,-1111667328)+W(7,1018530825,-1113969306,-1113712936,1033000622);WS(1044590904,1058699692); -sum1=W(0,985175380,-1092606720,1051210502,1009220799)+W(1,1034192409,-1090621088,1050384326,-1109361592)+W(2,1020554347,-1093618783,1055009987,-1117059707)+W(3,1024014533,-1113905855,1062574818,-1128567457)+W(4,-1115433194,-1096920415,1054554325,1015981863)+W(5,-1128687821,-1112503613,1031218808,1039114097)+W(6,1008304190,-1100279725,-1105751509,-1127205548)+W(7,-1115445028,-1101027255,-1144235755,1035507338);sum2=W(0,1036009101,-1108619644,1010492213,-1131279719)+W(1,-1117283755,1041337919,-1100684466,1035041542)+W(2,1033667347,1012813669,1015579759,-1124020763)+W(3,-1107239966,1053310286,1056064408,1025470531)+W(4,1034685217,-1103814148,1050883237,1032198922)+W(5,-1128406639,1029066827,-1113069964,-1104788458)+W(6,-1123321687,-1109499964,-1098878001,1024066141)+W(7,-1125402335,-1123197815,-1096911819,-1108347132);WS(1044030776,-1089132931); -sum1=W(0,1034269487,-1093699058,1045160768,1040395197)+W(1,1032883970,-1097458090,1050995424,-1135242887)+W(2,1042439154,-1086092656,1057188990,1040422743)+W(3,1044751430,-1078975458,-1096290982,1048952172)+W(4,1019707982,1035194756,1032938655,1042217766)+W(5,1041434446,1038040390,1043682915,1043586045)+W(6,-1133288904,-1131544335,1022768458,1029073256)+W(7,-1128708109,-1101499019,1043305900,1044718778);sum2=W(0,1043294282,-1107262777,-1132728616,-1112978295)+W(1,-1127265324,-1107127922,-1133435576,-1101649503)+W(2,1035036911,1048700262,-1115280193,-1142433873)+W(3,1051203976,-1114081637,1060204569,-1138065032)+W(4,-1092441683,1027047222,-1096051714,1049542158)+W(5,1037063919,-1087538045,1059699424,1027406094)+W(6,-1095318743,1043898666,-1091030613,1036599707)+W(7,-1096741875,-1114635611,1057805441,-1117298502);WS(-1083489614,-1078579141); -sum1=W(0,-1113694287,-1091060438,1048678744,1022130309)+W(1,1048897616,-1104759380,1055607032,1045345264)+W(2,-1104500498,-1089217572,1025763911,-1098656951)+W(3,1029397720,-1096433234,1056656214,1045280313)+W(4,1039983475,-1090900481,1055730826,1003335600)+W(5,-1099529286,-1103761763,1039576037,-1104729181)+W(6,1047818144,-1126261903,1050842685,1045845834)+W(7,-1100400745,-1098862766,1044462332,-1124798927);sum2=W(0,1034867092,-1113896283,-1089397746,1053130734)+W(1,1036831152,1008734783,-1143881728,1048547317)+W(2,-1155378720,-1107821706,-1090933436,1050664536)+W(3,1050005016,1036439980,1067046868,-1081990202)+W(4,-1109019109,-1105188391,1074023168,-1073616958)+W(5,-1107857756,-1103852014,1073004488,-1073650181)+W(6,1025727369,-1113326142,1071596064,-1078582463)+W(7,-1105627363,1036502992,1068047188,-1079035066);WS(-1123566816,-1118788492); -sum1=W(0,1034266605,-1131696345,-1102436480,1029920799)+W(1,-1136553988,1054570946,-1101485920,1027694719)+W(2,1032767842,1043367745,-1093672570,1029228634)+W(3,-1119057557,1057910725,-1081257723,1038070160)+W(4,1032596498,1051309065,-1104247863,1041012541)+W(5,-1138237144,1050053561,-1097237249,-1104490509)+W(6,1034235800,1044754161,-1100737384,1036672371)+W(7,1038972738,1047609962,-1118734125,-1101643609);sum2=W(0,1001205015,-1108935456,-1123729961,-1151981614)+W(1,1006355343,1048575251,1037564428,-1123825361)+W(2,1030505158,-1114918170,-1096130861,1015236500)+W(3,-1119701641,-1088419213,-1068662368,-1095410362)+W(4,1039794598,1032736312,1076967646,1049774729)+W(5,-1107202062,1045905661,1068403675,-1105335733)+W(6,1026836118,-1116946341,-1104305708,1050153445)+W(7,-1115440174,1003805295,-1124006983,-1103176791);WS(-1103567160,1051728620); -sum1=W(0,1022317012,1037463598,-1094952698,1033922872)+W(1,-1105517764,1027268637,-1107670055,1024776175)+W(2,-1109296554,1052072875,-1103880757,1038888053)+W(3,1030946149,-1094107172,1052944567,1043766492)+W(4,1032988986,-1087396213,1057943536,-1110506946)+W(5,-1117957958,-1098739651,1052382091,-1108829569)+W(6,1025729823,-1104965205,1036164793,-1132271979)+W(7,1009731405,1017302004,1041821631,1015545129);sum2=W(0,1031290011,-1127050317,-1113481669,-1080536402)+W(1,-1114551402,1026829489,1042490649,-1076466135)+W(2,-1137203270,1032334734,1043198364,1038797044)+W(3,1025723227,-1098446681,-1127701979,1074254195)+W(4,1020823723,1041359246,1057793899,1035340712)+W(5,-1107112701,1041376772,-1100591458,-1118262367)+W(6,-1156747895,1034398482,-1114292550,1013380262)+W(7,-1140368490,-1104694439,1037536680,1032104302);WS(-1106439480,1029090439); -sum1=W(0,1034559195,1042655458,-1102396839,1026400220)+W(1,-1151887836,1030625962,-1115609614,1035325646)+W(2,1020849475,1059377738,-1089162129,1042909598)+W(3,1042053132,-1084013087,-1083731653,1039293086)+W(4,1043127920,-1107145304,1052971191,1029716960)+W(5,1043814293,1032281331,-1107154457,1024778063)+W(6,1037260390,1040913704,-1113717087,1028666946)+W(7,1043715864,1033172451,1017680531,-1130742978);sum2=W(0,-1129107524,1021999108,1022835844,-1129901940)+W(1,-1123636938,-1148550480,1016982596,-1140398984)+W(2,-1116921954,-1104180688,1016773924,1030858450)+W(3,1035143287,1058583951,1054454385,-1117386658)+W(4,1036996009,-1112895549,-1097314323,-1108156993)+W(5,1026655402,-1116180274,-1099699990,-1118751234)+W(6,-1117010042,-1131502740,-1132536424,1016259828)+W(7,-1126794884,-1138164712,-1129763396,-1117013506);WS(1048151864,1059242544); -sum1=W(0,-1122367849,-1097114939,1043794348,1026875087)+W(1,-1121466768,-1097911384,1033810391,1014185912)+W(2,1042165293,-1085899247,1063564267,-1106211614)+W(3,-1116044868,1042506911,1042284551,-1111561384)+W(4,-1105437493,1056857214,-1089674786,1040868541)+W(5,1037358179,-1105063934,1049648847,1028107682)+W(6,-1125163356,-1123578292,1021855394,-1111395274)+W(7,-1111398955,-1106114902,1045389303,1010402126);sum2=W(0,-1139648101,-1110557326,-1106733442,1039330638)+W(1,-1108856547,1041627874,-1106727608,987619817)+W(2,1015236663,1032833232,1048813377,1025349119)+W(3,-1095822659,1054902128,1055403310,-1095503796)+W(4,-1137977893,-1098765424,-1097123375,1050144719)+W(5,1038373686,-1121592121,1045561320,-1108448514)+W(6,1015865663,-1106594443,-1106386080,1041979856)+W(7,1025690243,-1117564251,1017823319,-1105901385);WS(1058511566,1043187024); -sum1=W(0,1042620242,1041476871,-1106861387,1043942651)+W(1,1027981614,1044640335,-1120607404,1040914531)+W(2,1037513401,1039039385,-1101062960,1040902562)+W(3,1050564856,-1085132912,-1089194338,1048598306)+W(4,1040390932,-1095196494,1032203084,1019897185)+W(5,1044188393,-1116362934,-1134658518,1032634704)+W(6,1032851398,-1107832665,1026497359,1027555603)+W(7,1043046140,-1105825814,-1105488567,1032742569);sum2=W(0,-1094808435,-1083260450,1041967320,1026111290)+W(1,-1132385524,-1089624726,-1102801635,1034887813)+W(2,-1110994277,-1098133391,1050258559,-1123786474)+W(3,1039748829,1063143581,1037743779,1033106845)+W(4,1038866141,1043371703,1048943341,-1110363077)+W(5,1012861192,1040218148,-1112998265,-1121754906)+W(6,1030487914,1012758152,1031702418,1012203560)+W(7,-1132742376,1052570990,-1105604919,-1111765769);WS(-1087236686,1061665912); -sum1=W(0,-1115274057,1023071688,-1107980923,-1119301463)+W(1,-1116162424,1030200068,-1101866270,-1128116268)+W(2,-1104461343,1054050807,-1092884195,-1109238785)+W(3,-1093387666,1067462106,1056570668,-1095571507)+W(4,-1113556238,1050597447,1044256537,-1103733247)+W(5,-1115159031,1031104576,-1106234576,-1111522325)+W(6,-1126942285,-1121547516,-1128835891,-1111458030)+W(7,-1121543315,1042315272,-1114796114,-1109780718);sum2=W(0,-1127633710,1024134807,-1114424195,-1109129714)+W(1,1024854732,1020748524,-1098546148,1025355297)+W(2,-1123781128,-1117094752,-1079772750,-1102118069)+W(3,1040493279,1065417820,1059484680,-1114766469)+W(4,-1105896535,1047826025,-1107504040,1033237727)+W(5,1033983514,-1102101577,1049649199,-1154145757)+W(6,-1122459292,1040101538,-1105983778,1012710689)+W(7,-1120616672,-1124130304,1041220419,-1123999628);WS(-1092106140,-1084163121); -sum1=W(0,1036347305,1049849489,-1101083230,-1106738110)+W(1,1016904817,1040213041,-1152694122,-1115216475)+W(2,1034414494,1056746079,-1083169173,1039797369)+W(3,1040590819,1048812489,-1107117385,1022569263)+W(4,1047670567,-1084779712,1051667767,-1112982247)+W(5,1030378702,1040726752,-1109066592,-1125038036)+W(6,-1114654031,1033236350,1024925978,1025136605)+W(7,1037868673,1034988241,-1107106473,-1146668256);sum2=W(0,-1144361879,-1111008682,-1092072719,1021883158)+W(1,-1128843246,-1134810723,-1121102479,-1116668390)+W(2,1005924247,1041181160,1045581242,-1109114373)+W(3,-1104940693,1054697191,1046555600,-1113715104)+W(4,-1123234701,1052731012,-1103970223,-1128555074)+W(5,1030348431,1042931729,-1104348933,1032936433)+W(6,1032437115,-1112071203,-1113690885,-1136719027)+W(7,1024671661,-1111460488,-1129885552,-1114960949);WS(1058637774,-1109876822); -sum1=W(0,-1123254812,1042623060,-1126486401,-1112485473)+W(1,1041301297,-1105094644,-1111052512,1037949088)+W(2,-1108082435,1059472952,-1094910408,1016105496)+W(3,-1113241451,1043969956,-1094009726,1038892497)+W(4,-1110973875,-1113269955,1058531737,-1093047519)+W(5,1027216056,1026816394,-1100061186,1032398170)+W(6,1014894339,-1130602892,1032486130,-1128303438)+W(7,1019588394,1026167148,-1117291247,1021704844);sum2=W(0,1019183838,-1103677237,1041385745,-1115238116)+W(1,1031923668,1026573624,1025625867,1024201143)+W(2,1049015983,-1101357077,-1095136476,1024442030)+W(3,-1096362417,1060010174,-1096248497,-1122837727)+W(4,1005830618,-1122620605,-1115221092,1034369966)+W(5,1036998273,-1106684685,1049273019,1031554545)+W(6,-1119396253,1023743335,-1112424814,1004099770)+W(7,-1125844722,970656667,1011280453,1010302645);WS(1068382951,-1145853862); -sum1=W(0,-1109092968,-1104283584,-1126224104,-1142984099)+W(1,-1120835030,-1104742016,1048835390,1035504970)+W(2,1015957108,-1087137628,1060142968,1044651720)+W(3,1033165317,-1082841532,1050512116,1036256010)+W(4,1015780402,1048723479,1050625794,1040271692)+W(5,-1098982451,-1119342334,1046183055,-1112268532)+W(6,-1106789039,1037068029,1033167819,-1115364877)+W(7,-1105810191,998682871,1042826568,-1113754717);sum2=W(0,1042289605,-1105845074,-1105090355,1041479887)+W(1,-1123754179,1032442894,-1106552079,1028813354)+W(2,1040865617,-1090127653,-1075116096,-1087510643)+W(3,1025996190,1055606718,1073431719,-1084272058)+W(4,-1100913998,-1104101067,1067916428,1045036562)+W(5,-1118459936,1026136504,1042119939,-1131666845)+W(6,-1114401734,1031986833,-1112990087,1021173748)+W(7,-1118182115,1045409779,1031635830,-1131440550);WS(-1115823328,-1115141930); -sum1=W(0,994860217,-1096937968,1034643656,1022968545)+W(1,1043355533,-1093401724,1045563268,-1100277972)+W(2,1046651158,-1082957735,1056739037,-1106135459)+W(3,1031967699,1057829358,1053028032,-1113373017)+W(4,-1112906011,1054780763,-1085595451,1036473238)+W(5,-1139800861,1049387203,-1100812438,1042166401)+W(6,1032268536,1029694230,-1112691098,-1109328859)+W(7,1021673189,1032667294,-1163065290,1026417494);sum2=W(0,1041009418,1006794492,1023178506,-1126244586)+W(1,-1106230161,1034312638,-1120362931,1021996758)+W(2,-1113994011,-1108126219,-1105213924,-1131146954)+W(3,-1100787264,1060460225,1054015707,997147503)+W(4,-1102450993,-1119222967,1053508358,-1107185372)+W(5,-1114680808,-1097084093,-1133314452,-1126416406)+W(6,1031764893,-1125377404,-1141774536,-1126617106)+W(7,-1145068408,-1105852265,-1120752408,-1131039214);WS(1044911928,1063248560); -sum1=W(0,-1117210934,-1089987573,1050931427,-1154913199)+W(1,1045807559,1006551364,1049202419,1049427019)+W(2,-1116245664,-1085623154,1044690392,-1098224261)+W(3,-1122601008,-1098705597,1056494849,1043742399)+W(4,1041679280,-1089608778,1054654497,1009817082)+W(5,-1102494868,-1098692501,1047881833,-1102952115)+W(6,1044187563,1040126000,1043119951,1048685800)+W(7,-1101059428,-1100421777,1043071666,-1132265536);sum2=W(0,-1110897864,1031814971,1060526454,-1090228093)+W(1,-1104703066,-1126406622,1034850394,-1097166620)+W(2,1039476246,-1112535334,1060516426,-1091926928)+W(3,-1102025112,-1088994686,-1088701567,1063814816)+W(4,1041770976,1050082866,-1072347435,1074296249)+W(5,1044782005,1038057456,-1075073775,1073862535)+W(6,-1112640404,1029663347,-1077197270,1067261757)+W(7,1045848501,-1098794387,-1081012351,1067785227);WS(-1105546040,1026157880); -sum1=W(0,1040950836,1040614249,-1102499357,1036650571)+W(1,1036866652,1043435937,1032157499,1032871003)+W(2,1045419231,1048836647,-1088963702,1035867609)+W(3,1057171433,-1092874056,-1078642173,1040635958)+W(4,1039696013,1049109967,-1094603626,1039966133)+W(5,1040737235,1037560064,999044599,1035782037)+W(6,1031337694,1039556030,-1107844556,1034875342)+W(7,1043417390,1020658754,-1101965321,1029450491);sum2=W(0,999804672,1033414560,-1131242272,-1111239120)+W(1,965076992,-1142972544,-1152459008,-1114613368)+W(2,1017997216,-1117537424,1043660652,1024438240)+W(3,-1113573416,-1080122522,1068973644,1009242816)+W(4,1015814944,-1116987776,-1113471168,1026341216)+W(5,1013150208,1009041344,1023678672,-1111376032)+W(6,1004325632,1030258512,-1115573696,-1124670336)+W(7,-1116017408,-1123867424,1025739248,1011147520);WS(-1081027239,1060388068); -sum1=W(0,1040945153,1049191505,-1103567931,-1142725077)+W(1,1018532824,1052335227,-1106690587,-1126830164)+W(2,1048158700,1053224518,-1098210230,1044049241)+W(3,1050078256,-1089652372,-1079677805,1037048166)+W(4,1043330564,1050009062,-1090769236,1037549983)+W(5,1045983912,1019623144,-1102526621,-1124021470)+W(6,1034126717,1043374892,-1113976903,1031972104)+W(7,1042366848,1037373643,-1106920486,1000910717);sum2=W(0,1029289565,-1119356133,-1126159585,-1119814653)+W(1,1023484285,1031916514,-1111485988,-1133461586)+W(2,1041097307,-1120749829,-1121314077,-1112201820)+W(3,1044843621,1057057740,1024531885,1001931237)+W(4,-1101664529,1055633817,-1102656055,1035253182)+W(5,-1108647964,-1098024997,1016983721,1019582313)+W(6,-1111945130,1038083406,-1105960100,1011319026)+W(7,-1129898257,-1101101054,1022769465,-1110859200);WS(-1121436896,-1083449266); -sum1=W(0,-1131437006,1057845458,-1096100393,-1112818966)+W(1,-1126965659,1026072602,-1106937331,1025271436)+W(2,-1106898372,1058188821,-1089458543,-1120770471)+W(3,1049661628,1047051462,-1093909527,1039868950)+W(4,-1110051320,1036301673,-1105302990,-1101852248)+W(5,1048826500,1049513187,-1097831955,1048680544)+W(6,1018834023,1026266705,-1115312055,-1111779257)+W(7,1030351624,1043516478,-1094725407,-1137214404);sum2=W(0,1025140224,-1118806788,-1126785121,1031495588)+W(1,1016993788,1030590564,-1118559458,991152164)+W(2,-1106156741,1042721449,-1106137914,1038491925)+W(3,-1085967118,1078987048,-1100137345,1040984057)+W(4,-1070014283,1078555235,1044823121,-1111978905)+W(5,-1066270592,1069325982,-1105174392,1030579932)+W(6,-1089828448,1051485796,-1121082393,-1113499951)+W(7,-1115300709,1026006822,1011662011,-1120641633);WS(1060473294,-1125032523); -sum1=W(0,-1118381578,1043924207,1028842287,-1103983036)+W(1,-1131528546,1048790648,-1094915206,1032416951)+W(2,-1103035725,1057928103,1048586166,-1131359957)+W(3,1044891665,-1096003632,-1089668066,1041536420)+W(4,1017562024,-1104437021,1048997587,-1119623443)+W(5,1038728371,-1127678449,-1106021950,1026802338)+W(6,1013193724,-1138265298,1016196772,-1112764523)+W(7,1017619335,1019650740,-1112334062,1028850580);sum2=W(0,-1124013145,1023871771,1041717973,1027246941)+W(1,-1154979909,-1104183315,-1104961174,-1105906795)+W(2,-1113455493,1024353365,-1071159846,-1114760758)+W(3,1042673063,-1099433949,1075222357,1048045634)+W(4,1009341589,1037029004,1061754151,-1101645527)+W(5,-1131887235,-1106752952,-1106459992,1027783079)+W(6,-1126494367,-1136822537,1037905746,-1130069351)+W(7,-1120394460,-1135604889,1020599743,1023779471);WS(1063175758,1049951270); -sum1=W(0,1051934199,-1084051495,1040719576,1028219745)+W(1,1041620825,-1091045702,1046456792,1028165760)+W(2,1053157077,-1089200998,1054477181,-1110307566)+W(3,1019501037,-1103613676,1050464826,1037889601)+W(4,-1121035141,-1103906809,-1098419444,1045652053)+W(5,1024394007,1042850683,-1097805325,1054554722)+W(6,1034798936,-1117239270,1011564046,1031152711)+W(7,999909159,-1106705027,-1091232034,1056053333);sum2=W(0,-1091471926,1062079447,1055700238,1015596856)+W(1,1042259987,-1095572989,1041645665,1033532620)+W(2,-1103057728,-1089203271,1037140407,1035045090)+W(3,1049412228,-1092861102,-1093629070,1042934527)+W(4,1044973062,1034556296,-1095940003,1032040702)+W(5,-1116401558,1047552828,-1106623325,-1106239816)+W(6,1011000463,-1110031497,-1107294450,1033073048)+W(7,-1130123924,1051271629,1053844390,-1095799213);WS(-1085388366,-1090694979); -sum1=W(0,-1123787314,1044273497,-1108110651,-1115475932)+W(1,-1119481145,-1130943626,1041576542,-1117135031)+W(2,1032777214,1047368143,-1087220302,1040347561)+W(3,-1112850502,1059845268,1027588771,-1101064470)+W(4,1041751591,-1095680144,1036323946,1037523789)+W(5,-1125429276,1039407200,-1111657568,-1126225621)+W(6,-1140788444,990533574,1021334836,-1134357621)+W(7,-1113892940,1032644049,-1143449895,-1109271006);sum2=W(0,-1107190004,1037736456,-1125693587,-1120404934)+W(1,1013881877,-1105376838,1040619572,-1122228614)+W(2,-1118295314,-1123416196,-1082924015,1051908042)+W(3,-1121103222,1042717593,1068021664,-1087341114)+W(4,-1127822751,-1115549939,1016978358,1042189807)+W(5,-1115317828,1043660085,-1108863865,-1125959243)+W(6,-1126179247,-1126402007,-1136349779,1038966556)+W(7,-1114801766,1040920849,-1107267301,1023515477);WS(1065904679,-1122628785); -return clamp(mstd0 + 5.0 * vsum / wsum * mstd1, 0.0, 1.0); -} // nnedi3 -vec4 hook() { -vec4 ret = vec4(0.0); -vec4 samples[8]; -samples[0][0] = HOOKED_texOff(vec2(-3.0, -1.0)).x; -samples[0][1] = HOOKED_texOff(vec2(-3.0, 0.0)).x; -samples[0][2] = HOOKED_texOff(vec2(-3.0, 1.0)).x; -samples[0][3] = HOOKED_texOff(vec2(-3.0, 2.0)).x; -samples[1][0] = HOOKED_texOff(vec2(-2.0, -1.0)).x; -samples[1][1] = HOOKED_texOff(vec2(-2.0, 0.0)).x; -samples[1][2] = HOOKED_texOff(vec2(-2.0, 1.0)).x; -samples[1][3] = HOOKED_texOff(vec2(-2.0, 2.0)).x; -samples[2][0] = HOOKED_texOff(vec2(-1.0, -1.0)).x; -samples[2][1] = HOOKED_texOff(vec2(-1.0, 0.0)).x; -samples[2][2] = HOOKED_texOff(vec2(-1.0, 1.0)).x; -samples[2][3] = HOOKED_texOff(vec2(-1.0, 2.0)).x; -samples[3][0] = HOOKED_texOff(vec2(0.0, -1.0)).x; -samples[3][1] = HOOKED_texOff(vec2(0.0, 0.0)).x; -samples[3][2] = HOOKED_texOff(vec2(0.0, 1.0)).x; -samples[3][3] = HOOKED_texOff(vec2(0.0, 2.0)).x; -samples[4][0] = HOOKED_texOff(vec2(1.0, -1.0)).x; -samples[4][1] = HOOKED_texOff(vec2(1.0, 0.0)).x; -samples[4][2] = HOOKED_texOff(vec2(1.0, 1.0)).x; -samples[4][3] = HOOKED_texOff(vec2(1.0, 2.0)).x; -samples[5][0] = HOOKED_texOff(vec2(2.0, -1.0)).x; -samples[5][1] = HOOKED_texOff(vec2(2.0, 0.0)).x; -samples[5][2] = HOOKED_texOff(vec2(2.0, 1.0)).x; -samples[5][3] = HOOKED_texOff(vec2(2.0, 2.0)).x; -samples[6][0] = HOOKED_texOff(vec2(3.0, -1.0)).x; -samples[6][1] = HOOKED_texOff(vec2(3.0, 0.0)).x; -samples[6][2] = HOOKED_texOff(vec2(3.0, 1.0)).x; -samples[6][3] = HOOKED_texOff(vec2(3.0, 2.0)).x; -samples[7][0] = HOOKED_texOff(vec2(4.0, -1.0)).x; -samples[7][1] = HOOKED_texOff(vec2(4.0, 0.0)).x; -samples[7][2] = HOOKED_texOff(vec2(4.0, 1.0)).x; -samples[7][3] = HOOKED_texOff(vec2(4.0, 2.0)).x; -ret[0] = nnedi3(samples); -return ret; -} // hook -//!DESC NNEDI3 (combine_y, nns128, win8x4) -//!HOOK LUMA -//!BIND HOOKED -//!BIND nnedi3_int -//!HEIGHT 2 HOOKED.h * -//!OFFSET 0.000000 -0.500000 -//!WHEN HOOKED.h OUTPUT.h / 0.707106 < -vec4 hook() { - vec2 dir = fract(HOOKED_pos * HOOKED_size) - 0.5; - if (dir.y < 0.0) { - return HOOKED_texOff(-dir); - } else { - return nnedi3_int_texOff(-dir); - } -} -//!DESC NNEDI3 (double_x, nns128, win8x4) -//!HOOK LUMA -//!BIND HOOKED -//!SAVE nnedi3_int -//!WHEN HOOKED.w OUTPUT.w / 0.707106 < -float nnedi3(vec4 samples[8]) { -float sum = 0.0, sumsq = 0.0; -for (int i = 0; i < 8; i++) { - sum += dot(samples[i], vec4(1.0)); - sumsq += dot(samples[i], samples[i]); -} -float mstd0 = sum / 32.0; -float mstd1 = sumsq / 32.0 - mstd0 * mstd0; -float mstd2 = mix(0.0, inversesqrt(mstd1), mstd1 >= 1.192092896e-7); -mstd1 *= mstd2; -float vsum = 0.0, wsum = 0.0, sum1, sum2; -#define T(x) intBitsToFloat(x) -#define W(i,w0,w1,w2,w3) dot(samples[i],vec4(T(w0),T(w1),T(w2),T(w3))) -#define WS(w0,w1) sum1 = exp(sum1 * mstd2 + T(w0)); sum2 = sum2 * mstd2 + T(w1); wsum += sum1; vsum += sum1*(sum2/(1.0+abs(sum2))); -sum1=W(0,-1106336704,-1134422686,-1097058997,-1096794255)+W(1,-1096428577,-1108910446,-1110459731,-1101174078)+W(2,-1104338237,-1108550970,1036063029,1068454954)+W(3,1045547931,-1102009308,-1122481515,1017740065)+W(4,1041734649,-1135080854,1053379177,1068510503)+W(5,-1114733521,-1146436468,-1107441476,-1113618698)+W(6,-1112016931,-1117701445,-1099451832,-1092648385)+W(7,-1101312270,-1118387353,-1118789516,-1107281979);sum2=W(0,-1107960738,1022891960,-1112828174,-1099542471)+W(1,1028527356,-1124169384,1003609248,1019646072)+W(2,1034572820,1003346080,-1096749055,1067566060)+W(3,-1090311143,1028295012,-1101382023,-1102277943)+W(4,-1105088633,-1103397515,1056062200,-1127174872)+W(5,1048792675,-1106700271,1033154740,1037356874)+W(6,-1147785184,1035529310,-1105585021,1034766166)+W(7,-1117109292,-1116900804,-1121486356,-1114899026);WS(-1075683047,-1087125913); -sum1=W(0,1042687663,1034752002,1020877136,1043598702)+W(1,1032834596,1049059763,1041786741,1050972591)+W(2,1052977914,1046022844,1051043629,1049374510)+W(3,1044576234,-1108783446,-1105784362,-1089957133)+W(4,-1087267578,-1097639380,-1087388173,-1095656786)+W(5,-1108370107,-1101488315,-1111228387,-1108747496)+W(6,1041384601,1034807969,1037740431,1044538321)+W(7,-1113942663,1043415765,1011031587,1034104676);sum2=W(0,-1129327146,-1149557934,1027469999,-1116270499)+W(1,-1107094547,-1114668504,-1136313139,-1115408970)+W(2,-1112916736,-1120018795,-1105442406,1056936993)+W(3,1036431709,1029410453,-1126491682,-1112281372)+W(4,-1109246006,1012425107,1044505132,1054092693)+W(5,1015080154,-1102188513,-1123974759,-1115235380)+W(6,-1168639863,-1122303521,-1114911422,-1109477794)+W(7,-1122292075,1038663029,-1124857486,1004657207);WS(1042212664,-1102203684); -sum1=W(0,-1140902818,1019874102,-1138465404,1041713132)+W(1,1031911135,1032244040,-1122713961,1032066151)+W(2,1040147851,-1104962202,-1102798136,-1085739950)+W(3,-1090423514,-1096835716,1015091005,-1100137137)+W(4,1035472140,1045102086,1044852023,1052255697)+W(5,1050093153,-1114874577,-1125530488,1025859399)+W(6,-1111794429,1033944684,-1122108180,1042129278)+W(7,1026181805,1045351411,1045226448,1037723887);sum2=W(0,1025219442,-1119436548,1041363772,1026037858)+W(1,-1106963956,-1148187164,-1115265228,1027834104)+W(2,-1109152196,-1122141349,1032935700,-1095545125)+W(3,1029288712,1048235476,1017807431,-1124373883)+W(4,1026944460,1040314652,-1124096755,-1132954458)+W(5,1063106013,1044093468,-1119277141,-1115291573)+W(6,-1136900198,-1112897189,-1144192892,1046665648)+W(7,-1112667488,-1091150222,-1098670428,-1099776205);WS(-1106435384,1038338229); -sum1=W(0,1040095954,1019822615,1037825128,1041126536)+W(1,1042659628,1046281616,1025627498,1052688116)+W(2,1057302312,1048464174,1048602738,1046177110)+W(3,-1113571175,1010729037,-1116720143,-1090676327)+W(4,-1085504617,-1109673285,-1088007186,-1089584127)+W(5,-1112427435,-1099904421,985851280,-1109333660)+W(6,1038469973,1008999077,1047759857,1042217259)+W(7,-1122205838,1042535855,1020820192,1034203799);sum2=W(0,1016257202,1025056091,-1123344133,-1117490597)+W(1,-1139226916,-1121712633,1032149092,1018740994)+W(2,1059204215,1059357388,-1096239491,-1080318626)+W(3,-1097775023,-1121076469,-1108589001,1042934709)+W(4,1078138204,1057901024,-1075026282,-1073900782)+W(5,1041808545,1040778731,1040543247,1013253724)+W(6,1045786159,-1115583727,1040463834,1043123901)+W(7,1021989454,-1105966927,1015040126,-1147555881);WS(-1079558823,-1098708322); -sum1=W(0,-1107155318,1025234303,1015859078,1036194249)+W(1,-1109510417,-1106597869,-1106784003,-1107821257)+W(2,-1102044491,-1098872409,-1087610848,-1086405173)+W(3,1049149960,-1113006787,1034815041,-1109243348)+W(4,-1157836704,1050456336,1055919296,1051086989)+W(5,1049231261,1047976577,1037659280,1045770027)+W(6,1018716763,1032647774,1043448582,1041211303)+W(7,1032229161,-1113988824,-1114873522,-1115826050);sum2=W(0,-1115121954,1012713185,-1120959275,979525395)+W(1,1031308048,1023425822,1008898041,1015643115)+W(2,1038073794,-1114116718,1048906430,-1089285214)+W(3,1044939824,960279117,-1114246838,-1116674868)+W(4,-1128914993,1041575276,1074552079,-1076455267)+W(5,-1081125046,-1109266711,1028966618,-1116558128)+W(6,-1116577465,-1124395325,1055266270,1060162115)+W(7,-1098098687,1021768571,-1124862202,1013382601);WS(1045132600,-1120782135); -sum1=W(0,-1105751784,-1105178898,-1104184899,-1114219853)+W(1,-1110381909,1038688878,-1129240105,1028338913)+W(2,1057393815,1048859946,1059464001,1046945589)+W(3,-1115358437,-1101266388,1006928425,1001553277)+W(4,-1105555137,-1097544977,-1093321826,-1096850414)+W(5,1045680426,1054674458,1040711722,1051440502)+W(6,-1117651397,1030868229,-1113548192,-1114482291)+W(7,-1100710867,-1101910270,-1109195062,-1106616547);sum2=W(0,1017265392,-1109811903,1023756444,-1113627340)+W(1,1014378799,-1145950526,-1129429444,1013677319)+W(2,1041015042,1031690548,1041543835,1061785433)+W(3,-1112539854,1033767962,-1111764061,-1098545742)+W(4,-1100279165,-1110095441,-1121800962,1052269299)+W(5,1027655784,-1103181542,-1110834939,-1106577514)+W(6,1015388608,-1118750728,1018680528,-1143924414)+W(7,-1099334823,1020584168,-1108053853,1036964648);WS(1052573852,-1122511817); -sum1=W(0,-1122539822,1036520122,-1150669710,-1131456914)+W(1,1027717464,1032118773,1021054902,1030809195)+W(2,-1107197216,-1104137920,-1095755763,-1089160552)+W(3,-1090293588,-1090056564,-1092174087,-1086001910)+W(4,-1123108403,1038549849,1032946604,1050538028)+W(5,1052989852,1057974832,1053464075,1057808582)+W(6,1051517474,1023654291,1039184399,1041388597)+W(7,-1168884669,1033029075,1028526105,1041880934);sum2=W(0,-1085894681,1038192816,-1098445483,-1102898046)+W(1,1008806191,1050638036,-1102617523,1057325981)+W(2,-1108201039,-1090848333,1052221636,1071505414)+W(3,-1098981857,-1086351349,-1096799400,-1088620184)+W(4,1070882268,-1093216289,1067999858,1073865984)+W(5,1058878464,-1083525828,-1107159037,-1083206959)+W(6,-1081052443,-1102549623,-1087793608,-1090403840)+W(7,-1095780376,1055133376,-1096503933,1053790412);WS(-1073219892,-1080326418); -sum1=W(0,-1114077580,-1142635506,-1142955026,-1123237842)+W(1,1038107057,-1103324917,1026598572,-1095875035)+W(2,-1101602915,-1103425331,-1090278522,-1092662145)+W(3,-1091646784,-1114692451,-1101848592,1038718196)+W(4,1057495924,1053716920,1055741332,1051447237)+W(5,1052494629,1049044089,1043005848,1047828379)+W(6,-1151047116,-1114784094,-1111276924,-1121668701)+W(7,1000704387,-1109204280,1010568075,-1156952092);sum2=W(0,-1121663397,-1116542136,1042431779,1037730633)+W(1,1010053773,-1137348615,1028087910,-1119025600)+W(2,-1095443331,1050195534,-1123573301,-1100504352)+W(3,1043186658,-1102861372,-1110454800,1040229501)+W(4,-1067370736,-1071776975,1068672794,1077012119)+W(5,1070664889,1045361006,-1123945395,1027642294)+W(6,1005231721,974104521,-1111985184,1047585075)+W(7,1016528922,-1109020232,1037668055,-1117277443);WS(-1130027456,1047744266); -sum1=W(0,1030328637,-1100312969,1036569044,1044449278)+W(1,-1106699970,1046212150,-1104762293,-1124975021)+W(2,-1103440100,1043447132,-1096543805,-1093151398)+W(3,1024264999,-1115860524,1041344218,1032410566)+W(4,1050534604,1038395889,1037345619,-1106526388)+W(5,-1115006287,1035372917,980910400,1044066628)+W(6,-1130350917,-1105733872,1043114871,1022399622)+W(7,1020228332,1024836117,-1123108872,-1112803412);sum2=W(0,1029880722,-1098453144,1029103498,1067660000)+W(1,-1094604015,1046293202,-1104816365,-1117927817)+W(2,1033391383,1041649400,-1095624145,-1082091368)+W(3,1056223691,1027973488,1034193475,1034286113)+W(4,-1137819024,-1137377888,1040796761,-1080643124)+W(5,-1102259819,-1121978412,-1148596400,1041009105)+W(6,-1114516031,1025620716,1035240799,1066795978)+W(7,-1098376459,1036814117,-1107858514,-1114981924);WS(1049012636,1037011386); -sum1=W(0,-1108102978,1042768739,1036457352,-1105146600)+W(1,-1100621772,-1100160944,-1149100234,-1116535239)+W(2,-1097922903,-1089977373,-1083790961,1050515995)+W(3,1053649082,1044221701,1020595485,-1110188826)+W(4,1049818257,1052134241,1059747641,1062551839)+W(5,-1088576433,-1093385002,-1108848982,-1147628986)+W(6,1041216474,-1106782690,-1120768141,975424142)+W(7,1042971413,1047421135,-1142399358,1034144007);sum2=W(0,-1130376652,-1109307779,998991648,-1105231849)+W(1,-1124853008,-1110904873,1033926100,1012787248)+W(2,-1109271051,1040605589,-1117670218,1068278024)+W(3,-1099193318,1035466738,-1111928806,1025845624)+W(4,-1098570547,-1097221185,-1087670872,1068017963)+W(5,-1103240593,1049832589,1018913792,1035573068)+W(6,1029552052,-1097745138,-1101762859,-1100990121)+W(7,-1094879980,-1119653306,-1099498770,1046656503);WS(-1099128120,1074104605); -sum1=W(0,1001695642,-1114738061,-1137881464,1035838167)+W(1,1036976671,1043227732,1024532056,1041576607)+W(2,1031876531,1036082771,1049670772,1045634202)+W(3,1039176783,1044499416,-1115296143,1036111714)+W(4,-1106225286,-1127447088,-1114090766,-1084335000)+W(5,-1092101927,-1106295064,-1108352670,-1103209586)+W(6,1039516460,1037331996,1048871226,1024672505)+W(7,-1111706306,1040216275,1018355325,-1129216251);sum2=W(0,-1125983803,1026289226,1003361806,1036989304)+W(1,-1121376018,-1127516251,999276462,1020382491)+W(2,1057121124,1048908439,1042597022,-1101738899)+W(3,-1101518001,-1114490175,1032222895,-1111061815)+W(4,-1097673861,-1081617292,-1083990029,1066557847)+W(5,1050089807,1021212715,-1107462587,1048167829)+W(6,-1097055530,-1105528539,-1094090339,1060807350)+W(7,1045798092,1007168711,1021142275,1024157832);WS(1043392312,-1114334171); -sum1=W(0,1041086874,1027676176,1029494548,1038182418)+W(1,1033375641,1014428948,1016176348,1036956537)+W(2,1046571639,1051603231,-1114765098,1063881062)+W(3,1036439434,1039261900,1049353410,1039119196)+W(4,-1101297859,-1100311555,-1090719068,-1092551191)+W(5,-1093343060,-1095549099,-1102133676,-1097401399)+W(6,-1108043111,1031499310,-1123479337,1047470620)+W(7,1029157954,-1113522785,1032866554,-1108903402);sum2=W(0,1032922039,1034144522,1035186417,-1106146153)+W(1,995983013,1014708981,-1118508182,-1122673776)+W(2,-1110774431,1041464609,-1089347840,1063858171)+W(3,-1103182741,-1105498679,1046443094,-1107403517)+W(4,1024080221,1024001520,-1102975683,1062496232)+W(5,-1104694448,1034761930,-1113235807,-1126790312)+W(6,-1111786600,1038622987,-1098326560,-1094555153)+W(7,-1110476474,-1107944280,1045574278,-1119406695);WS(1055141020,1060902337); -sum1=W(0,1034435725,-1133288704,1026181508,1033934442)+W(1,1030709219,-1118188821,1027652318,1035419593)+W(2,1057965143,1052483105,1052696320,-1122504460)+W(3,1052884304,1049027177,1046782257,1045790650)+W(4,-1123568702,-1121795134,-1094115828,-1084201687)+W(5,-1093347107,-1096042081,-1098441692,-1101051195)+W(6,-1104499136,1006999415,-1153162900,1029709087)+W(7,1036285529,-1155692311,1013713298,-1111952258);sum2=W(0,1043194323,1017945729,992756489,-1117717167)+W(1,1023440269,-1108161809,1034607052,-1115924363)+W(2,-1070666261,-1075189642,1068575013,1076566585)+W(3,1056539999,-1098049115,1036076910,-1112346970)+W(4,-1098866335,-1106608294,1051129947,1049134123)+W(5,1047751107,-1097073139,1011007330,1016205049)+W(6,-1101126135,1010301074,-1107911121,1046700061)+W(7,1020103457,1026363561,1035420194,-1137869730);WS(-1090579868,1070279725); -sum1=W(0,1032329895,-1102328821,-1113203900,-1098061089)+W(1,-1105344998,1034205973,-1106552005,1041435478)+W(2,1048430680,1050349544,1052980239,1057014372)+W(3,1057962188,1038273502,1046276062,1049777060)+W(4,-1101560157,-1091335294,1039656780,-1084573078)+W(5,-1103450436,1043587871,-1098888483,1002064136)+W(6,-1129281319,1012204235,1033674783,-1115372202)+W(7,-1108117804,-1111454739,-1115265901,-1109943484);sum2=W(0,987673807,1036995374,-1095509641,-1094252408)+W(1,-1119095571,-1103179232,1040985329,-1114181285)+W(2,1027892228,-1102736131,1034852634,1059241808)+W(3,-1103859919,1043446486,-1109795439,1004807604)+W(4,-1103141235,1049007178,-1090760003,1060311666)+W(5,-1129798465,-1100012675,1051746582,-1113144024)+W(6,1005138532,1028221332,-1123669832,-1128511149)+W(7,1032914452,1006285508,-1122773902,987177167);WS(1058381774,-1086956646); -sum1=W(0,1005434106,-1149835360,1034370117,1036055789)+W(1,1007595428,-1173712576,-1122685332,-1119060568)+W(2,-1096145742,-1100460324,-1096424577,1033532617)+W(3,1049990129,1042033667,-1147483724,1021597150)+W(4,1046241393,1039571170,1054608457,-1110152984)+W(5,-1100950084,-1103984787,-1122634471,1016207588)+W(6,1026532260,-1120107684,-1107524072,-1123297125)+W(7,1032832748,1041584782,-1111048693,1023439817);sum2=W(0,1073050559,1069067455,-1096535796,-1073893027)+W(1,-1077684470,1038335059,994568047,-1109196141)+W(2,1049113865,1035642194,-1105600932,-1114871718)+W(3,-1104998692,1034875990,1004288083,1019116562)+W(4,1048373410,-1101089925,1050248373,-1113393188)+W(5,1015693919,1032989733,1024635942,1041247426)+W(6,-1123382260,1035361564,-1105239942,1000972215)+W(7,-1112223483,987872957,1016564448,1019016937);WS(1051792028,1027146209); -sum1=W(0,-1173418992,1031492470,1030866682,-1111745573)+W(1,1037975597,1032231158,1021051177,1029296729)+W(2,-1096555104,-1099279313,-1102472206,-1086728512)+W(3,-1098029143,-1099704976,-1107704157,-1088435526)+W(4,1048715847,1043543405,1045948678,1048944276)+W(5,1053562136,1041023999,1031959404,1046674105)+W(6,1037767898,1032372106,1031937048,1030986133)+W(7,1035090980,1038793940,1031982829,1043937550);sum2=W(0,1076285256,1067013205,1054912747,-1103468782)+W(1,-1082179927,-1086354611,-1086555076,-1077304359)+W(2,-1071495861,-1080654015,-1092768710,1053690657)+W(3,1062196550,1059230433,1065208788,1069826015)+W(4,-1089164092,1044446905,-1089831336,1049463752)+W(5,-1116071286,1055604285,-1102169042,1049830695)+W(6,1024798548,-1130255717,-1111620633,-1129289568)+W(7,1022374674,-1147177200,1008723412,990531682);WS(-1116843232,1041538044); -sum1=W(0,1038718416,1041393778,1023355030,1040958951)+W(1,1040537034,-1112360254,1043346413,1047211822)+W(2,1050813118,1048646402,1043671731,1037057641)+W(3,1050123337,1052799074,1037436293,1042212684)+W(4,-1091780513,-1107072481,-1097953353,-1088265503)+W(5,-1105750724,-1091053114,-1121572392,-1091261766)+W(6,-1107356403,1032833522,-1126022145,-1185162751)+W(7,1038008293,-1123581176,1033129910,-1116284746);sum2=W(0,-1127892588,1025248710,-1127740272,-1114879615)+W(1,-1125515678,-1135605467,1015277154,-1118452308)+W(2,-1090048491,-1124324076,-1092974499,1047668544)+W(3,1042122418,1052455522,-1102075660,1052515578)+W(4,-1076486023,-1080184847,-1080442855,1048567939)+W(5,1066323214,1068938556,1066205534,1058048535)+W(6,1071993665,1067215194,1068762214,1014309155)+W(7,-1079656754,-1077318729,-1083078137,-1086246531);WS(1045082936,1047750074); -sum1=W(0,1017867382,-1105827232,-1139557912,-1098507795)+W(1,-1112138258,-1113781499,-1117154624,1024003356)+W(2,1038967959,1036533543,1048524561,1057427781)+W(3,1057555836,1044700722,1037485187,1046059755)+W(4,-1107005280,-1101431328,1044741561,-1099209723)+W(5,-1103886606,-1117912777,-1108908881,1024367918)+W(6,-1117189504,1000061951,1034808454,-1102176472)+W(7,-1102736460,-1102956733,-1113728179,-1108156515);sum2=W(0,1003184961,971431442,-1131894760,-1133283297)+W(1,984723076,1031831407,-1125590160,1031681833)+W(2,1024857236,-1109323954,1026446282,-1105665514)+W(3,-1116186208,1024492508,-1121629964,-1148808497)+W(4,-1114215978,1030818718,1031262679,1056963612)+W(5,1055283667,975724297,-1116339968,1026784592)+W(6,1037587704,-1121823736,1045339410,-1107079097)+W(7,-1090072253,-1102678968,-1103014356,-1123463096);WS(1059869006,1015916977); -sum1=W(0,-1111801867,1039164638,1023424768,-1118862224)+W(1,-1114194639,-1099094340,-1118811114,-1096321008)+W(2,-1103727218,-1102716146,-1089648586,-1092420393)+W(3,1049092536,1052180160,1032231232,1046058153)+W(4,1051877295,1051739903,1057614174,1055627629)+W(5,-1096079006,1008315659,-1121275805,1039975892)+W(6,-1115491581,-1106752078,-1104830517,-1112797325)+W(7,1038662167,1030088557,-1131680577,-1175801754);sum2=W(0,-1113427160,-1104433368,-1104169884,-1117600576)+W(1,-1102319880,1039627671,-1097619580,1047721667)+W(2,-1090644207,-1091764889,-1109333336,1065407690)+W(3,-1098732665,-1109931470,1043714297,1041133481)+W(4,1034414883,-1120815960,995253792,1059846520)+W(5,1048874179,1008884504,1021072320,-1103318888)+W(6,1038986783,-1135559136,1033390214,-1120264784)+W(7,-1104270640,1019376128,-1111461786,-1142244432);WS(1054131356,-1077482588); -sum1=W(0,-1100136045,989703980,-1114161471,-1117800461)+W(1,1013262449,-1112319975,1027862775,-1103330903)+W(2,-1101215881,-1100083265,-1091699940,-1088812180)+W(3,-1095974704,1033042241,-1095224480,-1102789769)+W(4,1045307006,1039854844,1051542530,1056393300)+W(5,1053327664,1059113280,1049428707,1055440053)+W(6,1047064142,-1120855287,1042850313,-1122501592)+W(7,-1118254671,-1111473941,-1119385054,-1109190398);sum2=W(0,-1098032416,1055692800,-1101668743,-1100435053)+W(1,-1089098280,-1094416925,-1099202751,-1104551065)+W(2,1063396296,1024719031,1065491656,1073645059)+W(3,1060161647,-1074198531,-1081296593,-1083400329)+W(4,1043414797,1032661901,1058961916,1063424749)+W(5,-1096580753,-1098776178,-1115458644,-1092624053)+W(6,-1093635160,1049215120,-1090478816,1050905898)+W(7,-1135528507,1042380471,1032695397,1054277265);WS(-1082679118,-1072338335); -sum1=W(0,-1126832308,998650886,1029713605,1045660229)+W(1,-1125245511,1001090478,-1126242526,-1128346278)+W(2,-1092407662,-1099976035,-1098757312,1049242330)+W(3,1052609817,1049104969,958956607,-1170516592)+W(4,1041636256,1035459839,1053507448,-1097348797)+W(5,-1097111418,-1099322690,-1116731426,1009511091)+W(6,1032452512,-1118647007,-1113994637,1019901759)+W(7,1026546307,1041545965,-1113342195,1027607012);sum2=W(0,-1069228184,-1073602631,1021776922,1076866983)+W(1,1069809281,-1101499289,1013617559,1036050969)+W(2,-1099529380,1043301860,1054858487,1044685536)+W(3,1062109344,-1097491140,-1149319294,-1113127688)+W(4,-1112044089,1041147606,-1119872164,-1106846135)+W(5,1042271976,1035368326,1025827813,-1115137330)+W(6,-1144476451,-1112019052,1036271953,1018899191)+W(7,-1114284680,-1126672913,-1112053703,-1146921887);WS(-1125906880,1029353026); -sum1=W(0,1052620124,1040928385,1053619569,1034478636)+W(1,-1149501032,1027228408,1033816441,-1143379631)+W(2,-1082830235,-1087911853,-1088553290,-1115166792)+W(3,-1104403058,1046902211,-1140598044,-1115398454)+W(4,1044570800,1048894344,1054767249,1052323270)+W(5,-1096342700,-1092690897,-1112660402,-1089842615)+W(6,1033131793,1031982257,-1118254573,1037418321)+W(7,1045103465,1053685367,1032758420,1056771243);sum2=W(0,1052242091,-1105901664,1041713460,-1098081544)+W(1,-1101414896,-1140318759,-1123485994,-1108472633)+W(2,-1123374674,1032004261,1057464262,1055897675)+W(3,-1108453649,-1099401944,1039811869,-1092934450)+W(4,-1088438592,-1109896025,-1106721416,1057898227)+W(5,1044097375,1041656473,1042751001,1033994653)+W(6,-1109756837,-1117902306,-1106560728,-1101499608)+W(7,-1114554169,1042131382,-1104786072,1048148308);WS(-1080878567,1068324028); -sum1=W(0,-1115471279,1019310859,-1121098697,-1115193805)+W(1,-1153442440,-1104713039,1023975060,-1094675607)+W(2,-1095139206,-1103458412,-1090917913,-1094785898)+W(3,-1100131090,-1118370765,-1102569730,1044057356)+W(4,1057833304,1049561152,1058273109,1054221326)+W(5,1050583410,1048985266,1041261354,1045920684)+W(6,1032811018,-1118469827,-1107876783,-1109399058)+W(7,-1121957752,-1109945243,-1125987028,-1144681671);sum2=W(0,-1122597644,1032420914,-1109997244,1029919127)+W(1,-1129031901,1025876905,-1121404056,1025649559)+W(2,1052263517,-1132353885,-1113437764,-1086124512)+W(3,-1134522929,-1137529969,1041285329,-1111439550)+W(4,1084267296,1077171750,-1076080701,-1066836895)+W(5,-1073829589,-1128728545,-1128683125,-1109934248)+W(6,1037076324,1017945885,1045994672,-1105598049)+W(7,-1115453382,1027437378,-1112127416,1032857588);WS(-1106960696,-1099012034); -sum1=W(0,-1114528403,-1119077260,-1143558020,-1119877760)+W(1,-1109244232,-1096650748,-1112604445,-1100402892)+W(2,-1099071342,-1099370430,-1089278443,-1086538844)+W(3,1010994112,1041376829,1042854492,1049345155)+W(4,1055554285,1049964157,1061104081,1056629915)+W(5,1049997315,1042073805,1031563405,-1123516568)+W(6,-1109121109,-1115766890,-1114965299,-1120868875)+W(7,1034547527,-1114495407,-1139584324,-1118254096);sum2=W(0,-1116593925,1028908115,999050165,1037914955)+W(1,-1106109711,-1105957739,-1123834115,-1113783754)+W(2,1027806287,-1136470458,1039840949,-1122048333)+W(3,1057135276,-1105275062,-1096566133,-1105721601)+W(4,1032648371,1006654490,1052059722,1057985079)+W(5,-1090440242,-1131926605,1018741845,-1124260101)+W(6,1024756439,-1116529299,-1107372324,-1128153177)+W(7,-1142966917,-1123338691,1013415162,1018182189);WS(-1103089976,1059868827); -sum1=W(0,1026631887,1033737723,1034000797,-1130496915)+W(1,-1106694966,-1105866475,-1106727101,-1098705919)+W(2,-1091300264,-1096562704,-1087537316,-1094386976)+W(3,1044429902,1045093007,1040636078,1044615672)+W(4,1056895190,1050565142,1059766350,1053939124)+W(5,-1108577640,-1109922270,-1122075862,-1100982776)+W(6,1031003956,-1140469197,-1108911023,1032926090)+W(7,-1120892680,1034482579,-1136817768,1045052014);sum2=W(0,-1114832682,1038307608,-1109268272,1031259614)+W(1,-1136199018,-1118450441,1025376385,-1125957173)+W(2,1044376552,-1101986459,1025272345,-1112738770)+W(3,1014008179,1042085570,-1110075404,1027010884)+W(4,1052671036,-1094811671,-1106762472,1052706603)+W(5,1040752903,-1100877636,1051973899,1036345951)+W(6,-1084839384,-1076225566,-1074779618,-1088390497)+W(7,1066038403,1071357616,1068318141,1050587817);WS(-1089897038,998399462); -sum1=W(0,-1100326508,-1099771006,-1103969415,1030998252)+W(1,-1111096702,-1129527451,-1115021151,-1124899748)+W(2,-1114312802,-1109889234,-1092992143,-1098209637)+W(3,-1116385180,-1096464604,-1111889198,-1109224641)+W(4,1049930251,1047140918,1060325312,1062808044)+W(5,-1128865717,1048691588,-1137813989,1043572929)+W(6,-1141222070,-1114407115,-1106384368,1017922927)+W(7,1023432554,-1125954964,-1121716413,1020452535);sum2=W(0,-1094975511,-1089233591,-1089977002,1033778332)+W(1,1006981461,-1137053176,-1125132764,979684320)+W(2,-1113696880,1032844980,1066397244,1037917830)+W(3,1039504138,1032622380,1021506052,-1119563165)+W(4,1023473326,1036803698,-1129026618,-1104280508)+W(5,1024702770,-1121975322,974010432,-1138205260)+W(6,1029862812,-1117299445,1025970568,1031377784)+W(7,-1122944997,1022461928,-1130740686,1024270227);WS(-1096120220,-1099720911); -sum1=W(0,1052677544,1027883172,1046184634,1036941212)+W(1,1037786724,1039372749,992842790,1040590154)+W(2,-1105594052,1050583742,1030711656,1050761182)+W(3,1044997418,1051859318,1041579690,1052858474)+W(4,-1101878153,-1120505890,-1094174707,-1087347673)+W(5,-1091299260,-1092171165,-1105854769,-1087724293)+W(6,990296621,1026529890,1039246623,1031039363)+W(7,1038193547,1036921611,-1115076484,1007468831);sum2=W(0,1040381409,-1131846701,1030695069,1015259161)+W(1,1026868853,-1164136976,-1121164685,-1109936403)+W(2,1023777345,-1095435966,-1111411494,-1085163747)+W(3,-1100600319,1052695808,1041440525,1051545155)+W(4,-1110031849,-1146822820,-1089001391,-1074171332)+W(5,-1078760233,1048168469,1074132102,1072577306)+W(6,1022623295,-1096899181,1049343346,-1107180310)+W(7,1043071461,1020495459,1017314953,1050115198);WS(-1080112807,-1111145054); -sum1=W(0,-1103297132,-1106341774,-1098278655,1024154699)+W(1,1037514093,1034961350,-1125780682,-1109009483)+W(2,1049824404,1049617192,1059552348,1031972225)+W(3,-1085661228,-1097823136,-1114326813,-1119831648)+W(4,-1133975251,-1122989109,-1086286580,-1137351813)+W(5,1056970252,992708574,1021582000,1040424089)+W(6,1026400021,1042898005,1041608840,-1145221295)+W(7,-1102084285,1041904442,1038246926,1042525799);sum2=W(0,1041258750,-1109734283,-1123542769,-1113561957)+W(1,-1110564237,1026811493,-1130694514,1024057869)+W(2,989910477,-1100922013,-1096844113,1051742866)+W(3,-1100235579,-1105813951,-1151284621,-1136706867)+W(4,-1134607603,1016064722,1041392492,1057819912)+W(5,1047439582,-1113868277,-1118083589,-1114600003)+W(6,-1109794979,1041809078,-1126381362,982123162)+W(7,-1119465765,1026735929,1019553626,-1114678252);WS(1043409720,-1105036943); -sum1=W(0,1040191749,1033970558,1042494496,1046767380)+W(1,972615552,1032778168,1032217109,1032356247)+W(2,-1096303173,-1095924673,-1093807736,-1092831585)+W(3,-1096756208,-1126846855,-1115229280,-1098580285)+W(4,-1115184605,1041748910,1044442592,1042876074)+W(5,-1140612185,1018241414,1027878365,1034858676)+W(6,1041655059,1041917006,-1160531625,1039311757)+W(7,1020654492,1043700571,1034107952,1036396440);sum2=W(0,1027808259,1010119787,-1111510504,-1113418759)+W(1,1032132185,-1121052855,1014515195,1010692603)+W(2,-1139047739,1043340308,-1106790738,-1096910874)+W(3,1040059331,-1115460243,1017581734,-1120741339)+W(4,986751832,1026247831,1065364148,1040723354)+W(5,1038861011,-1113647147,1041604470,-1135975307)+W(6,-1095774205,-1093511024,-1089533357,1053173071)+W(7,-1106558855,1027584935,-1121443175,1014681515);WS(1035857520,1029952289); -sum1=W(0,-1143077795,-1105351783,-1113811952,-1106526780)+W(1,1035289215,999420801,-1129002434,-1113970285)+W(2,1037051011,1029971495,1049064844,1035603988)+W(3,-1083894414,-1098557596,-1111645039,-1130790920)+W(4,-1110400621,-1106469910,-1094483622,1058276716)+W(5,1056346487,1050633420,1042325343,1026109447)+W(6,-1121149466,1043652126,1027875988,1035104701)+W(7,-1114346217,-1123554317,-1130799743,1025377311);sum2=W(0,-1118517607,-1101077931,1029148161,-1087996420)+W(1,1047526016,-1108756119,1038718292,1024464693)+W(2,1026484093,1046485772,-1098019518,1071267691)+W(3,-1082674625,1032470282,-1106613565,-1113199029)+W(4,1039465846,1030900361,1048118782,1064954318)+W(5,-1084489705,-1118487613,-1112021711,-1120012731)+W(6,1008581907,-1114630284,-1106945018,-1097625455)+W(7,-1156379726,1024110641,1020048570,1036291722);WS(1058189134,1034857672); -sum1=W(0,-1171748679,-1105475825,-1097172873,-1108837708)+W(1,1038034707,-1131134898,-1113151849,-1119273967)+W(2,1031241360,1044072484,1057114388,1051374554)+W(3,-1083662360,-1099379283,-1121036423,1018101850)+W(4,-1100969760,-1094075536,-1082247827,1060030327)+W(5,1058651386,1046921459,1041721673,1036514264)+W(6,987174985,1045893176,1042860595,1031954257)+W(7,-1120638978,-1137288661,1037681908,1029972391);sum2=W(0,1003810984,1036204547,-1101998989,1041029203)+W(1,-1098215637,1044393168,-1110527635,1027560485)+W(2,1020569783,-1114489126,-1121260135,1052640914)+W(3,1059150102,-1098121773,1037147118,-1110248773)+W(4,-1128982694,-1099380876,-1101918458,1059611184)+W(5,1040381797,-1094102036,1028175839,-1113935142)+W(6,1043745048,-1104004872,-1104165612,-1121067579)+W(7,-1100369008,1032515174,-1114899975,1000033398);WS(-1107450480,1040804833); -sum1=W(0,1040192716,1022226221,1002013395,-1117682794)+W(1,1001040843,1000424795,-1120982404,1025306833)+W(2,1040473489,1047969017,1044185574,1060667554)+W(3,1057909434,1049088596,1038016429,1042416864)+W(4,-1095196747,-1098407451,-1087290490,-1089168888)+W(5,-1111951852,-1119291421,1031577591,-1112956481)+W(6,-1124855402,1020416041,-1160070647,1045737613)+W(7,-1101676720,-1103624738,-1104451167,-1115902938);sum2=W(0,1014727333,-1117243126,1029406572,1027900147)+W(1,-1112527674,-1114664521,-1111634336,-1107116047)+W(2,-1124633329,-1107065949,1041729284,-1094200388)+W(3,-1104959017,1040214496,1005029260,1049039902)+W(4,1026257754,-1111801245,-1084100906,1052541581)+W(5,1070744988,-1111707080,-1127513012,-1107038609)+W(6,-1111611661,-1136702760,-1103677442,1050798725)+W(7,-1105828213,-1111536822,-1106506739,-1140667375);WS(-1113867888,1064515135); -sum1=W(0,-1113562537,-1107046062,-1103978495,-1098739202)+W(1,-1122423580,1019693149,-1116789880,1020558520)+W(2,1048061265,1043460993,1060048584,1062873548)+W(3,-1119786749,1023528257,-1106657727,-1137576074)+W(4,1011269086,-1098944190,-1107431310,1045822761)+W(5,1025265092,-1112998912,-1142662356,-1104660585)+W(6,-1105945126,-1148623547,-1111558073,-1114838028)+W(7,-1101841139,-1117915947,-1106868487,-1122252061);sum2=W(0,-1145158406,1012385731,1016118130,1024197601)+W(1,-1112179804,-1119519161,-1127326042,-1113792718)+W(2,1022878354,-1129472106,1044961455,1049544336)+W(3,1030346877,-1131221354,-1095482557,-1093377057)+W(4,-1111624996,1015658802,1040055751,1057430996)+W(5,-1114498280,1020564842,-1112131584,1019749938)+W(6,1010204019,-1123973089,-1157676569,1022031298)+W(7,-1124728962,1023003938,-1121117277,-1141925830);WS(1051333020,-1087054195); -sum1=W(0,-1112042433,1019002067,-1115058903,1046618143)+W(1,-1107874438,-1148774132,1036768028,-1154881470)+W(2,-1104387605,-1096771599,-1102529947,-1093976551)+W(3,-1089735051,-1129150690,-1101876091,-1098135714)+W(4,1052246829,1048899277,1054136106,1044227957)+W(5,1060328029,1046377228,1045160291,1045432325)+W(6,-1113527444,-1098301717,-1095193948,1044013586)+W(7,-1107288943,1038700845,1024370318,1019966234);sum2=W(0,-1114066012,1029900262,-1114806697,-1110038644)+W(1,1036646832,-1110070018,1020625547,987867800)+W(2,1041392892,-1112610934,1041587346,1025557898)+W(3,1055783298,-1102485451,988088600,1039502616)+W(4,1044719218,1046575198,1050162797,1055420600)+W(5,-1099287148,-1100701871,1033323822,-1119304428)+W(6,-1097547793,-1095644935,-1102972970,-1095936036)+W(7,1028020818,-1113902766,-1135974783,1018696751);WS(-1120103648,-1090070191); -sum1=W(0,-1117418940,1024592611,1040968250,1049918615)+W(1,1034410595,1035134604,-1119948353,-1144523437)+W(2,1049030490,1050801054,-1111205267,-1116228463)+W(3,1050512309,-1102511675,1034763283,1039656998)+W(4,-1112262737,-1094705236,1042055990,-1085341341)+W(5,-1106227665,1036298997,-1138448657,-1110564136)+W(6,-1114427969,1032013281,-1110419822,1047944497)+W(7,-1132367051,1025392341,-1111046724,-1120201127);sum2=W(0,-1122606938,-1141997982,1027805544,-1120462650)+W(1,-1100560083,-1105726471,1025575588,-1113668318)+W(2,1046354401,1040228902,-1143835982,1061896257)+W(3,-1080731069,-1098049024,1026943708,1032253740)+W(4,-1124762815,-1102583710,1052785838,1059397472)+W(5,-1120768779,-1126645315,1011421951,-1122685018)+W(6,-1118515993,1036845124,-1106443071,1043676745)+W(7,995709275,-1128858827,-1112152255,-1127110207);WS(1060158670,1068766623); -sum1=W(0,-1116432453,-1131098839,-1099753724,1034945056)+W(1,-1122123599,1040823512,1040184285,1050332416)+W(2,1056712636,1049784895,1057908127,1044163070)+W(3,1028198895,-1122504371,-1123329903,-1096645803)+W(4,-1087151539,-1102593034,-1089291740,-1094800699)+W(5,1036808107,-1120242995,-1127465369,-1132187055)+W(6,1040295867,1033948341,1031077093,1027113355)+W(7,-1132674679,-1117547229,1040274980,-1137741501);sum2=W(0,1036379663,-1108907739,1070189048,1073213180)+W(1,1065321765,-1076673488,-1079893128,-1072585926)+W(2,-1098232449,1058983203,1016986873,1047923452)+W(3,1033582270,1031365639,1038048757,-1107019906)+W(4,-1128107780,1035811659,1040144345,-1105399966)+W(5,-1110681209,1039880527,-1116001167,1018297481)+W(6,-1120677803,-1120240179,1029686139,-1109097268)+W(7,1041308319,-1109042515,1034493417,-1131123922);WS(-1112459888,1031046963); -sum1=W(0,-1112719265,-1129483154,-1103727283,-1091575740)+W(1,-1104335643,-1155155940,-1114094348,-1105426861)+W(2,-1128634346,-1120462421,-1112785958,1056781779)+W(3,-1153409228,-1108013960,-1118230989,1027667442)+W(4,1043326546,-1103778738,1050524372,1067939282)+W(5,1048587330,-1132710977,-1109505653,1036777787)+W(6,-1115081924,-1114915140,-1104237825,-1096588493)+W(7,-1108534894,-1114726045,991235804,-1111746006);sum2=W(0,-1119086167,1013020612,-1141008560,-1108719150)+W(1,1023891147,-1145112744,1018251990,-1116478859)+W(2,1037241732,-1129818230,1029187991,-1074141953)+W(3,1019083994,-1124211508,-1122886966,1027168441)+W(4,-1114652243,1028260797,-1112264831,1072760747)+W(5,1042535682,-1131878972,1037493286,-1129254230)+W(6,-1131518324,-1115730540,1036245214,1034705438)+W(7,-1119172530,-1133917220,-1114007324,1018465006);WS(-1086783566,-1086791567); -sum1=W(0,-1115195632,-1153026662,-1134496297,-1108787789)+W(1,-1119803561,-1145121243,-1131708777,-1110064394)+W(2,-1095708330,-1093442522,-1098161001,1044632085)+W(3,-1091375169,-1107384199,-1100078210,-1104664012)+W(4,-1123676804,1018199561,1037878573,1064261167)+W(5,1057417647,1052226946,1046948682,1047330733)+W(6,1041725033,-1121101892,1034570216,-1103584185)+W(7,-1108866704,-1122033784,-1117964907,1022321300);sum2=W(0,1031515378,-1121810184,1010081392,-1119765868)+W(1,1035546479,-1106495935,1028378344,1003402623)+W(2,-1077397139,-1079753374,1044674665,1073378801)+W(3,1056367001,-1109376902,1035615024,-1118889676)+W(4,-1134939312,-1097085111,1052841311,1007836336)+W(5,1044809025,-1118570548,992033726,1010750288)+W(6,-1112896962,1035985281,-1105060263,1031953140)+W(7,1022446080,1031289566,1032016077,-1150317246);WS(-1096711324,-1080143969); -sum1=W(0,-1135181951,1025399430,1033906501,1041786535)+W(1,-1133559462,1003671004,-1123695637,-1105366874)+W(2,-1095339398,-1094144146,-1093853897,-1089314149)+W(3,-1089126233,-1110956839,-1129083412,-1113909272)+W(4,1050582337,1049483953,1045129706,1046728732)+W(5,1045641984,1051092970,1049638101,1057307443)+W(6,1026786373,-1123204644,1006467326,1031608549)+W(7,-1135165794,1017185520,996324016,1009923752);sum2=W(0,1023911567,1004932796,-1119124867,1022775023)+W(1,1011639102,1036397588,999444348,-1106309084)+W(2,-1108118447,-1134375038,1035251904,1037995724)+W(3,1050162042,1037707684,-1111062570,-1101285996)+W(4,1044892126,-1138359022,1063133445,1074655410)+W(5,1070062472,-1083132698,-1073510095,-1073687480)+W(6,-1112738860,1020475455,-1102926770,1047698054)+W(7,-1113839430,-1117927031,1017195567,1041743674);WS(-1089880270,1068594400); -sum1=W(0,-1114467040,1023170830,1036273894,-1107800974)+W(1,1029867434,-1106779367,1024593089,-1110449433)+W(2,-1104513741,-1091458130,1034367029,-1100997781)+W(3,-1095286649,1047811540,-1096228817,-1109179032)+W(4,1050219169,1042545281,1048674674,1042739212)+W(5,1053624831,1034908007,1034674708,1049808694)+W(6,-1118490053,-1120682309,1031296832,-1110241363)+W(7,1034289100,-1107012174,1021221591,-1126204757);sum2=W(0,1030004067,-1117028113,-1105887481,-1066126465)+W(1,-1104777348,-1122550707,-1130918117,1023720579)+W(2,-1133064657,-1134091777,1045929484,1081917443)+W(3,1043726141,1028310407,1016764395,-1116064873)+W(4,1024174065,-1113615539,1032698350,-1097201480)+W(5,1033613382,-1107697461,1029778305,1018371831)+W(6,-1119836251,1025775761,-1118489229,1041573100)+W(7,-1124268877,1030764051,-1116797441,1018350967);WS(1067475431,-1126058166); -sum1=W(0,-1108052732,1043040440,1048922396,-1097574342)+W(1,-1119673025,-1101774749,1019400344,1007801026)+W(2,-1097851361,-1108210069,-1084429932,1055911149)+W(3,1041902328,1035827603,-1115594513,-1107003538)+W(4,1049362324,1048929252,1054104112,1047147106)+W(5,-1085779789,1049622021,1019477630,1037086373)+W(6,1040199303,-1109622414,1041203782,-1104274751)+W(7,1047880876,-1116198608,-1107876353,1036701569);sum2=W(0,1013753738,-1113150555,1015248850,1042650722)+W(1,1040818978,-1105652199,1033430289,-1120377801)+W(2,1020731454,1046742995,1045156685,-1104352239)+W(3,-1089864705,1045331461,-1109224259,1016214593)+W(4,-1120697178,1034035253,-1094710566,-1128318417)+W(5,1045040370,1025091411,-1106535436,1019751894)+W(6,1009873360,-1099358283,1039470065,1046693145)+W(7,1036008061,1030627793,1017876415,-1132110931);WS(1060496974,-1099362699); -sum1=W(0,1054706808,1036662868,1045895019,1033303646)+W(1,1044095763,-1130190200,1035564779,1040746168)+W(2,-1109706041,1041317773,1051554925,1049334366)+W(3,1051166813,1053590462,1049285205,1055551482)+W(4,-1098091909,-1123237413,-1091928498,-1083798889)+W(5,-1095315343,-1087007295,-1097088265,-1094550458)+W(6,-1129324363,1015757258,1021341985,-1112852963)+W(7,1041804248,-1127492145,1039262630,-1114905285);sum2=W(0,-1073385920,-1084887580,-1083140914,-1081800202)+W(1,-1085954594,1037413129,-1096433065,1054210787)+W(2,1077926840,1058818874,1060159151,1074845707)+W(3,1061906872,-1084431515,-1126824848,-1087315344)+W(4,1032559783,-1089669880,1045764296,1059775011)+W(5,-1103860568,-1094536545,-1133232881,-1099186518)+W(6,-1094451238,-1121878040,-1173171215,-1120435570)+W(7,-1115590029,1053315192,-1107838893,1052978812);WS(-1078369703,1041267413); -sum1=W(0,1024386586,-1098405416,1044040033,-1098286219)+W(1,-1130684104,1045750173,-1098338270,1041584973)+W(2,1041630887,-1112635974,-1132435208,1041292515)+W(3,-1091497929,1016159377,-1139597330,-1101611546)+W(4,-1102607056,1051293608,-1094040968,1052507157)+W(5,1056853585,-1105775474,1049412460,1026100205)+W(6,1016693023,1018393854,1046099151,-1095618428)+W(7,1018959206,-1117949682,-1118540325,1040982949);sum2=W(0,1035615459,1028814353,1062855981,1052250964)+W(1,1056109526,-1106019250,1048995011,-1115640692)+W(2,-1097925659,1038714809,-1077657685,-1101970047)+W(3,-1098468896,-1114182260,-1104046747,-1130122971)+W(4,1043665288,1033337220,1051048913,-1113114333)+W(5,-1085664062,1040975429,-1109605260,1034778788)+W(6,1020457849,-1103657321,-1109823715,1058024935)+W(7,1056999181,-1105846491,1042595027,-1112374505);WS(1049151900,-1114127847); -sum1=W(0,1050216581,1000015204,-1136218178,1023136961)+W(1,-1130455775,-1133465094,-1160090192,1035991733)+W(2,1044969414,1047621718,1057314961,1055877843)+W(3,1054358666,1052966059,1045850836,1052491071)+W(4,-1106856243,-1112471205,-1091938023,-1092033343)+W(5,-1099719178,-1089783713,-1099053307,-1087984664)+W(6,-1099359923,-1148711507,-1133921207,-1112054390)+W(7,1034273823,-1122838974,1019980258,-1112322824);sum2=W(0,-1105478410,1039552519,-1131405058,-1099466970)+W(1,1049027924,-1115050596,-1129231446,1049583286)+W(2,1011113448,1050864081,-1125310098,1043215106)+W(3,1034334973,-1095883745,1036178144,-1088635155)+W(4,1068049752,-1103020148,1066695202,1074596924)+W(5,1067601936,-1084539788,-1075514015,-1074115054)+W(6,-1082501551,1059003564,-1098156272,1039344435)+W(7,-1099880092,-1107282542,-1097076855,1042018058);WS(-1081332839,-1093454830); -sum1=W(0,-1109709318,-1104916884,-1108177419,-1117212646)+W(1,-1119705461,1032417267,-1118748528,987327371)+W(2,1035356975,1037116623,-1125155242,1030327966)+W(3,1050241163,-1103907222,1046095669,1033262333)+W(4,1039420520,-1122158672,1053028347,-1104761999)+W(5,1032136206,-1115200780,-1115609017,1029855614)+W(6,-1111308088,1014687039,-1112931654,1020526050)+W(7,-1119448076,-1112611266,-1136487898,-1104533373);sum2=W(0,1013207527,-1127355075,-1103159789,1040955478)+W(1,1008876024,-1116686760,1035764738,-1154118338)+W(2,-1118344664,1028266047,1043690369,1051132935)+W(3,-1108842627,1041402295,-1105537330,-1128237045)+W(4,-1124997045,-1117884424,-1116887196,1047094008)+W(5,1057384051,-1100609336,-1098518151,-1089828796)+W(6,1036829905,1016171285,1024917624,1041601336)+W(7,-1127506713,1033786361,-1114313206,-1102385561);WS(1063446990,1030048893); -sum1=W(0,-1131562670,-1099483503,-1106193120,-1102405700)+W(1,1021119810,-1113568905,1009340592,1030255032)+W(2,1043069042,1049571969,1061428532,1053095529)+W(3,-1115069793,-1119868742,1027160065,1043118346)+W(4,-1108681470,-1106599551,-1097709592,1046689338)+W(5,1029025472,1006738196,-1120287391,-1111789333)+W(6,-1108650254,-1106453175,1008661917,-1102088711)+W(7,-1123233168,-1104754348,-1136963210,-1114502129);sum2=W(0,1012371361,-1149491589,1023756477,-1165255819)+W(1,-1111467932,1019335917,-1140694601,1010513313)+W(2,1017109065,-1115161102,1012418345,-1111308586)+W(3,1015942947,-1106016138,1015823021,1026481588)+W(4,-1110016822,-1109821790,1060485172,1031379047)+W(5,1046805034,-1114576028,1024897044,-1114618076)+W(6,-1103671135,-1097972516,-1094449842,1049769129)+W(7,999148403,1022790203,1032463998,-1146831635);WS(1060385486,1040268319); -sum1=W(0,-1115333181,-1113839600,1026945989,1041834949)+W(1,-1100015113,1010458454,-1113704543,-1110169699)+W(2,-1105770459,-1104706211,-1085502934,-1112644646)+W(3,-1102865873,-1112283012,-1108020290,-1115522389)+W(4,1048230464,-1122113023,1051932092,1065603891)+W(5,-1105250533,1054415097,-1122402466,1046973419)+W(6,1022495614,-1115044751,997701279,1044329112)+W(7,1038196649,-1113673817,-1105082025,-1115640050);sum2=W(0,-1115664423,-1122287706,1044568139,-1099350461)+W(1,-1102715015,1042022920,1031291077,1032474264)+W(2,1041813775,1041645390,-1087138046,1067461852)+W(3,-1116572542,-1109622665,-1113357449,-1110133469)+W(4,-1142717933,-1094011677,-1124627987,1027339570)+W(5,1045144111,1054026149,-1122353792,1047364150)+W(6,-1120925434,-1119842210,-1120985148,-1113918825)+W(7,-1100833175,-1101147879,-1112018489,-1109170005);WS(1049043868,1050086952); -sum1=W(0,-1127858130,1025810768,1034666762,989092984)+W(1,-1115481017,-1119959429,1012364567,-1097661520)+W(2,-1091279607,-1101354119,-1089232423,-1092016019)+W(3,-1089729669,-1104525366,-1121438163,-1160888088)+W(4,1054362490,1044465651,1050465752,1058690160)+W(5,1053482909,1051092259,1019953121,1051219071)+W(6,1028884238,1022883995,1032068165,1005443958)+W(7,1007092039,-1149438996,-1137072337,1017307814);sum2=W(0,1030282550,1012065197,1049708534,-1101566471)+W(1,1043525707,1038111746,1040589253,-1106531005)+W(2,-1099759289,1050936278,1018991152,1050588571)+W(3,-1112383125,-1121285468,1039884984,-1113841779)+W(4,1070065566,1068820850,1068572253,1075164582)+W(5,1046261639,1053555382,1040055978,1058828770)+W(6,-1078832473,-1076346523,-1075628240,-1072955990)+W(7,-1093459475,-1088795804,-1099780818,-1090423367);WS(-1083655502,1074535575); -sum1=W(0,973651072,1028862937,1029517469,-1111330742)+W(1,1043404639,-1105397947,-1129726574,-1099887737)+W(2,-1100106921,-1096173461,-1088250868,-1101351113)+W(3,-1092528244,1034877328,-1113904430,-1118418050)+W(4,1049212555,1052529147,1057957824,1060855844)+W(5,1050267538,-1104065896,1041335934,1047916353)+W(6,-1122472503,996549482,-1111380529,-1125410415)+W(7,-1109626381,-1122247818,-1108333759,1037233742);sum2=W(0,1037582341,1032149251,-1135487115,-1107247151)+W(1,1053968825,-1096732175,1034930229,-1094249638)+W(2,-1116649305,-1112916551,1044443302,-1117703407)+W(3,1049963138,1042101117,1046616621,-1127010106)+W(4,-1107051108,1041643977,1030763641,1053360182)+W(5,-1087331905,-1089009482,-1110671517,1059951262)+W(6,1040538112,-1112067691,1036263743,-1115814520)+W(7,1035849297,-1104153316,-1104877620,-1116847106);WS(-1132786560,1056578758); -sum1=W(0,1031072232,1019453021,-1112153353,-1127115205)+W(1,-1153314582,-1105591705,986346381,1024604121)+W(2,1043718831,1050053971,1057505465,1049535379)+W(3,1052394474,1045418390,1044283028,1048806335)+W(4,-1098888378,-1104586611,-1090760605,-1081773448)+W(5,-1106021324,-1120283669,1036365944,-1103287167)+W(6,-1123786893,1030360908,-1123598824,1035671447)+W(7,1044649456,-1105554848,1033186457,-1108912601);sum2=W(0,1040658557,-1106354313,1027144364,-1103628435)+W(1,-1123462592,-1130705048,-1126068784,1016031184)+W(2,1011638864,1020064744,1049840877,1050147177)+W(3,-1117174472,-1105120318,-1113970774,-1135769248)+W(4,1041865287,-1103147627,1026998340,1053587315)+W(5,-1118058864,1036775410,-1104140895,1030416564)+W(6,-1109113498,1033931950,-1120927100,-1102211113)+W(7,1033328738,-1101351534,1028877580,-1112076066);WS(1062711758,-1109562142); -sum1=W(0,-1107075140,-1125545776,-1121788380,-1112684886)+W(1,-1128625782,-1102890883,-1129119788,-1102110160)+W(2,-1100622401,-1104747337,-1103229831,-1083301774)+W(3,1050510715,-1097610180,-1109077454,1030737729)+W(4,1053288051,1049612355,1059638178,1048337697)+W(5,1052952654,1051307580,1041285742,1049115768)+W(6,1017596397,1007433175,-1120034657,-1098025711)+W(7,-1112854653,-1108240645,1022176121,1020667959);sum2=W(0,1022257834,1033804876,1033963400,-1113268759)+W(1,-1123922685,1029999681,1015463858,-1125618402)+W(2,977550902,-1105772859,-1098748483,1063293804)+W(3,-1090033704,1051039483,-1104977553,1022914778)+W(4,-1113927342,1042844173,-1096777339,1059312088)+W(5,-1134320563,1037687330,1024487701,1004875175)+W(6,1036504102,-1107093105,1028160469,-1089861840)+W(7,-1101525036,1017532722,-1122996995,-1116068477);WS(1046002488,-1083997249); -sum1=W(0,-1116203964,1044431961,1041235242,1046371486)+W(1,-1106267745,-1117705943,-1122870401,-1109240562)+W(2,-1099156844,1028498222,-1096363997,-1079124621)+W(3,-1088685662,-1103556299,999993136,-1106798659)+W(4,1050076828,1049400252,1050263757,1020370202)+W(5,1048790666,1053355933,1034829570,1037276039)+W(6,1025075217,1035032656,1032516798,1050189128)+W(7,1042510329,1039724554,1027729159,1037249299);sum2=W(0,-1094982381,1024745423,-1097113645,1017043870)+W(1,1052555320,-1107563793,1049262968,-1118735987)+W(2,1041875660,-1091311273,1042706326,-1148119319)+W(3,-1098101314,1010824956,-1094774489,1030619863)+W(4,1017839086,1044409386,974632891,1061393923)+W(5,1043955676,-1098402228,1042935118,-1094515595)+W(6,1045890174,-1107764806,1048260200,-1118443235)+W(7,-1097368628,1041238578,-1116185663,1042214090);WS(-1083255246,-1075588436); -sum1=W(0,-1154522904,-1106371438,-1105464695,1036086422)+W(1,1023783355,-1127243930,1030176790,1031412139)+W(2,1026375684,1036249778,1056687627,-1097055709)+W(3,-1088556578,-1108055408,-1105944807,-1123388097)+W(4,-1099839750,-1113752075,-1092436626,1050924256)+W(5,1056650964,1045926824,1039385437,1041066449)+W(6,1037990411,-1119606102,1043935324,1036476796)+W(7,-1111337285,-1110940389,-1124332025,1021333175);sum2=W(0,-1117330831,1023708058,-1133288218,-1122435213)+W(1,-1139180683,1020252429,1025188082,-1109968059)+W(2,1032531181,-1114369361,1017487862,1047518334)+W(3,-1122916014,1027012545,-1103557501,1046855474)+W(4,1043756688,1031926890,-1104593512,1043258354)+W(5,-1096895795,1049767697,1019544307,-1112657711)+W(6,1060766869,1067300065,-1105945514,-1075696003)+W(7,-1102393264,-1106946489,1020047431,-1113285900);WS(1056055196,1023945849); -sum1=W(0,-1104545849,-1139517988,-1101013315,-1136100212)+W(1,-1148373856,1013350648,-1120654743,-1108930702)+W(2,1036175954,-1138851412,1048468083,-1097789539)+W(3,-1096999890,-1097071058,995622088,-1128233700)+W(4,1032040419,1009002268,1040659763,1059870683)+W(5,1039368714,1053644410,-1122818538,1033002810)+W(6,-1111539988,1026875367,-1104005681,-1112873620)+W(7,-1135793772,-1132670698,1028030253,-1133516850);sum2=W(0,1033182461,-1135790885,1036058972,-1145806187)+W(1,1026470367,-1125994579,-1123856921,-1152817846)+W(2,-1110992702,1041801313,-1115959119,-1083556559)+W(3,1047402951,1026458945,1021989349,1029289545)+W(4,1011638125,976542168,-1106760241,-1068720208)+W(5,1080067579,1043021822,-1118809257,1027196491)+W(6,-1116812221,-1135785781,1013579453,1034110873)+W(7,1048786168,-1124564059,-1115658442,-1110636256);WS(1047050040,1036867972); -sum1=W(0,1031952202,1040033213,1049413776,1052329098)+W(1,-1134253939,1023712847,-1129317744,1023414180)+W(2,1041031945,1050476745,1016870010,1054273441)+W(3,1041748879,1035493153,1041656495,1041394937)+W(4,-1098508279,-1097704487,-1091275871,-1087382286)+W(5,-1095309386,-1117526273,-1112254893,-1108492595)+W(6,-1117663192,1033331580,1012948685,1043041286)+W(7,-1131302504,-1125396951,-1153578470,-1112644847);sum2=W(0,-1120609508,-1098653081,-1074671298,-1081276780)+W(1,-1097107702,-1110118090,-1137118351,-1119823807)+W(2,-1138324119,1042859622,1072071026,1068070176)+W(3,1044485226,1040658983,-1118978815,1035453187)+W(4,-1110367912,1038385587,1026263792,-1107049493)+W(5,1024907208,-1122488627,1038809437,-1111098449)+W(6,1021280635,1026624912,1026288466,-1122098825)+W(7,1040255596,-1152233050,-1126727249,1006813455);WS(1047287096,1059538103); -sum1=W(0,1030804480,-1111595219,-1123153834,-1098057279)+W(1,1007980582,1018775223,1036089754,1030691489)+W(2,1034749929,1051408038,1049213285,1057344539)+W(3,1048793645,-1106759404,-1115115061,1033654600)+W(4,-1102474905,-1094490621,-1099609086,1048597242)+W(5,-1094890059,1046324795,1003815995,-1126686757)+W(6,1013951379,1039425378,-1112788128,-1098419769)+W(7,-1118093753,-1108341356,-1120388747,-1135294247);sum2=W(0,-1112864979,1034721747,-1108077379,1023366533)+W(1,1021246669,1032508120,-1113986367,-1153257254)+W(2,1024004698,-1109416755,988806988,1058238498)+W(3,-1115279539,1041332549,1033457886,1018109285)+W(4,1034996841,1041661735,1041642045,1008174217)+W(5,-1122858630,-1089151778,-1130797677,-1111548255)+W(6,1004307827,-1116757818,1037366938,-1107547239)+W(7,-1108868659,-1128614293,-1130732717,-1122125438);WS(1066216871,-1084582294); -sum1=W(0,1009745022,1023325836,1034246149,-1103455511)+W(1,1025953385,-1105242559,988118663,-1107601837)+W(2,-1095963722,-1096473834,-1087129751,-1142570129)+W(3,-1094684497,-1107829831,-1107520037,-1117719279)+W(4,1050775177,1046303345,1057767679,1064400323)+W(5,1038452388,992534739,1025316967,1044853309)+W(6,1027534757,-1126933960,-1118146623,-1103828265)+W(7,1018950609,1030437560,1020674901,1033139589);sum2=W(0,-1127013105,1018526115,-1123587641,1052346460)+W(1,-1098654594,1029804743,-1118240305,1030491706)+W(2,1031626404,-1117975133,1062148372,1074624908)+W(3,-1090512380,-1070854231,-1095518794,1041467716)+W(4,1029958550,-1113082476,1035325186,-1130733653)+W(5,1046581721,-1113725416,1031776819,-1115594754)+W(6,1017794797,1023300847,-1145491637,1041942663)+W(7,-1113152926,-1139181075,-1120299385,-1142763637);WS(1033725552,-1082653885); -sum1=W(0,1027658456,1033791775,1038169633,-1130834725)+W(1,-1105755912,-1107114253,-1106878767,-1102176852)+W(2,-1091894661,-1094613753,-1085886368,-1094605577)+W(3,1049096200,1038006563,1040399888,1038046228)+W(4,1054730080,1052727904,1060322284,1054915405)+W(5,-1115316932,-1113871235,-1114082704,-1098681477)+W(6,1024810077,1020875129,-1114253244,1021660859)+W(7,1010914050,1032412472,1016596422,1044096992);sum2=W(0,-1126607908,-1111819446,1032709615,-1119610542)+W(1,1027594385,1029384695,-1115269200,1032209203)+W(2,-1109006144,1050929158,1025316173,-1107176811)+W(3,-1123863107,-1122531221,1026796828,-1115616555)+W(4,-1093467963,1063076656,1048889614,-1090320472)+W(5,1046933317,1051206364,997945380,-1109796884)+W(6,1059727060,1073053378,1073749745,1058093447)+W(7,-1079533534,-1073154062,-1075936158,-1088004581);WS(-1087442510,1045166814); -sum1=W(0,-1106921670,1032907600,-1111070674,1047421629)+W(1,-1094092352,1031075349,-1136240762,-1129052086)+W(2,1032009478,-1127325529,-1106321881,-1085655355)+W(3,1057239638,-1098381173,-1128650952,-1107389381)+W(4,1041337656,-1100890040,1060092296,1044767811)+W(5,1040377247,1037296628,-1131454723,1037463686)+W(6,-1110338367,1042108264,-1105899594,1027442111)+W(7,-1105935775,1037469097,1027139781,991481919);sum2=W(0,-1119426781,-1109786529,1041819143,1018220925)+W(1,-1103055916,-1124599508,986571056,1024618671)+W(2,1040351141,1043540747,-1105926532,-1133247980)+W(3,-1096724541,1038612076,1019567362,-1143357456)+W(4,-1104019881,-1106797782,-1098594115,1066013053)+W(5,-1136157126,-1097021086,1025702119,1008181894)+W(6,1015410156,1043466418,1048709183,-1092013542)+W(7,-1109288787,1027934232,-1140871148,1027080058);WS(1059279054,1041683061); -sum1=W(0,1028823114,1033060856,-1136683218,1041097809)+W(1,-1108712682,-1099515041,-1114499693,-1105525449)+W(2,-1096417644,-1095251776,-1096755466,-1095420880)+W(3,-1087904547,-1117180600,-1113115866,-1121084634)+W(4,1041071884,1051348966,-1106154521,1062896338)+W(5,1057053635,1050313119,1041134484,1043053335)+W(6,1040139175,-1133443258,1027763154,1037083176)+W(7,-1109247178,-1169250436,1007514196,1031868218);sum2=W(0,-1104031080,-1113246189,-1124792744,-1107688308)+W(1,-1084040655,-1089958554,-1098618924,-1098033920)+W(2,1039900182,1044206765,1043086617,1057123143)+W(3,1066602722,1037219700,-1111210157,1036938090)+W(4,1028023758,-1122555834,1041018096,-1100462314)+W(5,-1123151815,1032289221,1028867168,-1143651414)+W(6,-1125301559,1027754708,-1129842792,1022410763)+W(7,1034604384,1029558442,-1139711519,-1122704124);WS(-1093886876,-1092780259); -sum1=W(0,1031521076,1040859655,-1123954783,-1115369432)+W(1,1027325374,-1130075936,1017430099,1005655277)+W(2,1034696971,1027092583,1057011018,1055452141)+W(3,1055461116,1043845385,1041326696,1045628689)+W(4,-1098366291,-1107551117,-1084481759,-1086775792)+W(5,1050583573,-1098824964,1032795870,-1110858724)+W(6,991412379,1023411481,1037665034,1037775165)+W(7,-1102735091,-1106471523,-1113156096,-1108701199);sum2=W(0,-1099549152,-1101982776,1039636960,1065032135)+W(1,1046191187,-1112740199,-1120755726,-1138571865)+W(2,-1115620025,-1110046443,1067650764,-1096892917)+W(3,-1084058149,-1089814493,1022618460,-1106519005)+W(4,1042476476,-1138118945,1056117723,-1084935200)+W(5,1043334912,-1116550886,1030169574,-1123579094)+W(6,-1128057356,-1104607948,-1129519972,1039009532)+W(7,1042222420,-1114781123,1023299940,1029490149);WS(-1103384376,1050555318); -sum1=W(0,990997212,-1104723373,-1102560870,-1110645588)+W(1,-1114771100,1006886950,1011892746,1041403778)+W(2,1056616014,1049493908,1060440249,1063537686)+W(3,1049398171,-1123261404,1042753094,1041297647)+W(4,-1113359817,-1101985253,-1095607555,-1091747296)+W(5,-1098384586,-1094355067,-1098733239,-1099641616)+W(6,-1104278389,-1112669305,-1117918862,-1124628967)+W(7,-1120789735,1020875660,1029891897,-1143354303);sum2=W(0,-1097904627,-1102268820,-1101696600,-1102083058)+W(1,-1100977750,1022682138,-1105396681,1035758392)+W(2,1056762738,998260703,1049156882,1055125136)+W(3,1040009482,-1099421122,-1114104451,-1112582051)+W(4,1033294591,-1102966386,1040206209,1048772561)+W(5,1004029807,1040485303,-1118051402,1040482786)+W(6,-1113205081,-1105114179,1028552759,1023069474)+W(7,-1108173489,1040370279,-1109779069,-1135668672);WS(1042369848,-1095650924); -sum1=W(0,1032801852,-1124780413,-1142443027,1031124370)+W(1,1024489633,1037041722,-1157391942,1048283534)+W(2,1060985291,1056066249,1059062488,1046815795)+W(3,1051554984,1026983110,1037131073,1028118439)+W(4,-1088222536,-1093287088,-1089766974,-1084610255)+W(5,-1096293908,1035048291,-1113190096,-1107690581)+W(6,-1154392525,1017158008,1041310978,-1111535759)+W(7,-1118760812,-1118618480,1032589425,-1101944856);sum2=W(0,1056251107,-1118435725,-1111043713,-1090037466)+W(1,-1129656805,-1093926860,1052716525,-1083761792)+W(2,-1084477192,1041984407,-1093515412,1073185178)+W(3,1051712939,1053076395,-1096065312,1066458198)+W(4,-1077785336,-1086371528,-1093010832,1074151927)+W(5,1054463958,-1094829660,-1090812268,1063500158)+W(6,1053829707,-1113013425,1046411943,-1090694669)+W(7,-1095714333,-1103046632,1035367276,-1087950464);WS(-1081634407,-1072784825); -sum1=W(0,-1102740818,-1115394775,-1101924733,-1100839185)+W(1,-1123768914,-1140848016,-1118249725,-1116477425)+W(2,1024862651,1046040367,-1109613465,-1115978107)+W(3,1049722038,-1098661743,-1138059466,1025943000)+W(4,1056867014,1027952685,1058509811,1050187219)+W(5,-1098437541,1033615035,-1143195264,-1132571500)+W(6,1016622683,-1112643478,-1096240139,-1101581667)+W(7,1008822020,1023463264,-1116668435,1036595961);sum2=W(0,-1139809909,-1126178115,1032546581,-1097752958)+W(1,1042272246,-1118367610,-1138081685,1017774855)+W(2,1046126277,-1111752353,1034216546,1042101074)+W(3,1043290796,-1112722386,1034532478,1030093406)+W(4,-1119940899,1055245806,-1088954301,1058677046)+W(5,-1087007443,1048637958,-1140548675,1029648824)+W(6,1040903120,-1104413152,1019748625,-1089277711)+W(7,1028591970,-1139620757,1017306737,1033828758);WS(1050645916,1033550915); -sum1=W(0,-1118556120,-1108262319,1043230361,-1094947334)+W(1,-1103841584,1018079143,1032598742,1008731683)+W(2,-1107219907,1043545243,-1086762442,-1104041435)+W(3,1058293794,-1097977901,1041130248,-1123331655)+W(4,1039060494,-1145250020,1059123936,1057758321)+W(5,-1096913490,1039599795,-1151122424,-1123961290)+W(6,1030703933,-1110184190,-1110311564,-1100512367)+W(7,1044416908,-1132472896,-1147952664,1022228292);sum2=W(0,1040267615,1048409433,-1107165984,-1086251247)+W(1,-1113957324,-1107976602,-1122078587,-1111525785)+W(2,-1112791644,-1110540665,-1088877638,1053330884)+W(3,1057377190,1057673067,1024512949,1042772014)+W(4,1010515766,1032365064,-1090038325,1049266570)+W(5,1028890653,-1103454662,1041725883,-1143554104)+W(6,1024308395,1041630361,1040244783,1037513285)+W(7,-1098504745,1039941233,-1103661415,1024552651);WS(1051978908,-1102077462); -sum1=W(0,-1132165009,-1117187439,-1108837850,1037183202)+W(1,1028473682,1045655273,1025240990,1033734537)+W(2,1045761591,1051430047,1060286099,1046972447)+W(3,-1128782822,1028047735,-1178179968,1035331372)+W(4,1013540534,-1096198150,-1130717861,-1085387922)+W(5,-1105434962,-1101497054,-1110960744,-1102517015)+W(6,-1106078467,1014010165,-1121999817,1030141582)+W(7,1008925446,1018887490,-1122721428,1026996307);sum2=W(0,1023072493,-1125531833,1030396885,-1118880502)+W(1,1027419877,-1161271853,1019485964,1028708277)+W(2,974611657,1047662948,1035351326,-1090109833)+W(3,-1110942359,1033315833,1010290822,-1156901930)+W(4,-1101792417,1051899312,1080526024,-1069022098)+W(5,-1087739606,1036440530,-1124554651,-1114394737)+W(6,-1112121991,1037288067,1042102238,-1113214479)+W(7,1032127295,-1143368203,-1132377096,-1141169667);WS(1058455886,-1096183470); -sum1=W(0,-1105360672,-1112035684,-1105059667,-1103063975)+W(1,-1112638549,-1104182327,-1106250503,-1103319623)+W(2,-1112611850,1032735242,1048808633,1042817013)+W(3,1058906409,1047248804,1047193699,1057710235)+W(4,1060616064,1033545283,1051085625,-1097442806)+W(5,-1102188695,-1103229812,-1106970890,-1109193562)+W(6,-1104075433,-1111940643,-1115570744,-1097216429)+W(7,-1107200030,-1108265532,-1119499692,-1106901731);sum2=W(0,-1135393651,-1131009665,1004138181,-1111055824)+W(1,-1134829555,-1127256265,-1113946573,1010148467)+W(2,-1114274101,1016197705,-1143366053,1051632163)+W(3,-1111579981,1038147066,1025185617,-1137859715)+W(4,-1117767149,-1130986601,1026922589,1048764370)+W(5,1036257166,-1112945554,-1143942149,-1123068365)+W(6,-1110403581,-1136444051,-1112183743,-1121253595)+W(7,1009689523,989872074,-1123668797,-1123716033);WS(-1103618872,1023577831); -sum1=W(0,1041702149,1032268701,1021026046,1032012647)+W(1,1023662430,-1111766616,-1112590149,1042231991)+W(2,1057806109,997904496,1057675340,-1129702414)+W(3,1056283152,1039716321,1049875952,1054291708)+W(4,-1091063799,-1106010126,-1090884608,-1094077941)+W(5,-1094732237,-1100869456,-1105996279,-1098425069)+W(6,1022049043,-1102660926,1046995709,-1100395542)+W(7,1050214494,-1096243374,1047647816,-1100607928);sum2=W(0,1073849383,1069429154,1070121938,1066905653)+W(1,-1087755842,-1080359597,-1073496568,-1070245916)+W(2,-1072987051,-1080077361,-1076996297,-1086754234)+W(3,1060194671,1067521081,1074652354,1075883836)+W(4,1040644897,-1098556311,-1124122091,-1095882058)+W(5,-1096747545,1048551041,-1092793409,1058695504)+W(6,1022236877,-1128073567,-1118780260,1027638421)+W(7,1012182550,-1129108935,-1130588931,1001812541);WS(1010873216,-1100304815); -sum1=W(0,-1154187044,1028741017,-1114247598,-1099084427)+W(1,-1104966895,994968800,-1113228468,1028263947)+W(2,1045945805,1051026373,1058185854,1059904750)+W(3,1052860588,1038231664,1040557287,1032103905)+W(4,-1102222630,-1103217414,-1097780567,-1091550752)+W(5,-1108718914,-1110664976,1017403508,1017865354)+W(6,-1113759340,1022415534,-1105383733,-1111624796)+W(7,-1114326870,-1110217221,-1108875519,-1109350878);sum2=W(0,-1114639192,1039210963,1047528380,-1099502544)+W(1,1041344628,-1108972702,1021595805,-1116883371)+W(2,-1100331344,1069298433,1080352854,-1067747068)+W(3,-1080996124,1032407437,-1121090437,1016604711)+W(4,1035901690,1043940791,1030733380,-1084572959)+W(5,1003800555,1045939813,-1121287047,-1122259179)+W(6,1012858414,-1126620651,1036529177,-1099630936)+W(7,1043527822,-1119860547,-1145664907,1034105585);WS(1044302648,-1104457270); -sum1=W(0,-1115179413,-1101763748,999269803,-1106420033)+W(1,1041707045,-1128885581,-1110751840,1029110244)+W(2,1029190781,1045938783,1034810490,1055724168)+W(3,1053359959,-1100033022,1037908026,1035419021)+W(4,-1108944696,-1102720380,1038235218,-1101615303)+W(5,-1094303566,1043259278,1011056201,-1123807773)+W(6,-1115207128,1013266237,1025157307,-1105407492)+W(7,1045691477,-1113033137,-1114066571,-1113282394);sum2=W(0,-1117238549,-1115295266,1033754662,-1095438097)+W(1,-1106855439,1011060498,-1117460606,1032653312)+W(2,-1109414288,-1128441429,-1104877135,1053172955)+W(3,1056926069,-1108715476,1036225840,-1114450934)+W(4,-1115125848,-1121954754,1018153798,1038786210)+W(5,-1104082080,1043675119,1008366234,1018894269)+W(6,1023475415,1024122972,1002646200,-1106263750)+W(7,1034246226,1025499367,-1107090094,1013321052);WS(1068015911,1043072951); -sum1=W(0,-1127841379,1035792844,-1155603908,1018341976)+W(1,-1111053022,1044403491,-1112313859,1005208661)+W(2,-1101991257,-1091973141,-1110119406,-1095315357)+W(3,-1107228151,-1111437840,-1097295811,-1103670736)+W(4,1041159238,1040826438,1052691071,1053842800)+W(5,1042506601,1050221764,1030249017,1046985745)+W(6,1035382295,-1098419575,1043898844,1030324599)+W(7,-1108241413,1043481954,-1098652336,1032196534);sum2=W(0,-1134315530,1033824390,-1112867968,1039862799)+W(1,1005143468,-1114969920,1030354102,-1131720457)+W(2,-1125722365,1019923991,1039464885,-1087456726)+W(3,-1119378177,1042059959,-1113780490,1009971850)+W(4,-1135384490,998580556,-1093291922,-1061395777)+W(5,-1106942114,-1121281813,1034179020,1032010553)+W(6,-1118933131,1027495017,1045077367,1087627027)+W(7,1034637079,-1148550692,-1118611519,-1117397469);WS(1060186318,-1131602669); -sum1=W(0,1022422466,-1102049002,1050775273,-1097141731)+W(1,1056872997,-1099566807,1025667942,1032894309)+W(2,1050205114,1052887138,1052456073,1049038746)+W(3,1040490435,1039690728,1043457059,1045856748)+W(4,-1099402401,-1102238785,-1100510367,-1088759247)+W(5,-1122526498,-1099089908,-1102859210,-1106963501)+W(6,-1112848707,-1106285089,1039607513,-1098786589)+W(7,1048305743,-1104192622,1032266998,-1118572779);sum2=W(0,989650422,-1108234271,-1120122674,1045260201)+W(1,-1114112879,1037831837,-1117501250,1024132690)+W(2,-1120410947,1050158699,-1092804082,1024838498)+W(3,-1125280065,-1119936776,-1114421818,1035095434)+W(4,1047633630,1066272871,1075424781,1061734347)+W(5,-1091697647,1003481288,1011848513,-1106020023)+W(6,-1081060940,-1074101109,-1079387458,1050344942)+W(7,1043540897,1039609275,-1131708367,1026462111);WS(1057810382,986287880); -sum1=W(0,-1105255365,1027767677,1037147968,1038550632)+W(1,-1136315263,1035749561,-1115075413,1028257967)+W(2,-1110142276,-1106138450,-1092238936,-1090210593)+W(3,-1089134184,-1093055129,-1097497096,-1089420006)+W(4,1041191503,1031406779,1027980992,1049547413)+W(5,1052451129,1057536820,1050343212,1058108487)+W(6,1050176972,-1130243957,1041310918,1041377527)+W(7,-1115128119,1033537239,-1127231554,1031965752);sum2=W(0,-1099824579,-1113793286,1053512844,-1112943238)+W(1,1041834894,-1099992002,-1120789532,1024916046)+W(2,1070708271,-1104040400,-1091831853,-1072548459)+W(3,-1093778092,1057576575,1064181862,1051972140)+W(4,1075074245,-1084124078,-1082668198,-1072503695)+W(5,1056090411,1053907302,1058602971,1054786345)+W(6,-1097074436,1023561426,1039380165,1009216489)+W(7,1043969626,-1107563771,1034348623,-1106961801);WS(-1075707047,1038147646); -sum1=W(0,1038492938,-1115961531,1036899040,1041066756)+W(1,1038870159,1045702796,1022987667,1044017707)+W(2,1050722763,1026800423,1055626176,1052178217)+W(3,1027667391,1053246416,-1100305296,1049962981)+W(4,-1095596015,-1103730686,-1091210886,-1090286882)+W(5,-1094135001,-1095582752,-1109653838,-1093296229)+W(6,1040870942,-1122935577,1047700685,1036539085)+W(7,-1102625947,1048523811,-1105859960,-1117734303);sum2=W(0,-1145353723,-1113260796,-1112198364,-1113367096)+W(1,1007958125,1047146251,-1122974002,1021064313)+W(2,1027969677,-1095928859,1052169305,1052353113)+W(3,-1129450520,1051473061,-1091037095,1050393555)+W(4,-1115030411,1031463199,-1108227013,1051016428)+W(5,1041462653,1045242344,1032341221,1020102815)+W(6,1052090154,-1110261785,1041877601,-1099630700)+W(7,-1087173862,-1102681887,-1095485390,-1111896409);WS(-1102302520,1068562064); -sum1=W(0,-1130894152,1029216267,1029150351,1029804895)+W(1,-1108054071,1046304488,-1107326720,1018120580)+W(2,-1101486038,-1094978851,-1104755260,-1093484995)+W(3,-1110271975,-1106599349,-1102131284,-1102274525)+W(4,1044130034,1029251017,1053252560,1050941559)+W(5,1036880709,1050863202,-1128083416,1047248574)+W(6,1031789673,-1102217970,1042516209,1040658618)+W(7,-1113036417,1041743615,-1102226940,1032422999);sum2=W(0,1019111797,-1123809812,1006739898,1041109085)+W(1,-1126211453,1028972357,-1118372569,1025713585)+W(2,1022527979,-1111065998,1031759809,-1095097056)+W(3,1034613952,-1107360163,1033659253,-1118642675)+W(4,-1131519898,1023737355,1045357020,1082939698)+W(5,1027342607,1033832936,-1112248823,-1118824157)+W(6,1029130971,-1117143513,-1106220344,-1064938697)+W(7,-1122955245,-1112280546,1032152906,1028082979);WS(1066566439,-1125753148); -sum1=W(0,1020091828,1041951168,-1130301450,1052053147)+W(1,-1131231944,1033588155,1009411772,-1116682291)+W(2,-1096367972,-1098758994,-1093467737,-1089881409)+W(3,-1092544881,-1098181717,-1110070786,-1096392077)+W(4,1038767583,1048997640,-1130818632,1064063659)+W(5,-1116991019,1042770882,1046860728,1027361773)+W(6,1030663671,1025331919,-1108818909,1044746920)+W(7,1022962726,1041997189,1018371147,1038578846);sum2=W(0,-1105507764,-1149004498,-1098298748,-1115729482)+W(1,-1094576030,-1111478010,-1129010369,1018600957)+W(2,1019815533,1047279899,-1106660204,1058550934)+W(3,1031191852,1032716298,-1117054989,1019851909)+W(4,-1136431769,-1121679526,-1096656341,1058580319)+W(5,-1098228632,1041490224,1047791827,-1106522387)+W(6,1024962860,1041000955,-1107413740,1027135608)+W(7,-1101441076,1035067556,-1123460834,1005788722);WS(1050996380,1066787661); -sum1=W(0,1042843177,-1120310187,1033453959,-1107450543)+W(1,1017862620,-1134072575,1025308393,1033769739)+W(2,-1109518091,1043911830,1059519229,1061971625)+W(3,1051823058,1046601317,1042112788,1046863997)+W(4,-1098674409,-1097687209,-1096304487,-1098011863)+W(5,-1095767039,-1095249970,-1098354285,-1098417599)+W(6,-1112832565,-1133582755,-1116528532,-1105396874)+W(7,1033796902,999923683,1030029487,-1109771063);sum2=W(0,-1103321099,1033376724,-1108916223,1033194077)+W(1,1038197771,1032881798,1017830932,-1138730935)+W(2,-1087654445,-1114493691,1049058628,1065240604)+W(3,-1128335788,-1094150295,1006224046,-1112103411)+W(4,-1098379129,-1096458683,1036368268,1054396447)+W(5,1049730119,-1108472207,1031462702,-1102017203)+W(6,1013739975,1015354012,-1121134774,-1115257551)+W(7,-1129699908,1021079748,-1117224382,1038189385);WS(1027314912,-1081149641); -sum1=W(0,-1109480125,-1114947760,-1101195017,-1132100201)+W(1,-1103759537,1044342469,-1111893319,1051194426)+W(2,1051429188,1053252314,1058130398,1061393767)+W(3,1057940398,-1104522586,1055491172,-1120202825)+W(4,-1118844062,-1094077252,-1113091794,-1085308129)+W(5,-1102037735,-1094497965,-1103334896,-1094870250)+W(6,-1097611416,1034118735,-1104617542,1035982720)+W(7,-1114189097,1036294793,-1128796810,1030785028);sum2=W(0,-1131039707,1024995350,-1104486127,1015537291)+W(1,1053996441,-1103676904,1047124046,-1111129691)+W(2,-1098833779,-1124760267,-1078713050,-1065942779)+W(3,1047686732,1084085461,1064521940,-1093915430)+W(4,-1147567565,1057070390,-1091843304,-1081156610)+W(5,-1094140189,1060423478,1046849692,1018309905)+W(6,1035790053,995065627,1037354874,-1154356731)+W(7,-1107145709,1026796886,-1108476011,1038591472);WS(-1081542375,1044780323); -sum1=W(0,1026864081,-1100303790,1048337215,-1098110473)+W(1,1054474587,-1099969099,1023999910,1028627178)+W(2,1046719985,1054288460,1054459103,1048901488)+W(3,1041639871,1034589376,1043694031,1046235480)+W(4,-1098857847,-1108679899,-1098101851,-1093175556)+W(5,-1104037973,-1107626335,-1101510966,-1106600025)+W(6,-1114219435,-1104586877,1041408644,-1098306531)+W(7,1046672715,-1104199322,1022681657,-1126646775);sum2=W(0,1017985090,1027847194,1036519222,-1113167123)+W(1,1037009826,-1113380621,1031131596,-1115360802)+W(2,1024212320,-1098721130,1050387030,-1094712479)+W(3,-1100822056,1028269032,1009055356,-1113841920)+W(4,-1099849981,-1081468176,-1070464929,-1096550174)+W(5,1057690620,1042714784,-1145638655,1046010973)+W(6,1067245211,1074345814,1070597407,-1088417301)+W(7,-1104880956,-1102737214,1000105719,-1112342255);WS(1059294542,1020616832); -sum1=W(0,-1157534552,1039080142,-1097783100,1031217968)+W(1,-1164216296,-1138897989,1026686634,-1105498094)+W(2,-1096856701,1044861738,-1089052876,-1085780263)+W(3,1044573672,-1097342660,1041475528,-1105558033)+W(4,1050532499,1041652423,1057029426,1047119538)+W(5,1039715347,1043073721,1040308239,1048391538)+W(6,-1112831597,1046540791,-1098369827,1040272239)+W(7,1024931118,-1103025619,1045404192,-1114523696);sum2=W(0,-1106291706,1001372950,-1099590495,-1093748925)+W(1,1015225205,-1105937891,-1112612361,995169980)+W(2,1040318024,-1105705183,1045484852,1061316313)+W(3,-1098311584,1041085521,1028378294,1035732349)+W(4,-1114208076,-1116263519,-1108179199,1049891427)+W(5,1040668388,-1111581107,-1115787941,-1113959318)+W(6,-1142193319,-1145917455,1036599633,-1108356360)+W(7,-1148092276,1032743264,1021281994,1024794158);WS(1059376718,-1137270291); -sum1=W(0,-1118257199,1037392427,-1097794403,1035766677)+W(1,1026067385,1032186693,-1108679762,-1139304576)+W(2,1043258576,-1106073464,1054680411,-1099046488)+W(3,-1088020070,1041392887,-1113652045,-1111666975)+W(4,-1114290826,-1124279079,-1115190716,1052189312)+W(5,1054691490,-1097245116,1025610423,-1123561026)+W(6,-1112002778,1022160871,1045843716,1011458515)+W(7,-1110958220,1046761570,-1117145658,1032305501);sum2=W(0,1025244035,-1122852568,-1092220395,1038019467)+W(1,1048072683,-1113553750,-1119930901,-1139793711)+W(2,1033595807,-1087687504,1066421651,1047700223)+W(3,-1084925862,1050883425,-1105555859,-1146566911)+W(4,1016573022,1048825911,1058107887,-1089540205)+W(5,1045215493,-1098430697,1041208433,-1124843514)+W(6,1002397687,-1104089806,-1130145014,-1111655831)+W(7,1032935415,1015641098,1001885951,-1131703250);WS(1058596686,1013962118); -sum1=W(0,1000024554,-1127551432,-1100000762,1035333436)+W(1,-1122612871,1044766998,1041477861,1051562743)+W(2,1052551424,1049056438,1057499982,1036076760)+W(3,-1127972943,-1116046252,-1118015335,-1099275107)+W(4,-1088298614,-1098656348,-1090756927,-1097067922)+W(5,1040213184,1015197910,-1123679237,-1122278672)+W(6,1039656505,1034731345,1019232187,1033429441)+W(7,-1125045580,-1113717771,1037833508,-1122272135);sum2=W(0,-1104434141,1029025211,-1078497608,-1079110377)+W(1,-1085502108,1066279808,1062913146,1068620036)+W(2,1048601996,-1091369704,1052827694,-1106615386)+W(3,-1115334546,1037382016,-1122817088,1048688798)+W(4,1033271157,-1119340081,1025214064,-1109539756)+W(5,1050957039,-1106594885,1036274829,-1118139306)+W(6,1004930429,1028438774,-1106316897,1034989376)+W(7,-1108631008,1023198169,-1134348613,-1139733884);WS(1044771128,1023341948); -sum1=W(0,-1156220044,1034545464,1033488922,-1111313058)+W(1,1038420969,1008511890,1013986230,1011084871)+W(2,-1092336191,-1098819215,-1096491302,-1086850728)+W(3,-1102939421,-1100928894,-1115524377,-1089482302)+W(4,1051560294,1044146859,1051910286,1045449190)+W(5,1053458817,1038883707,1012126018,1046748951)+W(6,1036528391,1029114797,1022761170,1029767950)+W(7,1041877300,1034675856,1037411178,1043196317);sum2=W(0,-1071004894,-1080574884,-1089987082,1049506323)+W(1,1065282653,1062249589,1060165079,1070844945)+W(2,1076503146,1066884159,1058011283,-1098882467)+W(3,-1084978169,-1088626314,-1082249713,-1077734377)+W(4,1057610169,-1107351326,1054000347,-1090234844)+W(5,1030898490,-1090230279,1044380003,-1096516163)+W(6,-1122913984,-1130255370,1038970611,1014162118)+W(7,-1114000490,1022492087,-1131621088,1013009282);WS(-1111817840,-1134998409); -sum1=W(0,1022731056,1045262352,1044888721,1029818259)+W(1,-1105915720,-1114660906,1027479949,991785104)+W(2,-1102901203,-1094315057,-1085070720,-1111793509)+W(3,1055206544,1046806370,-1123039746,-1136267423)+W(4,1029699069,1052915216,1058770140,1057078063)+W(5,-1095183540,-1097451385,-1112670352,-1114500629)+W(6,1021112442,-1107194439,-1097785743,-1117717150)+W(7,1040740592,1036425016,1005586201,1016465988);sum2=W(0,-1129690332,1030842707,-1123486113,1054087898)+W(1,-1105176966,-1097205966,-1098021434,-1106929221)+W(2,-1113356803,1026318374,1041923626,-1089332833)+W(3,1068558125,-1141184456,-1107728348,-1104288342)+W(4,997943457,-1119512995,1037525758,-1088292904)+W(5,1040210770,1050151959,1018682892,1006954668)+W(6,1015499837,-1180561029,-1144014736,1037328869)+W(7,-1107365912,-1114055561,1009592392,1013301204);WS(-1100650808,1043653943); -sum1=W(0,1038392637,1032036848,-1120772452,1043637149)+W(1,1040259489,1047398869,1038054351,1050576478)+W(2,1044290651,1040683515,-1106266873,-1090111931)+W(3,-1133467790,1044787930,1023591523,1037223428)+W(4,-1095199164,-1115398639,-1094097345,-1097393337)+W(5,-1104941765,-1101572298,1016760834,-1102689443)+W(6,1033771919,1038316223,1042896310,1045751664)+W(7,-1159203906,1015063331,1030908740,-1125005703);sum2=W(0,1018053796,1000548496,1049079603,1039189619)+W(1,-1128574308,-1118597354,-1106984497,-1104543855)+W(2,1046306039,1043541862,1010667960,1064529690)+W(3,1047996002,-1087406141,-1095617964,-1086946593)+W(4,-1101305605,1029064982,-1116813778,1038487223)+W(5,-1100258391,1048794746,-1114392997,1045938007)+W(6,1031448374,-1112893849,1021972628,-1105518867)+W(7,1037842238,1033382833,1021089548,-1140458600);WS(-1121537248,1047151836); -sum1=W(0,-1096325448,-1113135282,-1098188693,-1112146268)+W(1,-1108791588,-1117696601,-1123869651,-1114157115)+W(2,1052654400,1035132488,1046868890,-1134150082)+W(3,-1129891280,-1098847494,1032919412,-1107856679)+W(4,1000450324,-1110395025,-1139200797,1049727010)+W(5,1041189572,1056884317,1041128337,1058220805)+W(6,-1116556387,1023519458,-1111260975,-1110207458)+W(7,-1104838938,-1098805187,-1146298440,-1103148146);sum2=W(0,-1142864271,1021304865,1043366966,-1107584343)+W(1,1014758407,-1130465374,-1120740451,1000478551)+W(2,1043572739,1026011378,-1102859954,-1080136051)+W(3,-1103597159,-1115654645,1046511165,1053224660)+W(4,-1125571574,1028667063,1022196210,-1072538638)+W(5,-1076945816,1048815254,1072551214,1074776028)+W(6,-1107989855,-1140649559,1020722946,-1132367054)+W(7,1041979768,-1126224006,1027667511,1048839210);WS(-1086568910,969651201); -sum1=W(0,-1128189323,1044154939,1043534732,-1114366976)+W(1,-1098469330,-1101372520,-1123038043,-1132910587)+W(2,-1096064919,-1089612648,-1084798775,1053159863)+W(3,1053431542,1050787607,1036747448,-1116020373)+W(4,1047521403,1054908701,1056987371,1057685165)+W(5,-1089249613,-1090701774,-1105030179,1027268120)+W(6,1043461231,-1099266659,-1113308531,-1152040120)+W(7,1042761408,1049635020,1010635844,1018344000);sum2=W(0,1042932965,-1103428495,1039997403,-1093583228)+W(1,1044856824,-1121819542,-1177180368,1028413178)+W(2,-1103892922,1060495074,1052448567,-1075640666)+W(3,1057723154,1057002090,-1112150955,-1118134166)+W(4,-1104364155,1060109323,1064108701,-1073056297)+W(5,1055665788,1060503917,-1116550688,-1110515035)+W(6,-1139842168,-1118896922,991756114,-1097481656)+W(7,1040659602,-1099984054,1034919451,1041069777);WS(-1084093518,-1116656412); -sum1=W(0,1002008836,959481663,-1104590931,1050696243)+W(1,-1106608235,1047962207,1030562773,1015783795)+W(2,1058416208,1026388179,1059097973,1042079029)+W(3,1041679827,1049127990,1031439243,1042535660)+W(4,-1096672513,-1109778819,-1088144465,-1096264126)+W(5,-1101432288,-1100480244,-1113594772,-1093923750)+W(6,-1112390467,1023428581,-1112632704,1040470858)+W(7,-1102954054,1047012782,-1112144502,-1145396437);sum2=W(0,1007960967,-1110192070,1049899326,1056650247)+W(1,1078512141,1081472440,1058404171,999915485)+W(2,1027407916,1010716935,-1097456083,-1070859565)+W(3,-1068241064,-1079514242,-1094427160,1030657127)+W(4,-1129957403,1018303319,1037417999,-1094713389)+W(5,-1096379657,1043613542,1025537830,-1116925932)+W(6,-1132155403,-1121935910,-1137993343,-1142796285)+W(7,1039214170,-1111213656,1032528613,1024356221);WS(1052225948,1018668194); -sum1=W(0,-1120453498,-1123160289,-1108654867,-1104839613)+W(1,1041378113,1036965515,1044186084,1034438594)+W(2,1051775516,1048325451,1058214550,1064670427)+W(3,-1126638409,1049967085,-1096299613,-1128237844)+W(4,-1117579103,-1111291056,-1093397513,-1091445969)+W(5,-1092047898,-1099225050,-1112850625,-1112057991)+W(6,-1107074656,-1112742544,-1147977428,-1119335936)+W(7,-1109154218,1034167881,-1138567959,1019177609);sum2=W(0,-1121001958,-1148685985,1018483434,1021815720)+W(1,1049361594,-1108634723,-1132118692,-1105580672)+W(2,-1117606942,-1111847761,-1120566718,-1076982600)+W(3,1074852012,1048076514,-1102180777,-1116866514)+W(4,-1103097305,1021935234,1049895592,-1081972918)+W(5,1051964198,1040925857,1017568960,1040155911)+W(6,-1130038396,-1112487949,1038078839,-1125812992)+W(7,-1152546434,-1104919092,1026180028,-1123068468);WS(-1096382876,-1091051652); -sum1=W(0,-1116126267,-1113197617,-1112424211,-1124324715)+W(1,-1136579346,1040875430,-1113905512,1017323784)+W(2,1057278592,1048826126,1058810754,1056304110)+W(3,1041995897,1016295122,1024916389,1042534003)+W(4,-1096000788,-1097274020,-1088739494,-1091311905)+W(5,-1114916522,1038826452,-1128507781,1017648027)+W(6,-1116910752,-1140807037,1039925053,-1132679170)+W(7,-1107191661,-1119450067,1023437062,-1098370349);sum2=W(0,-1120311657,1036113080,-1109045199,1029662296)+W(1,-1122358251,-1114085873,1016737279,-1115835645)+W(2,1025682064,-1107470193,1035621932,-1118009189)+W(3,1045290388,1009830751,1035169596,1030264440)+W(4,1036682152,-1108061877,1051542033,-1101792442)+W(5,-1093646778,1056395710,-1091719234,1052430993)+W(6,-1108273289,1012612647,-1101063214,-1076098595)+W(7,-1080861029,1039398973,1065137390,1072502688);WS(1040082544,-1114755812); -sum1=W(0,1017784372,1037505264,1045745417,1019379817)+W(1,-1109308706,-1124056118,1025470519,1039469090)+W(2,-1110974758,-1108514902,-1095324708,1052579502)+W(3,1058051822,1046163210,1038459986,998280780)+W(4,1040296296,1041424680,1054913780,-1106396419)+W(5,-1087512533,-1093666877,-1106674096,-1109356390)+W(6,1024480479,-1104471944,-1106439461,-1115066496)+W(7,1040857799,1001482384,995688529,-1108404770);sum2=W(0,-1162396366,-1117720653,-1104226850,-1105580348)+W(1,-1105643813,1031813906,1011045214,1018164327)+W(2,1045315846,-1118054954,1057942904,1059476362)+W(3,-1090022037,1045409162,-1106412098,1023977529)+W(4,1034748092,1034773210,1043388435,1067689202)+W(5,-1083232471,-1101262587,-1124577575,-1102021751)+W(6,1035646876,-1100298043,-1097646834,-1093789486)+W(7,1040357620,-1113573448,1012935222,1024454049);WS(1036525168,-1082462584); -sum1=W(0,-1116308971,1037298441,1027885589,-1122874917)+W(1,-1154089797,-1108384819,1028179743,1003463273)+W(2,-1085123800,-1087372070,-1086414101,-1096064460)+W(3,-1099879381,-1104319094,-1127380522,-1096394215)+W(4,1057675329,1051660338,1059597873,1059581688)+W(5,1052784510,-1117339864,1039251609,-1110971807)+W(6,1019612704,1027541711,-1109257541,1041073820)+W(7,1028059367,1045372305,1031554934,1053758651);sum2=W(0,1060691160,-1103295177,1035985281,-1085964582)+W(1,-1105398566,-1107551093,1049030608,-1090293163)+W(2,-1081285622,-1090050073,-1102851017,1072728426)+W(3,1060511611,1033954581,-1086630634,1058069039)+W(4,-1080809247,1050684042,-1087522637,1060852217)+W(5,1058511518,1041242888,1028348456,1062481845)+W(6,1052276353,-1106187369,1048638013,-1090587145)+W(7,1029176048,-1094879840,1046256182,-1087039462);WS(-1074352935,1040600857); -sum1=W(0,1042034194,1028652336,1024054004,1030695172)+W(1,1029627411,-1117605317,-1114002447,1041624512)+W(2,1057627204,1025049468,1057567995,1022098295)+W(3,1052602222,1039437212,1049556590,1053416947)+W(4,-1090157751,-1105875707,-1088931067,-1095088235)+W(5,-1094832321,-1104356174,-1107260676,-1101255271)+W(6,1024364622,-1105990299,1048022018,-1100928004)+W(7,1049957878,-1095846092,1047165477,-1098759166);sum2=W(0,-1075440350,-1079714919,-1079134350,-1081735031)+W(1,1055569671,1066585571,1071644179,1075476470)+W(2,1073165865,1065983198,1068716226,1066499710)+W(3,-1095308006,-1080754250,-1074800849,-1073191304)+W(4,-1112383192,1048707236,-1135853868,-1098543278)+W(5,1021808504,-1108920844,1050977418,-1090378667)+W(6,-1148975848,-1115591486,1038054064,-1125971282)+W(7,1040311395,-1110109816,1035370814,-1120408347);WS(1041022776,1033480094); -sum1=W(0,-1132576057,-1123321429,1028959481,-1104176578)+W(1,1046472198,-1121060138,1027556403,-1115611836)+W(2,1026327841,1042302896,1052457903,1063677500)+W(3,-1097607903,-1123802109,-1118671609,1039698959)+W(4,-1110434490,-1109312954,-1089918670,1025377120)+W(5,-1090934974,1046523967,-1112257611,1000531209)+W(6,-1119031508,1021323174,1029242558,-1118638740)+W(7,1013298461,-1106699146,1030036314,-1116635705);sum2=W(0,-1106027239,-1122286155,-1102546078,1055155948)+W(1,-1096754888,1032068992,-1121774513,1036170969)+W(2,1049930690,-1127267122,1041115945,-1091935564)+W(3,1052250618,-1103388917,1038737216,-1108790214)+W(4,-1110218398,-1108798456,1058786995,1075372513)+W(5,-1071163371,-1123143101,-1121707895,1032355550)+W(6,1034564779,1018367610,-1095860458,1043590800)+W(7,-1112711414,-1119323979,1016553114,1017858173);WS(1055618972,-1117202987); -sum1=W(0,1030962480,-1101414710,-1098100923,-1111740150)+W(1,1036980413,1041005827,1021681163,-1112834597)+W(2,1039894129,1053882576,1057347458,1049814740)+W(3,-1090053902,-1088233382,-1105970903,-1117339136)+W(4,-1101932469,-1089999221,-1085784352,1051098296)+W(5,1056052448,1051763396,1044301630,1032801282)+W(6,1031993659,1048656807,1043352452,1031031542)+W(7,-1104607674,-1119077705,1022017143,1039235901);sum2=W(0,-1114659327,-1123577690,1042921002,-1105097716)+W(1,1042773509,-1093975266,1032061179,1000405669)+W(2,-1101541229,1043634319,1066882360,-1077668162)+W(3,1037629509,1058638399,-1108208741,-1131856909)+W(4,-1107338771,1057974128,1050113378,-1080704784)+W(5,1051155360,1052705661,1008396554,-1111189711)+W(6,1039378885,-1111523166,1040130625,-1104122760)+W(7,1012227066,-1110420726,-1125218199,1025207949);WS(-1091387548,-1116324289); -sum1=W(0,1026642697,1044682252,1041967213,1032214050)+W(1,-1131062694,1015214154,-1137069945,-1110158325)+W(2,-1112220622,-1093973688,1046046637,-1086442024)+W(3,-1099996941,1053177927,-1098783494,1037567917)+W(4,1049897926,1047211372,1050365286,-1112122925)+W(5,1046223135,-1132096750,1024489425,1042021623)+W(6,1027958127,-1098544270,-1112662293,-1106755108)+W(7,-1116559746,1034258897,-1111108842,1031638516);sum2=W(0,-1108095393,1016776222,977935538,-1122468710)+W(1,1019959206,1030099429,-1104930054,1002749526)+W(2,1011776651,1024100809,-1097248934,1057627889)+W(3,1042194141,-1117226417,1051928720,1041814459)+W(4,-1101257730,-1105403134,-1101986254,1060632600)+W(5,-1090719303,1037412790,-1109292621,-1115385474)+W(6,1019145070,1032882678,-1124027994,-1103033100)+W(7,1039533068,-1110127978,-1125661478,-1108291818);WS(1057965518,-1118811194); -sum1=W(0,-1104352985,1038892389,-1105058276,1042490232)+W(1,-1121521774,-1099594944,1033536020,-1095161930)+W(2,-1106566686,-1112643723,1026830542,-1091938531)+W(3,1058056073,-1101314965,-1098044778,1039936570)+W(4,1052732873,1003767366,1060358287,1019887594)+W(5,-1118338013,1042464324,1024562028,1046000094)+W(6,-1107147458,-1114250980,-1096574819,1048844541)+W(7,1024329053,-1107780158,1032778872,-1107207172);sum2=W(0,-1116205334,1042905425,-1109155755,1044205280)+W(1,1035597621,1008636092,1036458751,-1092853308)+W(2,993944814,-1113078065,1044406596,1040105843)+W(3,1043112037,-1123380436,-1105268129,1005260887)+W(4,1032713731,-1104977559,1048672381,-1104277422)+W(5,-1103087244,-1153474446,1015784078,1036094123)+W(6,-1106373772,1039619019,-1115343154,1048332350)+W(7,999501191,-1106439836,1021528398,-1106473413);WS(1053420700,1049909457); -sum1=W(0,-1115258034,1034071238,1027276239,-1115686559)+W(1,1041096236,-1102788144,1034068157,-1107460367)+W(2,-1106165874,-1089903413,1036166247,-1100423414)+W(3,-1093491554,1049835542,-1095323722,-1110396954)+W(4,1050401361,1041332866,1049384898,1037380859)+W(5,1052388787,1034784425,1031952854,1050882791)+W(6,-1113250117,1023742249,-1130552842,-1120158506)+W(7,1037333727,-1103514783,1037170040,-1114330639);sum2=W(0,-1112500393,1028289272,1049127312,1086771603)+W(1,1048088739,1020087240,1014851096,-1146529543)+W(2,1024557142,-1165623582,-1095250820,-1062269001)+W(3,-1095068995,999933935,-1135945992,1025716258)+W(4,-1136367764,1035333264,-1114028070,-1087155359)+W(5,1022077560,1034746908,-1120864651,-1127622484)+W(6,1020782048,-1122738507,1025362120,1034731082)+W(7,-1125007838,-1120796207,1026594640,-1128255426);WS(1063806286,1027083983); -sum1=W(0,-1114823180,1030313470,-1111791457,-1111977289)+W(1,-1108043857,1019729830,-1114640622,1033983240)+W(2,1045480194,1039206373,1061885616,1050451993)+W(3,1057912708,1036575619,1039765761,1034424532)+W(4,-1118427516,-1106496703,1010686340,-1083830979)+W(5,-1099420545,-1105267089,-1131920190,-1125840468)+W(6,-1109705966,1020453816,-1103432478,1039658735)+W(7,-1114670584,-1109909656,-1113587473,-1112770081);sum2=W(0,1033978022,-1100194899,1033701105,1050426550)+W(1,-1104028404,1034191613,-1141130302,1010895851)+W(2,-1122290634,-1091664523,-1071413373,1075108998)+W(3,1062092502,-1103668501,1034149895,-1140709165)+W(4,1016780797,-1103111994,1047766898,-1096749849)+W(5,1027350687,-1131589290,-1131724600,1027888251)+W(6,-1164938552,1002490582,-1105595809,1051489664)+W(7,-1108336227,1021076655,-1149103768,-1131210373);WS(1058288590,1045994186); -sum1=W(0,1018135640,-1123855059,1040223430,-1112801779)+W(1,1036317947,-1098800665,1034707665,-1096517871)+W(2,-1093342072,-1096797372,-1086390197,-1105293320)+W(3,-1091216419,-1117054299,-1096209979,1023470716)+W(4,1052167946,1041780692,1052872019,1059840396)+W(5,1051866430,1050341107,1048652350,1050625648)+W(6,1038262801,1015346466,-1132654257,-1134794696)+W(7,-1117665797,1012611090,-1139713758,1010858330);sum2=W(0,1041114210,-1099284356,1038292116,-1092208278)+W(1,1054381469,-1104534119,1025804573,1033400256)+W(2,-1099008397,1047276236,-1081084758,-1071665325)+W(3,1054365119,1081581342,1062322644,-1093538640)+W(4,-1123917868,-1111523652,1037708884,-1086778305)+W(5,-1101037019,1026238413,-1134916894,1052085127)+W(6,-1125418381,-1120564910,1020505319,-1100128811)+W(7,1024474915,-1125603475,1025011807,-1103707544);WS(-1088887374,1070119449); -sum1=W(0,1040460421,1041554590,1013850612,1038262022)+W(1,1042710919,-1106869091,1044864290,1046057615)+W(2,1052058645,1048371361,1048732808,1042754705)+W(3,1047384127,1054439312,1032508990,1042772520)+W(4,-1090595183,-1115426747,-1094790815,-1087902678)+W(5,-1106656361,-1090477876,-1122940954,-1091795237)+W(6,-1105506686,1029097335,-1129317061,1001782464)+W(7,1038072126,-1131475029,1028935005,-1119515740);sum2=W(0,1024604999,-1112923336,1027433809,1025504127)+W(1,1007245204,-1144581942,-1129047399,1021294865)+W(2,1056461606,1030035123,1050727550,-1090534096)+W(3,-1105339223,-1095507508,1043793174,-1095638178)+W(4,1071685965,1066713447,1068313262,1028028856)+W(5,-1081367671,-1078816510,-1081156501,-1090770344)+W(6,-1075212110,-1080779344,-1078194918,-1153515923)+W(7,1068056044,1069903211,1064173276,1060536751);WS(1040470840,1011790950); -sum1=W(0,1015095158,-1120734562,-1116691398,-1118217942)+W(1,1019898057,-1123629847,1034607368,1041822001)+W(2,1043725275,1051465082,1058372660,1055309890)+W(3,1046636817,1044874098,1043010193,1040878843)+W(4,-1105535856,-1108441440,-1095343471,-1081260869)+W(5,1047492563,-1093096561,-1105294873,-1106259483)+W(6,-1108386992,1030149375,-1112701741,1026499745)+W(7,1032201014,-1115283258,1028457510,-1112399171);sum2=W(0,1022830461,1021246145,1015115055,-1114703004)+W(1,-1120910531,1015720307,983370825,-1123770073)+W(2,-1117997331,-1110014342,-1111993293,1036613835)+W(3,1023720090,-1117604953,-1120463052,1036937497)+W(4,1037270083,-1125616185,1044158772,1073620398)+W(5,-1076883688,-1087890801,1025754476,-1113287589)+W(6,1023767946,-1130403951,1025796328,1050812248)+W(7,-1112499600,1028283916,-1104874229,1033737696);WS(1058309838,-1101980246); -sum1=W(0,-1118965337,-1098779704,1049071256,-1113399754)+W(1,1026571427,-1110569018,-1131332475,-1128371676)+W(2,-1110907254,1049643561,-1081904943,1042163763)+W(3,1052138696,-1106220306,1025191299,-1129449041)+W(4,1038642111,1038999679,1054751182,1056093093)+W(5,-1083956910,1050507993,-1146247429,1030864044)+W(6,1028903966,-1108240479,1040887994,-1118832415)+W(7,1046797612,-1104697276,-1123883748,1017502086);sum2=W(0,-1137655511,1043191716,-1121349336,-1097517035)+W(1,1046822141,-1129223371,-1116759551,-1124684976)+W(2,-1111106723,1033166752,1033268708,1052576386)+W(3,-1107318253,-1102887232,1040601750,993535634)+W(4,1035105104,-1112822728,-1104857525,1055574555)+W(5,-1114990789,-1121581721,-1152414880,-1107957817)+W(6,-1112318930,1027572041,1035699332,-1097542777)+W(7,-1110157019,1031007843,-1157281192,1025775603);WS(1063710542,-1111213649); -sum1=W(0,1039559517,-1110192145,-1107309859,-1118762901)+W(1,-1108199122,1037245627,-1139769966,1035326852)+W(2,1052251350,1049489370,1058328276,1061120005)+W(3,1049656673,1033876357,1041987905,1045428971)+W(4,-1101160384,-1097695264,-1093740712,-1096321197)+W(5,-1097289639,-1114972772,-1102516745,-1103522251)+W(6,-1113889808,1031901152,-1104513406,-1097003636)+W(7,-1112381384,-1176476024,1022802380,-1115185874);sum2=W(0,1026803387,1021750253,1040812059,-1107480079)+W(1,1041131835,-1115082464,1006187407,1001155939)+W(2,-1115186477,1031459540,-1116326399,1040651083)+W(3,1020594503,1033768858,-1132516997,1015478283)+W(4,999853755,1031446318,1058720440,1071698983)+W(5,1051128601,1034660038,1027131696,1041372466)+W(6,-1112425236,-1106593609,-1086524651,-1075753828)+W(7,-1096266051,-1108942599,-1123360193,-1104453127);WS(1039772272,-1082982873); -sum1=W(0,1039127452,-1106264016,-1104546353,-1145518233)+W(1,1041713673,1044410893,1039725795,1007790526)+W(2,1049032497,1053169593,1060522592,1056693961)+W(3,-1095982984,-1088607916,-1099512929,-1120546088)+W(4,-1098139952,-1088020664,-1087153807,1038834197)+W(5,1053429837,1048228018,1030077856,-1130616150)+W(6,-1155633625,1043520647,1040400554,-1139907193)+W(7,-1104883452,-1103034636,-1134131855,1012687882);sum2=W(0,1032987173,-1102803435,-1097110538,-1101871105)+W(1,-1101555589,-1123533577,-1098769512,1048796624)+W(2,-1092902636,1037122437,-1083842457,1067610414)+W(3,1033006847,1041814167,1045724867,999019252)+W(4,1027660911,1039508875,-1115097563,1067552095)+W(5,-1096151174,1026567371,-1107225085,-1105667947)+W(6,1032111389,-1101516234,1001644292,-1104358647)+W(7,-1145661076,-1104681426,1020958965,1028203943);WS(-1101412664,1073047832); -sum1=W(0,-1113880945,-1123950537,-1109995975,-1123565085)+W(1,-1123728428,1035385983,-1115318676,1010675502)+W(2,1059007377,1047579477,1060416389,1056063051)+W(3,1046383171,1040643140,1033389702,1041003725)+W(4,-1091904865,-1097814305,-1087199740,-1092124214)+W(5,-1099567891,1038341800,-1119557930,1042882861)+W(6,-1133362719,-1131741454,1032803377,-1113780884)+W(7,-1113889390,-1126485237,1012558775,-1096461162);sum2=W(0,1013686761,-1123503757,1035262859,-1115490710)+W(1,1025861040,980681483,-1125276038,-1129892230)+W(2,1030949359,1039110679,-1105775253,1027204409)+W(3,1019519396,-1111394964,1024413043,-1126757058)+W(4,-1109223248,1035635962,-1106751414,1057425426)+W(5,1043312829,-1098000154,1051287795,-1103421662)+W(6,-1132915573,996209923,1029135163,1070858778)+W(7,1067133266,-1098902818,-1083268694,-1073095921);WS(-1103532344,-1105840701); -sum1=W(0,-1106756472,-1106322913,1029810954,-1096389739)+W(1,-1116067305,1035916925,-1105566449,1034505108)+W(2,-1105825052,1053932942,-1086676361,-1098358914)+W(3,1054020609,-1096691570,1051257001,1026552303)+W(4,1050195304,1007328528,1057202097,1054492326)+W(5,-1093369370,1012599092,1027855335,-1101687900)+W(6,1044840709,-1104890465,-1144507642,-1098185309)+W(7,1032208700,1048715303,-1100267787,1050640157);sum2=W(0,-1111707317,-1119262447,1037989791,1056036881)+W(1,-1105645897,1006194414,-1146663095,-1129479912)+W(2,-1101137684,-1109186725,1049211868,-1099242284)+W(3,1038198606,-1118866635,-1109483964,-1114787638)+W(4,-1116414033,-1107841286,1056722210,-1094543747)+W(5,1053421235,-1104714858,-1120693058,-1115357885)+W(6,-1103752872,1034593530,-1110917586,1049861706)+W(7,1030171051,-1103907620,1032413269,1029169157);WS(1045178680,-1115117954); -sum1=W(0,-1102680211,-1123018420,-1116849368,1024407336)+W(1,-1107241006,1026392201,-1107918421,-1123314455)+W(2,1048681528,-1113607536,-1092105355,-1093530556)+W(3,-1096193779,-1102060551,-1102337510,-1095199752)+W(4,1019008549,1040296293,1035615004,1061339424)+W(5,1057711678,1055864515,1045891981,1052562824)+W(6,1008490315,1012835273,1027033246,-1128145511)+W(7,-1103222073,-1110547491,-1110097884,1020395952);sum2=W(0,-1108321996,-1115537892,-1106228104,998645667)+W(1,-1112292909,1035781218,-1111036660,1018530825)+W(2,-1096948503,-1104693583,1047339287,1055675007)+W(3,1049114511,-1100682049,1032758858,-1113969306)+W(4,-1112108000,-1112710060,-1126080161,1051246853)+W(5,1041989299,1025978716,1034053890,-1113712936)+W(6,1026091852,1022753169,-1120501740,-1105262859)+W(7,-1123292948,-1139782977,-1111667328,1033000622);WS(1044590904,1058699692); -sum1=W(0,985175380,1034192409,1020554347,1024014533)+W(1,-1115433194,-1128687821,1008304190,-1115445028)+W(2,-1092606720,-1090621088,-1093618783,-1113905855)+W(3,-1096920415,-1112503613,-1100279725,-1101027255)+W(4,1051210502,1050384326,1055009987,1062574818)+W(5,1054554325,1031218808,-1105751509,-1144235755)+W(6,1009220799,-1109361592,-1117059707,-1128567457)+W(7,1015981863,1039114097,-1127205548,1035507338);sum2=W(0,1036009101,-1117283755,1033667347,-1107239966)+W(1,1034685217,-1128406639,-1123321687,-1125402335)+W(2,-1108619644,1041337919,1012813669,1053310286)+W(3,-1103814148,1029066827,-1109499964,-1123197815)+W(4,1010492213,-1100684466,1015579759,1056064408)+W(5,1050883237,-1113069964,-1098878001,-1096911819)+W(6,-1131279719,1035041542,-1124020763,1025470531)+W(7,1032198922,-1104788458,1024066141,-1108347132);WS(1044030776,-1089132931); -sum1=W(0,1034269487,1032883970,1042439154,1044751430)+W(1,1019707982,1041434446,-1133288904,-1128708109)+W(2,-1093699058,-1097458090,-1086092656,-1078975458)+W(3,1035194756,1038040390,-1131544335,-1101499019)+W(4,1045160768,1050995424,1057188990,-1096290982)+W(5,1032938655,1043682915,1022768458,1043305900)+W(6,1040395197,-1135242887,1040422743,1048952172)+W(7,1042217766,1043586045,1029073256,1044718778);sum2=W(0,1043294282,-1127265324,1035036911,1051203976)+W(1,-1092441683,1037063919,-1095318743,-1096741875)+W(2,-1107262777,-1107127922,1048700262,-1114081637)+W(3,1027047222,-1087538045,1043898666,-1114635611)+W(4,-1132728616,-1133435576,-1115280193,1060204569)+W(5,-1096051714,1059699424,-1091030613,1057805441)+W(6,-1112978295,-1101649503,-1142433873,-1138065032)+W(7,1049542158,1027406094,1036599707,-1117298502);WS(-1083489614,-1078579141); -sum1=W(0,-1113694287,1048897616,-1104500498,1029397720)+W(1,1039983475,-1099529286,1047818144,-1100400745)+W(2,-1091060438,-1104759380,-1089217572,-1096433234)+W(3,-1090900481,-1103761763,-1126261903,-1098862766)+W(4,1048678744,1055607032,1025763911,1056656214)+W(5,1055730826,1039576037,1050842685,1044462332)+W(6,1022130309,1045345264,-1098656951,1045280313)+W(7,1003335600,-1104729181,1045845834,-1124798927);sum2=W(0,1034867092,1036831152,-1155378720,1050005016)+W(1,-1109019109,-1107857756,1025727369,-1105627363)+W(2,-1113896283,1008734783,-1107821706,1036439980)+W(3,-1105188391,-1103852014,-1113326142,1036502992)+W(4,-1089397746,-1143881728,-1090933436,1067046868)+W(5,1074023168,1073004488,1071596064,1068047188)+W(6,1053130734,1048547317,1050664536,-1081990202)+W(7,-1073616958,-1073650181,-1078582463,-1079035066);WS(-1123566816,-1118788492); -sum1=W(0,1034266605,-1136553988,1032767842,-1119057557)+W(1,1032596498,-1138237144,1034235800,1038972738)+W(2,-1131696345,1054570946,1043367745,1057910725)+W(3,1051309065,1050053561,1044754161,1047609962)+W(4,-1102436480,-1101485920,-1093672570,-1081257723)+W(5,-1104247863,-1097237249,-1100737384,-1118734125)+W(6,1029920799,1027694719,1029228634,1038070160)+W(7,1041012541,-1104490509,1036672371,-1101643609);sum2=W(0,1001205015,1006355343,1030505158,-1119701641)+W(1,1039794598,-1107202062,1026836118,-1115440174)+W(2,-1108935456,1048575251,-1114918170,-1088419213)+W(3,1032736312,1045905661,-1116946341,1003805295)+W(4,-1123729961,1037564428,-1096130861,-1068662368)+W(5,1076967646,1068403675,-1104305708,-1124006983)+W(6,-1151981614,-1123825361,1015236500,-1095410362)+W(7,1049774729,-1105335733,1050153445,-1103176791);WS(-1103567160,1051728620); -sum1=W(0,1022317012,-1105517764,-1109296554,1030946149)+W(1,1032988986,-1117957958,1025729823,1009731405)+W(2,1037463598,1027268637,1052072875,-1094107172)+W(3,-1087396213,-1098739651,-1104965205,1017302004)+W(4,-1094952698,-1107670055,-1103880757,1052944567)+W(5,1057943536,1052382091,1036164793,1041821631)+W(6,1033922872,1024776175,1038888053,1043766492)+W(7,-1110506946,-1108829569,-1132271979,1015545129);sum2=W(0,1031290011,-1114551402,-1137203270,1025723227)+W(1,1020823723,-1107112701,-1156747895,-1140368490)+W(2,-1127050317,1026829489,1032334734,-1098446681)+W(3,1041359246,1041376772,1034398482,-1104694439)+W(4,-1113481669,1042490649,1043198364,-1127701979)+W(5,1057793899,-1100591458,-1114292550,1037536680)+W(6,-1080536402,-1076466135,1038797044,1074254195)+W(7,1035340712,-1118262367,1013380262,1032104302);WS(-1106439480,1029090439); -sum1=W(0,1034559195,-1151887836,1020849475,1042053132)+W(1,1043127920,1043814293,1037260390,1043715864)+W(2,1042655458,1030625962,1059377738,-1084013087)+W(3,-1107145304,1032281331,1040913704,1033172451)+W(4,-1102396839,-1115609614,-1089162129,-1083731653)+W(5,1052971191,-1107154457,-1113717087,1017680531)+W(6,1026400220,1035325646,1042909598,1039293086)+W(7,1029716960,1024778063,1028666946,-1130742978);sum2=W(0,-1129107524,-1123636938,-1116921954,1035143287)+W(1,1036996009,1026655402,-1117010042,-1126794884)+W(2,1021999108,-1148550480,-1104180688,1058583951)+W(3,-1112895549,-1116180274,-1131502740,-1138164712)+W(4,1022835844,1016982596,1016773924,1054454385)+W(5,-1097314323,-1099699990,-1132536424,-1129763396)+W(6,-1129901940,-1140398984,1030858450,-1117386658)+W(7,-1108156993,-1118751234,1016259828,-1117013506);WS(1048151864,1059242544); -sum1=W(0,-1122367849,-1121466768,1042165293,-1116044868)+W(1,-1105437493,1037358179,-1125163356,-1111398955)+W(2,-1097114939,-1097911384,-1085899247,1042506911)+W(3,1056857214,-1105063934,-1123578292,-1106114902)+W(4,1043794348,1033810391,1063564267,1042284551)+W(5,-1089674786,1049648847,1021855394,1045389303)+W(6,1026875087,1014185912,-1106211614,-1111561384)+W(7,1040868541,1028107682,-1111395274,1010402126);sum2=W(0,-1139648101,-1108856547,1015236663,-1095822659)+W(1,-1137977893,1038373686,1015865663,1025690243)+W(2,-1110557326,1041627874,1032833232,1054902128)+W(3,-1098765424,-1121592121,-1106594443,-1117564251)+W(4,-1106733442,-1106727608,1048813377,1055403310)+W(5,-1097123375,1045561320,-1106386080,1017823319)+W(6,1039330638,987619817,1025349119,-1095503796)+W(7,1050144719,-1108448514,1041979856,-1105901385);WS(1058511566,1043187024); -sum1=W(0,1042620242,1027981614,1037513401,1050564856)+W(1,1040390932,1044188393,1032851398,1043046140)+W(2,1041476871,1044640335,1039039385,-1085132912)+W(3,-1095196494,-1116362934,-1107832665,-1105825814)+W(4,-1106861387,-1120607404,-1101062960,-1089194338)+W(5,1032203084,-1134658518,1026497359,-1105488567)+W(6,1043942651,1040914531,1040902562,1048598306)+W(7,1019897185,1032634704,1027555603,1032742569);sum2=W(0,-1094808435,-1132385524,-1110994277,1039748829)+W(1,1038866141,1012861192,1030487914,-1132742376)+W(2,-1083260450,-1089624726,-1098133391,1063143581)+W(3,1043371703,1040218148,1012758152,1052570990)+W(4,1041967320,-1102801635,1050258559,1037743779)+W(5,1048943341,-1112998265,1031702418,-1105604919)+W(6,1026111290,1034887813,-1123786474,1033106845)+W(7,-1110363077,-1121754906,1012203560,-1111765769);WS(-1087236686,1061665912); -sum1=W(0,-1115274057,-1116162424,-1104461343,-1093387666)+W(1,-1113556238,-1115159031,-1126942285,-1121543315)+W(2,1023071688,1030200068,1054050807,1067462106)+W(3,1050597447,1031104576,-1121547516,1042315272)+W(4,-1107980923,-1101866270,-1092884195,1056570668)+W(5,1044256537,-1106234576,-1128835891,-1114796114)+W(6,-1119301463,-1128116268,-1109238785,-1095571507)+W(7,-1103733247,-1111522325,-1111458030,-1109780718);sum2=W(0,-1127633710,1024854732,-1123781128,1040493279)+W(1,-1105896535,1033983514,-1122459292,-1120616672)+W(2,1024134807,1020748524,-1117094752,1065417820)+W(3,1047826025,-1102101577,1040101538,-1124130304)+W(4,-1114424195,-1098546148,-1079772750,1059484680)+W(5,-1107504040,1049649199,-1105983778,1041220419)+W(6,-1109129714,1025355297,-1102118069,-1114766469)+W(7,1033237727,-1154145757,1012710689,-1123999628);WS(-1092106140,-1084163121); -sum1=W(0,1036347305,1016904817,1034414494,1040590819)+W(1,1047670567,1030378702,-1114654031,1037868673)+W(2,1049849489,1040213041,1056746079,1048812489)+W(3,-1084779712,1040726752,1033236350,1034988241)+W(4,-1101083230,-1152694122,-1083169173,-1107117385)+W(5,1051667767,-1109066592,1024925978,-1107106473)+W(6,-1106738110,-1115216475,1039797369,1022569263)+W(7,-1112982247,-1125038036,1025136605,-1146668256);sum2=W(0,-1144361879,-1128843246,1005924247,-1104940693)+W(1,-1123234701,1030348431,1032437115,1024671661)+W(2,-1111008682,-1134810723,1041181160,1054697191)+W(3,1052731012,1042931729,-1112071203,-1111460488)+W(4,-1092072719,-1121102479,1045581242,1046555600)+W(5,-1103970223,-1104348933,-1113690885,-1129885552)+W(6,1021883158,-1116668390,-1109114373,-1113715104)+W(7,-1128555074,1032936433,-1136719027,-1114960949);WS(1058637774,-1109876822); -sum1=W(0,-1123254812,1041301297,-1108082435,-1113241451)+W(1,-1110973875,1027216056,1014894339,1019588394)+W(2,1042623060,-1105094644,1059472952,1043969956)+W(3,-1113269955,1026816394,-1130602892,1026167148)+W(4,-1126486401,-1111052512,-1094910408,-1094009726)+W(5,1058531737,-1100061186,1032486130,-1117291247)+W(6,-1112485473,1037949088,1016105496,1038892497)+W(7,-1093047519,1032398170,-1128303438,1021704844);sum2=W(0,1019183838,1031923668,1049015983,-1096362417)+W(1,1005830618,1036998273,-1119396253,-1125844722)+W(2,-1103677237,1026573624,-1101357077,1060010174)+W(3,-1122620605,-1106684685,1023743335,970656667)+W(4,1041385745,1025625867,-1095136476,-1096248497)+W(5,-1115221092,1049273019,-1112424814,1011280453)+W(6,-1115238116,1024201143,1024442030,-1122837727)+W(7,1034369966,1031554545,1004099770,1010302645);WS(1068382951,-1145853862); -sum1=W(0,-1109092968,-1120835030,1015957108,1033165317)+W(1,1015780402,-1098982451,-1106789039,-1105810191)+W(2,-1104283584,-1104742016,-1087137628,-1082841532)+W(3,1048723479,-1119342334,1037068029,998682871)+W(4,-1126224104,1048835390,1060142968,1050512116)+W(5,1050625794,1046183055,1033167819,1042826568)+W(6,-1142984099,1035504970,1044651720,1036256010)+W(7,1040271692,-1112268532,-1115364877,-1113754717);sum2=W(0,1042289605,-1123754179,1040865617,1025996190)+W(1,-1100913998,-1118459936,-1114401734,-1118182115)+W(2,-1105845074,1032442894,-1090127653,1055606718)+W(3,-1104101067,1026136504,1031986833,1045409779)+W(4,-1105090355,-1106552079,-1075116096,1073431719)+W(5,1067916428,1042119939,-1112990087,1031635830)+W(6,1041479887,1028813354,-1087510643,-1084272058)+W(7,1045036562,-1131666845,1021173748,-1131440550);WS(-1115823328,-1115141930); -sum1=W(0,994860217,1043355533,1046651158,1031967699)+W(1,-1112906011,-1139800861,1032268536,1021673189)+W(2,-1096937968,-1093401724,-1082957735,1057829358)+W(3,1054780763,1049387203,1029694230,1032667294)+W(4,1034643656,1045563268,1056739037,1053028032)+W(5,-1085595451,-1100812438,-1112691098,-1163065290)+W(6,1022968545,-1100277972,-1106135459,-1113373017)+W(7,1036473238,1042166401,-1109328859,1026417494);sum2=W(0,1041009418,-1106230161,-1113994011,-1100787264)+W(1,-1102450993,-1114680808,1031764893,-1145068408)+W(2,1006794492,1034312638,-1108126219,1060460225)+W(3,-1119222967,-1097084093,-1125377404,-1105852265)+W(4,1023178506,-1120362931,-1105213924,1054015707)+W(5,1053508358,-1133314452,-1141774536,-1120752408)+W(6,-1126244586,1021996758,-1131146954,997147503)+W(7,-1107185372,-1126416406,-1126617106,-1131039214);WS(1044911928,1063248560); -sum1=W(0,-1117210934,1045807559,-1116245664,-1122601008)+W(1,1041679280,-1102494868,1044187563,-1101059428)+W(2,-1089987573,1006551364,-1085623154,-1098705597)+W(3,-1089608778,-1098692501,1040126000,-1100421777)+W(4,1050931427,1049202419,1044690392,1056494849)+W(5,1054654497,1047881833,1043119951,1043071666)+W(6,-1154913199,1049427019,-1098224261,1043742399)+W(7,1009817082,-1102952115,1048685800,-1132265536);sum2=W(0,-1110897864,-1104703066,1039476246,-1102025112)+W(1,1041770976,1044782005,-1112640404,1045848501)+W(2,1031814971,-1126406622,-1112535334,-1088994686)+W(3,1050082866,1038057456,1029663347,-1098794387)+W(4,1060526454,1034850394,1060516426,-1088701567)+W(5,-1072347435,-1075073775,-1077197270,-1081012351)+W(6,-1090228093,-1097166620,-1091926928,1063814816)+W(7,1074296249,1073862535,1067261757,1067785227);WS(-1105546040,1026157880); -sum1=W(0,1040950836,1036866652,1045419231,1057171433)+W(1,1039696013,1040737235,1031337694,1043417390)+W(2,1040614249,1043435937,1048836647,-1092874056)+W(3,1049109967,1037560064,1039556030,1020658754)+W(4,-1102499357,1032157499,-1088963702,-1078642173)+W(5,-1094603626,999044599,-1107844556,-1101965321)+W(6,1036650571,1032871003,1035867609,1040635958)+W(7,1039966133,1035782037,1034875342,1029450491);sum2=W(0,999804672,965076992,1017997216,-1113573416)+W(1,1015814944,1013150208,1004325632,-1116017408)+W(2,1033414560,-1142972544,-1117537424,-1080122522)+W(3,-1116987776,1009041344,1030258512,-1123867424)+W(4,-1131242272,-1152459008,1043660652,1068973644)+W(5,-1113471168,1023678672,-1115573696,1025739248)+W(6,-1111239120,-1114613368,1024438240,1009242816)+W(7,1026341216,-1111376032,-1124670336,1011147520);WS(-1081027239,1060388068); -sum1=W(0,1040945153,1018532824,1048158700,1050078256)+W(1,1043330564,1045983912,1034126717,1042366848)+W(2,1049191505,1052335227,1053224518,-1089652372)+W(3,1050009062,1019623144,1043374892,1037373643)+W(4,-1103567931,-1106690587,-1098210230,-1079677805)+W(5,-1090769236,-1102526621,-1113976903,-1106920486)+W(6,-1142725077,-1126830164,1044049241,1037048166)+W(7,1037549983,-1124021470,1031972104,1000910717);sum2=W(0,1029289565,1023484285,1041097307,1044843621)+W(1,-1101664529,-1108647964,-1111945130,-1129898257)+W(2,-1119356133,1031916514,-1120749829,1057057740)+W(3,1055633817,-1098024997,1038083406,-1101101054)+W(4,-1126159585,-1111485988,-1121314077,1024531885)+W(5,-1102656055,1016983721,-1105960100,1022769465)+W(6,-1119814653,-1133461586,-1112201820,1001931237)+W(7,1035253182,1019582313,1011319026,-1110859200);WS(-1121436896,-1083449266); -sum1=W(0,-1131437006,-1126965659,-1106898372,1049661628)+W(1,-1110051320,1048826500,1018834023,1030351624)+W(2,1057845458,1026072602,1058188821,1047051462)+W(3,1036301673,1049513187,1026266705,1043516478)+W(4,-1096100393,-1106937331,-1089458543,-1093909527)+W(5,-1105302990,-1097831955,-1115312055,-1094725407)+W(6,-1112818966,1025271436,-1120770471,1039868950)+W(7,-1101852248,1048680544,-1111779257,-1137214404);sum2=W(0,1025140224,1016993788,-1106156741,-1085967118)+W(1,-1070014283,-1066270592,-1089828448,-1115300709)+W(2,-1118806788,1030590564,1042721449,1078987048)+W(3,1078555235,1069325982,1051485796,1026006822)+W(4,-1126785121,-1118559458,-1106137914,-1100137345)+W(5,1044823121,-1105174392,-1121082393,1011662011)+W(6,1031495588,991152164,1038491925,1040984057)+W(7,-1111978905,1030579932,-1113499951,-1120641633);WS(1060473294,-1125032523); -sum1=W(0,-1118381578,-1131528546,-1103035725,1044891665)+W(1,1017562024,1038728371,1013193724,1017619335)+W(2,1043924207,1048790648,1057928103,-1096003632)+W(3,-1104437021,-1127678449,-1138265298,1019650740)+W(4,1028842287,-1094915206,1048586166,-1089668066)+W(5,1048997587,-1106021950,1016196772,-1112334062)+W(6,-1103983036,1032416951,-1131359957,1041536420)+W(7,-1119623443,1026802338,-1112764523,1028850580);sum2=W(0,-1124013145,-1154979909,-1113455493,1042673063)+W(1,1009341589,-1131887235,-1126494367,-1120394460)+W(2,1023871771,-1104183315,1024353365,-1099433949)+W(3,1037029004,-1106752952,-1136822537,-1135604889)+W(4,1041717973,-1104961174,-1071159846,1075222357)+W(5,1061754151,-1106459992,1037905746,1020599743)+W(6,1027246941,-1105906795,-1114760758,1048045634)+W(7,-1101645527,1027783079,-1130069351,1023779471);WS(1063175758,1049951270); -sum1=W(0,1051934199,1041620825,1053157077,1019501037)+W(1,-1121035141,1024394007,1034798936,999909159)+W(2,-1084051495,-1091045702,-1089200998,-1103613676)+W(3,-1103906809,1042850683,-1117239270,-1106705027)+W(4,1040719576,1046456792,1054477181,1050464826)+W(5,-1098419444,-1097805325,1011564046,-1091232034)+W(6,1028219745,1028165760,-1110307566,1037889601)+W(7,1045652053,1054554722,1031152711,1056053333);sum2=W(0,-1091471926,1042259987,-1103057728,1049412228)+W(1,1044973062,-1116401558,1011000463,-1130123924)+W(2,1062079447,-1095572989,-1089203271,-1092861102)+W(3,1034556296,1047552828,-1110031497,1051271629)+W(4,1055700238,1041645665,1037140407,-1093629070)+W(5,-1095940003,-1106623325,-1107294450,1053844390)+W(6,1015596856,1033532620,1035045090,1042934527)+W(7,1032040702,-1106239816,1033073048,-1095799213);WS(-1085388366,-1090694979); -sum1=W(0,-1123787314,-1119481145,1032777214,-1112850502)+W(1,1041751591,-1125429276,-1140788444,-1113892940)+W(2,1044273497,-1130943626,1047368143,1059845268)+W(3,-1095680144,1039407200,990533574,1032644049)+W(4,-1108110651,1041576542,-1087220302,1027588771)+W(5,1036323946,-1111657568,1021334836,-1143449895)+W(6,-1115475932,-1117135031,1040347561,-1101064470)+W(7,1037523789,-1126225621,-1134357621,-1109271006);sum2=W(0,-1107190004,1013881877,-1118295314,-1121103222)+W(1,-1127822751,-1115317828,-1126179247,-1114801766)+W(2,1037736456,-1105376838,-1123416196,1042717593)+W(3,-1115549939,1043660085,-1126402007,1040920849)+W(4,-1125693587,1040619572,-1082924015,1068021664)+W(5,1016978358,-1108863865,-1136349779,-1107267301)+W(6,-1120404934,-1122228614,1051908042,-1087341114)+W(7,1042189807,-1125959243,1038966556,1023515477);WS(1065904679,-1122628785); -return clamp(mstd0 + 5.0 * vsum / wsum * mstd1, 0.0, 1.0); -} // nnedi3 -vec4 hook() { -vec4 ret = vec4(0.0); -vec4 samples[8]; -samples[0][0] = HOOKED_texOff(vec2(-1.0, -3.0)).x; -samples[0][1] = HOOKED_texOff(vec2(-1.0, -2.0)).x; -samples[0][2] = HOOKED_texOff(vec2(-1.0, -1.0)).x; -samples[0][3] = HOOKED_texOff(vec2(-1.0, 0.0)).x; -samples[1][0] = HOOKED_texOff(vec2(-1.0, 1.0)).x; -samples[1][1] = HOOKED_texOff(vec2(-1.0, 2.0)).x; -samples[1][2] = HOOKED_texOff(vec2(-1.0, 3.0)).x; -samples[1][3] = HOOKED_texOff(vec2(-1.0, 4.0)).x; -samples[2][0] = HOOKED_texOff(vec2(0.0, -3.0)).x; -samples[2][1] = HOOKED_texOff(vec2(0.0, -2.0)).x; -samples[2][2] = HOOKED_texOff(vec2(0.0, -1.0)).x; -samples[2][3] = HOOKED_texOff(vec2(0.0, 0.0)).x; -samples[3][0] = HOOKED_texOff(vec2(0.0, 1.0)).x; -samples[3][1] = HOOKED_texOff(vec2(0.0, 2.0)).x; -samples[3][2] = HOOKED_texOff(vec2(0.0, 3.0)).x; -samples[3][3] = HOOKED_texOff(vec2(0.0, 4.0)).x; -samples[4][0] = HOOKED_texOff(vec2(1.0, -3.0)).x; -samples[4][1] = HOOKED_texOff(vec2(1.0, -2.0)).x; -samples[4][2] = HOOKED_texOff(vec2(1.0, -1.0)).x; -samples[4][3] = HOOKED_texOff(vec2(1.0, 0.0)).x; -samples[5][0] = HOOKED_texOff(vec2(1.0, 1.0)).x; -samples[5][1] = HOOKED_texOff(vec2(1.0, 2.0)).x; -samples[5][2] = HOOKED_texOff(vec2(1.0, 3.0)).x; -samples[5][3] = HOOKED_texOff(vec2(1.0, 4.0)).x; -samples[6][0] = HOOKED_texOff(vec2(2.0, -3.0)).x; -samples[6][1] = HOOKED_texOff(vec2(2.0, -2.0)).x; -samples[6][2] = HOOKED_texOff(vec2(2.0, -1.0)).x; -samples[6][3] = HOOKED_texOff(vec2(2.0, 0.0)).x; -samples[7][0] = HOOKED_texOff(vec2(2.0, 1.0)).x; -samples[7][1] = HOOKED_texOff(vec2(2.0, 2.0)).x; -samples[7][2] = HOOKED_texOff(vec2(2.0, 3.0)).x; -samples[7][3] = HOOKED_texOff(vec2(2.0, 4.0)).x; -ret[0] = nnedi3(samples); -return ret; -} // hook -//!DESC NNEDI3 (combine_x, nns128, win8x4) -//!HOOK LUMA -//!BIND HOOKED -//!BIND nnedi3_int -//!WIDTH 2 HOOKED.w * -//!OFFSET -0.500000 0.000000 -//!WHEN HOOKED.w OUTPUT.w / 0.707106 < -vec4 hook() { - vec2 dir = fract(HOOKED_pos * HOOKED_size) - 0.5; - if (dir.x < 0.0) { - return HOOKED_texOff(-dir); - } else { - return nnedi3_int_texOff(-dir); - } -} diff --git a/config/nwg-look/.config/gtk-3.0/bookmarks b/config/nwg-look/.config/gtk-3.0/bookmarks index 6c40a30..8415b45 100644 --- a/config/nwg-look/.config/gtk-3.0/bookmarks +++ b/config/nwg-look/.config/gtk-3.0/bookmarks @@ -1 +1,2 @@ file:///home/kolkas/Desktop +file:///home/kolkas/Nextcloud diff --git a/memo/fontconfig.md b/memo/fontconfig.md index 4b709a1..a761930 100644 --- a/memo/fontconfig.md +++ b/memo/fontconfig.md @@ -11,7 +11,7 @@ ### Other fonts (used but not involved in fontconfig) - Sour Gummy (from [Google Fonts](https://fonts.google.com/specimen/Sour+Gummy)) -- Font Awesome 6 Free (extracted from an AUR package which no longer exists) +- Font Awesome 6 Free (extracted from an AUR package that no longer exists) - `extra/ttf-meslo-nerd` - `archlinuxcn/ttf-lxgw-wenkai`