ightDir: opt.lightDir || "light direction",
    dot: opt.dot || "dot(reverseLightDirection,surfaceDirection) = ",
    surface1: opt.surface1 || "surface",
    surface2: opt.surface2 || "direction",
  };

  const darkColors = {
    arrow: '#DDD',
    surfaceDir: '#0C0',
  };
  const lightColors = {
    arrow: '#000',
    surfaceDir: '#080',
  };

  const darkMatcher = window.matchMedia("(prefers-color-scheme: dark)");
  darkMatcher.addEventListener('change', render);

  var ctx = document.querySelector("#can