{"version":3,"file":"Graticule.js","sourceRoot":"","sources":["../src/layer/Graticule.js"],"names":[],"mappings":"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"}