[
  {
    "path": "LICENSE",
    "content": "MIT License\n\nCopyright (c) 2022 Riccardo Mazzarini\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "Makefile",
    "content": ".PHONY: all lua \n\nall: lua\n\nlua:\n\tnvim --headless +\"Fnlfile make.fnl\" +qa\n"
  },
  {
    "path": "README.md",
    "content": "# oxocarbon.nvim\n\n**Note:** The old rust version can be found on the `rust` branch of this repository\n\n**Oxocarbon is looking for ports!** If you're a user of another editor or tool, join our discord to learn more about porting oxocarbon to other applications. https://discord.gg/M528tDKXRG \n\nA dark and light Neovim theme written in fennel, inspired by [IBM Carbon](https://carbondesignsystem.com/guidelines/color/overview/#themes). This is the reference implementation of the oxocarbon theme. \n\nThe color palette expands on Nyoom's unique aesthetic and represents a contemporary and ever-changing IBM. Balancing mankind and machine, the colors are harmonious with nature, yet chosen for their luminous quality in the digital world. The oxocarbon color palette is a subset of the broader IBM palette.\n\nThe colorscheme is centered around a vibrant set of blues, combined with an industrial set of grays. The full palette extends from the blue family to the edges of the blue spectrum—even the reds contain a hint of blue.\n\nThe resulting palette is a set of colors that portrays a singular IBM. Of the world and digital. Useful and judicious. Having multiple gray families gives each design the opportunity for nuance and meaningful moments of color. Each experience should be dominated by the grays and the core colors of black, white, and the blue family, allowing the other color families to have vibrancy and provide purpose.\n\n![merged](https://user-images.githubusercontent.com/71196912/206819503-736cbede-fdf2-4be3-baaa-d640c8498abf.png)\n\n<img width=\"1311\" alt=\"image\" src=\"https://user-images.githubusercontent.com/71196912/181996667-f1bf7ab0-eba2-4f80-b914-b5f48f51a03e.png\">\n\n## Features\n\n- Support for popular plugins, such as Lsp, Treesitter, and Semantic Highlighting\n- Fast and Featureful. Supports all the highlights you'll ever need without making a dent on startuptime\n- Uses `Termguicolors` but its compatible with 16-color terminals as well\n\n### Plugin support\n\nThe colorscheme explicitly adds highlights for the following plugins:\n\n- Vim Diagnostics\n- Vim LSP\n- Nvim-Treesitter\n- Telescope\n- Nvim-Notify\n- Nvim-Cmp\n- NvimTree\n- Neogit\n- Gitsigns\n- Hydra\n- Flash\n\nAnd many others should \"just work!\" If you have a plugin that needs explicit highlights, feel free to open an issue or PR and I would be happy to add them.  \n\n## Install\n\nThe colorscheme requires the latest stable or nightly neovim (> `v0.7.0`)\n\n### Packer.nvim\n\n```lua\nuse {'nyoom-engineering/oxocarbon.nvim'}\n```\n### Lazy.nvim\n```lua\nreturn {\n  \"nyoom-engineering/oxocarbon.nvim\"\n  -- Add in any other configuration; \n  --   event = foo, \n  --   config = bar\n  --   end,\n}\n```\n### Usage\n\nFor neovim nightly users:\n\n```lua\nvim.opt.background = \"dark\" -- set this to dark or light\nvim.cmd.colorscheme \"oxocarbon\"\n```\n\nFor neovim stable users:\n\n```lua\nvim.opt.background = \"dark\" -- set this to dark or light\nvim.cmd(\"colorscheme oxocarbon\")\n```\n\nYou can also add a transparent background by adding the following lines after `colorscheme`:\n```lua\nvim.api.nvim_set_hl(0, \"Normal\", { bg = \"none\" })\nvim.api.nvim_set_hl(0, \"NormalFloat\", { bg = \"none\" })\nvim.api.nvim_set_hl(0, \"NormalNC\", { bg = \"none\" })\n```\n\nFor nyoom.nvim users:\nNyoom comes bundled with a version of oxocarbon. Enable the `ui.nyoom` module\n\n## Development\n\nYou must install [hotpot](https://github.com/rktjmp/hotpot.nvim), since is what is used for compiling the fennel code.\n\n### Workflow\n\n* Fork the project\n* Make changes in the files under `fnl/`\n* Compile your changes by running `:Fnlfile make.fnl`\n* Make a PR\n\n## License\n\nThe project is licensed under the MIT license\n"
  },
  {
    "path": "colors/oxocarbon.lua",
    "content": "-- uncache module to ensure clean reapplication\npackage.loaded.oxocarbon = nil\nrequire [[oxocarbon]]\n"
  },
  {
    "path": "fnl/lualine/themes/oxocarbon.fnl",
    "content": "(local oxocarbon (. (require (.. :oxocarbon)) :oxocarbon))\n\n(local colors {:color0 oxocarbon.base02\n               :color1 oxocarbon.base10\n               :color2 oxocarbon.base08\n               :color3 oxocarbon.base00\n               :color6 oxocarbon.base04\n               :color7 oxocarbon.base09\n               :color8 oxocarbon.base14\n               :color9 oxocarbon.base12\n               :color10 oxocarbon.base13})\n\n{:replace {:a {:fg (. colors :color0) :bg (. colors :color1)}\n           :b {:fg (. colors :color2) :bg (. colors :color3)}}\n :inactive {:a {:fg (. colors :color0) :bg (. colors :color7)}\n            :b {:fg (. colors :color6) :bg (. colors :color3)}\n            :z {:fg (. colors :color0) :bg (. colors :color3)}}\n :normal {:a {:fg (. colors :color0) :bg (. colors :color7)}\n          :b {:fg (. colors :color6) :bg (. colors :color3)}\n          :c {:fg (. colors :color6) :bg (. colors :color3)}\n          :z {:fg (. colors :color6) :bg (. colors :color3)}}\n :visual {:a {:fg (. colors :color0) :bg (. colors :color8)}\n          :b {:fg (. colors :color6) :bg (. colors :color3)}\n          :y {:fg (. colors :color6) :bg (. colors :color3)}\n          :z {:fg (. colors :color9) :bg (. colors :color3)}}\n :insert {:a {:fg (. colors :color0) :bg (. colors :color9)}\n          :b {:fg (. colors :color6) :bg (. colors :color3)}\n          :z {:fg (. colors :color9) :bg (. colors :color3)}}\n :command {:a {:fg (. colors :color0) :bg (. colors :color10)}}}\n\n"
  },
  {
    "path": "fnl/oxocarbon/colorutils.fnl",
    "content": ";; reimplementation of a subset of hsluv in fennel, along with some utility \n;; functions for saturation, blending, and lighten/darken\n\n;; constants\n(local hex-chars :0123456789abcdef)\n(local epsilon 0.0088564516)\n(local kappa 903.2962962)\n(local refY 1)\n(local refU 0.19783000664283)\n(local refV 0.46831999493879)\n(local m\n     [[3.2409699419045 (- 1.5373831775701) (- 0.498610760293)]\n      [(- 0.96924363628087) 1.8759675015077 0.041555057407175]\n      [0.055630079696993 (- 0.20397695888897) 1.0569715142429]])\n(local minv\n     [[0.41239079926595 0.35758433938387 0.18048078840183]\n      [0.21263900587151 0.71516867876775 0.072192315360733]\n      [0.019330818715591 0.11919477979462 0.95053215224966]])\n\n;; math stuff\n(fn get-bounds [l]\n  (let [result {}]\n    (var sub2 nil)\n    (local sub1 (/ (^ (+ l 16) 3) 1560896))\n    (if (> sub1 epsilon) (set sub2 sub1)\n        (set sub2 (/ l kappa)))\n    (for [i 1 3]\n      (local m1 (. (. m i) 1))\n      (local m2 (. (. m i) 2))\n      (local m3 (. (. m i) 3))\n      (for [t 0 1]\n        (local top1\n               (* (- (* 284517 m1) (* 94839 m3)) sub2))\n        (local top2\n               (- (* (* (+ (+ (* 838422 m3) (* 769860 m2))\n                           (* 731718 m1))\n                        l)\n                     sub2)\n                  (* (* 769860 t) l)))\n        (local bottom\n               (+ (* (- (* 632260 m3) (* 126452 m2)) sub2)\n                  (* 126452 t)))\n        (table.insert result\n                      {:slope (/ top1 bottom)\n                       :intercept (/ top2 bottom)})))\n    result))\n\n(fn length-of-ray-until-intersect [theta line]\n  (/ line.intercept\n     (- (math.sin theta) (* line.slope (math.cos theta)))))\n\n(fn max-safe-chroma-for-lh [l h]\n  (let [hrad (* (* (/ h 360) math.pi) 2)\n        bounds (get-bounds l)]\n    (var min 1.7976931348623e+308)\n    (for [i 1 6]\n      (local bound (. bounds i))\n      (local distance \n             (length-of-ray-until-intersect hrad\n                                            bound))\n      (when (>= distance 0)\n        (set min (math.min min distance))))\n    min))\n\n\n(fn y->l [Y]\n  (if (<= Y epsilon) (* (/ Y refY) kappa)\n      (- (* 116 (^ (/ Y refY) 0.33333333333333)) 16)))\n\n(fn l->y [L]\n  (if (<= L 8) (/ (* refY L) kappa)\n      (* refY (^ (/ (+ L 16) 116) 3))))\n\n(fn from_linear [c]\n  (if (<= c 0.0031308) (* 12.92 c)\n      (- (* 1.055 (^ c 0.41666666666667)) 0.055)))\n\n(fn to_linear [c]\n  (if (> c 0.04045) (^ (/ (+ c 0.055) 1.055) 2.4)\n      (/ c 12.92)))\n\n(fn dot_product [a b]\n  (var sum 0)\n  (for [i 1 3]\n    (set sum (+ sum (* (. a i) (. b i)))))\n  sum)\n\n;; conversion functions\n(fn luv->lch [tuple]\n  (let [L (. tuple 1)\n        U (. tuple 2)\n        V (. tuple 3)\n        C (math.sqrt (+ (* U U) (* V V)))]\n    (var H nil)\n    (if (< C 1e-08) (set H 0)\n        (do\n          (set H\n               (/ (* (math.atan2 V U) 180)\n                  3.1415926535898))\n          (when (< H 0)\n            (set H (+ 360 H)))))\n    [L C H]))\n\n(fn lch->luv [tuple]\n  (let [L (. tuple 1)\n        C (. tuple 2)\n        Hrad (* (* (/ (. tuple 3) 360) 2) math.pi)]\n    [L (* (math.cos Hrad) C) (* (math.sin Hrad) C)]))\n\n(fn xyz->luv [tuple]\n  (let [X (. tuple 1)\n        Y (. tuple 2)\n        divider (+ (+ X (* 15 Y)) (* 3 (. tuple 3)))]\n    (var var-u (* 4 X))\n    (var var-v (* 9 Y))\n    (if (not= divider 0)\n        (do\n          (set var-u (/ var-u divider))\n          (set var-v (/ var-v divider)))\n        (do\n          (set var-u 0)\n          (set var-v 0)))\n    (local L (y->l Y))\n    (when (= L 0)\n      (let [rtn [0 0 0]]\n        (lua \"return rtn\")))\n    [L\n     (* (* 13 L) (- var-u refU))\n     (* (* 13 L) (- var-v refV))]))\n\n(fn luv->xyz [tuple]\n  (let [L (. tuple 1)\n        U (. tuple 2)\n        V (. tuple 3)]\n    (when (= L 0)\n      (let [rtn [0 0 0]]\n        (lua \"return rtn\")))\n    (local var-u (+ (/ U (* 13 L)) refU))\n    (local var-v (+ (/ V (* 13 L)) refV))\n    (local Y (l->y L))\n    (local X\n           (- 0\n              (/ (* (* 9 Y) var-u)\n                 (- (* (- var-u 4) var-v) (* var-u var-v)))))\n    [X\n     Y\n     (/ (- (- (* 9 Y) (* (* 15 var-v) Y)) (* var-v X))\n        (* 3 var-v))]))\n\n(fn xyz->rgb [tuple]\n  [(from_linear (dot_product (. m 1) tuple))\n   (from_linear (dot_product (. m 2) tuple))\n   (from_linear (dot_product (. m 3) tuple))])\n\n(fn rgb->xyz [tuple]\n  (let [rgbl [(to_linear (. tuple 1))\n              (to_linear (. tuple 2))\n              (to_linear (. tuple 3))]]\n    [(dot_product (. minv 1) rgbl)\n     (dot_product (. minv 2) rgbl)\n     (dot_product (. minv 3) rgbl)]))\n\n(fn hex->rgb [hex]\n  (var hex (string.lower hex))\n  (local ret {})\n  (for [i 0 2]\n    (local char1\n           (string.sub hex (+ (* i 2) 2) (+ (* i 2) 2)))\n    (local char2\n           (string.sub hex (+ (* i 2) 3) (+ (* i 2) 3)))\n    (local digit1 (- (string.find hex-chars char1) 1))\n    (local digit2 (- (string.find hex-chars char2) 1))\n    (tset ret (+ i 1) (/ (+ (* digit1 16) digit2) 255)))\n  ret)\n\n(fn rgb->hex [tuple]\n  (var h \"#\")\n  (for [i 1 3]\n    (local c (math.floor (+ (* (. tuple i) 255) 0.5)))\n    (local digit2 (math.fmod c 16))\n    (local x (/ (- c digit2) 16))\n    (local digit1 (math.floor x))\n    (set h\n         (.. h\n             (string.sub hex-chars (+ digit1 1)\n                         (+ digit1 1))))\n    (set h\n         (.. h\n             (string.sub hex-chars (+ digit2 1)\n                         (+ digit2 1)))))\n  h)\n\n(fn lch->hsluv [tuple]\n  (let [L (. tuple 1)\n        C (. tuple 2)\n        H (. tuple 3)\n        max-chroma (max-safe-chroma-for-lh L H)]\n    (when (> L 99.9999999)\n      (let [rtn [H 0 100]]\n        (lua \"return rtn\")))\n    (when (< L 1e-08)\n      (let [rtn [H 0 0]]\n        (lua \"return rtn\")))\n    [H (* (/ C max-chroma) 100) L]))\n\n(fn hsluv->lch [tuple]\n  (let [H (. tuple 1)\n        S (. tuple 2)\n        L (. tuple 3)]\n    (when (> L 99.9999999)\n      (let [rtn [100 0 H]]\n        (lua \"return rtn\")))\n    (when (< L 1e-08)\n      (let [rtn [0 0 H]]\n        (lua \"return rtn\")))\n    [L\n     (* (/ (max-safe-chroma-for-lh L H) 100) S)\n     H]))\n\n(fn rgb->lch [tuple]\n  (luv->lch (xyz->luv (rgb->xyz tuple))))\n\n(fn lch->rgb [tuple]\n  (xyz->rgb (luv->xyz (lch->luv tuple))))\n\n(fn rgb->hsluv [tuple]\n  (lch->hsluv (rgb->lch tuple)))\n\n(fn hsluv->rgb [tuple]\n  (lch->rgb (hsluv->lch tuple)))\n\n(fn hex->hsluv [s]\n  (rgb->hsluv (hex->rgb s)))\n\n(fn hsluv->hex [tuple]\n  (rgb->hex (hsluv->rgb tuple)))\n\n;; Transormation functions\n(fn transform-h [c f]\n  [(f (. c 1)) (. c 2)     (. c 3)])\n\n(fn transform-s [c f]\n  [(. c 1)     (f (. c 2)) (. c 3)])\n\n(fn transform-l [c f]\n  [(. c 1)     (. c 2)     (f (. c 3))])\n\n(fn linear-tween [start stop]\n  (fn [i] (+ start (* i (- stop start)))))\n\n;; Blending\n(fn radial-tween [x y]\n  (let [start (math.rad x)\n        stop (math.rad y)\n        delta (math.atan2 (math.sin (- stop start)) (math.cos (- stop start)))]\n    (fn [i] (% (+ 360 (math.deg (+ start (* delta i)))) 360))))\n\n(fn blend-hsluv [start stop ratio]\n  (let [ratio (or ratio 0.5)\n        h (radial-tween (. start 1) (. stop 1))\n        s (linear-tween (. start 2) (. stop 2))\n        l (linear-tween (. start 3) (. stop 3))]\n    [(h ratio) (s ratio) (l ratio)]))\n\n;; General lighten/darken/whatever\n(fn lighten [c n]\n  (let [l (linear-tween (. c 3) 100)]\n    [(. c 1) (. c 2) (l n)]))\n\n(fn darken [c n]\n  (let [l (linear-tween (. c 3) 0)]\n    [(. c 1) (. c 2) (l n)]))\n\n(fn saturate [c n]\n  (let [s (linear-tween (. c 2) 100)]\n    [(. c 1) (s n) (. c 3)]))\n\n(fn desaturate [c n]\n  (let [s (linear-tween (. c 2) 0)]\n    [(. c 1) (s n) (. c 3)]))\n\n(fn rotate [c n]\n  [(% (+ n (. c 1)) 360) (. c 2) (. c 3)])\n\n;; Of course we're dealing with hex codes\n(fn blend-hex [c1 c2 r]\n  (-> (blend-hsluv (hex->hsluv c1) (hex->hsluv c2) r)\n      (hsluv->hex)))\n\n(fn lighten-hex [c n]\n  (-> (lighten (hex->hsluv c) n)\n      (hsluv->hex)))\n\n(fn darken-hex [c n]\n  (-> (darken (hex->hsluv c) n)\n      (hsluv->hex)))\n\n(fn saturate-hex [c n]\n  (-> (saturate (hex->hsluv c) n)\n      (hsluv->hex)))\n\n(fn desaturate-hex [c n]\n  (-> (desaturate (hex->hsluv c) n)\n      (hsluv->hex)))\n\n(fn rotate-hex [c n]\n  (-> (rotate (hex->hsluv c) n)\n      (hsluv->hex)))\n\n;; gradient generations\n(fn gradient [c1 c2]\n  (var ls [])\n  (for [i 0.00 1.01 0.02]\n    (set ls (vim.list_extend ls [i])))\n  (vim.tbl_map #(blend-hex c1 c2 $1) ls))\n\n(fn gradient-n [c1 c2 n]\n  (var ls [])\n  (let [step (/ 1 (+ n 1))]\n    (for [i 1 n 1]\n      (set ls (vim.list_extend ls [(* i step)]))))\n  (vim.list_extend [c1] (vim.tbl_map #(blend-hex c1 c2 $1) ls) [c2]))\n\n\n;; base16 colorscheme generation\n(math.randomseed (os.time))\n(fn random-color [red-range green-range blue-range]\n  (let [rgb {:b (math.random (. blue-range 1) (. blue-range 2))\n             :r (math.random (. red-range 1) (. red-range 2))\n             :g (math.random (. green-range 1) (. green-range 2))}]\n    (string.format \"#%02x%02x%02x\" rgb.r rgb.g rgb.b)))\n\n(fn generate-pallete []\n  (let [bghex (random-color [0 63] [0 63] [0 63])\n        fghex (random-color [240 255] [240 255] [240 255])]\n\n    (local palette [bghex\n                    (blend-hex bghex fghex 0.085)\n                    (blend-hex bghex fghex 0.18)\n                    (blend-hex bghex fghex 0.3)\n                    (blend-hex bghex fghex 0.7)\n                    (blend-hex bghex fghex 0.82)\n                    (blend-hex bghex fghex 0.95)\n                    fghex])\n\n    (local base16-names [:base00\n                         :base01\n                         :base02\n                         :base03\n                         :base04\n                         :base05\n                         :base06\n                         :base07\n                         :base08\n                         :base09\n                         :base0A\n                         :base0B\n                         :base0C\n                         :base0D\n                         :base0E\n                         :base0F])\n\n    (local base16-palette {})\n    (each [i hex (ipairs palette)]\n      (local name (. base16-names i))\n      (tset base16-palette name hex))\n    base16-palette))\n\n{: blend-hex\n : lighten-hex\n : darken-hex\n : saturate-hex\n : desaturate-hex\n : rotate-hex\n : gradient\n : gradient-n\n : generate-pallete}\n"
  },
  {
    "path": "fnl/oxocarbon/init.fnl",
    "content": ";;                               O X O C A R B O N\n;;        _..._         _..._         _..._         _..._         _..._\n;;      .:::::::.     .::::. `.     .::::  `.     .::'   `.     .'     `.\n;;     :::::::::::   :::::::.  :   ::::::    :   :::       :   :         :\n;;     :::::::::::   ::::::::  :   ::::::    :   :::       :   :         :\n;;     `:::::::::'   `::::::' .'   `:::::   .'   `::.     .'   `.       .'\n;;       `':::''       `'::'-'       `'::.-'       `':..-'       `-...-'\n;;\n;;   Colorscheme name:    oxocarbon themeing system\n;;   Description:         Neovim Colorschemes based on base16 in fennel made with (hs)luv <3\n;;   Author:              https://github.com/shaunsingh\n\n(local {: blend-hex} (require :oxocarbon.colorutils))\n\n;; utilities\n\n(macro let! [...]\n  (fn let-with-scope! [[scope] name value]\n    (let [name (tostring name)\n          scope (tostring scope)]\n      `(tset ,(match scope\n                :b `vim.b\n                :w `vim.w\n                :t `vim.t\n                :g `vim.g) ,name ,value)))\n\n  (match [...]\n    [[scope] name value] (let-with-scope! [scope] name value)\n    [name value] (let-with-scope! [:g] name value)\n    _ (error \"expected let! to have at least two arguments: name value\")))\n\n(macro set! [option]\n  (let [option (tostring option)]\n    `(tset vim.o ,option true)))\n\n(macro custom-set-face! [name attributes colors]\n  (let [definition (collect [_ attr (ipairs attributes) &into colors]\n                     (tostring attr)\n                     true)]\n    `(vim.api.nvim_set_hl 0 ,name ,definition)))\n\n;; reset variables\n\n(when vim.g.colors_name\n  (vim.cmd.hi :clear))\n\n;; set defaults\n\n(let! colors_name :oxocarbon)\n(set! termguicolors)\n\n;; oxocarbon palette\n\n(local base00 \"#161616\")\n(local base06 \"#ffffff\")\n(local base09 \"#78a9ff\")\n\n(local oxocarbon (or (and (= vim.o.background :dark)\n                          {: base00\n                           :base01 (blend-hex base00 base06 0.085)\n                           :base02 (blend-hex base00 base06 0.18)\n                           :base03 (blend-hex base00 base06 0.3)\n                           :base04 (blend-hex base00 base06 0.82)\n                           :base05 (blend-hex base00 base06 0.95)\n                           : base06\n                           :base07 \"#08bdba\"\n                           :base08 \"#3ddbd9\"\n                           : base09\n                           :base10 \"#ee5396\"\n                           :base11 \"#33b1ff\"\n                           :base12 \"#ff7eb6\"\n                           :base13 \"#42be65\"\n                           :base14 \"#be95ff\"\n                           :base15 \"#82cfff\"\n                           :blend \"#131313\"\n                           :none :NONE})\n                     {:base00 base06\n                      :base01 (blend-hex base00 base06 0.95)\n                      :base02 (blend-hex base00 base06 0.82)\n                      :base03 base00\n                      :base04 \"#37474F\"\n                      :base05 \"#90A4AE\"\n                      :base06 \"#525252\"\n                      :base07 \"#08bdba\"\n                      :base08 \"#ff7eb6\"\n                      :base09 \"#ee5396\"\n                      :base10 \"#FF6F00\"\n                      :base11 \"#0f62fe\"\n                      :base12 \"#673AB7\"\n                      :base13 \"#42be65\"\n                      :base14 \"#be95ff\"\n                      :base15 \"#FFAB91\"\n                      :blend \"#FAFAFA\"\n                      :none :NONE}))\n\n;; terminal\n\n(let! terminal_color_0 oxocarbon.base01)\n(let! terminal_color_1 oxocarbon.base11)\n(let! terminal_color_2 oxocarbon.base14)\n(let! terminal_color_3 oxocarbon.base13)\n(let! terminal_color_4 oxocarbon.base09)\n(let! terminal_color_5 oxocarbon.base15)\n(let! terminal_color_6 oxocarbon.base08)\n(let! terminal_color_7 oxocarbon.base05)\n(let! terminal_color_8 oxocarbon.base03)\n(let! terminal_color_9 oxocarbon.base11)\n(let! terminal_color_10 oxocarbon.base14)\n(let! terminal_color_11 oxocarbon.base13)\n(let! terminal_color_12 oxocarbon.base09)\n(let! terminal_color_13 oxocarbon.base15)\n(let! terminal_color_14 oxocarbon.base07)\n(let! terminal_color_15 oxocarbon.base06)\n\n;; editor\n\n(custom-set-face! :ColorColumn [] {:fg oxocarbon.none :bg oxocarbon.base01})\n(custom-set-face! :Cursor [] {:fg oxocarbon.base00 :bg oxocarbon.base04})\n(custom-set-face! :CursorLine [] {:fg oxocarbon.none :bg oxocarbon.base01})\n(custom-set-face! :CursorColumn [] {:fg oxocarbon.none :bg oxocarbon.base01})\n(custom-set-face! :CursorLineNr [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :QuickFixLine [] {:fg oxocarbon.none :bg oxocarbon.base01})\n(custom-set-face! :Error [] {:fg oxocarbon.base10 :bg oxocarbon.base01})\n(custom-set-face! :LineNr [] {:fg oxocarbon.base03 :bg oxocarbon.base00})\n(custom-set-face! :NonText [] {:fg oxocarbon.base02 :bg oxocarbon.none})\n(custom-set-face! :Normal [] {:fg oxocarbon.base04 :bg oxocarbon.base00})\n(custom-set-face! :Pmenu [] {:fg oxocarbon.base04 :bg oxocarbon.base01})\n(custom-set-face! :PmenuSbar [] {:fg oxocarbon.base04 :bg oxocarbon.base01})\n(custom-set-face! :PmenuSel [] {:fg oxocarbon.base08 :bg oxocarbon.base02})\n(custom-set-face! :PmenuThumb [] {:fg oxocarbon.base08 :bg oxocarbon.base02})\n(custom-set-face! :SpecialKey [] {:fg oxocarbon.base03 :bg oxocarbon.none})\n(custom-set-face! :Visual [] {:fg oxocarbon.none :bg oxocarbon.base02})\n(custom-set-face! :VisualNOS [] {:fg oxocarbon.none :bg oxocarbon.base02})\n(custom-set-face! :TooLong [] {:fg oxocarbon.none :bg oxocarbon.base02})\n(custom-set-face! :Debug [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :Macro [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! :MatchParen [:underline]\n                  {:fg oxocarbon.none :bg oxocarbon.base02})\n(custom-set-face! :Bold [:bold] {:fg oxocarbon.none :bg oxocarbon.none})\n(custom-set-face! :Italic [:italic] {:fg oxocarbon.none :bg oxocarbon.none})\n(custom-set-face! :Underlined [:underline]\n                  {:fg oxocarbon.none :bg oxocarbon.none})\n\n;; diagnostics\n\n(custom-set-face! :DiagnosticWarn [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticError [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticInfo [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticHint [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticUnderlineWarn [:undercurl]\n                  {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticUnderlineError [:undercurl]\n                  {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticUnderlineInfo [:undercurl]\n                  {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :DiagnosticUnderlineHint [:undercurl]\n                  {:fg oxocarbon.base04 :bg oxocarbon.none})\n\n;; health\n(custom-set-face! :HealthError [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :HealthWarning [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :HealthSuccess [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n\n;; ledger\n\n(custom-set-face! \"@comment\" [] {:link \"Comment\"})\n(custom-set-face! \"@text.literal.commodity\" [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! \"@number\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@number.date\" [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! \"@number.date.effective\" [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! \"@number.interval\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@number.status\" [] {:fg oxocarbon.base12 :bg oxocarbon.none})\n(custom-set-face! \"@number.quantity\" [] {:fg oxocarbon.base11 :bg oxocarbon.none})\n(custom-set-face! \"@number.quantity.negative\" [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n\n;; lsp\n\n(custom-set-face! :LspCodeLens [] {:fg oxocarbon.none :bg oxocarbon.base03})\n(custom-set-face! :LspReferenceText [] {:fg oxocarbon.none :bg oxocarbon.base03})\n(custom-set-face! :LspReferenceread [] {:fg oxocarbon.none :bg oxocarbon.base03})\n(custom-set-face! :LspReferenceWrite [] {:fg oxocarbon.none :bg oxocarbon.base03})\n(custom-set-face! :LspSignatureActiveParameter [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n;; lps-semantic-tokens\n(custom-set-face! \"@lsp.type.class\" [] {:link \"Structure\"})\n(custom-set-face! \"@lsp.type.decorator\" [] {:link \"Decorator\"})\n(custom-set-face! \"@lsp.type.decorator.markdown\" [] {:link \"Structure\"})\n(custom-set-face! \"@lsp.type.function\" [] {:link \"@function\"})\n(custom-set-face! \"@lsp.type.macro\" [] {:link \"Macro\"})\n(custom-set-face! \"@lsp.type.method\" [] {:link \"@function\"})\n(custom-set-face! \"@lsp.type.struct\" [] {:link \"Structure\"})\n(custom-set-face! \"@lsp.type.type\" [] {:link \"Type\"})\n(custom-set-face! \"@lsp.type.typeParameter\" [] {:link \"Typedef\"})\n(custom-set-face! \"@lsp.type.selfParameter\" [] {:link \"@variable.builtin\"})\n(custom-set-face! \"@lsp.type.builtinConstant\" [] {:link \"@constant.builtin\"})\n(custom-set-face! \"@lsp.type.magicFunction\" [] {:link \"@function.builtin\"})\n(custom-set-face! \"@lsp.type.boolean\" [] {:link \"@boolean\"})\n(custom-set-face! \"@lsp.type.builtinType\" [] {:link \"@type.builtin\"})\n(custom-set-face! \"@lsp.type.comment\" [] {:link \"@comment\"})\n(custom-set-face! \"@lsp.type.enum\" [] {:link \"@type\"})\n(custom-set-face! \"@lsp.type.enumMember\" [] {:link \"@constant\"})\n(custom-set-face! \"@lsp.type.escapeSequence\" [] {:link \"@string.escape\"})\n(custom-set-face! \"@lsp.type.formatSpecifier\" [] {:link \"@punctuation.special\"})\n;;(custom-set-face! \"@lsp.type.interface\" [] {})\n(custom-set-face! \"@lsp.type.keyword\" [] {:link \"@keyword\"})\n(custom-set-face! \"@lsp.type.namespace\" [] {:link \"@namespace\"})\n(custom-set-face! \"@lsp.type.number\" [] {:link \"@number\"})\n(custom-set-face! \"@lsp.type.operator\" [] {:link \"@operator\"})\n(custom-set-face! \"@lsp.type.parameter\" [] {:link \"@parameter\"})\n(custom-set-face! \"@lsp.type.property\" [] {:link \"@property\"})\n(custom-set-face! \"@lsp.type.selfKeyword\" [] {:link \"@variable.builtin\"})\n(custom-set-face! \"@lsp.type.string.rust\" [] {:link \"@string\"})\n(custom-set-face! \"@lsp.type.typeAlias\" [] {:link \"@type.definition\"})\n(custom-set-face! \"@lsp.type.unresolvedReference\" [] {:link \"Error\"})\n(custom-set-face! \"@lsp.type.variable\" [] {:link \"@variable\"} )\n(custom-set-face! \"@lsp.mod.readonly\" [] {:link \"@constant\"})\n(custom-set-face! \"@lsp.mod.typeHint\" [] {:link \"Type\"})\n(custom-set-face! \"@lsp.mod.builtin\" [] {:link \"Special\"})\n(custom-set-face! \"@lsp.typemod.class.defaultLibrary\" [] {:link \"@type.builtin\"})\n(custom-set-face! \"@lsp.typemod.enum.defaultLibrary\" [] {:link \"@type.builtin\"})\n(custom-set-face! \"@lsp.typemod.enumMember.defaultLibrary\" [] {:link \"@constant.builtin\"})\n(custom-set-face! \"@lsp.typemod.function.defaultLibrary\" [] {:link \"@function.builtin\"})\n(custom-set-face! \"@lsp.typemod.keyword.async\" [] {:link \"@keyword.coroutine\"})\n(custom-set-face! \"@lsp.typemod.macro.defaultLibrary\" [] {:link \"@function.builtin\"})\n(custom-set-face! \"@lsp.typemod.method.defaultLibrary\" [] {:link \"@function.builtin\"})\n(custom-set-face! \"@lsp.typemod.operator.injected\" [] {:link \"@operator\"})\n(custom-set-face! \"@lsp.typemod.string.injected\" [] {:link \"@string\"})\n(custom-set-face! \"@lsp.typemod.operator.controlFlow\" [] {:link \"@exception\"})\n(custom-set-face! \"@lsp.typemod.keyword.documentation\" [] {:link \"Special\"})\n(custom-set-face! \"@lsp.typemod.variable.global\" [] {:link \"@constant\"})\n(custom-set-face! \"@lsp.typemod.variable.static\" [] {:link \"@constant\"})\n(custom-set-face! \"@lsp.typemod.variable.defaultLibrary\" [] {:link \"Special\"})\n(custom-set-face! \"@lsp.typemod.function.builtin\" [] {:link \"@function.builtin\"})\n(custom-set-face! \"@lsp.typemod.function.readonly\" [] {:link \"@method\"})\n;;(custom-set-face! \"@lsp.typemod.type.defaultLibrary\" [] {})\n(custom-set-face! \"@lsp.typemod.variable.defaultLibrary\" [] {:link \"@variable.builtin\"})\n(custom-set-face! \"@lsp.typemod.variable.injected\" [] {:link \"@variable\"})\n\n;; gutter\n\n(custom-set-face! :Folded [] {:fg oxocarbon.base02 :bg oxocarbon.base01})\n(custom-set-face! :FoldColumn [] {:fg oxocarbon.base01 :bg oxocarbon.base00})\n(custom-set-face! :SignColumn [] {:fg oxocarbon.base01 :bg oxocarbon.base00})\n\n;; navigation\n\n(custom-set-face! :Directory [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n;; prompts\n\n(custom-set-face! :EndOfBuffer [] {:fg oxocarbon.base01 :bg oxocarbon.none})\n(custom-set-face! :ErrorMsg [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :ModeMsg [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :MoreMsg [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :Question [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :Substitute [] {:fg oxocarbon.base01 :bg oxocarbon.base08})\n(custom-set-face! :WarningMsg [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :WildMenu [] {:fg oxocarbon.base08 :bg oxocarbon.base01})\n\n;; vimhelp\n\n(custom-set-face! :helpHyperTextJump []\n                  {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n(custom-set-face! :helpSpecial [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :helpHeadline [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :helpHeader [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n\n;; diff\n\n(custom-set-face! :DiffAdded [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! :DiffChanged [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :DiffRemoved [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :DiffAdd [] {:bg \"#122f2f\" :fg oxocarbon.none})\n(custom-set-face! :DiffChange [] {:bg \"#222a39\" :fg oxocarbon.none})\n(custom-set-face! :DiffText [] {:bg \"#2f3f5c\" :fg oxocarbon.none})\n(custom-set-face! :DiffDelete [] {:bg \"#361c28\" :fg oxocarbon.none})\n\n;; search\n\n(custom-set-face! :IncSearch [] {:fg oxocarbon.base06 :bg oxocarbon.base10})\n(custom-set-face! :Search [] {:fg oxocarbon.base01 :bg oxocarbon.base08})\n\n;; tabs\n\n(custom-set-face! :TabLine [] {:link \"StatusLineNC\"})\n(custom-set-face! :TabLineFill [] {:link \"TabLine\"})\n(custom-set-face! :TabLineSel [] {:link \"StatusLine\"})\n\n;; window\n\n(custom-set-face! :Title [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n;; VertSplit has been replaced by `WinSpeperator` in nvim 0.10\n(custom-set-face! :VertSplit [] {:fg oxocarbon.base01 :bg oxocarbon.base00})\n(custom-set-face! :WinSeparator [] {:fg oxocarbon.base01 :bg oxocarbon.base00})\n\n;; regular syntax\n\n(custom-set-face! :Boolean [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Character [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :Comment [:italic]\n                  {:fg oxocarbon.base03 :bg oxocarbon.none})\n(custom-set-face! :Conceal [] {:fg oxocarbon.none :bg oxocarbon.none})\n(custom-set-face! :Conditional [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Constant [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :Decorator [] {:fg oxocarbon.base12 :bg oxocarbon.none})\n(custom-set-face! :Define [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Delimeter [] {:fg oxocarbon.base06 :bg oxocarbon.none})\n(custom-set-face! :Exception [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Float [] {:link \"Number\"})\n(custom-set-face! :Function [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :Identifier [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :Include [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Keyword [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Label [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Number [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! :Operator [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :PreProc [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Repeat [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Special [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :SpecialChar [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :SpecialComment [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :Statement [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :StorageClass [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :String [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :Structure [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Tag [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :Todo [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :Type [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :Typedef [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n\n;; markdown\n\n(custom-set-face! :markdownBlockquote []\n                  {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :markdownBold [] {:link \"Bold\"})\n(custom-set-face! :markdownItalic [] {:link \"Italic\"})\n(custom-set-face! :markdownBoldItalic [:bold :italic]\n                  {:fg oxocarbon.none :bg oxocarbon.none})\n(custom-set-face! :markdownRule [] {:link \"Comment\"})\n(custom-set-face! :markdownH1 [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :markdownH2 [] {:link \"markdownH1\"})\n(custom-set-face! :markdownH3 [] {:link \"markdownH1\"})\n(custom-set-face! :markdownH4 [] {:link \"markdownH1\"})\n(custom-set-face! :markdownH5 [] {:link \"markdownH1\"})\n(custom-set-face! :markdownH6 [] {:link \"markdownH1\"})\n(custom-set-face! :markdownHeadingDelimiter [] {:link \"markdownH1\"})\n(custom-set-face! :markdownHeadingRule [] {:link \"markdownH1\"})\n(custom-set-face! :markdownUrl [:underline]\n                  {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :markdownCode [] {:link \"String\"})\n(custom-set-face! :markdownCodeBlock [] {:link \"markdownCode\"})\n(custom-set-face! :markdownCodeDelimiter [] {:link \"markdownCode\"})\n(custom-set-face! :markdownUrl [] {:link \"String\"})\n(custom-set-face! :markdownListMarker []\n                  {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :markdownOrderedListMarker []\n                  {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n; markdown treesitter\n(custom-set-face! \"@markup\" [] {:link \"@none\"})\n(custom-set-face! \"@markup.environment\" [] {:link \"Macro\"})\n(custom-set-face! \"@markup.environment.name\" [] {:link \"Type\"})\n(custom-set-face! \"@markup.emphasis\" [] {:italic true})\n(custom-set-face! \"@markup.italic\" [] {:italic true})\n(custom-set-face! \"@markup.strikethrough\" [] {:strikethrough true})\n(custom-set-face! \"@markup.strong\" [] {:bold true})\n(custom-set-face! \"@markup.underline\" [] {:underline true})\n\n(custom-set-face! \"@markup.heading\" [] {:link \"Title\"})\n(custom-set-face! \"@markup.heading.marker\" [] {:link :markdownHeadingDelimiter})\n(custom-set-face! \"@markup.heading.1.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.2.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.3.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.4.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.5.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.6.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.7.markdown\" [] {:link \"markdownH1\"})\n(custom-set-face! \"@markup.heading.8.markdown\" [] {:link \"markdownH1\"})\n\n(custom-set-face! \"@markup.link\" [] {:link \"markdownUrl\"})\n(custom-set-face! \"@markup.link.label\" [] {:underline true})\n(custom-set-face! \"@markup.link.label.symbol\" [] {:link \"markdownItalic\"})\n(custom-set-face! \"@markup.link.label.markdown_inline\" [] {:link \"markdownItalic\"})\n(custom-set-face! \"@markup.link.title\" [] {:link \"Title\"})\n(custom-set-face! \"@markup.link.url\" [] {:link \"markdownUrl\"})\n(custom-set-face! \"@markup.link.destination\" [] {:link \"markdownUrl\"})\n(custom-set-face! \"@markup.link.description\" [] {:fg oxocarbon.blend :underline true :italic true})\n\n(custom-set-face! \"@markup.list\" [] {:link \"markdownListMarker\"})\n(custom-set-face! \"@markup.list.bullet\" [] {:link \"markdownListMarker\"})\n(custom-set-face! \"@markup.list.checked\" [] {:link \"markdownListMarker\"})\n(custom-set-face! \"@markup.list.markdown\" [] {:link \"markdownListMarker\"})\n(custom-set-face! \"@markup.list.ordered\" [] {:link \"markdownOrderedListMarker\"})\n(custom-set-face! \"@markup.list.unchecked\" [] {:link \"markdownListMarker\"})\n\n(custom-set-face! \"@markup.math\" [] {:link \"Special\"})\n(custom-set-face! \"@markup.raw\" [] {:link \"String\"})\n(custom-set-face! \"@markup.raw.markdown_inline\" [] {:link \"String\"})\n(custom-set-face! \"@markup.quote\" [] {:link \"markdownBlockquote\"})\n\n(custom-set-face! \"@markup.literal\" [] {:link \"markdownCode\"})\n(custom-set-face! \"@markup.code.block\" [] {:link \"markdownCodeBlock\"})\n(custom-set-face! \"@markup.rule\" [] {:link \"Comment\"})\n\n;; asciidoc\n\n(custom-set-face! :asciidocAttributeEntry [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! :asciidocAttributeList [] {:link \"asciidocAttributeEntry\"})\n(custom-set-face! :asciidocAttributeRef [] {:link \"asciidocAttributeEntry\"})\n(custom-set-face! :asciidocHLabel [] {:link \"markdownH1\"})\n(custom-set-face! :asciidocOneLineTitle [] {:link \"markdownH1\"})\n(custom-set-face! :asciidocQuotedMonospaced [] {:link \"markdownBlockquote\"})\n(custom-set-face! :asciidocURL [] {:link \"markdownUrl\"})\n\n;; treesitter\n;;; misc\n\n(custom-set-face! \"@comment\" [] {:link \"Comment\"})\n(custom-set-face! \"@error\" [] {:fg oxocarbon.base11 :bg oxocarbon.none})\n\n;; @none\n;; @preproc\n;; @define\n\n(custom-set-face! \"@operator\" [] {:link \"Operator\"})\n\n;;; punctuation\n\n(custom-set-face! \"@punctuation.delimiter\" [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! \"@punctuation.bracket\" [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! \"@punctuation.special\" [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n;;; literals\n\n(custom-set-face! \"@string\" [] {:link \"String\"})\n(custom-set-face! \"@string.regex\" [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! \"@string.escape\" [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n\n;; @string.special\n\n(custom-set-face! \"@character\" [] {:link \"Character\"})\n\n;; @character.special\n\n(custom-set-face! \"@boolean\" [] {:link \"Boolean\"})\n(custom-set-face! \"@number\" [] {:link \"Number\"})\n(custom-set-face! \"@float\" [] {:link \"Float\"})\n\n;;; functions\n\n(custom-set-face! \"@function\" [:bold]\n                  {:fg oxocarbon.base12 :bg oxocarbon.none})\n(custom-set-face! \"@function.builtin\" [] {:fg oxocarbon.base12 :bg oxocarbon.none})\n\n;; @function.call\n\n(custom-set-face! \"@function.macro\" [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! \"@method\" [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n\n;; @method.call\n\n(custom-set-face! \"@constructor\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@parameter\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n\n;;; keywords\n\n(custom-set-face! \"@keyword\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@keyword.function\" [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! \"@keyword.operator\" [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n;; @keyword.return\n\n(custom-set-face! \"@conditional\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@repeat\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n\n;; @debug\n\n(custom-set-face! \"@label\" [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! \"@include\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@exception\" [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n\n;;; types\n\n(custom-set-face! \"@type\" [] {:link \"Type\"})\n(custom-set-face! \"@type.builtin\" [] {:link \"Type\"})\n\n;; @type.defintion\n;; @type.qualifier\n;; @storageclass\n;; @storageclass.lifetime\n\n(custom-set-face! \"@attribute\" [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! \"@field\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! \"@property\" [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n\n;;; identifiers\n\n(custom-set-face! \"@variable\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! \"@variable.builtin\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! \"@constant\" [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! \"@constant.builtin\" [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! \"@constant.macro\" [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! \"@namespace\" [] {:fg oxocarbon.base07 :bg oxocarbon.none})\n(custom-set-face! \"@symbol\" [:bold]\n                  {:fg oxocarbon.base15 :bg oxocarbon.none})\n\n;;; text\n\n(custom-set-face! \"@text\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! \"@text.strong\" [] {:fg oxocarbon.none :bg oxocarbon.none})\n(custom-set-face! \"@text.emphasis\" [:bold]\n                  {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! \"@text.underline\" [:underline]\n                  {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! \"@text.strike\" [:strikethrough]\n                  {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! \"@text.title\" [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! \"@text.literal\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! \"@text.uri\" [:underline]\n                  {:fg oxocarbon.base14 :bg oxocarbon.none})\n\n;; @text.math\n;; @text.environment\n;; @text.environment.name\n;; @text.reference\n;; @text.todo\n;; @text.note\n;; @text.warning\n;; @text.danger\n;; @text.diff.add\n;; @text.diff.delete\n;;; tags\n\n(custom-set-face! \"@tag\" [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! \"@tag.attribute\" [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! \"@tag.delimiter\" [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! \"@tag.builtin.tsx\" [] {:link \"@tag.tsx\"})\n\n;;; Conceal\n;; @conceal\n;;; Spell\n;; @spell\n;; @nospell\n;;; non-standard\n;; @variable.global\n;;; locals\n;; @definition\n;; @definition.constant\n;; @definition.function\n;; @definition.method\n;; @definition.var\n;; @definition.parameter\n;; @definition.macro\n;; @definition.type\n;; @definition.field\n;; @definition.enum\n;; @definition.namespace\n;; @definition.import\n;; @definition.associated\n;; @scope\n\n(custom-set-face! \"@reference\" [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n\n;; neovim\n\n(custom-set-face! :NvimInternalError [] {:fg oxocarbon.base00 :bg oxocarbon.base08})\n(custom-set-face! :NormalFloat [] {:fg oxocarbon.base05 :bg oxocarbon.blend})\n(custom-set-face! :FloatBorder [] {:fg oxocarbon.blend :bg oxocarbon.blend})\n(custom-set-face! :NormalNC [] {:fg oxocarbon.base04 :bg oxocarbon.base00})\n(custom-set-face! :TermCursor [] {:fg oxocarbon.base00 :bg oxocarbon.base04})\n(custom-set-face! :TermCursorNC [] {:fg oxocarbon.base00 :bg oxocarbon.base04})\n\n;; statusline/winbar\n\n(custom-set-face! :StatusLine [] {:fg oxocarbon.base04 :bg oxocarbon.base00})\n(custom-set-face! :StatusLineNC [] {:fg oxocarbon.base04 :bg oxocarbon.base01})\n(custom-set-face! :StatusReplace [] {:fg oxocarbon.base00 :bg oxocarbon.base08})\n(custom-set-face! :StatusInsert [] {:fg oxocarbon.base00 :bg oxocarbon.base12})\n(custom-set-face! :StatusVisual [] {:fg oxocarbon.base00 :bg oxocarbon.base14})\n(custom-set-face! :StatusTerminal [] {:fg oxocarbon.base00 :bg oxocarbon.base11})\n(custom-set-face! :StatusNormal [] {:fg oxocarbon.base00 :bg oxocarbon.base15})\n(custom-set-face! :StatusCommand [] {:fg oxocarbon.base00 :bg oxocarbon.base13})\n(custom-set-face! :StatusLineDiagnosticWarn [:bold]\n                  {:fg oxocarbon.base14 :bg oxocarbon.base00})\n(custom-set-face! :StatusLineDiagnosticError [:bold]\n                  {:fg oxocarbon.base10 :bg oxocarbon.base00})\n\n;; telescope\n\n(custom-set-face! :TelescopeBorder [] {:fg oxocarbon.blend :bg oxocarbon.blend})\n(custom-set-face! :TelescopePromptBorder [] {:fg oxocarbon.base02 :bg oxocarbon.base02})\n(custom-set-face! :TelescopePromptNormal [] {:fg oxocarbon.base05 :bg oxocarbon.base02})\n(custom-set-face! :TelescopePromptPrefix [] {:fg oxocarbon.base08 :bg oxocarbon.base02})\n(custom-set-face! :TelescopeNormal [] {:fg oxocarbon.none :bg oxocarbon.blend})\n(custom-set-face! :TelescopePreviewTitle [] {:fg oxocarbon.base02 :bg oxocarbon.base12})\n(custom-set-face! :TelescopePromptTitle [] {:fg oxocarbon.base02 :bg oxocarbon.base11})\n(custom-set-face! :TelescopeResultsTitle [] {:fg oxocarbon.blend :bg oxocarbon.blend})\n(custom-set-face! :TelescopeSelection [] {:fg oxocarbon.none :bg oxocarbon.base02})\n(custom-set-face! :TelescopePreviewLine [] {:fg oxocarbon.none :bg oxocarbon.base01})\n(custom-set-face! :TelescopeMatching [:bold :italic] {:fg oxocarbon.base08 :bg oxocarbon.none})\n\n;; notify\n\n(custom-set-face! :NotifyERRORBorder [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :NotifyWARNBorder [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :NotifyINFOBorder [] {:fg oxocarbon.base05 :bg oxocarbon.none})\n(custom-set-face! :NotifyDEBUGBorder [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :NotifyTRACEBorder [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :NotifyERRORIcon [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :NotifyWARNIcon [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :NotifyINFOIcon [] {:fg oxocarbon.base05 :bg oxocarbon.none})\n(custom-set-face! :NotifyDEBUGIcon [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :NotifyTRACEIcon [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :NotifyERRORTitle [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :NotifyWARNTitle [] {:fg oxocarbon.base14 :bg oxocarbon.none})\n(custom-set-face! :NotifyINFOTitle [] {:fg oxocarbon.base05 :bg oxocarbon.none})\n(custom-set-face! :NotifyDEBUGTitle [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n(custom-set-face! :NotifyTRACETitle [] {:fg oxocarbon.base13 :bg oxocarbon.none})\n\n;; cmp\n\n(custom-set-face! :CmpItemAbbr [] {:fg \"#adadad\" :bg oxocarbon.none})\n(custom-set-face! :CmpItemAbbrMatch [:bold]\n                  {:fg oxocarbon.base05 :bg oxocarbon.none})\n(custom-set-face! :CmpItemAbbrMatchFuzzy [:bold]\n                  {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :CmpItemMenu [:italic]\n                  {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :CmpItemKindInterface [] {:fg oxocarbon.base01 :bg oxocarbon.base08})\n(custom-set-face! :CmpItemKindColor [] {:fg oxocarbon.base01 :bg oxocarbon.base08})\n(custom-set-face! :CmpItemKindTypeParameter [] {:fg oxocarbon.base01 :bg oxocarbon.base08})\n(custom-set-face! :CmpItemKindText [] {:fg oxocarbon.base01 :bg oxocarbon.base09})\n(custom-set-face! :CmpItemKindEnum [] {:fg oxocarbon.base01 :bg oxocarbon.base09})\n(custom-set-face! :CmpItemKindKeyword [] {:fg oxocarbon.base01 :bg oxocarbon.base09})\n(custom-set-face! :CmpItemKindConstant [] {:fg oxocarbon.base01 :bg oxocarbon.base10})\n(custom-set-face! :CmpItemKindConstructor [] {:fg oxocarbon.base01 :bg oxocarbon.base10})\n(custom-set-face! :CmpItemKindReference [] {:fg oxocarbon.base01 :bg oxocarbon.base10})\n(custom-set-face! :CmpItemKindFunction [] {:fg oxocarbon.base01 :bg oxocarbon.base11})\n(custom-set-face! :CmpItemKindStruct [] {:fg oxocarbon.base01 :bg oxocarbon.base11})\n(custom-set-face! :CmpItemKindClass [] {:fg oxocarbon.base01 :bg oxocarbon.base11})\n(custom-set-face! :CmpItemKindModule [] {:fg oxocarbon.base01 :bg oxocarbon.base11})\n(custom-set-face! :CmpItemKindOperator [] {:fg oxocarbon.base01 :bg oxocarbon.base11})\n(custom-set-face! :CmpItemKindField [] {:fg oxocarbon.base01 :bg oxocarbon.base12})\n(custom-set-face! :CmpItemKindProperty [] {:fg oxocarbon.base01 :bg oxocarbon.base12})\n(custom-set-face! :CmpItemKindEvent [] {:fg oxocarbon.base01 :bg oxocarbon.base12})\n(custom-set-face! :CmpItemKindUnit [] {:fg oxocarbon.base01 :bg oxocarbon.base13})\n(custom-set-face! :CmpItemKindSnippet [] {:fg oxocarbon.base01 :bg oxocarbon.base13})\n(custom-set-face! :CmpItemKindFolder [] {:fg oxocarbon.base01 :bg oxocarbon.base13})\n(custom-set-face! :CmpItemKindVariable [] {:fg oxocarbon.base01 :bg oxocarbon.base14})\n(custom-set-face! :CmpItemKindFile [] {:fg oxocarbon.base01 :bg oxocarbon.base14})\n(custom-set-face! :CmpItemKindMethod [] {:fg oxocarbon.base01 :bg oxocarbon.base15})\n(custom-set-face! :CmpItemKindValue [] {:fg oxocarbon.base01 :bg oxocarbon.base15})\n(custom-set-face! :CmpItemKindEnumMember [] {:fg oxocarbon.base01 :bg oxocarbon.base15})\n\n;; nvimtree\n\n(custom-set-face! :NvimTreeImageFile [] {:fg oxocarbon.base12 :bg oxocarbon.none})\n(custom-set-face! :NvimTreeFolderIcon [] {:fg oxocarbon.base12 :bg oxocarbon.none})\n(custom-set-face! :NvimTreeWinSeparator [] {:fg oxocarbon.base00 :bg oxocarbon.base00})\n(custom-set-face! :NvimTreeFolderName [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :NvimTreeIndentMarker [] {:fg oxocarbon.base02 :bg oxocarbon.none})\n(custom-set-face! :NvimTreeEmptyFolderName [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! :NvimTreeOpenedFolderName [] {:fg oxocarbon.base15 :bg oxocarbon.none})\n(custom-set-face! :NvimTreeNormal [] {:fg oxocarbon.base04 :bg oxocarbon.base00})\n\n;; neogit\n\n(custom-set-face! :NeogitBranch [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :NeogitRemote [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :NeogitHunkHeader [] {:fg oxocarbon.base04 :bg oxocarbon.base02})\n(custom-set-face! :NeogitHunkHeaderHighlight [] {:fg oxocarbon.base04 :bg oxocarbon.base03})\n\n;; gitsigns\n(custom-set-face! :GitSignsCurrentLineBlame [] {:link \"Comment\" })\n\n;; hydra\n\n(custom-set-face! :HydraRed [] {:fg oxocarbon.base12 :bg oxocarbon.none})\n(custom-set-face! :HydraBlue [] {:fg oxocarbon.base09 :bg oxocarbon.none})\n(custom-set-face! :HydraAmaranth [] {:fg oxocarbon.base10 :bg oxocarbon.none})\n(custom-set-face! :HydraTeal [] {:fg oxocarbon.base08 :bg oxocarbon.none})\n(custom-set-face! :HydraHint [] {:fg oxocarbon.none :bg oxocarbon.blend})\n\n;; alpha\n\n(custom-set-face! :alpha1 [] {:fg oxocarbon.base03 :bg oxocarbon.none})\n(custom-set-face! :alpha2 [] {:fg oxocarbon.base04 :bg oxocarbon.none})\n(custom-set-face! :alpha3 [] {:fg oxocarbon.base03 :bg oxocarbon.none})\n\n;; headlines.nvim\n\n(custom-set-face! :CodeBlock [] {:fg oxocarbon.none :bg oxocarbon.base01})\n\n;; nvim-bufferline\n\n(custom-set-face! :BufferLineDiagnostic [:bold]\n                  {:fg oxocarbon.base10 :bg oxocarbon.none})\n\n(custom-set-face! :BufferLineDiagnosticVisible [:bold]\n                  {:fg oxocarbon.base10 :bg oxocarbon.none})\n\n;; preservim/vim-markdown\n\n(custom-set-face! :htmlH1 [] {:link \"markdownH1\"})\n(custom-set-face! :mkdRule [] {:link \"markdownRule\"})\n(custom-set-face! :mkdListItem [] {:link \"markdownListMarker\"})\n(custom-set-face! :mkdListItemCheckbox [] {:link \"markdownListMarker\"})\n\n;; vimwiki/vimwiki\n\n(custom-set-face! :VimwikiHeader1 [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiHeader2 [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiHeader3 [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiHeader4 [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiHeader5 [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiHeader6 [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiHeaderChar [] {:link \"markdownH1\"})\n(custom-set-face! :VimwikiList [] {:link \"markdownListMarker\"})\n(custom-set-face! :VimwikiLink [] {:link \"markdownUrl\"})\n(custom-set-face! :VimwikiCode [] {:link \"markdownCode\"})\n\n;; flash\n\n(custom-set-face! :FlashLabel [:bold] {:fg oxocarbon.base05 :bg oxocarbon.base00})\n\n{ : oxocarbon }\n"
  },
  {
    "path": "lua/lualine/themes/oxocarbon.lua",
    "content": "local oxocarbon = (require(\"oxocarbon\")).oxocarbon\nlocal colors = {color0 = oxocarbon.base02, color1 = oxocarbon.base10, color2 = oxocarbon.base08, color3 = oxocarbon.base00, color6 = oxocarbon.base04, color7 = oxocarbon.base09, color8 = oxocarbon.base14, color9 = oxocarbon.base12, color10 = oxocarbon.base13}\nreturn {replace = {a = {fg = colors.color0, bg = colors.color1}, b = {fg = colors.color2, bg = colors.color3}}, inactive = {a = {fg = colors.color0, bg = colors.color7}, b = {fg = colors.color6, bg = colors.color3}, z = {fg = colors.color0, bg = colors.color3}}, normal = {a = {fg = colors.color0, bg = colors.color7}, b = {fg = colors.color6, bg = colors.color3}, c = {fg = colors.color6, bg = colors.color3}, z = {fg = colors.color6, bg = colors.color3}}, visual = {a = {fg = colors.color0, bg = colors.color8}, b = {fg = colors.color6, bg = colors.color3}, y = {fg = colors.color6, bg = colors.color3}, z = {fg = colors.color9, bg = colors.color3}}, insert = {a = {fg = colors.color0, bg = colors.color9}, b = {fg = colors.color6, bg = colors.color3}, z = {fg = colors.color9, bg = colors.color3}}, command = {a = {fg = colors.color0, bg = colors.color10}}}"
  },
  {
    "path": "lua/oxocarbon/colorutils.lua",
    "content": "local hex_chars = \"0123456789abcdef\"\nlocal epsilon = 0.0088564516\nlocal kappa = 903.2962962\nlocal refY = 1\nlocal refU = 0.19783000664283\nlocal refV = 0.46831999493879\nlocal m = {{3.2409699419045, ( - 1.5373831775701), ( - 0.498610760293)}, {( - 0.96924363628087), 1.8759675015077, 0.041555057407175}, {0.055630079696993, ( - 0.20397695888897), 1.0569715142429}}\nlocal minv = {{0.41239079926595, 0.35758433938387, 0.18048078840183}, {0.21263900587151, 0.71516867876775, 0.072192315360733}, {0.019330818715591, 0.11919477979462, 0.95053215224966}}\nlocal function get_bounds(l)\n  local result = {}\n  local sub2 = nil\n  local sub1 = (((l + 16) ^ 3) / 1560896)\n  if (sub1 > epsilon) then\n    sub2 = sub1\n  else\n    sub2 = (l / kappa)\n  end\n  for i = 1, 3 do\n    local m1 = m[i][1]\n    local m2 = m[i][2]\n    local m3 = m[i][3]\n    for t = 0, 1 do\n      local top1 = (((284517 * m1) - (94839 * m3)) * sub2)\n      local top2 = ((((((838422 * m3) + (769860 * m2)) + (731718 * m1)) * l) * sub2) - ((769860 * t) * l))\n      local bottom = ((((632260 * m3) - (126452 * m2)) * sub2) + (126452 * t))\n      table.insert(result, {slope = (top1 / bottom), intercept = (top2 / bottom)})\n    end\n  end\n  return result\nend\nlocal function length_of_ray_until_intersect(theta, line)\n  return (line.intercept / (math.sin(theta) - (line.slope * math.cos(theta))))\nend\nlocal function max_safe_chroma_for_lh(l, h)\n  local hrad = (((h / 360) * math.pi) * 2)\n  local bounds = get_bounds(l)\n  local min = 1.7976931348623e+308\n  for i = 1, 6 do\n    local bound = bounds[i]\n    local distance = length_of_ray_until_intersect(hrad, bound)\n    if (distance >= 0) then\n      min = math.min(min, distance)\n    else\n    end\n  end\n  return min\nend\nlocal function y__3el(Y)\n  if (Y <= epsilon) then\n    return ((Y / refY) * kappa)\n  else\n    return ((116 * ((Y / refY) ^ 0.33333333333333)) - 16)\n  end\nend\nlocal function l__3ey(L)\n  if (L <= 8) then\n    return ((refY * L) / kappa)\n  else\n    return (refY * (((L + 16) / 116) ^ 3))\n  end\nend\nlocal function from_linear(c)\n  if (c <= 0.0031308) then\n    return (12.92 * c)\n  else\n    return ((1.055 * (c ^ 0.41666666666667)) - 0.055)\n  end\nend\nlocal function to_linear(c)\n  if (c > 0.04045) then\n    return (((c + 0.055) / 1.055) ^ 2.4)\n  else\n    return (c / 12.92)\n  end\nend\nlocal function dot_product(a, b)\n  local sum = 0\n  for i = 1, 3 do\n    sum = (sum + (a[i] * b[i]))\n  end\n  return sum\nend\nlocal function luv__3elch(tuple)\n  local L = tuple[1]\n  local U = tuple[2]\n  local V = tuple[3]\n  local C = math.sqrt(((U * U) + (V * V)))\n  local H = nil\n  if (C < 1e-08) then\n    H = 0\n  else\n    H = ((math.atan2(V, U) * 180) / 3.1415926535898)\n    if (H < 0) then\n      H = (360 + H)\n    else\n    end\n  end\n  return {L, C, H}\nend\nlocal function lch__3eluv(tuple)\n  local L = tuple[1]\n  local C = tuple[2]\n  local Hrad = (((tuple[3] / 360) * 2) * math.pi)\n  return {L, (math.cos(Hrad) * C), (math.sin(Hrad) * C)}\nend\nlocal function xyz__3eluv(tuple)\n  local X = tuple[1]\n  local Y = tuple[2]\n  local divider = ((X + (15 * Y)) + (3 * tuple[3]))\n  local var_u = (4 * X)\n  local var_v = (9 * Y)\n  if (divider ~= 0) then\n    var_u = (var_u / divider)\n    var_v = (var_v / divider)\n  else\n    var_u = 0\n    var_v = 0\n  end\n  local L = y__3el(Y)\n  if (L == 0) then\n    local rtn = {0, 0, 0}\n    return rtn\n  else\n  end\n  return {L, ((13 * L) * (var_u - refU)), ((13 * L) * (var_v - refV))}\nend\nlocal function luv__3exyz(tuple)\n  local L = tuple[1]\n  local U = tuple[2]\n  local V = tuple[3]\n  if (L == 0) then\n    local rtn = {0, 0, 0}\n    return rtn\n  else\n  end\n  local var_u = ((U / (13 * L)) + refU)\n  local var_v = ((V / (13 * L)) + refV)\n  local Y = l__3ey(L)\n  local X = (0 - (((9 * Y) * var_u) / (((var_u - 4) * var_v) - (var_u * var_v))))\n  return {X, Y, ((((9 * Y) - ((15 * var_v) * Y)) - (var_v * X)) / (3 * var_v))}\nend\nlocal function xyz__3ergb(tuple)\n  return {from_linear(dot_product(m[1], tuple)), from_linear(dot_product(m[2], tuple)), from_linear(dot_product(m[3], tuple))}\nend\nlocal function rgb__3exyz(tuple)\n  local rgbl = {to_linear(tuple[1]), to_linear(tuple[2]), to_linear(tuple[3])}\n  return {dot_product(minv[1], rgbl), dot_product(minv[2], rgbl), dot_product(minv[3], rgbl)}\nend\nlocal function hex__3ergb(hex)\n  local hex0 = string.lower(hex)\n  local ret = {}\n  for i = 0, 2 do\n    local char1 = string.sub(hex0, ((i * 2) + 2), ((i * 2) + 2))\n    local char2 = string.sub(hex0, ((i * 2) + 3), ((i * 2) + 3))\n    local digit1 = (string.find(hex_chars, char1) - 1)\n    local digit2 = (string.find(hex_chars, char2) - 1)\n    do end (ret)[(i + 1)] = (((digit1 * 16) + digit2) / 255)\n  end\n  return ret\nend\nlocal function rgb__3ehex(tuple)\n  local h = \"#\"\n  for i = 1, 3 do\n    local c = math.floor(((tuple[i] * 255) + 0.5))\n    local digit2 = math.fmod(c, 16)\n    local x = ((c - digit2) / 16)\n    local digit1 = math.floor(x)\n    h = (h .. string.sub(hex_chars, (digit1 + 1), (digit1 + 1)))\n    h = (h .. string.sub(hex_chars, (digit2 + 1), (digit2 + 1)))\n  end\n  return h\nend\nlocal function lch__3ehsluv(tuple)\n  local L = tuple[1]\n  local C = tuple[2]\n  local H = tuple[3]\n  local max_chroma = max_safe_chroma_for_lh(L, H)\n  if (L > 99.9999999) then\n    local rtn = {H, 0, 100}\n    return rtn\n  else\n  end\n  if (L < 1e-08) then\n    local rtn = {H, 0, 0}\n    return rtn\n  else\n  end\n  return {H, ((C / max_chroma) * 100), L}\nend\nlocal function hsluv__3elch(tuple)\n  local H = tuple[1]\n  local S = tuple[2]\n  local L = tuple[3]\n  if (L > 99.9999999) then\n    local rtn = {100, 0, H}\n    return rtn\n  else\n  end\n  if (L < 1e-08) then\n    local rtn = {0, 0, H}\n    return rtn\n  else\n  end\n  return {L, ((max_safe_chroma_for_lh(L, H) / 100) * S), H}\nend\nlocal function rgb__3elch(tuple)\n  return luv__3elch(xyz__3eluv(rgb__3exyz(tuple)))\nend\nlocal function lch__3ergb(tuple)\n  return xyz__3ergb(luv__3exyz(lch__3eluv(tuple)))\nend\nlocal function rgb__3ehsluv(tuple)\n  return lch__3ehsluv(rgb__3elch(tuple))\nend\nlocal function hsluv__3ergb(tuple)\n  return lch__3ergb(hsluv__3elch(tuple))\nend\nlocal function hex__3ehsluv(s)\n  return rgb__3ehsluv(hex__3ergb(s))\nend\nlocal function hsluv__3ehex(tuple)\n  return rgb__3ehex(hsluv__3ergb(tuple))\nend\nlocal function transform_h(c, f)\n  return {f(c[1]), c[2], c[3]}\nend\nlocal function transform_s(c, f)\n  return {c[1], f(c[2]), c[3]}\nend\nlocal function transform_l(c, f)\n  return {c[1], c[2], f(c[3])}\nend\nlocal function linear_tween(start, stop)\n  local function _16_(i)\n    return (start + (i * (stop - start)))\n  end\n  return _16_\nend\nlocal function radial_tween(x, y)\n  local start = math.rad(x)\n  local stop = math.rad(y)\n  local delta = math.atan2(math.sin((stop - start)), math.cos((stop - start)))\n  local function _17_(i)\n    return ((360 + math.deg((start + (delta * i)))) % 360)\n  end\n  return _17_\nend\nlocal function blend_hsluv(start, stop, ratio)\n  local ratio0 = (ratio or 0.5)\n  local h = radial_tween(start[1], stop[1])\n  local s = linear_tween(start[2], stop[2])\n  local l = linear_tween(start[3], stop[3])\n  return {h(ratio0), s(ratio0), l(ratio0)}\nend\nlocal function lighten(c, n)\n  local l = linear_tween(c[3], 100)\n  return {c[1], c[2], l(n)}\nend\nlocal function darken(c, n)\n  local l = linear_tween(c[3], 0)\n  return {c[1], c[2], l(n)}\nend\nlocal function saturate(c, n)\n  local s = linear_tween(c[2], 100)\n  return {c[1], s(n), c[3]}\nend\nlocal function desaturate(c, n)\n  local s = linear_tween(c[2], 0)\n  return {c[1], s(n), c[3]}\nend\nlocal function rotate(c, n)\n  return {((n + c[1]) % 360), c[2], c[3]}\nend\nlocal function blend_hex(c1, c2, r)\n  return hsluv__3ehex(blend_hsluv(hex__3ehsluv(c1), hex__3ehsluv(c2), r))\nend\nlocal function lighten_hex(c, n)\n  return hsluv__3ehex(lighten(hex__3ehsluv(c), n))\nend\nlocal function darken_hex(c, n)\n  return hsluv__3ehex(darken(hex__3ehsluv(c), n))\nend\nlocal function saturate_hex(c, n)\n  return hsluv__3ehex(saturate(hex__3ehsluv(c), n))\nend\nlocal function desaturate_hex(c, n)\n  return hsluv__3ehex(desaturate(hex__3ehsluv(c), n))\nend\nlocal function rotate_hex(c, n)\n  return hsluv__3ehex(rotate(hex__3ehsluv(c), n))\nend\nlocal function gradient(c1, c2)\n  local ls = {}\n  for i = 0, 1.01, 0.02 do\n    ls = vim.list_extend(ls, {i})\n  end\n  local function _18_(_241)\n    return blend_hex(c1, c2, _241)\n  end\n  return vim.tbl_map(_18_, ls)\nend\nlocal function gradient_n(c1, c2, n)\n  local ls = {}\n  do\n    local step = (1 / (n + 1))\n    for i = 1, n, 1 do\n      ls = vim.list_extend(ls, {(i * step)})\n    end\n  end\n  local function _19_(_241)\n    return blend_hex(c1, c2, _241)\n  end\n  return vim.list_extend({c1}, vim.tbl_map(_19_, ls), {c2})\nend\nmath.randomseed(os.time())\nlocal function random_color(red_range, green_range, blue_range)\n  local rgb = {b = math.random(blue_range[1], blue_range[2]), r = math.random(red_range[1], red_range[2]), g = math.random(green_range[1], green_range[2])}\n  return string.format(\"#%02x%02x%02x\", rgb.r, rgb.g, rgb.b)\nend\nlocal function generate_pallete()\n  local bghex = random_color({0, 63}, {0, 63}, {0, 63})\n  local fghex = random_color({240, 255}, {240, 255}, {240, 255})\n  local palette = {bghex, blend_hex(bghex, fghex, 0.085), blend_hex(bghex, fghex, 0.18), blend_hex(bghex, fghex, 0.3), blend_hex(bghex, fghex, 0.7), blend_hex(bghex, fghex, 0.82), blend_hex(bghex, fghex, 0.95), fghex}\n  local base16_names = {\"base00\", \"base01\", \"base02\", \"base03\", \"base04\", \"base05\", \"base06\", \"base07\", \"base08\", \"base09\", \"base0A\", \"base0B\", \"base0C\", \"base0D\", \"base0E\", \"base0F\"}\n  local base16_palette = {}\n  for i, hex in ipairs(palette) do\n    local name = (base16_names)[i]\n    base16_palette[name] = hex\n  end\n  return base16_palette\nend\nreturn {[\"blend-hex\"] = blend_hex, [\"lighten-hex\"] = lighten_hex, [\"darken-hex\"] = darken_hex, [\"saturate-hex\"] = saturate_hex, [\"desaturate-hex\"] = desaturate_hex, [\"rotate-hex\"] = rotate_hex, gradient = gradient, [\"gradient-n\"] = gradient_n, [\"generate-pallete\"] = generate_pallete}"
  },
  {
    "path": "lua/oxocarbon/init.lua",
    "content": "local _local_1_ = require(\"oxocarbon.colorutils\")\nlocal blend_hex = _local_1_[\"blend-hex\"]\nif vim.g.colors_name then\n  vim.cmd.hi(\"clear\")\nelse\nend\nvim.g[\"colors_name\"] = \"oxocarbon\"\nvim.o[\"termguicolors\"] = true\nlocal base00 = \"#161616\"\nlocal base06 = \"#ffffff\"\nlocal base09 = \"#78a9ff\"\nlocal oxocarbon = (((vim.o.background == \"dark\") and {base00 = base00, base01 = blend_hex(base00, base06, 0.085), base02 = blend_hex(base00, base06, 0.18), base03 = blend_hex(base00, base06, 0.3), base04 = blend_hex(base00, base06, 0.82), base05 = blend_hex(base00, base06, 0.95), base06 = base06, base07 = \"#08bdba\", base08 = \"#3ddbd9\", base09 = base09, base10 = \"#ee5396\", base11 = \"#33b1ff\", base12 = \"#ff7eb6\", base13 = \"#42be65\", base14 = \"#be95ff\", base15 = \"#82cfff\", blend = \"#131313\", none = \"NONE\"}) or {base00 = base06, base01 = blend_hex(base00, base06, 0.95), base02 = blend_hex(base00, base06, 0.82), base03 = base00, base04 = \"#37474F\", base05 = \"#90A4AE\", base06 = \"#525252\", base07 = \"#08bdba\", base08 = \"#ff7eb6\", base09 = \"#ee5396\", base10 = \"#FF6F00\", base11 = \"#0f62fe\", base12 = \"#673AB7\", base13 = \"#42be65\", base14 = \"#be95ff\", base15 = \"#FFAB91\", blend = \"#FAFAFA\", none = \"NONE\"})\nvim.g[\"terminal_color_0\"] = oxocarbon.base01\nvim.g[\"terminal_color_1\"] = oxocarbon.base11\nvim.g[\"terminal_color_2\"] = oxocarbon.base14\nvim.g[\"terminal_color_3\"] = oxocarbon.base13\nvim.g[\"terminal_color_4\"] = oxocarbon.base09\nvim.g[\"terminal_color_5\"] = oxocarbon.base15\nvim.g[\"terminal_color_6\"] = oxocarbon.base08\nvim.g[\"terminal_color_7\"] = oxocarbon.base05\nvim.g[\"terminal_color_8\"] = oxocarbon.base03\nvim.g[\"terminal_color_9\"] = oxocarbon.base11\nvim.g[\"terminal_color_10\"] = oxocarbon.base14\nvim.g[\"terminal_color_11\"] = oxocarbon.base13\nvim.g[\"terminal_color_12\"] = oxocarbon.base09\nvim.g[\"terminal_color_13\"] = oxocarbon.base15\nvim.g[\"terminal_color_14\"] = oxocarbon.base07\nvim.g[\"terminal_color_15\"] = oxocarbon.base06\nvim.api.nvim_set_hl(0, \"ColorColumn\", {fg = oxocarbon.none, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"Cursor\", {fg = oxocarbon.base00, bg = oxocarbon.base04})\nvim.api.nvim_set_hl(0, \"CursorLine\", {fg = oxocarbon.none, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"CursorColumn\", {fg = oxocarbon.none, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"CursorLineNr\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"QuickFixLine\", {fg = oxocarbon.none, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"Error\", {fg = oxocarbon.base10, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"LineNr\", {fg = oxocarbon.base03, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"NonText\", {fg = oxocarbon.base02, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Normal\", {fg = oxocarbon.base04, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"Pmenu\", {fg = oxocarbon.base04, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"PmenuSbar\", {fg = oxocarbon.base04, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"PmenuSel\", {fg = oxocarbon.base08, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"PmenuThumb\", {fg = oxocarbon.base08, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"SpecialKey\", {fg = oxocarbon.base03, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Visual\", {fg = oxocarbon.none, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"VisualNOS\", {fg = oxocarbon.none, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"TooLong\", {fg = oxocarbon.none, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"Debug\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Macro\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"MatchParen\", {fg = oxocarbon.none, bg = oxocarbon.base02, underline = true})\nvim.api.nvim_set_hl(0, \"Bold\", {fg = oxocarbon.none, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"Italic\", {fg = oxocarbon.none, bg = oxocarbon.none, italic = true})\nvim.api.nvim_set_hl(0, \"Underlined\", {fg = oxocarbon.none, bg = oxocarbon.none, underline = true})\nvim.api.nvim_set_hl(0, \"DiagnosticWarn\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiagnosticError\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiagnosticInfo\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiagnosticHint\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiagnosticUnderlineWarn\", {fg = oxocarbon.base14, bg = oxocarbon.none, undercurl = true})\nvim.api.nvim_set_hl(0, \"DiagnosticUnderlineError\", {fg = oxocarbon.base10, bg = oxocarbon.none, undercurl = true})\nvim.api.nvim_set_hl(0, \"DiagnosticUnderlineInfo\", {fg = oxocarbon.base04, bg = oxocarbon.none, undercurl = true})\nvim.api.nvim_set_hl(0, \"DiagnosticUnderlineHint\", {fg = oxocarbon.base04, bg = oxocarbon.none, undercurl = true})\nvim.api.nvim_set_hl(0, \"HealthError\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"HealthWarning\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"HealthSuccess\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@comment\", {link = \"Comment\"})\nvim.api.nvim_set_hl(0, \"@text.literal.commodity\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number.date\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number.date.effective\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number.interval\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number.status\", {fg = oxocarbon.base12, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number.quantity\", {fg = oxocarbon.base11, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@number.quantity.negative\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"LspCodeLens\", {fg = oxocarbon.none, bg = oxocarbon.base03})\nvim.api.nvim_set_hl(0, \"LspReferenceText\", {fg = oxocarbon.none, bg = oxocarbon.base03})\nvim.api.nvim_set_hl(0, \"LspReferenceread\", {fg = oxocarbon.none, bg = oxocarbon.base03})\nvim.api.nvim_set_hl(0, \"LspReferenceWrite\", {fg = oxocarbon.none, bg = oxocarbon.base03})\nvim.api.nvim_set_hl(0, \"LspSignatureActiveParameter\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@lsp.type.class\", {link = \"Structure\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.decorator\", {link = \"Decorator\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.decorator.markdown\", {link = \"Structure\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.function\", {link = \"@function\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.macro\", {link = \"Macro\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.method\", {link = \"@function\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.struct\", {link = \"Structure\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.type\", {link = \"Type\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.typeParameter\", {link = \"Typedef\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.selfParameter\", {link = \"@variable.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.builtinConstant\", {link = \"@constant.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.magicFunction\", {link = \"@function.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.boolean\", {link = \"@boolean\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.builtinType\", {link = \"@type.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.comment\", {link = \"@comment\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.enum\", {link = \"@type\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.enumMember\", {link = \"@constant\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.escapeSequence\", {link = \"@string.escape\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.formatSpecifier\", {link = \"@punctuation.special\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.keyword\", {link = \"@keyword\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.namespace\", {link = \"@namespace\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.number\", {link = \"@number\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.operator\", {link = \"@operator\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.parameter\", {link = \"@parameter\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.property\", {link = \"@property\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.selfKeyword\", {link = \"@variable.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.string.rust\", {link = \"@string\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.typeAlias\", {link = \"@type.definition\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.unresolvedReference\", {link = \"Error\"})\nvim.api.nvim_set_hl(0, \"@lsp.type.variable\", {link = \"@variable\"})\nvim.api.nvim_set_hl(0, \"@lsp.mod.readonly\", {link = \"@constant\"})\nvim.api.nvim_set_hl(0, \"@lsp.mod.typeHint\", {link = \"Type\"})\nvim.api.nvim_set_hl(0, \"@lsp.mod.builtin\", {link = \"Special\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.class.defaultLibrary\", {link = \"@type.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.enum.defaultLibrary\", {link = \"@type.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.enumMember.defaultLibrary\", {link = \"@constant.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.function.defaultLibrary\", {link = \"@function.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.keyword.async\", {link = \"@keyword.coroutine\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.macro.defaultLibrary\", {link = \"@function.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.method.defaultLibrary\", {link = \"@function.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.operator.injected\", {link = \"@operator\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.string.injected\", {link = \"@string\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.operator.controlFlow\", {link = \"@exception\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.keyword.documentation\", {link = \"Special\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.variable.global\", {link = \"@constant\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.variable.static\", {link = \"@constant\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.variable.defaultLibrary\", {link = \"Special\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.function.builtin\", {link = \"@function.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.function.readonly\", {link = \"@method\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.variable.defaultLibrary\", {link = \"@variable.builtin\"})\nvim.api.nvim_set_hl(0, \"@lsp.typemod.variable.injected\", {link = \"@variable\"})\nvim.api.nvim_set_hl(0, \"Folded\", {fg = oxocarbon.base02, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"FoldColumn\", {fg = oxocarbon.base01, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"SignColumn\", {fg = oxocarbon.base01, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"Directory\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"EndOfBuffer\", {fg = oxocarbon.base01, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"ErrorMsg\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"ModeMsg\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"MoreMsg\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Question\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Substitute\", {fg = oxocarbon.base01, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"WarningMsg\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"WildMenu\", {fg = oxocarbon.base08, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"helpHyperTextJump\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"helpSpecial\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"helpHeadline\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"helpHeader\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffAdded\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffChanged\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffRemoved\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffAdd\", {bg = \"#122f2f\", fg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffChange\", {bg = \"#222a39\", fg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffText\", {bg = \"#2f3f5c\", fg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"DiffDelete\", {bg = \"#361c28\", fg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"IncSearch\", {fg = oxocarbon.base06, bg = oxocarbon.base10})\nvim.api.nvim_set_hl(0, \"Search\", {fg = oxocarbon.base01, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"TabLine\", {link = \"StatusLineNC\"})\nvim.api.nvim_set_hl(0, \"TabLineFill\", {link = \"TabLine\"})\nvim.api.nvim_set_hl(0, \"TabLineSel\", {link = \"StatusLine\"})\nvim.api.nvim_set_hl(0, \"Title\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"VertSplit\", {fg = oxocarbon.base01, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"WinSeparator\", {fg = oxocarbon.base01, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"Boolean\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Character\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Comment\", {fg = oxocarbon.base03, bg = oxocarbon.none, italic = true})\nvim.api.nvim_set_hl(0, \"Conceal\", {fg = oxocarbon.none, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Conditional\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Constant\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Decorator\", {fg = oxocarbon.base12, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Define\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Delimeter\", {fg = oxocarbon.base06, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Exception\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Float\", {link = \"Number\"})\nvim.api.nvim_set_hl(0, \"Function\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Identifier\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Include\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Keyword\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Label\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Number\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Operator\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"PreProc\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Repeat\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Special\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"SpecialChar\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"SpecialComment\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Statement\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"StorageClass\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"String\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Structure\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Tag\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Todo\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Type\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"Typedef\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"markdownBlockquote\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"markdownBold\", {link = \"Bold\"})\nvim.api.nvim_set_hl(0, \"markdownItalic\", {link = \"Italic\"})\nvim.api.nvim_set_hl(0, \"markdownBoldItalic\", {fg = oxocarbon.none, bg = oxocarbon.none, bold = true, italic = true})\nvim.api.nvim_set_hl(0, \"markdownRule\", {link = \"Comment\"})\nvim.api.nvim_set_hl(0, \"markdownH1\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"markdownH2\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownH3\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownH4\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownH5\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownH6\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownHeadingDelimiter\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownHeadingRule\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"markdownUrl\", {fg = oxocarbon.base14, bg = oxocarbon.none, underline = true})\nvim.api.nvim_set_hl(0, \"markdownCode\", {link = \"String\"})\nvim.api.nvim_set_hl(0, \"markdownCodeBlock\", {link = \"markdownCode\"})\nvim.api.nvim_set_hl(0, \"markdownCodeDelimiter\", {link = \"markdownCode\"})\nvim.api.nvim_set_hl(0, \"markdownUrl\", {link = \"String\"})\nvim.api.nvim_set_hl(0, \"markdownListMarker\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"markdownOrderedListMarker\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@markup\", {link = \"@none\"})\nvim.api.nvim_set_hl(0, \"@markup.environment\", {link = \"Macro\"})\nvim.api.nvim_set_hl(0, \"@markup.environment.name\", {link = \"Type\"})\nvim.api.nvim_set_hl(0, \"@markup.emphasis\", {italic = true})\nvim.api.nvim_set_hl(0, \"@markup.italic\", {italic = true})\nvim.api.nvim_set_hl(0, \"@markup.strikethrough\", {strikethrough = true})\nvim.api.nvim_set_hl(0, \"@markup.strong\", {bold = true})\nvim.api.nvim_set_hl(0, \"@markup.underline\", {underline = true})\nvim.api.nvim_set_hl(0, \"@markup.heading\", {link = \"Title\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.marker\", {link = \"markdownHeadingDelimiter\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.1.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.2.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.3.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.4.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.5.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.6.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.7.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.heading.8.markdown\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"@markup.link\", {link = \"markdownUrl\"})\nvim.api.nvim_set_hl(0, \"@markup.link.label\", {underline = true})\nvim.api.nvim_set_hl(0, \"@markup.link.label.symbol\", {link = \"markdownItalic\"})\nvim.api.nvim_set_hl(0, \"@markup.link.label.markdown_inline\", {link = \"markdownItalic\"})\nvim.api.nvim_set_hl(0, \"@markup.link.title\", {link = \"Title\"})\nvim.api.nvim_set_hl(0, \"@markup.link.url\", {link = \"markdownUrl\"})\nvim.api.nvim_set_hl(0, \"@markup.link.destination\", {link = \"markdownUrl\"})\nvim.api.nvim_set_hl(0, \"@markup.link.description\", {fg = oxocarbon.blend, underline = true, italic = true})\nvim.api.nvim_set_hl(0, \"@markup.list\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"@markup.list.bullet\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"@markup.list.checked\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"@markup.list.markdown\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"@markup.list.ordered\", {link = \"markdownOrderedListMarker\"})\nvim.api.nvim_set_hl(0, \"@markup.list.unchecked\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"@markup.math\", {link = \"Special\"})\nvim.api.nvim_set_hl(0, \"@markup.raw\", {link = \"String\"})\nvim.api.nvim_set_hl(0, \"@markup.raw.markdown_inline\", {link = \"String\"})\nvim.api.nvim_set_hl(0, \"@markup.quote\", {link = \"markdownBlockquote\"})\nvim.api.nvim_set_hl(0, \"@markup.literal\", {link = \"markdownCode\"})\nvim.api.nvim_set_hl(0, \"@markup.code.block\", {link = \"markdownCodeBlock\"})\nvim.api.nvim_set_hl(0, \"@markup.rule\", {link = \"Comment\"})\nvim.api.nvim_set_hl(0, \"asciidocAttributeEntry\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"asciidocAttributeList\", {link = \"asciidocAttributeEntry\"})\nvim.api.nvim_set_hl(0, \"asciidocAttributeRef\", {link = \"asciidocAttributeEntry\"})\nvim.api.nvim_set_hl(0, \"asciidocHLabel\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"asciidocOneLineTitle\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"asciidocQuotedMonospaced\", {link = \"markdownBlockquote\"})\nvim.api.nvim_set_hl(0, \"asciidocURL\", {link = \"markdownUrl\"})\nvim.api.nvim_set_hl(0, \"@comment\", {link = \"Comment\"})\nvim.api.nvim_set_hl(0, \"@error\", {fg = oxocarbon.base11, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@operator\", {link = \"Operator\"})\nvim.api.nvim_set_hl(0, \"@punctuation.delimiter\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@punctuation.bracket\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@punctuation.special\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@string\", {link = \"String\"})\nvim.api.nvim_set_hl(0, \"@string.regex\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@string.escape\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@character\", {link = \"Character\"})\nvim.api.nvim_set_hl(0, \"@boolean\", {link = \"Boolean\"})\nvim.api.nvim_set_hl(0, \"@number\", {link = \"Number\"})\nvim.api.nvim_set_hl(0, \"@float\", {link = \"Float\"})\nvim.api.nvim_set_hl(0, \"@function\", {fg = oxocarbon.base12, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"@function.builtin\", {fg = oxocarbon.base12, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@function.macro\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@method\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@constructor\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@parameter\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@keyword\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@keyword.function\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@keyword.operator\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@conditional\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@repeat\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@label\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@include\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@exception\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@type\", {link = \"Type\"})\nvim.api.nvim_set_hl(0, \"@type.builtin\", {link = \"Type\"})\nvim.api.nvim_set_hl(0, \"@attribute\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@field\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@property\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@variable\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@variable.builtin\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@constant\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@constant.builtin\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@constant.macro\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@namespace\", {fg = oxocarbon.base07, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@symbol\", {fg = oxocarbon.base15, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"@text\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@text.strong\", {fg = oxocarbon.none, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@text.emphasis\", {fg = oxocarbon.base10, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"@text.underline\", {fg = oxocarbon.base10, bg = oxocarbon.none, underline = true})\nvim.api.nvim_set_hl(0, \"@text.strike\", {fg = oxocarbon.base10, bg = oxocarbon.none, strikethrough = true})\nvim.api.nvim_set_hl(0, \"@text.title\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@text.literal\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@text.uri\", {fg = oxocarbon.base14, bg = oxocarbon.none, underline = true})\nvim.api.nvim_set_hl(0, \"@tag\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@tag.attribute\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@tag.delimiter\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"@tag.builtin.tsx\", {link = \"@tag.tsx\"})\nvim.api.nvim_set_hl(0, \"@reference\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimInternalError\", {fg = oxocarbon.base00, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"NormalFloat\", {fg = oxocarbon.base05, bg = oxocarbon.blend})\nvim.api.nvim_set_hl(0, \"FloatBorder\", {fg = oxocarbon.blend, bg = oxocarbon.blend})\nvim.api.nvim_set_hl(0, \"NormalNC\", {fg = oxocarbon.base04, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"TermCursor\", {fg = oxocarbon.base00, bg = oxocarbon.base04})\nvim.api.nvim_set_hl(0, \"TermCursorNC\", {fg = oxocarbon.base00, bg = oxocarbon.base04})\nvim.api.nvim_set_hl(0, \"StatusLine\", {fg = oxocarbon.base04, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"StatusLineNC\", {fg = oxocarbon.base04, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"StatusReplace\", {fg = oxocarbon.base00, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"StatusInsert\", {fg = oxocarbon.base00, bg = oxocarbon.base12})\nvim.api.nvim_set_hl(0, \"StatusVisual\", {fg = oxocarbon.base00, bg = oxocarbon.base14})\nvim.api.nvim_set_hl(0, \"StatusTerminal\", {fg = oxocarbon.base00, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"StatusNormal\", {fg = oxocarbon.base00, bg = oxocarbon.base15})\nvim.api.nvim_set_hl(0, \"StatusCommand\", {fg = oxocarbon.base00, bg = oxocarbon.base13})\nvim.api.nvim_set_hl(0, \"StatusLineDiagnosticWarn\", {fg = oxocarbon.base14, bg = oxocarbon.base00, bold = true})\nvim.api.nvim_set_hl(0, \"StatusLineDiagnosticError\", {fg = oxocarbon.base10, bg = oxocarbon.base00, bold = true})\nvim.api.nvim_set_hl(0, \"TelescopeBorder\", {fg = oxocarbon.blend, bg = oxocarbon.blend})\nvim.api.nvim_set_hl(0, \"TelescopePromptBorder\", {fg = oxocarbon.base02, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"TelescopePromptNormal\", {fg = oxocarbon.base05, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"TelescopePromptPrefix\", {fg = oxocarbon.base08, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"TelescopeNormal\", {fg = oxocarbon.none, bg = oxocarbon.blend})\nvim.api.nvim_set_hl(0, \"TelescopePreviewTitle\", {fg = oxocarbon.base02, bg = oxocarbon.base12})\nvim.api.nvim_set_hl(0, \"TelescopePromptTitle\", {fg = oxocarbon.base02, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"TelescopeResultsTitle\", {fg = oxocarbon.blend, bg = oxocarbon.blend})\nvim.api.nvim_set_hl(0, \"TelescopeSelection\", {fg = oxocarbon.none, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"TelescopePreviewLine\", {fg = oxocarbon.none, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"TelescopeMatching\", {fg = oxocarbon.base08, bg = oxocarbon.none, bold = true, italic = true})\nvim.api.nvim_set_hl(0, \"NotifyERRORBorder\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyWARNBorder\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyINFOBorder\", {fg = oxocarbon.base05, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyDEBUGBorder\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyTRACEBorder\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyERRORIcon\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyWARNIcon\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyINFOIcon\", {fg = oxocarbon.base05, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyDEBUGIcon\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyTRACEIcon\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyERRORTitle\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyWARNTitle\", {fg = oxocarbon.base14, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyINFOTitle\", {fg = oxocarbon.base05, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyDEBUGTitle\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NotifyTRACETitle\", {fg = oxocarbon.base13, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"CmpItemAbbr\", {fg = \"#adadad\", bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"CmpItemAbbrMatch\", {fg = oxocarbon.base05, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"CmpItemAbbrMatchFuzzy\", {fg = oxocarbon.base04, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"CmpItemMenu\", {fg = oxocarbon.base04, bg = oxocarbon.none, italic = true})\nvim.api.nvim_set_hl(0, \"CmpItemKindInterface\", {fg = oxocarbon.base01, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"CmpItemKindColor\", {fg = oxocarbon.base01, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"CmpItemKindTypeParameter\", {fg = oxocarbon.base01, bg = oxocarbon.base08})\nvim.api.nvim_set_hl(0, \"CmpItemKindText\", {fg = oxocarbon.base01, bg = oxocarbon.base09})\nvim.api.nvim_set_hl(0, \"CmpItemKindEnum\", {fg = oxocarbon.base01, bg = oxocarbon.base09})\nvim.api.nvim_set_hl(0, \"CmpItemKindKeyword\", {fg = oxocarbon.base01, bg = oxocarbon.base09})\nvim.api.nvim_set_hl(0, \"CmpItemKindConstant\", {fg = oxocarbon.base01, bg = oxocarbon.base10})\nvim.api.nvim_set_hl(0, \"CmpItemKindConstructor\", {fg = oxocarbon.base01, bg = oxocarbon.base10})\nvim.api.nvim_set_hl(0, \"CmpItemKindReference\", {fg = oxocarbon.base01, bg = oxocarbon.base10})\nvim.api.nvim_set_hl(0, \"CmpItemKindFunction\", {fg = oxocarbon.base01, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"CmpItemKindStruct\", {fg = oxocarbon.base01, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"CmpItemKindClass\", {fg = oxocarbon.base01, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"CmpItemKindModule\", {fg = oxocarbon.base01, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"CmpItemKindOperator\", {fg = oxocarbon.base01, bg = oxocarbon.base11})\nvim.api.nvim_set_hl(0, \"CmpItemKindField\", {fg = oxocarbon.base01, bg = oxocarbon.base12})\nvim.api.nvim_set_hl(0, \"CmpItemKindProperty\", {fg = oxocarbon.base01, bg = oxocarbon.base12})\nvim.api.nvim_set_hl(0, \"CmpItemKindEvent\", {fg = oxocarbon.base01, bg = oxocarbon.base12})\nvim.api.nvim_set_hl(0, \"CmpItemKindUnit\", {fg = oxocarbon.base01, bg = oxocarbon.base13})\nvim.api.nvim_set_hl(0, \"CmpItemKindSnippet\", {fg = oxocarbon.base01, bg = oxocarbon.base13})\nvim.api.nvim_set_hl(0, \"CmpItemKindFolder\", {fg = oxocarbon.base01, bg = oxocarbon.base13})\nvim.api.nvim_set_hl(0, \"CmpItemKindVariable\", {fg = oxocarbon.base01, bg = oxocarbon.base14})\nvim.api.nvim_set_hl(0, \"CmpItemKindFile\", {fg = oxocarbon.base01, bg = oxocarbon.base14})\nvim.api.nvim_set_hl(0, \"CmpItemKindMethod\", {fg = oxocarbon.base01, bg = oxocarbon.base15})\nvim.api.nvim_set_hl(0, \"CmpItemKindValue\", {fg = oxocarbon.base01, bg = oxocarbon.base15})\nvim.api.nvim_set_hl(0, \"CmpItemKindEnumMember\", {fg = oxocarbon.base01, bg = oxocarbon.base15})\nvim.api.nvim_set_hl(0, \"NvimTreeImageFile\", {fg = oxocarbon.base12, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimTreeFolderIcon\", {fg = oxocarbon.base12, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimTreeWinSeparator\", {fg = oxocarbon.base00, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"NvimTreeFolderName\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimTreeIndentMarker\", {fg = oxocarbon.base02, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimTreeEmptyFolderName\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimTreeOpenedFolderName\", {fg = oxocarbon.base15, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NvimTreeNormal\", {fg = oxocarbon.base04, bg = oxocarbon.base00})\nvim.api.nvim_set_hl(0, \"NeogitBranch\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NeogitRemote\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"NeogitHunkHeader\", {fg = oxocarbon.base04, bg = oxocarbon.base02})\nvim.api.nvim_set_hl(0, \"NeogitHunkHeaderHighlight\", {fg = oxocarbon.base04, bg = oxocarbon.base03})\nvim.api.nvim_set_hl(0, \"GitSignsCurrentLineBlame\", {link = \"Comment\"})\nvim.api.nvim_set_hl(0, \"HydraRed\", {fg = oxocarbon.base12, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"HydraBlue\", {fg = oxocarbon.base09, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"HydraAmaranth\", {fg = oxocarbon.base10, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"HydraTeal\", {fg = oxocarbon.base08, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"HydraHint\", {fg = oxocarbon.none, bg = oxocarbon.blend})\nvim.api.nvim_set_hl(0, \"alpha1\", {fg = oxocarbon.base03, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"alpha2\", {fg = oxocarbon.base04, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"alpha3\", {fg = oxocarbon.base03, bg = oxocarbon.none})\nvim.api.nvim_set_hl(0, \"CodeBlock\", {fg = oxocarbon.none, bg = oxocarbon.base01})\nvim.api.nvim_set_hl(0, \"BufferLineDiagnostic\", {fg = oxocarbon.base10, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"BufferLineDiagnosticVisible\", {fg = oxocarbon.base10, bg = oxocarbon.none, bold = true})\nvim.api.nvim_set_hl(0, \"htmlH1\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"mkdRule\", {link = \"markdownRule\"})\nvim.api.nvim_set_hl(0, \"mkdListItem\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"mkdListItemCheckbox\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeader1\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeader2\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeader3\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeader4\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeader5\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeader6\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiHeaderChar\", {link = \"markdownH1\"})\nvim.api.nvim_set_hl(0, \"VimwikiList\", {link = \"markdownListMarker\"})\nvim.api.nvim_set_hl(0, \"VimwikiLink\", {link = \"markdownUrl\"})\nvim.api.nvim_set_hl(0, \"VimwikiCode\", {link = \"markdownCode\"})\nvim.api.nvim_set_hl(0, \"FlashLabel\", {fg = oxocarbon.base05, bg = oxocarbon.base00, bold = true})\nreturn {oxocarbon = oxocarbon}\n"
  },
  {
    "path": "make.fnl",
    "content": "(let [{: build} (require :hotpot.api.make)\n      (oks errs) (build :./fnl {:force? true :atomic? true}\n                        [[:**/*.fnl (fn [path] (string.gsub path :fnl :lua))]])]\n  (values nil))\n"
  }
]