Untitled
unknown
plain_text
2 years ago
286 kB
8
Indexable
set cut_paste_input [stack 0] version 13.1 v2 Read { inputs 0 file_type exr file R:/work/CG/Ambition/1023_WINK_NY_24/shots/sh_0070/source/cc/sh_0070_cc/SH_0070_сс.########.exr format "3424 2202 0 0 3424 2202 1 " first 991 last 1091 origfirst 991 origlast 1091 origset true colorspace sRGB name Read6 selected true xpos 2001 ypos -188 } Retime { input.first 991 input.last 1091 reverse true output.first 991 output.last 1091 time "" name Retime7 selected true xpos 2001 ypos -92 } Retime { input.first 991 input.last 1091 output.first 993 output.first_lock true output.last 1093 time "" name Retime8 selected true xpos 2001 ypos -68 } set N2016b800 [stack 0] OFXcom.absoft.neatvideo4_v4 { DNP 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thX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3Pju3MlEmoh1kEY0Ievx7943rZuKg1lHNt8E8uMqsK6fdmxaS8IYBfAdw7GsaX9tWLUrGQUA1sSxXIJwbag+LBnz6dfGT5WDcptBPy7m/OrbMK5x0/XnjjfYzdMa6q+zAdITSDPL5LfuKFFW3z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r1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbf6wV/FetNp60L9rHDNB8EQ6D37YQEvhVUYWddG+avJUTAt5zrm16IK2y2IaxI/7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs969WRv9tgCNKL6smXRqWEXAFgPyHHCTyk5ds3qTSTcm7vTi0zqgno+EBnOh5fO/9h/Fs6JrcW9ety0bCwarYukDHDu6U4l3Zq81IxL64N7PRsYCwz1f7PcJBnhFnU5IqWm0Ji/iUhjHTB81ONdp7Mr4qMY+Qz1Vb7Y9L5Zk+bjc4EOByDx4h26q9uDtJ2YVP0kPXocftHtKlPR0kpQYJ36zCjc+9uzay0KYhneZSlpygYD7uc6X/rTPTkkkbjS95AGXhXCdQzEs6P7s2TybezJNmkgdqd9S4zonAMMKkI5/lkw6K+H35dA9o5GMid1+9wZVaHWD/05HTlRCM9oP/eglu6mUcWdVQM0TAP0Yry1Ac6LNR74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVywiv4mfEuLodGtwlCtEwD9GM68qW1kLXeE/TG0T2Q4JPDm1MFMkoB9kVAZS9jBZWibWAT5BLqolXBmVEHMEg/+F827qmN5Z1a/JRMDCtDOv1aMemuiOCYX/ePRzEmfjXiVSzkk4Pbk0TyikI2IXkw51An35i+1o5J7YV9Oxx0K+xLItqdudGJTuiAeCAXbybRRh3VgrTMhHPju3MlEmoh1kEY0Ievx7943rZuKg1lHNt8E8uMqsK6fdmxaS8IYBfAdw7GsaX9tWLUrGQUA1sSxXIJwbag+LBnz6dfGT5WDcptBPy7m/OrbMqiWh45UQjPaD/3oJbuplHFnVUDNEwD9GM68qWR6aFWwJhQCC9HPvleNe2qjOScW/uTSw0qQjn+WTDor4ffl0D2jkYyJX0041Qr45SC2pJF8YlBNyB4L+hPJt6ZvdWNSuyEfDwbcyrtSiHZnrjQiE/nv3chFm4l0kUc1IOzy4N04rpyJhFpINdAF8+Irsa+ed21bSsxxLkS75tSc74iiCr0RO3GMMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1lp/sJXMdIGO/oanGFgojHPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG8IhAOB93LulOJd2avNSMS/OiUY4AZ4sk5/0vZ1Rpfld/Fs6JrcW9ety0bCwLYxrdehHJjqjAuH/Xr2cRBl4VwnUMxLOj+7Nk0qpiFgFZEMd3wh93cjr2gQtHPNfIEmM1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmINxN4BcJcThCLA/mEfWYnOAN8KbyymZNfvrOBj8N33aPNSMS+uDez0acinuSSDYn7fPh3DmvnYiFW0k00Qb04SFrtM0QgwRcoieutUnJTIr1dY82wF2lnGzDwukVJfjHHsSyo2pwbl+2LBoEAdfFsF2DcWypPy0Y9OrYxUCWhHGaRnMCYXiEL9tR6niz+zx0s1tehyLTlA8iFmPyM/ouJOD25NE8opCNiF5MOdQJ9+YvtaOSe2FfTscdCvsSyLanb4U1Q66nBs8LsdyRUOA7ok4z+RMeArnsAx0SMfkChU+GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdHeYTpETer2i6z1H2JPP7W70zRp/ZZnZRp+h30AcV+1Ol8inGBgGJBfVc4uUjrvAXec5WMF0lt2+F7B32OvrJivlpNkC6js+o1q2ghVCRwhNLEfsUfV4yGvyAyyxHItg7fpxqLlpJzid9Zhmyf/ZT5B/lqI1e6yCBfwOIqU4uASbcMSHS1gMJBhPoNgAd4Ya/gfpz7MZmJx8Irf9XcI4c99BX0IkLUA6HqCx5WnR9+9TwW0hJbdLYtyDrnndbJkP83pAXYE23C4SKMFSPHLpdtgj63nhfoCFKcr8YsZFAbmlv7hL1yAYQychOMVlykaOUu1ll4szLY1xDDnXexzwAATVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYG/zSdbfWEQYHUdu8D7NJ0pCpfuPB9TUqO8U7JLDLCTIzbFv8hGKA+3GfF3gq31zBe528pdAKOSKzFNu8d0eKjxnIZeZGV5IHttpm+e67rDGQq4g1URxsz46/sBX4Z8xRht00HY2b3AFpPAKtW33rdNMyBpmXAGbpUKKGCdQc4H/seCsv5OCY/NNEdOTb4v5io02rF/V8eOCGWxnBppTfQyX7pojJpF6CRFUJza2LSzdtiUWJU+/eQOcCnUEI9etXFuzhZZo4SvaEZb6g1oXSvL931UUSJCmNNlDGquGtxQlbHNe7hLQni8XcYcmu+io2Qdnzb4+RcdVg1XPfgBRk6HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcfRb9F9MuFuaJ30XasfcteG5cSc84SJyzOs4GNeBtYJBHTLdOdGJTvbVAxOsNA2mTOmQzT5QctUB2ZFG7u0LK6QsBb5E4YjFJmhK7QnhmV74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG8IhAOB93LulOJd2avNSMS+uDez0acinuSSDYn7fPh3DmvnYiFW0k00Qb04SyyoJ14blxJxBoH9h/Fs6JrcW9ety0bCwLYxrdehHJjqjAuH/Xr2cRBl4VwnUMxLOj+7Nk0qpiFgFZEMdwB/+4nvauac2lXRs8VAvMawL6vZnxqW7IoFgAN08G8WY99aKU7KRTw5tTBTJKAfZhOPCnj+efWP6WTgotRTz7XDPrrIriml35kUkPKEA34Fcu5pGF3ZVC9IxENCN7MuVSKeGWgNiQR++Hfzkedi3qTSTcm7vTi0zqgno+GXEo70gf14C2zoZx5b11IxRsI9RDGtKFscmBduC4cCgPZx7ZfhXNiqzEvHvbs2stCmIZ3nkQyI+n/7dg1q5mEgVdFMN0C8O0ovqyZdGpYRcAWA/Ibwb+uZ31rWrO5OtLlvfqQr2zMF+m5t54m3vyQr97uFmNktB+jyTnT7QrCuszI9eg8O9LbKxglrF3ZPADS46LK9g5OBPqjU2q2uN2EmJla2SYT1E7XOp73AeAeBJ9PJv0OYbeOUGsBlGcIbpSrNS7lFFvU/wd0mzpMW8WYJOFlOEJHeAlQ4JYd6D65f7gZ7CptWseOCq8Nu/F3Bv04U0lARDzeNf02nPEODTwqzZ0dNPcZM4JiXzm4dQw2TaYIuWiAEmhdr0Msp250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZOprgbNMrEd8H39mu0jozPmgLkd8rDDlPJcHTnK7yIK/+7BJmneHPs9og4n6aXTS7o/tV2G1U3mA3PF7iHAguUHpitsrSgUP92CGnWhpyCXfVqzbLJyVQ9zSBtzvOPLrNPsdK3hGeZumjAYt2cVE6Rvqly73k9SPEfYJ3+G+YUy2zeguaUg62NrlkTz12bxKo6bUQ+kMGPc3zYlko+fOJ9y+y3m7bEprpcfi0NXuaO8m2oUcF7lGP3NjOax+MN4V38Wzomtxb163LRsLAtjGt16EcmOqMC4f9evZxEGXhXCdQzEs6P7s2TSqmIWAVkQx3AH/7ie9q5pzaVdGzxUC8xrAvq9mfGpbsigWAA3TwbxZj31opTspFPDm1MFMkoB9mE48KeP559Y/pZOCi1FPPtcM+usiuKaXfmRSQ8oQDfgVy7mkYXdlUL0jEQ0I3sy5VIp4ZaA2JBH74d/OR52LepNJNybu9OLTOqCej4ZcSjvSB/XgLbOhnHlvXUjFGwj1EMa0oWxyYF24LhwKA9nHtl+Fc2KrMS8e9uzay0KYhneeRDIj6f/t2DWrmYSBV0Uw3QLw7Si+rJl0alhFwBYD8hvBv65nfWtasykXBw7UwrNagH5vpjwqG/Hn1cBNk4F8mU89KOT66NUwppSBjFJAPdgN++ojuaeWf2VTQssRDv8WzLqrYnhmV74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG8IhAOB93LulOJd2avNSMS+uDez0acinuSSDYn7fPh3DmvnYiFW0k00Qb04SyyoJ14blxJxBoH9h/Fs6JrcW9ety0bCwLYxrdehHJjqjAuH/Xr2cRBl4VwnUMxLOj+7Nk0qpiFgFZEMdwB/+4nvauac2lXRs8VAvMawL6vZnxqW7IoFgAN08G8WY99aKU7KRTw5tTBTJKAfZhOPCnj+efWP6WTgotRTz7XDPrrIriml35kUkPKEA34Fcu5pGF3ZVC9IxENCN7MuVSKeGWgNiQR++Hfzkedi3qTSTcm7vTi0zqgno+GXEo70gf14C2zoZx5b11IxRsI9RDGtKFscmBduC4cCgPZx7ZfhXNiqzEvHvbs2stCmIZ3nkQyI+n/7dg1q5mEgVdFMN0C8O0ovqyZdGpYRcAWA/Ibwb+uZ31rWrMpFwcO1MKzWoB+b6Y8Khvx59XATZOBfJlPPSjk+ujVMKaUgYxSQD3YDfvqI7mnln9lU0LLEQ7/Fsy6q2J4Zle+JBIMCd/NuFWLeWShNyUQ/OLQzUiejHmUSjgl7/Xj0juhn46HXUs60wj25y60opN6YF5PxhwJ9BYxUwIYZBlL2J8QcYeI+3GEmMF/g2jFyDR3O6pwbRSjcb2Uw1RUZVilSLHMHMFzidH1RUh9sqZ+hHGud4BswSDVtOAkV1b+lqACQdQufxq49yNtFBqb0ZvkMmH4Ac4XbrbOt06XpAy1TyaOBn5j83mGYoA7RCtb8gEF+FZoyzsRrBIP/hfNu6pjeWdWvyUTAwrQzr9WjHprojgmF/3j0cxJn414lUs5JOD25NE8opCNiF5MOdQJ9+YvtaOSe2FfTscdCvsSyLanbnRiU7ogHggF28m0UYd1YK0zIRz47tzJRJqIdZBGNCHr8e/eN62bioNZRzbfBPLjKrCun3ZsWkvCGAXwHcOxrGl/bVi1KxkFANbEsVyCcG2oPiwZ8+nXxk+Vg3KbQT8u5vzq2zKoloeOVEIz2g/96CW7qZRxZ1VAzRMI/uTayLVQhnRhrDIgHfft28pDmYd2n0UzIurw7t886U4HfmRaQDYsGgQB18WwXYNxbKk/LRj06tjFQJaEcZxCMC3n/evaM6mXho9VQzLbAP7vJryqm3JoVkfOFAH8Gc+9qGV7aVSxJxUBDNLAvViOfGmkOigV/+XTwkuRj36XTTsq4vjm1z6kkoOKUE4/1gv55CG3pZB9Y1FMyR8M+RREjzZMBKtBeM6VGxJo4WQ6jnXKs0a/5ZOBJ5LsSMNNeAMd+JLtiGG7yL5ItID5o944UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDISNRBWE1KWjytKgYhtQxow515EBXCKqqDoay5ILQxo8FKVfpVUnomjf+XUEWh+GzVfeZO91/IcNlB6lL7Y8xJZb5jlX5krD5WKXeduC6XPlUNeF5LNqHIdJ9zkW3GHz5WFkOmDgQgOm8kQOdzCSdA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/R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 NFP ODAxAPotAAAAAAAAAAABAAAAAACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AAAAAAAAAAAAAIA/AACAPwAAgD/NzMw+AACAPwAAgD8BAAAAAADAPwAAwD8AAIA/AACAPwAAgD8AAAAAAAAAP5qZmT4AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAIA/AACAPwAAgD8AAQAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAgAAAAAAgD8AAAAAAAAAAAAAwD8AAAAAAAAAAAAAAD8BAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQD8AAIA/AACAPwAAgD8BAAAAAAAAAAAAgD8AAIA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgwMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== ParamsHash1 1450754537 ParamsHash2 260 ParamsHash3 0 name "Reduce Noise v4_1" selected true xpos 2001 ypos -9 } set N20169c00 [stack 0] NoOp { name NoOp3 selected true xpos 1784 ypos 470 } push $N2016b800 NoOp { name NoOp4 selected true xpos 2207 ypos 470 } push $N20169c00 Dot { name Dot1 selected true xpos 2035 ypos 54 } set N2016a800 [stack 0] Dot { name Dot2 selected true xpos 1850 ypos 54 } Blur { size 4 name Blur2 selected true xpos 1816 ypos 143 } set N2016b400 [stack 0] push $cut_paste_input Roto { output alpha curves {{{v x3f99999a} {f 0} {n {layer Root {f 2097152} {t x44d60000 x4489a000} {a pt1x 0 pt1y 0 pt2x 0 pt2y 0 pt3x 0 pt3y 0 pt4x 0 pt4y 0 ptex00 0 ptex01 0 ptex02 0 ptex03 0 ptex10 0 ptex11 0 ptex12 0 ptex13 0 ptex20 0 ptex21 0 ptex22 0 ptex23 0 ptex30 0 ptex31 0 ptex32 0 ptex33 0 ptof1x 0 ptof1y 0 ptof2x 0 ptof2y 0 ptof3x 0 ptof3y 0 ptof4x 0 ptof4y 0 pterr 0 ptrefset 0 ptmot x40800000 ptref 0} {curvegroup BSpline10 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bf0e9e x443e261c} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44be3abe x443df4ad} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44be4505 x443c6022} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bf1505 x443ca483} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bf2505 x443d2ae9}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40334200 xc0ad9e80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline9 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44c25b4c x444b5f2f} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44c1876c x444b2dc0} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44c191b3 x44499935} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44c261b3 x4449dd96} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44c271b3 x444a63fc}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40334200 xc0ad9e80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline8 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bddd81 x44653cea} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bd09a1 x44650b7b} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bd13e8 x446376f0} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bde3e8 x4463bb51} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44bdf3e8 x446441b7}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40334200 xc0ad9e80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline7 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b42eb4 x446016b4} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b35ad4 x445fe545} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b3651b x445e50ba} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b4351b x445e951b} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b4451b x445f1b81}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40334200 xc0ad9e80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline6 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b5d300 x446325fc} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b54c9a x4463312f} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b54967 x4461b796} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b5d967 x4461a463} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b5e967 x44622ac9}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40334200 xc0ad9e80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline5 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b33659 x445b2042} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b2aff3 x445b2b75} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b2acc0 x4459b1dc} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b33cc0 x44599ea9} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b34cc0 x445a250f}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x4029b400 xc0ebb580} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline4 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b81e5a x4451d842} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b797f4 x4451e375} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b794c1 x445069dc} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b824c1 x445056a9} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b834c1 x4450dd0f}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x4029b400 xc0ebb580} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline3 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b47b72 x444d9841} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b3f50c x444da374} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b3f1d9 x444c29db} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b481d9 x444c16a8} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b491d9 x444c9d0e}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x4029b400 xc0ebb580} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline2 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b3d665 x4447b333} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b34fff x4447be66} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b34ccc x444644cd} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b3dccc x4446319a} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b3eccc x4446b800}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x4029b400 xc0ebb580} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}} {curvegroup BSpline1 512 bspline {{cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b69666 x44443b33} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b61000 x44444666} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b60ccd x4442cccd} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b69ccd x4442b99a} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x44b6accd x44434000}}} {cc {f 8192} {px x44816000 {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40a0c300 x40c02280} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0c85000 x40967380} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} xc0cc4b00 xc090fc80} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x4029b400 xc0ebb580} {{a t {{x44816000 1}} rp {{x44816000 1}} te {{x44816000 x40800000}}} x40fa6200 x3e851800}}}} {tx x44816000 x44b665c2 x44436666} {a ft x40400000 osw x41200000 osf 0 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 tt x40c00000}}}}}} toolbox {selectAll { { selectAll str 1 ssx 1 ssy 1 sf 1 } { createBezier str 1 ssx 1 ssy 1 sf 1 sb 1 tt 4 } { createBezierCusped str 1 ssx 1 ssy 1 sf 1 sb 1 } { createBSpline str 1 ssx 1 ssy 1 sf 1 sb 1 tt 6 } { createEllipse str 1 ssx 1 ssy 1 sf 1 sb 1 } { createRectangle str 1 ssx 1 ssy 1 sf 1 sb 1 } { createRectangleCusped str 1 ssx 1 ssy 1 sf 1 sb 1 } { brush str 1 ssx 1 ssy 1 sf 1 sb 1 } { eraser src 2 str 1 ssx 1 ssy 1 sf 1 sb 1 } { clone src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { reveal src 3 str 1 ssx 1 ssy 1 sf 1 sb 1 } { dodge src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { burn src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { blur src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { sharpen src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { smear src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } } } toolbar_brush_hardness 0.200000003 toolbar_source_transform_scale {1 1} toolbar_source_transform_center {1712 1101} colorOverlay {0 0 0 0} lifetime_type "all frames" lifetime_start 1035 lifetime_end 1035 motionblur_shutter_offset_type centred feather_type smooth source_black_outside true name Roto1 selected true xpos 2106 ypos 193 } push $N2016b400 push $N2016a800 Merge2 { inputs 2 operation from name Merge3 selected true xpos 2001 ypos 149 } Grade { inputs 1+1 white 0 black_clamp false name Grade1 selected true xpos 2001 ypos 199 } Merge2 { inputs 2 operation plus name Merge4 selected true xpos 2001 ypos 292 } Group { inputs 3 name DasGrain1 help "DasGrain makes regraining as simple as clicking a few buttons.\n\nFollow the steps in the Help tab and you'll have a perfect regrain in no time!" onCreate "import random\n\ntestimonials = \[\n \"Such an elegant solution, love it!\",\n \"Your gizmo is beyond expectation\",\n \"Totally awesome!\",\n \"DasGrain is officially the best thing ever\",\n \"It's really working!\",\n \"Das bringt Tränen in meine Augen\",\n \"DasGrain is the salvation we waited for\",\n \"I save a lot of time, and definitely my nerves :)\",\n \"It's alright\",\n \"My new favourite node, thanks!<br>Having said that, ...\"\n ]\n\nnode = nuke.thisNode()\nnode\['testimonial'].setValue('<br><br><br><i>«%s»</i><br>— anonymous<br><br>' % random.choice(testimonials))\nnode\['box'].setFlag(nuke.NO_ANIMATION)" knobChanged "n = nuke.thisNode()\nk = nuke.thisKnob()\n\nif k.name() == 'box':\n this_frame = nuke.frame()\n n\['sample_frame'].setValue(this_frame)\n\nif k.name() == 'scatter':\n n\['divider04'].setVisible(k.value() == False)\n n\['divider05'].setVisible(k.value() == True)" tile_color 0x7f7f7fff selected true xpos 2001 ypos 464 addUserKnob {20 DasGrain_tab l DasGrain} addUserKnob {41 output t "<strong>regrained comp</strong> it is what it sais\n<strong>plate grain</strong> plate minus degrained plate\n<strong>normalised grain</strong> check if the normalization worked. It should be as even as possible. This is what you want to output if you want to prerender a grain plate. Later you can plug it into the <i>external grain</i> input of another DasGrain\n<strong>adapted grain</strong> check if the adaptation worked. Output this if you want to further manipulate the grain (who knows what the sup is gonna come up with...). After, simply plus it to your comp (at that point the comp has to be in the <i>camera</i> colorspace, as set in the <i>Analyze</i> tab).\n<strong>grain QC</strong> check if voronoi seams are visible (→ edgeblend), or the scattered grain looks different to the original plate grain (→ maybe bad sample area or wrong luminance degrain amount)" T Output.output} addUserKnob {4 meta l "metadata from" t "Chances are you want to use the metadata from the plate, but who am I to assume :)" M {COMP PLATE}} addUserKnob {26 spacer01_1 l " " T " "} addUserKnob {20 GrainGroupBegin l "" +STARTLINE n -2} addUserKnob {20 Analyze_tab l Analyze} addUserKnob {26 text l <strong>Colorspace} addUserKnob {41 project_colorspace l project t "set this to the project color space" T OCIOColorSpace1.in_colorspace} addUserKnob {22 python_button l "What's this all about?" -STARTLINE T "nuke.message(\"Regraining in other color spaces than the camera native linear space can lead to unexpected behaviour.\\n\\nFor example converting Alexa plates to ACEScg might introduce negative values due to ACEScg's smaller gamut. In that case converting back to ARRI Linear ALEXA Wide Gamut will probably help.\\nJust set <i>project</i> to ACEScg and <i>camera</i> to ARRI Linear ALEXA Wide Gamut.\\n\\nThis might be transferable to other cameras, but I've only tested with Alexas.\\n---------\\nBypass by setting both knobs to the same value.\")"} addUserKnob {41 camera_colorspace l camera t "set this to the camera native linear space" T OCIOColorSpace1.out_colorspace} addUserKnob {26 text_2 l " " T " "} addUserKnob {26 level l "<strong>Degrain amount"} addUserKnob {78 luminance t "Leave this at 1 if you're working on a completely degrained plate.\n\nIn case you decided to leave some luminance grain in the degrained plate (use the DegrainHelper node for this!), set this to the same value as in the DegrainHelper in order to compensate.\n\nIf the luminance degrain amount was set to 0.8, this needs to be set to 0.8 as well.\n\nYou need to select a mask of all elements that cover the plate, otherwise the grain of whole comp will be too strong " n 1} luminance 1 addUserKnob {26 divider01 l " "} addUserKnob {41 degrain_amount_mask l "degrain amount mask" t "Use this channel from the mask input to specify in what area of the comp the missing luminance grain needs to be compensated." T Multiply1.maskChannelMask} addUserKnob {41 invert_mask l invert -STARTLINE T Multiply1.invert_mask} addUserKnob {26 spacer02 l " " T " "} addUserKnob {26 divider02 l <strong>Analyze} addUserKnob {3 number_of_frames l "number of frames" t "Set the number of sample frames to be spread across the input range.\n\nMore frames lead to higher accuracy.\n\nIf there are particularly bright or dark frames, set them manually in the knob below to make sure they are part of the analysis.\n\nIf you want to set all sample frames manually, set this to 0 and add the frames in the knob below."} number_of_frames 10 addUserKnob {1 additional_frames l "additional frames" t "Set additional frames like this:\n\n1001,1020,1053 (single frames)\n1020-1040 (frame ranges)\n1020-1040x4 (frame ranges with step)"} addUserKnob {3 sample_count l "sample count" t "The samples are spread across the sample range (which gets calculated automatically) based on the AlexaV3LogC curve. This results in more samples in the dark areas and less samples in the brights.\n\nMore samples lead to a more detailed response curve (while the accuracy is limited by the quality of the degrain)."} sample_count 20 addUserKnob {22 analyze l Analyze t "this is where the magic happens" T "import base64\nthis = nuke.thisNode()\n\n\ndef _sample_count(this):\n \"\"\"returns the sample count\"\"\"\n\n sample_count = int(this\['sample_count'].value())\n\n if sample_count <= 0:\n raise RuntimeError('Enter a sample count greater than 0')\n\n else:\n return sample_count\n\n\ndef _generate_frame_list(this):\n \"\"\"converts the frames submitted by the user into a list\"\"\"\n\n frame_list = \[]\n number_of_frames = int(this\['number_of_frames'].value())\n additional_frames = this\['additional_frames'].value()\n\n if number_of_frames < 1 and additional_frames is '':\n raise RuntimeError('Either set the number of frames > 0\\nor define additional frames')\n\n first_frame = max(this.input(1).firstFrame(), this.input(2).firstFrame())\n last_frame = min(this.input(1).lastFrame(), this.input(2).lastFrame())\n\n if number_of_frames > 0:\n distance = (last_frame - first_frame) / (number_of_frames)\n frame = first_frame + distance / 2\n\n for x in range(number_of_frames):\n int_frame = int(round(frame))\n if int_frame not in frame_list:\n frame_list.append(int_frame)\n\n frame += distance\n\n frange = nuke.FrameRanges(additional_frames.split(','))\n\n for r in frange:\n for f in r:\n if f >= first_frame and f <= last_frame:\n if f not in frame_list:\n frame_list.append(f)\n\n frame_list.sort()\n\n return frame_list\n\n\ndef _setup_for_multiframe(frame_list):\n \"\"\" arranges all sample frames next to each other, starting at frame 0\n and sets the frame number knob of the FrameBlend node\"\"\"\n\n time_warp = nuke.toNode('TimeWarp1')\n time_warp\['lookup'].clearAnimated()\n time_warp\['lookup'].setAnimated()\n anim_list = \[]\n\n for n, frame in enumerate(frame_list):\n anim_list.append(nuke.AnimationKey(n, frame))\n\n anim = time_warp\['lookup'].animation(0)\n anim.addKey(anim_list)\n\n frame_blend = nuke.toNode('FrameBlend1')\n frame_blend\['endframe'].setValue(len(frame_list)-1)\n\n\ndef _generate_sample_list(sample_count, sample_range, sample_radius):\n \"\"\"generate a list of sample values spread equally between the\n min and max values of the sample range\"\"\"\n\n sample_list = \[]\n\n for item in range(0, sample_count):\n sample_list.append(float(item) / sample_count * (sample_range\[1] - sample_range\[0]) + sample_range\[0] + sample_radius)\n\n return sample_list\n\n\ndef _get_sample_range(channel, channel_list, frame_list):\n \"\"\" samples the minimum and maximum values of the given frame range and\n sets the sample range to those values\"\"\"\n\n curve_tool = nuke.toNode('CurveTool_Range')\n min_knob = curve_tool\['minlumapixvalue']\n max_knob = curve_tool\['maxlumapixvalue']\n\n min_knob.setAnimated()\n max_knob.setAnimated()\n\n curve_tool\['channels'].setValue(channel)\n\n nuke.execute(curve_tool, nuke.FrameRanges(frame_list))\n\n index = channel_list.index(channel)\n min_list = \[key.y for key in min_knob.animation(index).keys()]\n max_list = \[key.y for key in max_knob.animation(index).keys()]\n\n min_value = min(min_list)\n max_value = max(max_list)\n\n min_knob.clearAnimated()\n max_knob.clearAnimated()\n curve_tool\['minlumapixdata'].clearAnimated()\n curve_tool\['maxlumapixdata'].clearAnimated()\n\n return \[min_value, max_value]\n\n\ndef _sample_it(keyer, curve_tool, sample, sample_radius):\n \"\"\"analyze the grain level per channel and sample value in the sample range\"\"\"\n\n keyer\['temp_expr0'].setValue(str(sample - sample_radius))\n keyer\['temp_expr1'].setValue(str(sample + sample_radius))\n\n intensity_knob = curve_tool\['intensitydata']\n intensity_knob.clearAnimated()\n intensity_knob.setAnimated()\n\n nuke.execute(curve_tool, nuke.frame(), nuke.frame())\n sample_values = intensity_knob.value()\n intensity_knob.clearAnimated()\n\n return sample_values\n\n\ndef check_inputs(this):\n if this.input(1) is None:\n raise RuntimeError('no plate connected')\n\n if this.input(2) is None:\n raise RuntimeError('no degrained plate connected')\n\n def format_tuple(node):\n return node.format().width(), node.format().height(), node.format().pixelAspect()\n\n if format_tuple(this.input(1)) != format_tuple(this.input(2)):\n raise RuntimeError(\"Format missmatch: Make sure the formats of plate and degrained plate match.\")\n\n\ndef start(this):\n \"\"\"let's do this!\"\"\"\n\n check_inputs(this)\n\n with this:\n frame_list = _generate_frame_list(this)\n _setup_for_multiframe(frame_list)\n sample_count = _sample_count(this)\n\n blank = base64.b64decode('cmVkIHtjdXJ2ZX0KZ3JlZW4ge2N1cnZlfQpibHVlIHtjdXJ2ZX0=').decode('ascii')\n\n lut = nuke.toNode('Sampler1')\['lut']\n lut.fromScript(blank)\n\n channel_list = \['red', 'green', 'blue']\n\n keyer = nuke.toNode('Expression2')\n copy = nuke.toNode('Copy2')\n\n curve_tool = nuke.toNode('CurveTool')\n pixel = curve_tool\['ROI'].value()\[2] * curve_tool\['ROI'].value()\[3]\n\n task = nuke.ProgressTask('Analysing...')\n step = 100.0 / 3 / sample_count\n progress = step\n\n time_warp = nuke.toNode('TimeWarp1')\n frame_blend = nuke.toNode('FrameBlend1')\n\n time_warp\['disable'].setValue(False)\n frame_blend\['disable'].setValue(False)\n\n for channel in channel_list:\n task.setMessage('\{\} range'.format(channel))\n\n copy\['from0'].setValue('rgba.\{\}'.format(channel))\n\n sample_range = _get_sample_range(channel, channel_list, frame_list)\n sample_radius = (sample_range\[1] - sample_range\[0]) / sample_count / 2\n sample_list = _generate_sample_list(sample_count, sample_range, sample_radius)\n\n for sample in sample_list:\n if task.isCancelled():\n return\n\n task.setProgress(int(progress))\n\n sample_values = _sample_it(keyer, curve_tool, sample, sample_radius)\n\n task.setMessage('\{\} channel at \{\}'.format(channel, round(sample, 2)))\n\n if sample_values\[3] * pixel >= 10:\n lut.setValueAt(sample_values\[0] / sample_values\[3], sample_values\[1] / sample_values\[3], channel_list.index(channel))\n\n progress += step\n\n time_warp\['lookup'].clearAnimated()\n time_warp\['disable'].setValue(True) # hopefully prevents slowing down the comp\n frame_blend\['disable'].setValue(True) # hopefully prevents slowing down the comp\n\n del task\n\n\nstart(this)\n" +STARTLINE} addUserKnob {26 divider03 l " "} addUserKnob {41 analysis_mask l "analysis mask" t "Use this channel from the mask input to control what area of the plate will be analyzed.\n\nUsefull if the degrain is obviously bad in some areas." T ChannelMerge1.A} addUserKnob {6 invert_1 l invert -STARTLINE} addUserKnob {20 Adjust_tab l Adjust} addUserKnob {22 whatsthis l "What am I looking at?" T "nuke.message(\"After the analysis you'll see the sampled grain response curves here. On the x-axis is the brightness of the image and on the y-axis the grain intensity. Grain increases with brightness, so <strong>the slope of the curves should always be positive</strong> (they should always go up ↗).<br><br>The quality of the curves depends entirely on the quality of the degrain. If the curves look wrong (for example they go up and down), try to improve the degrain first. If they still look wrong and the resulting regrain doesn't work well enough, you can try to improve the curves here by deleting/correcting all points that don't follow an upwards trend.<br><br>You can also extend the curves (again: with an upwards trend) if the comp has values that don't exist in the plate.<br><br>Note: The curve is used for both the normalization as well as the adaptation of the grain, so it doesn't give direct control of the grain intensity.\")" +STARTLINE} addUserKnob {41 lut l "" +STARTLINE T Sampler1.lut} addUserKnob {20 Replace_tab l Replace} addUserKnob {6 external_grain l "use external grain" t "Use external grain from a second DasGrain, with the output set to 'normalised grain', to replace masked area.\nConnect it to the 'external grain' input of this DasGrain (it's a bit hidden on the left side of the node)." +STARTLINE} addUserKnob {26 divider04 l <strong>Scatter} addUserKnob {26 divider05 l <strong>Scatter +HIDDEN T "<span style=\"color:red\">Make sure you're sampling an area without any plate detail.</a>"} addUserKnob {6 scatter l activate t "Activates the scatter function. It generates a new grain based on the plate grain in the sample box using a Voronoi noise." +STARTLINE} addUserKnob {41 useGPUIfAvailable l "Use GPU if available" -STARTLINE T VoronoiScatter.useGPUIfAvailable} addUserKnob {15 box l "sample box" t "Define an area that is used as a source for the scatter function. The plate grain in this area should be as even as possible, without any visible detail."} box {100 100 500 300} addUserKnob {3 sample_frame l "sample frame" t "The frame at which the grain is being sampled. Is set automatically once the sample box is changed." +DISABLED} sample_frame 1 addUserKnob {4 stereo l "stereo behaviour" t "randomize offset per view: same voronoy pattern for all views, but different offset\n\nrandomize pattern per view: different voronoy pattern for every view" M {none "randomize offset per view" "randomize pattern per view" ""}} addUserKnob {26 spacer06 l "" +STARTLINE T " "} addUserKnob {6 overlay l "overlay cell pattern" t "Overlay the cell pattern of the voronoy noise. Useful to check where the seams are and if distortion or blending is necessary." +STARTLINE} addUserKnob {7 cell_size l "cell size" t "Cell size of the scatter. Shoudn't be too small, as lower grain frequencies might break.\nCan't be too big either, to prevent it from breaking the border of the samplebox (will error if it does)." R 5 100} cell_size 40 addUserKnob {26 spacer07 l "" +STARTLINE T " "} addUserKnob {20 concealer l "edge concealer" n 1} concealer 0 addUserKnob {26 concealer_help l " " T "If you can see the voronoi pattern in the grain QC output,\nincrease the edge blend size."} addUserKnob {3 edge_blend_size l "edge blend size" t "Set the output to grain QC. If you see the cell seams, increase the edge blend size to conceal them.\n\nThis is a bit hacky and slow."} addUserKnob {26 tip l "" -STARTLINE T "sloooow - keep this below 3 if possible"} addUserKnob {26 distortion_help l " " T "\nDistortion might help as well, if somehow the straight\nseams are visible (you might want to toggle the overlay\nwhile adjusting)."} addUserKnob {7 amplitude R 0 50} addUserKnob {7 frequency R 0 50} frequency 15 addUserKnob {20 endGroup n -1} addUserKnob {26 divider06 l "" +STARTLINE} addUserKnob {41 replace_mask l "replace mask" t "Use this channel from the mask input to specify where you want to use scattered grain instead of the adapted plate grain." -STARTLINE T Merge9.maskChannelMask} addUserKnob {41 invert_mask_1 l invert -STARTLINE T Merge9.invert_mask} addUserKnob {20 GrainGroupEnd l "" +STARTLINE n -3} addUserKnob {20 Help_tab l Help} addUserKnob {26 basic_setup l "" +STARTLINE T "<font size=\"5\">Basic setup</font>"} addUserKnob {26 ""} addUserKnob {26 explanation l "" +STARTLINE T "<strong>Bold</strong> steps are always necessary"} addUserKnob {26 steps l "" +STARTLINE T "<br><strong>1. This should be the only regrain node in your comp.<br>2. Connect <i>plate</i>, <i>degrained plate</i> and <i>comp</i>.<br> The comp should be done on the degrained plate!</strong><br>3. Set the <i>luminance degrain amount</i>.<br><strong>4. Press the <i>Analyze</i> button.</strong><br>5. Correct the response curves in the <i>Adjust</i> tab.<br>6. Move the <i>sample box</i> to an area without any plate detail and activate <i>scatter</i>.<br>7. If necessary, activate <i>edge blend</i> and/or <i>distortion</i> to conceal seams."} addUserKnob {26 in_depth l "" +STARTLINE T "<br>For an in depth explanation of the steps, read the tooltips and check out this video:<br><a href=\"https://vimeo.com/284820390/\"><span style=\"color:#C8C8C8;\">https://vimeo.com/284820390</a>"} addUserKnob {26 pushthebutton l "" +STARTLINE T "<br><br>If the result is not as expected and you don't know why, push this button:"} addUserKnob {22 troubleshoot l Troubleshoot t HEEEEEEELP T "import base64\n\nmessages = \[]\n\nthis = nuke.thisNode()\n\n#########################\n\nif this.input(0) is None or this.input(1) is None or this.input(2) is None:\n messages.append(\"<font color='red'><strong>ERROR</strong></font> Plate, degrained plate and comp need to be connected to the appropriate inputs.\")\n\n#########################\n\nelse:\n\n def format_to_tuple(g):\n \"\"\"returns (1024, 786, 2.0)\n \"\"\"\n return (g.format().width(), g.format().height(), g.format().pixelAspect())\n\n format_set = set(\[\n format_to_tuple(this.input(0)),\n format_to_tuple(this.input(1)),\n format_to_tuple(this.input(2)),\n ])\n if len(format_set) != 1:\n messages.append(\"<font color='orange'><strong>WARNING</strong></font> Format missmatch: Make sure formats of plate, degrained plate and comp match.\")\n\n if (this.input(1).firstFrame() != this.input(2).firstFrame()) or (this.input(1).lastFrame() != this.input(2).lastFrame()):\n messages.append(\"<font color='orange'><strong>WARNING</strong></font> The frame ranges of plate and degrained plate don't match. Double check that they belong together.\")\n\n#########################\n\nmessages.append(\"Double check that plate and degrained plate haven't been modified in any way (paint, despill, etc).\")\n\n#########################\n\nif this\['luminance'].getValue() == 1:\n messages.append(\"Are you working on a completely degrained plate? If not, you might have to set the luminance degrain amount.\")\n\n#########################\n\nblank = base64.b64decode('cmVkIHtjdXJ2ZX0KZ3JlZW4ge2N1cnZlfQpibHVlIHtjdXJ2ZX0=').decode('ascii')\n\nwith this:\n Sampler = nuke.toNode('Sampler1') \n if Sampler\['lut'].toScript() == blank:\n messages.append(\"<font color='red'><strong>ERROR</strong></font> You haven't pressed the Analyze button yet!\")\n\n#########################\n\nclass BadThings(Exception): pass\n\ndef thingy():\n with this:\n Sampler = nuke.toNode('Sampler1')\n list = this\['lut'].toScript().replace('\}','').split('\\n')\n for item in list:\n sample_value = 0\n for value in item.split(' '):\n try:\n value == float(value)\n if value < sample_value:\n raise BadThings(\"<font color='orange'><strong>WARNING</strong></font> Check and fix the response curves. Their slopes should always be positive (the curves should always go up ↗).\")\n \n else:\n sample_value = value\n except ValueError:\n # Ignore non-numeric things like x-values of \"x5.46\" and channel names like \"red\{\" etc\n pass\ntry:\n thingy()\nexcept BadThings as e:\n messages.append(str(e))\n \n#########################\n\nif this\['scatter'].value() == True:\n if this\['box'].getValue() == \[100.0, 100.0, 500.0, 300.0]:\n messages.append(\"<font color='orange'><strong>WARNING</strong></font> Scatter has been activated, but the sample box is still in its default position. Are you sure that's a good area to sample?\")\n\n#########################\n\nmessages.append(\"Did you copy/paste DasGrain from another script? Make sure to reanalyze and to reset the sample area if you are using scatter.\")\n\n#########################\n\nif len(messages) > 0:\n nuke.message(\"<font size=\\\"5\\\">Things worth checking</font><br><br>\"\n \"%s<br><br><br>If any of this doesn't make sense to you, it might be worth checking out the video on vimeo.\" % (\n \"<hr>\".join(\"%s: %s\" % (i+1, m) for i, m in enumerate(messages))))\n" +STARTLINE} addUserKnob {26 dont_despair l "" +STARTLINE T "<br>If it still doesn't work and you're about to flip the table, send me a <a href=\"mailto:holtzf+nuke@gmail.com?subject=Help with DasGrain v1.7.8\"><span style=\"color:#C8C8C8;\">mail</a>.<br>I'm happy to help! :)"} addUserKnob {20 Info_tab l Info} addUserKnob {26 dasname l "" +STARTLINE T "<font size='5'>DasGrain</font> v1.8<br>"} addUserKnob {26 text_1 l "" +STARTLINE T "DasGrain makes regraining as simple as clicking a few buttons.<br>Follow the steps in the <i>Help</i> tab and you'll have a perfect\nregrain<br>in no time!"} addUserKnob {26 ""} addUserKnob {26 info l "" +STARTLINE T "Last change: 2021-03-07\n\n"} addUserKnob {26 name_1 l "" +STARTLINE T "Fabian Holtz"} addUserKnob {26 mail l "" +STARTLINE T "<a href=\"mailto:holtzf+nuke@gmail.com?subject=Help with DasGrain v1.7.8\"><span style=\"color:#C8C8C8;\">holtzf+nuke@gmail.com</a>"} addUserKnob {26 testimonial l "" +STARTLINE T "<br><br><br><i>«DasGrain is officially the best thing ever»</i><br>— anonymous<br><br>"} addUserKnob {26 ""} addUserKnob {26 credit l "" +STARTLINE T "<br>VoronoiScatter based on <a href=\"http://www.nukepedia.com/blink/image/voronoi/\"><span style=\"color:#C8C8C8;\">Ivan Busquets' implementation</a> of<br> libNoise's\nVoronoi generator"} addUserKnob {26 thanks l "" +STARTLINE T "<br>Special thanks to Ben Dickson for bearing with my questions and<br>problems and RSP comp for the valuable feedback."} } BackdropNode { inputs 0 name BackdropNode1 tile_color 0x7f7f7fff label "normalise grain" note_font_size 30 xpos 170 ypos 1662 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode11 tile_color 0x7f7f7fff label "add grain" note_font_size 30 xpos 830 ypos 2766 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode13 tile_color 0x7f7f7fff label scatter note_font_size 30 xpos -50 ypos 2022 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode14 tile_color 0x7f7f7fff label "analyze grain" note_font_size 30 xpos -159 ypos 606 bdwidth 319 bdheight 877 } BackdropNode { inputs 0 name BackdropNode2 tile_color 0x7f7f7fff label "grain response curve" note_font_size 30 xpos 610 ypos 2574 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode3 tile_color 0x7f7f7fff label QC note_font_size 30 xpos 1050 ypos 3222 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode4 tile_color 0x7f7f7fff label "grain response curve" note_font_size 30 xpos 610 ypos 1422 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode5 tile_color 0x7f7f7fff label "adapt grain" note_font_size 30 xpos 170 ypos 2574 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode6 tile_color 0x7f7f7fff label "sample range" note_font_size 30 xpos -490 ypos 606 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode7 tile_color 0x7f7f7fff label "luminance level" note_font_size 30 xpos 280 ypos -282 bdwidth 760 bdheight 685 } BackdropNode { inputs 0 name BackdropNode8 tile_color 0x7f7f7fff label "plate grain" note_font_size 30 xpos 170 ypos 606 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode9 tile_color 0x7f7f7fff label replace note_font_size 30 xpos 60 ypos 2191 bdwidth 540 bdheight 226 } Input { inputs 0 name DEGRAINED_PLATE label "\[value number]" note_font_size 30 xpos 730 ypos -896 number 2 } OCIOColorSpace { in_colorspace {{OCIOColorSpace1.in_colorspace}} out_colorspace {{OCIOColorSpace1.out_colorspace}} name OCIOColorSpace2 xpos 730 ypos -490 } Dot { name Dot9 xpos 764 ypos -390 } set Nfb88b800 [stack 0] Dot { name Dot28 xpos 764 ypos -198 } set Nfb88b400 [stack 0] Dot { name Dot32 xpos 764 ypos 234 } set Nfb88b000 [stack 0] push $Nfb88b400 Dot { name Dot27 xpos 624 ypos -198 } Colorspace { colorspace_out YCbCr name Colorspace1 xpos 590 ypos -130 } Dot { name Dot7 xpos 624 ypos -54 } set Nfb88a400 [stack 0] Input { inputs 0 name PLATE label "\[value number]" note_font_size 30 xpos 290 ypos -892 number 1 } Dot { name Dot50 xpos 324 ypos -726 } set Nfb889c00 [stack 0] OCIOColorSpace { in_colorspace scene_linear out_colorspace scene_linear name OCIOColorSpace1 xpos 290 ypos -490 } Dot { name Dot29 xpos 324 ypos -198 } set Nfb889000 [stack 0] Dot { name Dot6 xpos 464 ypos -198 } Colorspace { colorspace_out YCbCr name Colorspace2 xpos 430 ypos -130 } Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge4 xpos 430 ypos -58 } Multiply { channels rgb value {{"1 / parent.luminance - 1"} 0 0 0} name Multiply6 xpos 430 ypos 14 } Dot { name Dot31 xpos 464 ypos 90 } push $Nfb88a400 Merge2 { inputs 2 operation plus bbox B Achannels rgb Bchannels rgb output rgb name Merge5 xpos 590 ypos 86 } Colorspace { colorspace_in YCbCr name Colorspace3 xpos 590 ypos 158 } Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge6 xpos 590 ypos 230 } Dot { name Dot35 xpos 624 ypos 306 } set Nfb83a800 [stack 0] push $Nfb88b000 Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge7 xpos 730 ypos 302 disable {{"Multiply6.value.r == 0"}} } Dot { name Dot2 xpos 764 ypos 522 } set Nfb83a000 [stack 0] Dot { name Dot30 xpos 764 ypos 690 } set Nfb839c00 [stack 0] Dot { name Dot55 xpos 764 ypos 1170 } set Nfb839800 [stack 0] Input { inputs 0 name mask label "\[value number]" note_font_size 30 xpos 1170 ypos -896 number 3 } Dot { name Dot39 xpos 1204 ypos 258 } set Nfb839000 [stack 0] Dot { name Dot26 xpos 1204 ypos 1074 } set Nfb838c00 [stack 0] Invert { name Invert2 xpos 180 ypos 1064 disable {{!parent.invert_1}} } push $Nfb839c00 push $Nfb889000 Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge27 xpos 290 ypos 686 } Dot { name Dot3 xpos 324 ypos 786 } set Ne2123c00 [stack 0] Dot { name Dot5 xpos 104 ypos 786 } set Ne2123800 [stack 0] push $Ne2123800 Copy { inputs 2 from0 {{{parent.Copy2.from0}}} to0 rgba.red name Copy3 xpos 70 ypos 848 } Expression { expr0 abs(r) channel1 {none none none rgba.alpha} expr1 "r == 0" channel2 none channel3 none name Expression4 xpos 70 ypos 926 } set Ne2123000 [stack 0] push $Nfb83a000 Colorspace { colorspace_out AlexaV3LogC name Colorspace5 xpos 70 ypos 518 } Clamp { maximum_enable false name Clamp2 xpos -40 ypos 512 } Dot { name Dot1 xpos -116 ypos 522 } set Ne2122400 [stack 0] Dot { name Dot48 xpos -116 ypos 786 } set Ne2122000 [stack 0] push $Ne2122000 Copy { inputs 2 from0 rgba.blue to0 rgba.red name Copy2 xpos -150 ypos 848 } Expression { temp_name0 min temp_expr0 0.5478476602584124 temp_name1 max temp_expr1 0.5718689560890198 channel0 {none none none rgba.alpha} expr0 "r >= min && r <= max" channel1 none channel2 none channel3 none name Expression2 xpos -150 ypos 926 } Dot { name Dot4 xpos -116 ypos 1002 } ChannelMerge { inputs 2 operation stencil name ChannelMerge2 xpos -40 ypos 985 } push $Ne2123000 Copy { inputs 2 from0 rgba.alpha to0 rgba.alpha name Copy1 xpos 70 ypos 992 } ChannelMerge { inputs 2 A -rgba.green operation multiply name ChannelMerge1 xpos 70 ypos 1057 disable {{!A}} } Copy { inputs 2 from0 {{{parent.Copy2.from0}}} to0 rgba.green name Copy4 xpos 70 ypos 1160 } Premult { channels {rgba.red rgba.green -rgba.blue none} name Premult1 xpos 70 ypos 1238 } TimeWarp { lookup 1088 time "" filter nearest name TimeWarp1 xpos 70 ypos 1286 disable true } FrameBlend { channels {rgba.red rgba.green -rgba.blue rgba.alpha} startframe 0 endframe 9 userange true name FrameBlend1 xpos 70 ypos 1352 disable true } CurveTool { avgframes 0 channels {rgba.red rgba.green -rgba.blue rgba.alpha} ROI {0 0 {width} {height}} intensitydata {3.454302895e-07 7.802840197e-05 0 8.873093412e-05} name CurveTool xpos 70 ypos 1424 } push $Ne2122400 Dot { name Dot16 xpos -336 ypos 522 } CurveTool { operation "Max Luma Pixel" channels {-rgba.red -rgba.green rgba.blue none} ROI {0 0 {width} {height}} maxlumapixdata {2089 1182} maxlumapixvalue {0 0 0.5716627836} minlumapixdata {1127 1304} minlumapixvalue {0 0 0.09195037186} name CurveTool_Range xpos -370 ypos 680 } Sampler { inputs 0 lut {red {curve x0.001361052622 0.0002230034669 x0.006430411246 0.0005951428306 x0.01105421502 0.0008994589171 x0.01628139243 0.001146730585 x0.02274016291 0.001403132278 x0.03080444597 0.00163270372 x0.04087587446 0.001859763983 x0.053586483 0.002055999969 x0.06944747269 0.002264037068 x0.08884223551 0.00243882259 x0.1131541282 0.002653067767 x0.1442549825 0.002822130602 x0.1814405024 0.003096113604 x0.2293340415 0.003327953235 x0.2919330597 0.003522355048 x0.3690226078 0.003658043992 x0.4605507255 0.003893747258 x0.5786529779 0.004396948744 x0.7082110643 0.004913048611 x0.9231189489 0.003771882119} green {curve x0.002225074451 0.0002086138276 x0.006718123332 0.0005114786423 x0.01113783848 0.0006940161211 x0.01635070331 0.0008797971662 x0.02278374881 0.001082866921 x0.03096000105 0.001309081842 x0.04078568891 0.001475058675 x0.05342977494 0.001624661542 x0.06917729229 0.001829751531 x0.08840883523 0.002091810703 x0.112894237 0.002562833656 x0.1437279135 0.003031363544 x0.1823064238 0.003319310345 x0.2292642146 0.003328314016 x0.2914674878 0.003209824447 x0.3613436222 0.003148078654 x0.4587926567 0.003378985091 x0.5774047375 0.003261888327 x0.7117970586 0.003246239536 x0.8756207824 0.003280454043} blue {curve x0.002008558717 0.0002586295553 x0.006193103269 0.0005384354734 x0.0109573612 0.0007919714349 x0.0161083322 0.0009666481834 x0.02255447395 0.001173497481 x0.03028626554 0.001366394549 x0.040295057 0.001563044506 x0.05251040682 0.001699286347 x0.06809803098 0.001865792829 x0.08791080117 0.002071608131 x0.1125093549 0.002332924835 x0.1419141144 0.002502789157 x0.1810215116 0.002746756186 x0.228581965 0.003003136212 x0.2877129018 0.003395638099 x0.3611852825 0.003619306395 x0.4465007782 0.003888860687 x0.5631905198 0.003624253537 x0.7170214057 0.003685941852 x0.8793821931 0.003893008599}} name Sampler1 onCreate "n = nuke.thisNode()\nn\['sampler'].setEnabled(False)" knobChanged "n = nuke.thisNode()\nk = nuke.thisKnob()\np = nuke.thisParent()\n\nif k.name() == 'lut':\n with p:\n for c in \['ColorLookup1','ColorLookup2']:\n nuke.toNode(c)\['lut'].fromScript(k.toScript())" xpos 840 ypos 1502 } push $Nfb889c00 Dot { name Dot51 xpos 115 ypos -726 } Input { inputs 0 name COMP label "\[value number]" note_font_size 30 xpos 950 ypos -896 } Dot { name Dot49 xpos 984 ypos -605 } set Ne20b9800 [stack 0] Switch { inputs 2 which {{parent.meta}} name Switch1 xpos 81 ypos -609 } Dot { name Dot54 xpos 115 ypos -486 } Dot { name Dot52 xpos -685 ypos -486 } Dot { name Dot53 xpos -685 ypos 3762 } push $Nfb839000 Dot { name Dot40 xpos 874 ypos 258 } push $Nfb83a800 Dot { name Dot34 xpos 624 ypos 378 } Multiply { inputs 1+1 channels rgb value 0 maskChannelMask -rgba.red name Multiply1 xpos 840 ypos 374 } push $Ne20b9800 OCIOColorSpace { in_colorspace {{OCIOColorSpace1.in_colorspace}} out_colorspace {{OCIOColorSpace1.out_colorspace}} name OCIOColorSpace3 xpos 950 ypos -490 } Dot { name Dot44 xpos 984 ypos -390 } set Ne2072c00 [stack 0] Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge8 xpos 950 ypos 374 disable {{"Multiply6.value.r == 0"}} } Dot { name Dot18 xpos 984 ypos 2658 } set Ne2072400 [stack 0] ColorLookup { lut {master {} red {curve x0.001361052622 0.0002230034669 x0.006430411246 0.0005951428306 x0.01105421502 0.0008994589171 x0.01628139243 0.001146730585 x0.02274016291 0.001403132278 x0.03080444597 0.00163270372 x0.04087587446 0.001859763983 x0.053586483 0.002055999969 x0.06944747269 0.002264037068 x0.08884223551 0.00243882259 x0.1131541282 0.002653067767 x0.1442549825 0.002822130602 x0.1814405024 0.003096113604 x0.2293340415 0.003327953235 x0.2919330597 0.003522355048 x0.3690226078 0.003658043992 x0.4605507255 0.003893747258 x0.5786529779 0.004396948744 x0.7082110643 0.004913048611 x0.9231189489 0.003771882119} green {curve x0.002225074451 0.0002086138276 x0.006718123332 0.0005114786423 x0.01113783848 0.0006940161211 x0.01635070331 0.0008797971662 x0.02278374881 0.001082866921 x0.03096000105 0.001309081842 x0.04078568891 0.001475058675 x0.05342977494 0.001624661542 x0.06917729229 0.001829751531 x0.08840883523 0.002091810703 x0.112894237 0.002562833656 x0.1437279135 0.003031363544 x0.1823064238 0.003319310345 x0.2292642146 0.003328314016 x0.2914674878 0.003209824447 x0.3613436222 0.003148078654 x0.4587926567 0.003378985091 x0.5774047375 0.003261888327 x0.7117970586 0.003246239536 x0.8756207824 0.003280454043} blue {curve x0.002008558717 0.0002586295553 x0.006193103269 0.0005384354734 x0.0109573612 0.0007919714349 x0.0161083322 0.0009666481834 x0.02255447395 0.001173497481 x0.03028626554 0.001366394549 x0.040295057 0.001563044506 x0.05251040682 0.001699286347 x0.06809803098 0.001865792829 x0.08791080117 0.002071608131 x0.1125093549 0.002332924835 x0.1419141144 0.002502789157 x0.1810215116 0.002746756186 x0.228581965 0.003003136212 x0.2877129018 0.003395638099 x0.3611852825 0.003619306395 x0.4465007782 0.003888860687 x0.5631905198 0.003624253537 x0.7170214057 0.003685941852 x0.8793821931 0.003893008599} alpha {}} name ColorLookup2 xpos 730 ypos 2654 } push $Nfb838c00 Dot { name Dot38 xpos 1204 ypos 1842 } Dot { name Dot37 xpos 544 ypos 1842 } Dot { name Dot22 xpos 544 ypos 2271 } set Ne2071400 [stack 0] Dot { name Dot20 xpos 544 ypos 2391 } push $Ne2071400 Dot { name Dot17 xpos 434 ypos 2271 } set Ne2070c00 [stack 0] Dot { name Dot13 xpos 214 ypos 2271 } Input { inputs 0 name external_grain label "\[value number]" note_font_size 30 xpos -150 ypos 1716 number 4 } Dot { name Dot21 xpos -116 ypos 1938 } push $Nfb839800 ColorLookup { channels rgb lut {master {} red {curve x0.001361052622 0.0002230034669 x0.006430411246 0.0005951428306 x0.01105421502 0.0008994589171 x0.01628139243 0.001146730585 x0.02274016291 0.001403132278 x0.03080444597 0.00163270372 x0.04087587446 0.001859763983 x0.053586483 0.002055999969 x0.06944747269 0.002264037068 x0.08884223551 0.00243882259 x0.1131541282 0.002653067767 x0.1442549825 0.002822130602 x0.1814405024 0.003096113604 x0.2293340415 0.003327953235 x0.2919330597 0.003522355048 x0.3690226078 0.003658043992 x0.4605507255 0.003893747258 x0.5786529779 0.004396948744 x0.7082110643 0.004913048611 x0.9231189489 0.003771882119} green {curve x0.002225074451 0.0002086138276 x0.006718123332 0.0005114786423 x0.01113783848 0.0006940161211 x0.01635070331 0.0008797971662 x0.02278374881 0.001082866921 x0.03096000105 0.001309081842 x0.04078568891 0.001475058675 x0.05342977494 0.001624661542 x0.06917729229 0.001829751531 x0.08840883523 0.002091810703 x0.112894237 0.002562833656 x0.1437279135 0.003031363544 x0.1823064238 0.003319310345 x0.2292642146 0.003328314016 x0.2914674878 0.003209824447 x0.3613436222 0.003148078654 x0.4587926567 0.003378985091 x0.5774047375 0.003261888327 x0.7117970586 0.003246239536 x0.8756207824 0.003280454043} blue {curve x0.002008558717 0.0002586295553 x0.006193103269 0.0005384354734 x0.0109573612 0.0007919714349 x0.0161083322 0.0009666481834 x0.02255447395 0.001173497481 x0.03028626554 0.001366394549 x0.040295057 0.001563044506 x0.05251040682 0.001699286347 x0.06809803098 0.001865792829 x0.08791080117 0.002071608131 x0.1125093549 0.002332924835 x0.1419141144 0.002502789157 x0.1810215116 0.002746756186 x0.228581965 0.003003136212 x0.2877129018 0.003395638099 x0.3611852825 0.003619306395 x0.4465007782 0.003888860687 x0.5631905198 0.003624253537 x0.7170214057 0.003685941852 x0.8793821931 0.003893008599} alpha {}} name ColorLookup1 xpos 730 ypos 1502 } Dot { name Dot24 xpos 764 ypos 1746 } push $Ne2123c00 Dot { name Dot33 xpos 324 ypos 1386 } MergeExpression { inputs 2 temp_name0 target temp_expr0 .01 expr0 "Br * (target / Ar)" expr1 "Bg * (target / Ag)" expr2 "Bb * (target / Ab)" channel3 none name MergeExpression1 xpos 290 ypos 1742 } Dot { name Dot15 xpos 324 ypos 1842 } set Ne241e800 [stack 0] Dot { name Dot25 xpos 104 ypos 1842 } Switch { inputs 2 which {{parent.external_grain}} name Switch2 xpos 70 ypos 1934 } Group { name VoronoiScatter xpos 70 ypos 2102 disable {{!parent.scatter}} addUserKnob {20 User} addUserKnob {41 useGPUIfAvailable l "Use GPU if available" T VoroNoise.useGPUIfAvailable} addUserKnob {41 vectorize l "Vectorize on CPU" -STARTLINE T VoroNoise.vectorize} addUserKnob {15 box} box {{parent.box x1004 0 x1036 -75} {parent.box x1004 100 x1036 120} {parent.box x1004 496 x1036 325} {parent.box x1004 916 x1036 320}} addUserKnob {3 sample_frame l "sample frame"} sample_frame {{parent.sample_frame}} addUserKnob {7 cell_size l "cell size" R 0 100} cell_size {{parent.cell_size}} addUserKnob {6 overlay_pattern l "overlay pattern" -STARTLINE} overlay_pattern {{parent.overlay}} addUserKnob {3 edge_blend_size l "edge blend size"} edge_blend_size {{parent.edge_blend_size}} addUserKnob {7 amplitude R 0 100} amplitude {{parent.amplitude}} addUserKnob {7 frequency R 0 100} frequency {{parent.frequency}} addUserKnob {41 VoroNoise_Seed l Seed T VoroNoise.VoroNoise_Seed} } Input { inputs 0 name Input1 xpos 180 ypos -879 } Dot { name Dot14 xpos 214 ypos -750 } set Ne241d800 [stack 0] Dot { name Dot16 xpos 434 ypos -750 } Remove { name Remove1 xpos 400 ypos -687 } Dot { name Dot6 xpos 434 ypos -606 } set Ne241cc00 [stack 0] Dot { name Dot15 xpos 654 ypos -606 } set Ne241c800 [stack 0] Dot { name Dot7 xpos 874 ypos -606 } Noise { output {rgba.red -rgba.green -rgba.blue none} replace true size {{parent.frequency} {"parent.frequency * pixel_aspect"}} zoffset {{"x + 1000"}} gamma 1 name Noise1 xpos 840 ypos -514 } Noise { output {-rgba.red rgba.green -rgba.blue none} replace true size {{parent.Noise1.size} {parent.Noise1.size}} zoffset {{x}} gamma 1 name Noise2 xpos 840 ypos -466 } Clamp { name Clamp1 xpos 840 ypos -424 } Dot { name Dot11 xpos 874 ypos -366 } push $Ne241c800 BlinkScript { ProgramGroup 1 KernelDescription "2 \"VoroNoise\" iterate pixelWise c117be128a07c11b6d82fd34148d66b3bcac41976ec9c2082affe38e890c2c0f 2 \"src\" Read Point \"dst\" Write Point 6 \"Frequency\" Float 1 AABIQg== \"Seed\" Int 1 AAAAAA== \"aspect ratio\" Float 1 AACAPw== \"width\" Int 1 AAAAAA== \"height\" Int 1 AAAAAA== \"Randomness\" Float 1 AAAAPw== 6 \"frequency\" 1 1 \"seed\" 1 1 \"aspect_ratio\" 1 1 \"width\" 1 1 \"height\" 1 1 \"randomness\" 1 1 0" kernelSource "// Voronoi.blink\n// A test implementation of libNoise's Voronoi generator using Blink\n// Ivan Busquets - August 2013\n// Modified for DasGrain by Fabian Holtz - April 2019\n\n#define X_NOISE_GEN 1619\n#define Y_NOISE_GEN 31337\n#define Z_NOISE_GEN 6971\n#define SEED_NOISE_GEN 1013\n#define SQRT_3 1.73205081\n\ninline int IntValueNoise3D (int x, int y, int z, int seed)\n\{\n // All constants are primes and must remain prime in order for this noise\n // function to work correctly.\n int n = (\n X_NOISE_GEN * x\n + Y_NOISE_GEN * y\n + Z_NOISE_GEN * z\n + SEED_NOISE_GEN * seed)\n & 0x7fffffff;\n n = (n >> 13) ^ n;\n return (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff;\n\}\n\ninline float ValueNoise3D (int x, int y, int z, int seed)\n\{\n return 1.0 - ((float)IntValueNoise3D (x, y, z, seed) / 1073741824.0);\n\}\n\nkernel VoroNoise : ImageComputationKernel<ePixelWise>\n\{\n Image<eRead> src;\n Image<eWrite, eAccessPoint> dst;\n\nparam:\n float frequency;\n int seed;\n float aspect_ratio;\n int width;\n int height;\n float randomness;\n\n\n void define() \{\n defineParam(frequency, \"Frequency\", 50.0f);\n defineParam(aspect_ratio, \"aspect ratio\", 1.0f);\n defineParam(seed, \"Seed\", 0);\n defineParam(randomness, \"Randomness\", 0.5f);\n \}\n\n\n\n\n void process(int2 pos) \{\n float x = pos.x * aspect_ratio * frequency / width;\n float y = pos.y * frequency / width;\n int xInt = (x > 0.0) ? x : x - 1;\n int yInt = (y > 0.0) ? y : y - 1;\n\n\n float minDist = 2147483647.0;\n float xCandidate = 0;\n float yCandidate = 0;\n\n float dist;\n\nfor (int yCur = yInt - 2; yCur <= yInt + 2; yCur++) \{\n for (int xCur = xInt - 2; xCur <= xInt + 2; xCur++) \{\n\n // Calculate the position and distance to the seed point inside of\n // this unit cube. Limited by the randomness value\n float xPos = xCur + (ValueNoise3D (xCur, yCur, 0, seed ) + 1 ) * randomness + (1-randomness) - 1;\n float yPos = yCur + (ValueNoise3D (xCur, yCur, 0, seed + 1) + 1 ) * randomness + (1-randomness) - 1;\n\n float xDist = xPos - x;\n float yDist = yPos - y;\n\n dist = pow(xDist, 2) + pow(yDist, 2);\n if (dist < minDist) \{\n // This seed point is closer to any others found so far, so record\n // this seed point.\n minDist = dist;\n xCandidate = xPos;\n yCandidate = yPos;\n\t\}\n \}\n\}\n\n SampleType(dst) sample(0.0f);\n\n sample.x = xCandidate / aspect_ratio / frequency;\n sample.y = yCandidate / height * width / frequency;\n sample.z = 0;\n\n dst() = sample;\n\}\n\};" rebuild "" VoroNoise_Frequency {{"width / parent.cell_size"}} VoroNoise_Seed {{"(x + (parent.parent.stereo == 2 ? \[lsearch \[value root.views] \[view]] / 2 : 0)) * 5"}} "VoroNoise_aspect ratio" {{pixel_aspect}} VoroNoise_width {{width}} VoroNoise_height {{height}} rebuild_finalise "" name VoroNoise xpos 620 ypos -520 } Copy { inputs 2 from0 rgba.red to0 forward.u from1 rgba.green to1 forward.v name Copy1 xpos 620 ypos -382 disable {{"parent.amplitude == 0"}} } IDistort { uv forward uv_offset 0.5 uv_scale {{parent.amplitude} {"uv_scale.w * pixel_aspect"}} filter impulse name IDistort1 xpos 620 ypos -280 disable {{"parent.amplitude == 0"}} } Dot { name Dot5 xpos 654 ypos -246 } NoTimeBlur { rounding floor name NoTimeBlur3 xpos 620 ypos -154 } Transform { translate {{"floor((x * size) % 1 * (size)) - int(size / 2)"} {"floor(x % 1 * (size)) - int(size/2)"}} filter impulse black_outside false name Transform1 xpos 620 ypos -58 disable {{"parent.edge_blend_size < 1"}} addUserKnob {20 User} addUserKnob {3 size} size {{"parent.edge_blend_size + 1"}} } Dot { name Dot9 xpos 654 ypos 42 } set Ne23dd400 [stack 0] push $Ne241cc00 Expression { expr0 "(x + .5) / width" expr1 "(y + .5) / height" expr2 0 name STMapGenerator xpos 400 ypos -514 } NoTimeBlur { rounding floor name NoTimeBlur2 xpos 400 ypos -154 } Merge2 { inputs 2 operation from Achannels {rgba.red rgba.green -rgba.blue none} Bchannels {rgba.red rgba.green -rgba.blue none} output {rgba.red rgba.green -rgba.blue none} name Merge2 xpos 400 ypos 38 } Dot { name Dot10 xpos 434 ypos 210 } push $Ne23dd400 Expression { temp_name0 view_index temp_expr0 "parent.parent.stereo == 1 ? \[lsearch \[value root.views] \[view]] / 2 : 0" expr0 "random((r + view_index) * 1000000, 0) * (maxx - minx) + minx" expr1 "random((g + view_index) * 1000000, 0) * (maxy - miny) + miny" channel2 none channel3 none name Expression3 xpos 620 ypos 110 addUserKnob {20 User} addUserKnob {7 frequency R 0 100} frequency {{parent.parent.cell_size}} addUserKnob {7 multiplier R 0 3} multiplier 0.5 addUserKnob {15 shrink} shrink {{"frequency * multiplier + ceil(parent.edge_blend_size / 2) + IDistort1.uv_scale.w / 2"} {"frequency * multiplier + ceil(parent.edge_blend_size / 2) + IDistort1.uv_scale.h / 2"} {"frequency * multiplier + floor(parent.edge_blend_size / 2) + IDistort1.uv_scale.w / 2"} {"frequency * multiplier + floor(parent.edge_blend_size / 2) + IDistort1.uv_scale.h / 2"}} addUserKnob {26 ""} addUserKnob {7 minx} minx {{"(parent.box.x + shrink.x + .5) / width"}} addUserKnob {7 maxx} maxx {{"(parent.box.r - shrink.r - .5) / width"}} addUserKnob {7 miny} miny {{"(parent.box.y + shrink.y + .5) / height"}} addUserKnob {7 maxy} maxy {{"(parent.box.t - shrink.t - .5) / height"}} } Merge2 { inputs 2 operation plus Achannels {rgba.red rgba.green -rgba.blue none} Bchannels {rgba.red rgba.green -rgba.blue none} output {rgba.red rgba.green -rgba.blue none} name Merge3 xpos 620 ypos 206 } Expression { expr0 "(r + (maxx - minx) - minx) % (maxx - minx) + minx" expr1 "(g + (maxy - miny) - miny) % (maxy - miny) + miny" channel2 none channel3 none name Expression7 xpos 620 ypos 278 addUserKnob {20 User} addUserKnob {7 minx} minx {{"(parent.box.x + rint(x % 1 * parent.edge_blend_size) + .5) / width"}} addUserKnob {7 maxx} maxx {{"(parent.box.r + rint(x % 1 * parent.edge_blend_size) - .5) / width"}} addUserKnob {7 miny} miny {{"(parent.box.y + rint(x % 1 * parent.edge_blend_size) + .5) / height"}} addUserKnob {7 maxy} maxy {{"(parent.box.t + rint(x % 1 * parent.edge_blend_size) - .5) / height"}} } Dot { name Dot3 xpos 654 ypos 354 } set Ne2383000 [stack 0] Dot { name Dot13 xpos 654 ypos 546 } push $Ne2383000 Dot { name Dot8 xpos 874 ypos 354 } Blur { channels rgb size {{pixel_aspect} 1} name Blur1 label "\[value size]" xpos 840 ypos 440 } Difference { inputs 2 name Difference2 xpos 840 ypos 536 } Expression { channel0 {none none none rgba.alpha} expr0 "a > 1e-9" channel1 none channel2 none channel3 none name Expression2 xpos 840 ypos 614 } Shuffle { red alpha green alpha blue alpha name Shuffle1 label "\[value in]:\[value out]" xpos 840 ypos 680 } Dot { name Dot4 xpos 874 ypos 762 } push $Ne2383000 push $Ne241d800 FrameHold { firstFrame {{parent.sample_frame}} name FrameHold1 xpos 180 ypos -256 } NoTimeBlur { rounding floor name NoTimeBlur1 xpos 180 ypos -154 } STMap { inputs 2 channels rgb uv rgb filter impulse name STMap1 xpos 180 ypos 350 } set Ne2380c00 [stack 0] TimeBlur { divisions {{"max(Transform1.size == 1 ? 2 : pow2(Transform1.size), 1)"}} shutter 1 shuttercustomoffset {{"1 / divisions / 2"}} name TimeBlur1 xpos 180 ypos 446 disable {{"parent.edge_blend_size < 1"}} } set Ne2380800 [stack 0] push $Ne2380c00 Dot { name Dot1 xpos -6 ypos 354 } Difference { inputs 2 name Difference1 xpos -40 ypos 440 } Expression { channel0 {none none none rgba.alpha} expr0 "a > 1e-10" channel1 none channel2 none channel3 none name Expression1 xpos -40 ypos 494 } Blur { channels alpha size {{parent.parent.edge_blend_size}} name Blur2 xpos -40 ypos 536 } Grade { channels alpha blackpoint 0.5 white_clamp true name Grade2 xpos -40 ypos 584 } Dot { name Dot2 xpos -6 ypos 666 } push $Ne2380800 Grade { inputs 1+1 white 1.4 black_clamp false name Grade1 xpos 180 ypos 662 disable {{"parent.edge_blend_size < 1"}} } Merge2 { inputs 2 Achannels rgb Bchannels rgb output rgb name Merge1 xpos 180 ypos 758 disable {{!parent.overlay_pattern}} } Assert { expression {{"Expression3.maxx > Expression3.minx && Expression3.maxy > Expression3.miny"}} message "increase sample box size or decrease cell size" name error xpos 180 ypos 854 } Output { name Output1 xpos 180 ypos 950 } end_group Multiply { inputs 1+1 channels rgb value 1.8 maskChannelMask {{{parent.Merge9.maskChannelMask}}} invert_mask {{!Merge9.invert_mask}} name Multiply7 xpos 70 ypos 2315 disable {{"!maskChannelMask || !\[exists parent.input3.name]"}} } Dot { name Dot23 xpos 104 ypos 2391 } push $Ne2070c00 push $Ne241e800 Multiply { inputs 1+1 channels rgb value 1.8 maskChannelMask {{{parent.Merge9.maskChannelMask}}} invert_mask {{parent.Merge9.invert_mask}} name Multiply2 xpos 290 ypos 2315 disable {{"!maskChannelMask || (!parent.scatter && !parent.external_grain)"}} } Merge2 { inputs 2+1 operation copy Achannels rgb Bchannels rgb output rgb maskChannelMask -rgba.alpha name Merge9 xpos 290 ypos 2387 disable {{"!(parent.scatter || parent.external_grain)"}} } Dot { name Dot11 xpos 324 ypos 2490 } set Ne230c800 [stack 0] MergeExpression { inputs 2 temp_name0 reverse temp_expr0 "1 / MergeExpression1.temp_expr0" expr0 "Br * Ar * reverse" expr1 "Bg * Ag * reverse" expr2 "Bb * Ab * reverse" name MergeExpression2 xpos 290 ypos 2654 } Dot { name Dot8 xpos 324 ypos 2850 } push $Ne2072400 Merge2 { inputs 2 operation plus bbox B Achannels rgb Bchannels rgb output rgb name Merge3 xpos 950 ypos 2846 } Dot { name Dot42 xpos 984 ypos 3018 } set Ne22ab400 [stack 0] OCIOColorSpace { in_colorspace {{OCIOColorSpace1.out_colorspace}} out_colorspace {{OCIOColorSpace1.in_colorspace}} name OCIOColorSpace4 xpos 950 ypos 3086 } Dot { name Dot19 xpos 984 ypos 3162 } set Ne22aa800 [stack 0] Dot { name Dot41 xpos 1204 ypos 3162 } set Ne22aa400 [stack 0] Dot { name Dot36 xpos 1314 ypos 3162 } Blur { channels rgb size 1 name Blur1 xpos 1280 ypos 3254 } push $Ne22aa400 Merge2 { inputs 2 operation difference bbox B Achannels rgb Bchannels rgb output rgb name Merge10 xpos 1170 ypos 3254 } Multiply { channels rgb value 50 name Multiply3 xpos 1170 ypos 3302 } Dot { name Dot43 xpos 1204 ypos 3402 } push $Ne2072c00 Dot { name Dot45 xpos 1424 ypos -390 } push $Ne22ab400 Merge2 { inputs 2 operation from Achannels rgb Bchannels rgb output rgb name Merge11 xpos 1390 ypos 3014 } Dot { name Dot46 xpos 1424 ypos 3522 } push $Ne230c800 Dot { name Dot14 xpos 104 ypos 2490 } Dot { name Dot12 xpos 104 ypos 3402 } push $Nfb88b800 Dot { name Dot47 xpos -556 ypos -390 } push $Nfb889000 Merge2 { inputs 2 operation from Achannels rgb Bchannels rgb output rgb name Merge12 xpos -590 ypos -202 } Dot { name Dot10 xpos -556 ypos 3522 } push $Ne22aa800 Switch { inputs 5 which {{output}} name Output xpos 950 ypos 3656 addUserKnob {20 User} addUserKnob {4 output M {"regrained comp" "plate grain" "normalised grain" "adapted grain" "grain QC"}} } CopyMetaData { inputs 2 mergeMode "Meta only" name CopyMetaData1 xpos 950 ypos 3758 } Output { name Output1 xpos 950 ypos 3854 } end_group Read { inputs 0 file_type exr file R:/work/CG/Ambition/1023_WINK_NY_24/shots/sh_0070/source/cc/sh_0070_cc/SH_0070_сс.########.exr format "3424 2202 0 0 3424 2202 1 " first 991 last 1091 origfirst 991 origlast 1091 origset true colorspace sRGB name Read7 selected true xpos 2686 ypos -134 } Retime { input.first 991 input.last 1091 reverse true output.first 991 output.last 1091 time "" name Retime9 selected true xpos 2686 ypos -38 } Retime { input.first 991 input.last 1091 output.first 993 output.first_lock true output.last 1093 time "" name Retime10 selected true xpos 2686 ypos -14 } set N19020400 [stack 0] OFXcom.absoft.neatvideo4_v4 { DNP ODAxAIyjDHsAAAAAVW5zcGVjaWZpZWQgZGV2aWNlAEZyYW1lIHNpemU6CTM0MjR4MjIwMiBwClNjYW4gdHlwZToJUHJvZ3Jlc3NpdmUKR2FtbWE6CUxpbmVhcgpQcm9maWxlZCB3aXRoOglGdWxsIGZyYW1lICgzNDI0eDIyMDIpCgABoc79Y9lH4lcK2PNcFuNp8lLSdunqUiEbugLfAafYaPMTf6GCBlpj/GzE73FH1Zb7/+zqbRmcGINhJWH2BFV63+VzlYbaMimSzLz9YUBgXICaZOVJEG9OEssqCdeLygFOglVi713HD5BvGMQULIjrVwZlRBzBIP/hfNu6pkyJmse1qVc45KTSBRRFrjOqCej4ZcSjvSB/XgLbOhnHWbHsVRljt6iB55xCG3pZB9Y1FMyR8M+RTKuKVgdmRRsEe2T5CjzPcOtKKTemBeT8YcCfQRx7WgbXNhXLkvHQkE2si1UIZ0YawyIB337dvKQ5mHdp9FMyLq8O7fNqyai4JYRjfeA/HsKb+tmHVrWUTBFwTxHMKwrWh+bFmz3JFHwQ55OEFT6NMqkI5/lkw6K+H35dA9o5GMiV9NONUK+OUgtqSRfGJQTcgeC/oTybemb3VjUrshHw8G3Mq7Uoh2Z640IhP5793IRZuJdJFHNSDs8uDdOK6ciYRaSDXQBfPiK7GvnndtW0rDGQb3HsSyo2pwbl+2LBoEAdfFsF2DcWypPy0Y9OrYxUCWhHGcQjAt5/3r2jOpl4aPVUMy2wD+7ya8qptyaFZHzhQB/BnPvahle2lUsScVAQzSwL1YjnxppDooFf/l08JLkY9+l007KuL45tc+pJKDilBOP9YL+eQht6WQfWNRTMkfDPkUyrilYHZkUbwiEA4H3cu6U4l3Zq81IxL64N7PRpyKe5JINift8+HcOa+diIVbSTTRBvThLLKgnXhuXEnEGgf2H8Wzomtxb163LRsLAtjGt16EcmOqMC4f9evZxEGXhXCdQzEs6P7s2TSqmIWAVkQx3AH/7ie9q5pzaVdGzxUC8xrAvq9mfGpbsigWAA3TwbxZj31opTspFPDm1MFMkoB9mE48KeP559Y/pZOCi1FPPtcM+usiuKaXfmRSQ8oQDfgVy7mkYXdlUL0jEQ0I3sy5VIp4ZaA2JBH74d/OR52LepNJNybu9OLTOqCej4ZcSjvSB/XgLbOhnHlvXUjFGwj1EMa0oWxyYF24LhwKA9nHtl+Fc2KrMS8e9uzay0KYhneeRDIj6f/t2DWrmYSBV0Uw3QLw7Si+rJl0alhFwBYD8hvBv65nfWtasykXBw7UwrNagH5vpjwqG/Hn1cBNk4F8mU89KOT66NUwppSBjFJAPdgN++ojuaeWf2VTQssRDv8WzLqrYnhmV74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUca2zOdY6NRioWdHAWk8b6jSX7UeuMh6HFLKs5Re8KBnkFCxXvoMsZZhtWa/xLYyLfdn+5SmxG2q1uCIR6mxG7x6/PLdNaOp6gB89J/n+P8YRhNmMmAMBa5BzIVui/47G+fNjyjExOL9IECMJ8A7wYLWpbGGZqpiteLWIHq3mGrjJ8ETvFgSj4iURyP8z1f9ltqqYLPQv5c/6fhcNlldvleDqeyJ3T3S+xEd+5zyqCFOir1ddq5An7iz3AkJJ618V3YD4ZIfWFELv3n/GK8hrgY6CqoMOPXoRF2+aW5T13RDQLms6cVdH7iTaSeApd9Yvy3GEebd1hWikInuhz3Ho9z6kkoOKUE4/1gv55CG3pZB9Y1FMyR8M+RTKuKVgdmRRvCIQDgfdy7pTiXdmrzUjEvrg3s9GnIp7kkg2J+3z4dw5r52IhVtJNNEG9OEssqCdeG5cScQaB/YfxbOia3FvXrctGwsC2Ma3XoRyY6owLh/169nEQZeFcJ1DMSzo/uzZNKqYhYBWRDHcAf/uJ72rmnNpV0bPFQLzGsC+r2Z8aluyKBYADdPBvFmPfWilOykU8ObUwUySgH2YTjwp4/nn1j+lk4KLUU8+1wz66yK4ppd+ZFJDyhAN+BXLuaRhd2VQvSMRDQjezLlUinhloDYkEfvh385HnYt6k0k3Ju704tM6oJ6PhlxKO9IH9eAts6GceW9dSMUbCPUQxrShbHJgXbguHAoD2ce2X4VzYqsxLx727NrLQpiGd55EMiPp/+3YNauZhIFXRTDdAvDtKL6smXRqWEXAFgPyG8G/rmd9a1qzKRcHDtTCs1qAfm+mPCob8efVwE2TgXyZTz0o5Pro1TCmlIGMUkA92A376iO5p5Z/ZVNCyxEO/xbMuqtieGZXviQSDAnfzbhVi3lkoTclEPzi0M1Inox5lEo4Jebr47nUnravbyJfhpB5i6JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG8IhAOB93LulOJd2avNSMS+uDez0acinuSSDYn7fPh3DmvnYiFW0k00Qb04SyyoJ14blxJxBoH9h/Fs6JrcW9ety0bCwLYxrdehHJjqjAuH/Xr2cRBl4VwnUMxLOj+7Nk0qpiFgFZEMdwB/+4nvauac2lXRs8VAvMawL6vZnxqW7IoFgAN08G8WY99aKU7KRTw5tTBTJKAfZhOPCnj+efWP6WTgotRTz7XDPrrIriml35kUkPKEA34Fcu5pGF3ZVC9IxENCN7MuVSKeGWgNiQR++Hfzkedi3qTSTcm7vTi0zqgno+GXEo70gf14C2zoZx5b11IxRsI9RDGtKFscmBduC4cCgPZx7ZfhXNiqzEvHvbs2stCmIZ3nkQyI+n/7dg1q5mEgVdFMN0C8O0ovqyZdGpYRcAWA/Ibwb+uZ31rWrMpFwcO1MKzWoB+b6Y8Khvx59XATZOBfJlPPSjk+ujVMKaUgYxSQD3YDfvqI7mnln9lU0LLEQ7/Fsy6q2J4Zle+JBIMCd/NuFWLeWShNyUQ/OLQzUiejHmUSjgl7/Xj0juhn46HXUs60wj25y60opN6YF5PxhwJ9BHHtaBtc2FcuS8dCQTayLVQhnRhrDIgHfft28pDmYd2n0UzIurw7t82wi7lE0Fl/ALZjNrpqWmPuHCUU6l/6hhmaHU8SyaAEGlwJIlkDkuJ+diJr9drJ54gYY62zQ7raZcFFLLODGt6gnhosMijucwVxjbNE8cEfY8FhXiFBeYcJVDl3CYkmzFAyfEfLYl1+AJCAE+yvtw3ytOQu0utP+YzIEN6jfLKgrwBy9ImocXoFIUNR77O5Y+/LhdO1ajMIFr2uWSyM42wRn2sUaPqMI9RkbjHFD7HHS1qGrLBL9feJ7z1P08t1LlEemhVsCYUAgvRz75XjXtqozknFv7k0sNKkI5/lkw6K+H35dA9o5GMiV9NONUK+OUgtqSRfGJQTcgeC/oTybemb3VjUrshHw8G3Mq7Uoh2Z640IhP5793IRZuJdJFHNSDs8uDdOK6ciYRaSDXQBfPiK7GvnndtW0rDGQb3HsSyo2pwbl+2LBoEAdfFsF2DcWypPy0Y9OrYxUCWhHGcQjAt5/3r2jOpl4aPVUMy2wD+7ya8qptyaFZHzhQB/BnPvahle2lUsScVAQzSwL1YjnxppDooFf/l08JLkY9+l007KuL45tc+pJKDilBOP9YL+eQht6WQfWNRTMkfDPkUyrilYHZkUbwiEA4H3cu6U4l3Zq81IxL64N7PRpyKe5JINift8+HcOa+diIVbSTTRBvThLLKgnXhuXEnEGgf2H8Wzomtxb163LRsLAtjGt16EcmOqMC4f9evZxEGXhXCdQzEs6P7s2TSqmIWAVkQx3AH/7ie9q5pzaVdGzxUC8xrAvq9mfGpbsigWAA3TwbxZj31opTspFPDm1MFMkoB9mE48KeP559Y/pZOCi1FPPtcM+usiuKaXfmRSQ8oQDfgVy7mkYXdlUL0jEQ0I3sy5VIp4ZaA2JBH74d/OR52LepNJNybu9OLTOqCej4ZcSjvSB/XgLbOhnHlvXUjFGwj1EMa0oWxyYF24LhwKA9nHtl+Fc2KrMS8e9uzay0KYhneeRDIj6f/t2DWrmYSBV0Uw3QLw7Si+rJl0alhFwBYD8hvBv65nfWtasykXBw7UwrNagH5vpjwqG/Hn1cBNk4F8mU89KOT66NUwppSBjFJAPdgN++ojuaeWf2VTQssRDv8WzLqrYnhmV74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG8IhAOB93LulOJd2avNSMS+uDez0acinuSSDYn7fPh3DmvnYiFW0k00Qb04SyyoJ14blxJxBoH9h/Fs6JrcW9ety0bCwLYxrdehHJjqjAuH/Xr2cRBl4VwnUMxLOj+7Nk0qpiFgFZEMdwB/+4nvauac2lXRs8VAvMawL6vZnxqW7IoFgAN08G8WY99aKU7KRTw5tTBTJKAfZhOPCnj+efWP6WTgotRTz7XDPrrIriml35kUkPKEA34Fcu5pGF3ZVC9IxENCN7MuVSKeGWgNiQR++Hfzkedi3qTSTcm7vTi0zqgno+GXEo70gf14C2zoZx5b11IxRsI9RDGtKFscmBduC4cCgPZx7ZfhXNiqzEvHvbs2stCmIZ3nkQyI+n/7dg1q5mEgVdFMN0C8O0ovqyZdGpYRcAWA/Ibwb+uZ31rWrMpFwcO1MKzWoB+b6Y8Khvx59XATZOBfJlPPSjk+ujVMKaUgYxSQD3YDfvqI7mnln9lU0LLEQ7/Fsy6q2J4Zle+JBIMCd/NuFWLeWShNyUQ/OLQzUiejHmUSjgl7/Xj0juhn46HXUs60wj25y60opN6YF5PxhwJ9BHHtaBtc2FcuS8dCQTayLVQhnRhrDIgHfft28pDmYd2n0UzIurw7t82rJqLglhGN94D8ewpv62YdWtZRMEXBPEcwrCtaH5sWbQqGAYP1cOyW4F/bqc9Kxry6NbHTpSCc5pAPi/l++nUMaeVgI1TQTzZDvzpJLqolXBmVEHMEg/+F827qmN5Z1a/JRMDCtDOv1aMemuiOCYX/ePRzEmfjXiVSzkk4Pbk0TyikI2IXkw51An35i+1o5J7YV9Oxx0K+xLItqdudGJTuiAeCAXbybRRh3VgrTMhHPju3MlEmoh1kEY0Ievx7943rZuKg1lHNt8E8uMqsK6fdmxaS8IYBfAdw7GsaX9tWLUrGQUA1sSxXIJwbag+LBnz6dfGT5WDcptBPy7m/OrbMqiWh45UQjPaD/3oJbuplHFnVUDNEwD9GM68qWR6aFWwJhQCC9HPvleNe2qjOScW/uTSw0qQjn+WTDor4ffl0D2jkYyJX0041Qr45SC2pJF8YlBNyB4L+hPJt6ZvdWNSuyEfDwbcyrtSiHZnrjQiE/nv3chFm4l0kUc1IOzy4N04rpyJhFpINdAF8+Irsa+ed21bSsMZBvcexLKjanBuX7YsGgQB18WwXYNxbKk/LRj06tjFQJaEcZxCMC3oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN6AIsRmCKpM7pAy1HYYulz+oELkhijKbA6wUvSWONp8HsBiBKZI6owu0HIUtlj6nD7ggiTGaAqsTvCSNNZ4GrxeAKJE5ogqzG4QslT2mDrcfiDCZAaoSuyOMNJ0Frha/J5A4oQmyGoMrlDylDbYehy+YAKkRuiKLM5wErRW+Jo83oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN6AIsRmCKpM7pAy1HYYulz+oELkhijKbA6wUvSWONp8HsBiBKZI6owu0HIUtlj6nD7ggiTGaAqsTvCSNNZ4GrxeAKJE5ogqzG4QslT2mDrcfiDCZAaoSuyOMNJ0Frha/J5A4oQmyGoMrlDylDbYehy+YAKkRuiKLM5wErRW+Jo83oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN6AIsRmCKpM7pAy1HYYulz+oELkhijKbA6wUvSWONp8HsBiBKZI6owu0HIUtlj6nD7ggiTGaAqsTvCSNNZ4GrxeAKJE5ogqzG4QslT2mDrcfiDCZAaoSuyOMNJ0Frha/J5A4oQmyGoMrlDylDbYehy+YAKkRuiKLM5wErRW+Jo83oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN6AIsRmCKpM7pAy1HYYulz+oELkhijKbA6wUvSWONp8HsBiBKZI6owu0HIUtlj6nD7ggiTGaAqsTvCSNNZ4GrxeAKJE5ogqzG4QslT2mDrcfiDCZAaoSuyOMNJ0Frha/J5A4oQmyGoMrlDylDbYehy+YAKkRuiKLM5wErRW+Jo83oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN6AIsRmCKpM7pAy1HYYulz+oELkhijKbA6wUvSWONp8HsBiBKZI6owu0HIUtlj6nD7ggiTGaAqsTvCSNNZ4GrxeAKJE5ogqzG4QslT2mDrcfiDCZAaoSuyOMNJ0Frha/J5A4oQmyGoMrlDylDbYehy+YAKkRuiKLM5wErRW+Jo83oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN6AIsRmCKpM7pAy1HYYulz+oELkhijKbA6wUvSWONp8HsBiBKZI6owu0HIUtlj6nD7ggiTGaAqsTvCSNNZ4GrxeAKJE5ogqzG4QslT2mDrcfiDCZAaoSuyOMNJ0Frha/J5A4oQmyGoMrlDylDbYehy+YAKkRuiKLM5wErRW+Jo83oAixGYIqkzukDLUdhi6XP6gQuSGKMpsDrBS9JY42nwewGIEpkjqjC7QchS2WPqcPuCCJMZoCqxO8JI01ngavF4AokTmiCrMbhCyVPaYOtx+IMJkBqhK7I4w0nQWuFr8nkDihCbIagyuUPKUNth6HL5gAqRG6IosznAStFb4mjzegCLEZgiqTO6QMtR2GLpc/qBC5IYoymwOsFL0ljjafB7AYgSmSOqMLtByFLZY+pw+4IIkxmgKrE7wkjTWeBq8XgCiROaIKsxuELJU9pg63H4gwmQGqErsjjDSdBa4WvyeQOKEJshqDK5Q8pQ22HocvmACpEboiizOcBK0VviaPN5/3r2jOpl4aPVUMy2wD+7ya8qptyaFZHzhQB/BnPvahle2lUsScVAQzSwL1YjnxppDooFf/l08JLkY9+l007KuL45tc+pJKDilBOP9YL+eQgJQN6kpF1DFme4mKbxI3wDiQwtUpUFdwz/CYsw2LwOEu8saB/gxtC3wb7KWlizVSsUCrbJAl6AV8VDmaQVqSPdHogFOT1pZhn43Kq/8zulp0xgV9WTDor4ffl0D1BmG27N8hKdtbPVWNmlDN1oaqZBHpoVbAmFAIL0c++W/4+hVYCBky1bkJjlz+qCMTayLVQhnRhrDIgHfft28pGOZMJneh9YLXc4Q92bFpLwhgF8B3Dsaxpf21YtSsZBQIsGzpD/2+l0AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72ob9SmfpnBIlNmxD4UoRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG8IhAOB93LulOJd2avNSMS+uDez0acinuSSDYn7fPh3DmvnYiFW0k00Qb04SyyoJ14blxJxBoH9h/Fs6JrcW9ety0bCwLYxrdehHJjqjAuH/Xr2cRBl4VwnUMxLOj+7Nk0qpiFgFZEMdwB/+4nvauac2lXRs8VAvMawL6vZnxqW7IoFgAN08G8WY99aKU7KRTw5tTBTJKAfZhOPCnj+efWP6WTgotRTz7XDPrrIriml35kUkPKEA34Fcu5pGF3ZVC9IxENCN7MuVSKeGWgNiQR++Hfzkedi3qTSTcm7vTi0zqgno+GXEo70gf14C2zoZx5b11IxRsI9RDGtKFscmBduC4cCgPZx7ZfhXNiqzEvHvbs2stCmIZ3nkQyI+n/7dg1q5mEgVdFMN0C8O0ovqyZdGpYRcAWA/Ibwb+uZ31rWrMpFwcO1MKzWoB+b6Y8Khvx59XATZOBfJlPPSjk+ujVMKaUgYxSQD3YDfvqI7mnln9lU0LLEQ7/Fsy6q2J4Zle+JBIMCd/NuFWLeWShNyUQ/OLQzUiejHmUSjgl7/Xj0juhn46HXUs60wj25y60opN6YF5PxhwJ9BHHtaBtc2FcuS8dCQTayLVQhnRhrDIgHfttRu0KtxJhsnWsEfMagLTZli71FM+FP16AbmeDE4l8kq9HjewO5r7ct83H5Buqwy0wpGyMsgJLYoV7cpioqJ0/E+iyxcl66TNC/DBFXJ2wRApvpdUDj6XR7Oyg07plk+iF40l8NNvqPM32TJgaB73BQCg/zPVfZbSYwc/yYi42wEOJY5b/+ZuWcj0nxO241NyxcY/uKlG4eac3boPWBTxxpDZfX2iX/jfzzLb71RGQVFdG3NNiA0mLPbMZrKS+Fq8VZ43JG6NprdtehSZNYoKDt4WICaMaw24lZLj+xjQuwe9PNfO9z9XRC4IrajFeByoQXvc2dLuKYKBpbKb1SsLK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXPqSSg4pQTj/WC/nkIbelkH1jUUzJHwz5FMq4pWB2ZFG28poxVt2CuNEVV94o94uqU4l3Zq81IxL64N7PRpyKe5JINift8+HcOa+diIVbSTTRBvThLLKgnXhuXEnEGgf2H8Wzomtxb163LRsLAtjGt16EcmOqMC4f9evZxEGXhXCdQzEs6P7s2TSqmIWAVkQx3AH/7ie9q5pzaVdGzxUC8xrAvq9mfGpbsigWAA3TwbxZj31opTspFPDm1MFMkoB9mE48KeP559Y/pZOCi1FPPtcM+usiuKaXfmRSQ8oQDfgVy7mkYXdlUL0jEQ0I3sy5VIp4ZaA2JBH74d/OR52LepNJNybu9OLTOqCej4ZcSjvSB/XgLbOhnHlvXUjFGwj1EMa0oWxyYF24LhwKA9nHtl+Fc2KrMS8e9uzay0KYhneeRDIj6f/t2DWrmYSBV0Uw3QLw7Si+rJl0alhFwBYD8hvBv65nfWtasykXBw7UwrNagH5vpjwqG/Hn1cBNk4F8mU89KOT66NUwppSBjFJAPdgN++ojuaeWf2VTQssRDv8WzLqrYnhmV74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc+O7cyUSaiHWQRjQh6/Hv3jetm4qDWUc23wTy4yqwrp92bFpLwhgF8B3Dsaxpf21YtSsZBQDWxLFcgnBtqD4sGfPp18ZPlYNym0E/Lub86tsyqJaHjlRCM9oP/eglu6mUcWdVQM0TAP0YzrypZHpoVbAmFAIL0c++V417aqM5Jxb+5NLDSpCOf5ZMOivh9+XQPaORjIlfTTjVCvjlILakkXxiUE3IHgv6E8m3pm91Y1K7IR8PBtzKu1KIdmeuNCIT+e/dyEWbiXSRRzUg7PLg3TiunImEWkg10AXz4iuxr553bVtKwxkG9x7EsqNqcG5ftiwaBAHXxbBdg3FsqT8tGPTq2MVAloRxnEIwLef969ozqZeGj1VDMtsA/u8mvKqbcmhWR84UAfwZz72oZXtpVLEnFQEM0sC9WI58aaQ6KBX/5dPCS5GPfpdNOyri+ObXMWZjUmnmMvEPj5vaLe+7OsgOSfgCelzVIazlf4qytW+6gSgtzexk7xxT7KbXHwra5ADr+gNdZfgCoPfd4+mOd44rUIuZsqZOtIjp6BuXGCv6QR5kvhcrukh4cBEo6z3kNAiB1CL16C5Q7x5mvhzhZ5fLXGSwuhcueo0/JvX78fQJk9TvMViXLfsTSlNjITdOrjlU0xqC1k3tayDa6tJXvfBr1myEdwLxM3gii3AvRn+FAX2rxDs6Y7yDcRgn4ZUodWtZRMEXBPEcwrCtaH5sWbQqGAYP1cOyW4F/bqc9Kxry6NbHTpSCc5pAPi/l++nUMaeVgI1TQTzZDvzpJLqolXBmVEHMEg/+F827qmN5Z1a/JRMDCtDOv1aMemuiOCYX/ePRzEmfjXiVSzkk4Pbk0TyikI2IXkw51An35i+1o5J7YV9Oxx0K+xLItqdudGJTuiAeCAXbybRRh3VgrTMhHPju3MlEmoh1kEY0Ievx7943rZuKg1lHNt8E8uMqsK6fdmxaS8IYBfAdw7GsaX9tWLUrGQUA1sSxXIJwbag+LBnz6dfGT5WDcptBPy7m/OrbMqiWh45UQjPaD/3oJbuplHFnVUDNEwD9GM68qWR6aFWwJhQCC9HPvleNe2qjOScW/uTSw0qQjn+WTDor4ffl0D2jkYyJX0041Qr45SC2pJF8YlBNyB4L+hPJt6ZvdWNSuyEfDwbcyrtSiHZnrjQiE/nv3chFm4l0kUc1IOzy4N04rpyJhFpINdAF8+Irsa+ed21bSsMZBvcexLKjanBuX7YsGgQB18WwXYNxbKk/LRj06tjFQJaEcZxCMC3n/evaM6mXho9VQzLbAP7vJryqm3JoVkfOFAH8Gc+9qGV7aVSxJxUBDNLAvViOfGmkOigV/+XTwkuRj36XTTsq4vjm1z6kkoOKUE4/1gv55CG3pZB9Y1FMyR8M+RTKuKVgdmRRvCIQDgfdy7pTiXdmrzUjEvrg3s9GnIp7kkg2J+3z4dw5r52IhVtJNNEG9OEssqCdeG5cScQaB/YfxbOia3FvXrctGwsC2Ma3XoRyY6owLh/169nEQZeFcJ1DMSzo/uzZNKqYhYBWRDHcAf/uJ72rmnNpV0bPFQLzGsC+r2Z8aluyKBYADdPBvFmPfWilOykU8ObUwUySgH2YTjwp4/nn1j+lk4KLUU8+1wz66yK4ppd+ZFJDyhAN+BXLuaRhd2VQvSMRDQjezLlUinhloDYkEfvh385HnYt6k0k3Ju704tM6oJ6PhlxKO9IH9eAts6GceW9dSMUbCPUQxrShbHJgXbguHAoD2ce2X4VzYqsxLx727NrLQpiGd55EMiPp/+3YNauZhIFXRTDdAvDtKL6smXRqWEXAFgPyG8G/rmd9a1qzKRcHDtTCs1qAfm+mPCob8efVwE2TgXyZTz0o5Pro1TCmlIGMUkA92A376iO5p5Z/ZVNCyxEO/xbMuqtieGZXviQSDAnfzbhVi3lkoTclEPzi0M1Inox5lEo4Je/149I7oZ+Oh11LOtMI9ucutKKTemBeT8YcCfQRx7WgbXNhXLkvHQkE2si1UIZ0YawyIB337dvKQ5mHdp9FMyLq8O7fNqyai4JYRjfeA/HsKb+tmHVrWUTBFwTxHMKwrWh+bFm0KhgGD9XDsluBf26nPSsa8ujWx06UgnOaQD4v5fvp1DGnlYCNU0E82Q786SS6qJVwZlRBzBIP/hfNu6pjeWdWvyUTAwrQzr9WjHprojgmF/3j0cxJn414lUs5JOD25NE8opCNiF5MOdQJ9+YvtaOSe2FfTscdCvsSyLanbnRiU7ogHggF28m0UYd1YK0zIRz47tzJRJqIdZBGNCHr8e/eN62bioNZRzbfBPLjKrCun3ZsWkvCGAXwHcOxrGl/bVi1KxkFANbEsVyCcG2oPiwZ8+nXxk+Vg3KbQT8u5vzq2zKoloeOVEIz2g/96CW7qZRxZ1VAzRMA/RjOvKlkemhVsCYUAgvRz75XjXtqozknFv7k0sNKkI5/lkw6K+H35dA9o5GMiV9NONUK+OUgtqSRfGJQTcgeC/oTybemb3VjUrshHw8G3Mq7Uoh2Z640IhP5793IRZuJdJFHNSDs8uDdOK6ciYRaSDXQBfPiK7GvnndtW0rDGQb3HsSyo2pwbl+2LBoEAdfFsF2DcWypPy0Y9OrYxUCWhHGcQjAt5/3r2jOpl4aPVUMy2wD+7ya8qptyaFZHzhQB/BnPvahle2lUsScVAQzSwL1YjnxppDooFf/l08JLkY9+l007KuL45tc+pJKDilBOP9YL+eQht6WQfWNRTMkfDPkUyrilYHZkUbwiEA4H3cu6U4l3Zq81IxL64N7PRpyKe5JINift8+HcOa+diIVbSTTRBvThLLKgnXhuXEnEGgf2H8Wzomtxb163LRsLAtjGt16EcmOqMC4f9evZxEGXhXCdQzEs6P7s2TSqmIWAVkQx3AH/7ie9q5pzaVdGzxUC8xrAvq9mfGpbsigWAA3TwbxZj31opTspFPDm1MFMkoB9mE48KeP559Y/pZOCi1FPPtcM+usiuKaXfmRSQ8oQDfgVy7mkYXdlUL0jEQ0I3sy5VIp4ZaA2JBH74d/OR52LepNJNybu9OLTOqCej4ZcSjvSB/XgLbOhnHlvXUjFGwj1EMa0oWxyYF24LhwKA9nHtl+Fc2KrMS8e9uzay0KYhneeRDIj6f/t2DWrmYSBV0Uw3QLw7Si+rJl0alhFwBYD8hvBv65nfWtasykXBw7UwrNagH5vpjwqG/Hn1cBNk4F8mU89KOT66NUwppSBjFJAPdgN++ojuaeWf2VTQssRDv8WzLqrYnhmV74kEgwJ3824VYt5ZKE3JRD84tDNSJ6MeZRKOCXv9ePSO6GfjoddSzrTCPbnLrSik3pgXk/GHAn0Ece1oG1zYVy5Lx0JBNrItVCGdGGsMiAd9+3bykOZh3afRTMi6vDu3zasmouCWEY33gPx7Cm/rZh1a1lEwRcE8RzCsK1ofmxZtCoYBg/Vw7JbgX9upz0rGvLo1sdOlIJzmkA+L+X76dQxp5WAjVNBPNkO/OkkuqiVcGZUQcwSD/4XzbuqY3lnVr8lEwMK0M6/Vox6a6I4Jhf949HMSZ+NeJVLOSTg9uTRPKKQjYheTDnUCffmL7WjknthX07HHQr7Esi2p250YlO6IB4IBdvJtFGHdWCtMyEc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3Pju3MlEmoh1kEY0Ievx7943rZuKg1lHNt8E8uMqsK6fdmxaS8IYBfAdw7GsaX9tWLUrGQUA1sSxXIJwbag+LBnz6dfGT5WDcptBPy7m/OrbMK5x0/XnjjfYzdMa6q+zAdITSDPL5LfuKFFW3z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r1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbf6wV/FetNp60L9rHDNB8EQ6D37YQEvhVUYWddG+avJUTAt5zrm16IK2y2IaxI/7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvt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w2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDISNRBWE1KWjytKgYhtQxow515EBXCKqqDoay5ILQxo8FKVfpVUnomjf+XUEWh+GzVfeZO91/IcNlB6lL7Y8xJZb5jlX5krD5WKXeduC6XPlUNeF5LNqHIdJ9zkW3GHz5WFkOmDgQgOm8kQOdzCSdA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/RcxW3WfudP+GDJcdpC61P8ZM113kbvV8Bo0XniSvNbxGzVfeZO91/IcNlB6lL7Y8x03UXuVv9n0HjhSfJaw2vUfOVN9l7Hb9hA6VH6Ystz3ETtVf5mz3fgSPFZwmrTe+RM9V3Gbtd/6FD5Ycpy20PsVP1lznbfR/BYwWnSeuNL9FzFbdZ+50/4YMlx2kLrU/xkzXXeRu9XwGjReeJK81vEbNV95k73X8hw2UHqUvtjzHTdRe5W/2fQeOFJ8lrDa9R85U32Xsdv2EDpUfpiy3PcRO1V/mbPd+BI8VnCatN75Ez1XcZu13/oUPlhynLbQ+xU/WXOdt9H8FjBadJ640v0XMVt1n7nT/hgyXHaQutT/GTNdd5G71fAaNF54krzW8Rs1X3mTvdfyHDZQepS+2PMdN1F7lb/Z9B44UnyWsNr1HzlTfZex2/YQOlR+mLLc9xE7VX+Zs934EjxWcJq03vkTPVdxm7Xf+hQ+WHKcttD7FT9Zc5230fwWMFp0nrjS/R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 NFP ODAxAPotAAAAAAAAAAABAAAAAACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AAAAAAAAAAAAAIA/AACAPwAAgD/NzMw+AACAPwAAgD8BAAAAAADAPwAAwD8AAIA/AACAPwAAgD8AAAAAAAAAP5qZmT4AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAIA/AACAPwAAgD8AAQAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAgAAAAAAgD8AAAAAAAAAAAAAwD8AAAAAAAAAAAAAAD8BAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQD8AAIA/AACAPwAAgD8BAAAAAAAAAAAAgD8AAIA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgwMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== ParamsHash1 1450754537 ParamsHash2 260 ParamsHash3 0 name "Reduce Noise v4_2" selected true xpos 2686 ypos 66 } set N19a8d400 [stack 0] NoOp { name NoOp2 selected true xpos 2469 ypos 470 } push $N19020400 NoOp { name NoOp1 selected true xpos 2892 ypos 470 } push $N19a8d400 Dot { name Dot3 selected true xpos 2720 ypos 129 } set N19a8d000 [stack 0] Dot { name Dot4 selected true xpos 2535 ypos 129 } Blur { size 4 name Blur3 selected true xpos 2501 ypos 218 } set N19a8c800 [stack 0] push $N19a8c800 push $N19a8d000 Merge2 { inputs 2 operation from name Merge5 selected true xpos 2686 ypos 224 } RotoPaint { curves {{{v x3f99999a} {f 0} {n {layer Root {f 2097152} {t x44d60000 x4489a000} {a pt1x 0 pt1y 0 pt2x 0 pt2y 0 pt3x 0 pt3y 0 pt4x 0 pt4y 0 ptex00 0 ptex01 0 ptex02 0 ptex03 0 ptex10 0 ptex11 0 ptex12 0 ptex13 0 ptex20 0 ptex21 0 ptex22 0 ptex23 0 ptex30 0 ptex31 0 ptex32 0 ptex33 0 ptof1x 0 ptof1y 0 ptof2x 0 ptof2y 0 ptof3x 0 ptof3y 0 ptof4x 0 ptof4y 0 pterr 0 ptrefset 0 ptmot x40800000 ptref 0} {cubiccurve Burn15 512 catmullrom {cc {f 2080} {px x44816000 {x44b86666 x4456cccd 1} {x44b84000 x4456cccd 1} {x44b80666 x4456c000 1} {x44b74000 x44566666 1} {x44b63333 x44563333 1} {x44b54ccd x44564000 1} {x44b4e666 x44568ccd 1} {x44b4c666 x44570000 1} {x44b4c000 x44574000 1} {x44b4d99a x44576666 1} {x44b54ccd x44574000 1} {x44b5e666 x4456cccd 1} {x44b6999a x44564ccd 1} {x44b73333 x4455cccd 1} {x44b6f333 x4455f333 1} {x44b6799a x44564000 1} {x44b50666 x44576666 1} {x44b4399a x4457c000 1} {x44b4799a x44577333 1} {x44b4e666 x44573333 1} {x44b5f99a x4456f333 1}}} {tx x44816000 x44b5fca7 x4456c925} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x42340000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn14 512 catmullrom {cc {f 2080} {px x44816000 {x44c14666 x4453c000 1} {x44c12666 x4453e666 1} {x44c0cccd x44544ccd 1} {x44c02666 x44550000 1} {x44c00666 x44553333 1} {x44bf599a x44560000 1} {x44bec666 x4456b333 1} {x44bee666 x4456199a 1} {x44bf3333 x44556666 1} {x44c0199a x44544ccd 1} {x44c0e000 x44538ccd 1} {x44c17333 x44530ccd 1} {x44c2199a x4452999a 1} {x44c27333 x44528ccd 1} {x44c2999a x44528ccd 1} {x44c2c000 x44528000 1} {x44c2d99a x4452b333 1}}} {tx x44816000 x44c0dee0 x44542061} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x42340000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn13 512 catmullrom {cc {f 2080} {px x44816000 {x44b99333 x4457599a 1} {x44b9499a x44574666 1} {x44b8f000 x44572ccd 1} {x44b81000 x4456c666 1} {x44b69000 x4455f333 1} {x44b5799a x44556ccd 1} {x44b3e333 x44551333 1}}} {tx x44816000 x44b765f1 x44566ea0} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x42340000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn12 512 catmullrom {cc {f 2080} {px x44816000 {x44bda000 x4464a000 1} {x44bd9000 x44646000 1} {x44bd8ccd x44640ccd 1} {x44bdb99a x4464199a 1} {x44bdd333 x4464a000 1} {x44bdd000 x4464e666 1} {x44bda666 x4464c666 1} {x44bd5000 x4464399a 1} {x44bd2ccd x4463eccd 1}}} {tx x44816000 x44bd94fc x44646667} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn11 512 catmullrom {cc {f 2080} {px x44816000 {x44b33666 x445a8ccd 1} {x44b33333 x445a2ccd 1} {x44b3299a x4459cccd 1} {x44b3199a x44592000 1} {x44b2f000 x4459accd 1} {x44b2d333 x445a4000 1} {x44b2bccd x445b1333 1} {x44b2c333 x445a8000 1} {x44b2cccd x445a2000 1} {x44b2d666 x4459e000 1} {x44b2d666 x445a2000 1} {x44b2d666 x445a8000 1} {x44b2cccd x445b199a 1} {x44b2cccd x445aa000 1} {x44b2cccd x445a2000 1} {x44b2c99a x4459accd 1} {x44b2accd x4459f333 1} {x44b28666 x445a6666 1} {x44b21333 x445b4ccd 1}}} {tx x44816000 x44b2d3b5 x445a42b1} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn10 512 catmullrom {cc {f 2080} {px x44816000 {x44b5d99a x4462b333 1} {x44b5a666 x44628000 1} {x44b55333 x44623333 1} {x44b50666 x4461c000 1} {x44b4f99a x44616666 1} {x44b53333 x4461a666 1} {x44b56666 x4461e666 1} {x44b5b99a x4462599a 1} {x44b5b333 x4462199a 1} {x44b5a000 x4461cccd 1} {x44b58000 x44617333 1} {x44b5accd x44618000 1} {x44b5f333 x4461a666 1} {x44b66666 x4461d99a 1} {x44b64000 x4461e666 1} {x44b5f99a x4461d99a 1} {x44b5199a x44618ccd 1} {x44b46666 x4460f333 1} {x44b44666 x4460d99a 1}}} {tx x44816000 x44b57943 x4461c8c2} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn9 512 catmullrom {cc {f 2080} {px x44816000 {x44b82000 x4451999a 1} {x44b82000 x44512ccd 1} {x44b82000 x4450b99a 1} {x44b8199a x444ff99a 1} {x44b7eccd x4450accd 1} {x44b7b000 x44518666 1} {x44b74000 x4452a666 1} {x44b7299a x4451e000 1} {x44b7299a x44516ccd 1} {x44b72ccd x4450f333 1} {x44b76666 x4450b99a 1} {x44b7999a x4450c666 1} {x44b80333 x44513333 1} {x44b82000 x4451999a 1} {x44b8099a x4451d333 1} {x44b7e333 x4451e000 1} {x44b78ccd x4451799a 1} {x44b75000 x4450d99a 1} {x44b75000 x44508ccd 1}}} {tx x44816000 x44b7b02b x44513bf7} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn8 512 catmullrom {cc {f 2080} {px x44816000 {x44c1b333 x444a4ccd 1} {x44c1a000 x444ae666 1} {x44c1999a x444b599a 1} {x44c1999a x444b999a 1} {x44c1eccd x444a8ccd 1} {x44c20ccd x444a2666 1} {x44c22000 x4449cccd 1} {x44c20666 x444a2666 1} {x44c1eccd x444ab333 1} {x44c1c000 x444b999a 1} {x44c1cccd x444b4000 1} {x44c1d333 x444b0000 1} {x44c1b333 x444b3333 1} {x44c18ccd x444bcccd 1} {x44c14666 x444cc000 1} {x44c10ccd x444d6666 1}}} {tx x44816000 x44c1b866 x444b2800} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn7 512 catmullrom {cc {f 2080} {px x44816000 {x44bee666 x443d4ccd 1} {x44be999a x443d2666 1} {x44be999a x443ce666 1} {x44bea000 x443c7333 1} {x44bec000 x443c6666 1} {x44becccd x443d2666 1} {x44becccd x443da666 1} {x44beb333 x443e2666 1} {x44bea000 x443de666 1} {x44be8666 x443d4ccd 1} {x44be8ccd x443d8ccd 1} {x44be8ccd x443dcccd 1} {x44be8ccd x443e4000 1} {x44be599a x443e4000 1} {x44be0ccd x443dc000 1} {x44be0000 x443d4000 1} {x44be199a x443d0ccd 1} {x44be7333 x443d4000 1} {x44be999a x443d6666 1}}} {tx x44816000 x44be886d x443d6a72} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn6 512 catmullrom {cc {f 2080} {px x44816000 {x44b5dccd x4440e666 1} {x44b5f99a x4440399a 1} {x44b61000 x443fc000 1} {x44b62666 x443f6666 1} {x44b62666 x443faccd 1} {x44b62000 x44402666 1} {x44b60333 x44412000 1} {x44b60000 x4441e666 1} {x44b6099a x44418000 1} {x44b61000 x44414000 1} {x44b61000 x4440f99a 1}}} {tx x44816000 x44b60ba3 x44409f6c} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn5 512 catmullrom {cc {f 2080} {px x44816000 {x44b3799a x44478ccd 1} {x44b38000 x4446a666 1} {x44b39000 x44462000 1} {x44b3b000 x4445399a 1} {x44b3b666 x4444f99a 1} {x44b3accd x44458ccd 1} {x44b39666 x44462666 1} {x44b36333 x44478666 1} {x44b36333 x4448199a 1} {x44b38000 x44478ccd 1} {x44b39666 x44470000 1} {x44b3999a x44468ccd 1} {x44b38333 x4446f333 1} {x44b35ccd x4447a666 1} {x44b33000 x4448e000 1}}} {tx x44816000 x44b383d7 x4446d40e} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn4 512 catmullrom {cc {f 2080} {px x44816000 {x44b4399a x444d8000 1} {x44b4399a x444d2666 1} {x44b44000 x444ccccd 1} {x44b44666 x444c4ccd 1} {x44b44000 x444ca666 1} {x44b42000 x444d3333 1} {x44b40ccd x444de666 1} {x44b40ccd x444d4ccd 1} {x44b40ccd x444ce666 1} {x44b40ccd x444c7333 1} {x44b40ccd x444c3333 1} {x44b40ccd x444bd99a 1}}} {tx x44816000 x44b42334 x444cd99b} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn3 512 catmullrom {cc {f 2080} {px x44816000 {x44b4399a x444dcccd 1} {x44b46666 x444ccccd 1} {x44b4799a x444c4000 1} {x44b48000 x444b999a 1} {x44b4799a x444b4000 1} {x44b46000 x444bc000 1} {x44b44000 x444c6666 1} {x44b42ccd x444d7333 1} {x44b42ccd x444dd99a 1} {x44b42ccd x444d599a 1} {x44b42666 x444d0ccd 1} {x44b42000 x444c8000 1} {x44b40000 x444d199a 1} {x44b3f333 x444d8000 1} {x44b3e666 x444dcccd 1}}} {tx x44816000 x44b4392c x444cd47b} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn2 512 catmullrom {cc {f 2080} {px x44816000 {x44b68666 x44446666 1} {x44b6799a x44440ccd 1} {x44b66ccd x44436666 1} {x44b66ccd x44428000 1} {x44b66ccd x44422666 1} {x44b64ccd x44428ccd 1} {x44b64000 x4442cccd 1} {x44b6199a x44437333 1} {x44b60ccd x44442666 1}}} {tx x44816000 x44b6549f x444345b1} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}} {cubiccurve Burn1 512 catmullrom {cc {f 2080} {px x44816000 {x44b65000 x44445333 1} {x44b6599a x4443d99a 1} {x44b66333 x44438666 1} {x44b66666 x4442eccd 1} {x44b6699a x44428000 1} {x44b65000 x4442accd 1} {x44b6399a x4443799a 1} {x44b63666 x4443f99a 1} {x44b62ccd x44446000 1} {x44b62666 x4444b333 1}}} {tx x44816000 x44b64b33 x4443a1ea} {a ro 0 go 0 bo 0 ao 0 opc x3dcccccd bs x41700000 bm x40400000 bu 1 src 1 str 1 spx x44d60000 spy x4489a000 sb 1 ltn x44816000 ltm x44816000 ltt x40000000 tt x41b00000}}}}}} toolbox {burn { { selectAll str 1 ssx 1 ssy 1 sf 1 } { createBezier str 1 ssx 1 ssy 1 sf 1 sb 1 } { createBezierCusped str 1 ssx 1 ssy 1 sf 1 sb 1 } { createBSpline str 1 ssx 1 ssy 1 sf 1 sb 1 } { createEllipse str 1 ssx 1 ssy 1 sf 1 sb 1 } { createRectangle str 1 ssx 1 ssy 1 sf 1 sb 1 } { createRectangleCusped str 1 ssx 1 ssy 1 sf 1 sb 1 } { brush str 1 ssx 1 ssy 1 sf 1 sb 1 } { eraser src 2 str 1 ssx 1 ssy 1 sf 1 sb 1 } { clone opc 0.1 bs 15 src 1 stx 6 sty -13 str 1 ssx 1 ssy 1 sf 1 sb 1 ltn 1035 ltm 1035 tt 19 } { reveal src 3 str 1 ssx 1 ssy 1 sf 1 sb 1 } { dodge src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 tt 21 } { burn opc 0.1 bs 45 src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 ltn 1035 ltm 1035 tt 22 } { blur src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { sharpen src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } { smear src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } } } toolbar_blending_mode color-burn toolbar_opacity 0.1000000015 toolbar_brush_size 45 toolbar_brush_hardness 0.200000003 toolbar_lifetime_type single toolbar_lifetime_start 1035 toolbar_lifetime_end 1035 toolbar_paint_source fg toolbar_source_transform_scale {1 1} toolbar_source_transform_center {1712 1101} colorOverlay {0 0 0 0} opacity 0.1000000015 paint_source foreground blending_mode color-burn lifetime_start 1035 lifetime_end 1035 motionblur_on true brush_size 45 brush_spacing 0.05000000075 brush_hardness 0.200000003 source_black_outside true name RotoPaint2 selected true xpos 2686 ypos 290 } Merge2 { inputs 2 operation plus name Merge6 selected true xpos 2686 ypos 367 } Group { inputs 3 name DasGrain help "DasGrain makes regraining as simple as clicking a few buttons.\n\nFollow the steps in the Help tab and you'll have a perfect regrain in no time!" onCreate "import random\n\ntestimonials = \[\n \"Such an elegant solution, love it!\",\n \"Your gizmo is beyond expectation\",\n \"Totally awesome!\",\n \"DasGrain is officially the best thing ever\",\n \"It's really working!\",\n \"Das bringt Tränen in meine Augen\",\n \"DasGrain is the salvation we waited for\",\n \"I save a lot of time, and definitely my nerves :)\",\n \"It's alright\",\n \"My new favourite node, thanks!<br>Having said that, ...\"\n ]\n\nnode = nuke.thisNode()\nnode\['testimonial'].setValue('<br><br><br><i>«%s»</i><br>— anonymous<br><br>' % random.choice(testimonials))\nnode\['box'].setFlag(nuke.NO_ANIMATION)" knobChanged "n = nuke.thisNode()\nk = nuke.thisKnob()\n\nif k.name() == 'box':\n this_frame = nuke.frame()\n n\['sample_frame'].setValue(this_frame)\n\nif k.name() == 'scatter':\n n\['divider04'].setVisible(k.value() == False)\n n\['divider05'].setVisible(k.value() == True)" tile_color 0x7f7f7fff selected true xpos 2686 ypos 464 addUserKnob {20 DasGrain_tab l DasGrain} addUserKnob {41 output t "<strong>regrained comp</strong> it is what it sais\n<strong>plate grain</strong> plate minus degrained plate\n<strong>normalised grain</strong> check if the normalization worked. It should be as even as possible. This is what you want to output if you want to prerender a grain plate. Later you can plug it into the <i>external grain</i> input of another DasGrain\n<strong>adapted grain</strong> check if the adaptation worked. Output this if you want to further manipulate the grain (who knows what the sup is gonna come up with...). After, simply plus it to your comp (at that point the comp has to be in the <i>camera</i> colorspace, as set in the <i>Analyze</i> tab).\n<strong>grain QC</strong> check if voronoi seams are visible (→ edgeblend), or the scattered grain looks different to the original plate grain (→ maybe bad sample area or wrong luminance degrain amount)" T Output.output} addUserKnob {4 meta l "metadata from" t "Chances are you want to use the metadata from the plate, but who am I to assume :)" M {COMP PLATE}} addUserKnob {26 spacer01_1 l " " T " "} addUserKnob {20 GrainGroupBegin l "" +STARTLINE n -2} addUserKnob {20 Analyze_tab l Analyze} addUserKnob {26 text l <strong>Colorspace} addUserKnob {41 project_colorspace l project t "set this to the project color space" T OCIOColorSpace1.in_colorspace} addUserKnob {22 python_button l "What's this all about?" -STARTLINE T "nuke.message(\"Regraining in other color spaces than the camera native linear space can lead to unexpected behaviour.\\n\\nFor example converting Alexa plates to ACEScg might introduce negative values due to ACEScg's smaller gamut. In that case converting back to ARRI Linear ALEXA Wide Gamut will probably help.\\nJust set <i>project</i> to ACEScg and <i>camera</i> to ARRI Linear ALEXA Wide Gamut.\\n\\nThis might be transferable to other cameras, but I've only tested with Alexas.\\n---------\\nBypass by setting both knobs to the same value.\")"} addUserKnob {41 camera_colorspace l camera t "set this to the camera native linear space" T OCIOColorSpace1.out_colorspace} addUserKnob {26 text_2 l " " T " "} addUserKnob {26 level l "<strong>Degrain amount"} addUserKnob {78 luminance t "Leave this at 1 if you're working on a completely degrained plate.\n\nIn case you decided to leave some luminance grain in the degrained plate (use the DegrainHelper node for this!), set this to the same value as in the DegrainHelper in order to compensate.\n\nIf the luminance degrain amount was set to 0.8, this needs to be set to 0.8 as well.\n\nYou need to select a mask of all elements that cover the plate, otherwise the grain of whole comp will be too strong " n 1} luminance 1 addUserKnob {26 divider01 l " "} addUserKnob {41 degrain_amount_mask l "degrain amount mask" t "Use this channel from the mask input to specify in what area of the comp the missing luminance grain needs to be compensated." T Multiply1.maskChannelMask} addUserKnob {41 invert_mask l invert -STARTLINE T Multiply1.invert_mask} addUserKnob {26 spacer02 l " " T " "} addUserKnob {26 divider02 l <strong>Analyze} addUserKnob {3 number_of_frames l "number of frames" t "Set the number of sample frames to be spread across the input range.\n\nMore frames lead to higher accuracy.\n\nIf there are particularly bright or dark frames, set them manually in the knob below to make sure they are part of the analysis.\n\nIf you want to set all sample frames manually, set this to 0 and add the frames in the knob below."} number_of_frames 10 addUserKnob {1 additional_frames l "additional frames" t "Set additional frames like this:\n\n1001,1020,1053 (single frames)\n1020-1040 (frame ranges)\n1020-1040x4 (frame ranges with step)"} addUserKnob {3 sample_count l "sample count" t "The samples are spread across the sample range (which gets calculated automatically) based on the AlexaV3LogC curve. This results in more samples in the dark areas and less samples in the brights.\n\nMore samples lead to a more detailed response curve (while the accuracy is limited by the quality of the degrain)."} sample_count 20 addUserKnob {22 analyze l Analyze t "this is where the magic happens" T "import base64\nthis = nuke.thisNode()\n\n\ndef _sample_count(this):\n \"\"\"returns the sample count\"\"\"\n\n sample_count = int(this\['sample_count'].value())\n\n if sample_count <= 0:\n raise RuntimeError('Enter a sample count greater than 0')\n\n else:\n return sample_count\n\n\ndef _generate_frame_list(this):\n \"\"\"converts the frames submitted by the user into a list\"\"\"\n\n frame_list = \[]\n number_of_frames = int(this\['number_of_frames'].value())\n additional_frames = this\['additional_frames'].value()\n\n if number_of_frames < 1 and additional_frames is '':\n raise RuntimeError('Either set the number of frames > 0\\nor define additional frames')\n\n first_frame = max(this.input(1).firstFrame(), this.input(2).firstFrame())\n last_frame = min(this.input(1).lastFrame(), this.input(2).lastFrame())\n\n if number_of_frames > 0:\n distance = (last_frame - first_frame) / (number_of_frames)\n frame = first_frame + distance / 2\n\n for x in range(number_of_frames):\n int_frame = int(round(frame))\n if int_frame not in frame_list:\n frame_list.append(int_frame)\n\n frame += distance\n\n frange = nuke.FrameRanges(additional_frames.split(','))\n\n for r in frange:\n for f in r:\n if f >= first_frame and f <= last_frame:\n if f not in frame_list:\n frame_list.append(f)\n\n frame_list.sort()\n\n return frame_list\n\n\ndef _setup_for_multiframe(frame_list):\n \"\"\" arranges all sample frames next to each other, starting at frame 0\n and sets the frame number knob of the FrameBlend node\"\"\"\n\n time_warp = nuke.toNode('TimeWarp1')\n time_warp\['lookup'].clearAnimated()\n time_warp\['lookup'].setAnimated()\n anim_list = \[]\n\n for n, frame in enumerate(frame_list):\n anim_list.append(nuke.AnimationKey(n, frame))\n\n anim = time_warp\['lookup'].animation(0)\n anim.addKey(anim_list)\n\n frame_blend = nuke.toNode('FrameBlend1')\n frame_blend\['endframe'].setValue(len(frame_list)-1)\n\n\ndef _generate_sample_list(sample_count, sample_range, sample_radius):\n \"\"\"generate a list of sample values spread equally between the\n min and max values of the sample range\"\"\"\n\n sample_list = \[]\n\n for item in range(0, sample_count):\n sample_list.append(float(item) / sample_count * (sample_range\[1] - sample_range\[0]) + sample_range\[0] + sample_radius)\n\n return sample_list\n\n\ndef _get_sample_range(channel, channel_list, frame_list):\n \"\"\" samples the minimum and maximum values of the given frame range and\n sets the sample range to those values\"\"\"\n\n curve_tool = nuke.toNode('CurveTool_Range')\n min_knob = curve_tool\['minlumapixvalue']\n max_knob = curve_tool\['maxlumapixvalue']\n\n min_knob.setAnimated()\n max_knob.setAnimated()\n\n curve_tool\['channels'].setValue(channel)\n\n nuke.execute(curve_tool, nuke.FrameRanges(frame_list))\n\n index = channel_list.index(channel)\n min_list = \[key.y for key in min_knob.animation(index).keys()]\n max_list = \[key.y for key in max_knob.animation(index).keys()]\n\n min_value = min(min_list)\n max_value = max(max_list)\n\n min_knob.clearAnimated()\n max_knob.clearAnimated()\n curve_tool\['minlumapixdata'].clearAnimated()\n curve_tool\['maxlumapixdata'].clearAnimated()\n\n return \[min_value, max_value]\n\n\ndef _sample_it(keyer, curve_tool, sample, sample_radius):\n \"\"\"analyze the grain level per channel and sample value in the sample range\"\"\"\n\n keyer\['temp_expr0'].setValue(str(sample - sample_radius))\n keyer\['temp_expr1'].setValue(str(sample + sample_radius))\n\n intensity_knob = curve_tool\['intensitydata']\n intensity_knob.clearAnimated()\n intensity_knob.setAnimated()\n\n nuke.execute(curve_tool, nuke.frame(), nuke.frame())\n sample_values = intensity_knob.value()\n intensity_knob.clearAnimated()\n\n return sample_values\n\n\ndef check_inputs(this):\n if this.input(1) is None:\n raise RuntimeError('no plate connected')\n\n if this.input(2) is None:\n raise RuntimeError('no degrained plate connected')\n\n def format_tuple(node):\n return node.format().width(), node.format().height(), node.format().pixelAspect()\n\n if format_tuple(this.input(1)) != format_tuple(this.input(2)):\n raise RuntimeError(\"Format missmatch: Make sure the formats of plate and degrained plate match.\")\n\n\ndef start(this):\n \"\"\"let's do this!\"\"\"\n\n check_inputs(this)\n\n with this:\n frame_list = _generate_frame_list(this)\n _setup_for_multiframe(frame_list)\n sample_count = _sample_count(this)\n\n blank = base64.b64decode('cmVkIHtjdXJ2ZX0KZ3JlZW4ge2N1cnZlfQpibHVlIHtjdXJ2ZX0=').decode('ascii')\n\n lut = nuke.toNode('Sampler1')\['lut']\n lut.fromScript(blank)\n\n channel_list = \['red', 'green', 'blue']\n\n keyer = nuke.toNode('Expression2')\n copy = nuke.toNode('Copy2')\n\n curve_tool = nuke.toNode('CurveTool')\n pixel = curve_tool\['ROI'].value()\[2] * curve_tool\['ROI'].value()\[3]\n\n task = nuke.ProgressTask('Analysing...')\n step = 100.0 / 3 / sample_count\n progress = step\n\n time_warp = nuke.toNode('TimeWarp1')\n frame_blend = nuke.toNode('FrameBlend1')\n\n time_warp\['disable'].setValue(False)\n frame_blend\['disable'].setValue(False)\n\n for channel in channel_list:\n task.setMessage('\{\} range'.format(channel))\n\n copy\['from0'].setValue('rgba.\{\}'.format(channel))\n\n sample_range = _get_sample_range(channel, channel_list, frame_list)\n sample_radius = (sample_range\[1] - sample_range\[0]) / sample_count / 2\n sample_list = _generate_sample_list(sample_count, sample_range, sample_radius)\n\n for sample in sample_list:\n if task.isCancelled():\n return\n\n task.setProgress(int(progress))\n\n sample_values = _sample_it(keyer, curve_tool, sample, sample_radius)\n\n task.setMessage('\{\} channel at \{\}'.format(channel, round(sample, 2)))\n\n if sample_values\[3] * pixel >= 10:\n lut.setValueAt(sample_values\[0] / sample_values\[3], sample_values\[1] / sample_values\[3], channel_list.index(channel))\n\n progress += step\n\n time_warp\['lookup'].clearAnimated()\n time_warp\['disable'].setValue(True) # hopefully prevents slowing down the comp\n frame_blend\['disable'].setValue(True) # hopefully prevents slowing down the comp\n\n del task\n\n\nstart(this)\n" +STARTLINE} addUserKnob {26 divider03 l " "} addUserKnob {41 analysis_mask l "analysis mask" t "Use this channel from the mask input to control what area of the plate will be analyzed.\n\nUsefull if the degrain is obviously bad in some areas." T ChannelMerge1.A} addUserKnob {6 invert_1 l invert -STARTLINE} addUserKnob {20 Adjust_tab l Adjust} addUserKnob {22 whatsthis l "What am I looking at?" T "nuke.message(\"After the analysis you'll see the sampled grain response curves here. On the x-axis is the brightness of the image and on the y-axis the grain intensity. Grain increases with brightness, so <strong>the slope of the curves should always be positive</strong> (they should always go up ↗).<br><br>The quality of the curves depends entirely on the quality of the degrain. If the curves look wrong (for example they go up and down), try to improve the degrain first. If they still look wrong and the resulting regrain doesn't work well enough, you can try to improve the curves here by deleting/correcting all points that don't follow an upwards trend.<br><br>You can also extend the curves (again: with an upwards trend) if the comp has values that don't exist in the plate.<br><br>Note: The curve is used for both the normalization as well as the adaptation of the grain, so it doesn't give direct control of the grain intensity.\")" +STARTLINE} addUserKnob {41 lut l "" +STARTLINE T Sampler1.lut} addUserKnob {20 Replace_tab l Replace} addUserKnob {6 external_grain l "use external grain" t "Use external grain from a second DasGrain, with the output set to 'normalised grain', to replace masked area.\nConnect it to the 'external grain' input of this DasGrain (it's a bit hidden on the left side of the node)." +STARTLINE} addUserKnob {26 divider04 l <strong>Scatter} addUserKnob {26 divider05 l <strong>Scatter +HIDDEN T "<span style=\"color:red\">Make sure you're sampling an area without any plate detail.</a>"} addUserKnob {6 scatter l activate t "Activates the scatter function. It generates a new grain based on the plate grain in the sample box using a Voronoi noise." +STARTLINE} addUserKnob {41 useGPUIfAvailable l "Use GPU if available" -STARTLINE T VoronoiScatter.useGPUIfAvailable} addUserKnob {15 box l "sample box" t "Define an area that is used as a source for the scatter function. The plate grain in this area should be as even as possible, without any visible detail."} box {100 100 500 300} addUserKnob {3 sample_frame l "sample frame" t "The frame at which the grain is being sampled. Is set automatically once the sample box is changed." +DISABLED} sample_frame 1 addUserKnob {4 stereo l "stereo behaviour" t "randomize offset per view: same voronoy pattern for all views, but different offset\n\nrandomize pattern per view: different voronoy pattern for every view" M {none "randomize offset per view" "randomize pattern per view" ""}} addUserKnob {26 spacer06 l "" +STARTLINE T " "} addUserKnob {6 overlay l "overlay cell pattern" t "Overlay the cell pattern of the voronoy noise. Useful to check where the seams are and if distortion or blending is necessary." +STARTLINE} addUserKnob {7 cell_size l "cell size" t "Cell size of the scatter. Shoudn't be too small, as lower grain frequencies might break.\nCan't be too big either, to prevent it from breaking the border of the samplebox (will error if it does)." R 5 100} cell_size 40 addUserKnob {26 spacer07 l "" +STARTLINE T " "} addUserKnob {20 concealer l "edge concealer" n 1} concealer 0 addUserKnob {26 concealer_help l " " T "If you can see the voronoi pattern in the grain QC output,\nincrease the edge blend size."} addUserKnob {3 edge_blend_size l "edge blend size" t "Set the output to grain QC. If you see the cell seams, increase the edge blend size to conceal them.\n\nThis is a bit hacky and slow."} addUserKnob {26 tip l "" -STARTLINE T "sloooow - keep this below 3 if possible"} addUserKnob {26 distortion_help l " " T "\nDistortion might help as well, if somehow the straight\nseams are visible (you might want to toggle the overlay\nwhile adjusting)."} addUserKnob {7 amplitude R 0 50} addUserKnob {7 frequency R 0 50} frequency 15 addUserKnob {20 endGroup n -1} addUserKnob {26 divider06 l "" +STARTLINE} addUserKnob {41 replace_mask l "replace mask" t "Use this channel from the mask input to specify where you want to use scattered grain instead of the adapted plate grain." -STARTLINE T Merge9.maskChannelMask} addUserKnob {41 invert_mask_1 l invert -STARTLINE T Merge9.invert_mask} addUserKnob {20 GrainGroupEnd l "" +STARTLINE n -3} addUserKnob {20 Help_tab l Help} addUserKnob {26 basic_setup l "" +STARTLINE T "<font size=\"5\">Basic setup</font>"} addUserKnob {26 ""} addUserKnob {26 explanation l "" +STARTLINE T "<strong>Bold</strong> steps are always necessary"} addUserKnob {26 steps l "" +STARTLINE T "<br><strong>1. This should be the only regrain node in your comp.<br>2. Connect <i>plate</i>, <i>degrained plate</i> and <i>comp</i>.<br> The comp should be done on the degrained plate!</strong><br>3. Set the <i>luminance degrain amount</i>.<br><strong>4. Press the <i>Analyze</i> button.</strong><br>5. Correct the response curves in the <i>Adjust</i> tab.<br>6. Move the <i>sample box</i> to an area without any plate detail and activate <i>scatter</i>.<br>7. If necessary, activate <i>edge blend</i> and/or <i>distortion</i> to conceal seams."} addUserKnob {26 in_depth l "" +STARTLINE T "<br>For an in depth explanation of the steps, read the tooltips and check out this video:<br><a href=\"https://vimeo.com/284820390/\"><span style=\"color:#C8C8C8;\">https://vimeo.com/284820390</a>"} addUserKnob {26 pushthebutton l "" +STARTLINE T "<br><br>If the result is not as expected and you don't know why, push this button:"} addUserKnob {22 troubleshoot l Troubleshoot t HEEEEEEELP T "import base64\n\nmessages = \[]\n\nthis = nuke.thisNode()\n\n#########################\n\nif this.input(0) is None or this.input(1) is None or this.input(2) is None:\n messages.append(\"<font color='red'><strong>ERROR</strong></font> Plate, degrained plate and comp need to be connected to the appropriate inputs.\")\n\n#########################\n\nelse:\n\n def format_to_tuple(g):\n \"\"\"returns (1024, 786, 2.0)\n \"\"\"\n return (g.format().width(), g.format().height(), g.format().pixelAspect())\n\n format_set = set(\[\n format_to_tuple(this.input(0)),\n format_to_tuple(this.input(1)),\n format_to_tuple(this.input(2)),\n ])\n if len(format_set) != 1:\n messages.append(\"<font color='orange'><strong>WARNING</strong></font> Format missmatch: Make sure formats of plate, degrained plate and comp match.\")\n\n if (this.input(1).firstFrame() != this.input(2).firstFrame()) or (this.input(1).lastFrame() != this.input(2).lastFrame()):\n messages.append(\"<font color='orange'><strong>WARNING</strong></font> The frame ranges of plate and degrained plate don't match. Double check that they belong together.\")\n\n#########################\n\nmessages.append(\"Double check that plate and degrained plate haven't been modified in any way (paint, despill, etc).\")\n\n#########################\n\nif this\['luminance'].getValue() == 1:\n messages.append(\"Are you working on a completely degrained plate? If not, you might have to set the luminance degrain amount.\")\n\n#########################\n\nblank = base64.b64decode('cmVkIHtjdXJ2ZX0KZ3JlZW4ge2N1cnZlfQpibHVlIHtjdXJ2ZX0=').decode('ascii')\n\nwith this:\n Sampler = nuke.toNode('Sampler1') \n if Sampler\['lut'].toScript() == blank:\n messages.append(\"<font color='red'><strong>ERROR</strong></font> You haven't pressed the Analyze button yet!\")\n\n#########################\n\nclass BadThings(Exception): pass\n\ndef thingy():\n with this:\n Sampler = nuke.toNode('Sampler1')\n list = this\['lut'].toScript().replace('\}','').split('\\n')\n for item in list:\n sample_value = 0\n for value in item.split(' '):\n try:\n value == float(value)\n if value < sample_value:\n raise BadThings(\"<font color='orange'><strong>WARNING</strong></font> Check and fix the response curves. Their slopes should always be positive (the curves should always go up ↗).\")\n \n else:\n sample_value = value\n except ValueError:\n # Ignore non-numeric things like x-values of \"x5.46\" and channel names like \"red\{\" etc\n pass\ntry:\n thingy()\nexcept BadThings as e:\n messages.append(str(e))\n \n#########################\n\nif this\['scatter'].value() == True:\n if this\['box'].getValue() == \[100.0, 100.0, 500.0, 300.0]:\n messages.append(\"<font color='orange'><strong>WARNING</strong></font> Scatter has been activated, but the sample box is still in its default position. Are you sure that's a good area to sample?\")\n\n#########################\n\nmessages.append(\"Did you copy/paste DasGrain from another script? Make sure to reanalyze and to reset the sample area if you are using scatter.\")\n\n#########################\n\nif len(messages) > 0:\n nuke.message(\"<font size=\\\"5\\\">Things worth checking</font><br><br>\"\n \"%s<br><br><br>If any of this doesn't make sense to you, it might be worth checking out the video on vimeo.\" % (\n \"<hr>\".join(\"%s: %s\" % (i+1, m) for i, m in enumerate(messages))))\n" +STARTLINE} addUserKnob {26 dont_despair l "" +STARTLINE T "<br>If it still doesn't work and you're about to flip the table, send me a <a href=\"mailto:holtzf+nuke@gmail.com?subject=Help with DasGrain v1.7.8\"><span style=\"color:#C8C8C8;\">mail</a>.<br>I'm happy to help! :)"} addUserKnob {20 Info_tab l Info} addUserKnob {26 dasname l "" +STARTLINE T "<font size='5'>DasGrain</font> v1.8<br>"} addUserKnob {26 text_1 l "" +STARTLINE T "DasGrain makes regraining as simple as clicking a few buttons.<br>Follow the steps in the <i>Help</i> tab and you'll have a perfect\nregrain<br>in no time!"} addUserKnob {26 ""} addUserKnob {26 info l "" +STARTLINE T "Last change: 2021-03-07\n\n"} addUserKnob {26 name_1 l "" +STARTLINE T "Fabian Holtz"} addUserKnob {26 mail l "" +STARTLINE T "<a href=\"mailto:holtzf+nuke@gmail.com?subject=Help with DasGrain v1.7.8\"><span style=\"color:#C8C8C8;\">holtzf+nuke@gmail.com</a>"} addUserKnob {26 testimonial l "" +STARTLINE T "<br><br><br><i>«Totally awesome!»</i><br>— anonymous<br><br>"} addUserKnob {26 ""} addUserKnob {26 credit l "" +STARTLINE T "<br>VoronoiScatter based on <a href=\"http://www.nukepedia.com/blink/image/voronoi/\"><span style=\"color:#C8C8C8;\">Ivan Busquets' implementation</a> of<br> libNoise's\nVoronoi generator"} addUserKnob {26 thanks l "" +STARTLINE T "<br>Special thanks to Ben Dickson for bearing with my questions and<br>problems and RSP comp for the valuable feedback."} } BackdropNode { inputs 0 name BackdropNode1 tile_color 0x7f7f7fff label "normalise grain" note_font_size 30 xpos 170 ypos 1662 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode11 tile_color 0x7f7f7fff label "add grain" note_font_size 30 xpos 830 ypos 2766 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode13 tile_color 0x7f7f7fff label scatter note_font_size 30 xpos -50 ypos 2022 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode14 tile_color 0x7f7f7fff label "analyze grain" note_font_size 30 xpos -159 ypos 606 bdwidth 319 bdheight 877 } BackdropNode { inputs 0 name BackdropNode2 tile_color 0x7f7f7fff label "grain response curve" note_font_size 30 xpos 610 ypos 2574 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode3 tile_color 0x7f7f7fff label QC note_font_size 30 xpos 1050 ypos 3222 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode4 tile_color 0x7f7f7fff label "grain response curve" note_font_size 30 xpos 610 ypos 1422 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode5 tile_color 0x7f7f7fff label "adapt grain" note_font_size 30 xpos 170 ypos 2574 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode6 tile_color 0x7f7f7fff label "sample range" note_font_size 30 xpos -490 ypos 606 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode7 tile_color 0x7f7f7fff label "luminance level" note_font_size 30 xpos 280 ypos -282 bdwidth 760 bdheight 685 } BackdropNode { inputs 0 name BackdropNode8 tile_color 0x7f7f7fff label "plate grain" note_font_size 30 xpos 170 ypos 606 bdwidth 320 bdheight 110 } BackdropNode { inputs 0 name BackdropNode9 tile_color 0x7f7f7fff label replace note_font_size 30 xpos 60 ypos 2191 bdwidth 540 bdheight 226 } Input { inputs 0 name DEGRAINED_PLATE label "\[value number]" note_font_size 30 xpos 730 ypos -896 number 2 } OCIOColorSpace { in_colorspace {{OCIOColorSpace1.in_colorspace}} out_colorspace {{OCIOColorSpace1.out_colorspace}} name OCIOColorSpace2 xpos 730 ypos -490 } Dot { name Dot9 xpos 764 ypos -390 } set N2562b000 [stack 0] Dot { name Dot28 xpos 764 ypos -198 } set N2562ac00 [stack 0] Dot { name Dot32 xpos 764 ypos 234 } set N2562a800 [stack 0] push $N2562ac00 Dot { name Dot27 xpos 624 ypos -198 } Colorspace { colorspace_out YCbCr name Colorspace1 xpos 590 ypos -130 } Dot { name Dot7 xpos 624 ypos -54 } set N25629c00 [stack 0] Input { inputs 0 name PLATE label "\[value number]" note_font_size 30 xpos 290 ypos -892 number 1 } Dot { name Dot50 xpos 324 ypos -726 } set N25629400 [stack 0] OCIOColorSpace { in_colorspace scene_linear out_colorspace scene_linear name OCIOColorSpace1 xpos 290 ypos -490 } Dot { name Dot29 xpos 324 ypos -198 } set N25628800 [stack 0] Dot { name Dot6 xpos 464 ypos -198 } Colorspace { colorspace_out YCbCr name Colorspace2 xpos 430 ypos -130 } Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge4 xpos 430 ypos -58 } Multiply { channels rgb value {{"1 / parent.luminance - 1"} 0 0 0} name Multiply6 xpos 430 ypos 14 } Dot { name Dot31 xpos 464 ypos 90 } push $N25629c00 Merge2 { inputs 2 operation plus bbox B Achannels rgb Bchannels rgb output rgb name Merge5 xpos 590 ypos 86 } Colorspace { colorspace_in YCbCr name Colorspace3 xpos 590 ypos 158 } Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge6 xpos 590 ypos 230 } Dot { name Dot35 xpos 624 ypos 306 } set N19c3e000 [stack 0] push $N2562a800 Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge7 xpos 730 ypos 302 disable {{"Multiply6.value.r == 0"}} } Dot { name Dot2 xpos 764 ypos 522 } set N19c3d800 [stack 0] Dot { name Dot30 xpos 764 ypos 690 } set N19c3d400 [stack 0] Dot { name Dot55 xpos 764 ypos 1170 } set N19c3d000 [stack 0] Input { inputs 0 name mask label "\[value number]" note_font_size 30 xpos 1170 ypos -896 number 3 } Dot { name Dot39 xpos 1204 ypos 258 } set N19c3c800 [stack 0] Dot { name Dot26 xpos 1204 ypos 1074 } set N19c3c400 [stack 0] Invert { name Invert2 xpos 180 ypos 1064 disable {{!parent.invert_1}} } push $N19c3d400 push $N25628800 Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge27 xpos 290 ypos 686 } Dot { name Dot3 xpos 324 ypos 786 } set N18fdf400 [stack 0] Dot { name Dot5 xpos 104 ypos 786 } set N18fdf000 [stack 0] push $N18fdf000 Copy { inputs 2 from0 {{{parent.Copy2.from0}}} to0 rgba.red name Copy3 xpos 70 ypos 848 } Expression { expr0 abs(r) channel1 {none none none rgba.alpha} expr1 "r == 0" channel2 none channel3 none name Expression4 xpos 70 ypos 926 } set N18fde800 [stack 0] push $N19c3d800 Colorspace { colorspace_out AlexaV3LogC name Colorspace5 xpos 70 ypos 518 } Clamp { maximum_enable false name Clamp2 xpos -40 ypos 512 } Dot { name Dot1 xpos -116 ypos 522 } set N18fddc00 [stack 0] Dot { name Dot48 xpos -116 ypos 786 } set N18fdd800 [stack 0] push $N18fdd800 Copy { inputs 2 from0 rgba.blue to0 rgba.red name Copy2 xpos -150 ypos 848 } Expression { temp_name0 min temp_expr0 0.5478476602584124 temp_name1 max temp_expr1 0.5718689560890198 channel0 {none none none rgba.alpha} expr0 "r >= min && r <= max" channel1 none channel2 none channel3 none name Expression2 xpos -150 ypos 926 } Dot { name Dot4 xpos -116 ypos 1002 } ChannelMerge { inputs 2 operation stencil name ChannelMerge2 xpos -40 ypos 985 } push $N18fde800 Copy { inputs 2 from0 rgba.alpha to0 rgba.alpha name Copy1 xpos 70 ypos 992 } ChannelMerge { inputs 2 A -rgba.green operation multiply name ChannelMerge1 xpos 70 ypos 1057 disable {{!A}} } Copy { inputs 2 from0 {{{parent.Copy2.from0}}} to0 rgba.green name Copy4 xpos 70 ypos 1160 } Premult { channels {rgba.red rgba.green -rgba.blue none} name Premult1 xpos 70 ypos 1238 } TimeWarp { lookup 1088 time "" filter nearest name TimeWarp1 xpos 70 ypos 1286 disable true } FrameBlend { channels {rgba.red rgba.green -rgba.blue rgba.alpha} startframe 0 endframe 9 userange true name FrameBlend1 xpos 70 ypos 1352 disable true } CurveTool { avgframes 0 channels {rgba.red rgba.green -rgba.blue rgba.alpha} ROI {0 0 {width} {height}} intensitydata {3.454302895e-07 7.802840197e-05 0 8.873093412e-05} name CurveTool xpos 70 ypos 1424 } push $N18fddc00 Dot { name Dot16 xpos -336 ypos 522 } CurveTool { operation "Max Luma Pixel" channels {-rgba.red -rgba.green rgba.blue} ROI {0 0 {width} {height}} maxlumapixdata {2089 1182} maxlumapixvalue {0 0 0.5716627836} minlumapixdata {1127 1304} minlumapixvalue {0 0 0.09195037186} name CurveTool_Range xpos -370 ypos 680 } Sampler { inputs 0 lut {red {curve x0.001361052622 0.0002230034669 x0.006430411246 0.0005951428306 x0.01105421502 0.0008994589171 x0.01628139243 0.001146730585 x0.02274016291 0.001403132278 x0.03080444597 0.00163270372 x0.04087587446 0.001859763983 x0.053586483 0.002055999969 x0.06944747269 0.002264037068 x0.08884223551 0.00243882259 x0.1131541282 0.002653067767 x0.1442549825 0.002822130602 x0.1814405024 0.003096113604 x0.2293340415 0.003327953235 x0.2919330597 0.003522355048 x0.3690226078 0.003658043992 x0.4605507255 0.003893747258 x0.5786529779 0.004396948744 x0.7082110643 0.004913048611 x0.9231189489 0.003771882119} green {curve x0.002225074451 0.0002086138276 x0.006718123332 0.0005114786423 x0.01113783848 0.0006940161211 x0.01635070331 0.0008797971662 x0.02278374881 0.001082866921 x0.03096000105 0.001309081842 x0.04078568891 0.001475058675 x0.05342977494 0.001624661542 x0.06917729229 0.001829751531 x0.08840883523 0.002091810703 x0.112894237 0.002562833656 x0.1437279135 0.003031363544 x0.1823064238 0.003319310345 x0.2292642146 0.003328314016 x0.2914674878 0.003209824447 x0.3613436222 0.003148078654 x0.4587926567 0.003378985091 x0.5774047375 0.003261888327 x0.7117970586 0.003246239536 x0.8756207824 0.003280454043} blue {curve x0.002008558717 0.0002586295553 x0.006193103269 0.0005384354734 x0.0109573612 0.0007919714349 x0.0161083322 0.0009666481834 x0.02255447395 0.001173497481 x0.03028626554 0.001366394549 x0.040295057 0.001563044506 x0.05251040682 0.001699286347 x0.06809803098 0.001865792829 x0.08791080117 0.002071608131 x0.1125093549 0.002332924835 x0.1419141144 0.002502789157 x0.1810215116 0.002746756186 x0.228581965 0.003003136212 x0.2877129018 0.003395638099 x0.3611852825 0.003619306395 x0.4465007782 0.003888860687 x0.5631905198 0.003624253537 x0.7170214057 0.003685941852 x0.8793821931 0.003893008599}} name Sampler1 onCreate "n = nuke.thisNode()\nn\['sampler'].setEnabled(False)" knobChanged "n = nuke.thisNode()\nk = nuke.thisKnob()\np = nuke.thisParent()\n\nif k.name() == 'lut':\n with p:\n for c in \['ColorLookup1','ColorLookup2']:\n nuke.toNode(c)\['lut'].fromScript(k.toScript())" xpos 840 ypos 1502 } push $N25629400 Dot { name Dot51 xpos 115 ypos -726 } Input { inputs 0 name COMP label "\[value number]" note_font_size 30 xpos 950 ypos -896 } Dot { name Dot49 xpos 984 ypos -605 } set N1904d000 [stack 0] Switch { inputs 2 which {{parent.meta}} name Switch1 xpos 81 ypos -609 } Dot { name Dot54 xpos 115 ypos -486 } Dot { name Dot52 xpos -685 ypos -486 } Dot { name Dot53 xpos -685 ypos 3762 } push $N19c3c800 Dot { name Dot40 xpos 874 ypos 258 } push $N19c3e000 Dot { name Dot34 xpos 624 ypos 378 } Multiply { inputs 1+1 channels rgb value 0 maskChannelMask -rgba.red name Multiply1 xpos 840 ypos 374 } push $N1904d000 OCIOColorSpace { in_colorspace {{OCIOColorSpace1.in_colorspace}} out_colorspace {{OCIOColorSpace1.out_colorspace}} name OCIOColorSpace3 xpos 950 ypos -490 } Dot { name Dot44 xpos 984 ypos -390 } set N24fde400 [stack 0] Merge2 { inputs 2 operation from bbox B Achannels rgb Bchannels rgb output rgb name Merge8 xpos 950 ypos 374 disable {{"Multiply6.value.r == 0"}} } Dot { name Dot18 xpos 984 ypos 2658 } set N24fddc00 [stack 0] ColorLookup { lut {master {} red {curve x0.001361052622 0.0002230034669 x0.006430411246 0.0005951428306 x0.01105421502 0.0008994589171 x0.01628139243 0.001146730585 x0.02274016291 0.001403132278 x0.03080444597 0.00163270372 x0.04087587446 0.001859763983 x0.053586483 0.002055999969 x0.06944747269 0.002264037068 x0.08884223551 0.00243882259 x0.1131541282 0.002653067767 x0.1442549825 0.002822130602 x0.1814405024 0.003096113604 x0.2293340415 0.003327953235 x0.2919330597 0.003522355048 x0.3690226078 0.003658043992 x0.4605507255 0.003893747258 x0.5786529779 0.004396948744 x0.7082110643 0.004913048611 x0.9231189489 0.003771882119} green {curve x0.002225074451 0.0002086138276 x0.006718123332 0.0005114786423 x0.01113783848 0.0006940161211 x0.01635070331 0.0008797971662 x0.02278374881 0.001082866921 x0.03096000105 0.001309081842 x0.04078568891 0.001475058675 x0.05342977494 0.001624661542 x0.06917729229 0.001829751531 x0.08840883523 0.002091810703 x0.112894237 0.002562833656 x0.1437279135 0.003031363544 x0.1823064238 0.003319310345 x0.2292642146 0.003328314016 x0.2914674878 0.003209824447 x0.3613436222 0.003148078654 x0.4587926567 0.003378985091 x0.5774047375 0.003261888327 x0.7117970586 0.003246239536 x0.8756207824 0.003280454043} blue {curve x0.002008558717 0.0002586295553 x0.006193103269 0.0005384354734 x0.0109573612 0.0007919714349 x0.0161083322 0.0009666481834 x0.02255447395 0.001173497481 x0.03028626554 0.001366394549 x0.040295057 0.001563044506 x0.05251040682 0.001699286347 x0.06809803098 0.001865792829 x0.08791080117 0.002071608131 x0.1125093549 0.002332924835 x0.1419141144 0.002502789157 x0.1810215116 0.002746756186 x0.228581965 0.003003136212 x0.2877129018 0.003395638099 x0.3611852825 0.003619306395 x0.4465007782 0.003888860687 x0.5631905198 0.003624253537 x0.7170214057 0.003685941852 x0.8793821931 0.003893008599} alpha {}} name ColorLookup2 xpos 730 ypos 2654 } push $N19c3c400 Dot { name Dot38 xpos 1204 ypos 1842 } Dot { name Dot37 xpos 544 ypos 1842 } Dot { name Dot22 xpos 544 ypos 2271 } set N24fdcc00 [stack 0] Dot { name Dot20 xpos 544 ypos 2391 } push $N24fdcc00 Dot { name Dot17 xpos 434 ypos 2271 } set N24fdc400 [stack 0] Dot { name Dot13 xpos 214 ypos 2271 } Input { inputs 0 name external_grain label "\[value number]" note_font_size 30 xpos -150 ypos 1716 number 4 } Dot { name Dot21 xpos -116 ypos 1938 } push $N19c3d000 ColorLookup { channels rgb lut {master {} red {curve x0.001361052622 0.0002230034669 x0.006430411246 0.0005951428306 x0.01105421502 0.0008994589171 x0.01628139243 0.001146730585 x0.02274016291 0.001403132278 x0.03080444597 0.00163270372 x0.04087587446 0.001859763983 x0.053586483 0.002055999969 x0.06944747269 0.002264037068 x0.08884223551 0.00243882259 x0.1131541282 0.002653067767 x0.1442549825 0.002822130602 x0.1814405024 0.003096113604 x0.2293340415 0.003327953235 x0.2919330597 0.003522355048 x0.3690226078 0.003658043992 x0.4605507255 0.003893747258 x0.5786529779 0.004396948744 x0.7082110643 0.004913048611 x0.9231189489 0.003771882119} green {curve x0.002225074451 0.0002086138276 x0.006718123332 0.0005114786423 x0.01113783848 0.0006940161211 x0.01635070331 0.0008797971662 x0.02278374881 0.001082866921 x0.03096000105 0.001309081842 x0.04078568891 0.001475058675 x0.05342977494 0.001624661542 x0.06917729229 0.001829751531 x0.08840883523 0.002091810703 x0.112894237 0.002562833656 x0.1437279135 0.003031363544 x0.1823064238 0.003319310345 x0.2292642146 0.003328314016 x0.2914674878 0.003209824447 x0.3613436222 0.003148078654 x0.4587926567 0.003378985091 x0.5774047375 0.003261888327 x0.7117970586 0.003246239536 x0.8756207824 0.003280454043} blue {curve x0.002008558717 0.0002586295553 x0.006193103269 0.0005384354734 x0.0109573612 0.0007919714349 x0.0161083322 0.0009666481834 x0.02255447395 0.001173497481 x0.03028626554 0.001366394549 x0.040295057 0.001563044506 x0.05251040682 0.001699286347 x0.06809803098 0.001865792829 x0.08791080117 0.002071608131 x0.1125093549 0.002332924835 x0.1419141144 0.002502789157 x0.1810215116 0.002746756186 x0.228581965 0.003003136212 x0.2877129018 0.003395638099 x0.3611852825 0.003619306395 x0.4465007782 0.003888860687 x0.5631905198 0.003624253537 x0.7170214057 0.003685941852 x0.8793821931 0.003893008599} alpha {}} name ColorLookup1 xpos 730 ypos 1502 } Dot { name Dot24 xpos 764 ypos 1746 } push $N18fdf400 Dot { name Dot33 xpos 324 ypos 1386 } MergeExpression { inputs 2 temp_name0 target temp_expr0 .01 expr0 "Br * (target / Ar)" expr1 "Bg * (target / Ag)" expr2 "Bb * (target / Ab)" channel3 none name MergeExpression1 xpos 290 ypos 1742 } Dot { name Dot15 xpos 324 ypos 1842 } set N24ae6000 [stack 0] Dot { name Dot25 xpos 104 ypos 1842 } Switch { inputs 2 which {{parent.external_grain}} name Switch2 xpos 70 ypos 1934 } Group { name VoronoiScatter xpos 70 ypos 2102 disable {{!parent.scatter}} addUserKnob {20 User} addUserKnob {41 useGPUIfAvailable l "Use GPU if available" T VoroNoise.useGPUIfAvailable} addUserKnob {41 vectorize l "Vectorize on CPU" -STARTLINE T VoroNoise.vectorize} addUserKnob {15 box} box {{parent.box x1004 0 x1036 -75} {parent.box x1004 100 x1036 120} {parent.box x1004 496 x1036 325} {parent.box x1004 916 x1036 320}} addUserKnob {3 sample_frame l "sample frame"} sample_frame {{parent.sample_frame}} addUserKnob {7 cell_size l "cell size" R 0 100} cell_size {{parent.cell_size}} addUserKnob {6 overlay_pattern l "overlay pattern" -STARTLINE} overlay_pattern {{parent.overlay}} addUserKnob {3 edge_blend_size l "edge blend size"} edge_blend_size {{parent.edge_blend_size}} addUserKnob {7 amplitude R 0 100} amplitude {{parent.amplitude}} addUserKnob {7 frequency R 0 100} frequency {{parent.frequency}} addUserKnob {41 VoroNoise_Seed l Seed T VoroNoise.VoroNoise_Seed} } Input { inputs 0 name Input1 xpos 180 ypos -879 } Dot { name Dot14 xpos 214 ypos -750 } set N24ae5000 [stack 0] Dot { name Dot16 xpos 434 ypos -750 } Remove { name Remove1 xpos 400 ypos -687 } Dot { name Dot6 xpos 434 ypos -606 } set N24ae4400 [stack 0] Dot { name Dot15 xpos 654 ypos -606 } set N18dfbc00 [stack 0] Dot { name Dot7 xpos 874 ypos -606 } Noise { output {rgba.red -rgba.green -rgba.blue none} replace true size {{parent.frequency} {"parent.frequency * pixel_aspect"}} zoffset {{"x + 1000"}} gamma 1 name Noise1 xpos 840 ypos -514 } Noise { output {-rgba.red rgba.green -rgba.blue none} replace true size {{parent.Noise1.size} {parent.Noise1.size}} zoffset {{x}} gamma 1 name Noise2 xpos 840 ypos -466 } Clamp { name Clamp1 xpos 840 ypos -424 } Dot { name Dot11 xpos 874 ypos -366 } push $N18dfbc00 BlinkScript { ProgramGroup 1 KernelDescription "2 \"VoroNoise\" iterate pixelWise c117be128a07c11b6d82fd34148d66b3bcac41976ec9c2082affe38e890c2c0f 2 \"src\" Read Point \"dst\" Write Point 6 \"Frequency\" Float 1 AABIQg== \"Seed\" Int 1 AAAAAA== \"aspect ratio\" Float 1 AACAPw== \"width\" Int 1 AAAAAA== \"height\" Int 1 AAAAAA== \"Randomness\" Float 1 AAAAPw== 6 \"frequency\" 1 1 \"seed\" 1 1 \"aspect_ratio\" 1 1 \"width\" 1 1 \"height\" 1 1 \"randomness\" 1 1 0" kernelSource "// Voronoi.blink\n// A test implementation of libNoise's Voronoi generator using Blink\n// Ivan Busquets - August 2013\n// Modified for DasGrain by Fabian Holtz - April 2019\n\n#define X_NOISE_GEN 1619\n#define Y_NOISE_GEN 31337\n#define Z_NOISE_GEN 6971\n#define SEED_NOISE_GEN 1013\n#define SQRT_3 1.73205081\n\ninline int IntValueNoise3D (int x, int y, int z, int seed)\n\{\n // All constants are primes and must remain prime in order for this noise\n // function to work correctly.\n int n = (\n X_NOISE_GEN * x\n + Y_NOISE_GEN * y\n + Z_NOISE_GEN * z\n + SEED_NOISE_GEN * seed)\n & 0x7fffffff;\n n = (n >> 13) ^ n;\n return (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff;\n\}\n\ninline float ValueNoise3D (int x, int y, int z, int seed)\n\{\n return 1.0 - ((float)IntValueNoise3D (x, y, z, seed) / 1073741824.0);\n\}\n\nkernel VoroNoise : ImageComputationKernel<ePixelWise>\n\{\n Image<eRead> src;\n Image<eWrite, eAccessPoint> dst;\n\nparam:\n float frequency;\n int seed;\n float aspect_ratio;\n int width;\n int height;\n float randomness;\n\n\n void define() \{\n defineParam(frequency, \"Frequency\", 50.0f);\n defineParam(aspect_ratio, \"aspect ratio\", 1.0f);\n defineParam(seed, \"Seed\", 0);\n defineParam(randomness, \"Randomness\", 0.5f);\n \}\n\n\n\n\n void process(int2 pos) \{\n float x = pos.x * aspect_ratio * frequency / width;\n float y = pos.y * frequency / width;\n int xInt = (x > 0.0) ? x : x - 1;\n int yInt = (y > 0.0) ? y : y - 1;\n\n\n float minDist = 2147483647.0;\n float xCandidate = 0;\n float yCandidate = 0;\n\n float dist;\n\nfor (int yCur = yInt - 2; yCur <= yInt + 2; yCur++) \{\n for (int xCur = xInt - 2; xCur <= xInt + 2; xCur++) \{\n\n // Calculate the position and distance to the seed point inside of\n // this unit cube. Limited by the randomness value\n float xPos = xCur + (ValueNoise3D (xCur, yCur, 0, seed ) + 1 ) * randomness + (1-randomness) - 1;\n float yPos = yCur + (ValueNoise3D (xCur, yCur, 0, seed + 1) + 1 ) * randomness + (1-randomness) - 1;\n\n float xDist = xPos - x;\n float yDist = yPos - y;\n\n dist = pow(xDist, 2) + pow(yDist, 2);\n if (dist < minDist) \{\n // This seed point is closer to any others found so far, so record\n // this seed point.\n minDist = dist;\n xCandidate = xPos;\n yCandidate = yPos;\n\t\}\n \}\n\}\n\n SampleType(dst) sample(0.0f);\n\n sample.x = xCandidate / aspect_ratio / frequency;\n sample.y = yCandidate / height * width / frequency;\n sample.z = 0;\n\n dst() = sample;\n\}\n\};" rebuild "" VoroNoise_Frequency {{"width / parent.cell_size"}} VoroNoise_Seed {{"(x + (parent.parent.stereo == 2 ? \[lsearch \[value root.views] \[view]] / 2 : 0)) * 5"}} "VoroNoise_aspect ratio" {{pixel_aspect}} VoroNoise_width {{width}} VoroNoise_height {{height}} rebuild_finalise "" name VoroNoise xpos 620 ypos -520 } Copy { inputs 2 from0 rgba.red to0 forward.u from1 rgba.green to1 forward.v name Copy1 xpos 620 ypos -382 disable {{"parent.amplitude == 0"}} } IDistort { uv forward uv_offset 0.5 uv_scale {{parent.amplitude} {"uv_scale.w * pixel_aspect"}} filter impulse name IDistort1 xpos 620 ypos -280 disable {{"parent.amplitude == 0"}} } Dot { name Dot5 xpos 654 ypos -246 } NoTimeBlur { rounding floor name NoTimeBlur3 xpos 620 ypos -154 } Transform { translate {{"floor((x * size) % 1 * (size)) - int(size / 2)"} {"floor(x % 1 * (size)) - int(size/2)"}} filter impulse black_outside false name Transform1 xpos 620 ypos -58 disable {{"parent.edge_blend_size < 1"}} addUserKnob {20 User} addUserKnob {3 size} size {{"parent.edge_blend_size + 1"}} } Dot { name Dot9 xpos 654 ypos 42 } set N18df8c00 [stack 0] push $N24ae4400 Expression { expr0 "(x + .5) / width" expr1 "(y + .5) / height" expr2 0 name STMapGenerator xpos 400 ypos -514 } NoTimeBlur { rounding floor name NoTimeBlur2 xpos 400 ypos -154 } Merge2 { inputs 2 operation from Achannels {rgba.red rgba.green -rgba.blue none} Bchannels {rgba.red rgba.green -rgba.blue none} output {rgba.red rgba.green -rgba.blue none} name Merge2 xpos 400 ypos 38 } Dot { name Dot10 xpos 434 ypos 210 } push $N18df8c00 Expression { temp_name0 view_index temp_expr0 "parent.parent.stereo == 1 ? \[lsearch \[value root.views] \[view]] / 2 : 0" expr0 "random((r + view_index) * 1000000, 0) * (maxx - minx) + minx" expr1 "random((g + view_index) * 1000000, 0) * (maxy - miny) + miny" channel2 none channel3 none name Expression3 xpos 620 ypos 110 addUserKnob {20 User} addUserKnob {7 frequency R 0 100} frequency {{parent.parent.cell_size}} addUserKnob {7 multiplier R 0 3} multiplier 0.5 addUserKnob {15 shrink} shrink {{"frequency * multiplier + ceil(parent.edge_blend_size / 2) + IDistort1.uv_scale.w / 2"} {"frequency * multiplier + ceil(parent.edge_blend_size / 2) + IDistort1.uv_scale.h / 2"} {"frequency * multiplier + floor(parent.edge_blend_size / 2) + IDistort1.uv_scale.w / 2"} {"frequency * multiplier + floor(parent.edge_blend_size / 2) + IDistort1.uv_scale.h / 2"}} addUserKnob {26 ""} addUserKnob {7 minx} minx {{"(parent.box.x + shrink.x + .5) / width"}} addUserKnob {7 maxx} maxx {{"(parent.box.r - shrink.r - .5) / width"}} addUserKnob {7 miny} miny {{"(parent.box.y + shrink.y + .5) / height"}} addUserKnob {7 maxy} maxy {{"(parent.box.t - shrink.t - .5) / height"}} } Merge2 { inputs 2 operation plus Achannels {rgba.red rgba.green -rgba.blue none} Bchannels {rgba.red rgba.green -rgba.blue none} output {rgba.red rgba.green -rgba.blue none} name Merge3 xpos 620 ypos 206 } Expression { expr0 "(r + (maxx - minx) - minx) % (maxx - minx) + minx" expr1 "(g + (maxy - miny) - miny) % (maxy - miny) + miny" channel2 none channel3 none name Expression7 xpos 620 ypos 278 addUserKnob {20 User} addUserKnob {7 minx} minx {{"(parent.box.x + rint(x % 1 * parent.edge_blend_size) + .5) / width"}} addUserKnob {7 maxx} maxx {{"(parent.box.r + rint(x % 1 * parent.edge_blend_size) - .5) / width"}} addUserKnob {7 miny} miny {{"(parent.box.y + rint(x % 1 * parent.edge_blend_size) + .5) / height"}} addUserKnob {7 maxy} maxy {{"(parent.box.t + rint(x % 1 * parent.edge_blend_size) - .5) / height"}} } Dot { name Dot3 xpos 654 ypos 354 } set Nda36800 [stack 0] Dot { name Dot13 xpos 654 ypos 546 } push $Nda36800 Dot { name Dot8 xpos 874 ypos 354 } Blur { channels rgb size {{pixel_aspect} 1} name Blur1 label "\[value size]" xpos 840 ypos 440 } Difference { inputs 2 name Difference2 xpos 840 ypos 536 } Expression { channel0 {none none none rgba.alpha} expr0 "a > 1e-9" channel1 none channel2 none channel3 none name Expression2 xpos 840 ypos 614 } Shuffle { red alpha green alpha blue alpha name Shuffle1 label "\[value in]:\[value out]" xpos 840 ypos 680 } Dot { name Dot4 xpos 874 ypos 762 } push $Nda36800 push $N24ae5000 FrameHold { firstFrame {{parent.sample_frame}} name FrameHold1 xpos 180 ypos -256 } NoTimeBlur { rounding floor name NoTimeBlur1 xpos 180 ypos -154 } STMap { inputs 2 channels rgb uv rgb filter impulse name STMap1 xpos 180 ypos 350 } set Nda34400 [stack 0] TimeBlur { divisions {{"max(Transform1.size == 1 ? 2 : pow2(Transform1.size), 1)"}} shutter 1 shuttercustomoffset {{"1 / divisions / 2"}} name TimeBlur1 xpos 180 ypos 446 disable {{"parent.edge_blend_size < 1"}} } set Nd65fc00 [stack 0] push $Nda34400 Dot { name Dot1 xpos -6 ypos 354 } Difference { inputs 2 name Difference1 xpos -40 ypos 440 } Expression { channel0 {none none none rgba.alpha} expr0 "a > 1e-10" channel1 none channel2 none channel3 none name Expression1 xpos -40 ypos 494 } Blur { channels alpha size {{parent.parent.edge_blend_size}} name Blur2 xpos -40 ypos 536 } Grade { channels alpha blackpoint 0.5 white_clamp true name Grade2 xpos -40 ypos 584 } Dot { name Dot2 xpos -6 ypos 666 } push $Nd65fc00 Grade { inputs 1+1 white 1.4 black_clamp false name Grade1 xpos 180 ypos 662 disable {{"parent.edge_blend_size < 1"}} } Merge2 { inputs 2 Achannels rgb Bchannels rgb output rgb name Merge1 xpos 180 ypos 758 disable {{!parent.overlay_pattern}} } Assert { expression {{"Expression3.maxx > Expression3.minx && Expression3.maxy > Expression3.miny"}} message "increase sample box size or decrease cell size" name error xpos 180 ypos 854 } Output { name Output1 xpos 180 ypos 950 } end_group Multiply { inputs 1+1 channels rgb value 1.8 maskChannelMask {{{parent.Merge9.maskChannelMask}}} invert_mask {{!Merge9.invert_mask}} name Multiply7 xpos 70 ypos 2315 disable {{"!maskChannelMask || !\[exists parent.input3.name]"}} } Dot { name Dot23 xpos 104 ypos 2391 } push $N24fdc400 push $N24ae6000 Multiply { inputs 1+1 channels rgb value 1.8 maskChannelMask {{{parent.Merge9.maskChannelMask}}} invert_mask {{parent.Merge9.invert_mask}} name Multiply2 xpos 290 ypos 2315 disable {{"!maskChannelMask || (!parent.scatter && !parent.external_grain)"}} } Merge2 { inputs 2+1 operation copy Achannels rgb Bchannels rgb output rgb maskChannelMask -rgba.alpha name Merge9 xpos 290 ypos 2387 disable {{"!(parent.scatter || parent.external_grain)"}} } Dot { name Dot11 xpos 324 ypos 2490 } set N9a13c00 [stack 0] MergeExpression { inputs 2 temp_name0 reverse temp_expr0 "1 / MergeExpression1.temp_expr0" expr0 "Br * Ar * reverse" expr1 "Bg * Ag * reverse" expr2 "Bb * Ab * reverse" name MergeExpression2 xpos 290 ypos 2654 } Dot { name Dot8 xpos 324 ypos 2850 } push $N24fddc00 Merge2 { inputs 2 operation plus bbox B Achannels rgb Bchannels rgb output rgb name Merge3 xpos 950 ypos 2846 } Dot { name Dot42 xpos 984 ypos 3018 } set N9a12c00 [stack 0] OCIOColorSpace { in_colorspace {{OCIOColorSpace1.out_colorspace}} out_colorspace {{OCIOColorSpace1.in_colorspace}} name OCIOColorSpace4 xpos 950 ypos 3086 } Dot { name Dot19 xpos 984 ypos 3162 } set N9a12000 [stack 0] Dot { name Dot41 xpos 1204 ypos 3162 } set N9a11c00 [stack 0] Dot { name Dot36 xpos 1314 ypos 3162 } Blur { channels rgb size 1 name Blur1 xpos 1280 ypos 3254 } push $N9a11c00 Merge2 { inputs 2 operation difference bbox B Achannels rgb Bchannels rgb output rgb name Merge10 xpos 1170 ypos 3254 } Multiply { channels rgb value 50 name Multiply3 xpos 1170 ypos 3302 } Dot { name Dot43 xpos 1204 ypos 3402 } push $N24fde400 Dot { name Dot45 xpos 1424 ypos -390 } push $N9a12c00 Merge2 { inputs 2 operation from Achannels rgb Bchannels rgb output rgb name Merge11 xpos 1390 ypos 3014 } Dot { name Dot46 xpos 1424 ypos 3522 } push $N9a13c00 Dot { name Dot14 xpos 104 ypos 2490 } Dot { name Dot12 xpos 104 ypos 3402 } push $N2562b000 Dot { name Dot47 xpos -556 ypos -390 } push $N25628800 Merge2 { inputs 2 operation from Achannels rgb Bchannels rgb output rgb name Merge12 xpos -590 ypos -202 } Dot { name Dot10 xpos -556 ypos 3522 } push $N9a12000 Switch { inputs 5 which {{output}} name Output xpos 950 ypos 3656 addUserKnob {20 User} addUserKnob {4 output M {"regrained comp" "plate grain" "normalised grain" "adapted grain" "grain QC"}} } CopyMetaData { inputs 2 mergeMode "Meta only" name CopyMetaData1 xpos 950 ypos 3758 } Output { name Output1 xpos 950 ypos 3854 } end_group
Editor is loading...
Leave a Comment