CINXE.COM

<!DOCTYPE html> <html lang='en'> <head> <script> var getSearchParams = function(searchParamsString) { var searchParams = {}; if (!searchParamsString) { return searchParams; } var search = searchParamsString.split('?')[1]; search.split('&').forEach(function(searchParamsItem) { var keyVal = searchParamsItem.split('='); searchParams[decodeURIComponent(keyVal[0])] = decodeURIComponent(keyVal[1]); }); return searchParams; }; var searchParamsToString = function (searchParams) { var result = ''; if (!Object.keys(searchParams).length) { return result; } result = Object .keys(searchParams) .filter(function(key) { return searchParams[key] !== null || searchParams[key] !== undefined || searchParams[key] !== ''; }).map(function(key) { return encodeURIComponent(key) + '=' + encodeURIComponent(searchParams[key]); }).join('&'); return '?' + result; } var getReferrer = function(searchParams) { return searchParams.referrer || document.referrer || ''; }; var getLocation = function() { var hash = (window.location.hash || '').split('#').pop().split('/'); var lng = hash[1] ? +parseFloat(hash[1]).toFixed(6) : 0; var lat = hash[2] ? +parseFloat(hash[2]).toFixed(6) : 0; var zoom = hash[3] ? parseFloat(hash[3]) : 0; if (zoom === 0) { return null; } return (zoom || 0) + '/' + (lat || 0) + '/' + (lng || 0); }; try { var searchParams = getSearchParams(window.location.search); var referrer = getReferrer(searchParams); var l = getLocation(); if (referrer) { delete searchParams.referrer; searchParams.utm_source = referrer; searchParams.utm_medium = 'attribution_link'; searchParams.utm_campaign = 'referrer'; } if (l) { searchParams.l = l; } } catch (err) {} location.href = 'https://www.mapbox.com/contribute/#/' + searchParamsToString(searchParams); </script> </head> <body> </body> </html>