diff --git a/astro.config.mjs b/astro.config.mjs index 4316e98..44a7c60 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -10,5 +10,10 @@ export default defineConfig({ site: "https://mohannadotaibi.com", integrations: [tailwind(), image({ serviceEntryPoint: "@astrojs/image/sharp" - }), robotsTxt(), sitemap()] + }), robotsTxt(), sitemap()], + vite: { + optimizeDeps: { + exclude: ['leaflet'] + } + } }); \ No newline at end of file diff --git a/public/assets/images/icons/cursor.sh.png b/public/assets/images/icons/cursor.sh.png new file mode 100644 index 0000000..e406562 Binary files /dev/null and b/public/assets/images/icons/cursor.sh.png differ diff --git a/public/assets/images/icons/ente.io.png b/public/assets/images/icons/ente.io.png new file mode 100644 index 0000000..7c50971 Binary files /dev/null and b/public/assets/images/icons/ente.io.png differ diff --git a/public/assets/images/icons/frappe.io.png b/public/assets/images/icons/frappe.io.png new file mode 100644 index 0000000..1fada0b Binary files /dev/null and b/public/assets/images/icons/frappe.io.png differ diff --git a/public/assets/images/icons/hoppscotch.io.png b/public/assets/images/icons/hoppscotch.io.png new file mode 100644 index 0000000..3ca74b0 Binary files /dev/null and b/public/assets/images/icons/hoppscotch.io.png differ diff --git a/public/assets/images/icons/linear.app.png b/public/assets/images/icons/linear.app.png new file mode 100644 index 0000000..94a6406 Binary files /dev/null and b/public/assets/images/icons/linear.app.png differ diff --git a/public/assets/images/icons/slack.com.png b/public/assets/images/icons/slack.com.png new file mode 100644 index 0000000..2cff8e0 Binary files /dev/null and b/public/assets/images/icons/slack.com.png differ diff --git a/public/assets/images/icons/www.cursor.com.png b/public/assets/images/icons/www.cursor.com.png new file mode 100644 index 0000000..e406562 Binary files /dev/null and b/public/assets/images/icons/www.cursor.com.png differ diff --git a/public/assets/images/icons/www.heidisql.com.png b/public/assets/images/icons/www.heidisql.com.png new file mode 100644 index 0000000..b6fffda Binary files /dev/null and b/public/assets/images/icons/www.heidisql.com.png differ diff --git a/public/assets/images/icons/www.parrotsec.org.png b/public/assets/images/icons/www.parrotsec.org.png new file mode 100644 index 0000000..aaf55e7 Binary files /dev/null and b/public/assets/images/icons/www.parrotsec.org.png differ diff --git a/public/assets/images/icons/www.rapidee.com.png b/public/assets/images/icons/www.rapidee.com.png new file mode 100644 index 0000000..d1468a9 Binary files /dev/null and b/public/assets/images/icons/www.rapidee.com.png differ diff --git a/public/assets/images/icons/www.screamingfrog.co.uk.png b/public/assets/images/icons/www.screamingfrog.co.uk.png new file mode 100644 index 0000000..024c604 Binary files /dev/null and b/public/assets/images/icons/www.screamingfrog.co.uk.png differ diff --git a/public/assets/images/icons/www.thiqah.sa.png b/public/assets/images/icons/www.thiqah.sa.png new file mode 100644 index 0000000..1c4558b Binary files /dev/null and b/public/assets/images/icons/www.thiqah.sa.png differ diff --git a/src/assets/data/db.json b/src/assets/data/db.json index 9a549fd..acb4c0d 100644 --- a/src/assets/data/db.json +++ b/src/assets/data/db.json @@ -1,336 +1,8 @@ { - "general":{ - "title" : "Mohannad Faihan Otaibi", - "description" : "A techno-maniac from Saudi Arabia. Passionate about coding, innovation, and technology, I'm the geek you want to connect with. Explore my site to learn about my ventures, skills, and the tools I love. Let's talk tech!", - "hashtags": "#Saudi, #Geek, #Coder, #Innovator", - "email": "mohannad.otaibi@gmail.com", - "phone": "966545582222", - "cv": "/assets/files/20240603 Mohannad Otaibi Resume.pdf", - "old_nicknames": [ - "interboy", "theinterboy", "mfotaibi", "dabdoobnet", "انتربوي" - ], - "old_emails":[ - "mfotaibi@flashmail.com", "mfotaibi@hotmail.com", "dabdoobnet@hotmail.com", "theinterboy@yahoo.com","interboy@c4arab.com","montada@mo9a7i.com" - ], - "social_links" :{ - "title":"Social Media Accounts", - "description":"Find me on one or more of the following links", - "data":{ - "general":[ - {"title": "Twitter", "description:": "", "url": "https://twitter.com/bufai7an", "favicoDomain":"developer.twitter.com"}, - {"title": "LinkedIn", "description:": "", "url": "https://www.linkedin.com/in/mohannadotaibi/"}, - {"title": "Twitch", "description:": "", "url": "https://www.twitch.tv/bufai7an"}, - {"title": "BuFai7an.Live", "description:": "", "url": "https://bufai7an.live/"}, - {"title": "YouTube", "description:": "", "url": "https://www.youtube.com/user/mo9a7i"}, - {"title": "Foursquare", "url":"https://foursquare.com/bufai7an"} - ], - "technical" :[ - {"title": "GitHub", "url": "https://github.com/Mo9a7i"}, - {"title": "StackOverflow", "url": "https://stackoverflow.com/users/5588602/mohannad-otaibi"}, - {"title": "Traidnt.net", "url": "http://web.archive.org/web/20160213150705/http://www.traidnt.net/vb/u53424/"}, - {"title": "ADSLGATE", "url": "https://www.adslgate.com/dsl/member.php?u=299526"}, - {"title": "Swalif.net", "url": "https://www.swalif.net/softs/1317.html"}, - {"title":"NPMjs", "url": "https://www.npmjs.com/~mo9a7i"} - ] - } - } - }, - - "linked_sections":{ - "applications":{ - "title":"💻 Software Arsenal", - "description":"Apps and Programs I depend on in my setups to finish work", - "data": [ - { "title": "TechPowerUp GPU-Z", "url": "https://www.techpowerup.com/download/techpowerup-gpu-z/"}, - { "title": "WinUtil", "url": "https://github.com/ChrisTitusTech/winutil"}, - {"title":"DevToys","url":"https://devtoys.app/"}, - { "title": "SAP S4HANA", "url": "https://help.sap.com/docs/SAP_S4HANA_ON-PREMISE"}, - { "title": "SAP Ariba", "url": "https://www.sap.com/mena/products/spend-management/ariba-login.html"}, - { "title": "VS Code", "url": "https://code.visualstudio.com/"}, - { "title": "Insomnia", "url": "https://insomnia.rest/"}, - { "title": "Termius", "url": "https://termius.com/"}, - { "title": "GitHub Desktop", "url": "https://desktop.github.com/"}, - { "title": "Docker Desktop", "url": "https://www.docker.com/products/docker-desktop/"}, - { "title": "WinSCP", "url": "https://winscp.net/eng/download.php"}, - { "title": "MySQL Workbench", "url": "https://www.mysql.com/products/workbench/"}, - { "title": "Chocolatey", "url": "https://chocolatey.org/"}, - { "title": "Homebrew", "url": "https://brew.sh/"}, - { "title": "Winget", "url": "https://learn.microsoft.com/en-us/windows/package-manager/winget/"}, - { "title": "Figma", "url": "https://www.figma.com/"}, - { "title": "VMWare Workstation", "url": "https://www.vmware.com/products/workstation-pro.html"}, - { "title": "VMWare ESXi", "url": "https://www.vmware.com/products/esxi-and-esx.html"}, - { "title": "VM VirtualBox", "url": "https://www.virtualbox.org/"}, - { "title": "Fiddler", "url": "https://www.telerik.com/fiddler/"}, - { "title": "K-Lite", "url": "https://codecguide.com/download_kl.htm"}, - { "title": "Streamlabs OBS", "url": "https://streamlabs.com/"}, - { "title": "SteelSeries GG", "url": "https://steelseries.com/gg/"}, - { "title": "Discord", "url": "https://discord.com/"}, - { "title": "Steam", "url": "https://store.steampowered.com/"}, - { "title": "Stremio", "url": "https://www.stremio.com/"}, - { "title": "WinDirStat", "url": "https://windirstat.net/"}, - { "title": "Advanced IP Scanner", "url": "https://www.advanced-ip-scanner.com/"}, - { "title": "Recuva", "url": "https://www.ccleaner.com/recuva"}, - { "title": "Revo Uninstaller", "url": "https://www.revouninstaller.com/"}, - { "title": "Chrome", "url": "https://www.google.com/chrome/"}, - { "title": "FireFox", "url": "https://www.mozilla.org/en-US/firefox/new/"}, - { "title": "Brave Browser", "url": "https://brave.com/"}, - { "title": "MS Office", "url": "https://www.microsoft.com/en-us/microsoft-365/get-started-with-office-2019"}, - { "title": "Adobe Suite", "url": "https://www.adobe.com/creativecloud.html"}, - { "title": "Free Download Manager", "url": "https://www.freedownloadmanager.org/"}, - { "title": "7-zip", "url": "https://www.7-zip.org/"}, - { "title": "CCleaner", "url": "https://www.ccleaner.com/"}, - { "title": "Grammarly", "url": "https://developer.grammarly.com/"}, - { "title": "Google Drive", "url": "https://www.google.com/drive/download/"}, - { "title": "Warp", "url": "https://1.1.1.1/"}, - { "title": "PowerToys", "url": "https://www.cgsecurity.org/wiki/TestDisk"}, - { "title": "TestDisk", "url": "https://github.com/microsoft/PowerToys/"}, - { "title": "BitWarden", "url": "https://bitwarden.com/"} - ] - }, - - "bookmarks": { - "title":"🔗 Bookmarks", - "description":"of Websites I enjoy browsing, or need, most of the time", - "data": [ - {"title": "Smashing Magazine","url": "https://www.smashingmagazine.com/"}, - {"title": "كتابات سعود بن محمد (PHP)","url": "https://samaphp.com/"}, - {"title": "David Walsh","url": "https://davidwalsh.name/"}, - {"title": "Abraham Williams","url": "https://abrah.am/"}, - - {"title": "Hacker News","url": "https://news.ycombinator.com/"}, - {"title": "BlackHat World (SEO)","url": "https://www.blackhatworld.com/"}, - {"title": "Tiny Subversions","url": "https://tinysubversions.com/"}, - - {"title": "FileHippo","url": "https://filehippo.com/"}, - {"title": "Cats Who Code","url": "https://catswhocode.com/"}, - {"title": "Tech Crunch","url": "https://techcrunch.com/"}, - {"title": "@flaviocopes","url": "https://flaviocopes.com/"}, - {"title": "Tuts+","url": "https://tutsplus.com/tutorials"}, - {"title": "SpeckyBoy","url": "https://speckyboy.com/"}, - {"title": "Dynamic Drive","url": "https://dynamicdrive.com/"}, - {"title": "Tutorial 9","url": "#"}, - {"title": "Google Hosted Libraries","url": "https://developers.google.com/speed/libraries"}, - {"title": "Daily Design Inspiration","url": "#"}, - {"title": "iBrand Studio","url": "https://ibrandstudio.com/"}, - {"title": "DesignModo","url": "https://designmodo.com/"}, - {"title": "AskDaveTylor","url": "https://www.askdavetaylor.com/"}, - {"title": "DeviantArt","url": "https://www.deviantart.com/"}, - {"title": "Product Hunt","url": "https://www.producthunt.com/"}, - {"title": "GetApp","url": "https://www.getapp.com/"}, - {"title": "AllThingsWorkplace","url": "https://www.allthingsworkplace.com/"}, - {"title": "Momondo","url": "https://www.momondo.com/"}, - {"title": "UX Booth","url": "https://www.uxbooth.com/"}, - {"title": "HowToGeek","url": "https://www.howtogeek.com/"}, - {"title": "PWN Wiki","url": "https://pwnwiki.io/#!index.md"}, - {"title": "mubix","url": "https://mubix.github.io/"}, - {"title": "Sahab.net","url": "https://www.sahab.net/"}, - {"title": "Traidnt.net","url": "http://web.archive.org/web/20160213150705/http://www.traidnt.net/vb"}, - {"title": "C4Arab.com","url": "https://c4arab.virtualave.net/"}, - {"title": "interboy.net","url": "https://interboy.net/"}, - {"title": "Alkahf","url": "https://web.archive.org/web/20020802175234/https://alkhf.com/"}, - {"title": "Organizational Psychology","url": "https://en.wikipedia.org/wiki/Industrial_and_organizational_psychology/"}, - {"title": "Change Management","url": "https://en.wikipedia.org/wiki/Change_management/"}, - {"title": "Problem Solving","url": "https://en.wikipedia.org/wiki/Problem_solving/"}, - {"title": "Operational Excellence","url": "https://en.wikipedia.org/wiki/Operational_excellence"}, - {"title": "Process Management","url": "https://en.wikipedia.org/wiki/Process_management_(computing)/"} - ] - }, - - "operating_systems": { - "title":"💾 Operating Systems", - "description":"I've used and still use", - "data":[ - {"title": "MacOS (latest)", "url": "https://www.apple.com/macos/"}, - {"title": "Windows (95 to present)", "url": "https://www.microsoft.com/en-us/windows"}, - {"title": "Kali Linux (BackTrack to present)", "url": "https://www.kali.org/"}, - {"title": "Ubuntu", "url": "https://ubuntu.com/"}, - {"title": "Parrot OS", "url": "https://parrotlinux.org/"}, - {"title": "Centos", "url": "https://www.centos.org/"} - ] - }, - - "organizations":{ - "title":"💼 Organizations", - "description":"that I respect and follow their work", - "data":[ - {"title": "6 Degrees Tech","url": "https://www.6degrees.com.sa/"}, - {"title": "Promotion Efficiency","url": "https://www.promoe.com.sa/"}, - {"title": "Efficiency Center","url": "https://www.efficiencys.com.sa/"}, - {"title": "Burooj","url": "https://www.Burooj.pro/"}, - {"title": "Deets.Pro","url": "https://www.deets.pro/"}, - {"title": "Zahma o La","url": "https://www.zahmaola.com/"}, - {"title": "Hetzner ($20 signup bonus)","url": "https://hetzner.cloud/?ref=LoCUaLQgezDA"}, - {"title": "Cloudflare","url": "https://www.cloudflare.com/"}, - {"title": "Thiqah","url": "https://www.thiqah.sa/"}, - {"title": "Nothink.org","url": "https://www.nothink.org/"}, - {"title": "Frappe.io", "url": "https://frappe.io/"}, - {"title": "Helge Klein / SetACL","url": "https://helgeklein.com/"}, - {"title": "DigitalOcean","url": "https://www.digitalocean.com/"}, - {"title": "GitHub","url": "https://www.github.com/"}, - {"title": "cPanel","url": "https://www.cpanel.net/"}, - {"title": "WHMCS","url": "https://www.whmcs.com/"}, - {"title": "Clickatell","url": "https://www.clickatell.com/"}, - {"title": "Toot Studio","url": "https://toot.com.sa/en/"} - ] - }, - - "achievements":{ - "title":"🏆 Achievements", - "description":"pieces of work done that I'm proud of", - "data":[ - {"title": "أشياء لازم تتفاهم مع شركة البرمجة عليها بخصوص تطبيقك الجديد","url": "https://github.6degrees.com.sa/","arabic": true}, - {"title": "تجربتي في غسل مذربورد MBP 13 i7 من آثار شاهي","url": "https://www.adslgate.com/dsl/showthread.php?t=1180584","arabic": true}, - {"title": "vBulletinner.sh","url": "https://www.swalif.net/softs/swalif68/softs248354/"}, - {"title": "vBulletinner.sh +","url": "http://web.archive.org/web/20160213150705/http://www.traidnt.net/vb/traidnt1298111/"}, - {"title": "NetLogger","url": "https://mo9a7i.com/2009/Netloggerexe-%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-%D8%A7%D9%84%D8%B5%D9%88%D8%B1"}, - {"title": "FTPer","description": "Small bash script '/usr/local/bin' to automate sending files to a remote ftp through command line","url": "https://gist.github.com/mo9a7i/1ad6f6485ee7a490da8db615ff527e4f"}, - {"title": "Path App API Wrapper","url": "https://github.com/mo9a7i/CI_Path_API"}, - {"title": "لماذا لايعمل الدومين الخاص بي مباشرة بعد حجزه؟","url": "http://web.archive.org/web/20150517010722/http://www.traidnt.net/vb/traidnt1027285-2/","arabic": true}, - {"title": "arabicStrings (NPM)","url": "https://www.npmjs.com/package/@6degrees/arabic-strings"}, - {"title": "Source Code Spitter (NPM)","url": "https://www.npmjs.com/package/@6degrees/source-code-spitter"}, - {"title": "Swarmapp API Wrapper (NPM)","url": "https://www.npmjs.com/package/swarmapp-api"}, - {"title": "أداة كتابة بالعربي بالمقلوب للألعاب والفوتوشوب والبرامج اللي ماتدعم عربي", "url": "https://arabic-keyboard.mo9a7i.com"} - ] - }, - - "languages":{ - "title":"📚 Dev Skillz", - "description":"Porgramming languages, Frameworks and Development tools that I am comfortable using", - "data": [ - {"title": "JAVA","url": "https://www.java.com/en/download/"}, - - {"title": "Dart","url": "https://dart.dev/"}, - {"title": "Flutter","url": "https://flutter.dev/"}, - - {"title": "PHP","url": "https://www.php.net/"}, - {"title": "CodeIgniter","url": "https://codeigniter.com/"}, - {"title": "Laravel","url": "https://laravel.com/"}, - {"title": "WordPress Plugins","url": "https://developer.wordpress.org/plugins/"}, - - {"title": "ASP.NET","url": "https://dotnet.microsoft.com/en-us/apps/aspnet/"}, - {"title": "C#","url": "https://docs.microsoft.com/en-us/dotnet/csharp/"}, - {"title": "VBA","url": "https://docs.microsoft.com/en-us/office/vba/library-reference/concepts/getting-started-with-vba-in-office"}, - {"title": "VB.net","url": "https://docs.microsoft.com/en-us/dotnet/visual-basic/"}, - - {"title": "Javascript","url": "https://www.w3schools.com/js/DEFAULT.asp"}, - {"title": "NodeJs","url": "https://nodejs.org/en/"}, - {"title": "Express.js","url": "https://expressjs.com/"}, - - {"title": "Astro","url": "https://astro.build/"}, - {"title": "NuxtJS","url": "https://nuxtjs.org/"}, - {"title": "AdonisJS","url": "https://adonisjs.com/"}, - {"title": "Strapi","url": "https://strapi.io/"}, - {"title": "Vue.js","url": "https://vuejs.org/"}, - {"title": "ElectronJs", "url": "https://www.electronjs.org/"}, - {"title": "jQuery","url": "https://jquery.com/"}, - - {"title": "HTML","url": "https://www.w3schools.com/html/"}, - {"title": "SASS/SCSS","url": "https://sass-lang.com/"}, - {"title": "Bootstrap","url": "https://getbootstrap.com/"}, - {"title": "Tailwind","url": "https://tailwindcss.com/resources/"}, - {"title": "Jekyll","url": "https://jekyllrb.com/"}, - - {"title": "Python","url": "https://www.python.org/"}, - {"title": "Perl","url": "https://www.perl.org/"}, - - {"title": "bash","url": "https://www.gnu.org/software/bash/"}, - {"title": "Batch","url": "https://www.tutorialspoint.com/batch_script/index.htm"}, - {"title": "PowerShell","url": "https://www.tutorialspoint.com/powershell/powershell_scripting.htm"}, - - {"title": "SQL (my/MS)","url": "https://www.w3schools.com/sql/"}, - {"title": "Firebase","url": "https://firebase.google.com/"}, - {"title": "Docker","url": "https://www.docker.com/"}, - - {"title": "Markdown","url": "https://www.markdownguide.org/"} - - ] - }, - - "standards":{ - "title":"📜 Standards", - "description":"I try to go by and use", - "data":[ - {"title": "Serverless","url": "https://serverless.css-tricks.com/services/"}, - {"title": "DRY","url": "https://en.wikipedia.org/wiki/Don't_repeat_yourself"}, - {"title": "10 Laws to Design By","url": "https://3.7designs.co/blog/2010/07/ten-laws-to-design-by/"}, - {"title": "PSR-2","url": "https://www.php-fig.org/psr/psr-2/"}, - {"title": "PHP The Right Way","url": "https://phptherightway.com/"}, - {"title": "PHP Best Practices","url": "https://phpbestpractices.org/"}, - {"title": "Getting Things Done","url": "https://en.wikipedia.org/wiki/Getting_Things_Done"}, - {"title": "Usability Testing Demystified","url": "https://alistapart.com/article/usability-testing-demystified/"}, - {"title": "Article Publishing Guidelines","url": "https://web.archive.org/web/20120507051131/https://www.readability.com/publishers/guidelines/"} - ] - }, - - "games":{ - "title":"🎮 Games I Play", - "description":"when I have time", - "data":[ - {"title": "Second Life","url": "https://secondlife.com/"}, - {"title": "Call of Duty® 4: Modern Warfare®","url": "https://store.steampowered.com/app/7940/Call_of_Duty_4_Modern_Warfare/"}, - {"title": "Call of Duty®: Modern Warfare® 2","url": "https://store.steampowered.com/app/10180/Call_of_Duty_Modern_Warfare_2/"}, - {"title": "Call of Duty: World at War","url": "https://store.steampowered.com/app/10090/Call_of_Duty_World_at_War/"}, - {"title": "Call of Duty®: Black Ops","url": "https://store.steampowered.com/app/42700/Call_of_Duty_Black_Ops/"}, - {"title": "Call of Duty®: Modern Warfare® 3","url": "https://store.steampowered.com/app/115300/Call_of_Duty_Modern_Warfare_3/"}, - {"title": "Call of Duty®: Black Ops II","url": "https://store.steampowered.com/app/202970/Call_of_Duty_Black_Ops_II/"}, - {"title": "Call of Duty®: Modern Warfare® Remastered","url": "https://www.callofduty.com/modern-warfare-remastered"}, - {"title": "Call of Duty: Modern Warfare","url": "https://www.callofduty.com/modernwarfare"}, - {"title": "FiveM GTA","url": "https://fivem.net/"} - ] - } - }, - - "quotes": { - "title": "💡 Quotes", - "description": "I try to Live by and respect", - "data": [ - {"text": "You cannot arrest an idea, it is bulletproof.","author": "Anonymous", "source":"Unknown"}, - {"text": "The Quiter you become, the more you are able to hear","author": "Rumi","source":"BackTrack OS"}, - {"text": "We only see two things in people; what we want to see, and what they want to show us.","author": "James Remer","source":"as Harry Morgan"}, - {"text": "It is not the strongest species that survive, nor the most intelligent, but the ones responsive to change.","author": "Charles Darwin","source":""} - ] - }, - "Comment": "// Open Source I Like", - - "playlist":{ + "playlist": { "title": "YouTube", "description": "My Youtube Favorites", - "data": { - } - }, - - "locations": { - "title": "🌎 Places", - "description": "my feet touched", - "data": [ - {"lat": "61.912363","lng": "25.824976"}, - {"lat": "37.5652154","lng": "126.9195105"}, - {"lat": "34.1486076","lng": "-118.0168104"}, - {"lat": "34.0207305","lng": "-118.6919117"}, - {"lat": "42.3144556","lng": "-71.0403234"}, - {"lat": "29.817402","lng": "-95.5413744"}, - {"lat": "30.0595581","lng": "31.223445"}, - {"lat": "51.505100","lng": "-0.019821"}, - {"lat": "16.906198","lng": "42.557793"}, - {"lat": "21.530802","lng": "39.185705"}, - {"lat": "22.319590","lng": "39.101715"}, - {"lat": "23.137580","lng": "113.281647"}, - {"lat": "25.289414","lng": "51.535639"}, - {"lat": "22.548507","lng": "114.086711"}, - {"lat": "22.291509","lng": "113.942321"}, - {"lat": "27.348966","lng": "35.697899"}, - {"lat": "28.383059","lng": "36.583017"}, - {"lat": "28.415974","lng": "48.501512"}, - {"lat": "22.510470","lng": "53.951726"}, - {"lat": "23.986052","lng": "38.247564"}, - {"lat": "18.223770","lng": "42.507505"}, - {"lat": "27.514164","lng": "41.682321"}, - {"lat": "24.506293","lng": "44.392661"}, - {"lat": "24.468392","lng": "39.611268"}, - {"lat": "21.422537","lng": "39.826218"}, - {"lat": "29.291355","lng": "47.921233"}, - {"lat": "32.221081","lng": "-110.922326"} - ] + "data": {} } -} +} \ No newline at end of file diff --git a/src/assets/data/general.json b/src/assets/data/general.json new file mode 100644 index 0000000..b4b7bbe --- /dev/null +++ b/src/assets/data/general.json @@ -0,0 +1,87 @@ +{ + "title": "Mohannad Faihan Otaibi", + "description": "A techno-maniac from Saudi Arabia. Passionate about coding, innovation, and technology, I'm the geek you want to connect with. Explore my site to learn about my ventures, skills, and the tools I love. Let's talk tech!", + "hashtags": "#Saudi, #Geek, #Coder, #Innovator", + "email": "mohannad.otaibi@gmail.com", + "phone": "966545582222", + "cv": "/assets/files/20240603 Mohannad Otaibi Resume.pdf", + "old_nicknames": [ + "interboy", + "theinterboy", + "mfotaibi", + "dabdoobnet", + "انتربوي" + ], + "old_emails": [ + "mfotaibi@flashmail.com", + "mfotaibi@hotmail.com", + "dabdoobnet@hotmail.com", + "theinterboy@yahoo.com", + "interboy@c4arab.com", + "montada@mo9a7i.com" + ], + "social_links": { + "title": "Social Media Accounts", + "description": "Find me on one or more of the following links", + "data": { + "general": [ + { + "title": "Twitter", + "description:": "", + "url": "https://twitter.com/bufai7an", + "favicoDomain": "developer.twitter.com" + }, + { + "title": "LinkedIn", + "description:": "", + "url": "https://www.linkedin.com/in/mohannadotaibi/" + }, + { + "title": "Twitch", + "description:": "", + "url": "https://www.twitch.tv/bufai7an" + }, + { + "title": "BuFai7an.Live", + "description:": "", + "url": "https://bufai7an.live/" + }, + { + "title": "YouTube", + "description:": "", + "url": "https://www.youtube.com/user/mo9a7i" + }, + { + "title": "Foursquare", + "url": "https://foursquare.com/bufai7an" + } + ], + "technical": [ + { + "title": "GitHub", + "url": "https://github.com/Mo9a7i" + }, + { + "title": "StackOverflow", + "url": "https://stackoverflow.com/users/5588602/mohannad-otaibi" + }, + { + "title": "Traidnt.net", + "url": "http://web.archive.org/web/20160213150705/http://www.traidnt.net/vb/u53424/" + }, + { + "title": "ADSLGATE", + "url": "https://www.adslgate.com/dsl/member.php?u=299526" + }, + { + "title": "Swalif.net", + "url": "https://www.swalif.net/softs/1317.html" + }, + { + "title": "NPMjs", + "url": "https://www.npmjs.com/~mo9a7i" + } + ] + } + } + } \ No newline at end of file diff --git a/src/assets/data/linked/achievements.json b/src/assets/data/linked/achievements.json new file mode 100644 index 0000000..c3e3274 --- /dev/null +++ b/src/assets/data/linked/achievements.json @@ -0,0 +1,58 @@ +{ + "title": "🏆 Achievements", + "description": "pieces of work done that I'm proud of", + "data": [ + { + "title": "أشياء لازم تتفاهم مع شركة البرمجة عليها بخصوص تطبيقك الجديد", + "url": "https://github.6degrees.com.sa/", + "arabic": true + }, + { + "title": "تجربتي في غسل مذربورد MBP 13 i7 من آثار شاهي", + "url": "https://www.adslgate.com/dsl/showthread.php?t=1180584", + "arabic": true + }, + { + "title": "vBulletinner.sh", + "url": "https://www.swalif.net/softs/swalif68/softs248354/" + }, + { + "title": "vBulletinner.sh +", + "url": "http://web.archive.org/web/20160213150705/http://www.traidnt.net/vb/traidnt1298111/" + }, + { + "title": "NetLogger", + "url": "https://mo9a7i.com/2009/Netloggerexe-%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-%D8%A7%D9%84%D8%B5%D9%88%D8%B1" + }, + { + "title": "FTPer", + "description": "Small bash script '/usr/local/bin' to automate sending files to a remote ftp through command line", + "url": "https://gist.github.com/mo9a7i/1ad6f6485ee7a490da8db615ff527e4f" + }, + { + "title": "Path App API Wrapper", + "url": "https://github.com/mo9a7i/CI_Path_API" + }, + { + "title": "لماذا لايعمل الدومين الخاص بي مباشرة بعد حجزه؟", + "url": "http://web.archive.org/web/20150517010722/http://www.traidnt.net/vb/traidnt1027285-2/", + "arabic": true + }, + { + "title": "arabicStrings (NPM)", + "url": "https://www.npmjs.com/package/@6degrees/arabic-strings" + }, + { + "title": "Source Code Spitter (NPM)", + "url": "https://www.npmjs.com/package/@6degrees/source-code-spitter" + }, + { + "title": "Swarmapp API Wrapper (NPM)", + "url": "https://www.npmjs.com/package/swarmapp-api" + }, + { + "title": "أداة كتابة بالعربي بالمقلوب للألعاب والفوتوشوب والبرامج اللي ماتدعم عربي", + "url": "https://arabic-keyboard.mo9a7i.com" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/applications.json b/src/assets/data/linked/applications.json new file mode 100644 index 0000000..ddd5e9c --- /dev/null +++ b/src/assets/data/linked/applications.json @@ -0,0 +1,218 @@ +{ + "title": "💻 PC Softwares", + "description": "My basic setups for each PC", + "data": [ + { + "title": "TechPowerUp GPU-Z", + "url": "https://www.techpowerup.com/download/techpowerup-gpu-z/" + }, + { + "title": "WinUtil", + "url": "https://github.com/ChrisTitusTech/winutil" + }, + { + "title": "DevToys", + "url": "https://devtoys.app/" + }, + { + "title": "SAP S4HANA", + "url": "https://help.sap.com/docs/SAP_S4HANA_ON-PREMISE" + }, + { + "title": "SAP Ariba", + "url": "https://www.sap.com/mena/products/spend-management/ariba-login.html" + }, + { + "title": "VS Code", + "url": "https://code.visualstudio.com/" + }, + { + "title": "Insomnia", + "url": "https://insomnia.rest/" + }, + { + "title": "Termius", + "url": "https://termius.com/" + }, + { + "title": "GitHub Desktop", + "url": "https://desktop.github.com/" + }, + { + "title": "Docker Desktop", + "url": "https://www.docker.com/products/docker-desktop/" + }, + { + "title": "WinSCP", + "url": "https://winscp.net/eng/download.php" + }, + { + "title": "MySQL Workbench", + "url": "https://www.mysql.com/products/workbench/" + }, + { + "title": "Chocolatey", + "url": "https://chocolatey.org/" + }, + { + "title": "Homebrew", + "url": "https://brew.sh/" + }, + { + "title": "Winget", + "url": "https://learn.microsoft.com/en-us/windows/package-manager/winget/" + }, + { + "title": "Figma", + "url": "https://www.figma.com/" + }, + { + "title": "VMWare Workstation", + "url": "https://www.vmware.com/products/workstation-pro.html" + }, + { + "title": "VMWare ESXi", + "url": "https://www.vmware.com/products/esxi-and-esx.html" + }, + { + "title": "VM VirtualBox", + "url": "https://www.virtualbox.org/" + }, + { + "title": "Fiddler", + "url": "https://www.telerik.com/fiddler/" + }, + { + "title": "K-Lite", + "url": "https://codecguide.com/download_kl.htm" + }, + { + "title": "Streamlabs OBS", + "url": "https://streamlabs.com/" + }, + { + "title": "SteelSeries GG", + "url": "https://steelseries.com/gg/" + }, + { + "title": "Discord", + "url": "https://discord.com/" + }, + { + "title": "Steam", + "url": "https://store.steampowered.com/" + }, + { + "title": "Stremio", + "url": "https://www.stremio.com/" + }, + { + "title": "WinDirStat", + "url": "https://windirstat.net/" + }, + { + "title": "Advanced IP Scanner", + "url": "https://www.advanced-ip-scanner.com/" + }, + { + "title": "Recuva", + "url": "https://www.ccleaner.com/recuva" + }, + { + "title": "Revo Uninstaller", + "url": "https://www.revouninstaller.com/" + }, + { + "title": "Chrome", + "url": "https://www.google.com/chrome/" + }, + { + "title": "FireFox", + "url": "https://www.mozilla.org/en-US/firefox/new/" + }, + { + "title": "Brave Browser", + "url": "https://brave.com/" + }, + { + "title": "MS Office", + "url": "https://www.microsoft.com/en-us/microsoft-365/get-started-with-office-2019" + }, + { + "title": "Adobe Suite", + "url": "https://www.adobe.com/creativecloud.html" + }, + { + "title": "Free Download Manager", + "url": "https://www.freedownloadmanager.org/" + }, + { + "title": "7-zip", + "url": "https://www.7-zip.org/" + }, + { + "title": "CCleaner", + "url": "https://www.ccleaner.com/" + }, + { + "title": "Grammarly", + "url": "https://developer.grammarly.com/" + }, + { + "title": "Google Drive", + "url": "https://www.google.com/drive/download/" + }, + { + "title": "Warp", + "url": "https://1.1.1.1/" + }, + { + "title": "PowerToys", + "url": "https://www.cgsecurity.org/wiki/TestDisk" + }, + { + "title": "TestDisk", + "url": "https://github.com/microsoft/PowerToys/" + }, + { + "title": "BitWarden", + "url": "https://bitwarden.com/" + }, + { + "title": "Cursor AI", + "url": "https://www.cursor.com/" + }, + { + "title": "HeidiSQL", + "url": "https://www.heidisql.com/" + }, + { + "title": "Hoppscotch", + "url": "https://hoppscotch.io/" + }, + { + "title": "Linear", + "url": "https://linear.app/" + }, + { + "title": "Screaming Frog SEO Spider", + "url": "https://www.screamingfrog.co.uk/seo-spider/" + }, + { + "title": "Rapid Environment Editor", + "url": "https://www.rapidee.com/" + }, + { + "title": "Ente Auth", + "url": "https://ente.io/auth/" + }, + { + "title": "Speccy", + "url": "https://www.ccleaner.com/speccy" + }, + { + "title": "Slack", + "url": "https://slack.com/" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/bookmarks.json b/src/assets/data/linked/bookmarks.json new file mode 100644 index 0000000..142d078 --- /dev/null +++ b/src/assets/data/linked/bookmarks.json @@ -0,0 +1,162 @@ +{ + "title": "🔗 Bookmarks", + "description": "of Websites I enjoy browsing, or need, most of the time", + "data": [ + { + "title": "Smashing Magazine", + "url": "https://www.smashingmagazine.com/" + }, + { + "title": "كتابات سعود بن محمد (PHP)", + "url": "https://samaphp.com/" + }, + { + "title": "David Walsh", + "url": "https://davidwalsh.name/" + }, + { + "title": "Abraham Williams", + "url": "https://abrah.am/" + }, + { + "title": "Hacker News", + "url": "https://news.ycombinator.com/" + }, + { + "title": "BlackHat World (SEO)", + "url": "https://www.blackhatworld.com/" + }, + { + "title": "Tiny Subversions", + "url": "https://tinysubversions.com/" + }, + { + "title": "FileHippo", + "url": "https://filehippo.com/" + }, + { + "title": "Cats Who Code", + "url": "https://catswhocode.com/" + }, + { + "title": "Tech Crunch", + "url": "https://techcrunch.com/" + }, + { + "title": "@flaviocopes", + "url": "https://flaviocopes.com/" + }, + { + "title": "Tuts+", + "url": "https://tutsplus.com/tutorials" + }, + { + "title": "SpeckyBoy", + "url": "https://speckyboy.com/" + }, + { + "title": "Dynamic Drive", + "url": "https://dynamicdrive.com/" + }, + { + "title": "Tutorial 9", + "url": "#" + }, + { + "title": "Google Hosted Libraries", + "url": "https://developers.google.com/speed/libraries" + }, + { + "title": "Daily Design Inspiration", + "url": "#" + }, + { + "title": "iBrand Studio", + "url": "https://ibrandstudio.com/" + }, + { + "title": "DesignModo", + "url": "https://designmodo.com/" + }, + { + "title": "AskDaveTylor", + "url": "https://www.askdavetaylor.com/" + }, + { + "title": "DeviantArt", + "url": "https://www.deviantart.com/" + }, + { + "title": "Product Hunt", + "url": "https://www.producthunt.com/" + }, + { + "title": "GetApp", + "url": "https://www.getapp.com/" + }, + { + "title": "AllThingsWorkplace", + "url": "https://www.allthingsworkplace.com/" + }, + { + "title": "Momondo", + "url": "https://www.momondo.com/" + }, + { + "title": "UX Booth", + "url": "https://www.uxbooth.com/" + }, + { + "title": "HowToGeek", + "url": "https://www.howtogeek.com/" + }, + { + "title": "PWN Wiki", + "url": "https://pwnwiki.io/#!index.md" + }, + { + "title": "mubix", + "url": "https://mubix.github.io/" + }, + { + "title": "Sahab.net", + "url": "https://www.sahab.net/" + }, + { + "title": "Traidnt.net", + "url": "http://web.archive.org/web/20160213150705/http://www.traidnt.net/vb" + }, + { + "title": "C4Arab.com", + "url": "https://c4arab.virtualave.net/" + }, + { + "title": "interboy.net", + "url": "https://interboy.net/" + }, + { + "title": "Alkahf", + "url": "https://web.archive.org/web/20020802175234/https://alkhf.com/" + }, + { + "title": "Organizational Psychology", + "url": "https://en.wikipedia.org/wiki/Industrial_and_organizational_psychology/" + }, + { + "title": "Change Management", + "url": "https://en.wikipedia.org/wiki/Change_management/" + }, + { + "title": "Problem Solving", + "url": "https://en.wikipedia.org/wiki/Problem_solving/" + }, + { + "title": "Operational Excellence", + "url": "https://en.wikipedia.org/wiki/Operational_excellence" + }, + { + "title": "Process Management", + "url": "https://en.wikipedia.org/wiki/Process_management_(computing)/" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/games.json b/src/assets/data/linked/games.json new file mode 100644 index 0000000..9d7a75b --- /dev/null +++ b/src/assets/data/linked/games.json @@ -0,0 +1,46 @@ +{ + "title": "🎮 Games I Play", + "description": "when I have time", + "data": [ + { + "title": "Second Life", + "url": "https://secondlife.com/" + }, + { + "title": "Call of Duty® 4: Modern Warfare®", + "url": "https://store.steampowered.com/app/7940/Call_of_Duty_4_Modern_Warfare/" + }, + { + "title": "Call of Duty®: Modern Warfare® 2", + "url": "https://store.steampowered.com/app/10180/Call_of_Duty_Modern_Warfare_2/" + }, + { + "title": "Call of Duty: World at War", + "url": "https://store.steampowered.com/app/10090/Call_of_Duty_World_at_War/" + }, + { + "title": "Call of Duty®: Black Ops", + "url": "https://store.steampowered.com/app/42700/Call_of_Duty_Black_Ops/" + }, + { + "title": "Call of Duty®: Modern Warfare® 3", + "url": "https://store.steampowered.com/app/115300/Call_of_Duty_Modern_Warfare_3/" + }, + { + "title": "Call of Duty®: Black Ops II", + "url": "https://store.steampowered.com/app/202970/Call_of_Duty_Black_Ops_II/" + }, + { + "title": "Call of Duty®: Modern Warfare® Remastered", + "url": "https://www.callofduty.com/modern-warfare-remastered" + }, + { + "title": "Call of Duty: Modern Warfare", + "url": "https://www.callofduty.com/modernwarfare" + }, + { + "title": "FiveM GTA", + "url": "https://fivem.net/" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/languages.json b/src/assets/data/linked/languages.json new file mode 100644 index 0000000..75a969f --- /dev/null +++ b/src/assets/data/linked/languages.json @@ -0,0 +1,146 @@ +{ + "title": "📚 Dev Skillz", + "description": "Porgramming languages, Frameworks and Development tools that I am comfortable using", + "data": [ + { + "title": "JAVA", + "url": "https://www.java.com/en/download/" + }, + { + "title": "Dart", + "url": "https://dart.dev/" + }, + { + "title": "Flutter", + "url": "https://flutter.dev/" + }, + { + "title": "PHP", + "url": "https://www.php.net/" + }, + { + "title": "CodeIgniter", + "url": "https://codeigniter.com/" + }, + { + "title": "Laravel", + "url": "https://laravel.com/" + }, + { + "title": "WordPress Plugins", + "url": "https://developer.wordpress.org/plugins/" + }, + { + "title": "ASP.NET", + "url": "https://dotnet.microsoft.com/en-us/apps/aspnet/" + }, + { + "title": "C#", + "url": "https://docs.microsoft.com/en-us/dotnet/csharp/" + }, + { + "title": "VBA", + "url": "https://docs.microsoft.com/en-us/office/vba/library-reference/concepts/getting-started-with-vba-in-office" + }, + { + "title": "VB.net", + "url": "https://docs.microsoft.com/en-us/dotnet/visual-basic/" + }, + { + "title": "Javascript", + "url": "https://www.w3schools.com/js/DEFAULT.asp" + }, + { + "title": "NodeJs", + "url": "https://nodejs.org/en/" + }, + { + "title": "Express.js", + "url": "https://expressjs.com/" + }, + { + "title": "Astro", + "url": "https://astro.build/" + }, + { + "title": "NuxtJS", + "url": "https://nuxtjs.org/" + }, + { + "title": "AdonisJS", + "url": "https://adonisjs.com/" + }, + { + "title": "Strapi", + "url": "https://strapi.io/" + }, + { + "title": "Vue.js", + "url": "https://vuejs.org/" + }, + { + "title": "ElectronJs", + "url": "https://www.electronjs.org/" + }, + { + "title": "jQuery", + "url": "https://jquery.com/" + }, + { + "title": "HTML", + "url": "https://www.w3schools.com/html/" + }, + { + "title": "SASS/SCSS", + "url": "https://sass-lang.com/" + }, + { + "title": "Bootstrap", + "url": "https://getbootstrap.com/" + }, + { + "title": "Tailwind", + "url": "https://tailwindcss.com/resources/" + }, + { + "title": "Jekyll", + "url": "https://jekyllrb.com/" + }, + { + "title": "Python", + "url": "https://www.python.org/" + }, + { + "title": "Perl", + "url": "https://www.perl.org/" + }, + { + "title": "bash", + "url": "https://www.gnu.org/software/bash/" + }, + { + "title": "Batch", + "url": "https://www.tutorialspoint.com/batch_script/index.htm" + }, + { + "title": "PowerShell", + "url": "https://www.tutorialspoint.com/powershell/powershell_scripting.htm" + }, + { + "title": "SQL (my/MS)", + "url": "https://www.w3schools.com/sql/" + }, + { + "title": "Firebase", + "url": "https://firebase.google.com/" + }, + { + "title": "Docker", + "url": "https://www.docker.com/" + }, + { + "title": "Markdown", + "url": "https://www.markdownguide.org/" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/operating_systems.json b/src/assets/data/linked/operating_systems.json new file mode 100644 index 0000000..f42cb95 --- /dev/null +++ b/src/assets/data/linked/operating_systems.json @@ -0,0 +1,36 @@ +{ + "title": "💾 Operating Systems", + "description": "I've used and still use", + "data": [ + { + "title": "MacOS", + "url": "https://www.apple.com/macos/", + "description": "Latest" + }, + { + "title": "Windows", + "url": "https://www.microsoft.com/en-us/windows", + "description": "3.2 up to latest" + }, + { + "title": "Kali Linux", + "url": "https://www.kali.org/", + "description": "Since Backtrack" + }, + { + "title": "ParrotOS", + "url": "https://www.parrotsec.org/", + "description": "No description" + }, + { + "title": "Ubuntu", + "url": "https://ubuntu.com/", + "description": "10.04 LTS up to current version" + }, + { + "title": "CentOS", + "url": "https://www.centos.org/", + "description": "5.7 up to current" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/organizations.json b/src/assets/data/linked/organizations.json new file mode 100644 index 0000000..528b316 --- /dev/null +++ b/src/assets/data/linked/organizations.json @@ -0,0 +1,78 @@ +{ + "title": "💼 Organizations", + "description": "that I respect and follow their work", + "data": [ + { + "title": "6 Degrees Tech", + "url": "https://www.6degrees.com.sa/" + }, + { + "title": "Promotion Efficiency", + "url": "https://www.promoe.com.sa/" + }, + { + "title": "Efficiency Center", + "url": "https://www.efficiencys.com.sa/" + }, + { + "title": "Burooj", + "url": "https://www.Burooj.pro/" + }, + { + "title": "Deets.Pro", + "url": "https://www.deets.pro/" + }, + { + "title": "Zahma o La", + "url": "https://www.zahmaola.com/" + }, + { + "title": "Hetzner ($20 signup bonus)", + "url": "https://hetzner.cloud/?ref=LoCUaLQgezDA" + }, + { + "title": "Cloudflare", + "url": "https://www.cloudflare.com/" + }, + { + "title": "Thiqah", + "url": "https://www.thiqah.sa/" + }, + { + "title": "Nothink.org", + "url": "https://www.nothink.org/" + }, + { + "title": "Frappe.io", + "url": "https://frappe.io/" + }, + { + "title": "Helge Klein / SetACL", + "url": "https://helgeklein.com/" + }, + { + "title": "DigitalOcean", + "url": "https://www.digitalocean.com/" + }, + { + "title": "GitHub", + "url": "https://www.github.com/" + }, + { + "title": "cPanel", + "url": "https://www.cpanel.net/" + }, + { + "title": "WHMCS", + "url": "https://www.whmcs.com/" + }, + { + "title": "Clickatell", + "url": "https://www.clickatell.com/" + }, + { + "title": "Toot Studio", + "url": "https://toot.com.sa/en/" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/linked/standards.json b/src/assets/data/linked/standards.json new file mode 100644 index 0000000..46a90a2 --- /dev/null +++ b/src/assets/data/linked/standards.json @@ -0,0 +1,42 @@ +{ + "title": "📜 Standards", + "description": "I try to go by and use", + "data": [ + { + "title": "Serverless", + "url": "https://serverless.css-tricks.com/services/" + }, + { + "title": "DRY", + "url": "https://en.wikipedia.org/wiki/Don't_repeat_yourself" + }, + { + "title": "10 Laws to Design By", + "url": "https://3.7designs.co/blog/2010/07/ten-laws-to-design-by/" + }, + { + "title": "PSR-2", + "url": "https://www.php-fig.org/psr/psr-2/" + }, + { + "title": "PHP The Right Way", + "url": "https://phptherightway.com/" + }, + { + "title": "PHP Best Practices", + "url": "https://phpbestpractices.org/" + }, + { + "title": "Getting Things Done", + "url": "https://en.wikipedia.org/wiki/Getting_Things_Done" + }, + { + "title": "Usability Testing Demystified", + "url": "https://alistapart.com/article/usability-testing-demystified/" + }, + { + "title": "Article Publishing Guidelines", + "url": "https://web.archive.org/web/20120507051131/https://www.readability.com/publishers/guidelines/" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/locations.json b/src/assets/data/locations.json new file mode 100644 index 0000000..85a593c --- /dev/null +++ b/src/assets/data/locations.json @@ -0,0 +1,12017 @@ +{ + "title": "🌎 Places", + "description": "Places I've been to", + "data": [ + { + "venueId": "placeholder-3", + "latLng": { + "lat": 34.1486076, + "lng": -118.0168104 + } + }, + { + "venueId": "placeholder-4", + "latLng": { + "lat": 34.0207305, + "lng": -118.6919117 + } + }, + { + "venueId": "placeholder-5", + "latLng": { + "lat": 42.3144556, + "lng": -71.0403234 + } + }, + { + "venueId": "placeholder-6", + "latLng": { + "lat": 29.817402, + "lng": -95.5413744 + } + }, + { + "venueId": "placeholder-7", + "latLng": { + "lat": 30.0595581, + "lng": 31.223445 + } + }, + { + "venueId": "placeholder-8", + "latLng": { + "lat": 51.5051, + "lng": -0.019821 + } + }, + { + "venueId": "placeholder-9", + "latLng": { + "lat": 16.906198, + "lng": 42.557793 + } + }, + { + "venueId": "placeholder-10", + "latLng": { + "lat": 21.530802, + "lng": 39.185705 + } + }, + { + "venueId": "placeholder-11", + "latLng": { + "lat": 22.31959, + "lng": 39.101715 + } + }, + { + "venueId": "placeholder-12", + "latLng": { + "lat": 23.13758, + "lng": 113.281647 + } + }, + { + "venueId": "placeholder-13", + "latLng": { + "lat": 25.289414, + "lng": 51.535639 + } + }, + { + "venueId": "placeholder-14", + "latLng": { + "lat": 22.548507, + "lng": 114.086711 + } + }, + { + "venueId": "placeholder-15", + "latLng": { + "lat": 22.291509, + "lng": 113.942321 + } + }, + { + "venueId": "4e5a6e0fc65bcd7cbe416210", + "latLng": { + "lat": 27.35200170753196, + "lng": 35.70328511571918 + } + }, + { + "venueId": "50ff1cbfe4b03e81227133db", + "latLng": { + "lat": 28.401731566543045, + "lng": 36.57519761331439 + } + }, + { + "venueId": "5033f290e4b0796bb63413d6", + "latLng": { + "lat": 28.484255542156443, + "lng": 48.49593049909043 + } + }, + { + "venueId": "5d172262a24dd70023a45158", + "latLng": { + "lat": 22.51295, + "lng": 53.952487 + } + }, + { + "venueId": "5f102fcf2ee8863d5785f6c1", + "latLng": { + "lat": 24.010083, + "lng": 38.197288 + } + }, + { + "venueId": "4bdda50b6198c9b6f91b11ff", + "latLng": { + "lat": 18.234494195000973, + "lng": 42.65824332097839 + } + }, + { + "venueId": "5f59516bf4b7cb4dac241b8e", + "latLng": { + "lat": 27.521033, + "lng": 41.696063 + } + }, + { + "venueId": "4b0586dcf964a520f87122e3", + "latLng": { + "lat": 32.25284599232027, + "lng": -110.87732106948512 + } + }, + { + "venueId": "5399eeb9498efdb7bfa3c554", + "latLng": { + "lat": 24.498792135456384, + "lng": 44.373061520384354 + }, + "year": "2014" + }, + { + "venueId": "512cc846e4b07767b141f56d", + "latLng": { + "lat": 26.304835444564407, + "lng": 50.129478890304156 + }, + "year": "2014" + }, + { + "venueId": "4bc6d588f360ef3b943fdc2d", + "latLng": { + "lat": 24.697508126526525, + "lng": 46.683783467535314 + }, + "year": "2014" + }, + { + "venueId": "4fdd78abe4b049c33bc0aa78", + "latLng": { + "lat": 26.30569478902117, + "lng": 50.11396772448491 + }, + "year": "2014" + }, + { + "venueId": "4eba66a68b8189688452c67f", + "latLng": { + "lat": 26.190178600731116, + "lng": 50.31133175292003 + }, + "year": "2014" + }, + { + "venueId": "4c2cce118ef52d7f987a33ba", + "latLng": { + "lat": 26.285066930495162, + "lng": 50.19516812985963 + }, + "year": "2014" + }, + { + "venueId": "5304d544498eff3c44b4c06d", + "latLng": { + "lat": 26.318831011304194, + "lng": 50.14488358621586 + }, + "year": "2014" + }, + { + "venueId": "4ce2820541ed224b4ef1ef3c", + "latLng": { + "lat": 26.2719003104623, + "lng": 50.22081896199757 + }, + "year": "2014" + }, + { + "venueId": "5218282711d2b8e83502a200", + "latLng": { + "lat": 26.339724351566215, + "lng": 50.15180122749607 + }, + "year": "2014" + }, + { + "venueId": "4bb8f818314e952178fd489d", + "latLng": { + "lat": 36.11361004536625, + "lng": -115.16993520807004 + }, + "year": "2014" + }, + { + "venueId": "4cb9d3880180721eb1729661", + "latLng": { + "lat": 22.186353005790394, + "lng": 113.55065000467047 + }, + "year": "2014" + }, + { + "venueId": "4d5258249b27721ee7eec046", + "latLng": { + "lat": 22.5484862358595, + "lng": 114.11199285917861 + }, + "year": "2014" + }, + { + "venueId": "4a7379d2f964a52088dc1fe3", + "latLng": { + "lat": 22.31457861899921, + "lng": 113.93455137423379 + }, + "year": "2014" + }, + { + "venueId": "4bb49096531c9521ff21eaa8", + "latLng": { + "lat": 26.30913756628925, + "lng": 50.129709985225986 + }, + "year": "2014" + }, + { + "venueId": "4fa12aaee4b0dae72e09603b", + "latLng": { + "lat": 23.139395697449956, + "lng": 113.27572493834289 + }, + "year": "2014" + }, + { + "venueId": "4f2fa131e4b040ea0176accf", + "latLng": { + "lat": 26.328707011171243, + "lng": 50.109358802407044 + }, + "year": "2014" + }, + { + "venueId": "52fa3bbb498e148cb85d853d", + "latLng": { + "lat": 26.184755719157252, + "lng": 50.32379175591006 + }, + "year": "2014" + }, + { + "venueId": "4e778533152037f9e18468d7", + "latLng": { + "lat": 23.14371917172321, + "lng": 113.29066692405482 + }, + "year": "2014" + }, + { + "venueId": "4e7730941f6e072f146caa94", + "latLng": { + "lat": 23.139896437857008, + "lng": 113.27631809906669 + }, + "year": "2014" + }, + { + "venueId": "4d3d18d005b8721ef13d9237", + "latLng": { + "lat": 26.31220760507588, + "lng": 50.13013686576584 + }, + "year": "2014" + }, + { + "venueId": "4f1582fae4b0804e8e62510d", + "latLng": { + "lat": 26.348620933071096, + "lng": 50.14110621423469 + }, + "year": "2014" + }, + { + "venueId": "52179296498efe47d6f71cd1", + "latLng": { + "lat": 26.302434579020183, + "lng": 50.12180068326516 + }, + "year": "2014" + }, + { + "venueId": "4bd56fb8cfa7b713b4bd25da", + "latLng": { + "lat": 22.546708399575998, + "lng": 114.08369758548469 + }, + "year": "2014" + }, + { + "venueId": "548209f0498ebb1006cc1be0", + "latLng": { + "lat": 26.293607692540352, + "lng": 50.11531833557165 + }, + "year": "2014" + }, + { + "venueId": "4be2c076ee0062b5f45ab3c8", + "latLng": { + "lat": 26.276643183957194, + "lng": 50.219868369111765 + }, + "year": "2014" + }, + { + "venueId": "4f1c55ade4b083823306b42e", + "latLng": { + "lat": 26.331846439903824, + "lng": 50.21374268133498 + }, + "year": "2014" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2014" + }, + { + "venueId": "4d4e649820d3236af5369b28", + "latLng": { + "lat": 22.54634386065843, + "lng": 114.08117165486867 + }, + "year": "2014" + }, + { + "venueId": "4c9f7a500df79c7427e0241a", + "latLng": { + "lat": 26.296813233638417, + "lng": 50.09185512137847 + }, + "year": "2014" + }, + { + "venueId": "5230bdb911d2632f6a55d892", + "latLng": { + "lat": 26.406375176014524, + "lng": 50.0730469403388 + }, + "year": "2014" + }, + { + "venueId": "4e42e8b6628484fb528fc142", + "latLng": { + "lat": 26.389602274542067, + "lng": 50.084121380946925 + }, + "year": "2014" + }, + { + "venueId": "4ff46e4de4b002d4d23c6773", + "latLng": { + "lat": 26.334182618968818, + "lng": 50.21209820487602 + }, + "year": "2014" + }, + { + "venueId": "5c77a693b3c961002c2a336f", + "latLng": { + "lat": 26.1350390203296, + "lng": 49.88753295855654 + }, + "year": "2014" + }, + { + "venueId": "4db8cea58154ce84dc1b91c8", + "latLng": { + "lat": 26.296620499851496, + "lng": 50.220642925160675 + }, + "year": "2014" + }, + { + "venueId": "4e0f19b71838f62321cbd18b", + "latLng": { + "lat": 26.21477825144523, + "lng": 50.59095499953928 + }, + "year": "2014" + }, + { + "venueId": "525a9e4711d2bc4d06f3466c", + "latLng": { + "lat": 26.348207127379304, + "lng": 50.13455148883497 + }, + "year": "2014" + }, + { + "venueId": "4e4772a8887781a619b931d6", + "latLng": { + "lat": 26.30393285521054, + "lng": 50.21052920445392 + }, + "year": "2014" + }, + { + "venueId": "5c8a6c13625a660039e094f7", + "latLng": { + "lat": 25.120542201863728, + "lng": 46.12491967071402 + }, + "year": "2014" + }, + { + "venueId": "5154659ee4b0ce9d1d1f95fd", + "latLng": { + "lat": 24.517385531899002, + "lng": 44.31222682098707 + }, + "year": "2014" + }, + { + "venueId": "4ba5c636f964a520742139e3", + "latLng": { + "lat": 22.1862207336479, + "lng": 113.54796323260962 + }, + "year": "2014" + }, + { + "venueId": "51ab4484498e6b826e64063b", + "latLng": { + "lat": 26.332421834879828, + "lng": 50.17910741372727 + }, + "year": "2014" + }, + { + "venueId": "4b0587f6f964a52022a922e3", + "latLng": { + "lat": 13.729148523669249, + "lng": 100.51375145240029 + }, + "year": "2014" + }, + { + "venueId": "4c9f79370df79c74c7d8241a", + "latLng": { + "lat": 26.304031129618462, + "lng": 50.129619587379274 + }, + "year": "2014" + }, + { + "venueId": "4ed3a0fdb634dd29954186ce", + "latLng": { + "lat": 26.17888256622808, + "lng": 49.937964021287215 + }, + "year": "2014" + }, + { + "venueId": "4f0d12c8e4b0254b4c6b7932", + "latLng": { + "lat": 23.128396400209198, + "lng": 113.26394884650584 + }, + "year": "2014" + }, + { + "venueId": "4df19e021f6e818dadf8f54b", + "latLng": { + "lat": 22.544925020128613, + "lng": 114.08354896969415 + }, + "year": "2014" + }, + { + "venueId": "458d63f7f964a52005401fe3", + "latLng": { + "lat": 36.11401333858262, + "lng": -115.17014265104757 + }, + "year": "2014" + }, + { + "venueId": "4f4eacbde4b0b5f5b034570d", + "latLng": { + "lat": 24.824259381426454, + "lng": 46.77250962755277 + }, + "year": "2014" + }, + { + "venueId": "4f944205e4b059d7dab2e424", + "latLng": { + "lat": 26.37226833776431, + "lng": 50.176433539464014 + }, + "year": "2014" + }, + { + "venueId": "4f68eb88e4b0b4f7926b1ac8", + "latLng": { + "lat": 24.735544849030177, + "lng": 46.67375236459982 + }, + "year": "2014" + }, + { + "venueId": "52f7272a498e8ef356a16d8b", + "latLng": { + "lat": 26.31652716288434, + "lng": 50.11987247646611 + }, + "year": "2014" + }, + { + "venueId": "50e28ea7e4b09e220963bd01", + "latLng": { + "lat": 22.21803311933613, + "lng": 113.54414422035474 + }, + "year": "2014" + }, + { + "venueId": "504ac5a6e4b08a4f68be0673", + "latLng": { + "lat": 22.948551143469274, + "lng": 113.08455587712322 + }, + "year": "2014" + }, + { + "venueId": "52f2030a498e63ca1e4eab04", + "latLng": { + "lat": 26.331771148485647, + "lng": 50.1704076224474 + }, + "year": "2014" + }, + { + "venueId": "4dcd3333d164679b8cdffd45", + "latLng": { + "lat": 22.538702022494043, + "lng": 114.0484220355768 + }, + "year": "2014" + }, + { + "venueId": "4d5fa5fa338bb60c8f631ebd", + "latLng": { + "lat": 26.30310439966419, + "lng": 50.199667922514365 + }, + "year": "2014" + }, + { + "venueId": "4bd75f03304fce72b77733ab", + "latLng": { + "lat": 26.303997383304093, + "lng": 50.21095154509814 + }, + "year": "2014" + }, + { + "venueId": "4f745f12e4b07e696334a615", + "latLng": { + "lat": 26.284328228559726, + "lng": 50.21857075828545 + }, + "year": "2014" + }, + { + "venueId": "5119f75fe4b0f9aeb8dd2ce6", + "latLng": { + "lat": 27.01715696865628, + "lng": 49.64553055835937 + }, + "year": "2014" + }, + { + "venueId": "5007edfde4b0a467c6820bb0", + "latLng": { + "lat": 26.2986346391809, + "lng": 50.21935032737157 + }, + "year": "2014" + }, + { + "venueId": "505f14bae4b0076526cfb212", + "latLng": { + "lat": 26.29291763876569, + "lng": 50.17474483729975 + }, + "year": "2014" + }, + { + "venueId": "4bcc610eaeaaeee1f5f53d6d", + "latLng": { + "lat": 26.32250956760787, + "lng": 50.216750047473745 + }, + "year": "2014" + }, + { + "venueId": "4fbca9a5e4b0742d2e439b77", + "latLng": { + "lat": 26.326369944888803, + "lng": 50.1091228430593 + }, + "year": "2014" + }, + { + "venueId": "51642aede4b0a8b9b5cda0e2", + "latLng": { + "lat": 26.291830953020426, + "lng": 50.11826560583733 + }, + "year": "2014" + }, + { + "venueId": "4ba2e810f964a520ac2138e3", + "latLng": { + "lat": 23.142507205624756, + "lng": 113.27104360272244 + }, + "year": "2014" + }, + { + "venueId": "4e096b1de4cdefcff6e8913a", + "latLng": { + "lat": 22.54375201198059, + "lng": 114.08227493662145 + }, + "year": "2014" + }, + { + "venueId": "4f4af129e4b0b7483fbed825", + "latLng": { + "lat": 26.320908688956408, + "lng": 50.04017678289641 + }, + "year": "2014" + }, + { + "venueId": "5316e54d11d24c0696ddc5cf", + "latLng": { + "lat": 25.7916714834815, + "lng": 48.770638098138186 + }, + "year": "2014" + }, + { + "venueId": "4f7adb1ae4b06b95529f778d", + "latLng": { + "lat": 26.317284806591765, + "lng": 50.12082150808962 + }, + "year": "2014" + }, + { + "venueId": "4f69d5c0e4b0cb4074cd1227", + "latLng": { + "lat": 26.30977154417424, + "lng": 50.16802567420768 + }, + "year": "2014" + }, + { + "venueId": "4d0b4a8f984a6ea874919064", + "latLng": { + "lat": 26.30450118590355, + "lng": 50.22371098986029 + }, + "year": "2014" + }, + { + "venueId": "4f5200a0e4b0b5893783b9c3", + "latLng": { + "lat": 25.29945223490338, + "lng": 45.52363020524044 + }, + "year": "2014" + }, + { + "venueId": "4e2e1e808130c05c18ce51fc", + "latLng": { + "lat": 26.290718457681457, + "lng": 50.10551830169812 + }, + "year": "2014" + }, + { + "venueId": "4e1198e8fa769d21e9ee3f9c", + "latLng": { + "lat": 22.536300502913775, + "lng": 114.04896046837796 + }, + "year": "2014" + }, + { + "venueId": "52c19246498ec518d7b8487d", + "latLng": { + "lat": 26.339650449037016, + "lng": 50.15179117962965 + }, + "year": "2014" + }, + { + "venueId": "5245819a11d28527a1f4d71d", + "latLng": { + "lat": 25.32854766733642, + "lng": 45.22561383668679 + }, + "year": "2014" + }, + { + "venueId": "4e1d7f7dfa7653a9b2e33d8f", + "latLng": { + "lat": 26.329635817723467, + "lng": 50.10930357779651 + }, + "year": "2014" + }, + { + "venueId": "4f266e9de4b0e1208393d5c2", + "latLng": { + "lat": 26.222545660935335, + "lng": 50.183822162387834 + }, + "year": "2014" + }, + { + "venueId": "4e50eebc6284416669a323e2", + "latLng": { + "lat": 26.308729903046242, + "lng": 50.21038839869766 + }, + "year": "2014" + }, + { + "venueId": "51fc7d79498e8371f0d4ba79", + "latLng": { + "lat": 26.15325201311348, + "lng": 49.91042138018409 + }, + "year": "2014" + }, + { + "venueId": "51c5edd1498e7b8d4a660946", + "latLng": { + "lat": 24.688149708390046, + "lng": 46.840428775679015 + }, + "year": "2014" + }, + { + "venueId": "4c6fab1cb5a5236af0d94d52", + "latLng": { + "lat": 26.296373244295438, + "lng": 50.11175861135319 + }, + "year": "2014" + }, + { + "venueId": "4f07d253e4b0803b6835549c", + "latLng": { + "lat": 26.327917143047262, + "lng": 50.107782410579276 + }, + "year": "2014" + }, + { + "venueId": "4bde670c0ee3a593a8e930b0", + "latLng": { + "lat": 22.547865795395243, + "lng": 114.08132843717443 + }, + "year": "2014" + }, + { + "venueId": "4f3e8806e4b046e823ebafd5", + "latLng": { + "lat": 26.288788032321985, + "lng": 50.21570600604437 + }, + "year": "2014" + }, + { + "venueId": "559908d0498e9d6d2902e5bf", + "latLng": { + "lat": 26.258553079000418, + "lng": 50.0092792077697 + }, + "year": "2014" + }, + { + "venueId": "4bf1a5d7189f0f473d83b762", + "latLng": { + "lat": 26.288561499218954, + "lng": 50.22057754017917 + }, + "year": "2014" + }, + { + "venueId": "4f142bc7e4b06784137a95e1", + "latLng": { + "lat": 25.238329874585432, + "lng": 45.24796484992922 + }, + "year": "2014" + }, + { + "venueId": "4e0dfc83ae603a50b53e019a", + "latLng": { + "lat": 26.30499173019398, + "lng": 50.16687489722827 + }, + "year": "2014" + }, + { + "venueId": "4d8f6e5ad00a6ea8e3f1ce4f", + "latLng": { + "lat": 26.331024889516705, + "lng": 50.16249309860947 + }, + "year": "2014" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2014" + }, + { + "venueId": "4f61f909e4b0dd26f1f8d769", + "latLng": { + "lat": 25.90165494472332, + "lng": 49.99390400429602 + }, + "year": "2014" + }, + { + "venueId": "521f442711d2f3aa8d0933da", + "latLng": { + "lat": 26.24383596124726, + "lng": 49.998243465200474 + }, + "year": "2014" + }, + { + "venueId": "4fbb7a6fe4b0389cf80cc008", + "latLng": { + "lat": 26.324294413405468, + "lng": 50.22777533835815 + }, + "year": "2014" + }, + { + "venueId": "505131ade4b01a3603fd3688", + "latLng": { + "lat": 25.858853263987452, + "lng": 48.88467492173439 + }, + "year": "2014" + }, + { + "venueId": "518a0d17498e76b7017fb5ea", + "latLng": { + "lat": 26.304476143130707, + "lng": 50.12999624596223 + }, + "year": "2014" + }, + { + "venueId": "4c7a3511566db60c8a63470e", + "latLng": { + "lat": 26.307774646408355, + "lng": 50.17656421479917 + }, + "year": "2014" + }, + { + "venueId": "54398148498ea4de49544cdf", + "latLng": { + "lat": 26.293715196045042, + "lng": 50.11089005028312 + }, + "year": "2014" + }, + { + "venueId": "4eea1d4882315c0968cb9893", + "latLng": { + "lat": 26.16477014364705, + "lng": 50.121916176763904 + }, + "year": "2014" + }, + { + "venueId": "4ba9fecbf964a52075423ae3", + "latLng": { + "lat": 26.311792671546957, + "lng": 50.13147779240315 + }, + "year": "2014" + }, + { + "venueId": "50dc713ae4b03fcf3a4962cd", + "latLng": { + "lat": 25.18388531020245, + "lng": 45.786378750545424 + }, + "year": "2014" + }, + { + "venueId": "52e644c2498eb9e2582f5a33", + "latLng": { + "lat": 26.345853576365485, + "lng": 50.137203430429196 + }, + "year": "2014" + }, + { + "venueId": "4c94b4566b35a14367a01ddc", + "latLng": { + "lat": 23.125700225915885, + "lng": 113.26359410676275 + }, + "year": "2014" + }, + { + "venueId": "512fd894e4b0d576b06de143", + "latLng": { + "lat": 26.15442383927931, + "lng": 49.437607556242355 + }, + "year": "2014" + }, + { + "venueId": "526be41611d29257ca31e4c7", + "latLng": { + "lat": 26.281769935052697, + "lng": 50.19039225576594 + }, + "year": "2014" + }, + { + "venueId": "4ebd69da0aaf88633bc4912c", + "latLng": { + "lat": 26.304869525378194, + "lng": 50.19661615012696 + }, + "year": "2014" + }, + { + "venueId": "4ed3b7952c5bc3505ad3a264", + "latLng": { + "lat": 26.30279468949949, + "lng": 50.21222895673331 + }, + "year": "2014" + }, + { + "venueId": "4bc3288fb492d13a6851a860", + "latLng": { + "lat": 26.303005391805176, + "lng": 50.207743322414714 + }, + "year": "2014" + }, + { + "venueId": "5236c4e511d2d03ba2d9a100", + "latLng": { + "lat": 26.29725500561097, + "lng": 50.10963100399244 + }, + "year": "2014" + }, + { + "venueId": "53969f1f498e574c69d84f63", + "latLng": { + "lat": 26.30607197451278, + "lng": 50.112591961584975 + }, + "year": "2014" + }, + { + "venueId": "4e350bc22271b2cf0673e39f", + "latLng": { + "lat": 26.308494489627375, + "lng": 50.136806636343714 + }, + "year": "2014" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2014" + }, + { + "venueId": "545d0f77498e6198a0fbe574", + "latLng": { + "lat": 26.18165572591588, + "lng": 49.36824752546067 + }, + "year": "2014" + }, + { + "venueId": "4f0d9d73e4b0354497a04f5b", + "latLng": { + "lat": 26.29495056956359, + "lng": 50.12969994101414 + }, + "year": "2014" + }, + { + "venueId": "4e1bf68b227161264139c735", + "latLng": { + "lat": 26.313741645319624, + "lng": 50.11762290088869 + }, + "year": "2014" + }, + { + "venueId": "51568211e4b00656ef1bb974", + "latLng": { + "lat": 26.30490080999642, + "lng": 50.113460625488806 + }, + "year": "2014" + }, + { + "venueId": "519e50e3498e17f327562809", + "latLng": { + "lat": 26.332189788745612, + "lng": 50.151379218536995 + }, + "year": "2014" + }, + { + "venueId": "503f893fe4b05e2f100050f3", + "latLng": { + "lat": 23.14180188785288, + "lng": 113.27283472623932 + }, + "year": "2014" + }, + { + "venueId": "4b9f7103f964a520d82237e3", + "latLng": { + "lat": 26.30274816274811, + "lng": 50.20844732390796 + }, + "year": "2014" + }, + { + "venueId": "4ba629a2f964a5203b3839e3", + "latLng": { + "lat": 26.289476588992812, + "lng": 50.19213669190529 + }, + "year": "2014" + }, + { + "venueId": "520add2911d2cf6012386c3e", + "latLng": { + "lat": 23.141182167800263, + "lng": 113.27485264222084 + }, + "year": "2014" + }, + { + "venueId": "51475255e4b0ab7ca3335f54", + "latLng": { + "lat": 26.472977557479055, + "lng": 50.12339250433598 + }, + "year": "2014" + }, + { + "venueId": "4f44f020e4b01cb12c76b81b", + "latLng": { + "lat": 26.34597685916743, + "lng": 50.135124057327836 + }, + "year": "2014" + }, + { + "venueId": "4ebd26a5b6341bd789167bd9", + "latLng": { + "lat": 26.304173400548905, + "lng": 50.12980038320734 + }, + "year": "2014" + }, + { + "venueId": "532c9dfa498e86086477d3b0", + "latLng": { + "lat": 26.36077667281101, + "lng": 50.05132545164137 + }, + "year": "2014" + }, + { + "venueId": "5261f2fe11d2a0320afd14fc", + "latLng": { + "lat": 26.330708575450448, + "lng": 50.08825160738374 + }, + "year": "2014" + }, + { + "venueId": "4bc0d9ee74a9a59330ced0f6", + "latLng": { + "lat": 22.190295152453512, + "lng": 113.54089484327581 + }, + "year": "2014" + }, + { + "venueId": "4bb4d6092ba29c748058ef2d", + "latLng": { + "lat": 26.15736082703084, + "lng": 50.19403200047284 + }, + "year": "2014" + }, + { + "venueId": "4be7908fd837c9b68b68a406", + "latLng": { + "lat": 26.312087844009724, + "lng": 50.13003140088259 + }, + "year": "2014" + }, + { + "venueId": "50420367e4b01555a64fd98c", + "latLng": { + "lat": 26.32379154286961, + "lng": 50.16385483936683 + }, + "year": "2014" + }, + { + "venueId": "4b4bd27bf964a520d2a826e3", + "latLng": { + "lat": 22.543952242374505, + "lng": 114.05456543143374 + }, + "year": "2014" + }, + { + "venueId": "4f8ad26ee4b005c392637b63", + "latLng": { + "lat": 23.141695258561136, + "lng": 113.27344533545279 + }, + "year": "2014" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2014" + }, + { + "venueId": "4dcfd082d164679b8d215237", + "latLng": { + "lat": 26.33253421684756, + "lng": 50.09028420381015 + }, + "year": "2014" + }, + { + "venueId": "4f7693d1e4b0557b21531d9c", + "latLng": { + "lat": 26.328938624599672, + "lng": 50.107576579003876 + }, + "year": "2014" + }, + { + "venueId": "4fabddcbe4b03a9d6aed2100", + "latLng": { + "lat": 26.30515178188562, + "lng": 50.18460631378367 + }, + "year": "2014" + }, + { + "venueId": "4abd4aecf964a520838920e3", + "latLng": { + "lat": 36.11341934092269, + "lng": -115.1702142111537 + }, + "year": "2014" + }, + { + "venueId": "4bf76254b182c9b69cc5755a", + "latLng": { + "lat": 22.21955389824449, + "lng": 113.54875958361926 + }, + "year": "2014" + }, + { + "venueId": "4e8acb728b810d8892794333", + "latLng": { + "lat": 26.301840496358768, + "lng": 50.137178316802604 + }, + "year": "2014" + }, + { + "venueId": "50507fa9e4b0c7d0d9449b69", + "latLng": { + "lat": 26.30454596593319, + "lng": 50.13077468110844 + }, + "year": "2014" + }, + { + "venueId": "4be55784d4f7c9b678432520", + "latLng": { + "lat": 26.29064759807853, + "lng": 50.21943072100015 + }, + "year": "2014" + }, + { + "venueId": "4e173cca2271b0e971f0155d", + "latLng": { + "lat": 26.30427450868123, + "lng": 50.130101710784395 + }, + "year": "2014" + }, + { + "venueId": "4c11cc466e5dc9b6efccb02d", + "latLng": { + "lat": 22.190295743166015, + "lng": 113.5442546639816 + }, + "year": "2014" + }, + { + "venueId": "4f7c5f707bebaeacb8c8d5a8", + "latLng": { + "lat": 26.294784896636607, + "lng": 50.19023641519891 + }, + "year": "2014" + }, + { + "venueId": "504a1242e4b0cf8db349ccae", + "latLng": { + "lat": 26.303463572744928, + "lng": 50.126807198722936 + }, + "year": "2014" + }, + { + "venueId": "53751feb498ed7ba8fbf216d", + "latLng": { + "lat": 26.348492066875174, + "lng": 50.14312551358369 + }, + "year": "2014" + }, + { + "venueId": "4b6c1502f964a520df222ce3", + "latLng": { + "lat": 26.2327832867021, + "lng": 50.537014666450645 + }, + "year": "2014" + }, + { + "venueId": "514431bfe4b0c80a2d1ec3ee", + "latLng": { + "lat": 26.345137667731013, + "lng": 50.138308440283055 + }, + "year": "2014" + }, + { + "venueId": "4b6e4ba9f964a520cfb62ce3", + "latLng": { + "lat": 23.15233203172029, + "lng": 113.31895452014493 + }, + "year": "2014" + }, + { + "venueId": "50cf47b6e4b01c69f6f9a22e", + "latLng": { + "lat": 26.304668431973248, + "lng": 50.22241117538641 + }, + "year": "2014" + }, + { + "venueId": "4e84b172f790320b38367e8d", + "latLng": { + "lat": 26.3049393032416, + "lng": 50.130357840401246 + }, + "year": "2014" + }, + { + "venueId": "52092e2011d21d83dd5ba855", + "latLng": { + "lat": 26.11960364593632, + "lng": 50.10551830169812 + }, + "year": "2014" + }, + { + "venueId": "51913aca498e2fe60905351d", + "latLng": { + "lat": 26.309668961120185, + "lng": 50.21193727989801 + }, + "year": "2014" + }, + { + "venueId": "4dc0081b81545e1cc7dad0d5", + "latLng": { + "lat": 26.28809171952513, + "lng": 50.21127841912096 + }, + "year": "2014" + }, + { + "venueId": "52cc507c498e59b93dda84cb", + "latLng": { + "lat": 26.320382266884046, + "lng": 50.21823881576281 + }, + "year": "2014" + }, + { + "venueId": "4bc8f208762beee1feba3d38", + "latLng": { + "lat": 26.242373183695502, + "lng": 50.592012605176606 + }, + "year": "2014" + }, + { + "venueId": "4bb49541f038a593fe29daf0", + "latLng": { + "lat": 26.30809627898332, + "lng": 50.12880593434926 + }, + "year": "2014" + }, + { + "venueId": "4fc27603e4b0327852046048", + "latLng": { + "lat": 26.319136003760914, + "lng": 50.20954859968952 + }, + "year": "2014" + }, + { + "venueId": "5152cc42e4b032fd5fecb8b2", + "latLng": { + "lat": 26.275629847644456, + "lng": 49.7358715343865 + }, + "year": "2014" + }, + { + "venueId": "4eef4c668b81bbbf5f40bf03", + "latLng": { + "lat": 26.25159969096426, + "lng": 50.20016073598679 + }, + "year": "2014" + }, + { + "venueId": "53a69fad498e34ef9a5b93fa", + "latLng": { + "lat": 26.305538304189035, + "lng": 50.11289830284868 + }, + "year": "2014" + }, + { + "venueId": "4ff31255e4b055f8c3dfb9cf", + "latLng": { + "lat": 24.79699731297359, + "lng": 46.75435980612582 + }, + "year": "2014" + }, + { + "venueId": "4be8b8e8c5220f475f25aaca", + "latLng": { + "lat": 26.308791955637272, + "lng": 50.12899685031654 + }, + "year": "2014" + }, + { + "venueId": "4bf803fb5efe2d7f20e96934", + "latLng": { + "lat": 22.543239286274503, + "lng": 114.12083005278622 + }, + "year": "2014" + }, + { + "venueId": "4c8f2c6bb3bcb60c9b855f27", + "latLng": { + "lat": 23.10705472136337, + "lng": 113.24523462129318 + }, + "year": "2014" + }, + { + "venueId": "4ba49322f964a52031a538e3", + "latLng": { + "lat": 26.2908415665022, + "lng": 50.180459473813144 + }, + "year": "2014" + }, + { + "venueId": "4ba29407f964a5200d0638e3", + "latLng": { + "lat": 26.128279902466875, + "lng": 50.079524765323974 + }, + "year": "2014" + }, + { + "venueId": "4ee983f59adfcff6c5c9707c", + "latLng": { + "lat": 26.287458567477074, + "lng": 50.221286719488916 + }, + "year": "2014" + }, + { + "venueId": "4d92deafd176a1cdd1a62cf0", + "latLng": { + "lat": 26.312148371030535, + "lng": 50.13152299269361 + }, + "year": "2014" + }, + { + "venueId": "503c6c67e4b0c1fd76669762", + "latLng": { + "lat": 26.308067272266452, + "lng": 50.12764593462509 + }, + "year": "2014" + }, + { + "venueId": "517a4b14e4b0e221632e223f", + "latLng": { + "lat": 26.315924984648976, + "lng": 50.13597287494295 + }, + "year": "2014" + }, + { + "venueId": "503cb786582f904565100750", + "latLng": { + "lat": 26.45346562020875, + "lng": 50.065415939075656 + }, + "year": "2014" + }, + { + "venueId": "537ba630498ebbb9a9fd2989", + "latLng": { + "lat": 26.3498872430642, + "lng": 50.13295435263541 + }, + "year": "2014" + }, + { + "venueId": "52020433498e88b58c5baa2b", + "latLng": { + "lat": 24.674868761246277, + "lng": 43.69251304570538 + }, + "year": "2014" + }, + { + "venueId": "52ea452111d23d2f58fe5a7c", + "latLng": { + "lat": 25.9571103610472, + "lng": 49.792836037756906 + }, + "year": "2014" + }, + { + "venueId": "528f372d11d2564fda555a21", + "latLng": { + "lat": 25.294165548589714, + "lng": 45.5187398626056 + }, + "year": "2014" + }, + { + "venueId": "51c3129a498ebc3e90ba7210", + "latLng": { + "lat": 26.309697212416488, + "lng": 50.17034739534456 + }, + "year": "2014" + }, + { + "venueId": "4e5bbd0d52b1b78b81ba30f0", + "latLng": { + "lat": 26.30892829672776, + "lng": 50.129654742081435 + }, + "year": "2014" + }, + { + "venueId": "4b0587f2f964a520c0a822e3", + "latLng": { + "lat": 25.118361148192754, + "lng": 55.20031436698282 + }, + "year": "2015" + }, + { + "venueId": "4b5195c6f964a520255027e3", + "latLng": { + "lat": 26.233456253375337, + "lng": 50.55364953037245 + }, + "year": "2015" + }, + { + "venueId": "52a0a3b611d2c290f46210c4", + "latLng": { + "lat": 26.309080509393155, + "lng": 50.129308218049104 + }, + "year": "2015" + }, + { + "venueId": "4c7a117b81bca093f497ff14", + "latLng": { + "lat": 26.392064669436575, + "lng": 50.18886897845275 + }, + "year": "2015" + }, + { + "venueId": "4fdd78abe4b049c33bc0aa78", + "latLng": { + "lat": 26.30569478902117, + "lng": 50.11396772448491 + }, + "year": "2015" + }, + { + "venueId": "4eba66a68b8189688452c67f", + "latLng": { + "lat": 26.190178600731116, + "lng": 50.31133175292003 + }, + "year": "2015" + }, + { + "venueId": "4d5a6892296d548138fb62b1", + "latLng": { + "lat": 21.41930118810353, + "lng": 39.82540601592872 + }, + "year": "2015" + }, + { + "venueId": "5218282711d2b8e83502a200", + "latLng": { + "lat": 26.339724351566215, + "lng": 50.15180122749607 + }, + "year": "2015" + }, + { + "venueId": "53907d0c498eb0ad507fff5b", + "latLng": { + "lat": 26.396904980597615, + "lng": 50.11340602473597 + }, + "year": "2015" + }, + { + "venueId": "4c271761a852c9286ac3e76c", + "latLng": { + "lat": 26.38421458419366, + "lng": 50.16756335070863 + }, + "year": "2015" + }, + { + "venueId": "52179296498efe47d6f71cd1", + "latLng": { + "lat": 26.302434579020183, + "lng": 50.12180068326516 + }, + "year": "2015" + }, + { + "venueId": "4e3315861838df3b5f69f0bd", + "latLng": { + "lat": 36.489110963431386, + "lng": -4.990041002915952 + }, + "year": "2015" + }, + { + "venueId": "4c3856291a38ef3be19a9221", + "latLng": { + "lat": 21.421399567491434, + "lng": 39.82562212568039 + }, + "year": "2015" + }, + { + "venueId": "51494fa3e4b0631e06a3fb64", + "latLng": { + "lat": 25.079405539841247, + "lng": 55.13560843361757 + }, + "year": "2015" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2015" + }, + { + "venueId": "525446c7498e764f985d08e3", + "latLng": { + "lat": 26.323218317973797, + "lng": 50.161829826332976 + }, + "year": "2015" + }, + { + "venueId": "4e42e8b6628484fb528fc142", + "latLng": { + "lat": 26.389602274542067, + "lng": 50.084121380946925 + }, + "year": "2015" + }, + { + "venueId": "51a3d69f498eb2acc2b3e70c", + "latLng": { + "lat": 26.291260338597695, + "lng": 50.66551206980388 + }, + "year": "2015" + }, + { + "venueId": "4b83fa92f964a520621931e3", + "latLng": { + "lat": 26.30160874333941, + "lng": 50.22330868021525 + }, + "year": "2015" + }, + { + "venueId": "53c6cc79498e2e0df8ce025d", + "latLng": { + "lat": 26.300992815989332, + "lng": 50.17202584572887 + }, + "year": "2015" + }, + { + "venueId": "4bb827f153649c748ad246fb", + "latLng": { + "lat": 26.31398782780471, + "lng": 50.115991847985676 + }, + "year": "2015" + }, + { + "venueId": "4d9d84cfa1ec8cfac6d2044a", + "latLng": { + "lat": 26.459211827011064, + "lng": 50.094861559687864 + }, + "year": "2015" + }, + { + "venueId": "4d4415f3befe236ae9e3f0e2", + "latLng": { + "lat": 29.239896960593907, + "lng": 47.97142995743079 + }, + "year": "2015" + }, + { + "venueId": "5007edfde4b0a467c6820bb0", + "latLng": { + "lat": 26.2986346391809, + "lng": 50.21935032737157 + }, + "year": "2015" + }, + { + "venueId": "4fbca9a5e4b0742d2e439b77", + "latLng": { + "lat": 26.326369944888803, + "lng": 50.1091228430593 + }, + "year": "2015" + }, + { + "venueId": "52b86c01498e67f75a579350", + "latLng": { + "lat": 26.2859034483595, + "lng": 50.21259104026267 + }, + "year": "2015" + }, + { + "venueId": "513b34c5e4b01098827a80a2", + "latLng": { + "lat": 26.337277581090607, + "lng": 50.20283557359873 + }, + "year": "2015" + }, + { + "venueId": "4b8399a6f964a520f00a31e3", + "latLng": { + "lat": 36.677177455438375, + "lng": -4.492075818587892 + }, + "year": "2015" + }, + { + "venueId": "4f45199fe4b0f766d4f43112", + "latLng": { + "lat": 26.19815212061389, + "lng": 50.47721145597968 + }, + "year": "2015" + }, + { + "venueId": "4e1d7f7dfa7653a9b2e33d8f", + "latLng": { + "lat": 26.329635817723467, + "lng": 50.10930357779651 + }, + "year": "2015" + }, + { + "venueId": "4c6fab1cb5a5236af0d94d52", + "latLng": { + "lat": 26.296373244295438, + "lng": 50.11175861135319 + }, + "year": "2015" + }, + { + "venueId": "50a07b14e4b04eb23e41983c", + "latLng": { + "lat": 26.32641853499799, + "lng": 50.10943912920308 + }, + "year": "2015" + }, + { + "venueId": "4bd538266f649521f9d06eec", + "latLng": { + "lat": 26.31687814256076, + "lng": 50.217569906772134 + }, + "year": "2015" + }, + { + "venueId": "56002b2b498ec3502c910542", + "latLng": { + "lat": 26.310534635458595, + "lng": 50.16985992706384 + }, + "year": "2015" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2015" + }, + { + "venueId": "5311126ee4b03443dd848c77", + "latLng": { + "lat": 29.341845632501528, + "lng": 47.975216256353654 + }, + "year": "2015" + }, + { + "venueId": "4c1113a83ce120a1a014091c", + "latLng": { + "lat": 25.19839863736877, + "lng": 55.27968532440975 + }, + "year": "2015" + }, + { + "venueId": "515dc020e4b020711d87a713", + "latLng": { + "lat": 29.3208510796479, + "lng": 48.08861212873682 + }, + "year": "2015" + }, + { + "venueId": "4d7cdab05a396dcb1da17cfb", + "latLng": { + "lat": 26.44511385093401, + "lng": 50.103128779643065 + }, + "year": "2015" + }, + { + "venueId": "4f44f020e4b01cb12c76b81b", + "latLng": { + "lat": 26.34597685916743, + "lng": 50.135124057327836 + }, + "year": "2015" + }, + { + "venueId": "5263b27e11d28da50a48574d", + "latLng": { + "lat": 26.339753661799335, + "lng": 50.15166558143961 + }, + "year": "2015" + }, + { + "venueId": "5049e7c0e4b04f60bc0b7d06", + "latLng": { + "lat": 26.404578559069837, + "lng": 50.035623622811535 + }, + "year": "2015" + }, + { + "venueId": "4fe1be91e4b079e195ecc53b", + "latLng": { + "lat": 25.0777285240236, + "lng": 55.1361688676222 + }, + "year": "2015" + }, + { + "venueId": "4f771bc1e4b08f9be53a494d", + "latLng": { + "lat": 26.322295222564968, + "lng": 50.16469903345075 + }, + "year": "2015" + }, + { + "venueId": "4cad704d628cb1f759aa2b15", + "latLng": { + "lat": 29.240762510883126, + "lng": 47.9711108243839 + }, + "year": "2015" + }, + { + "venueId": "4db578930437fa536a40d5d5", + "latLng": { + "lat": 29.355086142047174, + "lng": 47.95440742122598 + }, + "year": "2015" + }, + { + "venueId": "4b0587f3f964a520cfa822e3", + "latLng": { + "lat": 25.196895543115847, + "lng": 55.27755860256478 + }, + "year": "2015" + }, + { + "venueId": "4bdf3036e75c0f47f033ca03", + "latLng": { + "lat": 24.67170442126075, + "lng": 46.67724203577223 + }, + "year": "2015" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2015" + }, + { + "venueId": "4fabddcbe4b03a9d6aed2100", + "latLng": { + "lat": 26.30515178188562, + "lng": 50.18460631378367 + }, + "year": "2015" + }, + { + "venueId": "522dfa5f11d2025fbf942a8b", + "latLng": { + "lat": 26.37046737447402, + "lng": 50.10324917905471 + }, + "year": "2015" + }, + { + "venueId": "553ba7cc498e683f7ce4cc1b", + "latLng": { + "lat": 26.294670401282765, + "lng": 50.18564683795794 + }, + "year": "2015" + }, + { + "venueId": "4e8acb728b810d8892794333", + "latLng": { + "lat": 26.301840496358768, + "lng": 50.137178316802604 + }, + "year": "2015" + }, + { + "venueId": "55199bee498e6ccba1588b64", + "latLng": { + "lat": 26.372556953825068, + "lng": 50.10253996329563 + }, + "year": "2015" + }, + { + "venueId": "4e173cca2271b0e971f0155d", + "latLng": { + "lat": 26.30427450868123, + "lng": 50.130101710784395 + }, + "year": "2015" + }, + { + "venueId": "5140f41fe4b0132fe3483acc", + "latLng": { + "lat": 26.34344397736361, + "lng": 50.15206247260611 + }, + "year": "2015" + }, + { + "venueId": "52e9fc86498ea73bbdcc8477", + "latLng": { + "lat": 26.294402706582463, + "lng": 50.18563175777046 + }, + "year": "2015" + }, + { + "venueId": "4bb5dcbb2ea19521f8d1aa2f", + "latLng": { + "lat": 25.17408978827381, + "lng": 55.41614769257405 + }, + "year": "2015" + }, + { + "venueId": "4bb49541f038a593fe29daf0", + "latLng": { + "lat": 26.30809627898332, + "lng": 50.12880593434926 + }, + "year": "2015" + }, + { + "venueId": "50691c37e4b08e43d0c64c98", + "latLng": { + "lat": 24.669823307249125, + "lng": 46.68153843848286 + }, + "year": "2015" + }, + { + "venueId": "53a69fad498e34ef9a5b93fa", + "latLng": { + "lat": 26.305538304189035, + "lng": 50.11289830284868 + }, + "year": "2015" + }, + { + "venueId": "4b08d1d7f964a520a11223e3", + "latLng": { + "lat": 25.24999950612992, + "lng": 55.351468610557646 + }, + "year": "2015" + }, + { + "venueId": "55bfa91e498e81a744c870e4", + "latLng": { + "lat": 36.50283893501005, + "lng": -4.924441190965748 + }, + "year": "2015" + }, + { + "venueId": "4ba49322f964a52031a538e3", + "latLng": { + "lat": 26.2908415665022, + "lng": 50.180459473813144 + }, + "year": "2015" + }, + { + "venueId": "524153fb498e6088822c2993", + "latLng": { + "lat": 26.3322115313963, + "lng": 50.12399007571081 + }, + "year": "2015" + }, + { + "venueId": "4ba29407f964a5200d0638e3", + "latLng": { + "lat": 26.128279902466875, + "lng": 50.079524765323974 + }, + "year": "2015" + }, + { + "venueId": "4eec4e67f9ab8c5a0053a94d", + "latLng": { + "lat": 26.30650595061844, + "lng": 50.12098721354662 + }, + "year": "2015" + }, + { + "venueId": "4b4f73d7f964a520430727e3", + "latLng": { + "lat": 25.07016167569571, + "lng": 55.30735368044428 + }, + "year": "2015" + }, + { + "venueId": "4b852db7f964a520894f31e3", + "latLng": { + "lat": 36.50384337784992, + "lng": -4.925414739362485 + }, + "year": "2015" + }, + { + "venueId": "4ffa349de4b04619c8a779e9", + "latLng": { + "lat": 26.30503444125578, + "lng": 50.1282535918652 + }, + "year": "2015" + }, + { + "venueId": "4cc3237ab2beb1f7d99e144c", + "latLng": { + "lat": 24.74729286425198, + "lng": 46.68416071953879 + }, + "year": "2016" + }, + { + "venueId": "4b5195c6f964a520255027e3", + "latLng": { + "lat": 26.233456253375337, + "lng": 50.55364953037245 + }, + "year": "2016" + }, + { + "venueId": "55a43c8f498e1f3626a54d49", + "latLng": { + "lat": 26.302667130132736, + "lng": 50.20755215912682 + }, + "year": "2016" + }, + { + "venueId": "57265e15498e66bc3a4b0048", + "latLng": { + "lat": 25.927259002603126, + "lng": 49.65872803425958 + }, + "year": "2016" + }, + { + "venueId": "505cd828e4b0475262a0ef7e", + "latLng": { + "lat": 25.40437973343558, + "lng": 47.95989402131934 + }, + "year": "2016" + }, + { + "venueId": "4c7a117b81bca093f497ff14", + "latLng": { + "lat": 26.392064669436575, + "lng": 50.18886897845275 + }, + "year": "2016" + }, + { + "venueId": "5256e0c111d2b76cc462cc85", + "latLng": { + "lat": 26.185634607607323, + "lng": 50.321630370392924 + }, + "year": "2016" + }, + { + "venueId": "4c460278f1d80f470aa9a23c", + "latLng": { + "lat": 24.802587585269112, + "lng": 46.796740075643854 + }, + "year": "2016" + }, + { + "venueId": "4fdd78abe4b049c33bc0aa78", + "latLng": { + "lat": 26.30569478902117, + "lng": 50.11396772448491 + }, + "year": "2016" + }, + { + "venueId": "4eba66a68b8189688452c67f", + "latLng": { + "lat": 26.190178600731116, + "lng": 50.31133175292003 + }, + "year": "2016" + }, + { + "venueId": "51a38cd8498eeb0fcbf77be2", + "latLng": { + "lat": 26.29436322937352, + "lng": 50.10764686287786 + }, + "year": "2016" + }, + { + "venueId": "4c2cce118ef52d7f987a33ba", + "latLng": { + "lat": 26.285066930495162, + "lng": 50.19516812985963 + }, + "year": "2016" + }, + { + "venueId": "53b45754498ef6d2fb697baf", + "latLng": { + "lat": 25.941584988526934, + "lng": 49.67132105869799 + }, + "year": "2016" + }, + { + "venueId": "4c8f1e02d2aea093ac01d469", + "latLng": { + "lat": 29.347317004416528, + "lng": 48.09080600729892 + }, + "year": "2016" + }, + { + "venueId": "4b335a36f964a520d51825e3", + "latLng": { + "lat": 48.134847779406265, + "lng": 11.57516951344348 + }, + "year": "2016" + }, + { + "venueId": "5218282711d2b8e83502a200", + "latLng": { + "lat": 26.339724351566215, + "lng": 50.15180122749607 + }, + "year": "2016" + }, + { + "venueId": "4b4cd8a3f964a5206fc126e3", + "latLng": { + "lat": 26.269622074639884, + "lng": 50.62522501539518 + }, + "year": "2016" + }, + { + "venueId": "4f62541fe4b0bedb2ada7e1d", + "latLng": { + "lat": 29.33367011982609, + "lng": 48.092964006400976 + }, + "year": "2016" + }, + { + "venueId": "5057fc41e4b0dd76080e381a", + "latLng": { + "lat": 26.426347349374172, + "lng": 50.06998639681754 + }, + "year": "2016" + }, + { + "venueId": "5112befee4b0117f5d506347", + "latLng": { + "lat": 26.345157814510486, + "lng": 50.01833176569119 + }, + "year": "2016" + }, + { + "venueId": "4c99b1d7971676b0daac50e2", + "latLng": { + "lat": 46.685820953084544, + "lng": 7.856602940490155 + }, + "year": "2016" + }, + { + "venueId": "4c5d792b7f661b8d3e544b1c", + "latLng": { + "lat": 26.405623623412435, + "lng": 50.06974055659967 + }, + "year": "2016" + }, + { + "venueId": "50c02769498ef71d05f64e47", + "latLng": { + "lat": 24.67925851460209, + "lng": 46.76898961972761 + }, + "year": "2016" + }, + { + "venueId": "510d744be4b04d5bac4eb4f0", + "latLng": { + "lat": 26.384770968358236, + "lng": 50.0964978476002 + }, + "year": "2016" + }, + { + "venueId": "4ea84077cc21adeb993aab2a", + "latLng": { + "lat": 26.38071771718471, + "lng": 50.10365085204708 + }, + "year": "2016" + }, + { + "venueId": "568a063f498e10962ec24e3e", + "latLng": { + "lat": 24.792228375981296, + "lng": 46.789985379309435 + }, + "year": "2016" + }, + { + "venueId": "4bc1d229b492d13a2579a660", + "latLng": { + "lat": 29.341030658302742, + "lng": 48.07399892154987 + }, + "year": "2016" + }, + { + "venueId": "52fa3bbb498e148cb85d853d", + "latLng": { + "lat": 26.184755719157252, + "lng": 50.32379175591006 + }, + "year": "2016" + }, + { + "venueId": "55470eb4498ef0b1d3bc0005", + "latLng": { + "lat": 26.37272998084636, + "lng": 50.12346782813464 + }, + "year": "2016" + }, + { + "venueId": "4ef483e44fc69ad418f25960", + "latLng": { + "lat": 26.283995701594456, + "lng": 50.21484908188454 + }, + "year": "2016" + }, + { + "venueId": "564f6a62498eaef222afb383", + "latLng": { + "lat": 26.309415191109476, + "lng": 50.222659834771896 + }, + "year": "2016" + }, + { + "venueId": "56e113c0498eae465775bee5", + "latLng": { + "lat": 26.211121404246633, + "lng": 50.26701850449351 + }, + "year": "2016" + }, + { + "venueId": "4eac443e29c2152dec1a1ab8", + "latLng": { + "lat": 26.18342215359184, + "lng": 50.32919787503804 + }, + "year": "2016" + }, + { + "venueId": "52179296498efe47d6f71cd1", + "latLng": { + "lat": 26.302434579020183, + "lng": 50.12180068326516 + }, + "year": "2016" + }, + { + "venueId": "500f1605e4b0ea1f809599a5", + "latLng": { + "lat": 24.692215350416017, + "lng": 46.78553789055038 + }, + "year": "2016" + }, + { + "venueId": "5205853511d245fc8278de64", + "latLng": { + "lat": 26.18520882605507, + "lng": 49.47278796106136 + }, + "year": "2016" + }, + { + "venueId": "52656b04498e3d9d695dac48", + "latLng": { + "lat": 26.34686095572835, + "lng": 50.135455546818356 + }, + "year": "2016" + }, + { + "venueId": "517fdf4ce4b01587627876e0", + "latLng": { + "lat": 26.297934268193018, + "lng": 50.17674515034186 + }, + "year": "2016" + }, + { + "venueId": "53abaf81498e6076eedfa33b", + "latLng": { + "lat": 26.172350552557337, + "lng": 50.457875549339455 + }, + "year": "2016" + }, + { + "venueId": "5173722be4b0773c643fd0fb", + "latLng": { + "lat": 24.676355079586475, + "lng": 46.778080530385864 + }, + "year": "2016" + }, + { + "venueId": "4ca0d39f0e9bb1f79ecafb5f", + "latLng": { + "lat": 26.23285234455635, + "lng": 50.53824316843058 + }, + "year": "2016" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2016" + }, + { + "venueId": "4bc8f20a762beee100bb3d38", + "latLng": { + "lat": 26.232073492910025, + "lng": 50.54107935333878 + }, + "year": "2016" + }, + { + "venueId": "4f4885bfe4b0b0b99a3bf931", + "latLng": { + "lat": 26.32715324520854, + "lng": 50.103791410770576 + }, + "year": "2016" + }, + { + "venueId": "526e1845498ee3fd840deebd", + "latLng": { + "lat": 26.441256486561183, + "lng": 50.03027861113381 + }, + "year": "2016" + }, + { + "venueId": "525446c7498e764f985d08e3", + "latLng": { + "lat": 26.323218317973797, + "lng": 50.161829826332976 + }, + "year": "2016" + }, + { + "venueId": "4f5f70f0e4b080c3667cb9bf", + "latLng": { + "lat": 24.69199429686376, + "lng": 46.78214936666919 + }, + "year": "2016" + }, + { + "venueId": "4e42e8b6628484fb528fc142", + "latLng": { + "lat": 26.389602274542067, + "lng": 50.084121380946925 + }, + "year": "2016" + }, + { + "venueId": "4ff46e4de4b002d4d23c6773", + "latLng": { + "lat": 26.334182618968818, + "lng": 50.21209820487602 + }, + "year": "2016" + }, + { + "venueId": "53e91a6d498e82b6e271e52b", + "latLng": { + "lat": 26.33450013619231, + "lng": 50.15474029973756 + }, + "year": "2016" + }, + { + "venueId": "4db8cea58154ce84dc1b91c8", + "latLng": { + "lat": 26.296620499851496, + "lng": 50.220642925160675 + }, + "year": "2016" + }, + { + "venueId": "54a6e122498e959269b44ff7", + "latLng": { + "lat": 26.422382816990062, + "lng": 50.039580038613266 + }, + "year": "2016" + }, + { + "venueId": "56fc22a0498e7909c632a5ff", + "latLng": { + "lat": 26.23286588729945, + "lng": 50.541170437597465 + }, + "year": "2016" + }, + { + "venueId": "4da42cc3bf22a1436f40d7f8", + "latLng": { + "lat": 26.302751558613554, + "lng": 50.173126463174086 + }, + "year": "2016" + }, + { + "venueId": "4b83fa92f964a520621931e3", + "latLng": { + "lat": 26.30160874333941, + "lng": 50.22330868021525 + }, + "year": "2016" + }, + { + "venueId": "4eb51fc08b81a81f90655bca", + "latLng": { + "lat": 29.340283681900917, + "lng": 48.07001673450346 + }, + "year": "2016" + }, + { + "venueId": "52e5641f498e0872004c5485", + "latLng": { + "lat": 24.691060777263232, + "lng": 46.78507473155266 + }, + "year": "2016" + }, + { + "venueId": "4c9f79370df79c74c7d8241a", + "latLng": { + "lat": 26.304031129618462, + "lng": 50.129619587379274 + }, + "year": "2016" + }, + { + "venueId": "4eb3b78893ad23656f6566e5", + "latLng": { + "lat": 24.69573447747974, + "lng": 46.79253305536127 + }, + "year": "2016" + }, + { + "venueId": "561553f2498e0842cc93dff2", + "latLng": { + "lat": 29.30365780750803, + "lng": 47.94055062958228 + }, + "year": "2016" + }, + { + "venueId": "4e101aee6284edb6bacc113d", + "latLng": { + "lat": 26.322390286836733, + "lng": 50.13441580282223 + }, + "year": "2016" + }, + { + "venueId": "4d7371704ab5224b1e9ecd97", + "latLng": { + "lat": 26.232772669093116, + "lng": 50.55450414649032 + }, + "year": "2016" + }, + { + "venueId": "51498343e4b090d87d667f35", + "latLng": { + "lat": 26.444043753944662, + "lng": 50.052163064084 + }, + "year": "2016" + }, + { + "venueId": "4bb827f153649c748ad246fb", + "latLng": { + "lat": 26.31398782780471, + "lng": 50.115991847985676 + }, + "year": "2016" + }, + { + "venueId": "4d942292561acbffe152e1a5", + "latLng": { + "lat": 25.937451177280188, + "lng": 49.67505404089515 + }, + "year": "2016" + }, + { + "venueId": "4e46d62514959d51c168e345", + "latLng": { + "lat": 24.6959271667007, + "lng": 46.73102789097983 + }, + "year": "2016" + }, + { + "venueId": "52237ce611d29d701234ae99", + "latLng": { + "lat": 26.417736377521408, + "lng": 50.064312257934134 + }, + "year": "2016" + }, + { + "venueId": "50ab6a00e4b00f8f08a3313d", + "latLng": { + "lat": 26.282462319786557, + "lng": 50.21261618503204 + }, + "year": "2016" + }, + { + "venueId": "4eaac2ae82312ec2f6a0441e", + "latLng": { + "lat": 26.316731347139363, + "lng": 50.12857499980806 + }, + "year": "2016" + }, + { + "venueId": "50ded1d4e4b0a6d1bf29b3d3", + "latLng": { + "lat": 46.77065789325464, + "lng": 8.425851573344683 + }, + "year": "2016" + }, + { + "venueId": "567f37ca498e029da874e496", + "latLng": { + "lat": 24.6879109472757, + "lng": 46.77802389905725 + }, + "year": "2016" + }, + { + "venueId": "5082dc21e4b03db17661ac79", + "latLng": { + "lat": 26.28802806793653, + "lng": 50.21046375173772 + }, + "year": "2016" + }, + { + "venueId": "4e91de0b30f81ec6000305c0", + "latLng": { + "lat": 24.75950333957693, + "lng": 46.67384196121786 + }, + "year": "2016" + }, + { + "venueId": "4e90a3ed550342b5a45155c4", + "latLng": { + "lat": 47.0535460037306, + "lng": 8.294574981948378 + }, + "year": "2016" + }, + { + "venueId": "4bc491d074a9a593b1fad5f6", + "latLng": { + "lat": 26.34047378232584, + "lng": 50.17974071694286 + }, + "year": "2016" + }, + { + "venueId": "4b3a31d4f964a5201e6225e3", + "latLng": { + "lat": 26.31366230858942, + "lng": 50.14868144480703 + }, + "year": "2016" + }, + { + "venueId": "4c4068cfd7fad13af5e205da", + "latLng": { + "lat": 26.412644616860206, + "lng": 50.07118550934931 + }, + "year": "2016" + }, + { + "venueId": "4d5f62041ee8721e64239e21", + "latLng": { + "lat": 26.32353049136453, + "lng": 50.13893629575038 + }, + "year": "2016" + }, + { + "venueId": "4f431943e4b03c8ff62e7fb4", + "latLng": { + "lat": 26.715423122874668, + "lng": 50.08292193357216 + }, + "year": "2016" + }, + { + "venueId": "505f14bae4b0076526cfb212", + "latLng": { + "lat": 26.29291763876569, + "lng": 50.17474483729975 + }, + "year": "2016" + }, + { + "venueId": "4bcc610eaeaaeee1f5f53d6d", + "latLng": { + "lat": 26.32250956760787, + "lng": 50.216750047473745 + }, + "year": "2016" + }, + { + "venueId": "50aa246de4b0702a837c2a43", + "latLng": { + "lat": 26.716323202483974, + "lng": 50.07342826480854 + }, + "year": "2016" + }, + { + "venueId": "4ca80a2cd971b1f76cef10e1", + "latLng": { + "lat": 24.68445460970191, + "lng": 46.791375004794496 + }, + "year": "2016" + }, + { + "venueId": "51642aede4b0a8b9b5cda0e2", + "latLng": { + "lat": 26.291830953020426, + "lng": 50.11826560583733 + }, + "year": "2016" + }, + { + "venueId": "4caf523239458cfa787cf99f", + "latLng": { + "lat": 47.05157332863094, + "lng": 8.295075331637388 + }, + "year": "2016" + }, + { + "venueId": "571532f3498e9f6676facddc", + "latLng": { + "lat": 26.348216992152718, + "lng": 50.1433917446267 + }, + "year": "2016" + }, + { + "venueId": "52ce2dbc498e329a7457fda7", + "latLng": { + "lat": 24.78504534668868, + "lng": 46.79630517634361 + }, + "year": "2016" + }, + { + "venueId": "5784a53d498e1dff472e26d3", + "latLng": { + "lat": 24.519569546178687, + "lng": 46.88967238706866 + }, + "year": "2016" + }, + { + "venueId": "52db8ddb498ef2d1363f4be1", + "latLng": { + "lat": 26.2810965980131, + "lng": 50.21131369961904 + }, + "year": "2016" + }, + { + "venueId": "55a7c0a9498ea19ef90a19a7", + "latLng": { + "lat": 26.403379297954338, + "lng": 50.05639142873515 + }, + "year": "2016" + }, + { + "venueId": "519c002350198591be176d2b", + "latLng": { + "lat": 48.870264032406254, + "lng": 2.7791440959573657 + }, + "year": "2016" + }, + { + "venueId": "4eb7f27b29c212fb6d731059", + "latLng": { + "lat": 24.678376848363758, + "lng": 46.775628164351986 + }, + "year": "2016" + }, + { + "venueId": "51760e7be4b06460541baccb", + "latLng": { + "lat": 26.37815878595303, + "lng": 50.059260665562604 + }, + "year": "2016" + }, + { + "venueId": "4f69d5c0e4b0cb4074cd1227", + "latLng": { + "lat": 26.30977154417424, + "lng": 50.16802567420768 + }, + "year": "2016" + }, + { + "venueId": "4af1cb50f964a5203ae321e3", + "latLng": { + "lat": 48.87117932597848, + "lng": 2.3029661500795444 + }, + "year": "2016" + }, + { + "venueId": "4c548ea106901b8daac8fe4b", + "latLng": { + "lat": 26.315197386299147, + "lng": 50.1315379809918 + }, + "year": "2016" + }, + { + "venueId": "5237ff6f11d2aec183d172f7", + "latLng": { + "lat": 45.90173858394573, + "lng": 6.121227229647645 + }, + "year": "2016" + }, + { + "venueId": "54b67bbb498eba80d1c83c88", + "latLng": { + "lat": 46.60781820283134, + "lng": 7.104913944648157 + }, + "year": "2016" + }, + { + "venueId": "551d8992498e7ada62d7bf05", + "latLng": { + "lat": 26.364500340264886, + "lng": 50.071220630158436 + }, + "year": "2016" + }, + { + "venueId": "53ae7799498e5522d448f4ee", + "latLng": { + "lat": 26.401499022442263, + "lng": 50.11383702684413 + }, + "year": "2016" + }, + { + "venueId": "51f64454498ed3c2becdd497", + "latLng": { + "lat": 26.34478896624523, + "lng": 50.1466569372419 + }, + "year": "2016" + }, + { + "venueId": "4e49029c7d8b91a065af80e5", + "latLng": { + "lat": 26.39776723190389, + "lng": 50.04579348871963 + }, + "year": "2016" + }, + { + "venueId": "56e972f5498e1a3094db2171", + "latLng": { + "lat": 26.39743816106506, + "lng": 50.10311873983323 + }, + "year": "2016" + }, + { + "venueId": "4e1d7f7dfa7653a9b2e33d8f", + "latLng": { + "lat": 26.329635817723467, + "lng": 50.10930357779651 + }, + "year": "2016" + }, + { + "venueId": "4f352609e4b0c9801d9b5767", + "latLng": { + "lat": 26.39177475125833, + "lng": 50.091960441441294 + }, + "year": "2016" + }, + { + "venueId": "4e37bb6aa809a0c63b3882e8", + "latLng": { + "lat": 47.053954931893635, + "lng": 8.310634619808559 + }, + "year": "2016" + }, + { + "venueId": "4ab474c6f964a520387120e3", + "latLng": { + "lat": 49.00744816046296, + "lng": 2.549268723984385 + }, + "year": "2016" + }, + { + "venueId": "52ee5c0d498e9d0c24bca299", + "latLng": { + "lat": 27.557254038482068, + "lng": 48.84563307804528 + }, + "year": "2016" + }, + { + "venueId": "4fa29259e4b069714fbb9341", + "latLng": { + "lat": 26.716211762452712, + "lng": 50.07878705295251 + }, + "year": "2016" + }, + { + "venueId": "5791dbdb38fa7e1b50485c77", + "latLng": { + "lat": 26.213753507921783, + "lng": 50.5922150046507 + }, + "year": "2016" + }, + { + "venueId": "4e1c056522716126413a21f1", + "latLng": { + "lat": 26.417147814059994, + "lng": 50.08839714905703 + }, + "year": "2016" + }, + { + "venueId": "506f21cde4b0c90ab4cfa7f6", + "latLng": { + "lat": 26.40635502892703, + "lng": 50.095398540211946 + }, + "year": "2016" + }, + { + "venueId": "50584be2e4b05fe81e3870b9", + "latLng": { + "lat": 26.30767399134521, + "lng": 50.1697620098568 + }, + "year": "2016" + }, + { + "venueId": "4c6fab1cb5a5236af0d94d52", + "latLng": { + "lat": 26.296373244295438, + "lng": 50.11175861135319 + }, + "year": "2016" + }, + { + "venueId": "529c9fbf498e49b7a77a9f33", + "latLng": { + "lat": 26.185234611905177, + "lng": 49.47304127731333 + }, + "year": "2016" + }, + { + "venueId": "4cdd4eb599026dcb49d11881", + "latLng": { + "lat": 29.17210125048482, + "lng": 48.084362509407015 + }, + "year": "2016" + }, + { + "venueId": "5472f809498e7269b2946dec", + "latLng": { + "lat": 26.309034755874762, + "lng": 50.12855491176175 + }, + "year": "2016" + }, + { + "venueId": "54744176498e231671f6591b", + "latLng": { + "lat": 26.215787812025194, + "lng": 50.20750187377458 + }, + "year": "2016" + }, + { + "venueId": "56549867498eb5b6954f1a0e", + "latLng": { + "lat": 26.29521195647123, + "lng": 50.214859140163405 + }, + "year": "2016" + }, + { + "venueId": "4dc763d0b0fb5556cd20d6d4", + "latLng": { + "lat": 26.354167004536823, + "lng": 50.09937400680593 + }, + "year": "2016" + }, + { + "venueId": "4ee51a66e30005f8b87f26e3", + "latLng": { + "lat": 26.297880615269268, + "lng": 50.11079968048194 + }, + "year": "2016" + }, + { + "venueId": "4e0dfc83ae603a50b53e019a", + "latLng": { + "lat": 26.30499173019398, + "lng": 50.16687489722827 + }, + "year": "2016" + }, + { + "venueId": "5180d203498e21bea78bb9db", + "latLng": { + "lat": 24.681722706637267, + "lng": 46.78512671857453 + }, + "year": "2016" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2016" + }, + { + "venueId": "51ed2c1e7dd2635ede7ac026", + "latLng": { + "lat": 26.402245276008863, + "lng": 50.064367441512644 + }, + "year": "2016" + }, + { + "venueId": "4bb46a129af3b7132a388c28", + "latLng": { + "lat": 26.290192666591754, + "lng": 50.18940388456998 + }, + "year": "2016" + }, + { + "venueId": "4e31299a45ddbe0f665ca031", + "latLng": { + "lat": 48.1542572475998, + "lng": 11.582731528562489 + }, + "year": "2016" + }, + { + "venueId": "51bca70b498eecb51b9ce220", + "latLng": { + "lat": 26.296525952422698, + "lng": 50.14708896048917 + }, + "year": "2016" + }, + { + "venueId": "4b9cfe5af964a5203d8736e3", + "latLng": { + "lat": 26.415092863745993, + "lng": 50.076810037561756 + }, + "year": "2016" + }, + { + "venueId": "57685d94498ea7f281ee8db1", + "latLng": { + "lat": 26.40152997086414, + "lng": 50.085645012133774 + }, + "year": "2016" + }, + { + "venueId": "4ee81b0daa1f29ac6237bde4", + "latLng": { + "lat": 26.323380367422725, + "lng": 50.16288001077864 + }, + "year": "2016" + }, + { + "venueId": "4d7752cd78d5a0930ebf7d72", + "latLng": { + "lat": 26.33072909857772, + "lng": 50.163271950291275 + }, + "year": "2016" + }, + { + "venueId": "4ba9fecbf964a52075423ae3", + "latLng": { + "lat": 26.311792671546957, + "lng": 50.13147779240315 + }, + "year": "2016" + }, + { + "venueId": "4bad9786f964a520a35d3be3", + "latLng": { + "lat": 26.4028785361231, + "lng": 50.10037793396964 + }, + "year": "2016" + }, + { + "venueId": "57ab56cc498eef084f934d7c", + "latLng": { + "lat": 26.400307463534954, + "lng": 50.096433145000375 + }, + "year": "2016" + }, + { + "venueId": "504501d2e4b0d3dcf4da2842", + "latLng": { + "lat": 26.43002851478068, + "lng": 50.067523022662456 + }, + "year": "2016" + }, + { + "venueId": "4f08a3e6e4b0540ca2543782", + "latLng": { + "lat": 24.691645636338237, + "lng": 46.701671836150425 + }, + "year": "2016" + }, + { + "venueId": "4b8bb1b6f964a52051a732e3", + "latLng": { + "lat": 48.1348334284513, + "lng": 11.577250975551115 + }, + "year": "2016" + }, + { + "venueId": "5140ee13e4b0908181ea46e5", + "latLng": { + "lat": 26.322433981157527, + "lng": 50.157086635497514 + }, + "year": "2016" + }, + { + "venueId": "4ebd69da0aaf88633bc4912c", + "latLng": { + "lat": 26.304869525378194, + "lng": 50.19661615012696 + }, + "year": "2016" + }, + { + "venueId": "4ed3b7952c5bc3505ad3a264", + "latLng": { + "lat": 26.30279468949949, + "lng": 50.21222895673331 + }, + "year": "2016" + }, + { + "venueId": "53969f1f498e574c69d84f63", + "latLng": { + "lat": 26.30607197451278, + "lng": 50.112591961584975 + }, + "year": "2016" + }, + { + "venueId": "4dcd313dae603b786d0fb040", + "latLng": { + "lat": 26.382980579146796, + "lng": 50.03313156501674 + }, + "year": "2016" + }, + { + "venueId": "4cc407e0c844721e55e1e601", + "latLng": { + "lat": 26.407499509709872, + "lng": 50.13820296120152 + }, + "year": "2016" + }, + { + "venueId": "51f80ac2498ec4fd6a3e533b", + "latLng": { + "lat": 26.428557772081607, + "lng": 50.06155314324011 + }, + "year": "2016" + }, + { + "venueId": "569bd39938fa14282bca1398", + "latLng": { + "lat": 26.319717366813318, + "lng": 50.222136661002615 + }, + "year": "2016" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2016" + }, + { + "venueId": "51502072e4b0dab63f739094", + "latLng": { + "lat": 26.331976956159238, + "lng": 50.14489371142997 + }, + "year": "2016" + }, + { + "venueId": "4e6e57078877d6d0b12d17af", + "latLng": { + "lat": 24.717017639975282, + "lng": 46.76709044904837 + }, + "year": "2016" + }, + { + "venueId": "545d0f77498e6198a0fbe574", + "latLng": { + "lat": 26.18165572591588, + "lng": 49.36824752546067 + }, + "year": "2016" + }, + { + "venueId": "574c5d8d498e1c0c734581c7", + "latLng": { + "lat": 26.381757443882428, + "lng": 50.103610692471676 + }, + "year": "2016" + }, + { + "venueId": "4c86761730789c74d80874e3", + "latLng": { + "lat": 26.288336144486976, + "lng": 50.10593889368711 + }, + "year": "2016" + }, + { + "venueId": "4f0d9d73e4b0354497a04f5b", + "latLng": { + "lat": 26.29495056956359, + "lng": 50.12969994101414 + }, + "year": "2016" + }, + { + "venueId": "564025bbcd10154995cb5538", + "latLng": { + "lat": 26.278938764860168, + "lng": 50.1925338471723 + }, + "year": "2016" + }, + { + "venueId": "51bf60b9498e6a6ff7d6a9db", + "latLng": { + "lat": 26.38294025622684, + "lng": 50.10443898910111 + }, + "year": "2016" + }, + { + "venueId": "4e1bf68b227161264139c735", + "latLng": { + "lat": 26.313741645319624, + "lng": 50.11762290088869 + }, + "year": "2016" + }, + { + "venueId": "4e9f226402d576b65579c6d5", + "latLng": { + "lat": 45.903678377681096, + "lng": 6.144633603847457 + }, + "year": "2016" + }, + { + "venueId": "4faa33dee4b0aecc82a23a01", + "latLng": { + "lat": 26.290510142829383, + "lng": 50.1981646028653 + }, + "year": "2016" + }, + { + "venueId": "4ef873970e61a0846e405df2", + "latLng": { + "lat": 26.41270436378611, + "lng": 50.07875702403917 + }, + "year": "2016" + }, + { + "venueId": "5058e611e4b05ea41604c5cb", + "latLng": { + "lat": 26.28453019208346, + "lng": 50.117989521175375 + }, + "year": "2016" + }, + { + "venueId": "4f0973d8e4b090ef22fba4e4", + "latLng": { + "lat": 26.306345875924467, + "lng": 50.14551661156809 + }, + "year": "2016" + }, + { + "venueId": "50c2d2cae4b0489425431aa2", + "latLng": { + "lat": 26.433344414968676, + "lng": 50.09662827256607 + }, + "year": "2016" + }, + { + "venueId": "5307441a498e15e61cbeb894", + "latLng": { + "lat": 26.30038558866388, + "lng": 50.22051215526774 + }, + "year": "2016" + }, + { + "venueId": "5399b41e498ec2230a418a50", + "latLng": { + "lat": 28.542608062329286, + "lng": 48.40746270026229 + }, + "year": "2016" + }, + { + "venueId": "51d83091498e31710a95800c", + "latLng": { + "lat": 24.738567231644847, + "lng": 46.68475029664377 + }, + "year": "2016" + }, + { + "venueId": "4ebbf545775be9ee02c51e2f", + "latLng": { + "lat": 26.382195789832682, + "lng": 50.09771756336029 + }, + "year": "2016" + }, + { + "venueId": "5377bcab498e13bc918ee77e", + "latLng": { + "lat": 26.348420452227888, + "lng": 50.14297976200053 + }, + "year": "2016" + }, + { + "venueId": "514c43ece4b049d5fba944b3", + "latLng": { + "lat": 26.397773024216267, + "lng": 50.061974527153644 + }, + "year": "2016" + }, + { + "venueId": "4db42b5581543d71da3fa2d2", + "latLng": { + "lat": 46.784335950594325, + "lng": 4.430561777923056 + }, + "year": "2016" + }, + { + "venueId": "5156900be4b028505bea2260", + "latLng": { + "lat": 26.370850345432732, + "lng": 50.121198112055716 + }, + "year": "2016" + }, + { + "venueId": "532ab8d7498e1c6331e4b99a", + "latLng": { + "lat": 46.817347294439855, + "lng": 8.40677032012716 + }, + "year": "2016" + }, + { + "venueId": "4d7274d7946b6dcbcb2b3c7a", + "latLng": { + "lat": 26.213501975967468, + "lng": 50.59196097760333 + }, + "year": "2016" + }, + { + "venueId": "4e6cf4e0fa76fa03587b6e14", + "latLng": { + "lat": 46.67917358190038, + "lng": 7.863377044645244 + }, + "year": "2016" + }, + { + "venueId": "4ade0ca8f964a520596821e3", + "latLng": { + "lat": 48.160124911284385, + "lng": 11.597962778339726 + }, + "year": "2016" + }, + { + "venueId": "4bc223d074a9a59359d2d2f6", + "latLng": { + "lat": 24.68168654386465, + "lng": 46.69055217973573 + }, + "year": "2016" + }, + { + "venueId": "5136d9f6e4b052e6acffa193", + "latLng": { + "lat": 25.262237053161375, + "lng": 51.612870910048464 + }, + "year": "2016" + }, + { + "venueId": "4f771bc1e4b08f9be53a494d", + "latLng": { + "lat": 26.322295222564968, + "lng": 50.16469903345075 + }, + "year": "2016" + }, + { + "venueId": "4eff3952775bec6b4373efa7", + "latLng": { + "lat": 26.30380068047775, + "lng": 50.124080386707654 + }, + "year": "2016" + }, + { + "venueId": "4db578930437fa536a40d5d5", + "latLng": { + "lat": 29.355086142047174, + "lng": 47.95440742122598 + }, + "year": "2016" + }, + { + "venueId": "5459aa11498e9a85bd98ad51", + "latLng": { + "lat": 26.340586376791766, + "lng": 50.10584962942155 + }, + "year": "2016" + }, + { + "venueId": "4ecf41b7e5faa5ec016d2c62", + "latLng": { + "lat": 26.307447592686533, + "lng": 50.21947095714729 + }, + "year": "2016" + }, + { + "venueId": "5527f1cc498eff52cf32d4c5", + "latLng": { + "lat": 26.30412131402006, + "lng": 50.20018084770047 + }, + "year": "2016" + }, + { + "venueId": "56364cd1498e7c921e9ffc97", + "latLng": { + "lat": 26.348250824703662, + "lng": 50.143115467152086 + }, + "year": "2016" + }, + { + "venueId": "4c5c6bd794fd0f470099c845", + "latLng": { + "lat": 26.414916592369487, + "lng": 50.07636354021359 + }, + "year": "2016" + }, + { + "venueId": "5269b636498e737655fd3636", + "latLng": { + "lat": 26.404208152023504, + "lng": 50.1102474235132 + }, + "year": "2016" + }, + { + "venueId": "56237453498effadf07d3259", + "latLng": { + "lat": 26.31062222176867, + "lng": 50.16979962198104 + }, + "year": "2016" + }, + { + "venueId": "4e11cd9e7d8b4d5613dd7c3d", + "latLng": { + "lat": 26.310224251333455, + "lng": 50.13669613718662 + }, + "year": "2016" + }, + { + "venueId": "51212761e4b0293c7d8e405a", + "latLng": { + "lat": 26.39135803708438, + "lng": 50.10460966981353 + }, + "year": "2016" + }, + { + "venueId": "5807a3d0d67ca0804a989168", + "latLng": { + "lat": 24.683502075380304, + "lng": 46.77559981314574 + }, + "year": "2016" + }, + { + "venueId": "4c56ee7112f0d13ad2e705ad", + "latLng": { + "lat": 26.330460098992653, + "lng": 50.162377449406954 + }, + "year": "2016" + }, + { + "venueId": "514e7d1be4b025094e711318", + "latLng": { + "lat": 26.703901762332762, + "lng": 50.09011356346142 + }, + "year": "2016" + }, + { + "venueId": "501e82cae4b0dbd44229e3b0", + "latLng": { + "lat": 45.89858121174089, + "lng": 6.1275047867893155 + }, + "year": "2016" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2016" + }, + { + "venueId": "4fabddcbe4b03a9d6aed2100", + "latLng": { + "lat": 26.30515178188562, + "lng": 50.18460631378367 + }, + "year": "2016" + }, + { + "venueId": "4b1abf45f964a520e9f023e3", + "latLng": { + "lat": 46.43084473711178, + "lng": 6.909094357540663 + }, + "year": "2016" + }, + { + "venueId": "4e947157722e42857afd181c", + "latLng": { + "lat": 26.40098686159573, + "lng": 50.05147090446571 + }, + "year": "2016" + }, + { + "venueId": "522dfa5f11d2025fbf942a8b", + "latLng": { + "lat": 26.37046737447402, + "lng": 50.10324917905471 + }, + "year": "2016" + }, + { + "venueId": "55d4badb498e8bc13f096467", + "latLng": { + "lat": 26.342619653410146, + "lng": 50.18216341386793 + }, + "year": "2016" + }, + { + "venueId": "4e8acb728b810d8892794333", + "latLng": { + "lat": 26.301840496358768, + "lng": 50.137178316802604 + }, + "year": "2016" + }, + { + "venueId": "4bb46cb249bdc9b60ac50c10", + "latLng": { + "lat": 26.405568786666255, + "lng": 50.10176000810444 + }, + "year": "2016" + }, + { + "venueId": "5643a37c498e98335dd1ba3e", + "latLng": { + "lat": 25.922811054685127, + "lng": 49.65678511124279 + }, + "year": "2016" + }, + { + "venueId": "55199bee498e6ccba1588b64", + "latLng": { + "lat": 26.372556953825068, + "lng": 50.10253996329563 + }, + "year": "2016" + }, + { + "venueId": "4bdd3e02d33f2d7f619c8a3c", + "latLng": { + "lat": 29.3115382177476, + "lng": 47.930688248566206 + }, + "year": "2016" + }, + { + "venueId": "54f5f4cc498e534b3b4162e9", + "latLng": { + "lat": 26.246167780217, + "lng": 50.580638809953875 + }, + "year": "2016" + }, + { + "venueId": "4e173cca2271b0e971f0155d", + "latLng": { + "lat": 26.30427450868123, + "lng": 50.130101710784395 + }, + "year": "2016" + }, + { + "venueId": "4bba02411261d13a5216ea98", + "latLng": { + "lat": 26.290631397666004, + "lng": 50.18078115795884 + }, + "year": "2016" + }, + { + "venueId": "54b8226b498e312c6d956c56", + "latLng": { + "lat": 29.34706318555517, + "lng": 48.08951355109931 + }, + "year": "2016" + }, + { + "venueId": "4b6c1502f964a520df222ce3", + "latLng": { + "lat": 26.2327832867021, + "lng": 50.537014666450645 + }, + "year": "2016" + }, + { + "venueId": "4dd4b55822716ea3ce644223", + "latLng": { + "lat": 29.33335600146475, + "lng": 48.054071859414655 + }, + "year": "2016" + }, + { + "venueId": "514431bfe4b0c80a2d1ec3ee", + "latLng": { + "lat": 26.345137667731013, + "lng": 50.138308440283055 + }, + "year": "2016" + }, + { + "venueId": "4f3d6f66e4b0e602915a447c", + "latLng": { + "lat": 24.87006885771415, + "lng": 46.80609131987027 + }, + "year": "2016" + }, + { + "venueId": "522746cd11d2bbf441d6a342", + "latLng": { + "lat": 26.297532509536, + "lng": 50.108962190412 + }, + "year": "2016" + }, + { + "venueId": "50cf47b6e4b01c69f6f9a22e", + "latLng": { + "lat": 26.304668431973248, + "lng": 50.22241117538641 + }, + "year": "2016" + }, + { + "venueId": "4c86794a30789c74625274e3", + "latLng": { + "lat": 26.29864748986757, + "lng": 50.11851313379096 + }, + "year": "2016" + }, + { + "venueId": "4ba8d963f964a520f1f339e3", + "latLng": { + "lat": 26.304871053081335, + "lng": 50.14676745452433 + }, + "year": "2016" + }, + { + "venueId": "4c86786a30789c749f1b74e3", + "latLng": { + "lat": 26.298071289043865, + "lng": 50.10757148028851 + }, + "year": "2016" + }, + { + "venueId": "52a8769d11d205584b669e13", + "latLng": { + "lat": 26.442426969730274, + "lng": 50.04999899447128 + }, + "year": "2016" + }, + { + "venueId": "4c266790905a0f478f3e6360", + "latLng": { + "lat": 26.23321910400637, + "lng": 50.5546659686146 + }, + "year": "2016" + }, + { + "venueId": "55d8be36498e09d2c5ee1792", + "latLng": { + "lat": 26.30071505674589, + "lng": 50.200864649914315 + }, + "year": "2016" + }, + { + "venueId": "4bb49541f038a593fe29daf0", + "latLng": { + "lat": 26.30809627898332, + "lng": 50.12880593434926 + }, + "year": "2016" + }, + { + "venueId": "519cce7e498e5412d3afcfac", + "latLng": { + "lat": 26.18734428073315, + "lng": 50.18461628853094 + }, + "year": "2016" + }, + { + "venueId": "56cb7997cd10824c29f61498", + "latLng": { + "lat": 28.799993003140212, + "lng": 48.270692914981176 + }, + "year": "2016" + }, + { + "venueId": "52b99bde498e570c7e76040c", + "latLng": { + "lat": 26.295320885802568, + "lng": 50.034716040552055 + }, + "year": "2016" + }, + { + "venueId": "53a69fad498e34ef9a5b93fa", + "latLng": { + "lat": 26.305538304189035, + "lng": 50.11289830284868 + }, + "year": "2016" + }, + { + "venueId": "581f4ffb569e1b2ffbc299f2", + "latLng": { + "lat": 26.39889614418426, + "lng": 50.10410264910439 + }, + "year": "2016" + }, + { + "venueId": "4e29d8107d8b7deda6bf048b", + "latLng": { + "lat": 26.335402470898643, + "lng": 50.191714324518934 + }, + "year": "2016" + }, + { + "venueId": "53314da4498e14da84ad84b9", + "latLng": { + "lat": 26.343503512380554, + "lng": 50.19561565895047 + }, + "year": "2016" + }, + { + "venueId": "561e181f498e3dede4fa6761", + "latLng": { + "lat": 26.255163954245745, + "lng": 50.22070328059039 + }, + "year": "2016" + }, + { + "venueId": "53639755498e2550d2c3b26c", + "latLng": { + "lat": 26.326062678407492, + "lng": 50.16700052684416 + }, + "year": "2016" + }, + { + "venueId": "568796f8498e3d43f25535d9", + "latLng": { + "lat": 26.305920683398252, + "lng": 50.62532120619099 + }, + "year": "2016" + }, + { + "venueId": "54abd46e498e292b4b91262b", + "latLng": { + "lat": 29.199472111125885, + "lng": 47.30414992115352 + }, + "year": "2016" + }, + { + "venueId": "5749f9cb498e6a1b7c7b8988", + "latLng": { + "lat": 26.39631879689672, + "lng": 50.04312548829902 + }, + "year": "2016" + }, + { + "venueId": "4be8b8e8c5220f475f25aaca", + "latLng": { + "lat": 26.308791955637272, + "lng": 50.12899685031654 + }, + "year": "2016" + }, + { + "venueId": "5365dc35498e17304c1ca20b", + "latLng": { + "lat": 26.38612148228419, + "lng": 50.095644563111556 + }, + "year": "2016" + }, + { + "venueId": "4ba49322f964a52031a538e3", + "latLng": { + "lat": 26.2908415665022, + "lng": 50.180459473813144 + }, + "year": "2016" + }, + { + "venueId": "5b549b256a5950002c5254ac", + "latLng": { + "lat": 25.912841589820204, + "lng": 49.61188932034611 + }, + "year": "2016" + }, + { + "venueId": "4cbd1bfaf50e224b160503fc", + "latLng": { + "lat": 48.35383554332368, + "lng": 11.78987951196595 + }, + "year": "2016" + }, + { + "venueId": "4f295c88e4b005595ec17e76", + "latLng": { + "lat": 24.91038931757911, + "lng": 46.928204171926716 + }, + "year": "2016" + }, + { + "venueId": "5681984c498e1f4df198fc42", + "latLng": { + "lat": 26.319704204533604, + "lng": 50.22184501538209 + }, + "year": "2016" + }, + { + "venueId": "4f2fa37fe4b04551c2316f10", + "latLng": { + "lat": 24.658056802707215, + "lng": 46.700775378568466 + }, + "year": "2016" + }, + { + "venueId": "4ade0cc5f964a520f66821e3", + "latLng": { + "lat": 48.15824363305951, + "lng": 11.505125709989994 + }, + "year": "2016" + }, + { + "venueId": "4ba29407f964a5200d0638e3", + "latLng": { + "lat": 26.128279902466875, + "lng": 50.079524765323974 + }, + "year": "2016" + }, + { + "venueId": "5635078a498ec8194d026d06", + "latLng": { + "lat": 26.37655266710491, + "lng": 50.06043949989665 + }, + "year": "2016" + }, + { + "venueId": "4f425f5ce4b01e824fae83ac", + "latLng": { + "lat": 26.41022848064524, + "lng": 50.12634024543918 + }, + "year": "2016" + }, + { + "venueId": "53779ba9498eba9ab20f918e", + "latLng": { + "lat": 26.426668771528647, + "lng": 50.06503466513045 + }, + "year": "2016" + }, + { + "venueId": "5218bb9511d2eda6444cfe12", + "latLng": { + "lat": 26.363267855697085, + "lng": 50.026728902588616 + }, + "year": "2016" + }, + { + "venueId": "4eb8a3e6cc2143e82958efc3", + "latLng": { + "lat": 26.383444234071927, + "lng": 50.10423316888145 + }, + "year": "2016" + }, + { + "venueId": "4f2ce297e4b07ca314a690c0", + "latLng": { + "lat": 26.035755865515977, + "lng": 49.76853009067379 + }, + "year": "2016" + }, + { + "venueId": "4cc7c0bc73fd6dcb45141886", + "latLng": { + "lat": 24.524795246322583, + "lng": 46.869141599053926 + }, + "year": "2016" + }, + { + "venueId": "4eec4e67f9ab8c5a0053a94d", + "latLng": { + "lat": 26.30650595061844, + "lng": 50.12098721354662 + }, + "year": "2016" + }, + { + "venueId": "54544705498eb34a3818743b", + "latLng": { + "lat": 26.372618456609874, + "lng": 50.100839746051776 + }, + "year": "2016" + }, + { + "venueId": "567a935b498e5b6a5f896380", + "latLng": { + "lat": 26.323890983114893, + "lng": 50.16519596083835 + }, + "year": "2016" + }, + { + "venueId": "52bc8010498ef1189ce53a8c", + "latLng": { + "lat": 26.286087977181875, + "lng": 50.21863103308025 + }, + "year": "2016" + }, + { + "venueId": "4d98501261a3a1cd77adca42", + "latLng": { + "lat": 26.348220681910682, + "lng": 50.19479114590767 + }, + "year": "2016" + }, + { + "venueId": "54b914a4498e6f9349f15c6a", + "latLng": { + "lat": 26.208822354395554, + "lng": 50.59627831295041 + }, + "year": "2016" + }, + { + "venueId": "56e2c0d4498e153ca522c140", + "latLng": { + "lat": 26.264340639145242, + "lng": 50.61666968919809 + }, + "year": "2016" + }, + { + "venueId": "4e39acf1aeb72d06596b3ed2", + "latLng": { + "lat": 26.162689318319522, + "lng": 50.56291945459063 + }, + "year": "2016" + }, + { + "venueId": "4bdd59d5d33f2d7fc4c78a3c", + "latLng": { + "lat": 46.56992506387975, + "lng": 7.913246205635917 + }, + "year": "2016" + }, + { + "venueId": "4ffa349de4b04619c8a779e9", + "latLng": { + "lat": 26.30503444125578, + "lng": 50.1282535918652 + }, + "year": "2016" + }, + { + "venueId": "4f3bc8d2e4b08ca0e82b497d", + "latLng": { + "lat": 26.300639971416174, + "lng": 50.18391264087962 + }, + "year": "2016" + }, + { + "venueId": "4d0638148620224b9d1eb240", + "latLng": { + "lat": 26.715634862304604, + "lng": 50.046079352899916 + }, + "year": "2016" + }, + { + "venueId": "525ffa3b498e1ec4f0a186d0", + "latLng": { + "lat": 26.219217024690558, + "lng": 50.221140859241295 + }, + "year": "2016" + }, + { + "venueId": "4adcda1df964a5202d3921e3", + "latLng": { + "lat": 48.872679834312564, + "lng": 2.2968657943087964 + }, + "year": "2016" + }, + { + "venueId": "4b5195c6f964a520255027e3", + "latLng": { + "lat": 26.233456253375337, + "lng": 50.55364953037245 + }, + "year": "2017" + }, + { + "venueId": "5256e0c111d2b76cc462cc85", + "latLng": { + "lat": 26.185634607607323, + "lng": 50.321630370392924 + }, + "year": "2017" + }, + { + "venueId": "5635abcf498ef3d7f7c1f03f", + "latLng": { + "lat": 17.332885092097634, + "lng": 42.37839857545456 + }, + "year": "2017" + }, + { + "venueId": "4fdd78abe4b049c33bc0aa78", + "latLng": { + "lat": 26.30569478902117, + "lng": 50.11396772448491 + }, + "year": "2017" + }, + { + "venueId": "58053a45d67c85702c2100e5", + "latLng": { + "lat": 26.39826561160313, + "lng": 50.104293408873374 + }, + "year": "2017" + }, + { + "venueId": "5013776ce4b09cb7df5a9a3f", + "latLng": { + "lat": 26.30659637479633, + "lng": 50.11263220556024 + }, + "year": "2017" + }, + { + "venueId": "52c94a2c498e2a363b7c88a8", + "latLng": { + "lat": 26.330170106800704, + "lng": 50.14016691129889 + }, + "year": "2017" + }, + { + "venueId": "55846008498e6d9ea9bbbc21", + "latLng": { + "lat": 26.158850749735198, + "lng": 50.191840083964564 + }, + "year": "2017" + }, + { + "venueId": "57a4e6df498e406b9f5c947b", + "latLng": { + "lat": 17.344208011675757, + "lng": 42.37219997329042 + }, + "year": "2017" + }, + { + "venueId": "5218282711d2b8e83502a200", + "latLng": { + "lat": 26.339724351566215, + "lng": 50.15180122749607 + }, + "year": "2017" + }, + { + "venueId": "528f2f4411d208032a2663ba", + "latLng": { + "lat": 16.902013905178727, + "lng": 42.55278202683297 + }, + "year": "2017" + }, + { + "venueId": "54969ad8498e427c8516b9ce", + "latLng": { + "lat": 17.28730645836924, + "lng": 42.365441560655285 + }, + "year": "2017" + }, + { + "venueId": "4c5f6da890b2c9b6a7cc3a22", + "latLng": { + "lat": 26.477629832504565, + "lng": 49.81344487711334 + }, + "year": "2017" + }, + { + "venueId": "589a3f5b01f07702f88ad791", + "latLng": { + "lat": 26.387793612445595, + "lng": 50.1044691091919 + }, + "year": "2017" + }, + { + "venueId": "4ea84077cc21adeb993aab2a", + "latLng": { + "lat": 26.38071771718471, + "lng": 50.10365085204708 + }, + "year": "2017" + }, + { + "venueId": "5624a032498e6b4b33094126", + "latLng": { + "lat": 26.462157033372566, + "lng": 50.068411029883414 + }, + "year": "2017" + }, + { + "venueId": "4b9b3e34f964a520e1fb35e3", + "latLng": { + "lat": 25.343839999810143, + "lng": 49.59862237833679 + }, + "year": "2017" + }, + { + "venueId": "4ee6210c6c25be9631f9fc07", + "latLng": { + "lat": 26.380961260716234, + "lng": 50.21265641668458 + }, + "year": "2017" + }, + { + "venueId": "4f2fa131e4b040ea0176accf", + "latLng": { + "lat": 26.328707011171243, + "lng": 50.109358802407044 + }, + "year": "2017" + }, + { + "venueId": "56fd3dfa498e8e9fdaa20f2f", + "latLng": { + "lat": 26.451677348382212, + "lng": 50.12862019793656 + }, + "year": "2017" + }, + { + "venueId": "4dbd7e475da3ff58ec64079b", + "latLng": { + "lat": 25.925124645643717, + "lng": 49.65761222372014 + }, + "year": "2017" + }, + { + "venueId": "4c271761a852c9286ac3e76c", + "latLng": { + "lat": 26.38421458419366, + "lng": 50.16756335070863 + }, + "year": "2017" + }, + { + "venueId": "4eac443e29c2152dec1a1ab8", + "latLng": { + "lat": 26.18342215359184, + "lng": 50.32919787503804 + }, + "year": "2017" + }, + { + "venueId": "4f3b5e94e4b08b7acea30c86", + "latLng": { + "lat": 26.320840325302918, + "lng": 50.21574419661726 + }, + "year": "2017" + }, + { + "venueId": "5623b084498e7176522ef939", + "latLng": { + "lat": 26.264670966133593, + "lng": 50.59796200049409 + }, + "year": "2017" + }, + { + "venueId": "50cf5f04e4b0a8af9773d540", + "latLng": { + "lat": 25.930724579332022, + "lng": 49.65800585360908 + }, + "year": "2017" + }, + { + "venueId": "517fdf4ce4b01587627876e0", + "latLng": { + "lat": 26.297934268193018, + "lng": 50.17674515034186 + }, + "year": "2017" + }, + { + "venueId": "58479c082321c6450e9311f8", + "latLng": { + "lat": 17.337632927910807, + "lng": 42.40391870464141 + }, + "year": "2017" + }, + { + "venueId": "5737565538fad9b0b9c07bb9", + "latLng": { + "lat": 26.465642956729734, + "lng": 50.11787097540472 + }, + "year": "2017" + }, + { + "venueId": "55ac8f79498ee3c7400c2fec", + "latLng": { + "lat": 26.396657690523554, + "lng": 50.088743439272605 + }, + "year": "2017" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2017" + }, + { + "venueId": "58049070d67c49b3ae438f4f", + "latLng": { + "lat": 26.380796971312037, + "lng": 50.16891099268545 + }, + "year": "2017" + }, + { + "venueId": "4fd02358e4b00b56d7a82fd6", + "latLng": { + "lat": 26.333244187240435, + "lng": 50.1831888167102 + }, + "year": "2017" + }, + { + "venueId": "546313d7498e55299027486f", + "latLng": { + "lat": 26.354075983791898, + "lng": 50.2095184274853 + }, + "year": "2017" + }, + { + "venueId": "525446c7498e764f985d08e3", + "latLng": { + "lat": 26.323218317973797, + "lng": 50.161829826332976 + }, + "year": "2017" + }, + { + "venueId": "5312f363498e89ba12e2efb2", + "latLng": { + "lat": 26.302988149524452, + "lng": 50.20938768143952 + }, + "year": "2017" + }, + { + "venueId": "5230bdb911d2632f6a55d892", + "latLng": { + "lat": 26.406375176014524, + "lng": 50.0730469403388 + }, + "year": "2017" + }, + { + "venueId": "4e42e8b6628484fb528fc142", + "latLng": { + "lat": 26.389602274542067, + "lng": 50.084121380946925 + }, + "year": "2017" + }, + { + "venueId": "4c2c8ad88ef52d7fc30433ba", + "latLng": { + "lat": 26.400165280642394, + "lng": 50.11688990232612 + }, + "year": "2017" + }, + { + "venueId": "57fe84b8498e46a5a8b8751c", + "latLng": { + "lat": 26.37206850226534, + "lng": 50.099805693447394 + }, + "year": "2017" + }, + { + "venueId": "53e9ef27498e0321142e8d44", + "latLng": { + "lat": 26.170738577734927, + "lng": 50.440488996088014 + }, + "year": "2017" + }, + { + "venueId": "4b3a31d4f964a5201e6225e3", + "latLng": { + "lat": 26.31366230858942, + "lng": 50.14868144480703 + }, + "year": "2017" + }, + { + "venueId": "4bd75f03304fce72b77733ab", + "latLng": { + "lat": 26.303997383304093, + "lng": 50.21095154509814 + }, + "year": "2017" + }, + { + "venueId": "58510726cf11d478fa43fb9a", + "latLng": { + "lat": 29.34463499526244, + "lng": 48.073984387761996 + }, + "year": "2017" + }, + { + "venueId": "50ced24ae4b029bcb40ae282", + "latLng": { + "lat": 26.39827020811829, + "lng": 50.104361806436806 + }, + "year": "2017" + }, + { + "venueId": "574f30bbcd10df1e3760a342", + "latLng": { + "lat": 17.340260372278795, + "lng": 42.37689502309548 + }, + "year": "2017" + }, + { + "venueId": "57316ca3cd10e0916c9cbc2d", + "latLng": { + "lat": 26.298538313305528, + "lng": 50.097205580914206 + }, + "year": "2017" + }, + { + "venueId": "4b9cb54bf964a5208a7736e3", + "latLng": { + "lat": 29.267616108356805, + "lng": 47.993299929641786 + }, + "year": "2017" + }, + { + "venueId": "50e647ade4b01130aebfcaff", + "latLng": { + "lat": 29.006528796603533, + "lng": 48.09695265865559 + }, + "year": "2017" + }, + { + "venueId": "54a227ce498e7529d23d6241", + "latLng": { + "lat": 26.70727118691208, + "lng": 50.070172031930056 + }, + "year": "2017" + }, + { + "venueId": "53607bb411d243d985f915fe", + "latLng": { + "lat": 26.36337734432036, + "lng": 50.02910028716408 + }, + "year": "2017" + }, + { + "venueId": "5064492ee4b0675ed6344158", + "latLng": { + "lat": 26.375550820072018, + "lng": 50.10043307201381 + }, + "year": "2017" + }, + { + "venueId": "51b1cb2b498ec44f9dada03d", + "latLng": { + "lat": 26.303333130710968, + "lng": 50.2069488162073 + }, + "year": "2017" + }, + { + "venueId": "4f69d5c0e4b0cb4074cd1227", + "latLng": { + "lat": 26.30977154417424, + "lng": 50.16802567420768 + }, + "year": "2017" + }, + { + "venueId": "5743d462498e8b1ee1528660", + "latLng": { + "lat": 26.37847404684592, + "lng": 50.1705031850002 + }, + "year": "2017" + }, + { + "venueId": "4cc2dfd0be40a35d4e29744c", + "latLng": { + "lat": 26.126313238172447, + "lng": 50.57631852562593 + }, + "year": "2017" + }, + { + "venueId": "4e7f08ea4690deb1cd2da51b", + "latLng": { + "lat": 16.90788330345553, + "lng": 42.54645709947285 + }, + "year": "2017" + }, + { + "venueId": "4c481a9f19fde21ea0500a76", + "latLng": { + "lat": 26.322098715423905, + "lng": 50.11134692189575 + }, + "year": "2017" + }, + { + "venueId": "4fae0d30e4b0861eac7db7b2", + "latLng": { + "lat": 26.372683133273235, + "lng": 50.029857448351024 + }, + "year": "2017" + }, + { + "venueId": "4e1d7f7dfa7653a9b2e33d8f", + "latLng": { + "lat": 26.329635817723467, + "lng": 50.10930357779651 + }, + "year": "2017" + }, + { + "venueId": "4ca35cec7f84224bc625c458", + "latLng": { + "lat": 26.30569390327641, + "lng": 50.12594854416236 + }, + "year": "2017" + }, + { + "venueId": "4c6e536510faa1430e5ff068", + "latLng": { + "lat": 26.402937793817053, + "lng": 50.10133662150841 + }, + "year": "2017" + }, + { + "venueId": "4f48af33e4b0a644ecfcf5f2", + "latLng": { + "lat": 26.54742576685992, + "lng": 49.956514757125774 + }, + "year": "2017" + }, + { + "venueId": "4c6fab1cb5a5236af0d94d52", + "latLng": { + "lat": 26.296373244295438, + "lng": 50.11175861135319 + }, + "year": "2017" + }, + { + "venueId": "4f7f1b3de4b043dab4d54cdb", + "latLng": { + "lat": 26.39501936738614, + "lng": 50.09847048658385 + }, + "year": "2017" + }, + { + "venueId": "4f07d253e4b0803b6835549c", + "latLng": { + "lat": 26.327917143047262, + "lng": 50.107782410579276 + }, + "year": "2017" + }, + { + "venueId": "50a07b14e4b04eb23e41983c", + "latLng": { + "lat": 26.32641853499799, + "lng": 50.10943912920308 + }, + "year": "2017" + }, + { + "venueId": "58e3e890c5f8a70496b45957", + "latLng": { + "lat": 26.348905980696347, + "lng": 50.13405198687829 + }, + "year": "2017" + }, + { + "venueId": "5250fcc011d2cba3183e8bcd", + "latLng": { + "lat": 26.307307038782483, + "lng": 50.111703384556286 + }, + "year": "2017" + }, + { + "venueId": "4e0dfc83ae603a50b53e019a", + "latLng": { + "lat": 26.30499173019398, + "lng": 50.16687489722827 + }, + "year": "2017" + }, + { + "venueId": "5c5c410cda2e00002cc64c59", + "latLng": { + "lat": 24.760037576831724, + "lng": 46.81626714458045 + }, + "year": "2017" + }, + { + "venueId": "52ce90fb498edfec7660679c", + "latLng": { + "lat": 16.90187153087985, + "lng": 42.545633519414565 + }, + "year": "2017" + }, + { + "venueId": "52c025b0498e16a983db6cc0", + "latLng": { + "lat": 26.33745928946065, + "lng": 50.19966297318837 + }, + "year": "2017" + }, + { + "venueId": "4bd0b32c77b29c74b64a8b82", + "latLng": { + "lat": 24.670793113726845, + "lng": 46.719189006890076 + }, + "year": "2017" + }, + { + "venueId": "56002b2b498ec3502c910542", + "latLng": { + "lat": 26.310534635458595, + "lng": 50.16985992706384 + }, + "year": "2017" + }, + { + "venueId": "5713d40f498eea629c0ee8b3", + "latLng": { + "lat": 26.29919195737494, + "lng": 50.17839998161732 + }, + "year": "2017" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2017" + }, + { + "venueId": "4cf9cb57d7206ea816443569", + "latLng": { + "lat": 26.3263875643574, + "lng": 50.10993607517589 + }, + "year": "2017" + }, + { + "venueId": "54a50dcb498ebcd88aa56917", + "latLng": { + "lat": 26.307142921092563, + "lng": 50.16922170130251 + }, + "year": "2017" + }, + { + "venueId": "4c21ad167e85c92812e3ba21", + "latLng": { + "lat": 26.439347715767138, + "lng": 50.10789779893667 + }, + "year": "2017" + }, + { + "venueId": "5899e459a8b7597bcfc6fe48", + "latLng": { + "lat": 26.374075012227046, + "lng": 50.10300798829136 + }, + "year": "2017" + }, + { + "venueId": "527bdd8811d25ae4267c3aaf", + "latLng": { + "lat": 29.144902996890085, + "lng": 48.083059078232836 + }, + "year": "2017" + }, + { + "venueId": "4b9cfe5af964a5203d8736e3", + "latLng": { + "lat": 26.415092863745993, + "lng": 50.076810037561756 + }, + "year": "2017" + }, + { + "venueId": "54e0c721498edb221955edce", + "latLng": { + "lat": 26.29809279604453, + "lng": 50.18002218715375 + }, + "year": "2017" + }, + { + "venueId": "4c72ed694bc4236aa09bcc7a", + "latLng": { + "lat": 29.374041864416625, + "lng": 47.97258078631507 + }, + "year": "2017" + }, + { + "venueId": "4ba9fecbf964a52075423ae3", + "latLng": { + "lat": 26.311792671546957, + "lng": 50.13147779240315 + }, + "year": "2017" + }, + { + "venueId": "569b1a6c498e9fa8eb274f64", + "latLng": { + "lat": 26.2996783487994, + "lng": 50.096593137009435 + }, + "year": "2017" + }, + { + "venueId": "5735ef85498e7cee24ae7f52", + "latLng": { + "lat": 26.309098957451248, + "lng": 50.21989296677344 + }, + "year": "2017" + }, + { + "venueId": "537cd490498e6cfcacbdc692", + "latLng": { + "lat": 29.32378390119885, + "lng": 48.018542314197354 + }, + "year": "2017" + }, + { + "venueId": "581f59ffe9e6fe3a03b5bd19", + "latLng": { + "lat": 26.3489196581659, + "lng": 50.133863330806435 + }, + "year": "2017" + }, + { + "venueId": "4ce671cce888f04d5b04366b", + "latLng": { + "lat": 26.18478196309128, + "lng": 50.32291009476395 + }, + "year": "2017" + }, + { + "venueId": "56362339498ec15f5080676f", + "latLng": { + "lat": 25.92931632921788, + "lng": 49.65794107888992 + }, + "year": "2017" + }, + { + "venueId": "55a9a57d498e5c2824bc8bf2", + "latLng": { + "lat": 16.928582035946267, + "lng": 42.54867407221522 + }, + "year": "2017" + }, + { + "venueId": "53969f1f498e574c69d84f63", + "latLng": { + "lat": 26.30607197451278, + "lng": 50.112591961584975 + }, + "year": "2017" + }, + { + "venueId": "4d7cdab05a396dcb1da17cfb", + "latLng": { + "lat": 26.44511385093401, + "lng": 50.103128779643065 + }, + "year": "2017" + }, + { + "venueId": "4c63ce59de1b2d7f9696e570", + "latLng": { + "lat": 26.368296794787447, + "lng": 50.13064410419341 + }, + "year": "2017" + }, + { + "venueId": "5646ee4e498ec975f1d43338", + "latLng": { + "lat": 29.339514644162804, + "lng": 48.06002891528322 + }, + "year": "2017" + }, + { + "venueId": "53394ce2498e38586590fd9b", + "latLng": { + "lat": 26.459434245972684, + "lng": 50.09189025418622 + }, + "year": "2017" + }, + { + "venueId": "58c18c7672714f1f76b987dd", + "latLng": { + "lat": 26.37461849208957, + "lng": 50.11846150981107 + }, + "year": "2017" + }, + { + "venueId": "545d0f77498e6198a0fbe574", + "latLng": { + "lat": 26.18165572591588, + "lng": 49.36824752546067 + }, + "year": "2017" + }, + { + "venueId": "5852c7fcef787f5c507cf6fb", + "latLng": { + "lat": 26.381997990360343, + "lng": 50.10366591189471 + }, + "year": "2017" + }, + { + "venueId": "4c86761730789c74d80874e3", + "latLng": { + "lat": 26.288336144486976, + "lng": 50.10593889368711 + }, + "year": "2017" + }, + { + "venueId": "519fdc3e498e034cc238ba2e", + "latLng": { + "lat": 16.89394110775911, + "lng": 42.56213622988745 + }, + "year": "2017" + }, + { + "venueId": "59594be47564f7427da66d4a", + "latLng": { + "lat": 26.37831297130452, + "lng": 50.05951649574099 + }, + "year": "2017" + }, + { + "venueId": "586223e3d4390729e0924f5b", + "latLng": { + "lat": 26.304961729501276, + "lng": 50.17752921057632 + }, + "year": "2017" + }, + { + "venueId": "56d679e9498e5a8a8aef7dce", + "latLng": { + "lat": 17.33270217898387, + "lng": 42.37254737434189 + }, + "year": "2017" + }, + { + "venueId": "5358bd43498e881ad521ce09", + "latLng": { + "lat": 29.377319842303816, + "lng": 47.97569015754126 + }, + "year": "2017" + }, + { + "venueId": "5399b41e498ec2230a418a50", + "latLng": { + "lat": 28.542608062329286, + "lng": 48.40746270026229 + }, + "year": "2017" + }, + { + "venueId": "4ebbf545775be9ee02c51e2f", + "latLng": { + "lat": 26.382195789832682, + "lng": 50.09771756336029 + }, + "year": "2017" + }, + { + "venueId": "5765c80a498e141ece5beb9d", + "latLng": { + "lat": 26.391915985958462, + "lng": 50.104548017625724 + }, + "year": "2017" + }, + { + "venueId": "4e9c53917ee539c857e9119d", + "latLng": { + "lat": 25.935512638601814, + "lng": 49.653392078382026 + }, + "year": "2017" + }, + { + "venueId": "567c4fb0498eab68b421cedb", + "latLng": { + "lat": 29.343064366532285, + "lng": 48.07705587296405 + }, + "year": "2017" + }, + { + "venueId": "55a21fa6498ee1b026ff6c33", + "latLng": { + "lat": 26.274659446504486, + "lng": 50.06755312438859 + }, + "year": "2017" + }, + { + "venueId": "5729ef0e498eedef8ccf6db8", + "latLng": { + "lat": 26.451489491354, + "lng": 50.12922786493291 + }, + "year": "2017" + }, + { + "venueId": "56a8f792498e91052f98b40a", + "latLng": { + "lat": 25.9370970596146, + "lng": 49.65218630016514 + }, + "year": "2017" + }, + { + "venueId": "51533af7e4b04c8e60fa210d", + "latLng": { + "lat": 26.401569022227118, + "lng": 50.10512171483534 + }, + "year": "2017" + }, + { + "venueId": "52cd1d2a498e646e57472b2d", + "latLng": { + "lat": 26.440674535851592, + "lng": 50.07023215964147 + }, + "year": "2017" + }, + { + "venueId": "4c41666dce54e21e9a150b1a", + "latLng": { + "lat": 26.393338661718754, + "lng": 50.153368715002976 + }, + "year": "2017" + }, + { + "venueId": "4e96cdaf9a528e6d36ec7ae5", + "latLng": { + "lat": 16.899123319964865, + "lng": 42.582629176292976 + }, + "year": "2017" + }, + { + "venueId": "5076cfdae4b022d509431869", + "latLng": { + "lat": 26.401803984829137, + "lng": 50.09957102619964 + }, + "year": "2017" + }, + { + "venueId": "4f771bc1e4b08f9be53a494d", + "latLng": { + "lat": 26.322295222564968, + "lng": 50.16469903345075 + }, + "year": "2017" + }, + { + "venueId": "4bb4d6092ba29c748058ef2d", + "latLng": { + "lat": 26.15736082703084, + "lng": 50.19403200047284 + }, + "year": "2017" + }, + { + "venueId": "4f466599e4b03c926bc51356", + "latLng": { + "lat": 26.309382521985874, + "lng": 50.13007157795936 + }, + "year": "2017" + }, + { + "venueId": "4c743f2ddb52b1f7aa8975dc", + "latLng": { + "lat": 26.420931742714313, + "lng": 50.088698270871284 + }, + "year": "2017" + }, + { + "venueId": "4f5d8b16e4b035e31575dc29", + "latLng": { + "lat": 25.37494676763059, + "lng": 49.56571429442547 + }, + "year": "2017" + }, + { + "venueId": "57bd5288498e99415bb4e361", + "latLng": { + "lat": 26.37339802895952, + "lng": 50.10191899453552 + }, + "year": "2017" + }, + { + "venueId": "4db578930437fa536a40d5d5", + "latLng": { + "lat": 29.355086142047174, + "lng": 47.95440742122598 + }, + "year": "2017" + }, + { + "venueId": "4e14648fd16447c40d17819e", + "latLng": { + "lat": 26.442064054546975, + "lng": 50.10001651827406 + }, + "year": "2017" + }, + { + "venueId": "4c9364f8fc9a224b3813faf1", + "latLng": { + "lat": 26.302445650941248, + "lng": 50.21193225099929 + }, + "year": "2017" + }, + { + "venueId": "561d1021498e1bc3913d5785", + "latLng": { + "lat": 17.1028615834098, + "lng": 42.65378441357599 + }, + "year": "2017" + }, + { + "venueId": "4e11cd9e7d8b4d5613dd7c3d", + "latLng": { + "lat": 26.310224251333455, + "lng": 50.13669613718662 + }, + "year": "2017" + }, + { + "venueId": "586041e02b04f80cdd7b15f8", + "latLng": { + "lat": 17.387838658760398, + "lng": 42.542296046474746 + }, + "year": "2017" + }, + { + "venueId": "582b2b81a9d94e3aeec2482c", + "latLng": { + "lat": 26.312319422643665, + "lng": 49.924854288157775 + }, + "year": "2017" + }, + { + "venueId": "4be73ec8d4f7c9b643a92720", + "latLng": { + "lat": 26.331972430371763, + "lng": 50.15118823218681 + }, + "year": "2017" + }, + { + "venueId": "4bd72078304fce725c1d33ab", + "latLng": { + "lat": 29.3427102140464, + "lng": 48.07630015404419 + }, + "year": "2017" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2017" + }, + { + "venueId": "4ffdfd9ae4b028be1e5ee467", + "latLng": { + "lat": 25.35818183594322, + "lng": 49.54604704876826 + }, + "year": "2017" + }, + { + "venueId": "4e947157722e42857afd181c", + "latLng": { + "lat": 26.40098686159573, + "lng": 50.05147090446571 + }, + "year": "2017" + }, + { + "venueId": "522dfa5f11d2025fbf942a8b", + "latLng": { + "lat": 26.37046737447402, + "lng": 50.10324917905471 + }, + "year": "2017" + }, + { + "venueId": "4e8acb728b810d8892794333", + "latLng": { + "lat": 26.301840496358768, + "lng": 50.137178316802604 + }, + "year": "2017" + }, + { + "venueId": "5532ba10498e4134d6cb757a", + "latLng": { + "lat": 17.365633044815137, + "lng": 42.330080882780905 + }, + "year": "2017" + }, + { + "venueId": "4c7c1f55566db60c31c34c0e", + "latLng": { + "lat": 24.767305697008418, + "lng": 46.758001526875624 + }, + "year": "2017" + }, + { + "venueId": "54887e1b498e9cda8693b2d7", + "latLng": { + "lat": 29.343009587781978, + "lng": 48.07698812051013 + }, + "year": "2017" + }, + { + "venueId": "54f5f4cc498e534b3b4162e9", + "latLng": { + "lat": 26.246167780217, + "lng": 50.580638809953875 + }, + "year": "2017" + }, + { + "venueId": "4c93adfc82b56dcbf105c8aa", + "latLng": { + "lat": 29.342277497836324, + "lng": 48.0748709559913 + }, + "year": "2017" + }, + { + "venueId": "4e173cca2271b0e971f0155d", + "latLng": { + "lat": 26.30427450868123, + "lng": 50.130101710784395 + }, + "year": "2017" + }, + { + "venueId": "4eb21b0902d5e0572ad235ab", + "latLng": { + "lat": 17.739965287140915, + "lng": 42.28197874920437 + }, + "year": "2017" + }, + { + "venueId": "534d486d498e5465756282b4", + "latLng": { + "lat": 29.33866284410094, + "lng": 48.07224997484226 + }, + "year": "2017" + }, + { + "venueId": "57bf1676498e3d8512f3a3c6", + "latLng": { + "lat": 26.348842308052447, + "lng": 50.13386843173245 + }, + "year": "2017" + }, + { + "venueId": "514431bfe4b0c80a2d1ec3ee", + "latLng": { + "lat": 26.345137667731013, + "lng": 50.138308440283055 + }, + "year": "2017" + }, + { + "venueId": "4c266790905a0f478f3e6360", + "latLng": { + "lat": 26.23321910400637, + "lng": 50.5546659686146 + }, + "year": "2017" + }, + { + "venueId": "55d8be36498e09d2c5ee1792", + "latLng": { + "lat": 26.30071505674589, + "lng": 50.200864649914315 + }, + "year": "2017" + }, + { + "venueId": "4bb49541f038a593fe29daf0", + "latLng": { + "lat": 26.30809627898332, + "lng": 50.12880593434926 + }, + "year": "2017" + }, + { + "venueId": "4f69ffd8e4b035664ec026ca", + "latLng": { + "lat": 24.51299426203556, + "lng": 44.40552726749428 + }, + "year": "2017" + }, + { + "venueId": "55a72a25498ecb636a732747", + "latLng": { + "lat": 16.9057780777237, + "lng": 42.549804031416436 + }, + "year": "2017" + }, + { + "venueId": "5230663611d2f166755bdeef", + "latLng": { + "lat": 26.407577823980773, + "lng": 50.13556596523946 + }, + "year": "2017" + }, + { + "venueId": "519cce7e498e5412d3afcfac", + "latLng": { + "lat": 26.18734428073315, + "lng": 50.18461628853094 + }, + "year": "2017" + }, + { + "venueId": "582dcccc63bbf63ce95af664", + "latLng": { + "lat": 16.92220150912642, + "lng": 42.54886559244844 + }, + "year": "2017" + }, + { + "venueId": "581f4ffb569e1b2ffbc299f2", + "latLng": { + "lat": 26.39889614418426, + "lng": 50.10410264910439 + }, + "year": "2017" + }, + { + "venueId": "4daaaf38f7b145b37015fa6f", + "latLng": { + "lat": 26.40510098077548, + "lng": 50.059827506436086 + }, + "year": "2017" + }, + { + "venueId": "4dda7a66d4c05d50973136ae", + "latLng": { + "lat": 16.90236084568509, + "lng": 42.553222412783256 + }, + "year": "2017" + }, + { + "venueId": "56c36617cd10dfb0410cecca", + "latLng": { + "lat": 26.313037634662678, + "lng": 50.217117187167936 + }, + "year": "2017" + }, + { + "venueId": "4f256027e4b0a93fbfd73e8d", + "latLng": { + "lat": 26.37910523249332, + "lng": 50.049339303294005 + }, + "year": "2017" + }, + { + "venueId": "526fcfe9498e39b3a1c7423e", + "latLng": { + "lat": 26.394554224638362, + "lng": 50.10447914922548 + }, + "year": "2017" + }, + { + "venueId": "5505d1d9498eded0dc098bc3", + "latLng": { + "lat": 26.34413456837741, + "lng": 50.18533510296674 + }, + "year": "2017" + }, + { + "venueId": "4bb9a2623db7b7134b6a229a", + "latLng": { + "lat": 26.716590605435236, + "lng": 50.082641226957115 + }, + "year": "2017" + }, + { + "venueId": "4be8b8e8c5220f475f25aaca", + "latLng": { + "lat": 26.308791955637272, + "lng": 50.12899685031654 + }, + "year": "2017" + }, + { + "venueId": "5365dc35498e17304c1ca20b", + "latLng": { + "lat": 26.38612148228419, + "lng": 50.095644563111556 + }, + "year": "2017" + }, + { + "venueId": "4ba49322f964a52031a538e3", + "latLng": { + "lat": 26.2908415665022, + "lng": 50.180459473813144 + }, + "year": "2017" + }, + { + "venueId": "4f295c88e4b005595ec17e76", + "latLng": { + "lat": 24.91038931757911, + "lng": 46.928204171926716 + }, + "year": "2017" + }, + { + "venueId": "4ba29407f964a5200d0638e3", + "latLng": { + "lat": 26.128279902466875, + "lng": 50.079524765323974 + }, + "year": "2017" + }, + { + "venueId": "502ebd94e4b089f5e646d337", + "latLng": { + "lat": 26.284281167211162, + "lng": 50.06038925788443 + }, + "year": "2017" + }, + { + "venueId": "5635078a498ec8194d026d06", + "latLng": { + "lat": 26.37655266710491, + "lng": 50.06043949989665 + }, + "year": "2017" + }, + { + "venueId": "5634f389498eae1201a85ee2", + "latLng": { + "lat": 26.403826506836342, + "lng": 50.05747991687728 + }, + "year": "2017" + }, + { + "venueId": "54544705498eb34a3818743b", + "latLng": { + "lat": 26.372618456609874, + "lng": 50.100839746051776 + }, + "year": "2017" + }, + { + "venueId": "51cc881a498e8f0682580418", + "latLng": { + "lat": 17.738162989528046, + "lng": 42.28172301442893 + }, + "year": "2017" + }, + { + "venueId": "53f77e74498ee6361e141c44", + "latLng": { + "lat": 26.30238233224612, + "lng": 50.20749189527992 + }, + "year": "2017" + }, + { + "venueId": "4fb1371ce4b0c824b9797b77", + "latLng": { + "lat": 26.3644038480661, + "lng": 50.09521792537545 + }, + "year": "2017" + }, + { + "venueId": "511b65dde4b00262d58c3596", + "latLng": { + "lat": 26.625272285675404, + "lng": 49.8231924706386 + }, + "year": "2017" + }, + { + "venueId": "4d47ebd8ea3f370473b9240a", + "latLng": { + "lat": 26.304415889703368, + "lng": 50.19847640352136 + }, + "year": "2017" + }, + { + "venueId": "4e39acf1aeb72d06596b3ed2", + "latLng": { + "lat": 26.162689318319522, + "lng": 50.56291945459063 + }, + "year": "2017" + }, + { + "venueId": "4ffa349de4b04619c8a779e9", + "latLng": { + "lat": 26.30503444125578, + "lng": 50.1282535918652 + }, + "year": "2017" + }, + { + "venueId": "573e1056498ea23202979926", + "latLng": { + "lat": 16.871404281484125, + "lng": 42.57290050462497 + }, + "year": "2017" + }, + { + "venueId": "54fb22a0498e1b4422c04e4f", + "latLng": { + "lat": 25.405639581871366, + "lng": 49.567868528651765 + }, + "year": "2018" + }, + { + "venueId": "5270d57c498e18f3e2dd8a64", + "latLng": { + "lat": 26.336797773441358, + "lng": 50.17953966758911 + }, + "year": "2018" + }, + { + "venueId": "56d46308cd10ff7c411fd15f", + "latLng": { + "lat": 26.381131455843974, + "lng": 50.102546473422436 + }, + "year": "2018" + }, + { + "venueId": "574a1610498eeac0d49b804f", + "latLng": { + "lat": 30.052965910175473, + "lng": 31.227219625374566 + }, + "year": "2018" + }, + { + "venueId": "512cc846e4b07767b141f56d", + "latLng": { + "lat": 26.304835444564407, + "lng": 50.129478890304156 + }, + "year": "2018" + }, + { + "venueId": "5ae61e21234724002c614939", + "latLng": { + "lat": 26.40423360952686, + "lng": 50.05474619355583 + }, + "year": "2018" + }, + { + "venueId": "59ee3ebe2632ec468faf2bc0", + "latLng": { + "lat": 26.468708263446587, + "lng": 49.79793016184989 + }, + "year": "2018" + }, + { + "venueId": "53b45754498ef6d2fb697baf", + "latLng": { + "lat": 25.941584988526934, + "lng": 49.67132105869799 + }, + "year": "2018" + }, + { + "venueId": "51147600e4b0133e8f803b16", + "latLng": { + "lat": 23.765316999982375, + "lng": 49.18176698173556 + }, + "year": "2018" + }, + { + "venueId": "59d79c353af98874a10ec71f", + "latLng": { + "lat": 25.35726886685636, + "lng": 49.54280461312759 + }, + "year": "2018" + }, + { + "venueId": "56d9f511cd10b39f877848dc", + "latLng": { + "lat": 25.40511154220041, + "lng": 49.567087373492264 + }, + "year": "2018" + }, + { + "venueId": "5218282711d2b8e83502a200", + "latLng": { + "lat": 26.339724351566215, + "lng": 50.15180122749607 + }, + "year": "2018" + }, + { + "venueId": "59669fbc1ffed72ded78f305", + "latLng": { + "lat": 30.060667443062115, + "lng": 31.22066782537842 + }, + "year": "2018" + }, + { + "venueId": "563851aacd10523c8e73c4b6", + "latLng": { + "lat": 26.359711067741134, + "lng": 50.18974878761343 + }, + "year": "2018" + }, + { + "venueId": "5aff352c5f68b90039bdcf06", + "latLng": { + "lat": 26.306345304566587, + "lng": 50.220466810244105 + }, + "year": "2018" + }, + { + "venueId": "589a3f5b01f07702f88ad791", + "latLng": { + "lat": 26.387793612445595, + "lng": 50.1044691091919 + }, + "year": "2018" + }, + { + "venueId": "4f9020ef0cd67357a5cf6e9d", + "latLng": { + "lat": 26.317166463664943, + "lng": 50.191417797184975 + }, + "year": "2018" + }, + { + "venueId": "5885bbb18d8e992976f39bd1", + "latLng": { + "lat": 24.892080399365355, + "lng": 49.197639692524966 + }, + "year": "2018" + }, + { + "venueId": "4f35078ee4b00172d255678c", + "latLng": { + "lat": 30.04771392073928, + "lng": 31.261935206423637 + }, + "year": "2018" + }, + { + "venueId": "4b9b3e34f964a520e1fb35e3", + "latLng": { + "lat": 25.343839999810143, + "lng": 49.59862237833679 + }, + "year": "2018" + }, + { + "venueId": "58874ccd9465dd27c8339654", + "latLng": { + "lat": 29.97663996701597, + "lng": 31.131247502629083 + }, + "year": "2018" + }, + { + "venueId": "4f2fa131e4b040ea0176accf", + "latLng": { + "lat": 26.328707011171243, + "lng": 50.109358802407044 + }, + "year": "2018" + }, + { + "venueId": "4eac443e29c2152dec1a1ab8", + "latLng": { + "lat": 26.18342215359184, + "lng": 50.32919787503804 + }, + "year": "2018" + }, + { + "venueId": "4f3b5e94e4b08b7acea30c86", + "latLng": { + "lat": 26.320840325302918, + "lng": 50.21574419661726 + }, + "year": "2018" + }, + { + "venueId": "50cf5f04e4b0a8af9773d540", + "latLng": { + "lat": 25.930724579332022, + "lng": 49.65800585360908 + }, + "year": "2018" + }, + { + "venueId": "584be44601f433697d2feef3", + "latLng": { + "lat": 26.346416947264153, + "lng": 50.145064505993524 + }, + "year": "2018" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2018" + }, + { + "venueId": "58049070d67c49b3ae438f4f", + "latLng": { + "lat": 26.380796971312037, + "lng": 50.16891099268545 + }, + "year": "2018" + }, + { + "venueId": "4cc416901e596dcb4c17cf67", + "latLng": { + "lat": 26.43510590802012, + "lng": 50.10793301949197 + }, + "year": "2018" + }, + { + "venueId": "525446c7498e764f985d08e3", + "latLng": { + "lat": 26.323218317973797, + "lng": 50.161829826332976 + }, + "year": "2018" + }, + { + "venueId": "4ff46e4de4b002d4d23c6773", + "latLng": { + "lat": 26.334182618968818, + "lng": 50.21209820487602 + }, + "year": "2018" + }, + { + "venueId": "513a197ae4b08ec1ee2572f5", + "latLng": { + "lat": 25.44396936668568, + "lng": 49.567445573313854 + }, + "year": "2018" + }, + { + "venueId": "4db8cea58154ce84dc1b91c8", + "latLng": { + "lat": 26.296620499851496, + "lng": 50.220642925160675 + }, + "year": "2018" + }, + { + "venueId": "4b5340b6f964a520429427e3", + "latLng": { + "lat": 30.057093150834614, + "lng": 31.224832589011314 + }, + "year": "2018" + }, + { + "venueId": "5a1d9a79e679bc21a11d3ce7", + "latLng": { + "lat": 26.24798610038684, + "lng": 50.58577902286457 + }, + "year": "2018" + }, + { + "venueId": "56c1fa69cd100eb96d0b6e9d", + "latLng": { + "lat": 29.97422745738815, + "lng": 31.138531681810623 + }, + "year": "2018" + }, + { + "venueId": "59a1a9618d0a53775d6d86a6", + "latLng": { + "lat": 26.33829906295136, + "lng": 50.15255984620864 + }, + "year": "2018" + }, + { + "venueId": "4bc0d7304cdfc9b663949321", + "latLng": { + "lat": 26.417436882184862, + "lng": 50.10555344243139 + }, + "year": "2018" + }, + { + "venueId": "56cb454f498e00687ee9166f", + "latLng": { + "lat": 26.334506006543233, + "lng": 50.15382088237432 + }, + "year": "2018" + }, + { + "venueId": "5a91657a4a7aae6863ce6277", + "latLng": { + "lat": 26.455577850146657, + "lng": 50.118632151553385 + }, + "year": "2018" + }, + { + "venueId": "5315dffb498efbe787328094", + "latLng": { + "lat": 26.32152088279428, + "lng": 50.12501441901219 + }, + "year": "2018" + }, + { + "venueId": "4d942292561acbffe152e1a5", + "latLng": { + "lat": 25.937451177280188, + "lng": 49.67505404089515 + }, + "year": "2018" + }, + { + "venueId": "52237ce611d29d701234ae99", + "latLng": { + "lat": 26.417736377521408, + "lng": 50.064312257934134 + }, + "year": "2018" + }, + { + "venueId": "587dd8c70393cc1bf1416d0b", + "latLng": { + "lat": 26.37320303206198, + "lng": 50.104343608912394 + }, + "year": "2018" + }, + { + "venueId": "4f5c8499e4b0ea8599916e75", + "latLng": { + "lat": 26.244490760378557, + "lng": 49.590394815333376 + }, + "year": "2018" + }, + { + "venueId": "586659adf5957263980e4c03", + "latLng": { + "lat": 26.153212634377287, + "lng": 49.432703351337096 + }, + "year": "2018" + }, + { + "venueId": "4c7fff10d6ebbfb70b5539a4", + "latLng": { + "lat": 26.30947895766024, + "lng": 50.17237771761995 + }, + "year": "2018" + }, + { + "venueId": "50b460d1e4b019904a2d652a", + "latLng": { + "lat": 26.383670718932596, + "lng": 50.10377627245489 + }, + "year": "2018" + }, + { + "venueId": "582ef11b88cfcc51e2f5b59b", + "latLng": { + "lat": 25.6237939316018, + "lng": 49.549075727068995 + }, + "year": "2018" + }, + { + "venueId": "5a9bb8bd3ba767578acd4d8f", + "latLng": { + "lat": 25.405111062553388, + "lng": 49.56706755130034 + }, + "year": "2018" + }, + { + "venueId": "58fed84bc0af577da1171f33", + "latLng": { + "lat": 26.306910111422372, + "lng": 50.1758857113052 + }, + "year": "2018" + }, + { + "venueId": "5234235c11d2e0a6e2d620fd", + "latLng": { + "lat": 26.406497289080352, + "lng": 50.15534814964292 + }, + "year": "2018" + }, + { + "venueId": "5040d135e4b08d5b619293a2", + "latLng": { + "lat": 29.99780233277941, + "lng": 31.139449154924215 + }, + "year": "2018" + }, + { + "venueId": "52accb61498eb00c72074291", + "latLng": { + "lat": 25.932585737261817, + "lng": 49.00741646716979 + }, + "year": "2018" + }, + { + "venueId": "5512ceb4498ecb1f74da44c2", + "latLng": { + "lat": 26.392600188669856, + "lng": 50.16432718461252 + }, + "year": "2018" + }, + { + "venueId": "4d95ae1d2bd6f04d431b2350", + "latLng": { + "lat": 30.057081440619882, + "lng": 31.22493330181667 + }, + "year": "2018" + }, + { + "venueId": "55b882fd498e728f38827a5f", + "latLng": { + "lat": 26.11645407887344, + "lng": 49.861518423183384 + }, + "year": "2018" + }, + { + "venueId": "5316e54d11d24c0696ddc5cf", + "latLng": { + "lat": 25.7916714834815, + "lng": 48.770638098138186 + }, + "year": "2018" + }, + { + "venueId": "5145caf3e4b086ca85c2759e", + "latLng": { + "lat": 26.301536835580244, + "lng": 50.21411483200713 + }, + "year": "2018" + }, + { + "venueId": "4c548ea106901b8daac8fe4b", + "latLng": { + "lat": 26.315197386299147, + "lng": 50.1315379809918 + }, + "year": "2018" + }, + { + "venueId": "54a71a18498ea5a4460c9be1", + "latLng": { + "lat": 26.233267626788905, + "lng": 49.99025113838707 + }, + "year": "2018" + }, + { + "venueId": "5743d462498e8b1ee1528660", + "latLng": { + "lat": 26.37847404684592, + "lng": 50.1705031850002 + }, + "year": "2018" + }, + { + "venueId": "4e1d7f7dfa7653a9b2e33d8f", + "latLng": { + "lat": 26.329635817723467, + "lng": 50.10930357779651 + }, + "year": "2018" + }, + { + "venueId": "5b86aa0fc0af57002cbb2dc0", + "latLng": { + "lat": 30.02518797245518, + "lng": 31.481147039722494 + }, + "year": "2018" + }, + { + "venueId": "5840583e92ca4c290cfbbb54", + "latLng": { + "lat": 26.241667845029262, + "lng": 50.589133464685304 + }, + "year": "2018" + }, + { + "venueId": "4f7f1b3de4b043dab4d54cdb", + "latLng": { + "lat": 26.39501936738614, + "lng": 50.09847048658385 + }, + "year": "2018" + }, + { + "venueId": "54744176498e231671f6591b", + "latLng": { + "lat": 26.215787812025194, + "lng": 50.20750187377458 + }, + "year": "2018" + }, + { + "venueId": "4f832728e4b0c0cb0609cfc4", + "latLng": { + "lat": 25.9414648220228, + "lng": 49.670842616088144 + }, + "year": "2018" + }, + { + "venueId": "4e0dfc83ae603a50b53e019a", + "latLng": { + "lat": 26.30499173019398, + "lng": 50.16687489722827 + }, + "year": "2018" + }, + { + "venueId": "5b75cb15b9a5a8002cc4866a", + "latLng": { + "lat": 26.39481546113907, + "lng": 50.06098126977084 + }, + "year": "2018" + }, + { + "venueId": "58cc0191951e7d6dae003f21", + "latLng": { + "lat": 30.11216393691405, + "lng": 31.398997988440936 + }, + "year": "2018" + }, + { + "venueId": "546e4059498ebce2c59a887f", + "latLng": { + "lat": 25.92572162831767, + "lng": 49.646970264066034 + }, + "year": "2018" + }, + { + "venueId": "52481aea11d2a0722cc8693a", + "latLng": { + "lat": 26.39528209878221, + "lng": 50.15542853732564 + }, + "year": "2018" + }, + { + "venueId": "53650551498e95c589fcfa93", + "latLng": { + "lat": 30.053475420707052, + "lng": 31.205399003373316 + }, + "year": "2018" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2018" + }, + { + "venueId": "4cf9cb57d7206ea816443569", + "latLng": { + "lat": 26.3263875643574, + "lng": 50.10993607517589 + }, + "year": "2018" + }, + { + "venueId": "4d2d4ea9762fa143bc197864", + "latLng": { + "lat": 26.281242956828358, + "lng": 50.2045502748361 + }, + "year": "2018" + }, + { + "venueId": "569a4d15498ed8c4dcf41ce5", + "latLng": { + "lat": 25.940719057397573, + "lng": 49.67031434020906 + }, + "year": "2018" + }, + { + "venueId": "4e9bb42c61afc418ba342f6f", + "latLng": { + "lat": 25.190477088412415, + "lng": 49.31133215211736 + }, + "year": "2018" + }, + { + "venueId": "58484f6aa6118c1921c23108", + "latLng": { + "lat": 30.028243478227047, + "lng": 31.409675863398324 + }, + "year": "2018" + }, + { + "venueId": "4ba9fecbf964a52075423ae3", + "latLng": { + "lat": 26.311792671546957, + "lng": 50.13147779240315 + }, + "year": "2018" + }, + { + "venueId": "4f218b54e4b0b4670b3a3b07", + "latLng": { + "lat": 24.21464778757781, + "lng": 49.0940448498883 + }, + "year": "2018" + }, + { + "venueId": "4be27ee7d27a20a1ddbe8f5b", + "latLng": { + "lat": 26.336232081233575, + "lng": 50.199668001075096 + }, + "year": "2018" + }, + { + "venueId": "4fe78e6be4b0b3b973f882c4", + "latLng": { + "lat": 24.6921781001631, + "lng": 46.7566127501855 + }, + "year": "2018" + }, + { + "venueId": "5010849ce4b017f65b632c08", + "latLng": { + "lat": 26.361155207545753, + "lng": 50.08873340184717 + }, + "year": "2018" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2018" + }, + { + "venueId": "5852c7fcef787f5c507cf6fb", + "latLng": { + "lat": 26.381997990360343, + "lng": 50.10366591189471 + }, + "year": "2018" + }, + { + "venueId": "4f0d9d73e4b0354497a04f5b", + "latLng": { + "lat": 26.29495056956359, + "lng": 50.12969994101414 + }, + "year": "2018" + }, + { + "venueId": "4e69b9f445ddadf2d027e96e", + "latLng": { + "lat": 30.043740637075928, + "lng": 31.227991156787695 + }, + "year": "2018" + }, + { + "venueId": "4b7a230bf964a52034242fe3", + "latLng": { + "lat": 30.122115504836557, + "lng": 31.389827708465564 + }, + "year": "2018" + }, + { + "venueId": "4d91aadcf5388cfa779bb93d", + "latLng": { + "lat": 30.04609524104959, + "lng": 31.262242663472467 + }, + "year": "2018" + }, + { + "venueId": "586223e3d4390729e0924f5b", + "latLng": { + "lat": 26.304961729501276, + "lng": 50.17752921057632 + }, + "year": "2018" + }, + { + "venueId": "5a44d3a5a35dce7b5a0619aa", + "latLng": { + "lat": 26.346688992602026, + "lng": 50.144589013865364 + }, + "year": "2018" + }, + { + "venueId": "59f66aff178a2a3eed800942", + "latLng": { + "lat": 26.322244737488674, + "lng": 50.2182488746006 + }, + "year": "2018" + }, + { + "venueId": "51475255e4b0ab7ca3335f54", + "latLng": { + "lat": 26.472977557479055, + "lng": 50.12339250433598 + }, + "year": "2018" + }, + { + "venueId": "59c2c7175315933569797baa", + "latLng": { + "lat": 26.397065336798246, + "lng": 50.044920780706256 + }, + "year": "2018" + }, + { + "venueId": "4c41666dce54e21e9a150b1a", + "latLng": { + "lat": 26.393338661718754, + "lng": 50.153368715002976 + }, + "year": "2018" + }, + { + "venueId": "5a0edc3132b61d73c2795a8b", + "latLng": { + "lat": 26.287824208766764, + "lng": 50.21095162367342 + }, + "year": "2018" + }, + { + "venueId": "59a575435d0fea42bfeb5ae9", + "latLng": { + "lat": 26.310061553027438, + "lng": 50.1364650941444 + }, + "year": "2018" + }, + { + "venueId": "4eb6cd0ee5fa17fc87596d3c", + "latLng": { + "lat": 26.309888724524644, + "lng": 50.16984485078754 + }, + "year": "2018" + }, + { + "venueId": "4e11cd9e7d8b4d5613dd7c3d", + "latLng": { + "lat": 26.310224251333455, + "lng": 50.13669613718662 + }, + "year": "2018" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2018" + }, + { + "venueId": "5a33de971b0ea57a2f703bda", + "latLng": { + "lat": 26.39352441965865, + "lng": 50.104780272568554 + }, + "year": "2018" + }, + { + "venueId": "4dc530dcfa76d685cdd93f94", + "latLng": { + "lat": 30.05021570972439, + "lng": 31.22936195993954 + }, + "year": "2018" + }, + { + "venueId": "522dfa5f11d2025fbf942a8b", + "latLng": { + "lat": 26.37046737447402, + "lng": 50.10324917905471 + }, + "year": "2018" + }, + { + "venueId": "567848c3498e84df5eee8314", + "latLng": { + "lat": 25.944958626131978, + "lng": 49.66667634220938 + }, + "year": "2018" + }, + { + "venueId": "4e8acb728b810d8892794333", + "latLng": { + "lat": 26.301840496358768, + "lng": 50.137178316802604 + }, + "year": "2018" + }, + { + "venueId": "4d31dc472c76a1434f376ac7", + "latLng": { + "lat": 26.309677895631314, + "lng": 50.17039254603536 + }, + "year": "2018" + }, + { + "venueId": "50507fa9e4b0c7d0d9449b69", + "latLng": { + "lat": 26.30454596593319, + "lng": 50.13077468110844 + }, + "year": "2018" + }, + { + "venueId": "4e173cca2271b0e971f0155d", + "latLng": { + "lat": 26.30427450868123, + "lng": 50.130101710784395 + }, + "year": "2018" + }, + { + "venueId": "5268f5d2498ee025c2cb6794", + "latLng": { + "lat": 30.028318773251765, + "lng": 31.40881639851368 + }, + "year": "2018" + }, + { + "venueId": "53751feb498ed7ba8fbf216d", + "latLng": { + "lat": 26.348492066875174, + "lng": 50.14312551358369 + }, + "year": "2018" + }, + { + "venueId": "59089ae95d891b37234c78cb", + "latLng": { + "lat": 26.272118378138895, + "lng": 50.221140859241295 + }, + "year": "2018" + }, + { + "venueId": "58cd174c297c16730ce8c3e9", + "latLng": { + "lat": 26.290522390139692, + "lng": 50.18071078940671 + }, + "year": "2018" + }, + { + "venueId": "4f4d75cde4b0c132f645c024", + "latLng": { + "lat": 24.136292011784985, + "lng": 49.09968032651331 + }, + "year": "2018" + }, + { + "venueId": "5162e825e4b0c93abaf521b5", + "latLng": { + "lat": 26.299972360774365, + "lng": 50.13718333952709 + }, + "year": "2018" + }, + { + "venueId": "4d9f0d329b91a1cd65d162c0", + "latLng": { + "lat": 30.039303010172087, + "lng": 31.22438300530298 + }, + "year": "2018" + }, + { + "venueId": "4c3476403896e21e8887eb90", + "latLng": { + "lat": 26.303269124429423, + "lng": 50.22191040172173 + }, + "year": "2018" + }, + { + "venueId": "4be8b8e8c5220f475f25aaca", + "latLng": { + "lat": 26.308791955637272, + "lng": 50.12899685031654 + }, + "year": "2018" + }, + { + "venueId": "59f60be3bb8d3670f2744e7f", + "latLng": { + "lat": 24.145024729772476, + "lng": 49.23154680110642 + }, + "year": "2018" + }, + { + "venueId": "4ba49322f964a52031a538e3", + "latLng": { + "lat": 26.2908415665022, + "lng": 50.180459473813144 + }, + "year": "2018" + }, + { + "venueId": "5176976e498e0de3b5abfc83", + "latLng": { + "lat": 26.305272402119805, + "lng": 50.17476996645275 + }, + "year": "2018" + }, + { + "venueId": "5b549b256a5950002c5254ac", + "latLng": { + "lat": 25.912841589820204, + "lng": 49.61188932034611 + }, + "year": "2018" + }, + { + "venueId": "53779ba9498eba9ab20f918e", + "latLng": { + "lat": 26.426668771528647, + "lng": 50.06503466513045 + }, + "year": "2018" + }, + { + "venueId": "5c1d4d037b385f002ca392ef", + "latLng": { + "lat": 26.30213925665088, + "lng": 50.176815514309276 + }, + "year": "2018" + }, + { + "venueId": "548fd29b498ef18a79998e64", + "latLng": { + "lat": 25.917681774796517, + "lng": 49.65620215338955 + }, + "year": "2018" + }, + { + "venueId": "517640a4498ecc06f3b8b26e", + "latLng": { + "lat": 25.940933255284715, + "lng": 49.639041888539545 + }, + "year": "2018" + }, + { + "venueId": "50816541e4b00b2c3f59137e", + "latLng": { + "lat": 25.925214977597893, + "lng": 49.64543092604682 + }, + "year": "2018" + }, + { + "venueId": "578e3305498ef6de25312b29", + "latLng": { + "lat": 26.391659028923137, + "lng": 50.15492800012504 + }, + "year": "2018" + }, + { + "venueId": "59925940dd84423d0c358e25", + "latLng": { + "lat": 24.135704031841048, + "lng": 49.10009802838416 + }, + "year": "2018" + }, + { + "venueId": "4ffa349de4b04619c8a779e9", + "latLng": { + "lat": 26.30503444125578, + "lng": 50.1282535918652 + }, + "year": "2018" + }, + { + "venueId": "54fb22a0498e1b4422c04e4f", + "latLng": { + "lat": 25.405639581871366, + "lng": 49.567868528651765 + }, + "year": "2019" + }, + { + "venueId": "5699d616498ead8f54d82b4e", + "latLng": { + "lat": 22.536713878435187, + "lng": 114.04969216978823 + }, + "year": "2019" + }, + { + "venueId": "5bfe570f054e290032364fcd", + "latLng": { + "lat": 37.52510399463006, + "lng": 126.92603302426657 + }, + "year": "2019" + }, + { + "venueId": "4c95987b6b35a143620227dc", + "latLng": { + "lat": 22.546035032083875, + "lng": 114.08141553843225 + }, + "year": "2019" + }, + { + "venueId": "585427ec876ade7856c8b930", + "latLng": { + "lat": 27.8411809665311, + "lng": 48.77219597131175 + }, + "year": "2019" + }, + { + "venueId": "4eba66a68b8189688452c67f", + "latLng": { + "lat": 26.190178600731116, + "lng": 50.31133175292003 + }, + "year": "2019" + }, + { + "venueId": "52fadf34498e9bfde9ee27b9", + "latLng": { + "lat": 23.10717242299328, + "lng": 113.24526951466522 + }, + "year": "2019" + }, + { + "venueId": "5a2bb22667af3a5a3a06e619", + "latLng": { + "lat": 23.11682403625386, + "lng": 113.2790859938692 + }, + "year": "2019" + }, + { + "venueId": "5bf8fc2a2db4a9002c581882", + "latLng": { + "lat": 25.92918335024489, + "lng": 49.657871321579556 + }, + "year": "2019" + }, + { + "venueId": "4f056e6699116f05b5940c69", + "latLng": { + "lat": 23.197378030427853, + "lng": 113.21943630965303 + }, + "year": "2019" + }, + { + "venueId": "56d9f511cd10b39f877848dc", + "latLng": { + "lat": 25.40511154220041, + "lng": 49.567087373492264 + }, + "year": "2019" + }, + { + "venueId": "51387a06e4b0556dff6efc02", + "latLng": { + "lat": 22.543060768501036, + "lng": 114.07926122913055 + }, + "year": "2019" + }, + { + "venueId": "4b7d83a2f964a5209fc32fe3", + "latLng": { + "lat": 34.06735076133058, + "lng": -118.40090944963471 + }, + "year": "2019" + }, + { + "venueId": "5c03902f492822002db8c076", + "latLng": { + "lat": 26.3787915780464, + "lng": 50.17088009710761 + }, + "year": "2019" + }, + { + "venueId": "4cf8d9a2e8e25481d294d962", + "latLng": { + "lat": 23.141934025917767, + "lng": 113.27272423498981 + }, + "year": "2019" + }, + { + "venueId": "4b7185ccf964a520034b2de3", + "latLng": { + "lat": 24.953981001287374, + "lng": 46.70860333688317 + }, + "year": "2019" + }, + { + "venueId": "4beb1371415e20a1acdae5bb", + "latLng": { + "lat": 26.306923738769804, + "lng": 50.21044874398196 + }, + "year": "2019" + }, + { + "venueId": "4cd15e5f48b837040f43f8de", + "latLng": { + "lat": 22.548556043276523, + "lng": 114.08125294940427 + }, + "year": "2019" + }, + { + "venueId": "4c3aec9662f1c92880aa8e53", + "latLng": { + "lat": 37.53443901861131, + "lng": 126.9918470174345 + }, + "year": "2019" + }, + { + "venueId": "4a88c6c5f964a520940720e3", + "latLng": { + "lat": 34.10158547189443, + "lng": -118.33819024490587 + }, + "year": "2019" + }, + { + "venueId": "52148d6911d277e09e8de1d3", + "latLng": { + "lat": 26.2613812556596, + "lng": 50.212067952833586 + }, + "year": "2019" + }, + { + "venueId": "5264012511d2caed0b5578aa", + "latLng": { + "lat": 26.322450454789355, + "lng": 50.21692615166177 + }, + "year": "2019" + }, + { + "venueId": "5c512e5935d3fc002cdb52c2", + "latLng": { + "lat": 24.146192810943326, + "lng": 49.2698293294072 + }, + "year": "2019" + }, + { + "venueId": "4c271761a852c9286ac3e76c", + "latLng": { + "lat": 26.38421458419366, + "lng": 50.16756335070863 + }, + "year": "2019" + }, + { + "venueId": "4cbca6ebbac93704687df97c", + "latLng": { + "lat": 33.91251868891497, + "lng": -118.28238484366496 + }, + "year": "2019" + }, + { + "venueId": "4edd0bfb46907c1b45cb2be0", + "latLng": { + "lat": 34.13993730204432, + "lng": -118.01356257262363 + }, + "year": "2019" + }, + { + "venueId": "58417cc8668af742c77dac47", + "latLng": { + "lat": 26.18238603769917, + "lng": 49.36779634368842 + }, + "year": "2019" + }, + { + "venueId": "5b5356aa180b91002ca81136", + "latLng": { + "lat": 26.32771596529918, + "lng": 50.07841698487767 + }, + "year": "2019" + }, + { + "venueId": "50cf5f04e4b0a8af9773d540", + "latLng": { + "lat": 25.930724579332022, + "lng": 49.65800585360908 + }, + "year": "2019" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2019" + }, + { + "venueId": "58049070d67c49b3ae438f4f", + "latLng": { + "lat": 26.380796971312037, + "lng": 50.16891099268545 + }, + "year": "2019" + }, + { + "venueId": "55a2777e498ee1b028131b5c", + "latLng": { + "lat": 26.34769835985698, + "lng": 50.14366292160873 + }, + "year": "2019" + }, + { + "venueId": "4e596a387d8b966a15c95b58", + "latLng": { + "lat": 34.13544529769249, + "lng": -118.04960629596303 + }, + "year": "2019" + }, + { + "venueId": "574e8ef3498e462ceda64778", + "latLng": { + "lat": 26.309251774740208, + "lng": 50.153830852074755 + }, + "year": "2019" + }, + { + "venueId": "55131069498eac835dd5acc1", + "latLng": { + "lat": 34.11090291755283, + "lng": -117.53238888402102 + }, + "year": "2019" + }, + { + "venueId": "4db8cea58154ce84dc1b91c8", + "latLng": { + "lat": 26.296620499851496, + "lng": 50.220642925160675 + }, + "year": "2019" + }, + { + "venueId": "521c9a4d11d294371fc41553", + "latLng": { + "lat": 26.281065772791166, + "lng": 50.20815063657339 + }, + "year": "2019" + }, + { + "venueId": "5ac4c2eabed4832f57cdb4a1", + "latLng": { + "lat": 26.418825118776414, + "lng": 49.98826707928333 + }, + "year": "2019" + }, + { + "venueId": "4ce8da11678aa093d646ebea", + "latLng": { + "lat": 23.15442019744304, + "lng": 113.25752861030038 + }, + "year": "2019" + }, + { + "venueId": "5cbb3e1c66f3cd002cb26253", + "latLng": { + "lat": 26.30288275906387, + "lng": 50.22151808473476 + }, + "year": "2019" + }, + { + "venueId": "5b5cc45d0d8a0f002ca50d56", + "latLng": { + "lat": 26.32853422143448, + "lng": 50.18082136859659 + }, + "year": "2019" + }, + { + "venueId": "4df9d62ad22d964c6b9b133a", + "latLng": { + "lat": 24.712364083417224, + "lng": 46.622237357347636 + }, + "year": "2019" + }, + { + "venueId": "4cc883d7bcb1b1f7b2c5098a", + "latLng": { + "lat": 26.306458057720352, + "lng": 50.21982813270256 + }, + "year": "2019" + }, + { + "venueId": "5cecb6302db4a9002c8c21dc", + "latLng": { + "lat": 24.674654266662625, + "lng": 46.62330199664302 + }, + "year": "2019" + }, + { + "venueId": "4c17b31a834e2d7f6ebe2780", + "latLng": { + "lat": 26.269359709760426, + "lng": 50.62783234457726 + }, + "year": "2019" + }, + { + "venueId": "4b48fad3f964a520876026e3", + "latLng": { + "lat": 33.946342415965375, + "lng": -118.38479099572898 + }, + "year": "2019" + }, + { + "venueId": "50c8820de4b0a8028702024e", + "latLng": { + "lat": 23.139507215950278, + "lng": 113.27600407286562 + }, + "year": "2019" + }, + { + "venueId": "562c8a93498ee29c1d60ed21", + "latLng": { + "lat": 22.536312138867654, + "lng": 114.057983434775 + }, + "year": "2019" + }, + { + "venueId": "4e97e2b7f5b9dd852fa1ad59", + "latLng": { + "lat": 26.29203031949764, + "lng": 50.220265626490196 + }, + "year": "2019" + }, + { + "venueId": "5c9e0933e1f228002cb8b462", + "latLng": { + "lat": 26.322511819936324, + "lng": 50.21673503817111 + }, + "year": "2019" + }, + { + "venueId": "4d942292561acbffe152e1a5", + "latLng": { + "lat": 25.937451177280188, + "lng": 49.67505404089515 + }, + "year": "2019" + }, + { + "venueId": "52237ce611d29d701234ae99", + "latLng": { + "lat": 26.417736377521408, + "lng": 50.064312257934134 + }, + "year": "2019" + }, + { + "venueId": "4d921abc80d337044e2aac06", + "latLng": { + "lat": 26.300828344596354, + "lng": 50.19792334928266 + }, + "year": "2019" + }, + { + "venueId": "4ea2e236f5b9efc0019ccee3", + "latLng": { + "lat": 26.293243578041107, + "lng": 50.17354367588992 + }, + "year": "2019" + }, + { + "venueId": "5ae0d32e1755620039601615", + "latLng": { + "lat": 37.53442471528247, + "lng": 126.99341449876212 + }, + "year": "2019" + }, + { + "venueId": "5bceef97f05ca8002d73b170", + "latLng": { + "lat": 26.386596138729537, + "lng": 50.15258496619555 + }, + "year": "2019" + }, + { + "venueId": "4b69ef23f964a520efbc2be3", + "latLng": { + "lat": 14.509826413318583, + "lng": 121.01273780730617 + }, + "year": "2019" + }, + { + "venueId": "585da73d8cb34e7623509dcb", + "latLng": { + "lat": 26.144725585375785, + "lng": 49.89591190643732 + }, + "year": "2019" + }, + { + "venueId": "5568b5dc498ee2f2c4fea8a2", + "latLng": { + "lat": 26.922093350514963, + "lng": 49.43071796070473 + }, + "year": "2019" + }, + { + "venueId": "513dc787e4b0f9298de8ea9f", + "latLng": { + "lat": 23.12701976137881, + "lng": 113.26357084513384 + }, + "year": "2019" + }, + { + "venueId": "5d189bec627d6b0023425deb", + "latLng": { + "lat": 26.378842332596854, + "lng": 50.170744329956506 + }, + "year": "2019" + }, + { + "venueId": "4bd75f03304fce72b77733ab", + "latLng": { + "lat": 26.303997383304093, + "lng": 50.21095154509814 + }, + "year": "2019" + }, + { + "venueId": "527d0ea811d211902c2c6dab", + "latLng": { + "lat": 26.05516029881186, + "lng": 49.79032409598129 + }, + "year": "2019" + }, + { + "venueId": "5c4ba6baa6031c002ca918b8", + "latLng": { + "lat": 25.93304881276461, + "lng": 49.65533520107979 + }, + "year": "2019" + }, + { + "venueId": "4bc02777b492d13a63f6a360", + "latLng": { + "lat": 22.54316473987458, + "lng": 114.08417373636165 + }, + "year": "2019" + }, + { + "venueId": "54917e4a498ea40c002010d9", + "latLng": { + "lat": 24.012289981307845, + "lng": 48.71342202074946 + }, + "year": "2019" + }, + { + "venueId": "4bfe9d8568c7a593905f3f44", + "latLng": { + "lat": 23.141230292807972, + "lng": 113.27632972966393 + }, + "year": "2019" + }, + { + "venueId": "4e096b1de4cdefcff6e8913a", + "latLng": { + "lat": 22.54375201198059, + "lng": 114.08227493662145 + }, + "year": "2019" + }, + { + "venueId": "4cac3a36a6e08cfab94fa994", + "latLng": { + "lat": 26.42325298217571, + "lng": 50.11931009436315 + }, + "year": "2019" + }, + { + "venueId": "4c354dbf16adc9287cb3c69c", + "latLng": { + "lat": 22.541811451934194, + "lng": 114.08171168258491 + }, + "year": "2019" + }, + { + "venueId": "4d2370e9756e8cfa37f08754", + "latLng": { + "lat": 23.140961699915287, + "lng": 113.27484682690961 + }, + "year": "2019" + }, + { + "venueId": "521f5b4611d2b11f2dbcf6b5", + "latLng": { + "lat": 26.31398222482731, + "lng": 50.14782734745071 + }, + "year": "2019" + }, + { + "venueId": "558322fc498eaf3d4d6e73cd", + "latLng": { + "lat": 23.11317445777061, + "lng": 113.2349584468951 + }, + "year": "2019" + }, + { + "venueId": "4d87b6ed5ecdf04dd967888a", + "latLng": { + "lat": 34.0948761854352, + "lng": -118.40800674399598 + }, + "year": "2019" + }, + { + "venueId": "4fc05ae8e4b014a2d6454758", + "latLng": { + "lat": 23.11870858305963, + "lng": 113.27981889984734 + }, + "year": "2019" + }, + { + "venueId": "4b01d7edf964a520d74522e3", + "latLng": { + "lat": 34.00861498019936, + "lng": -118.49226802737198 + }, + "year": "2019" + }, + { + "venueId": "4b4712bef964a520162b26e3", + "latLng": { + "lat": 14.552079809114954, + "lng": 121.02177064546447 + }, + "year": "2019" + }, + { + "venueId": "4bea177d62c0c9286088e0d4", + "latLng": { + "lat": 33.94350833811255, + "lng": -118.4086056892364 + }, + "year": "2019" + }, + { + "venueId": "593af9050d2be72ade2a8807", + "latLng": { + "lat": 26.302607381066206, + "lng": 50.22180477766943 + }, + "year": "2019" + }, + { + "venueId": "4f3a9527e4b0f48edbd653f6", + "latLng": { + "lat": 34.14106109534887, + "lng": -118.00161680963143 + }, + "year": "2019" + }, + { + "venueId": "4e1d7f7dfa7653a9b2e33d8f", + "latLng": { + "lat": 26.329635817723467, + "lng": 50.10930357779651 + }, + "year": "2019" + }, + { + "venueId": "4bd2e199462cb713d013dd07", + "latLng": { + "lat": 37.53463181848343, + "lng": 126.9953916882367 + }, + "year": "2019" + }, + { + "venueId": "4c73c3b67121a1cde9e965d1", + "latLng": { + "lat": 37.543045963477276, + "lng": 127.07235200571013 + }, + "year": "2019" + }, + { + "venueId": "50e09389e4b0f6f2cfadd4be", + "latLng": { + "lat": 25.939798216812953, + "lng": 49.66799688153747 + }, + "year": "2019" + }, + { + "venueId": "4b456bd5f964a520720c26e3", + "latLng": { + "lat": 14.551206389851496, + "lng": 121.02165698667957 + }, + "year": "2019" + }, + { + "venueId": "54e2e664498e1961aedaa065", + "latLng": { + "lat": 37.54705797399715, + "lng": 127.18256001526714 + }, + "year": "2019" + }, + { + "venueId": "5a0f10d828122f321454f25e", + "latLng": { + "lat": 25.929715452914422, + "lng": 49.658095541799156 + }, + "year": "2019" + }, + { + "venueId": "4b7eba2bf964a52065fb2fe3", + "latLng": { + "lat": 34.13981342495046, + "lng": -118.01499211115602 + }, + "year": "2019" + }, + { + "venueId": "508a001ce4b09bdc3582de15", + "latLng": { + "lat": 23.140220776746386, + "lng": 113.27676006162235 + }, + "year": "2019" + }, + { + "venueId": "4b8220d2f964a52036cb30e3", + "latLng": { + "lat": 37.566439079898025, + "lng": 127.0088641100868 + }, + "year": "2019" + }, + { + "venueId": "4ca5bb5d965c9c744ca7c7fa", + "latLng": { + "lat": 37.44932705301716, + "lng": 126.4510221534796 + }, + "year": "2019" + }, + { + "venueId": "4becc1bbbbe62d7fc05f7f2b", + "latLng": { + "lat": 22.534292212010122, + "lng": 114.05496503153431 + }, + "year": "2019" + }, + { + "venueId": "4b198dddf964a5206fdf23e3", + "latLng": { + "lat": 34.139786776689434, + "lng": -118.02076732960451 + }, + "year": "2019" + }, + { + "venueId": "4e0dfc83ae603a50b53e019a", + "latLng": { + "lat": 26.30499173019398, + "lng": 50.16687489722827 + }, + "year": "2019" + }, + { + "venueId": "4e54f1a27d8b96cd0612f10a", + "latLng": { + "lat": 51.470288344561034, + "lng": -0.4875392863036614 + }, + "year": "2019" + }, + { + "venueId": "4fc42e60e4b0938644187054", + "latLng": { + "lat": 22.538451973550906, + "lng": 114.05670715328417 + }, + "year": "2019" + }, + { + "venueId": "5b75cb15b9a5a8002cc4866a", + "latLng": { + "lat": 26.39481546113907, + "lng": 50.06098126977084 + }, + "year": "2019" + }, + { + "venueId": "56002b2b498ec3502c910542", + "latLng": { + "lat": 26.310534635458595, + "lng": 50.16985992706384 + }, + "year": "2019" + }, + { + "venueId": "544afb4d498e020c0249267d", + "latLng": { + "lat": 23.14207890135096, + "lng": 113.27109594081405 + }, + "year": "2019" + }, + { + "venueId": "57945ed038fa7e1b55ce3111", + "latLng": { + "lat": 26.378065706434366, + "lng": 50.170729331984425 + }, + "year": "2019" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2019" + }, + { + "venueId": "569a4d15498ed8c4dcf41ce5", + "latLng": { + "lat": 25.940719057397573, + "lng": 49.67031434020906 + }, + "year": "2019" + }, + { + "venueId": "58ff444e0336931c02e5e45e", + "latLng": { + "lat": 26.20262384223452, + "lng": 50.21252063496361 + }, + "year": "2019" + }, + { + "venueId": "50866895e4b0413dc57decfe", + "latLng": { + "lat": 23.140674102203388, + "lng": 113.27686473692239 + }, + "year": "2019" + }, + { + "venueId": "50140acde4b0befd1323776a", + "latLng": { + "lat": 22.539614649425236, + "lng": 114.11662041373795 + }, + "year": "2019" + }, + { + "venueId": "5703c23ecd101668337dada0", + "latLng": { + "lat": 23.142342593522418, + "lng": 113.27504454746368 + }, + "year": "2019" + }, + { + "venueId": "547af3f7498ef6bf85e79529", + "latLng": { + "lat": 23.14221302393234, + "lng": 113.27760400576969 + }, + "year": "2019" + }, + { + "venueId": "55618d9f498ef47efb3aefe2", + "latLng": { + "lat": 26.45130605835557, + "lng": 49.8027450094445 + }, + "year": "2019" + }, + { + "venueId": "5375eb93498e533c2301bb6d", + "latLng": { + "lat": 23.113199036413977, + "lng": 113.2326889773744 + }, + "year": "2019" + }, + { + "venueId": "4ec31266b8f7c5f293af8686", + "latLng": { + "lat": 34.10139729353334, + "lng": -118.34346966026158 + }, + "year": "2019" + }, + { + "venueId": "526be41611d29257ca31e4c7", + "latLng": { + "lat": 26.281769935052697, + "lng": 50.19039225576594 + }, + "year": "2019" + }, + { + "venueId": "4d023f610dae37045dc2c842", + "latLng": { + "lat": 26.275358563146394, + "lng": 50.19404708274036 + }, + "year": "2019" + }, + { + "venueId": "56c36499cd102af962d13054", + "latLng": { + "lat": 25.928183696916083, + "lng": 49.661414022794716 + }, + "year": "2019" + }, + { + "venueId": "5492a939498eac4fe2153021", + "latLng": { + "lat": 33.95496584026524, + "lng": -118.38000948098068 + }, + "year": "2019" + }, + { + "venueId": "592cecdf31fd147e47f101e1", + "latLng": { + "lat": 37.50997926872969, + "lng": 127.06027618730745 + }, + "year": "2019" + }, + { + "venueId": "4bf519b92d6295214f376058", + "latLng": { + "lat": 23.10617268188843, + "lng": 113.22191382631789 + }, + "year": "2019" + }, + { + "venueId": "5b885f33e55d8b002c4b3a97", + "latLng": { + "lat": 26.396471068124384, + "lng": 50.043326085735494 + }, + "year": "2019" + }, + { + "venueId": "5ce58126a795bd002cd4b412", + "latLng": { + "lat": 25.950329010829712, + "lng": 49.653119999602474 + }, + "year": "2019" + }, + { + "venueId": "53fb2cb1498ec2bab984d378", + "latLng": { + "lat": 23.116699967175595, + "lng": 113.24148357355442 + }, + "year": "2019" + }, + { + "venueId": "4cee4f1ad7268cfa130fc94e", + "latLng": { + "lat": 22.545859115552048, + "lng": 114.0841330893549 + }, + "year": "2019" + }, + { + "venueId": "51e2713a498e07835e2b0b6e", + "latLng": { + "lat": 26.362952158460434, + "lng": 50.20566648680148 + }, + "year": "2019" + }, + { + "venueId": "5afa06b497cf5a002ca66745", + "latLng": { + "lat": 34.010041894420276, + "lng": -118.49650355610116 + }, + "year": "2019" + }, + { + "venueId": "57cc367c498ea02d5006cb1f", + "latLng": { + "lat": 22.539686365625695, + "lng": 114.08177555678881 + }, + "year": "2019" + }, + { + "venueId": "502354bfe4b053b46dd97c82", + "latLng": { + "lat": 37.52514815523332, + "lng": 126.92568810445925 + }, + "year": "2019" + }, + { + "venueId": "4f37c361e4b0fb0dfd38fe85", + "latLng": { + "lat": 26.30775839431025, + "lng": 50.176388305759524 + }, + "year": "2019" + }, + { + "venueId": "4b74fc04f964a52029fa2de3", + "latLng": { + "lat": 23.13894824351096, + "lng": 113.28012129375186 + }, + "year": "2019" + }, + { + "venueId": "586223e3d4390729e0924f5b", + "latLng": { + "lat": 26.304961729501276, + "lng": 50.17752921057632 + }, + "year": "2019" + }, + { + "venueId": "4b058781f964a520699622e3", + "latLng": { + "lat": 37.508941466541536, + "lng": 127.06103598426309 + }, + "year": "2019" + }, + { + "venueId": "5c6a61c55455b2002cda02bd", + "latLng": { + "lat": 25.925919188496923, + "lng": 49.65769194601725 + }, + "year": "2019" + }, + { + "venueId": "51457ed1e4b0b6e40fa6d9c8", + "latLng": { + "lat": 26.381691926576718, + "lng": 50.17831328091191 + }, + "year": "2019" + }, + { + "venueId": "4ee4cdcfe5faffd731f8b5e9", + "latLng": { + "lat": 26.28706095574049, + "lng": 50.21919441275748 + }, + "year": "2019" + }, + { + "venueId": "4ce1dd7478ddf04d40e9ad98", + "latLng": { + "lat": 37.520392085262806, + "lng": 127.05618886726907 + }, + "year": "2019" + }, + { + "venueId": "56a8f792498e91052f98b40a", + "latLng": { + "lat": 25.9370970596146, + "lng": 49.65218630016514 + }, + "year": "2019" + }, + { + "venueId": "4a6e5d0df964a52093d41fe3", + "latLng": { + "lat": 34.11909983719188, + "lng": -118.30048250790297 + }, + "year": "2019" + }, + { + "venueId": "59c2c7175315933569797baa", + "latLng": { + "lat": 26.397065336798246, + "lng": 50.044920780706256 + }, + "year": "2019" + }, + { + "venueId": "4c41666dce54e21e9a150b1a", + "latLng": { + "lat": 26.393338661718754, + "lng": 50.153368715002976 + }, + "year": "2019" + }, + { + "venueId": "5ae0b79273fe25226d98029e", + "latLng": { + "lat": 25.404713541686135, + "lng": 49.56692319930454 + }, + "year": "2019" + }, + { + "venueId": "5a0edc3132b61d73c2795a8b", + "latLng": { + "lat": 26.287824208766764, + "lng": 50.21095162367342 + }, + "year": "2019" + }, + { + "venueId": "5d3921fa842f420008fa3837", + "latLng": { + "lat": 37.54971299658405, + "lng": 127.17520701053256 + }, + "year": "2019" + }, + { + "venueId": "4b058782f964a5207c9622e3", + "latLng": { + "lat": 37.50363314268947, + "lng": 127.00488394242136 + }, + "year": "2019" + }, + { + "venueId": "4b0bfac7f964a5204d3523e3", + "latLng": { + "lat": 37.5129372657065, + "lng": 127.05999322640938 + }, + "year": "2019" + }, + { + "venueId": "4dd0d96ad4c065592fb867aa", + "latLng": { + "lat": 14.551079140782784, + "lng": 121.02301379784721 + }, + "year": "2019" + }, + { + "venueId": "4ecf41b7e5faa5ec016d2c62", + "latLng": { + "lat": 26.307447592686533, + "lng": 50.21947095714729 + }, + "year": "2019" + }, + { + "venueId": "512f0fb1e4b0506f0d77be1a", + "latLng": { + "lat": 25.941599999074057, + "lng": 49.675399970456574 + }, + "year": "2019" + }, + { + "venueId": "585ecc808d8e995f73150502", + "latLng": { + "lat": 25.93454237433052, + "lng": 49.65730828345041 + }, + "year": "2019" + }, + { + "venueId": "50cc4260e4b0c28fc55bce88", + "latLng": { + "lat": 26.367009335102452, + "lng": 50.17762965331741 + }, + "year": "2019" + }, + { + "venueId": "4beb2892f90e9c74ae80e3ed", + "latLng": { + "lat": 26.468775167642722, + "lng": 49.7966315401716 + }, + "year": "2019" + }, + { + "venueId": "5bbba53edd8442002cd9c89d", + "latLng": { + "lat": 26.300308536476855, + "lng": 50.14788770923515 + }, + "year": "2019" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2019" + }, + { + "venueId": "4dcfd082d164679b8d215237", + "latLng": { + "lat": 26.33253421684756, + "lng": 50.09028420381015 + }, + "year": "2019" + }, + { + "venueId": "5b2dd595a5a315003950fc51", + "latLng": { + "lat": 22.54530499668201, + "lng": 114.07885702281654 + }, + "year": "2019" + }, + { + "venueId": "54a4cf0c498ea948a40cf15a", + "latLng": { + "lat": 37.513800097260535, + "lng": 127.10451463042135 + }, + "year": "2019" + }, + { + "venueId": "5062b944e4b0b51b64a0403a", + "latLng": { + "lat": 23.153239989756177, + "lng": 113.25756350305072 + }, + "year": "2019" + }, + { + "venueId": "5643a37c498e98335dd1ba3e", + "latLng": { + "lat": 25.922811054685127, + "lng": 49.65678511124279 + }, + "year": "2019" + }, + { + "venueId": "4bee3c97e24d20a17abf7214", + "latLng": { + "lat": 37.51115930980324, + "lng": 127.073925202553 + }, + "year": "2019" + }, + { + "venueId": "4e173cca2271b0e971f0155d", + "latLng": { + "lat": 26.30427450868123, + "lng": 50.130101710784395 + }, + "year": "2019" + }, + { + "venueId": "57d9665c498e796be0d3738e", + "latLng": { + "lat": 26.134368923072195, + "lng": 49.88912360298612 + }, + "year": "2019" + }, + { + "venueId": "4d396e70687ca35d423a7fc4", + "latLng": { + "lat": 37.44914575264478, + "lng": 126.45223720617395 + }, + "year": "2019" + }, + { + "venueId": "4d90629f788c5481f1cb62fd", + "latLng": { + "lat": 22.543979110852398, + "lng": 114.08161296788863 + }, + "year": "2019" + }, + { + "venueId": "4d3049f9236aa143bcc552eb", + "latLng": { + "lat": 23.12843676790444, + "lng": 113.26196579083121 + }, + "year": "2019" + }, + { + "venueId": "5c697db0f427de002c6bc68b", + "latLng": { + "lat": 26.40230603541724, + "lng": 50.15340702349705 + }, + "year": "2019" + }, + { + "venueId": "5cbb4037dadf39002b30fe03", + "latLng": { + "lat": 25.92591773095425, + "lng": 49.65445829675946 + }, + "year": "2019" + }, + { + "venueId": "532dd1a6498e4b7503456107", + "latLng": { + "lat": 26.38430949993495, + "lng": 50.03250480611551 + }, + "year": "2019" + }, + { + "venueId": "4e3c45a71495bf24a5caec53", + "latLng": { + "lat": 24.959707262780594, + "lng": 46.7030023238027 + }, + "year": "2019" + }, + { + "venueId": "574eb760498edb1a2fc677a9", + "latLng": { + "lat": 26.33139020202649, + "lng": 50.09011356346142 + }, + "year": "2019" + }, + { + "venueId": "55d8b5f5498e9c6d19b1b564", + "latLng": { + "lat": 26.42889214142667, + "lng": 49.811565410077854 + }, + "year": "2019" + }, + { + "venueId": "5230663611d2f166755bdeef", + "latLng": { + "lat": 26.407577823980773, + "lng": 50.13556596523946 + }, + "year": "2019" + }, + { + "venueId": "4bf903214a67c928963f26cf", + "latLng": { + "lat": 22.5500013502499, + "lng": 114.08128778991512 + }, + "year": "2019" + }, + { + "venueId": "4f4d75cde4b0c132f645c024", + "latLng": { + "lat": 24.136292011784985, + "lng": 49.09968032651331 + }, + "year": "2019" + }, + { + "venueId": "520d223d11d29a624b2c5e1e", + "latLng": { + "lat": 26.318097434904118, + "lng": 50.15952350405766 + }, + "year": "2019" + }, + { + "venueId": "4c998dc278fc236a3b342e97", + "latLng": { + "lat": 22.66683930433515, + "lng": 113.90940548680992 + }, + "year": "2019" + }, + { + "venueId": "4c3476403896e21e8887eb90", + "latLng": { + "lat": 26.303269124429423, + "lng": 50.22191040172173 + }, + "year": "2019" + }, + { + "venueId": "4be8b8e8c5220f475f25aaca", + "latLng": { + "lat": 26.308791955637272, + "lng": 50.12899685031654 + }, + "year": "2019" + }, + { + "venueId": "4bf803fb5efe2d7f20e96934", + "latLng": { + "lat": 22.543239286274503, + "lng": 114.12083005278622 + }, + "year": "2019" + }, + { + "venueId": "4f7a84a2e4b0f909578ff7d2", + "latLng": { + "lat": 37.54886412142627, + "lng": 127.17492580685564 + }, + "year": "2019" + }, + { + "venueId": "53b0d49b498e1978c885e70d", + "latLng": { + "lat": 37.56517465956671, + "lng": 126.98470749129076 + }, + "year": "2019" + }, + { + "venueId": "4c8f2c6bb3bcb60c9b855f27", + "latLng": { + "lat": 23.10705472136337, + "lng": 113.24523462129318 + }, + "year": "2019" + }, + { + "venueId": "5bceb23233e1180039d7b2ee", + "latLng": { + "lat": 26.38896608373774, + "lng": 50.154453922346086 + }, + "year": "2019" + }, + { + "venueId": "5c4498a9898bdc002c25b776", + "latLng": { + "lat": 26.366728114937224, + "lng": 50.17723267378709 + }, + "year": "2019" + }, + { + "venueId": "5ac6793e4a1cc011c90d500b", + "latLng": { + "lat": 26.300397577335364, + "lng": 50.14831471758948 + }, + "year": "2019" + }, + { + "venueId": "546854a2498efb616395d15c", + "latLng": { + "lat": 37.51291397590404, + "lng": 127.10188046708284 + }, + "year": "2019" + }, + { + "venueId": "4c768443ff1fb60cda15f9a7", + "latLng": { + "lat": 25.43745451623624, + "lng": 49.57212234926823 + }, + "year": "2019" + }, + { + "venueId": "4b1167d1f964a520e47b23e3", + "latLng": { + "lat": 34.10155842534091, + "lng": -118.34140360847526 + }, + "year": "2019" + }, + { + "venueId": "4b9f91fbf964a520152c37e3", + "latLng": { + "lat": 33.94755273524293, + "lng": -118.38714180594594 + }, + "year": "2019" + }, + { + "venueId": "4da818566e81162ae79fa85c", + "latLng": { + "lat": 23.137632011995056, + "lng": 113.27832600969553 + }, + "year": "2019" + }, + { + "venueId": "5b533ba9ad1789002c387bfc", + "latLng": { + "lat": 26.371613257960714, + "lng": 50.09021888049483 + }, + "year": "2019" + }, + { + "venueId": "5c1d4d037b385f002ca392ef", + "latLng": { + "lat": 26.30213925665088, + "lng": 50.176815514309276 + }, + "year": "2019" + }, + { + "venueId": "5ae15e394f0e58002c64b59f", + "latLng": { + "lat": 23.39977802974996, + "lng": 113.30704298516503 + }, + "year": "2019" + }, + { + "venueId": "59a7a728e0755068d9297b17", + "latLng": { + "lat": 23.139077979788507, + "lng": 113.28023696301922 + }, + "year": "2019" + }, + { + "venueId": "57c80178498ea3934534598a", + "latLng": { + "lat": 37.50854801139678, + "lng": 127.06423498610017 + }, + "year": "2019" + }, + { + "venueId": "5c6b9fce065ef5002c6dbc56", + "latLng": { + "lat": 24.674406279989537, + "lng": 46.6237118417251 + }, + "year": "2019" + }, + { + "venueId": "4e1174cfb0fbfef99b921d5d", + "latLng": { + "lat": 23.151075224820854, + "lng": 113.25156192397745 + }, + "year": "2019" + }, + { + "venueId": "54c44b87498ee52a43a7e657", + "latLng": { + "lat": 33.98576725136937, + "lng": -118.39319556120752 + }, + "year": "2019" + }, + { + "venueId": "4c52407599ecc9b62323995a", + "latLng": { + "lat": 34.13356769156278, + "lng": -118.41063098007045 + }, + "year": "2019" + }, + { + "venueId": "5b56edc21987ec002c5feec4", + "latLng": { + "lat": 33.30660672044951, + "lng": 126.31840285724236 + }, + "year": "2020" + }, + { + "venueId": "5a510a65a0215b4eadd4acaa", + "latLng": { + "lat": 37.53382698722479, + "lng": 126.99403199209146 + }, + "year": "2020" + }, + { + "venueId": "53110e9fe4b03443dd8488ce", + "latLng": { + "lat": 37.33290123990187, + "lng": 127.10182801523051 + }, + "year": "2020" + }, + { + "venueId": "58cca7ab03e29a59cc69503b", + "latLng": { + "lat": 37.5172327689029, + "lng": 126.90190851374557 + }, + "year": "2020" + }, + { + "venueId": "4b8c4178f964a520dac632e3", + "latLng": { + "lat": 37.5591572827386, + "lng": 126.80332641055816 + }, + "year": "2020" + }, + { + "venueId": "58c52044730a925fc32bc1d9", + "latLng": { + "lat": 37.545423802444304, + "lng": 127.22566078432435 + }, + "year": "2020" + }, + { + "venueId": "5b9272fd364d97002ca3f079", + "latLng": { + "lat": 33.307522744737824, + "lng": 126.31775188272088 + }, + "year": "2020" + }, + { + "venueId": "5d5b12ca011df0000829b793", + "latLng": { + "lat": 26.303945981162933, + "lng": 50.17835851604715 + }, + "year": "2020" + }, + { + "venueId": "4b5a5cdaf964a5201fc028e3", + "latLng": { + "lat": 33.50670497059081, + "lng": 126.49360884245004 + }, + "year": "2020" + }, + { + "venueId": "5e11980f4970d600072cf2a0", + "latLng": { + "lat": 37.51778031911368, + "lng": 126.90312157388401 + }, + "year": "2020" + }, + { + "venueId": "57413537498e70237629a004", + "latLng": { + "lat": 37.56881588102391, + "lng": 127.00898995905442 + }, + "year": "2020" + }, + { + "venueId": "56700902498eb49e017fffa3", + "latLng": { + "lat": 37.56873372348409, + "lng": 127.00914726995825 + }, + "year": "2020" + }, + { + "venueId": "5cfc642916fa04002cbd4a67", + "latLng": { + "lat": 37.556718022793625, + "lng": 127.18761402983252 + }, + "year": "2020" + }, + { + "venueId": "4bfe2d1cbf6576b05a56aeb8", + "latLng": { + "lat": 37.51126197752784, + "lng": 127.06131378303995 + }, + "year": "2020" + }, + { + "venueId": "4b776dfdf964a520d9992ee3", + "latLng": { + "lat": 33.52897169762324, + "lng": 126.77149042845016 + }, + "year": "2020" + }, + { + "venueId": "4b4c38d1f964a520cdaf26e3", + "latLng": { + "lat": 37.53298834658243, + "lng": 126.96326619446528 + }, + "year": "2020" + }, + { + "venueId": "51ca64e9498e0e8a8000bbfc", + "latLng": { + "lat": 37.534889016296994, + "lng": 127.00070968249823 + }, + "year": "2020" + }, + { + "venueId": "4ef41390c5123a724dcb1290", + "latLng": { + "lat": 37.24098001018454, + "lng": 127.6128530003671 + }, + "year": "2020" + }, + { + "venueId": "582a7ac470fc42532c16ac03", + "latLng": { + "lat": 37.525531913738206, + "lng": 127.04067591922092 + }, + "year": "2020" + }, + { + "venueId": "4f41f79ae4b08a9e0c1e5707", + "latLng": { + "lat": 37.65825411331973, + "lng": 128.67031607758702 + }, + "year": "2020" + }, + { + "venueId": "5c4ba6baa6031c002ca918b8", + "latLng": { + "lat": 25.93304881276461, + "lng": 49.65533520107979 + }, + "year": "2020" + }, + { + "venueId": "4cb1cf881168a093e6f83523", + "latLng": { + "lat": 37.502849949292305, + "lng": 126.98197464326883 + }, + "year": "2020" + }, + { + "venueId": "4d40ec6acb84b60c60be8aab", + "latLng": { + "lat": 37.65742115051814, + "lng": 128.67268603403016 + }, + "year": "2020" + }, + { + "venueId": "5627107f498e3abfb0751344", + "latLng": { + "lat": 37.5362928336236, + "lng": 126.99995441770106 + }, + "year": "2020" + }, + { + "venueId": "4ce39d6d2407a1cd64004fd0", + "latLng": { + "lat": 33.32417765593206, + "lng": 126.84210232960281 + }, + "year": "2020" + }, + { + "venueId": "4b9f8f28f964a5204b2b37e3", + "latLng": { + "lat": 37.550656985313324, + "lng": 127.1873009993738 + }, + "year": "2020" + }, + { + "venueId": "4fc9aa37e4b0aa75b71f3f1b", + "latLng": { + "lat": 37.55497609554016, + "lng": 127.17194890434352 + }, + "year": "2020" + }, + { + "venueId": "4b6d55c1f964a52088712ce3", + "latLng": { + "lat": 37.534313522068324, + "lng": 126.99064517971836 + }, + "year": "2020" + }, + { + "venueId": "59be22b3419a9e5cfc20d568", + "latLng": { + "lat": 37.24322267280151, + "lng": 127.61293188693855 + }, + "year": "2020" + }, + { + "venueId": "4bd2e199462cb713d013dd07", + "latLng": { + "lat": 37.53463181848343, + "lng": 126.9953916882367 + }, + "year": "2020" + }, + { + "venueId": "5260e90611d260685bf96ca0", + "latLng": { + "lat": 33.46269302202353, + "lng": 126.93868401996959 + }, + "year": "2020" + }, + { + "venueId": "5207855d11d2ffb547d0ebef", + "latLng": { + "lat": 33.50669396412763, + "lng": 126.4935930841568 + }, + "year": "2020" + }, + { + "venueId": "4bd4442e41b9ef3b9ca401e6", + "latLng": { + "lat": 37.55458903296248, + "lng": 127.15592264298097 + }, + "year": "2020" + }, + { + "venueId": "4f7a7f6de4b02579033b1735", + "latLng": { + "lat": 37.54959210919064, + "lng": 127.17590421107732 + }, + "year": "2020" + }, + { + "venueId": "4f90c910e4b0655201ecfa0d", + "latLng": { + "lat": 33.34876292154434, + "lng": 126.49660805605828 + }, + "year": "2020" + }, + { + "venueId": "5b75cb15b9a5a8002cc4866a", + "latLng": { + "lat": 26.39481546113907, + "lng": 50.06098126977084 + }, + "year": "2020" + }, + { + "venueId": "4f5211f1e4b006151421994f", + "latLng": { + "lat": 33.288813441420025, + "lng": 126.46030951831379 + }, + "year": "2020" + }, + { + "venueId": "4d844c8f81fdb1f7d8aff9bf", + "latLng": { + "lat": 37.76930940660433, + "lng": 126.69507115535451 + }, + "year": "2020" + }, + { + "venueId": "566e48e2498e6898966b188e", + "latLng": { + "lat": 37.51217736926235, + "lng": 127.06064298683044 + }, + "year": "2020" + }, + { + "venueId": "543cc3ad498e0492a2203bfd", + "latLng": { + "lat": 33.51702862965088, + "lng": 126.52353145321653 + }, + "year": "2020" + }, + { + "venueId": "50c942c6e4b038bd6b1021b4", + "latLng": { + "lat": 37.54954267510849, + "lng": 127.17302152225972 + }, + "year": "2020" + }, + { + "venueId": "4d6de0d76458721e3fe42520", + "latLng": { + "lat": 37.55124080884609, + "lng": 127.16499019297638 + }, + "year": "2020" + }, + { + "venueId": "4bd100909854d13a48fbf84d", + "latLng": { + "lat": 33.3122216431249, + "lng": 126.45939587214974 + }, + "year": "2020" + }, + { + "venueId": "592cecdf31fd147e47f101e1", + "latLng": { + "lat": 37.50997926872969, + "lng": 127.06027618730745 + }, + "year": "2020" + }, + { + "venueId": "5703972bcd107356d0a6cee9", + "latLng": { + "lat": 37.502214203609874, + "lng": 127.03470045471049 + }, + "year": "2020" + }, + { + "venueId": "52a2708911d2f107ad24583a", + "latLng": { + "lat": 37.55053958749897, + "lng": 127.17438702081431 + }, + "year": "2020" + }, + { + "venueId": "5a996665492814493260ed15", + "latLng": { + "lat": 33.306571968864816, + "lng": 126.3169100400746 + }, + "year": "2020" + }, + { + "venueId": "4c427eaeaf052d7fd8267f79", + "latLng": { + "lat": 37.65719510946153, + "lng": 128.67649408408843 + }, + "year": "2020" + }, + { + "venueId": "4b058781f964a520699622e3", + "latLng": { + "lat": 37.508941466541536, + "lng": 127.06103598426309 + }, + "year": "2020" + }, + { + "venueId": "4dcf62abd164679b8d18c80f", + "latLng": { + "lat": 37.24085323402515, + "lng": 127.61219346940223 + }, + "year": "2020" + }, + { + "venueId": "4e7bc77545dd3b0e49c43efd", + "latLng": { + "lat": 37.5251028289222, + "lng": 126.9256933541427 + }, + "year": "2020" + }, + { + "venueId": "5cf4ace600b068002e7fc4ac", + "latLng": { + "lat": 37.55526499192338, + "lng": 126.81830497895372 + }, + "year": "2020" + }, + { + "venueId": "4ce0017970bba1cd49d469c4", + "latLng": { + "lat": 24.430129285223156, + "lng": 54.64192322560849 + }, + "year": "2020" + }, + { + "venueId": "4d80449d551ea1cd0d8f17c5", + "latLng": { + "lat": 33.34017566000857, + "lng": 126.48036485888727 + }, + "year": "2020" + }, + { + "venueId": "530c4df811d2d940151d5e88", + "latLng": { + "lat": 37.59819010681109, + "lng": 126.78560875464515 + }, + "year": "2020" + }, + { + "venueId": "4bdbda6d2a3a0f4739f4b0b6", + "latLng": { + "lat": 37.69083204445406, + "lng": 129.0323839507582 + }, + "year": "2020" + }, + { + "venueId": "58ec4ae5109dfe2b0614aabb", + "latLng": { + "lat": 33.42370904214922, + "lng": 126.40818940548307 + }, + "year": "2020" + }, + { + "venueId": "53c9c6a1498e9c402828b645", + "latLng": { + "lat": 37.52790538784762, + "lng": 127.00610578369349 + }, + "year": "2020" + }, + { + "venueId": "4d315742c75a6ea8158103ae", + "latLng": { + "lat": 37.59322703549261, + "lng": 127.33822998875594 + }, + "year": "2020" + }, + { + "venueId": "4f7a84a2e4b0f909578ff7d2", + "latLng": { + "lat": 37.54886412142627, + "lng": 127.17492580685564 + }, + "year": "2020" + }, + { + "venueId": "4baec85ff964a5209fd73be3", + "latLng": { + "lat": 37.53457713445684, + "lng": 126.98738270310382 + }, + "year": "2020" + }, + { + "venueId": "5d66f53bd316ec000706a75e", + "latLng": { + "lat": 33.239072747372276, + "lng": 126.31954072622642 + }, + "year": "2020" + }, + { + "venueId": "546854a2498efb616395d15c", + "latLng": { + "lat": 37.51291397590404, + "lng": 127.10188046708284 + }, + "year": "2020" + }, + { + "venueId": "5c1d4d037b385f002ca392ef", + "latLng": { + "lat": 26.30213925665088, + "lng": 50.176815514309276 + }, + "year": "2020" + }, + { + "venueId": "516e8e9de4b06a26b77c9924", + "latLng": { + "lat": 37.545818361621436, + "lng": 127.16963194283329 + }, + "year": "2020" + }, + { + "venueId": "4f96735ee4b0941278df800a", + "latLng": { + "lat": 37.54903643953942, + "lng": 127.17655284921136 + }, + "year": "2020" + }, + { + "venueId": "52a1bdd311d2974d28e3d5dc", + "latLng": { + "lat": 37.55127120349532, + "lng": 127.17392139394677 + }, + "year": "2020" + }, + { + "venueId": "4b8dc354f964a520940c33e3", + "latLng": { + "lat": 37.51041968429351, + "lng": 127.05831115831089 + }, + "year": "2020" + }, + { + "venueId": "5d870a3c229a240008035d74", + "latLng": { + "lat": 37.241357494865554, + "lng": 127.61219346940223 + }, + "year": "2020" + }, + { + "venueId": "4c6d38e7a437224b5d5e2cb1", + "latLng": { + "lat": 37.515406534129696, + "lng": 126.98268804752846 + }, + "year": "2020" + }, + { + "venueId": "4ddc9b42d4c082f960caddc4", + "latLng": { + "lat": 37.44674897852247, + "lng": 126.44812151713944 + }, + "year": "2021" + }, + { + "venueId": "5a510a65a0215b4eadd4acaa", + "latLng": { + "lat": 37.53382698722479, + "lng": 126.99403199209146 + }, + "year": "2021" + }, + { + "venueId": "5d5d8e8aae1a0a00081ae02b", + "latLng": { + "lat": 25.593070023212416, + "lng": 49.54800799812121 + }, + "year": "2021" + }, + { + "venueId": "5fcee92e8ee28d26476dadd8", + "latLng": { + "lat": 24.4017339763593, + "lng": 48.92448660291622 + }, + "year": "2021" + }, + { + "venueId": "600d79518d453c64cce7f645", + "latLng": { + "lat": 26.29072032880238, + "lng": 50.17836848977072 + }, + "year": "2021" + }, + { + "venueId": "53d2b2ac498e4cf07f6acbb0", + "latLng": { + "lat": 25.262625966911745, + "lng": 51.61209456922882 + }, + "year": "2021" + }, + { + "venueId": "4d942292561acbffe152e1a5", + "latLng": { + "lat": 25.937451177280188, + "lng": 49.67505404089515 + }, + "year": "2021" + }, + { + "venueId": "5f9a84162509a065d72f623d", + "latLng": { + "lat": 26.30375599404302, + "lng": 50.22366076977731 + }, + "year": "2021" + }, + { + "venueId": "56f08f15498eb6c32711a818", + "latLng": { + "lat": 37.52532549687991, + "lng": 126.92605041375963 + }, + "year": "2021" + }, + { + "venueId": "550cf13e498e2c34ab0a75a9", + "latLng": { + "lat": 37.51288352832109, + "lng": 127.10306925644052 + }, + "year": "2021" + }, + { + "venueId": "5aaa15101213841cb458f6bb", + "latLng": { + "lat": 24.94340503259939, + "lng": 49.4381950151059 + }, + "year": "2021" + }, + { + "venueId": "4b403faaf964a5201fb725e3", + "latLng": { + "lat": 37.51257132549896, + "lng": 127.09970184209156 + }, + "year": "2021" + }, + { + "venueId": "5d2b1fff447b6d0023161a0f", + "latLng": { + "lat": 26.290672272592516, + "lng": 50.17834846379196 + }, + "year": "2021" + }, + { + "venueId": "4e196aac14957dc705e10545", + "latLng": { + "lat": 37.76903225676097, + "lng": 126.69470252753186 + }, + "year": "2021" + }, + { + "venueId": "4be3950f1dd22d7f5c2e97bd", + "latLng": { + "lat": 37.574221446233814, + "lng": 126.98484059443253 + }, + "year": "2021" + }, + { + "venueId": "5e00faee63ad2d0008c1dad3", + "latLng": { + "lat": 25.520463695280053, + "lng": 49.54593266531828 + }, + "year": "2021" + }, + { + "venueId": "5fe69655ec39e873a5811415", + "latLng": { + "lat": 26.307464501186267, + "lng": 50.22426938652488 + }, + "year": "2021" + }, + { + "venueId": "4d844c8f81fdb1f7d8aff9bf", + "latLng": { + "lat": 37.76930940660433, + "lng": 126.69507115535451 + }, + "year": "2021" + }, + { + "venueId": "6109b153bed08d333587710b", + "latLng": { + "lat": 25.93084215479866, + "lng": 49.649984216815625 + }, + "year": "2021" + }, + { + "venueId": "5fa8cc8142d9414c3be68c6f", + "latLng": { + "lat": 25.394440421260647, + "lng": 49.57445080911862 + }, + "year": "2021" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2021" + }, + { + "venueId": "5aafaab7febf31737739aa4e", + "latLng": { + "lat": 25.36047356581895, + "lng": 49.577590578380494 + }, + "year": "2021" + }, + { + "venueId": "4b058781f964a520699622e3", + "latLng": { + "lat": 37.508941466541536, + "lng": 127.06103598426309 + }, + "year": "2021" + }, + { + "venueId": "56a8f792498e91052f98b40a", + "latLng": { + "lat": 25.9370970596146, + "lng": 49.65218630016514 + }, + "year": "2021" + }, + { + "venueId": "5136d9f6e4b052e6acffa193", + "latLng": { + "lat": 25.262237053161375, + "lng": 51.612870910048464 + }, + "year": "2021" + }, + { + "venueId": "4beb2892f90e9c74ae80e3ed", + "latLng": { + "lat": 26.468775167642722, + "lng": 49.7966315401716 + }, + "year": "2021" + }, + { + "venueId": "4d8b14ff99c2a1cd8c689dd7", + "latLng": { + "lat": 37.51284663667723, + "lng": 127.1027025896683 + }, + "year": "2021" + }, + { + "venueId": "5d247abdd29cbb0023b219dc", + "latLng": { + "lat": 24.401048375240194, + "lng": 48.924983581800404 + }, + "year": "2021" + }, + { + "venueId": "4cc0435c19ceb1f70e1828cd", + "latLng": { + "lat": 37.52386461999598, + "lng": 127.0547530923846 + }, + "year": "2021" + }, + { + "venueId": "4c3476403896e21e8887eb90", + "latLng": { + "lat": 26.303269124429423, + "lng": 50.22191040172173 + }, + "year": "2021" + }, + { + "venueId": "546854a2498efb616395d15c", + "latLng": { + "lat": 37.51291397590404, + "lng": 127.10188046708284 + }, + "year": "2021" + }, + { + "venueId": "4f96735ee4b0941278df800a", + "latLng": { + "lat": 37.54903643953942, + "lng": 127.17655284921136 + }, + "year": "2021" + }, + { + "venueId": "4c84851b2f1c236a1b204d43", + "latLng": { + "lat": 37.51209952707998, + "lng": 127.10197997002429 + }, + "year": "2021" + }, + { + "venueId": "4b5195c6f964a520255027e3", + "latLng": { + "lat": 26.233456253375337, + "lng": 50.55364953037245 + }, + "year": "2022" + }, + { + "venueId": "62177d41ba9dd63998f6e86c", + "latLng": { + "lat": 26.307562011844507, + "lng": 50.22420399765769 + }, + "year": "2022" + }, + { + "venueId": "5be3e70c3b83070039149630", + "latLng": { + "lat": 26.454896454635723, + "lng": 50.105156855338635 + }, + "year": "2022" + }, + { + "venueId": "5e67eb5dd337970007a05c2f", + "latLng": { + "lat": 25.930923411675426, + "lng": 49.652824100757584 + }, + "year": "2022" + }, + { + "venueId": "4c434434d7fad13a504b0ada", + "latLng": { + "lat": 21.632186723958817, + "lng": 39.15616363955777 + }, + "year": "2022" + }, + { + "venueId": "4c3856291a38ef3be19a9221", + "latLng": { + "lat": 21.421399567491434, + "lng": 39.82562212568039 + }, + "year": "2022" + }, + { + "venueId": "5b7279d91fa763002c726a6d", + "latLng": { + "lat": 26.37806566338435, + "lng": 49.99176942658495 + }, + "year": "2022" + }, + { + "venueId": "4f105f5be4b000502ad8dbea", + "latLng": { + "lat": 25.93153124154197, + "lng": 49.65501632527357 + }, + "year": "2022" + }, + { + "venueId": "4bcc850168f976b085ba6283", + "latLng": { + "lat": 26.233261217218292, + "lng": 50.541018762236234 + }, + "year": "2022" + }, + { + "venueId": "4b81e997f964a520c3c330e3", + "latLng": { + "lat": 21.628164922147125, + "lng": 39.11131430884882 + }, + "year": "2022" + }, + { + "venueId": "52a1973911d243bcfb72e785", + "latLng": { + "lat": 25.80941015027307, + "lng": 49.563803976982925 + }, + "year": "2022" + }, + { + "venueId": "5683ba26498e7e260b5abfc9", + "latLng": { + "lat": 21.594702476544196, + "lng": 39.14943183034863 + }, + "year": "2022" + }, + { + "venueId": "603d050877f52c5d347a949d", + "latLng": { + "lat": 21.563614071262514, + "lng": 39.161543349438574 + }, + "year": "2022" + }, + { + "venueId": "5da39adcfcce7a0007542b4a", + "latLng": { + "lat": 21.661782539772112, + "lng": 39.173977680422325 + }, + "year": "2022" + }, + { + "venueId": "5d6cbfe90181700008c950cf", + "latLng": { + "lat": 24.887492414771593, + "lng": 49.269151233520944 + }, + "year": "2022" + }, + { + "venueId": "62323eb465d2a748601be69d", + "latLng": { + "lat": 26.307615279869673, + "lng": 50.22412854905183 + }, + "year": "2022" + }, + { + "venueId": "5fe69655ec39e873a5811415", + "latLng": { + "lat": 26.307464501186267, + "lng": 50.22426938652488 + }, + "year": "2022" + }, + { + "venueId": "4bd538266f649521f9d06eec", + "latLng": { + "lat": 26.31687814256076, + "lng": 50.217569906772134 + }, + "year": "2022" + }, + { + "venueId": "52481aea11d2a0722cc8693a", + "latLng": { + "lat": 26.39528209878221, + "lng": 50.15542853732564 + }, + "year": "2022" + }, + { + "venueId": "4c0b37c332daef3b62cb4b50", + "latLng": { + "lat": 21.670833727129736, + "lng": 39.150067009125955 + }, + "year": "2022" + }, + { + "venueId": "6143b82928757f5a213beb65", + "latLng": { + "lat": 21.57792797803264, + "lng": 39.1438122731884 + }, + "year": "2022" + }, + { + "venueId": "6109b153bed08d333587710b", + "latLng": { + "lat": 25.93084215479866, + "lng": 49.649984216815625 + }, + "year": "2022" + }, + { + "venueId": "4b7569e3f964a520330b2ee3", + "latLng": { + "lat": 21.557342778335666, + "lng": 39.18355559215811 + }, + "year": "2022" + }, + { + "venueId": "56c36499cd102af962d13054", + "latLng": { + "lat": 25.928183696916083, + "lng": 49.661414022794716 + }, + "year": "2022" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2022" + }, + { + "venueId": "5fe0d0f2148bf64d86d13b0b", + "latLng": { + "lat": 24.401183493805846, + "lng": 48.924191492540814 + }, + "year": "2022" + }, + { + "venueId": "61e08af7589c5063e6b7ae1f", + "latLng": { + "lat": 21.598679358810596, + "lng": 39.1253035855376 + }, + "year": "2022" + }, + { + "venueId": "4f666f29e4b014afed018a0f", + "latLng": { + "lat": 21.418248876884654, + "lng": 39.82614480655786 + }, + "year": "2022" + }, + { + "venueId": "552234dc498e41a131b4c8eb", + "latLng": { + "lat": 21.6029363142712, + "lng": 39.143659834880275 + }, + "year": "2022" + }, + { + "venueId": "4bb4d6092ba29c748058ef2d", + "latLng": { + "lat": 26.15736082703084, + "lng": 50.19403200047284 + }, + "year": "2022" + }, + { + "venueId": "5f219caeed76930a9e3d2483", + "latLng": { + "lat": 21.602738230894364, + "lng": 39.14270962783362 + }, + "year": "2022" + }, + { + "venueId": "62d1e93879d2286ef50b1441", + "latLng": { + "lat": 21.529916022472893, + "lng": 39.17275501423569 + }, + "year": "2022" + }, + { + "venueId": "585ecc808d8e995f73150502", + "latLng": { + "lat": 25.93454237433052, + "lng": 49.65730828345041 + }, + "year": "2022" + }, + { + "venueId": "4beb2892f90e9c74ae80e3ed", + "latLng": { + "lat": 26.468775167642722, + "lng": 49.7966315401716 + }, + "year": "2022" + }, + { + "venueId": "5f4b15bb172de970d1d35b58", + "latLng": { + "lat": 24.825363717050685, + "lng": 46.6616300087935 + }, + "year": "2022" + }, + { + "venueId": "5ac490e2840fc208b44672a3", + "latLng": { + "lat": 21.72225498028685, + "lng": 39.0790336954035 + }, + "year": "2022" + }, + { + "venueId": "5f2f8d2a8fe8c0522127fd08", + "latLng": { + "lat": 24.75786596663606, + "lng": 49.28461098439966 + }, + "year": "2022" + }, + { + "venueId": "54f5f4cc498e534b3b4162e9", + "latLng": { + "lat": 26.246167780217, + "lng": 50.580638809953875 + }, + "year": "2022" + }, + { + "venueId": "5d2cb9427cfbfe002330af24", + "latLng": { + "lat": 21.547748887139893, + "lng": 39.150773232176554 + }, + "year": "2022" + }, + { + "venueId": "608096aa94b13366044a1ab0", + "latLng": { + "lat": 21.560897596689163, + "lng": 39.15536095007108 + }, + "year": "2022" + }, + { + "venueId": "561c8d30498e522fe22330d4", + "latLng": { + "lat": 25.948910238335237, + "lng": 49.66287412633852 + }, + "year": "2022" + }, + { + "venueId": "5e2c7fe21b58370008ab5d5e", + "latLng": { + "lat": 26.164280980493025, + "lng": 49.92189503042144 + }, + "year": "2022" + }, + { + "venueId": "51db120a498e3552f3aa7ae1", + "latLng": { + "lat": 25.397396498172633, + "lng": 49.560794358210025 + }, + "year": "2022" + }, + { + "venueId": "4c279e51f1272d7fea7f88c5", + "latLng": { + "lat": 41.37307296825639, + "lng": 2.150434259946143 + }, + "year": "2023" + }, + { + "venueId": "5fc21d12177104039ee1117b", + "latLng": { + "lat": 21.749164375594656, + "lng": 39.15148444863133 + }, + "year": "2023" + }, + { + "venueId": "619e3be508d4c745c627e3ef", + "latLng": { + "lat": 21.637399000488955, + "lng": 39.13800602038025 + }, + "year": "2023" + }, + { + "venueId": "4fbe6d6ee4b0c37916d3c3d0", + "latLng": { + "lat": 41.411437277720815, + "lng": 2.2250143416176704 + }, + "year": "2023" + }, + { + "venueId": "61a8eea8f808871f5b305710", + "latLng": { + "lat": 21.61926443135518, + "lng": 39.135097295108594 + }, + "year": "2023" + }, + { + "venueId": "637010987c629d0ae0eab636", + "latLng": { + "lat": 21.59809986978033, + "lng": 39.12106951113865 + }, + "year": "2023" + }, + { + "venueId": "4eba66a68b8189688452c67f", + "latLng": { + "lat": 26.190178600731116, + "lng": 50.31133175292003 + }, + "year": "2023" + }, + { + "venueId": "4bfbce6dab180f475b44b4ce", + "latLng": { + "lat": 41.38410229080919, + "lng": 2.1718095964287856 + }, + "year": "2023" + }, + { + "venueId": "4b7cfb94f964a5200fab2fe3", + "latLng": { + "lat": 41.57049835114613, + "lng": 2.260964562917073 + }, + "year": "2023" + }, + { + "venueId": "6445f7cbfe78130daae2f6a1", + "latLng": { + "lat": 21.640708026359587, + "lng": 39.13321296835984 + }, + "year": "2023" + }, + { + "venueId": "4b3cd7cff964a5201e8825e3", + "latLng": { + "lat": 41.36914219282874, + "lng": 2.18954873864868 + }, + "year": "2023" + }, + { + "venueId": "4b4cd8a3f964a5206fc126e3", + "latLng": { + "lat": 26.269622074639884, + "lng": 50.62522501539518 + }, + "year": "2023" + }, + { + "venueId": "57659acb498e141ece0c2df7", + "latLng": { + "lat": 41.38309586809127, + "lng": 2.1706205324908256 + }, + "year": "2023" + }, + { + "venueId": "4cf8d9a2e8e25481d294d962", + "latLng": { + "lat": 23.141934025917767, + "lng": 113.27272423498981 + }, + "year": "2023" + }, + { + "venueId": "4e9f00d05c5c9252b662f8f9", + "latLng": { + "lat": 21.450010875051433, + "lng": 39.253563959315514 + }, + "year": "2023" + }, + { + "venueId": "4adcda50f964a520544121e3", + "latLng": { + "lat": 41.40359390044125, + "lng": 2.174578477412582 + }, + "year": "2023" + }, + { + "venueId": "5cdc89e06eda02002c7e05e7", + "latLng": { + "lat": 24.852401115455418, + "lng": 46.81262120144999 + }, + "year": "2023" + }, + { + "venueId": "4b80c660f964a520668b30e3", + "latLng": { + "lat": 26.29410303677182, + "lng": 50.218460110577226 + }, + "year": "2023" + }, + { + "venueId": "5516e3d6498eb6274ed5d6d3", + "latLng": { + "lat": 24.650495616862333, + "lng": 46.74053210233755 + }, + "year": "2023" + }, + { + "venueId": "4b80be31f964a5209a8930e3", + "latLng": { + "lat": 41.289243985069895, + "lng": 2.07387136046688 + }, + "year": "2023" + }, + { + "venueId": "55587b1b498e23395cbba562", + "latLng": { + "lat": 41.368866822034676, + "lng": 2.1896159456492787 + }, + "year": "2023" + }, + { + "venueId": "4c434434d7fad13a504b0ada", + "latLng": { + "lat": 21.632186723958817, + "lng": 39.15616363955777 + }, + "year": "2023" + }, + { + "venueId": "5d18be0be2dcb400235c0632", + "latLng": { + "lat": 26.11886357741108, + "lng": 43.67193173238149 + }, + "year": "2023" + }, + { + "venueId": "4f435101e4b0c290d9da7e53", + "latLng": { + "lat": 26.14533288808175, + "lng": 50.09250759113405 + }, + "year": "2023" + }, + { + "venueId": "52b447b3498e2ee9b87963c1", + "latLng": { + "lat": 21.65567239272066, + "lng": 39.125928761079095 + }, + "year": "2023" + }, + { + "venueId": "61256df50d35ab17f33695f0", + "latLng": { + "lat": 26.34364263053262, + "lng": 50.20326799588253 + }, + "year": "2023" + }, + { + "venueId": "5f1c776cf0497b5881492755", + "latLng": { + "lat": 21.355072828854347, + "lng": 40.296499847687436 + }, + "year": "2023" + }, + { + "venueId": "5348e1d2498e44247599568b", + "latLng": { + "lat": 23.28170909944806, + "lng": 39.939841494284245 + }, + "year": "2023" + }, + { + "venueId": "63fb6bbcfd12b436679c6c3a", + "latLng": { + "lat": 21.605791819963162, + "lng": 39.11819749929402 + }, + "year": "2023" + }, + { + "venueId": "5ddfba76af03f30008451e28", + "latLng": { + "lat": 21.573817573642383, + "lng": 39.12733665418924 + }, + "year": "2023" + }, + { + "venueId": "5a5b1e5ef00a70745165a043", + "latLng": { + "lat": 24.45930555232525, + "lng": 46.296539752931665 + }, + "year": "2023" + }, + { + "venueId": "5222665f11d2729e8a132703", + "latLng": { + "lat": 41.38710058800022, + "lng": 2.167214190795006 + }, + "year": "2023" + }, + { + "venueId": "61e9a3d256fcf12109ea108b", + "latLng": { + "lat": 21.559588676680676, + "lng": 39.13211911206043 + }, + "year": "2023" + }, + { + "venueId": "4b81e997f964a520c3c330e3", + "latLng": { + "lat": 21.628164922147125, + "lng": 39.11131430884882 + }, + "year": "2023" + }, + { + "venueId": "60a808563d25170ba49929b5", + "latLng": { + "lat": 41.38630096517446, + "lng": 2.1813369625471424 + }, + "year": "2023" + }, + { + "venueId": "4b7980a2f964a5202bfd2ee3", + "latLng": { + "lat": 41.290863120326, + "lng": 2.0756477950358865 + }, + "year": "2023" + }, + { + "venueId": "4bbc4204ed7776b0ae753f51", + "latLng": { + "lat": 21.491657795890013, + "lng": 39.242393341742904 + }, + "year": "2023" + }, + { + "venueId": "4b55e65af964a52054f527e3", + "latLng": { + "lat": 41.38502912317013, + "lng": 2.181225446474913 + }, + "year": "2023" + }, + { + "venueId": "5bb8c4302632ec002c02f130", + "latLng": { + "lat": 21.5474960268419, + "lng": 39.14955384931271 + }, + "year": "2023" + }, + { + "venueId": "62960df38b3a52796055af2d", + "latLng": { + "lat": 21.68922528540973, + "lng": 39.11029752623126 + }, + "year": "2023" + }, + { + "venueId": "632db6da61c1144ccdcc270e", + "latLng": { + "lat": 26.313391354104724, + "lng": 50.22366076977731 + }, + "year": "2023" + }, + { + "venueId": "5c834d25dee770002cca095b", + "latLng": { + "lat": 23.759377069994287, + "lng": 44.76188346652303 + }, + "year": "2023" + }, + { + "venueId": "52fafeb4498e411285ad33be", + "latLng": { + "lat": 41.38899653412558, + "lng": 2.1771075695030184 + }, + "year": "2023" + }, + { + "venueId": "52237ce611d29d701234ae99", + "latLng": { + "lat": 26.417736377521408, + "lng": 50.064312257934134 + }, + "year": "2023" + }, + { + "venueId": "63a8304c3285284a6a41671f", + "latLng": { + "lat": 21.57258400107194, + "lng": 39.12860212713538 + }, + "year": "2023" + }, + { + "venueId": "5e5e1ee203634e0008bc026c", + "latLng": { + "lat": 26.306068707992306, + "lng": 50.19032179755697 + }, + "year": "2023" + }, + { + "venueId": "553c1872498e983c7eebd589", + "latLng": { + "lat": 41.39594212184487, + "lng": 2.1510843916869686 + }, + "year": "2023" + }, + { + "venueId": "64d7d243ecb7f04942a0c96a", + "latLng": { + "lat": 21.684844629407877, + "lng": 39.10787751817459 + }, + "year": "2023" + }, + { + "venueId": "635a9ebc419cd05e8fa2a0f0", + "latLng": { + "lat": 21.59928782942366, + "lng": 39.11855333081777 + }, + "year": "2023" + }, + { + "venueId": "603d050877f52c5d347a949d", + "latLng": { + "lat": 21.563614071262514, + "lng": 39.161543349438574 + }, + "year": "2023" + }, + { + "venueId": "5c279e5561f070002cc7be60", + "latLng": { + "lat": 21.567112963260833, + "lng": 39.12478514261505 + }, + "year": "2023" + }, + { + "venueId": "4adcda4ff964a520fd4021e3", + "latLng": { + "lat": 41.397597970627054, + "lng": 2.191220017470637 + }, + "year": "2023" + }, + { + "venueId": "5dff38c9dc08bb0008a8c10c", + "latLng": { + "lat": 24.712681979705845, + "lng": 46.67625169892554 + }, + "year": "2023" + }, + { + "venueId": "5f1df759a5f44255f163451a", + "latLng": { + "lat": 41.38925478044461, + "lng": 2.165965273438235 + }, + "year": "2023" + }, + { + "venueId": "5cfedbcd01bc5a002cfa4915", + "latLng": { + "lat": 21.551223160151203, + "lng": 39.21465128813045 + }, + "year": "2023" + }, + { + "venueId": "618cf2d21b7587423304e0a7", + "latLng": { + "lat": 26.30029585953389, + "lng": 50.21994381245056 + }, + "year": "2023" + }, + { + "venueId": "5da39adcfcce7a0007542b4a", + "latLng": { + "lat": 21.661782539772112, + "lng": 39.173977680422325 + }, + "year": "2023" + }, + { + "venueId": "4b8137c6f964a520df9a30e3", + "latLng": { + "lat": 41.3891075997274, + "lng": 2.1721359028393916 + }, + "year": "2023" + }, + { + "venueId": "558deef3498e3f1c759509e2", + "latLng": { + "lat": 22.253065350859995, + "lng": 41.46320009173409 + }, + "year": "2023" + }, + { + "venueId": "4adcda5ff964a5208f4421e3", + "latLng": { + "lat": 41.36566306467734, + "lng": 2.1554061519444248 + }, + "year": "2023" + }, + { + "venueId": "5b5c8b754aa3f8002c3edbea", + "latLng": { + "lat": 24.334244214968532, + "lng": 45.786577797948006 + }, + "year": "2023" + }, + { + "venueId": "641f0b36dba9c57a0475ec51", + "latLng": { + "lat": 41.39170098724768, + "lng": 2.173040980632659 + }, + "year": "2023" + }, + { + "venueId": "5e9e67f7060609000808eba2", + "latLng": { + "lat": 21.593510962514088, + "lng": 39.15693583757084 + }, + "year": "2023" + }, + { + "venueId": "4adcda4ef964a5203f4021e3", + "latLng": { + "lat": 41.38882245763996, + "lng": 2.1667473514908377 + }, + "year": "2023" + }, + { + "venueId": "581dc705da4059503ff9c3c6", + "latLng": { + "lat": 21.616784979347337, + "lng": 39.139030537713246 + }, + "year": "2023" + }, + { + "venueId": "4adcda4df964a520f63f21e3", + "latLng": { + "lat": 41.40023093912745, + "lng": 2.154202157000036 + }, + "year": "2023" + }, + { + "venueId": "4d7226ca5f0037049506dba0", + "latLng": { + "lat": 21.447431568964983, + "lng": 40.5012588761472 + }, + "year": "2023" + }, + { + "venueId": "4f81f761e4b0bf6ccaf3169a", + "latLng": { + "lat": 21.57180786995284, + "lng": 39.15462969363988 + }, + "year": "2023" + }, + { + "venueId": "4db9aa081e7206c23d2266a1", + "latLng": { + "lat": 41.39404705932726, + "lng": 2.1590423164601855 + }, + "year": "2023" + }, + { + "venueId": "4b991368f964a520d15f35e3", + "latLng": { + "lat": 21.59710138104699, + "lng": 39.122599503368136 + }, + "year": "2023" + }, + { + "venueId": "4adcda60f964a520994421e3", + "latLng": { + "lat": 41.373421044565845, + "lng": 2.151209098147207 + }, + "year": "2023" + }, + { + "venueId": "4adcda50f964a5204b4121e3", + "latLng": { + "lat": 41.36398340877751, + "lng": 2.1668337167718237 + }, + "year": "2023" + }, + { + "venueId": "620eaac1be1089503aad31b3", + "latLng": { + "lat": 26.317524495629137, + "lng": 50.20382620541967 + }, + "year": "2023" + }, + { + "venueId": "5314b04ee4b0d805d372dfb7", + "latLng": { + "lat": 41.39163357594029, + "lng": 2.1671359965607024 + }, + "year": "2023" + }, + { + "venueId": "5d41f0121bce4800086fb8bb", + "latLng": { + "lat": 21.566838758842767, + "lng": 39.15589946439332 + }, + "year": "2023" + }, + { + "venueId": "51474a41e4b0634bf32aca97", + "latLng": { + "lat": 21.5436863313647, + "lng": 39.16604393644559 + }, + "year": "2023" + }, + { + "venueId": "5fe69655ec39e873a5811415", + "latLng": { + "lat": 26.307464501186267, + "lng": 50.22426938652488 + }, + "year": "2023" + }, + { + "venueId": "637e2b0d4c221334b4d54f99", + "latLng": { + "lat": 21.6290259721521, + "lng": 39.11135497981517 + }, + "year": "2023" + }, + { + "venueId": "4b576b43f964a520a33628e3", + "latLng": { + "lat": 21.564578711894857, + "lng": 39.111522667840994 + }, + "year": "2023" + }, + { + "venueId": "4adcda59f964a520f74321e3", + "latLng": { + "lat": 41.38191500394976, + "lng": 2.172001541089733 + }, + "year": "2023" + }, + { + "venueId": "5b9c81699b0473002c80edc8", + "latLng": { + "lat": 26.391972652180645, + "lng": 50.03746390056078 + }, + "year": "2023" + }, + { + "venueId": "5a95d3c212f0a9581fa87f47", + "latLng": { + "lat": 21.569322831299125, + "lng": 39.12459199613032 + }, + "year": "2023" + }, + { + "venueId": "6363cb5fd1438154d77748be", + "latLng": { + "lat": 21.511264172688296, + "lng": 39.22803918616073 + }, + "year": "2023" + }, + { + "venueId": "5a09c148bcbf7a220aa84c0f", + "latLng": { + "lat": 21.60673083508901, + "lng": 39.10756738443145 + }, + "year": "2023" + }, + { + "venueId": "62dafe04221a1e0e88e613f7", + "latLng": { + "lat": 21.575406031948397, + "lng": 39.127316323824964 + }, + "year": "2023" + }, + { + "venueId": "63bdcbf698fa9a3ae6ba68eb", + "latLng": { + "lat": 26.30408667163152, + "lng": 50.21124824606084 + }, + "year": "2023" + }, + { + "venueId": "5bcc956dc8b2fb002c2ac57c", + "latLng": { + "lat": 26.30348241719033, + "lng": 50.21063975920133 + }, + "year": "2023" + }, + { + "venueId": "4b94bf08f964a520258234e3", + "latLng": { + "lat": 21.6023579887625, + "lng": 39.10885366696505 + }, + "year": "2023" + }, + { + "venueId": "4da045b6c41ca1437b0c44a3", + "latLng": { + "lat": 21.362090704341124, + "lng": 39.667446363377 + }, + "year": "2023" + }, + { + "venueId": "5435ac5e498ee392afabc8b3", + "latLng": { + "lat": 23.46414240928711, + "lng": 44.336524329863366 + }, + "year": "2023" + }, + { + "venueId": "58177d1538faeaa0473695e8", + "latLng": { + "lat": 21.69074048408262, + "lng": 39.11527960561981 + }, + "year": "2023" + }, + { + "venueId": "4c0b37c332daef3b62cb4b50", + "latLng": { + "lat": 21.670833727129736, + "lng": 39.150067009125955 + }, + "year": "2023" + }, + { + "venueId": "637139e11641f933d5d01501", + "latLng": { + "lat": 21.5595880241267, + "lng": 39.13198197172297 + }, + "year": "2023" + }, + { + "venueId": "600c72773952083ba2d386ad", + "latLng": { + "lat": 26.31537051223904, + "lng": 50.21611643808307 + }, + "year": "2023" + }, + { + "venueId": "61a7b515459d9a0f92299c89", + "latLng": { + "lat": 21.591303077468968, + "lng": 39.13423843655595 + }, + "year": "2023" + }, + { + "venueId": "516d8854e4b0cb0c29d89b63", + "latLng": { + "lat": 21.44134159164841, + "lng": 39.278576264800634 + }, + "year": "2023" + }, + { + "venueId": "6392a78079ccde4879553b7d", + "latLng": { + "lat": 21.554818738015197, + "lng": 39.141932175116715 + }, + "year": "2023" + }, + { + "venueId": "4f02f0340aaffcf6f751c169", + "latLng": { + "lat": 21.49690862747736, + "lng": 39.234645931582214 + }, + "year": "2023" + }, + { + "venueId": "4adcda51f964a520b14121e3", + "latLng": { + "lat": 41.41157699517159, + "lng": 2.2246444143375856 + }, + "year": "2023" + }, + { + "venueId": "6109b153bed08d333587710b", + "latLng": { + "lat": 25.93084215479866, + "lng": 49.649984216815625 + }, + "year": "2023" + }, + { + "venueId": "4d023f610dae37045dc2c842", + "latLng": { + "lat": 26.275358563146394, + "lng": 50.19404708274036 + }, + "year": "2023" + }, + { + "venueId": "5964e2ac51950e7c2fa8c885", + "latLng": { + "lat": 22.729809982089556, + "lng": 42.20043296840232 + }, + "year": "2023" + }, + { + "venueId": "53c1ed88498e8017c6850fc9", + "latLng": { + "lat": 22.228935418654565, + "lng": 41.43967474753336 + }, + "year": "2023" + }, + { + "venueId": "61dca011fb135c44fd54d7d2", + "latLng": { + "lat": 26.30307182536785, + "lng": 50.21153496931076 + }, + "year": "2023" + }, + { + "venueId": "64263b4a30a34e121724ace2", + "latLng": { + "lat": 26.319389998024807, + "lng": 50.222886175422104 + }, + "year": "2023" + }, + { + "venueId": "5de91a6de829d100087bbf90", + "latLng": { + "lat": 26.31174023881048, + "lng": 50.22327850120444 + }, + "year": "2023" + }, + { + "venueId": "4adcda5af964a520504421e3", + "latLng": { + "lat": 41.36908376955488, + "lng": 2.146978864547024 + }, + "year": "2023" + }, + { + "venueId": "6318b168dbb387601dffcb69", + "latLng": { + "lat": 21.59523566702133, + "lng": 39.14572280224478 + }, + "year": "2023" + }, + { + "venueId": "64110c68f0a84f4957a4625a", + "latLng": { + "lat": 26.320877742431012, + "lng": 50.221724302323715 + }, + "year": "2023" + }, + { + "venueId": "62399e2a42e05c6f23958783", + "latLng": { + "lat": 21.60623439092971, + "lng": 39.11928532082768 + }, + "year": "2023" + }, + { + "venueId": "5fb928457e4e68355aa0cb01", + "latLng": { + "lat": 21.54153678329069, + "lng": 39.17171247168779 + }, + "year": "2023" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2023" + }, + { + "venueId": "4d323405f8c9224b37d3aed2", + "latLng": { + "lat": 41.39797700132185, + "lng": 2.161187035843135 + }, + "year": "2023" + }, + { + "venueId": "51375d28e4b0794765776dd2", + "latLng": { + "lat": 41.390502055016356, + "lng": 2.1646410495729467 + }, + "year": "2023" + }, + { + "venueId": "55e324f5498e88af42e8709b", + "latLng": { + "lat": 41.39068842874137, + "lng": 2.168666619045246 + }, + "year": "2023" + }, + { + "venueId": "4be2e359f07b0f47196cf643", + "latLng": { + "lat": 41.382382938978445, + "lng": 2.182612555066272 + }, + "year": "2023" + }, + { + "venueId": "4bcc52eb3740b713efc46365", + "latLng": { + "lat": 41.35494300090486, + "lng": 2.1308193955006534 + }, + "year": "2023" + }, + { + "venueId": "586223e3d4390729e0924f5b", + "latLng": { + "lat": 26.304961729501276, + "lng": 50.17752921057632 + }, + "year": "2023" + }, + { + "venueId": "5eff6684dc624c0007b67ba4", + "latLng": { + "lat": 26.343679100686153, + "lng": 50.20332338449626 + }, + "year": "2023" + }, + { + "venueId": "4c20f931ebe52d7f5a743178", + "latLng": { + "lat": 41.36210113359572, + "lng": 2.15261446794789 + }, + "year": "2023" + }, + { + "venueId": "5f7a0f4e65c23a2096b03c30", + "latLng": { + "lat": 24.875485456375152, + "lng": 40.52323335674986 + }, + "year": "2023" + }, + { + "venueId": "4f41dffbe4b0c868df07399d", + "latLng": { + "lat": 21.492750138572287, + "lng": 39.24149543073962 + }, + "year": "2023" + }, + { + "venueId": "552234dc498e41a131b4c8eb", + "latLng": { + "lat": 21.6029363142712, + "lng": 39.143659834880275 + }, + "year": "2023" + }, + { + "venueId": "5fd3a1ff0348563c113194e1", + "latLng": { + "lat": 21.61843743053793, + "lng": 39.13136702032445 + }, + "year": "2023" + }, + { + "venueId": "5136d9f6e4b052e6acffa193", + "latLng": { + "lat": 25.262237053161375, + "lng": 51.612870910048464 + }, + "year": "2023" + }, + { + "venueId": "4bfa8205508c0f4715244031", + "latLng": { + "lat": 41.265188034595575, + "lng": 1.966674291848205 + }, + "year": "2023" + }, + { + "venueId": "5759ca02498e70af1443df98", + "latLng": { + "lat": 41.38605124212348, + "lng": 2.1828333444570216 + }, + "year": "2023" + }, + { + "venueId": "5172c53fe4b0e656c5fcc048", + "latLng": { + "lat": 21.627381948963514, + "lng": 39.11061773507441 + }, + "year": "2023" + }, + { + "venueId": "5da1cef41951ac0008a5daf0", + "latLng": { + "lat": 41.36706566046372, + "lng": 2.1888142686738727 + }, + "year": "2023" + }, + { + "venueId": "5f6c8903491025762edf942f", + "latLng": { + "lat": 21.548995574829206, + "lng": 39.14561609868195 + }, + "year": "2023" + }, + { + "venueId": "62d1e93879d2286ef50b1441", + "latLng": { + "lat": 21.529916022472893, + "lng": 39.17275501423569 + }, + "year": "2023" + }, + { + "venueId": "6236a5b2b4a05c13997b97b1", + "latLng": { + "lat": 21.707616189249993, + "lng": 39.102188102749395 + }, + "year": "2023" + }, + { + "venueId": "4b4bd27bf964a520d2a826e3", + "latLng": { + "lat": 22.543952242374505, + "lng": 114.05456543143374 + }, + "year": "2023" + }, + { + "venueId": "5d9ca5bef6332c0008bd4e59", + "latLng": { + "lat": 26.39708689586624, + "lng": 50.16802064893336 + }, + "year": "2023" + }, + { + "venueId": "4dfd750d18a8eee4fe409122", + "latLng": { + "lat": 39.88899660980825, + "lng": 116.3197864942961 + }, + "year": "2023" + }, + { + "venueId": "4f9e0ca0e4b05e5ed906743d", + "latLng": { + "lat": 23.148915742165002, + "lng": 113.31522132509137 + }, + "year": "2023" + }, + { + "venueId": "650df20f5c77a134c4aa9958", + "latLng": { + "lat": 21.54716367682054, + "lng": 39.13855286045105 + }, + "year": "2023" + }, + { + "venueId": "4beb2892f90e9c74ae80e3ed", + "latLng": { + "lat": 26.468775167642722, + "lng": 49.7966315401716 + }, + "year": "2023" + }, + { + "venueId": "525b95dc11d22b1c03e67fc6", + "latLng": { + "lat": 25.15390398699383, + "lng": 47.57694200117362 + }, + "year": "2023" + }, + { + "venueId": "4bdf4e8989ca76b038b75d5e", + "latLng": { + "lat": 41.38514856982486, + "lng": 2.196729202993536 + }, + "year": "2023" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2023" + }, + { + "venueId": "5e00face028e6200084601aa", + "latLng": { + "lat": 26.39801197953876, + "lng": 50.09249253406045 + }, + "year": "2023" + }, + { + "venueId": "64a70822a2caa271282eb60b", + "latLng": { + "lat": 41.36871373219177, + "lng": 2.1896879532611204 + }, + "year": "2023" + }, + { + "venueId": "51a782c6498e272c018d2c0b", + "latLng": { + "lat": 26.36779839280383, + "lng": 50.236015369314686 + }, + "year": "2023" + }, + { + "venueId": "4c0d3610d64c0f47665e265d", + "latLng": { + "lat": 41.37850942529027, + "lng": 2.188415835721129 + }, + "year": "2023" + }, + { + "venueId": "5e35ced772ac420008c409ef", + "latLng": { + "lat": 21.54746622324055, + "lng": 39.14969103105567 + }, + "year": "2023" + }, + { + "venueId": "5a075cd16dcf043c237b3b99", + "latLng": { + "lat": 41.3819469643492, + "lng": 2.169444020668566 + }, + "year": "2023" + }, + { + "venueId": "5e51578f9218000008c4f48e", + "latLng": { + "lat": 21.559245021310065, + "lng": 39.13818197524285 + }, + "year": "2023" + }, + { + "venueId": "4adcda51f964a520b34121e3", + "latLng": { + "lat": 41.38003634901147, + "lng": 2.1200959808403583 + }, + "year": "2023" + }, + { + "venueId": "5d2cb9427cfbfe002330af24", + "latLng": { + "lat": 21.547748887139893, + "lng": 39.150773232176554 + }, + "year": "2023" + }, + { + "venueId": "4adcda60f964a520974421e3", + "latLng": { + "lat": 41.37953092043473, + "lng": 2.140279411577774 + }, + "year": "2023" + }, + { + "venueId": "5d0c24e9ceaba300235b49af", + "latLng": { + "lat": 26.122437974373334, + "lng": 44.0825949770952 + }, + "year": "2023" + }, + { + "venueId": "5d2b0ceee97aae002d871d29", + "latLng": { + "lat": 26.32649726734732, + "lng": 50.212887670623964 + }, + "year": "2023" + }, + { + "venueId": "5f2c212571da594e2fa0627f", + "latLng": { + "lat": 26.318172799736903, + "lng": 50.194187850750694 + }, + "year": "2023" + }, + { + "venueId": "5b974600ad17890039567a67", + "latLng": { + "lat": 25.9323414786487, + "lng": 49.644494390537 + }, + "year": "2023" + }, + { + "venueId": "60bfc3089f215a6ef17b1f1d", + "latLng": { + "lat": 21.648405231117085, + "lng": 39.11218356565236 + }, + "year": "2023" + }, + { + "venueId": "60e9e11507e44b6e35a90f05", + "latLng": { + "lat": 41.38109803226512, + "lng": 2.193730014964748 + }, + "year": "2023" + }, + { + "venueId": "51913aca498e2fe60905351d", + "latLng": { + "lat": 26.309668961120185, + "lng": 50.21193727989801 + }, + "year": "2023" + }, + { + "venueId": "643a412549b76c537f4dbc3f", + "latLng": { + "lat": 22.542418032411625, + "lng": 114.0836349817693 + }, + "year": "2023" + }, + { + "venueId": "59e211289411f24b07d467a8", + "latLng": { + "lat": 41.396471543377125, + "lng": 2.1742425555645717 + }, + "year": "2023" + }, + { + "venueId": "4e9bf0570aaf5f690eea9d51", + "latLng": { + "lat": 21.528222706052347, + "lng": 39.175155963234985 + }, + "year": "2023" + }, + { + "venueId": "4b76bca2f964a520975b2ee3", + "latLng": { + "lat": 41.414065435131796, + "lng": 2.1537224867219873 + }, + "year": "2023" + }, + { + "venueId": "4adcda53f964a520804221e3", + "latLng": { + "lat": 41.38237620900051, + "lng": 2.183202929119673 + }, + "year": "2023" + }, + { + "venueId": "4c549e1630f92d7ffdd5c1ba", + "latLng": { + "lat": 41.386382072909534, + "lng": 2.174448907259989 + }, + "year": "2023" + }, + { + "venueId": "5ff4c5eb4fadcb1bda5b2f75", + "latLng": { + "lat": 21.56587116540154, + "lng": 39.15339482591591 + }, + "year": "2023" + }, + { + "venueId": "53e5e4e6498e03a758bc9bd4", + "latLng": { + "lat": 41.38516468277636, + "lng": 2.165540429028592 + }, + "year": "2023" + }, + { + "venueId": "622671fc100dc679f5d8945e", + "latLng": { + "lat": 21.57301294451815, + "lng": 39.13766863985878 + }, + "year": "2023" + }, + { + "venueId": "53626494498e06c28b5e1bc2", + "latLng": { + "lat": 24.082240408759056, + "lng": 45.32526252543382 + }, + "year": "2023" + }, + { + "venueId": "4fa419c9e4b0a34ac6929c75", + "latLng": { + "lat": 41.38832589460407, + "lng": 2.1617000685975354 + }, + "year": "2023" + }, + { + "venueId": "4b69cf68f964a5209cb52be3", + "latLng": { + "lat": 21.604319663959064, + "lng": 39.12071869740631 + }, + "year": "2023" + }, + { + "venueId": "64138d670b85631766f9f68a", + "latLng": { + "lat": 41.392121121198386, + "lng": 2.156931578297954 + }, + "year": "2023" + }, + { + "venueId": "5fa277976f4da67a3d18def1", + "latLng": { + "lat": 21.553726890375597, + "lng": 39.143029673257416 + }, + "year": "2023" + }, + { + "venueId": "5f871f609e80e557bb1f40bd", + "latLng": { + "lat": 21.61294503187306, + "lng": 39.11827374907405 + }, + "year": "2023" + }, + { + "venueId": "5da6ddf1a0917b0008f8d446", + "latLng": { + "lat": 39.53921800815486, + "lng": 116.41247196034196 + }, + "year": "2023" + }, + { + "venueId": "5fdc906bfba2b0122ca911a8", + "latLng": { + "lat": 21.562139320770513, + "lng": 39.203819057929756 + }, + "year": "2023" + }, + { + "venueId": "507fe73fd63e93639fd2a84f", + "latLng": { + "lat": 41.38021670671146, + "lng": 2.120695120559375 + }, + "year": "2023" + }, + { + "venueId": "65244f066a9b0f46ac7d8389", + "latLng": { + "lat": 26.29867976392203, + "lng": 50.21917429477178 + }, + "year": "2023" + }, + { + "venueId": "4f8c277de4b057e282efe3d6", + "latLng": { + "lat": 23.14863624455186, + "lng": 113.31517480539436 + }, + "year": "2023" + }, + { + "venueId": "5a6444b8d1a4024820659273", + "latLng": { + "lat": 21.55059183044617, + "lng": 39.15293757899966 + }, + "year": "2023" + }, + { + "venueId": "4adcda51f964a5208c4121e3", + "latLng": { + "lat": 41.364231071444095, + "lng": 2.1527103992292678 + }, + "year": "2023" + }, + { + "venueId": "534ffb7d498e3ed70d5da92b", + "latLng": { + "lat": 23.144035751408403, + "lng": 43.06559616714482 + }, + "year": "2023" + }, + { + "venueId": "4f6d54fee4b032eb62f9278a", + "latLng": { + "lat": 25.563079266108467, + "lng": 45.89078019933604 + }, + "year": "2023" + }, + { + "venueId": "4fe4975fe4b023504e7397a3", + "latLng": { + "lat": 41.43631322645525, + "lng": 2.1721263055582583 + }, + "year": "2023" + }, + { + "venueId": "50e0b931e4b0439f03137a8a", + "latLng": { + "lat": 24.479351460001986, + "lng": 39.6102342860236 + }, + "year": "2023" + }, + { + "venueId": "621f611a60b407522b89cf56", + "latLng": { + "lat": 21.63075386566307, + "lng": 39.111822694057444 + }, + "year": "2023" + }, + { + "venueId": "56683052498eda02711bdb61", + "latLng": { + "lat": 24.94259201798131, + "lng": 46.711510259530954 + }, + "year": "2023" + }, + { + "venueId": "5bce0654029a550039544136", + "latLng": { + "lat": 24.80419622082436, + "lng": 46.674082458197255 + }, + "year": "2023" + }, + { + "venueId": "4adcda51f964a520aa4121e3", + "latLng": { + "lat": 41.39194454619346, + "lng": 2.1650344743327508 + }, + "year": "2023" + }, + { + "venueId": "5fd36fa52e1fe449edbe904b", + "latLng": { + "lat": 21.697921422370165, + "lng": 39.104735358036635 + }, + "year": "2023" + }, + { + "venueId": "5f380517b8c8015e1a04cd81", + "latLng": { + "lat": 21.572722480898207, + "lng": 39.14868502471471 + }, + "year": "2023" + }, + { + "venueId": "4c7a117b81bca093f497ff14", + "latLng": { + "lat": 26.392064669436575, + "lng": 50.18886897845275 + }, + "year": "2024" + }, + { + "venueId": "4bc6d588f360ef3b943fdc2d", + "latLng": { + "lat": 24.697508126526525, + "lng": 46.683783467535314 + }, + "year": "2024" + }, + { + "venueId": "637010987c629d0ae0eab636", + "latLng": { + "lat": 21.59809986978033, + "lng": 39.12106951113865 + }, + "year": "2024" + }, + { + "venueId": "5c513a155455b2002cd6252b", + "latLng": { + "lat": 24.857809992067185, + "lng": 46.78257602100738 + }, + "year": "2024" + }, + { + "venueId": "665b4f74ddb104740850c290", + "latLng": { + "lat": 26.32554357447822, + "lng": 50.18627015564135 + }, + "year": "2024" + }, + { + "venueId": "4eba66a68b8189688452c67f", + "latLng": { + "lat": 26.190178600731116, + "lng": 50.31133175292003 + }, + "year": "2024" + }, + { + "venueId": "675715e0b28d90775f8ecc63", + "latLng": { + "lat": 26.302702386051905, + "lng": 50.214703237027344 + }, + "year": "2024" + }, + { + "venueId": "652aa82baca03829eea00db9", + "latLng": { + "lat": 26.319103911466467, + "lng": 50.222212185735714 + }, + "year": "2024" + }, + { + "venueId": "4b7185ccf964a520034b2de3", + "latLng": { + "lat": 24.953981001287374, + "lng": 46.70860333688317 + }, + "year": "2024" + }, + { + "venueId": "5ff4e7472c5313266e868d95", + "latLng": { + "lat": 24.813116427961326, + "lng": 46.60764561188199 + }, + "year": "2024" + }, + { + "venueId": "66527c67db90aa6d9c7455a5", + "latLng": { + "lat": 21.573254900007882, + "lng": 39.1481769346377 + }, + "year": "2024" + }, + { + "venueId": "65e72251250f8418695b3963", + "latLng": { + "lat": 26.325761228803163, + "lng": 50.18597860302743 + }, + "year": "2024" + }, + { + "venueId": "4ee6210c6c25be9631f9fc07", + "latLng": { + "lat": 26.380961260716234, + "lng": 50.21265641668458 + }, + "year": "2024" + }, + { + "venueId": "61885986e44c1c5e12307bb8", + "latLng": { + "lat": 21.653242354116603, + "lng": 39.104374444154175 + }, + "year": "2024" + }, + { + "venueId": "5b0249c1f79faa002c954406", + "latLng": { + "lat": 25.999883569575264, + "lng": 49.73732342018694 + }, + "year": "2024" + }, + { + "venueId": "505fec0ee4b0a054474a1aea", + "latLng": { + "lat": 21.76376153233596, + "lng": 39.16417981597123 + }, + "year": "2024" + }, + { + "venueId": "5223518f11d223725974455b", + "latLng": { + "lat": 26.347489831589662, + "lng": 50.1491386010135 + }, + "year": "2024" + }, + { + "venueId": "64665ff16274e250676a9e60", + "latLng": { + "lat": 26.391831011143157, + "lng": 50.103952049710976 + }, + "year": "2024" + }, + { + "venueId": "4f435101e4b0c290d9da7e53", + "latLng": { + "lat": 26.14533288808175, + "lng": 50.09250759113405 + }, + "year": "2024" + }, + { + "venueId": "631765b434d714390fa011d6", + "latLng": { + "lat": 24.77587213701388, + "lng": 46.59899526200265 + }, + "year": "2024" + }, + { + "venueId": "63fb6bbcfd12b436679c6c3a", + "latLng": { + "lat": 21.605791819963162, + "lng": 39.11819749929402 + }, + "year": "2024" + }, + { + "venueId": "607b205765ac056352d590d9", + "latLng": { + "lat": 26.3515070031088, + "lng": 50.21157520025007 + }, + "year": "2024" + }, + { + "venueId": "4b81e997f964a520c3c330e3", + "latLng": { + "lat": 21.628164922147125, + "lng": 39.11131430884882 + }, + "year": "2024" + }, + { + "venueId": "65ad0849a8931b51cc18603c", + "latLng": { + "lat": 26.313662507179444, + "lng": 50.216538896000614 + }, + "year": "2024" + }, + { + "venueId": "4bbc4204ed7776b0ae753f51", + "latLng": { + "lat": 21.491657795890013, + "lng": 39.242393341742904 + }, + "year": "2024" + }, + { + "venueId": "62960df38b3a52796055af2d", + "latLng": { + "lat": 21.68922528540973, + "lng": 39.11029752623126 + }, + "year": "2024" + }, + { + "venueId": "4d942292561acbffe152e1a5", + "latLng": { + "lat": 25.937451177280188, + "lng": 49.67505404089515 + }, + "year": "2024" + }, + { + "venueId": "52237ce611d29d701234ae99", + "latLng": { + "lat": 26.417736377521408, + "lng": 50.064312257934134 + }, + "year": "2024" + }, + { + "venueId": "4f68eb88e4b0b4f7926b1ac8", + "latLng": { + "lat": 24.735544849030177, + "lng": 46.67375236459982 + }, + "year": "2024" + }, + { + "venueId": "5e5e1ee203634e0008bc026c", + "latLng": { + "lat": 26.306068707992306, + "lng": 50.19032179755697 + }, + "year": "2024" + }, + { + "venueId": "64d7d243ecb7f04942a0c96a", + "latLng": { + "lat": 21.684844629407877, + "lng": 39.10787751817459 + }, + "year": "2024" + }, + { + "venueId": "4e48d4d745dd2955e5b6b2ca", + "latLng": { + "lat": 26.24795065239629, + "lng": 49.97513133546113 + }, + "year": "2024" + }, + { + "venueId": "64c9367474e6dd0d654ef95b", + "latLng": { + "lat": 21.574051489256174, + "lng": 39.12720958930571 + }, + "year": "2024" + }, + { + "venueId": "6515e18bfd1831616a5555d2", + "latLng": { + "lat": 21.572584037318617, + "lng": 39.13207337217768 + }, + "year": "2024" + }, + { + "venueId": "5d9fb710bdfc2800070ac12e", + "latLng": { + "lat": 24.76908962508271, + "lng": 46.60430678490387 + }, + "year": "2024" + }, + { + "venueId": "618cf2d21b7587423304e0a7", + "latLng": { + "lat": 26.30029585953389, + "lng": 50.21994381245056 + }, + "year": "2024" + }, + { + "venueId": "5da39adcfcce7a0007542b4a", + "latLng": { + "lat": 21.661782539772112, + "lng": 39.173977680422325 + }, + "year": "2024" + }, + { + "venueId": "516fcaa1498e512768f56aaf", + "latLng": { + "lat": 21.487959097219697, + "lng": 39.18712538445038 + }, + "year": "2024" + }, + { + "venueId": "6636e30628d44a1f70649ef5", + "latLng": { + "lat": 21.598465001106327, + "lng": 39.12230199011639 + }, + "year": "2024" + }, + { + "venueId": "533702e9498e6c3d74365dfe", + "latLng": { + "lat": 21.48461897260783, + "lng": 39.18459159214423 + }, + "year": "2024" + }, + { + "venueId": "4b991368f964a520d15f35e3", + "latLng": { + "lat": 21.59710138104699, + "lng": 39.122599503368136 + }, + "year": "2024" + }, + { + "venueId": "623cbf260627fa3c51da165c", + "latLng": { + "lat": 24.82857600745866, + "lng": 46.72760999936691 + }, + "year": "2024" + }, + { + "venueId": "620eaac1be1089503aad31b3", + "latLng": { + "lat": 26.317524495629137, + "lng": 50.20382620541967 + }, + "year": "2024" + }, + { + "venueId": "533aef95498e06969b762bfd", + "latLng": { + "lat": 26.457244423517317, + "lng": 50.13181930654248 + }, + "year": "2024" + }, + { + "venueId": "64332a319aa870761667eae0", + "latLng": { + "lat": 26.308740081461874, + "lng": 50.19293100502872 + }, + "year": "2024" + }, + { + "venueId": "51a8bbcb498e80ed7dbb2779", + "latLng": { + "lat": 26.31307947440162, + "lng": 50.19326783713872 + }, + "year": "2024" + }, + { + "venueId": "5fe69655ec39e873a5811415", + "latLng": { + "lat": 26.307464501186267, + "lng": 50.22426938652488 + }, + "year": "2024" + }, + { + "venueId": "4b576b43f964a520a33628e3", + "latLng": { + "lat": 21.564578711894857, + "lng": 39.111522667840994 + }, + "year": "2024" + }, + { + "venueId": "5b05bc78a6031c002c9f84e8", + "latLng": { + "lat": 24.75323320709275, + "lng": 46.557412643266474 + }, + "year": "2024" + }, + { + "venueId": "59f34454bb2a472c1706b08d", + "latLng": { + "lat": 24.822404779640536, + "lng": 46.64280391775707 + }, + "year": "2024" + }, + { + "venueId": "5b9c81699b0473002c80edc8", + "latLng": { + "lat": 26.391972652180645, + "lng": 50.03746390056078 + }, + "year": "2024" + }, + { + "venueId": "5a09c148bcbf7a220aa84c0f", + "latLng": { + "lat": 21.60673083508901, + "lng": 39.10756738443145 + }, + "year": "2024" + }, + { + "venueId": "62dafe04221a1e0e88e613f7", + "latLng": { + "lat": 21.575406031948397, + "lng": 39.127316323824964 + }, + "year": "2024" + }, + { + "venueId": "63bdcbf698fa9a3ae6ba68eb", + "latLng": { + "lat": 26.30408667163152, + "lng": 50.21124824606084 + }, + "year": "2024" + }, + { + "venueId": "4bee71fb3686c9b68e84246e", + "latLng": { + "lat": 26.307803502603345, + "lng": 50.16971411136063 + }, + "year": "2024" + }, + { + "venueId": "6612819f94e8810ed73da3db", + "latLng": { + "lat": 26.305142495435774, + "lng": 50.18014784391813 + }, + "year": "2024" + }, + { + "venueId": "58a7322aa55db024334222cc", + "latLng": { + "lat": 25.92935197893923, + "lng": 49.657480028195295 + }, + "year": "2024" + }, + { + "venueId": "5435ac5e498ee392afabc8b3", + "latLng": { + "lat": 23.46414240928711, + "lng": 44.336524329863366 + }, + "year": "2024" + }, + { + "venueId": "4c0b37c332daef3b62cb4b50", + "latLng": { + "lat": 21.670833727129736, + "lng": 39.150067009125955 + }, + "year": "2024" + }, + { + "venueId": "600c72773952083ba2d386ad", + "latLng": { + "lat": 26.31537051223904, + "lng": 50.21611643808307 + }, + "year": "2024" + }, + { + "venueId": "664f96b9c6b63d5625a75a63", + "latLng": { + "lat": 21.59757882969837, + "lng": 39.130492864281095 + }, + "year": "2024" + }, + { + "venueId": "4d023f610dae37045dc2c842", + "latLng": { + "lat": 26.275358563146394, + "lng": 50.19404708274036 + }, + "year": "2024" + }, + { + "venueId": "61dca011fb135c44fd54d7d2", + "latLng": { + "lat": 26.30307182536785, + "lng": 50.21153496931076 + }, + "year": "2024" + }, + { + "venueId": "62e67cf32a3f3a7ebfb46d0f", + "latLng": { + "lat": 21.581450602995258, + "lng": 39.18562749582345 + }, + "year": "2024" + }, + { + "venueId": "64263b4a30a34e121724ace2", + "latLng": { + "lat": 26.319389998024807, + "lng": 50.222886175422104 + }, + "year": "2024" + }, + { + "venueId": "5de91a6de829d100087bbf90", + "latLng": { + "lat": 26.31174023881048, + "lng": 50.22327850120444 + }, + "year": "2024" + }, + { + "venueId": "6623a703567f1b774ea2b658", + "latLng": { + "lat": 24.837245314224372, + "lng": 46.666174958215535 + }, + "year": "2024" + }, + { + "venueId": "64110c68f0a84f4957a4625a", + "latLng": { + "lat": 26.320877742431012, + "lng": 50.221724302323715 + }, + "year": "2024" + }, + { + "venueId": "64bbef97901ed63fde31fe77", + "latLng": { + "lat": 21.713244280729857, + "lng": 39.129603448975026 + }, + "year": "2024" + }, + { + "venueId": "4d9586b6fb0fcbffc40d75eb", + "latLng": { + "lat": 24.746831284772654, + "lng": 46.746826200321024 + }, + "year": "2024" + }, + { + "venueId": "5d6a541392ab450008431486", + "latLng": { + "lat": 26.283031696437824, + "lng": 50.220894327923624 + }, + "year": "2024" + }, + { + "venueId": "61fc033797335e31c4a4bb31", + "latLng": { + "lat": 26.31186657152104, + "lng": 50.21712732440402 + }, + "year": "2024" + }, + { + "venueId": "66f43d4b04a62e5a9ca3fcce", + "latLng": { + "lat": 21.57324745906782, + "lng": 39.12720450670507 + }, + "year": "2024" + }, + { + "venueId": "586223e3d4390729e0924f5b", + "latLng": { + "lat": 26.304961729501276, + "lng": 50.17752921057632 + }, + "year": "2024" + }, + { + "venueId": "66b8da581fc9dd6a8346f47e", + "latLng": { + "lat": 21.570391175754473, + "lng": 39.14909141445665 + }, + "year": "2024" + }, + { + "venueId": "6543a39fcffaf2201422fee9", + "latLng": { + "lat": 26.31500742519883, + "lng": 50.21228930383893 + }, + "year": "2024" + }, + { + "venueId": "620eab31471781672d752cf3", + "latLng": { + "lat": 26.31799625781105, + "lng": 50.20330829993263 + }, + "year": "2024" + }, + { + "venueId": "5eff6684dc624c0007b67ba4", + "latLng": { + "lat": 26.343679100686153, + "lng": 50.20332338449626 + }, + "year": "2024" + }, + { + "venueId": "5642f0b6498ec2321e722111", + "latLng": { + "lat": 24.667250627031482, + "lng": 46.63330412089218 + }, + "year": "2024" + }, + { + "venueId": "61f90538c82c7360d1cdf812", + "latLng": { + "lat": 24.831645024778204, + "lng": 46.65968297337412 + }, + "year": "2024" + }, + { + "venueId": "608abbd5b955d44e7663aaec", + "latLng": { + "lat": 26.059275984034638, + "lng": 49.2352549806397 + }, + "year": "2024" + }, + { + "venueId": "57befc72498e3934e52a8753", + "latLng": { + "lat": 23.917968025850286, + "lng": 45.0658490177738 + }, + "year": "2024" + }, + { + "venueId": "552234dc498e41a131b4c8eb", + "latLng": { + "lat": 21.6029363142712, + "lng": 39.143659834880275 + }, + "year": "2024" + }, + { + "venueId": "5cd1af89fc9e94002c11a278", + "latLng": { + "lat": 21.56549067414184, + "lng": 39.127199424104035 + }, + "year": "2024" + }, + { + "venueId": "4bb4d6092ba29c748058ef2d", + "latLng": { + "lat": 26.15736082703084, + "lng": 50.19403200047284 + }, + "year": "2024" + }, + { + "venueId": "62d1e93879d2286ef50b1441", + "latLng": { + "lat": 21.529916022472893, + "lng": 39.17275501423569 + }, + "year": "2024" + }, + { + "venueId": "4beb2892f90e9c74ae80e3ed", + "latLng": { + "lat": 26.468775167642722, + "lng": 49.7966315401716 + }, + "year": "2024" + }, + { + "venueId": "4fa3525fe4b00c5842be67f4", + "latLng": { + "lat": 26.31252785511911, + "lng": 50.12270455130301 + }, + "year": "2024" + }, + { + "venueId": "57ee6118498e17ca7f076a46", + "latLng": { + "lat": 26.307546478361623, + "lng": 50.17831320237872 + }, + "year": "2024" + }, + { + "venueId": "5643a37c498e98335dd1ba3e", + "latLng": { + "lat": 25.922811054685127, + "lng": 49.65678511124279 + }, + "year": "2024" + }, + { + "venueId": "54f5f4cc498e534b3b4162e9", + "latLng": { + "lat": 26.246167780217, + "lng": 50.580638809953875 + }, + "year": "2024" + }, + { + "venueId": "5e51578f9218000008c4f48e", + "latLng": { + "lat": 21.559245021310065, + "lng": 39.13818197524285 + }, + "year": "2024" + }, + { + "venueId": "5d2b0ceee97aae002d871d29", + "latLng": { + "lat": 26.32649726734732, + "lng": 50.212887670623964 + }, + "year": "2024" + }, + { + "venueId": "5f2c212571da594e2fa0627f", + "latLng": { + "lat": 26.318172799736903, + "lng": 50.194187850750694 + }, + "year": "2024" + }, + { + "venueId": "6141ce6ffa2ebf4ffad0b698", + "latLng": { + "lat": 21.63449067410209, + "lng": 39.10496923994285 + }, + "year": "2024" + }, + { + "venueId": "5140f41fe4b0132fe3483acc", + "latLng": { + "lat": 26.34344397736361, + "lng": 50.15206247260611 + }, + "year": "2024" + }, + { + "venueId": "60bfc3089f215a6ef17b1f1d", + "latLng": { + "lat": 21.648405231117085, + "lng": 39.11218356565236 + }, + "year": "2024" + }, + { + "venueId": "65a68ac833f41f1e44d6f21e", + "latLng": { + "lat": 26.299880653300924, + "lng": 50.219918664660604 + }, + "year": "2024" + }, + { + "venueId": "608b5e1be6930e72bc499a85", + "latLng": { + "lat": 21.611823074566477, + "lng": 39.118390585799 + }, + "year": "2024" + }, + { + "venueId": "5e2d9e1be2a612000847847f", + "latLng": { + "lat": 21.603121221493556, + "lng": 39.14363442845996 + }, + "year": "2024" + }, + { + "venueId": "6502b6290b87054f15153d7c", + "latLng": { + "lat": 24.769164425336058, + "lng": 46.58856221805974 + }, + "year": "2024" + }, + { + "venueId": "51913aca498e2fe60905351d", + "latLng": { + "lat": 26.309668961120185, + "lng": 50.21193727989801 + }, + "year": "2024" + }, + { + "venueId": "4fe2eac2e4b079c77ad78c25", + "latLng": { + "lat": 21.510755901715825, + "lng": 39.15545747655975 + }, + "year": "2024" + }, + { + "venueId": "5d143ef4f989c000231e9f66", + "latLng": { + "lat": 24.089219595003645, + "lng": 45.3352464876308 + }, + "year": "2024" + }, + { + "venueId": "5cfd094a25ecca002cda50c8", + "latLng": { + "lat": 26.222412191902777, + "lng": 50.19950710890553 + }, + "year": "2024" + }, + { + "venueId": "519cce7e498e5412d3afcfac", + "latLng": { + "lat": 26.18734428073315, + "lng": 50.18461628853094 + }, + "year": "2024" + }, + { + "venueId": "6006c78ff1b7397aa42ade5d", + "latLng": { + "lat": 24.8096929654663, + "lng": 46.64599450816099 + }, + "year": "2024" + }, + { + "venueId": "6182b9c6d207fe5a702ac2f3", + "latLng": { + "lat": 24.768521985297333, + "lng": 46.60377466531794 + }, + "year": "2024" + }, + { + "venueId": "661a5adbf938be2eaffcf50d", + "latLng": { + "lat": 26.315267275848974, + "lng": 50.212535721806574 + }, + "year": "2024" + }, + { + "venueId": "5695f17d498e3c0a8d84a57b", + "latLng": { + "lat": 21.52407677773456, + "lng": 39.15260226249819 + }, + "year": "2024" + }, + { + "venueId": "666592afeff7e5158da4847e", + "latLng": { + "lat": 21.59767750362276, + "lng": 39.13061992259325 + }, + "year": "2024" + }, + { + "venueId": "57fa9286498e093d58a31bd1", + "latLng": { + "lat": 24.94256487501024, + "lng": 46.711595204613154 + }, + "year": "2024" + }, + { + "venueId": "518e507d498e8645396985d5", + "latLng": { + "lat": 26.35064152789812, + "lng": 50.18102744853192 + }, + "year": "2024" + }, + { + "venueId": "5af7f0cc9f8a9f002cbb535e", + "latLng": { + "lat": 24.799081999166333, + "lng": 46.63230523169227 + }, + "year": "2024" + }, + { + "venueId": "65f62e89d782057aaa923a07", + "latLng": { + "lat": 21.654284409608223, + "lng": 39.111964961752385 + }, + "year": "2024" + }, + { + "venueId": "5fa277976f4da67a3d18def1", + "latLng": { + "lat": 21.553726890375597, + "lng": 39.143029673257416 + }, + "year": "2024" + }, + { + "venueId": "645a94471e7b2c6aa8f8a109", + "latLng": { + "lat": 24.831467968711795, + "lng": 46.65975899119037 + }, + "year": "2024" + }, + { + "venueId": "65244f066a9b0f46ac7d8389", + "latLng": { + "lat": 26.29867976392203, + "lng": 50.21917429477178 + }, + "year": "2024" + }, + { + "venueId": "53d5aada498efa2a3534852b", + "latLng": { + "lat": 25.458494252042247, + "lng": 49.55552665328442 + }, + "year": "2024" + }, + { + "venueId": "4f5ec606e4b06f48bf145542", + "latLng": { + "lat": 21.62281935775044, + "lng": 39.16577448486189 + }, + "year": "2024" + }, + { + "venueId": "52020433498e88b58c5baa2b", + "latLng": { + "lat": 24.674868761246277, + "lng": 43.69251304570538 + }, + "year": "2024" + }, + { + "venueId": "6463f6661d8b3055a00473dc", + "latLng": { + "lat": 21.655862416216117, + "lng": 39.12115076113356 + }, + "year": "2024" + }, + { + "venueId": "656cbe600b59a970d259daa5", + "latLng": { + "lat": 26.32556064788352, + "lng": 50.18578255981334 + }, + "year": "2024" + }, + { + "venueId": "621f611a60b407522b89cf56", + "latLng": { + "lat": 21.63075386566307, + "lng": 39.111822694057444 + }, + "year": "2024" + }, + { + "venueId": "56683052498eda02711bdb61", + "latLng": { + "lat": 24.94259201798131, + "lng": 46.711510259530954 + }, + "year": "2024" + }, + { + "venueId": "67497bed4541e3396f643d41", + "latLng": { + "lat": 26.3081296306441, + "lng": 50.17803676617201 + }, + "year": "2024" + }, + { + "venueId": "66f9b90a22fd04551339ecdc", + "latLng": { + "lat": 26.31849866814654, + "lng": 50.194026894497696 + }, + "year": "2024" + }, + { + "venueId": "5f380517b8c8015e1a04cd81", + "latLng": { + "lat": 21.572722480898207, + "lng": 39.14868502471471 + }, + "year": "2024" + } + ] + } \ No newline at end of file diff --git a/src/assets/data/quotes.json b/src/assets/data/quotes.json new file mode 100644 index 0000000..4b42962 --- /dev/null +++ b/src/assets/data/quotes.json @@ -0,0 +1,26 @@ +{ + "title": "💡 Quotes", + "description": "I try to Live by and respect", + "data": [ + { + "text": "You cannot arrest an idea, it is bulletproof.", + "author": "Anonymous", + "source": "Unknown" + }, + { + "text": "The Quiter you become, the more you are able to hear", + "author": "Rumi", + "source": "BackTrack OS" + }, + { + "text": "We only see two things in people; what we want to see, and what they want to show us.", + "author": "James Remer", + "source": "as Harry Morgan" + }, + { + "text": "It is not the strongest species that survive, nor the most intelligent, but the ones responsive to change.", + "author": "Charles Darwin", + "source": "" + } + ] + } \ No newline at end of file diff --git a/src/components/Footer/Contact.astro b/src/components/Footer/Contact.astro index d6e3f30..befcb70 100644 --- a/src/components/Footer/Contact.astro +++ b/src/components/Footer/Contact.astro @@ -1,66 +1,132 @@ --- import Title from "../Sections/Title.astro"; import InputField from "./InputField.astro"; +import { Icon } from 'astro-icon'; +import { Image } from '@astrojs/image/components'; +import getIcon from '../../utilities/getIcon'; +import general from '../../assets/data/general.json'; + +// Get favicon for BuFai7an.Live +const bufai7anIcon = await getIcon("https://bufai7an.live"); +const cleanIconPath = bufai7anIcon?.replaceAll('\\','/').replaceAll('public', ''); ---
- <!-- Card --> - <div class=" - flex flex-col - rounded-xl - p-4 sm:p-6 lg:p-8 - bg-slate-100 dark:bg-slate-950 - shadow-sm shadow-slate-700 dark:shadow-slate-900 - "> + <div class="grid lg:grid-cols-2 gap-8"> + <!-- Contact Form Card --> + <div class="bg-white dark:bg-slate-800 rounded-2xl p-6 lg:p-8 shadow-lg transform transition-all hover:shadow-xl"> + <form action="https://formsubmit.co/92de50b71f8ded9d6e8c5862f42e305a" method="post" class="space-y-6"> + <!-- Name Fields --> + <div class="grid grid-cols-1 sm:grid-cols-2 gap-4"> + <InputField name="firstname" label="First Name" placeholder="John" /> + <InputField name="lastname" label="Last Name" placeholder="Doe" /> + </div> - <form action="https://formsubmit.co/92de50b71f8ded9d6e8c5862f42e305a" method="post"> - <div class="grid gap-4 lg:gap-6"> - <!-- Grid --> - <div class="grid grid-cols-1 sm:grid-cols-2 gap-4 lg:gap-6"> - <InputField name="firstname" label="First Name" placeholder="" /> - <InputField name="lastname" label="Last Name" placeholder="" /> - </div> - <!-- End Grid --> + <!-- Contact Fields --> + <div class="grid grid-cols-1 sm:grid-cols-2 gap-4"> + <InputField name="email" label="Email" placeholder="john@example.com" type="email" /> + <InputField name="phone" label="Phone Number" placeholder="+1234567890" type="tel" /> + </div> - <!-- Grid --> - <div class="grid grid-cols-1 sm:grid-cols-2 gap-4 lg:gap-6"> - <InputField name="email" label="Email" placeholder="" type="email" /> - <InputField name="phone" label="Phone Number" placeholder="" type="tel" /> - </div> - <!-- End Grid --> + <!-- Message Field --> + <div class="relative"> + <label for="message" class="block text-sm font-medium text-gray-700 dark:text-white mb-2"> + Message + </label> + <textarea + id="message" + name="message" + rows="4" + class="block w-full px-4 py-3 rounded-lg border border-gray-200 dark:border-gray-600 + text-gray-700 dark:text-gray-300 bg-white dark:bg-slate-900 + focus:border-indigo-500 focus:ring-2 focus:ring-indigo-500 focus:ring-opacity-20 + transition-colors duration-200" + placeholder="Your message here..." + required + ></textarea> + </div> - <div> - <label for="hs-about-contacts-1" class="block text-sm text-gray-700 font-medium dark:text-white mb-1">Details</label> - <textarea id="hs-about-contacts-1" name="hs-about-contacts-1" rows="4" class="py-3 px-4 block w-full border-gray-200 rounded-md text-sm focus:border-blue-500 focus:ring-blue-500 dark:bg-slate-900 dark:border-gray-700 dark:text-gray-400 dark:border"></textarea> - </div> + <!-- Submit Button --> + <div class="flex items-center justify-end"> + <button + type="submit" + class="inline-flex items-center px-6 py-3 border border-transparent + text-base font-medium rounded-lg shadow-sm text-white + bg-indigo-600 hover:bg-indigo-700 dark:bg-indigo-500 dark:hover:bg-indigo-600 + focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 + transition-all duration-200 transform hover:scale-105" + > + Send Message + <Icon name="heroicons-outline:paper-airplane" class="ml-2 -mr-1 h-5 w-5" /> + </button> </div> - <!-- End Grid --> - <div class="mt-6 grid"> - <button type="submit" class=" - inline-flex justify-center items-center - gap-x-3 py-3 px-4 - text-center lg:text-base - text-sm - text-white font-medium - rounded-md - bg-indigo-600 - hover:bg-indigo-700 - focus:outline-none focus:ring-2 focus:ring-indigo-600 focus:ring-offset-2 focus:ring-offset-white - transition - dark:focus:ring-offset-gray-800 - dark:bg-indigo-900 - dark:hover:bg-indigo-800">Send inquiry</button> + <!-- Response Time Note --> + <p class="text-sm text-center text-gray-500 dark:text-gray-400 mt-4"> + I'll try to respond within 2-5 business days + </p> + </form> + </div> + + <!-- Contact Information Card --> + <div class="bg-gradient-to-br from-indigo-600 to-purple-600 dark:from-indigo-800 dark:to-purple-800 + rounded-2xl p-6 lg:p-8 text-white shadow-lg"> + <div class="space-y-6"> + <h3 class="text-2xl font-bold">Quick Connect</h3> + <p class="text-indigo-100"> + Feel free to reach out through any of these channels: + </p> + + <!-- Contact Methods --> + <div class="space-y-4"> + <!-- Email --> + <a href=`mailto:${general.email}` + class="flex items-center space-x-3 group hover:bg-white/10 p-3 rounded-lg transition-all"> + <Icon name="heroicons-outline:mail" class="h-6 w-6" /> + <span class="text-sm group-hover:text-indigo-200 transition-colors">{general.email}</span> + </a> + + <!-- WhatsApp --> + <a href=`https://wa.me/${general.phone}` + class="flex items-center space-x-3 group hover:bg-white/10 p-3 rounded-lg transition-all"> + <Icon name="ri:whatsapp-fill" class="h-6 w-6" /> + <span class="text-sm group-hover:text-indigo-200 transition-colors">WhatsApp Message</span> + </a> + + <!-- Social Links --> + <div class="pt-4 border-t border-white/20"> + <div class="flex flex-wrap gap-2"> + {general.social_links.data.general.map((link: any) => ( + <a href={link.url} + class="p-2 hover:bg-white/10 rounded-lg transition-all flex items-center gap-2" + title={link.title}> + {link.title === "BuFai7an.Live" ? ( + <Image + src={cleanIconPath} + width={20} + height={20} + alt={link.title} + class="h-5 w-5" + /> + ) : ( + <Icon name={`simple-icons:${link.title.toLowerCase()}`} class="h-5 w-5" /> + )} + </a> + ))} + </div> + </div> </div> - <div class="mt-3 text-center"> - <p class="text-sm text-gray-600 dark:text-gray-400">I'll try to get back to you in 2-5 human days.</p> + <!-- Additional Info --> + <div class="mt-8 pt-6 border-t border-white/20"> + <p class="text-sm text-indigo-100"> + Based in <b>Riyadh, Saudi Arabia</b> + </p> </div> - </form> + </div> </div> - <!-- End Card --> + </div> </section> -<!-- End Contact Us --> diff --git a/src/components/Footer/Footer.astro b/src/components/Footer/Footer.astro index 1bfe3fc..6e83034 100644 --- a/src/components/Footer/Footer.astro +++ b/src/components/Footer/Footer.astro @@ -1,6 +1,6 @@ --- import Contact from "./Contact.astro"; -import { general } from '../../assets/data/db.json'; +import general from '../../assets/data/general.json'; import { Icon } from 'astro-icon' diff --git a/src/components/Footer/InputField.astro b/src/components/Footer/InputField.astro index e9a53bc..2c4ffa3 100644 --- a/src/components/Footer/InputField.astro +++ b/src/components/Footer/InputField.astro @@ -8,32 +8,36 @@ export interface Props { disabled?: boolean; readonly?: boolean; autofocus?: boolean; - } -const { name, type = 'text', label, placeholder='', required = true, disabled = false, readonly = false, autofocus = false } = Astro.props; +const { + name, + type = 'text', + label, + placeholder = '', + required = true, + disabled = false, + readonly = false, + autofocus = false +} = Astro.props; --- -<div> - <label for=`hs-${ name }-contact` class="block text-sm text-gray-700 font-medium dark:text-white mb-1">{ label }</label> +<div class="relative"> + <label + for={`field-${name}`} + class="block text-sm font-medium text-gray-700 dark:text-white mb-2" + > + {label} + </label> <input - type={ type } - name=`hs-${ name }-contact` - id=`hs-${ name }-contact` - class=" - py-3 px-4 - block - w-full - border-gray-200 - - rounded-md - text-sm - focus:border focus:border-blue-500 focus:ring-blue-500 - dark:bg-slate-900 dark:border-gray-700 dark:text-gray-400 dark:border" - placeholder={ placeholder } - required={ required } - disabled={ disabled } - readonly={ readonly } - autofocus={ autofocus } + type={type} + name={name} + id={`field-${name}`} + class="w-full px-4 py-3 rounded-lg border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 bg-white dark:bg-slate-900 focus:border-indigo-500 focus:ring-2 focus:ring-indigo-500 focus:ring-opacity-20 placeholder-gray-400 dark:placeholder-gray-500 transition-colors duration-200" + placeholder={placeholder} + required={required} + disabled={disabled} + readonly={readonly} + autofocus={autofocus} /> </div> \ No newline at end of file diff --git a/src/components/Header/Header.astro b/src/components/Header/Header.astro index 04b1220..69e6e8d 100644 --- a/src/components/Header/Header.astro +++ b/src/components/Header/Header.astro @@ -1,11 +1,11 @@ --- import mfo_picture from '../../assets/images/mfo_picture.jpg'; import { Image } from '@astrojs/image/components'; -import { general } from '../../assets/data/db.json'; +import general from '../../assets/data/general.json'; import Tags from './Tags.astro'; --- -<header class="mb-10 +<header class="mb-10 text-center overflow-hidden before:absolute before:top-0 before:left-1/2 before:bg-[url('/assets/images/polygon.svg')] @@ -14,8 +14,8 @@ import Tags from './Tags.astro'; dark:before:bg-[url('/assets/images/polygon-dark.svg')] "> - <div class="flex flex-col items-start justify-center text-center md:justify-start md:text-start md:align-bottom mb-10 md:flex-row"> - <Image class="rounded w-24 h-24 me-3" src={mfo_picture} alt="Mohannad Otaibi Picture" format="webp" /> + <div class="flex flex-col items-center justify-center text-center mb-10"> + <Image class="rounded w-24 h-24 mb-4" src={mfo_picture} alt="Mohannad Otaibi Picture" format="webp" /> <div class="title"> <h1 class="text-4xl md:text-5xl font-extrabold m-0 mb-2">{general.title}</h1> <p class="text-slate-500 dark:text-slate-400">{general.description}</p> @@ -25,11 +25,5 @@ import Tags from './Tags.astro'; <Tags tags={general.social_links.data} /> - - <div class="lead mt-10"> - <p class="text-lg font-normal text-gray-500 lg:text-xl dark:text-gray-400"> - Welcome to my <b>simple</b> <b>humble</b> website..<br /> - Here, you may get to know me a little bit better by knowing the <code class="text-base">things</code> I use, languages I speak, things I do or enjoy.. - </p> - </div> + </header> \ No newline at end of file diff --git a/src/components/Header/Tag.astro b/src/components/Header/Tag.astro index d9c1622..6d9468d 100644 --- a/src/components/Header/Tag.astro +++ b/src/components/Header/Tag.astro @@ -25,11 +25,10 @@ imagePath = imagePath?.replaceAll('\\','/').replaceAll('public', ''); hover:scale-110 transition-all text-xs font-normal lg:text-sm lg:font-medium - + border border-gray-200 dark:border-gray-600 inline-flex items-center px-2.5 py-0.5 - rounded group"> <div class="inline-flex items-center"> diff --git a/src/components/Header/Tags.astro b/src/components/Header/Tags.astro index 33e6e37..04868f0 100644 --- a/src/components/Header/Tags.astro +++ b/src/components/Header/Tags.astro @@ -1,7 +1,7 @@ --- import Tag from './Tag.astro'; import CvButton from './Button.astro'; -import { general } from '../../assets/data/db.json'; +import general from '../../assets/data/general.json'; export interface Props { tags: any; } @@ -9,14 +9,14 @@ export interface Props { const { tags } = Astro.props; --- -<div class="badges text-center lg:text-start"> - <div class="general"> +<div class="badges flex flex-col items-center justify-center"> + <div class="general flex flex-wrap justify-center"> { tags.general.map((link: any) => ( <Tag url={link.url} title={link.title} /> )) } </div> - <div class="technical"> + <div class="technical flex flex-wrap justify-center"> { tags.technical.map((link: any) => ( <Tag url={link.url} title={link.title} /> )) } diff --git a/src/components/Quote.astro b/src/components/Quote.astro index c240017..1e90706 100644 --- a/src/components/Quote.astro +++ b/src/components/Quote.astro @@ -9,27 +9,33 @@ const { text, author, source } = Astro.props; --- -<blockquote class=" -relative w-11/12 mb-10 hover:scale-110 transition-all mx-auto py-4 last:border-0 border-b border-dashed border-spacing-3 border-zinc-500"> - <svg class="absolute top-0 left-0 transform -translate-x-6 -translate-y-3 h-16 w-16 text-gray-100 dark:text-gray-700" width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"> - <path d="M7.39762 10.3C7.39762 11.0733 7.14888 11.7 6.6514 12.18C6.15392 12.6333 5.52552 12.86 4.76621 12.86C3.84979 12.86 3.09047 12.5533 2.48825 11.94C1.91222 11.3266 1.62421 10.4467 1.62421 9.29999C1.62421 8.07332 1.96459 6.87332 2.64535 5.69999C3.35231 4.49999 4.33418 3.55332 5.59098 2.85999L6.4943 4.25999C5.81354 4.73999 5.26369 5.27332 4.84476 5.85999C4.45201 6.44666 4.19017 7.12666 4.05926 7.89999C4.29491 7.79332 4.56983 7.73999 4.88403 7.73999C5.61716 7.73999 6.21938 7.97999 6.69067 8.45999C7.16197 8.93999 7.39762 9.55333 7.39762 10.3ZM14.6242 10.3C14.6242 11.0733 14.3755 11.7 13.878 12.18C13.3805 12.6333 12.7521 12.86 11.9928 12.86C11.0764 12.86 10.3171 12.5533 9.71484 11.94C9.13881 11.3266 8.85079 10.4467 8.85079 9.29999C8.85079 8.07332 9.19117 6.87332 9.87194 5.69999C10.5789 4.49999 11.5608 3.55332 12.8176 2.85999L13.7209 4.25999C13.0401 4.73999 12.4903 5.27332 12.0713 5.85999C11.6786 6.44666 11.4168 7.12666 11.2858 7.89999C11.5215 7.79332 11.7964 7.73999 12.1106 7.73999C12.8437 7.73999 13.446 7.97999 13.9173 8.45999C14.3886 8.93999 14.6242 9.55333 14.6242 10.3Z" fill="currentColor"/> - </svg> - - <div class="relative z-10"> - <p class="text-gray-800 sm:text-xl dark:text-white"><em> - {text} - </em></p> - </div> - - <footer class="mt-6"> - <div class="flex items-center justify-end lg:justify-start"> - <div class="flex-shrink-0"> - </div> - <div class="lg:ms-4"> - <div class="text-base font-semibold text-gray-800 dark:text-gray-400">{author}</div> - <div class="text-xs text-gray-500 dark:text-gray-400">{source}</div> +<div class="group relative p-6 bg-white dark:bg-gray-800 rounded-xl shadow-sm hover:shadow-md transition-all duration-300 ease-in-out transform hover:-translate-y-1"> + <!-- Decorative quote mark --> + <div class="absolute top-4 left-4 text-gray-200 dark:text-gray-700 opacity-50 text-4xl font-serif">"</div> + + <!-- Quote text --> + <div class="relative"> + <p class="text-gray-700 dark:text-gray-300 text-lg leading-relaxed mb-4 pl-6"> + {text} + </p> + + <!-- Author and source --> + <div class="flex items-center justify-end mt-4 space-x-2"> + <div class="text-right"> + <div class="font-medium text-gray-900 dark:text-gray-100 text-sm"> + {author} + </div> + {source && ( + <div class="text-gray-500 dark:text-gray-400 text-xs"> + {source} + </div> + )} + </div> </div> - </div> - </footer> - </blockquote> + </div> + + <!-- Decorative elements --> + <div class="absolute inset-0 border border-gray-100 dark:border-gray-700 rounded-xl pointer-events-none"></div> + <div class="absolute inset-0 bg-gradient-to-br from-transparent to-gray-50 dark:to-gray-800/50 opacity-0 group-hover:opacity-100 transition-opacity duration-300 rounded-xl pointer-events-none"></div> +</div> \ No newline at end of file diff --git a/src/components/Sections/GeneralSection.astro b/src/components/Sections/GeneralSection.astro index ae618d4..4b40e91 100644 --- a/src/components/Sections/GeneralSection.astro +++ b/src/components/Sections/GeneralSection.astro @@ -36,7 +36,7 @@ const mdGridSizes: any = { 10: 'md:grid-cols-10', } -console.log(content.title, xlColSize, colSize) +console.log(`${content.title.padEnd(25)} ${xlColSize.toString().padEnd(5)} ${colSize}`); --- <section class="my-20"> diff --git a/src/components/Sections/Link.astro b/src/components/Sections/Link.astro index 792f674..8eea5b7 100644 --- a/src/components/Sections/Link.astro +++ b/src/components/Sections/Link.astro @@ -18,7 +18,7 @@ const direction = arabic ? 'rtl' : 'ltr'; --- <a href={url} class=" -bg-slate-500 bg-opacity-10 +bg-slate-500 bg-opacity-10 border-slate-200 border-opacity-10 border hover:bg-purple-400 hover:bg-opacity-10 dark:bg-white dark:bg-opacity-5 dark:hover:bg-opacity-10 rounded-md @@ -35,5 +35,8 @@ hover:bg-purple-400 hover:bg-opacity-10 alt={title} /> <h3 dir={direction} class="font-normal text text-slate-700 dark:text-slate-300">{title}</h3> + {Astro.props.description && ( + <span class="ms-2 text-sm text-slate-500 dark:text-slate-400">{Astro.props.description}</span> + )} </div> </a> \ No newline at end of file diff --git a/src/components/Sections/MapSection.astro b/src/components/Sections/MapSection.astro index 092940b..25de879 100644 --- a/src/components/Sections/MapSection.astro +++ b/src/components/Sections/MapSection.astro @@ -10,11 +10,130 @@ const stringified = JSON.stringify(content.data); --- <section class="my-20"> - <Title title={content.title} description={content.description} /> + <div class="max-w-7xl mx-auto"> + <Title title={content.title} description={content.description} /> + </div> + - <div class='rounded-md overflow-hidden'> - <input type="hidden" data-message={stringified} /> - <div id="map" class="w-full h-80"></div> + <div class='overflow-hidden'> + <input type="hidden" id="map-data" data-message={stringified} /> + <div id="map" class="w-full h-[50vh]"></div> </div> </section> -<script src="../../utilities/googleMaps.ts"></script> \ No newline at end of file + +<!-- Add Leaflet CSS --> +<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" + integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" + crossorigin=""/> + +<!-- Add Leaflet JavaScript --> +<script is:inline src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js" + integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo=" + crossorigin=""></script> + +<script> + declare const L: any; + // Get the map data + const mapData = document.getElementById('map-data'); + if (!mapData) throw new Error('Map data element not found'); + const message = mapData.dataset.message; + if (!message) throw new Error('Map data message not found'); + const locations = JSON.parse(message); + + // Initialize the map + const map = L.map('map', { + zoomControl: false, + center: [25, 45], + zoom: 15, + minZoom: 2, + maxZoom: 18, + worldCopyJump: true, + fadeAnimation: true, + markerZoomAnimation: true, + inertia: true, + inertiaDeceleration: 3000, + scrollWheelZoom: false + }).setView([25, 45], 3); + + // Add custom zoom control + L.control.zoom({ + position: 'topleft', + + }).addTo(map); + + + + // Add Mapbox tiles with Swarm's style + L.tileLayer('https://api.mapbox.com/styles/v1/foursquare/ck7qbe9t20y6v1iqkyeolw8hk/tiles/{z}/{x}/{y}?access_token=pk.eyJ1IjoiZm91cnNxdWFyZSIsImEiOiJjRGRqOVZZIn0.rMLhJeqI_4VnU2YdIJvD3Q', { + attribution: '© Mapbox © OpenStreetMap', + maxZoom: 18, + minZoom: 2, + opacity: 1, + detectRetina: true, + '2x': true + }).addTo(map); + + // Custom marker icon (orange dot like Swarm) + const customIcon = L.divIcon({ + className: 'custom-map-marker', + html: '<div></div>', + iconSize: new L.Point(8,8), + iconAnchor: new L.Point(4,4) + }); + + // Add markers for each location + locations.forEach((location: { venueId: string; latLng: { lat: number; lng: number } }) => { + const marker = L.marker([location.latLng.lat, location.latLng.lng], { + icon: customIcon + }).addTo(map); + + // Add click handler to open Foursquare venue page + if (!location.venueId.startsWith('no_venue_id')) { + marker.on('click', () => { + window.open(`https://foursquare.com/v/${location.venueId}`, '_blank'); + }); + } + }); + + // Fit bounds to show all markers + if (locations.length > 0) { + const bounds = L.latLngBounds( + locations.map( + (loc: { + latLng: { + lat: number; + lng: number + } + }) => [loc.latLng.lat, loc.latLng.lng])); + map.fitBounds(bounds, { padding: [0, 0] }); + } +</script> + +<style is:inline> + .custom-map-marker { + background: transparent; + } + .custom-map-marker div { + width: 8px; + height: 8px; + background: #fc8c14 ; + border-radius: 50%; + opacity: 1; + } + + .leaflet-popup-content-wrapper { + border-radius: 4px; + padding: 8px 12px; + font-size: 14px; + box-shadow: 0 2px 4px rgba(0,0,0,0.2); + } + + .leaflet-control-zoom a { + width: 24px !important; + height: 24px !important; + line-height: 24px !important; + font-size: 16px !important; + } + + +</style> \ No newline at end of file diff --git a/src/components/Sections/QuotesSection.astro b/src/components/Sections/QuotesSection.astro index 10952ed..3210b4a 100644 --- a/src/components/Sections/QuotesSection.astro +++ b/src/components/Sections/QuotesSection.astro @@ -1,20 +1,24 @@ --- import Quote from '../Quote.astro'; import Title from './Title.astro'; + export interface Props { content: any; xlColSize?: number; colSize?: number; } -const { content, xlColSize=1, colSize=1 } = Astro.props; -console.log(content.title, xlColSize, colSize) + +const { content, xlColSize=2, colSize=1 } = Astro.props; --- -<section class="my-20"> +<section class="my-12"> <Title title={content.title} description={content.description} /> - <div class=`grid grid-cols-${colSize} md:grid-cols-${xlColSize} gap-2 md:gap-4`> - {content.data.map((item: any) => ( - <Quote text={item.text} author={item.author} source={item.source} /> - ))} + <div class="container mx-auto px-4"> + <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 mt-8"> + {content.data.map((item: any) => ( + <Quote text={item.text} author={item.author} source={item.source} /> + ))} + </div> + </div> </section> \ No newline at end of file diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index f4147c3..9aa98fd 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -116,7 +116,8 @@ const { title, description } = Astro.props; <slot /> </div> - </body><style is:global> + </body> + <style is:global> code { @apply font-normal; @apply bg-indigo-700 bg-opacity-40 text-indigo-700 dark:text-indigo-100; diff --git a/src/pages/index.astro b/src/pages/index.astro index 1d3cca4..d8b011e 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -1,10 +1,19 @@ --- import Layout from '../layouts/Layout.astro'; -import Card from '../components/Common/Card.astro'; import Header from '../components/Header/Header.astro'; import Footer from '../components/Footer/Footer.astro'; import Section from '../components/Sections/GeneralSection.astro'; -import { general, linked_sections, quotes, locations } from '../assets/data/db.json'; +import operating_systems from '../assets/data/linked/operating_systems.json'; +import organizations from '../assets/data/linked/organizations.json'; +import languages from '../assets/data/linked/languages.json'; +import achievements from '../assets/data/linked/achievements.json'; +import bookmarks from '../assets/data/linked/bookmarks.json'; +import applications from '../assets/data/linked/applications.json'; +import standards from '../assets/data/linked/standards.json'; +import games from '../assets/data/linked/games.json'; +import general from '../assets/data/general.json'; +import quotes from '../assets/data/quotes.json'; +import locations from '../assets/data/locations.json'; import QuotesSection from '../components/Sections/QuotesSection.astro'; import MapSection from '../components/Sections/MapSection.astro'; @@ -12,20 +21,25 @@ import MapSection from '../components/Sections/MapSection.astro'; --- <Layout title={general.title} description={general.description}> - <main class="m-auto px-6 max-w-5xl"> + <main class=""> + <div class="max-w-7xl mx-auto"> <Header /> - <Section content={linked_sections.applications} /> - <Section content={linked_sections.operating_systems} /> - <Section content={linked_sections.languages} /> - <Section content={linked_sections.achievements} colSize={1} xlColSize={1} /> - <Section content={linked_sections.standards} /> - <Section content={linked_sections.organizations} /> - <Section content={linked_sections.bookmarks} colSize={1} xlColSize={2} /> - <Section content={linked_sections.games} colSize={1} xlColSize={2} /> - + <Section content={applications} /> + <Section content={operating_systems} colSize={1} xlColSize={2} /> + <Section content={languages} /> + <Section content={achievements} colSize={1} xlColSize={1} /> + <Section content={standards} /> + <Section content={organizations} /> + <Section content={bookmarks} colSize={1} xlColSize={3} /> + <Section content={games} colSize={1} xlColSize={2} /> <QuotesSection content={quotes} /> + </div> + + + <MapSection content={locations} /> - + <div class="max-w-7xl mx-auto"> <Footer /> + </div> </main> </Layout> diff --git a/src/utilities/getIcon.ts b/src/utilities/getIcon.ts index b36c87d..05272af 100644 --- a/src/utilities/getIcon.ts +++ b/src/utilities/getIcon.ts @@ -6,89 +6,173 @@ import path from "path"; import icojs from 'icojs'; import sharp from 'sharp'; +// Configuration +const CONFIG = { + ICON_SIZE: 64, + CACHE_DIR: "public/assets/images/icons", + DUMMY_ICON: "public/assets/images/icons/generic.png", + MAX_RETRIES: 3, + RETRY_DELAY: 1000, + PARALLEL_LIMIT: 3 +}; -const favIconGrabberUrls = [ - "https://www.google.com/s2/favicons?sz=64&domain_url=", - "https://api.faviconkit.com/", - "https://favicongrabber.com/api/grab/", - "https://www.google.com/s2/u/0/favicons?domain=", - "https://favicon.mohannad-otaibi.workers.dev/convert?format=png&url=", +// Favicon sources with placeholders for domain +const FAVICON_SOURCES = [ + { + url: "https://www.google.com/s2/favicons?sz=64&domain_url=", + appendDomain: true, + appendProtocol: true + }, + { + url: "https://api.faviconkit.com/", + appendDomain: true, + appendProtocol: false + }, + { + url: "https://favicongrabber.com/api/grab/", + appendDomain: true, + appendProtocol: false + }, + { + url: "https://favicon.mohannad-otaibi.workers.dev/convert?format=png&url=", + appendDomain: true, + appendProtocol: true + } ]; +// Axios instance with configuration const axiosInstance = axios.create({ maxRedirects: 35, + timeout: 5000, httpsAgent: new https.Agent({ rejectUnauthorized: false, }), }); -async function copyDummy(domain: string) { - const urlObject = new URL(domain); - const dummy = "public/assets/images/icons/generic.png"; - const targetDirectory = "public/assets/images/icons"; - const iconPath = path.join(targetDirectory, `${urlObject.hostname}.png`); - - await fsPromisified.copyFile(dummy, iconPath); - return iconPath; +// URL validation +function isValidUrl(url: string): boolean { + try { + new URL(url); + return true; + } catch { + return false; + } } -async function downloadIcon(iconUrl: string, iconPath: string) { - const response = await axiosInstance.get(iconUrl, { responseType: "arraybuffer" }); - const buffer = Buffer.from(response.data); - - // check if the file is ico file by checking the stream or buffer content, if yes, convert to png - const isIco = await icojs.isICO(buffer); - console.log("isIco", isIco); - if (isIco) { - - console.log("Converting ico to png"); - const frames = await icojs.parse(buffer); - const firstFrame = frames[0]; - - const pngBuffer = await sharp(firstFrame.buffer).png().toBuffer(); +// Delay utility for retry mechanism +const delay = (ms: number) => new Promise(resolve => setTimeout(resolve, ms)); - // Save the PNG buffer as a file - await sharp(pngBuffer).toFile(iconPath); - - } - else{ - await fsPromisified.writeFile(iconPath, buffer); +// Retry mechanism with exponential backoff +async function withRetry<T>( + fn: () => Promise<T>, + retries = CONFIG.MAX_RETRIES, + initialDelay = CONFIG.RETRY_DELAY +): Promise<T> { + try { + return await fn(); + } catch (error) { + if (retries === 0) throw error; + await delay(initialDelay); + return withRetry(fn, retries - 1, initialDelay * 2); } - } -async function getIcon(url: string) { - if (url === "#") { - return "public/assets/images/icons/generic.png"; - } +// Image processing utilities +async function normalizeImage(buffer: Buffer, iconPath: string): Promise<void> { + await sharp(buffer) + .resize(CONFIG.ICON_SIZE, CONFIG.ICON_SIZE, { + fit: 'contain', + background: { r: 0, g: 0, b: 0, alpha: 0 } + }) + .png() + .toFile(iconPath); +} - const targetDirectory = "public/assets/images/icons"; - const urlObject = new URL(url); - const { origin, hostname } = urlObject; - const iconPath = path.join(targetDirectory, `${hostname}.png`); +async function processIcoFile(buffer: Buffer): Promise<Buffer> { + const frames = await icojs.parse(buffer); + const bestFrame = frames.reduce((prev, curr) => + (curr.width > prev.width) ? curr : prev + ); + return await sharp(bestFrame.buffer).png().toBuffer(); +} - if (fs.existsSync(iconPath)) { - return iconPath; +// Download and process icon +async function downloadIcon(iconUrl: string, iconPath: string): Promise<void> { + const response = await withRetry(() => + axiosInstance.get(iconUrl, { responseType: "arraybuffer" }) + ); + + const buffer = Buffer.from(response.data); + + try { + if (await icojs.isICO(buffer)) { + const pngBuffer = await processIcoFile(buffer); + await normalizeImage(pngBuffer, iconPath); + } else { + await normalizeImage(buffer, iconPath); } + } catch (error) { + console.error("Error processing image:", error); + throw error; + } +} - try { - const iconUrl = `${favIconGrabberUrls[0]}${origin}`; - await downloadIcon(iconUrl, iconPath); - return iconPath; - } - catch (error: any) { - console.error("Error downloading icon:", iconPath, error.code, error.message); - try { - const iconUrl = `${origin}/favicon.ico`; - await downloadIcon(iconUrl, iconPath); - return iconPath; - } - catch (error: any) { - console.error("Error downloading fallback icon:", iconPath, error.code, error.message); - return copyDummy(url); - } +// Try to fetch icon from multiple sources in parallel +async function tryFetchIcon(url: string, iconPath: string): Promise<string> { + const urlObject = new URL(url); + const sources = FAVICON_SOURCES.map(source => { + const domain = source.appendProtocol ? urlObject.origin : urlObject.hostname; + return source.url + domain; + }); + // Add website's own favicon.ico + sources.push(`${urlObject.origin}/favicon.ico`); + + // Try sources in parallel with a limit + for (let i = 0; i < sources.length; i += CONFIG.PARALLEL_LIMIT) { + const batch = sources.slice(i, i + CONFIG.PARALLEL_LIMIT); + const promises = batch.map(source => + downloadIcon(source, iconPath) + .then(() => true) + .catch(() => false) + ); + + const results = await Promise.all(promises); + if (results.some(result => result)) { + return iconPath; } + } + + throw new Error("No favicon found from any source"); +} + +// Main getIcon function +async function getIcon(url: string): Promise<string> { + // Handle special cases + if (url === "#" || !isValidUrl(url)) { + return CONFIG.DUMMY_ICON; + } + + const urlObject = new URL(url); + const iconPath = path.join(CONFIG.CACHE_DIR, `${urlObject.hostname}.png`); + + // Return cached icon if exists + if (fs.existsSync(iconPath)) { + return iconPath; + } + + try { + // Ensure cache directory exists + await fsPromisified.mkdir(CONFIG.CACHE_DIR, { recursive: true }); + + // Try to fetch and process icon + return await tryFetchIcon(url, iconPath); + } catch (error) { + console.error("Failed to fetch icon for:", url, error); + // Copy dummy icon as fallback + await fsPromisified.copyFile(CONFIG.DUMMY_ICON, iconPath); + return iconPath; + } } export default getIcon;