List<double> normalize(List<double> v) { var len = _length(v); if (len == 0) { return v; } return [v[0] / len, v[1] / len, v[2] / len]; }