[{"data":1,"prerenderedAt":5426},["Reactive",2],{"navigation":3,"aAII9Cz3yR":204,"tags-AngleSharp":397},[4,192,200],{"title":5,"_path":6,"children":7,"icon":191},"Blog","/posts",[8,11,14,17,20,23,26,29,32,35,38,41,44,47,50,53,56,59,62,65,68,71,74,77,80,83,86,89,92,95,98,101,104,107,110,113,116,119,122,125,128,131,134,137,140,143,146,149,152,155,158,161,164,167,170,173,176,179,182,185,188],{"title":9,"_path":10},"Testing your API with REST Client","/posts/testing-your-api-with-rest-client",{"title":12,"_path":13},"HTML templating in Xamarin","/posts/html-templating-in-xamarin",{"title":15,"_path":16},"Goodbye Azure Portal, Welcome Azure CLI","/posts/welcome-azure-cli",{"title":18,"_path":19},"Coming across Gitpod","/posts/gitpod",{"title":21,"_path":22},"Handle token retrieval while querying an API","/posts/delegating-handler",{"title":24,"_path":25},"Clean up your local git branches.","/posts/cleaning-git-branches",{"title":27,"_path":28},"Automate configuration of Teams Tab SSO with PowerShell.","/posts/teams-sso-powershell",{"title":30,"_path":31},"How to do a technology watch? - Part 1","/posts/technology-watch-part1",{"title":33,"_path":34},"How to do a technology watch? - Part 2","/posts/technology-watch-part2",{"title":36,"_path":37},"You almost no longer need Key Vault references for Azure Functions.","/posts/azure-functions-custom-configuration",{"title":39,"_path":40},"How to do a technology watch? - Part 3","/posts/technology-watch-part3",{"title":42,"_path":43},"Forget DevOps, the future is already here!","/posts/devops-future",{"title":45,"_path":46},"Week 9, 2021 - Tips I learned this week","/posts/w09-2021-tips-learned-this-week",{"title":48,"_path":49},"Week 12, 2021 - Tips I learned this week","/posts/w12-2021-tips-learned-this-week",{"title":51,"_path":52},"Week 14, 2021 - Tips I learned this week","/posts/w14-2021-tips-learned-this-week",{"title":54,"_path":55},"Once upon a time in .NET","/posts/once-upon-a-time-in-dotnet",{"title":57,"_path":58},"Install your applications with winget","/posts/winget-import",{"title":60,"_path":61},"Customize your applications when installing them with winget","/posts/winget-override",{"title":63,"_path":64},"Week 22, 2021 - Tips I learned this week","/posts/w22-2021-tips-learned-this-week",{"title":66,"_path":67},"How to connect to an Azure SQL Database from C# using Azure AD","/posts/sqlclient-active-directory-authent",{"title":69,"_path":70},"Producing packages for Windows Package Manager","/posts/wingetcreate",{"title":72,"_path":73},"4 tips about GitHub Actions environment variables and contexts","/posts/github-actions-var-and-context",{"title":75,"_path":76},"AzureWebJobsStorage, the secret you don't need in your Function App.","/posts/azure-functions-without-azurewebjobsstorage",{"title":78,"_path":79},"ASP.NET Core - Lost in configuration","/posts/lost-in-configuration",{"title":81,"_path":82},"Week 39, 2021 - Tips I learned this week","/posts/w39-2021-tips-learned-this-week",{"title":84,"_path":85},"Week 41, 2021 - Tips I learned this week","/posts/w41-2021-tips-learned-this-week",{"title":87,"_path":88},"Migrating and open-sourcing my blog","/posts/migrating-blog",{"title":90,"_path":91},"Week 45, 2021 - Tips I learned this week","/posts/w45-2021-tips-learned-this-week",{"title":93,"_path":94},"Organize your GitHub stars with Astral","/posts/astral",{"title":96,"_path":97},"Pulumi with an Azure Blob Storage backend","/posts/pulumi-azure-backend",{"title":99,"_path":100},"IaC Hot Reload with Pulumi Watch","/posts/pulumi-watch",{"title":102,"_path":103},"Week 2, 2022 - Tips I learned this week","/posts/w02-2022-tips-learned-this-week",{"title":105,"_path":106},"Week 3, 2022 - Tips I learned this week","/posts/w03-2022-tips-learned-this-week",{"title":108,"_path":109},"Week 5, 2022 - Tips I learned this week","/posts/w05-2022-tips-learned-this-week",{"title":111,"_path":112},"How to provision an Azure SQL Database with Active Directory authentication","/posts/sqldatabase-active-directory-authent",{"title":114,"_path":115},"Why will I choose Pulumi over Terraform for my next project?","/posts/pulumi-vs-terraform",{"title":117,"_path":118},"Week 19, 2022 - Tips I learned this week","/posts/w19-2022-tips-learned-this-week",{"title":120,"_path":121},"Week 20, 2022 - Tips I learned this week","/posts/w20-2022-tips-learned-this-week",{"title":123,"_path":124},"Keeping secrets secure when using API Clients","/posts/http-clients-secrets",{"title":126,"_path":127},"What made me want to be a developer?","/posts/be-a-developer",{"title":129,"_path":130},"What can we do when stuck with a programming problem?","/posts/get-unstuck",{"title":132,"_path":133},"How did I automate the setup of my developer Windows laptop?","/posts/automate-developer-machine",{"title":135,"_path":136},"Discussion about API clients","/posts/http-clients",{"title":138,"_path":139},"Week 46, 2022 - Tips I learned this week","/posts/w46-2022-tips-learned-this-week",{"title":141,"_path":142},"When Pulumi met Nuke: a .NET love story","/posts/when-pulumi-met-nuke",{"title":144,"_path":145},"A year of learning and sharing - Dev Retro 2022","/posts/2022-retro",{"title":147,"_path":148},"Perform Dynamic Execution of an npm Package","/posts/pnpm-dlx",{"title":150,"_path":151},"Manage multiple Node.js versions","/posts/pnpm-env",{"title":153,"_path":154},"Introducing the Vue.js CI/CD series","/posts/vuecicd-introduction",{"title":156,"_path":157},"Execute commands using your project dependencies","/posts/pnpm-exec",{"title":159,"_path":160},"Vue.js CI/CD: Continuous Integration","/posts/vuecicd-ci",{"title":162,"_path":163},"Who is using pnpm?","/posts/pnpm-who-is-using",{"title":165,"_path":166},"Create an Azure-Ready GitHub Repository using Pulumi","/posts/azure-ready-github-repository",{"title":168,"_path":169},"Deploying to Azure from Azure DevOps without secrets","/posts/ado-workload-identity-federation",{"title":171,"_path":172},"Effortlessly Configure GitHub Repositories for Azure Deployment via OIDC","/posts/scripting-azure-ready-github-repository",{"title":174,"_path":175},"Playing with the .NET 8 Web API template","/posts/playing-with-dotnet8",{"title":177,"_path":178},"Another year of sharing and learning - Dev Retro 2023","/posts/2023-retro",{"title":180,"_path":181},"Week 4, 2024 - Tips I learned this week","/posts/w04-2024-tips-learned-this-week",{"title":183,"_path":184},"Using dependency injection with Azure .NET SDK","/posts/azure-sdk-di",{"title":186,"_path":187},"Having Fun With IT Event Calendars","/posts/it-event-calendars",{"title":189,"_path":190},"Call your Azure AD B2C protected API with authenticated HTTP requests from your JetBrains IDE","/posts/http-clients-oauth2","i-heroicons-newspaper",{"title":193,"_path":194,"children":195,"icon":199},"Goodies","/goodies",[196],{"title":197,"_path":198},"My Git Cheat Sheet","/goodies/gitcheatsheet","i-heroicons-gift-solid",{"title":201,"_path":202,"icon":203},"About","/about","i-heroicons-user-circle-solid",[205,207,209,211,214,217,220,223,226,229,231,234,237,240,242,244,247,250,253,255,258,261,264,267,270,273,276,279,282,285,287,289,292,294,297,300,303,305,308,310,313,316,319,322,325,327,329,332,335,338,341,344,347,350,353,356,359,361,363,366,369,372,375,377,380,383,385,388,391,394],[206,206],"tooling",[208,208],"vscode",[210,210],"rest",[212,213],"http","HTTP",[215,216],"razor","Razor",[218,219],"xamarin","Xamarin",[221,222],"templating","Templating",[224,225],"azure-cli","Azure CLI",[227,228],"azure","Azure",[230,230],"shell",[232,233],"github","GitHub",[235,236],"asp-net-core","ASP.NET Core",[238,239],"net",".NET",[241,241],"git",[243,243],"nushell",[245,246],"microsoft-teams","Microsoft Teams",[248,249],"powershell","PowerShell",[251,252],"azure-active-directory","Azure Active Directory",[254,254],"learning",[256,257],"azure-functions","Azure Functions",[259,260],"azure-key-vault","Azure Key Vault",[262,263],"configuration","Configuration",[265,266],"devops","DevOps",[268,269],"it","IT",[271,272],"tips-learned-this-week","tips learned this week",[274,275],"windows-terminal","Windows Terminal",[277,278],"azure-pipelines","Azure Pipelines",[280,281],"application-insights","Application Insights",[283,284],"azure-iot","Azure IoT",[286,286],"records",[288,288],"refit",[290,291],"development-box-setup","development box setup",[293,293],"winget",[295,296],"package-manager","package manager",[298,299],"azure-sql-database","Azure SQL Database",[301,302],"azure-sdk","Azure SDK",[304,304],"wingetcreate",[306,307],"github-actions","GitHub Actions",[309,309],"jq",[311,312],"pulumi","Pulumi",[314,315],"iac","IaC",[317,318],"azure-storage","Azure Storage",[320,321],"azure-signalr","Azure SignalR",[323,324],"visio","Visio",[326,326],"csharp",[328,328],"jest",[330,331],"statiq","Statiq",[333,334],"open-source","open source",[336,337],"visual-studio","Visual Studio",[339,340],"vue-js","Vue.js",[342,343],"azure-devops","Azure DevOps",[345,346],"vite","Vite",[348,349],"code-analysis","Code analysis",[351,352],"diagram","Diagram",[354,355],"terraform","Terraform",[357,358],"typescript","TypeScript",[360,360],"thoughts",[362,362],"pnpm",[364,365],"nuke","Nuke",[367,368],"pipelines","Pipelines",[370,371],"cicd","CI/CD",[373,374],"openid-connect","OpenID Connect",[376,376],"security",[378,379],"github-cli","GitHub CLI",[381,382],"microsoft-entra-id","Microsoft Entra ID",[384,384],"advent",[386,387],"finops","FinOps",[389,390],"anglesharp","AngleSharp",[392,393],"oauth2","OAuth2",[395,396],"azure-ad-b2c","Azure AD B2C",[398],{"_path":187,"_dir":399,"_draft":400,"_partial":400,"_locale":401,"title":186,"description":402,"lead":403,"date":404,"image":405,"badge":407,"tags":409,"ImageAttribution":410,"body":411,"_type":5421,"_id":5422,"_source":5423,"_file":5424,"_extension":5425},"posts",false,"","In this post, we will discuss how to write a small .NET program that retrieves events from an IT event calendar and submits them to another one using AngleSharp.","Playing with AngleSharp","2024-03-04T00:00:00.000Z",{"src":406},"/images/calendar_1.webp",{"label":408},"Development",[239,390],"Picture of \u003Ca href=\"https://unsplash.com/fr/@towfiqu999999\">Towfiqu barbhuiya on \u003Ca href=\"https://unsplash.com/fr/photos/un-calendrier-avec-des-boutons-poussoirs-rouges-epingles-bwOAixLG0uc\">Unsplash\u003C/a>",{"type":412,"children":413,"toc":5411},"root",[414,421,428,453,467,472,478,509,523,529,543,548,697,733,919,925,930,941,946,1177,1187,1207,1802,1807,1963,1969,1974,1987,2450,2466,2472,2485,2800,2815,2821,2834,5345,5350,5356,5361,5370,5375,5395,5400,5405],{"type":415,"tag":416,"props":417,"children":418},"element","p",{},[419],{"type":420,"value":402},"text",{"type":415,"tag":422,"props":423,"children":425},"h2",{"id":424},"some-context",[426],{"type":420,"value":427},"Some context",{"type":415,"tag":416,"props":429,"children":430},{},[431,433,442,444,451],{"type":420,"value":432},"There are plenty of websites that list IT events in the world. One that is particularly popular is the ",{"type":415,"tag":434,"props":435,"children":439},"a",{"href":436,"rel":437},"https://github.com/scraly/developers-conferences-agenda",[438],"nofollow",[440],{"type":420,"value":441},"developers conferences agenda",{"type":420,"value":443}," Github repository that was created by Aurélie Vache, a well-known French DevRel. This repository is an excellent resource where numerous tech conferences and CFPs (Call for Papers) are listed. Adding a new conference/CFP is very easy for any developer because you just have add it in the readme that contains all the conferences and make a PR. Additionally, there is now a ",{"type":415,"tag":434,"props":445,"children":448},{"href":446,"rel":447},"https://developers.events/",[438],[449],{"type":420,"value":450},"website",{"type":420,"value":452}," available to easily view the list of conferences.",{"type":415,"tag":416,"props":454,"children":455},{},[456,458,465],{"type":420,"value":457},"Another one I like is the ",{"type":415,"tag":434,"props":459,"children":462},{"href":460,"rel":461},"https://techcommunitycalendar.com/",[438],[463],{"type":420,"value":464},"Tech Community Calendar",{"type":420,"value":466}," created by Lee Englestone, a Microsoft MVP. What I find interesting it that it does not just list conferences and call for papers but also other tech events like hackathon or meetups. Events are displayed on small cards with thumbnails of the events websites, and you can filter them by country or type of event. Yet, it is less popular than the developers conferences agenda I mentioned before, so there are fewer events listed. There is a form to suggest new events, and I have been submitted events from time to time. However, most events I submit are developer conferences and CFPs that people have already added in the developer conferences agenda.",{"type":415,"tag":416,"props":468,"children":469},{},[470],{"type":420,"value":471},"So I thought, what if I automate the process of retrieving events from the developer conferences agenda and submitting them to the tech community calendar?",{"type":415,"tag":422,"props":473,"children":475},{"id":474},"its-just-a-poc",[476],{"type":420,"value":477},"It's just a PoC!",{"type":415,"tag":416,"props":479,"children":480},{},[481,483,489,491,498,500,507],{"type":420,"value":482},"At first, I spent too much time thinking about how to schedule and host the program I hadn't even started writing 😁. Of course, time-triggered ",{"type":415,"tag":434,"props":484,"children":487},{"href":485,"rel":486},"https://azure.microsoft.com/fr-fr/products/functions",[438],[488],{"type":420,"value":257},{"type":420,"value":490}," came to my mind, I even considered Durable Functions to break down the process into steps (retrieve events, check for existing events, submitting each event...). Then I thought about ",{"type":415,"tag":434,"props":492,"children":495},{"href":493,"rel":494},"https://learn.microsoft.com/en-us/azure/container-apps/jobs",[438],[496],{"type":420,"value":497},"Jobs in Azure Container Apps",{"type":420,"value":499},", or Dapr with Azure Container Apps and even ",{"type":415,"tag":434,"props":501,"children":504},{"href":502,"rel":503},"https://docs.dapr.io/developing-applications/building-blocks/workflow/workflow-overview/",[438],[505],{"type":420,"value":506},"Dapr Workflows",{"type":420,"value":508},". Eventually, I realized it did not matter much since it was just a proof of concept. I decided to postpone the choice for later (if ever it goes beyond the poc) and just start coding.",{"type":415,"tag":416,"props":510,"children":511},{},[512,514,521],{"type":420,"value":513},"I often like writing .NET tools or small programs using the Worker Service template because it's straightforward and includes useful features like dependency injection and configuration. However, this time I decided to keep things simple: just a .NET console application and all the code in Program.cs file. With ",{"type":415,"tag":434,"props":515,"children":518},{"href":516,"rel":517},"https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/program-structure/top-level-statements",[438],[519],{"type":420,"value":520},"top level statement",{"type":420,"value":522},", it feels similar to writing a Bash or PowerShell script, making it quite convenient for experimenting. Of course, this approach isn't what I would use for a real project.",{"type":415,"tag":422,"props":524,"children":526},{"id":525},"retrieve-developer-conferences",[527],{"type":420,"value":528},"Retrieve Developer Conferences",{"type":415,"tag":416,"props":530,"children":531},{},[532,534,541],{"type":420,"value":533},"In addition to the readme file, the developers conferences agenda exposes all the data publicly in JSON ",{"type":415,"tag":434,"props":535,"children":538},{"href":536,"rel":537},"https://developers.events/all-events.json",[438],[539],{"type":420,"value":540},"here",{"type":420,"value":542},".",{"type":415,"tag":416,"props":544,"children":545},{},[546],{"type":420,"value":547},"Developer conferences can be easily represented with a record (I only kept the properties I needed):",{"type":415,"tag":549,"props":550,"children":553},"pre",{"className":551,"code":552,"language":326,"meta":401,"style":401},"language-csharp shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","public record DeveloperEvent(\n    string Name,\n    long[] Date,\n    string Hyperlink,\n    string Location,\n    string City,\n    string Country\n);\n",[554],{"type":415,"tag":555,"props":556,"children":557},"code",{"__ignoreMap":401},[558,587,606,624,641,658,675,688],{"type":415,"tag":559,"props":560,"children":563},"span",{"class":561,"line":562},"line",1,[564,570,576,581],{"type":415,"tag":559,"props":565,"children":567},{"style":566},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[568],{"type":420,"value":569},"public",{"type":415,"tag":559,"props":571,"children":573},{"style":572},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[574],{"type":420,"value":575}," record",{"type":415,"tag":559,"props":577,"children":578},{"style":572},[579],{"type":420,"value":580}," DeveloperEvent",{"type":415,"tag":559,"props":582,"children":584},{"style":583},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[585],{"type":420,"value":586},"(\n",{"type":415,"tag":559,"props":588,"children":590},{"class":561,"line":589},2,[591,596,601],{"type":415,"tag":559,"props":592,"children":593},{"style":583},[594],{"type":420,"value":595},"    string",{"type":415,"tag":559,"props":597,"children":598},{"style":572},[599],{"type":420,"value":600}," Name",{"type":415,"tag":559,"props":602,"children":603},{"style":583},[604],{"type":420,"value":605},",\n",{"type":415,"tag":559,"props":607,"children":609},{"class":561,"line":608},3,[610,615,620],{"type":415,"tag":559,"props":611,"children":612},{"style":583},[613],{"type":420,"value":614},"    long[]",{"type":415,"tag":559,"props":616,"children":617},{"style":572},[618],{"type":420,"value":619}," Date",{"type":415,"tag":559,"props":621,"children":622},{"style":583},[623],{"type":420,"value":605},{"type":415,"tag":559,"props":625,"children":627},{"class":561,"line":626},4,[628,632,637],{"type":415,"tag":559,"props":629,"children":630},{"style":583},[631],{"type":420,"value":595},{"type":415,"tag":559,"props":633,"children":634},{"style":572},[635],{"type":420,"value":636}," Hyperlink",{"type":415,"tag":559,"props":638,"children":639},{"style":583},[640],{"type":420,"value":605},{"type":415,"tag":559,"props":642,"children":644},{"class":561,"line":643},5,[645,649,654],{"type":415,"tag":559,"props":646,"children":647},{"style":583},[648],{"type":420,"value":595},{"type":415,"tag":559,"props":650,"children":651},{"style":572},[652],{"type":420,"value":653}," Location",{"type":415,"tag":559,"props":655,"children":656},{"style":583},[657],{"type":420,"value":605},{"type":415,"tag":559,"props":659,"children":661},{"class":561,"line":660},6,[662,666,671],{"type":415,"tag":559,"props":663,"children":664},{"style":583},[665],{"type":420,"value":595},{"type":415,"tag":559,"props":667,"children":668},{"style":572},[669],{"type":420,"value":670}," City",{"type":415,"tag":559,"props":672,"children":673},{"style":583},[674],{"type":420,"value":605},{"type":415,"tag":559,"props":676,"children":678},{"class":561,"line":677},7,[679,683],{"type":415,"tag":559,"props":680,"children":681},{"style":583},[682],{"type":420,"value":595},{"type":415,"tag":559,"props":684,"children":685},{"style":572},[686],{"type":420,"value":687}," Country\n",{"type":415,"tag":559,"props":689,"children":691},{"class":561,"line":690},8,[692],{"type":415,"tag":559,"props":693,"children":694},{"style":583},[695],{"type":420,"value":696},");\n",{"type":415,"tag":416,"props":698,"children":699},{},[700,702,708,710,716,718,724,726,732],{"type":420,"value":701},"We can use an ",{"type":415,"tag":555,"props":703,"children":705},{"className":704},[],[706],{"type":420,"value":707},"HttpClient",{"type":420,"value":709}," to retrieve the events. The namespace ",{"type":415,"tag":555,"props":711,"children":713},{"className":712},[],[714],{"type":420,"value":715},"System.Net.Http.Json",{"type":420,"value":717}," contains an interesting method to make the ",{"type":415,"tag":555,"props":719,"children":721},{"className":720},[],[722],{"type":420,"value":723},"GET",{"type":420,"value":725}," HTTP call and deserialize the data using ",{"type":415,"tag":555,"props":727,"children":729},{"className":728},[],[730],{"type":420,"value":731},"System.Text.Json",{"type":420,"value":542},{"type":415,"tag":549,"props":734,"children":736},{"className":551,"code":735,"language":326,"meta":401,"style":401},"using var httpClient = new HttpClient()\n{\n    BaseAddress = new Uri(\"https://developers.events/\")\n};\n\nvar events = await httpClient.GetFromJsonAsync\u003CDeveloperEvent[]>(\"all-events.json\");\n",[737],{"type":415,"tag":555,"props":738,"children":739},{"__ignoreMap":401},[740,779,787,834,842,851],{"type":415,"tag":559,"props":741,"children":742},{"class":561,"line":562},[743,749,754,759,764,769,774],{"type":415,"tag":559,"props":744,"children":746},{"style":745},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[747],{"type":420,"value":748},"using",{"type":415,"tag":559,"props":750,"children":751},{"style":572},[752],{"type":420,"value":753}," var",{"type":415,"tag":559,"props":755,"children":756},{"style":572},[757],{"type":420,"value":758}," httpClient",{"type":415,"tag":559,"props":760,"children":761},{"style":583},[762],{"type":420,"value":763}," =",{"type":415,"tag":559,"props":765,"children":766},{"style":583},[767],{"type":420,"value":768}," new",{"type":415,"tag":559,"props":770,"children":771},{"style":572},[772],{"type":420,"value":773}," HttpClient",{"type":415,"tag":559,"props":775,"children":776},{"style":583},[777],{"type":420,"value":778},"()\n",{"type":415,"tag":559,"props":780,"children":781},{"class":561,"line":589},[782],{"type":415,"tag":559,"props":783,"children":784},{"style":583},[785],{"type":420,"value":786},"{\n",{"type":415,"tag":559,"props":788,"children":789},{"class":561,"line":608},[790,796,801,805,810,815,820,825,829],{"type":415,"tag":559,"props":791,"children":793},{"style":792},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[794],{"type":420,"value":795},"    BaseAddress ",{"type":415,"tag":559,"props":797,"children":798},{"style":583},[799],{"type":420,"value":800},"=",{"type":415,"tag":559,"props":802,"children":803},{"style":583},[804],{"type":420,"value":768},{"type":415,"tag":559,"props":806,"children":807},{"style":572},[808],{"type":420,"value":809}," Uri",{"type":415,"tag":559,"props":811,"children":812},{"style":583},[813],{"type":420,"value":814},"(",{"type":415,"tag":559,"props":816,"children":817},{"style":583},[818],{"type":420,"value":819},"\"",{"type":415,"tag":559,"props":821,"children":823},{"style":822},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[824],{"type":420,"value":446},{"type":415,"tag":559,"props":826,"children":827},{"style":583},[828],{"type":420,"value":819},{"type":415,"tag":559,"props":830,"children":831},{"style":583},[832],{"type":420,"value":833},")\n",{"type":415,"tag":559,"props":835,"children":836},{"class":561,"line":626},[837],{"type":415,"tag":559,"props":838,"children":839},{"style":583},[840],{"type":420,"value":841},"};\n",{"type":415,"tag":559,"props":843,"children":844},{"class":561,"line":643},[845],{"type":415,"tag":559,"props":846,"children":848},{"emptyLinePlaceholder":847},true,[849],{"type":420,"value":850},"\n",{"type":415,"tag":559,"props":852,"children":853},{"class":561,"line":660},[854,859,864,868,873,877,881,887,892,897,902,906,911,915],{"type":415,"tag":559,"props":855,"children":856},{"style":572},[857],{"type":420,"value":858},"var",{"type":415,"tag":559,"props":860,"children":861},{"style":572},[862],{"type":420,"value":863}," events",{"type":415,"tag":559,"props":865,"children":866},{"style":583},[867],{"type":420,"value":763},{"type":415,"tag":559,"props":869,"children":870},{"style":583},[871],{"type":420,"value":872}," await",{"type":415,"tag":559,"props":874,"children":875},{"style":792},[876],{"type":420,"value":758},{"type":415,"tag":559,"props":878,"children":879},{"style":583},[880],{"type":420,"value":542},{"type":415,"tag":559,"props":882,"children":884},{"style":883},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[885],{"type":420,"value":886},"GetFromJsonAsync",{"type":415,"tag":559,"props":888,"children":889},{"style":583},[890],{"type":420,"value":891},"\u003C",{"type":415,"tag":559,"props":893,"children":894},{"style":572},[895],{"type":420,"value":896},"DeveloperEvent",{"type":415,"tag":559,"props":898,"children":899},{"style":583},[900],{"type":420,"value":901},"[]>(",{"type":415,"tag":559,"props":903,"children":904},{"style":583},[905],{"type":420,"value":819},{"type":415,"tag":559,"props":907,"children":908},{"style":822},[909],{"type":420,"value":910},"all-events.json",{"type":415,"tag":559,"props":912,"children":913},{"style":583},[914],{"type":420,"value":819},{"type":415,"tag":559,"props":916,"children":917},{"style":583},[918],{"type":420,"value":696},{"type":415,"tag":422,"props":920,"children":922},{"id":921},"convert-events-to-the-proper-format",[923],{"type":420,"value":924},"Convert Events To The Proper Format",{"type":415,"tag":416,"props":926,"children":927},{},[928],{"type":420,"value":929},"The form to submit events in the Tech Community Calendar look likes that:",{"type":415,"tag":416,"props":931,"children":932},{},[933],{"type":415,"tag":934,"props":935,"children":940},"img",{"alt":936,"className":937,"src":939},"Form to submit events to tech community calendar",[938],"rounded-lg","/posts/images/iteventcalendar_tcc.webp",[],{"type":415,"tag":416,"props":942,"children":943},{},[944],{"type":420,"value":945},"The Tech Community Calendar events can be represented with the following record :",{"type":415,"tag":549,"props":947,"children":949},{"className":551,"code":948,"language":326,"meta":401,"style":401},"public record TechCommunityCalendarEvent(\n    string Name,\n    string Url,\n    DateTimeOffset StartDate,\n    DateTimeOffset EndDate,\n    EventType EventType,\n    EventFormat EventFormat,\n    string Country,\n    string City\n)\n{\n    public string? TwitterHandle { get; set; }\n}; \n",[950],{"type":415,"tag":555,"props":951,"children":952},{"__ignoreMap":401},[953,973,988,1004,1021,1037,1054,1071,1087,1100,1108,1116,1169],{"type":415,"tag":559,"props":954,"children":955},{"class":561,"line":562},[956,960,964,969],{"type":415,"tag":559,"props":957,"children":958},{"style":566},[959],{"type":420,"value":569},{"type":415,"tag":559,"props":961,"children":962},{"style":572},[963],{"type":420,"value":575},{"type":415,"tag":559,"props":965,"children":966},{"style":572},[967],{"type":420,"value":968}," TechCommunityCalendarEvent",{"type":415,"tag":559,"props":970,"children":971},{"style":583},[972],{"type":420,"value":586},{"type":415,"tag":559,"props":974,"children":975},{"class":561,"line":589},[976,980,984],{"type":415,"tag":559,"props":977,"children":978},{"style":583},[979],{"type":420,"value":595},{"type":415,"tag":559,"props":981,"children":982},{"style":572},[983],{"type":420,"value":600},{"type":415,"tag":559,"props":985,"children":986},{"style":583},[987],{"type":420,"value":605},{"type":415,"tag":559,"props":989,"children":990},{"class":561,"line":608},[991,995,1000],{"type":415,"tag":559,"props":992,"children":993},{"style":583},[994],{"type":420,"value":595},{"type":415,"tag":559,"props":996,"children":997},{"style":572},[998],{"type":420,"value":999}," Url",{"type":415,"tag":559,"props":1001,"children":1002},{"style":583},[1003],{"type":420,"value":605},{"type":415,"tag":559,"props":1005,"children":1006},{"class":561,"line":626},[1007,1012,1017],{"type":415,"tag":559,"props":1008,"children":1009},{"style":572},[1010],{"type":420,"value":1011},"    DateTimeOffset",{"type":415,"tag":559,"props":1013,"children":1014},{"style":572},[1015],{"type":420,"value":1016}," StartDate",{"type":415,"tag":559,"props":1018,"children":1019},{"style":583},[1020],{"type":420,"value":605},{"type":415,"tag":559,"props":1022,"children":1023},{"class":561,"line":643},[1024,1028,1033],{"type":415,"tag":559,"props":1025,"children":1026},{"style":572},[1027],{"type":420,"value":1011},{"type":415,"tag":559,"props":1029,"children":1030},{"style":572},[1031],{"type":420,"value":1032}," EndDate",{"type":415,"tag":559,"props":1034,"children":1035},{"style":583},[1036],{"type":420,"value":605},{"type":415,"tag":559,"props":1038,"children":1039},{"class":561,"line":660},[1040,1045,1050],{"type":415,"tag":559,"props":1041,"children":1042},{"style":572},[1043],{"type":420,"value":1044},"    EventType",{"type":415,"tag":559,"props":1046,"children":1047},{"style":572},[1048],{"type":420,"value":1049}," EventType",{"type":415,"tag":559,"props":1051,"children":1052},{"style":583},[1053],{"type":420,"value":605},{"type":415,"tag":559,"props":1055,"children":1056},{"class":561,"line":677},[1057,1062,1067],{"type":415,"tag":559,"props":1058,"children":1059},{"style":572},[1060],{"type":420,"value":1061},"    EventFormat",{"type":415,"tag":559,"props":1063,"children":1064},{"style":572},[1065],{"type":420,"value":1066}," EventFormat",{"type":415,"tag":559,"props":1068,"children":1069},{"style":583},[1070],{"type":420,"value":605},{"type":415,"tag":559,"props":1072,"children":1073},{"class":561,"line":690},[1074,1078,1083],{"type":415,"tag":559,"props":1075,"children":1076},{"style":583},[1077],{"type":420,"value":595},{"type":415,"tag":559,"props":1079,"children":1080},{"style":572},[1081],{"type":420,"value":1082}," Country",{"type":415,"tag":559,"props":1084,"children":1085},{"style":583},[1086],{"type":420,"value":605},{"type":415,"tag":559,"props":1088,"children":1090},{"class":561,"line":1089},9,[1091,1095],{"type":415,"tag":559,"props":1092,"children":1093},{"style":583},[1094],{"type":420,"value":595},{"type":415,"tag":559,"props":1096,"children":1097},{"style":572},[1098],{"type":420,"value":1099}," City\n",{"type":415,"tag":559,"props":1101,"children":1103},{"class":561,"line":1102},10,[1104],{"type":415,"tag":559,"props":1105,"children":1106},{"style":583},[1107],{"type":420,"value":833},{"type":415,"tag":559,"props":1109,"children":1111},{"class":561,"line":1110},11,[1112],{"type":415,"tag":559,"props":1113,"children":1114},{"style":583},[1115],{"type":420,"value":786},{"type":415,"tag":559,"props":1117,"children":1119},{"class":561,"line":1118},12,[1120,1125,1130,1135,1140,1145,1150,1155,1160,1164],{"type":415,"tag":559,"props":1121,"children":1122},{"style":566},[1123],{"type":420,"value":1124},"    public",{"type":415,"tag":559,"props":1126,"children":1127},{"style":583},[1128],{"type":420,"value":1129}," string",{"type":415,"tag":559,"props":1131,"children":1132},{"style":583},[1133],{"type":420,"value":1134},"?",{"type":415,"tag":559,"props":1136,"children":1137},{"style":572},[1138],{"type":420,"value":1139}," TwitterHandle",{"type":415,"tag":559,"props":1141,"children":1142},{"style":583},[1143],{"type":420,"value":1144}," {",{"type":415,"tag":559,"props":1146,"children":1147},{"style":572},[1148],{"type":420,"value":1149}," get",{"type":415,"tag":559,"props":1151,"children":1152},{"style":583},[1153],{"type":420,"value":1154},";",{"type":415,"tag":559,"props":1156,"children":1157},{"style":572},[1158],{"type":420,"value":1159}," set",{"type":415,"tag":559,"props":1161,"children":1162},{"style":583},[1163],{"type":420,"value":1154},{"type":415,"tag":559,"props":1165,"children":1166},{"style":583},[1167],{"type":420,"value":1168}," }\n",{"type":415,"tag":559,"props":1170,"children":1172},{"class":561,"line":1171},13,[1173],{"type":415,"tag":559,"props":1174,"children":1175},{"style":583},[1176],{"type":420,"value":841},{"type":415,"tag":1178,"props":1179,"children":1181},"callout",{"icon":1180},"i-heroicons-chat-bubble-left-20-solid",[1182],{"type":415,"tag":416,"props":1183,"children":1184},{},[1185],{"type":420,"value":1186},"Positional parameters in a record are init-only. As I want to set the Twitter URL after the event has been created, I use a read-write property for it.",{"type":415,"tag":416,"props":1188,"children":1189},{},[1190,1192,1197,1199,1205],{"type":420,"value":1191},"We can write a method to convert a ",{"type":415,"tag":555,"props":1193,"children":1195},{"className":1194},[],[1196],{"type":420,"value":896},{"type":420,"value":1198}," to a ",{"type":415,"tag":555,"props":1200,"children":1202},{"className":1201},[],[1203],{"type":420,"value":1204},"TechCommunityCalendarEvent",{"type":420,"value":1206},":",{"type":415,"tag":549,"props":1208,"children":1210},{"className":551,"code":1209,"language":326,"meta":401,"style":401},"TechCommunityCalendarEvent ConvertToTechEvent(DeveloperEvent developerEvent)\n{\n    var startingDate = DateTimeOffset.FromUnixTimeMilliseconds(developerEvent.Date.First());\n    var endingDate = DateTimeOffset.FromUnixTimeMilliseconds(developerEvent.Date.Last());\n    var eventNameContainsYear = int.TryParse(developerEvent.Name.Split(\" \").LastOrDefault(), out var year) \n                                && year == startingDate.Year;\n    return new TechCommunityCalendarEvent(\n        eventNameContainsYear ? developerEvent.Name : $\"{developerEvent.Name} {startingDate.Year}\",\n        developerEvent.Hyperlink,\n        startingDate,\n        endingDate,\n        EventType.Conference,\n        developerEvent.Country is \"Online\" ? EventFormat.Virtual : EventFormat.In_Person,\n        developerEvent.Country,\n        developerEvent.City\n    );\n}\n",[1211],{"type":415,"tag":555,"props":1212,"children":1213},{"__ignoreMap":401},[1214,1243,1250,1313,1370,1474,1510,1530,1607,1628,1640,1652,1673,1746,1767,1784,1793],{"type":415,"tag":559,"props":1215,"children":1216},{"class":561,"line":562},[1217,1221,1226,1230,1234,1239],{"type":415,"tag":559,"props":1218,"children":1219},{"style":572},[1220],{"type":420,"value":1204},{"type":415,"tag":559,"props":1222,"children":1223},{"style":883},[1224],{"type":420,"value":1225}," ConvertToTechEvent",{"type":415,"tag":559,"props":1227,"children":1228},{"style":583},[1229],{"type":420,"value":814},{"type":415,"tag":559,"props":1231,"children":1232},{"style":572},[1233],{"type":420,"value":896},{"type":415,"tag":559,"props":1235,"children":1236},{"style":572},[1237],{"type":420,"value":1238}," developerEvent",{"type":415,"tag":559,"props":1240,"children":1241},{"style":583},[1242],{"type":420,"value":833},{"type":415,"tag":559,"props":1244,"children":1245},{"class":561,"line":589},[1246],{"type":415,"tag":559,"props":1247,"children":1248},{"style":583},[1249],{"type":420,"value":786},{"type":415,"tag":559,"props":1251,"children":1252},{"class":561,"line":608},[1253,1258,1263,1267,1272,1276,1281,1285,1290,1294,1299,1303,1308],{"type":415,"tag":559,"props":1254,"children":1255},{"style":572},[1256],{"type":420,"value":1257},"    var",{"type":415,"tag":559,"props":1259,"children":1260},{"style":572},[1261],{"type":420,"value":1262}," startingDate",{"type":415,"tag":559,"props":1264,"children":1265},{"style":583},[1266],{"type":420,"value":763},{"type":415,"tag":559,"props":1268,"children":1269},{"style":792},[1270],{"type":420,"value":1271}," DateTimeOffset",{"type":415,"tag":559,"props":1273,"children":1274},{"style":583},[1275],{"type":420,"value":542},{"type":415,"tag":559,"props":1277,"children":1278},{"style":883},[1279],{"type":420,"value":1280},"FromUnixTimeMilliseconds",{"type":415,"tag":559,"props":1282,"children":1283},{"style":583},[1284],{"type":420,"value":814},{"type":415,"tag":559,"props":1286,"children":1287},{"style":792},[1288],{"type":420,"value":1289},"developerEvent",{"type":415,"tag":559,"props":1291,"children":1292},{"style":583},[1293],{"type":420,"value":542},{"type":415,"tag":559,"props":1295,"children":1296},{"style":792},[1297],{"type":420,"value":1298},"Date",{"type":415,"tag":559,"props":1300,"children":1301},{"style":583},[1302],{"type":420,"value":542},{"type":415,"tag":559,"props":1304,"children":1305},{"style":883},[1306],{"type":420,"value":1307},"First",{"type":415,"tag":559,"props":1309,"children":1310},{"style":583},[1311],{"type":420,"value":1312},"());\n",{"type":415,"tag":559,"props":1314,"children":1315},{"class":561,"line":626},[1316,1320,1325,1329,1333,1337,1341,1345,1349,1353,1357,1361,1366],{"type":415,"tag":559,"props":1317,"children":1318},{"style":572},[1319],{"type":420,"value":1257},{"type":415,"tag":559,"props":1321,"children":1322},{"style":572},[1323],{"type":420,"value":1324}," endingDate",{"type":415,"tag":559,"props":1326,"children":1327},{"style":583},[1328],{"type":420,"value":763},{"type":415,"tag":559,"props":1330,"children":1331},{"style":792},[1332],{"type":420,"value":1271},{"type":415,"tag":559,"props":1334,"children":1335},{"style":583},[1336],{"type":420,"value":542},{"type":415,"tag":559,"props":1338,"children":1339},{"style":883},[1340],{"type":420,"value":1280},{"type":415,"tag":559,"props":1342,"children":1343},{"style":583},[1344],{"type":420,"value":814},{"type":415,"tag":559,"props":1346,"children":1347},{"style":792},[1348],{"type":420,"value":1289},{"type":415,"tag":559,"props":1350,"children":1351},{"style":583},[1352],{"type":420,"value":542},{"type":415,"tag":559,"props":1354,"children":1355},{"style":792},[1356],{"type":420,"value":1298},{"type":415,"tag":559,"props":1358,"children":1359},{"style":583},[1360],{"type":420,"value":542},{"type":415,"tag":559,"props":1362,"children":1363},{"style":883},[1364],{"type":420,"value":1365},"Last",{"type":415,"tag":559,"props":1367,"children":1368},{"style":583},[1369],{"type":420,"value":1312},{"type":415,"tag":559,"props":1371,"children":1372},{"class":561,"line":643},[1373,1377,1382,1386,1391,1396,1400,1404,1408,1413,1417,1422,1426,1430,1435,1440,1445,1450,1455,1459,1464,1469],{"type":415,"tag":559,"props":1374,"children":1375},{"style":572},[1376],{"type":420,"value":1257},{"type":415,"tag":559,"props":1378,"children":1379},{"style":572},[1380],{"type":420,"value":1381}," eventNameContainsYear",{"type":415,"tag":559,"props":1383,"children":1384},{"style":583},[1385],{"type":420,"value":763},{"type":415,"tag":559,"props":1387,"children":1388},{"style":583},[1389],{"type":420,"value":1390}," int.",{"type":415,"tag":559,"props":1392,"children":1393},{"style":883},[1394],{"type":420,"value":1395},"TryParse",{"type":415,"tag":559,"props":1397,"children":1398},{"style":583},[1399],{"type":420,"value":814},{"type":415,"tag":559,"props":1401,"children":1402},{"style":792},[1403],{"type":420,"value":1289},{"type":415,"tag":559,"props":1405,"children":1406},{"style":583},[1407],{"type":420,"value":542},{"type":415,"tag":559,"props":1409,"children":1410},{"style":792},[1411],{"type":420,"value":1412},"Name",{"type":415,"tag":559,"props":1414,"children":1415},{"style":583},[1416],{"type":420,"value":542},{"type":415,"tag":559,"props":1418,"children":1419},{"style":883},[1420],{"type":420,"value":1421},"Split",{"type":415,"tag":559,"props":1423,"children":1424},{"style":583},[1425],{"type":420,"value":814},{"type":415,"tag":559,"props":1427,"children":1428},{"style":583},[1429],{"type":420,"value":819},{"type":415,"tag":559,"props":1431,"children":1432},{"style":583},[1433],{"type":420,"value":1434}," \"",{"type":415,"tag":559,"props":1436,"children":1437},{"style":583},[1438],{"type":420,"value":1439},").",{"type":415,"tag":559,"props":1441,"children":1442},{"style":883},[1443],{"type":420,"value":1444},"LastOrDefault",{"type":415,"tag":559,"props":1446,"children":1447},{"style":583},[1448],{"type":420,"value":1449},"(),",{"type":415,"tag":559,"props":1451,"children":1452},{"style":566},[1453],{"type":420,"value":1454}," out",{"type":415,"tag":559,"props":1456,"children":1457},{"style":572},[1458],{"type":420,"value":753},{"type":415,"tag":559,"props":1460,"children":1461},{"style":572},[1462],{"type":420,"value":1463}," year",{"type":415,"tag":559,"props":1465,"children":1466},{"style":583},[1467],{"type":420,"value":1468},")",{"type":415,"tag":559,"props":1470,"children":1471},{"style":792},[1472],{"type":420,"value":1473}," \n",{"type":415,"tag":559,"props":1475,"children":1476},{"class":561,"line":660},[1477,1482,1487,1492,1496,1500,1505],{"type":415,"tag":559,"props":1478,"children":1479},{"style":583},[1480],{"type":420,"value":1481},"                                &&",{"type":415,"tag":559,"props":1483,"children":1484},{"style":792},[1485],{"type":420,"value":1486}," year ",{"type":415,"tag":559,"props":1488,"children":1489},{"style":583},[1490],{"type":420,"value":1491},"==",{"type":415,"tag":559,"props":1493,"children":1494},{"style":792},[1495],{"type":420,"value":1262},{"type":415,"tag":559,"props":1497,"children":1498},{"style":583},[1499],{"type":420,"value":542},{"type":415,"tag":559,"props":1501,"children":1502},{"style":792},[1503],{"type":420,"value":1504},"Year",{"type":415,"tag":559,"props":1506,"children":1507},{"style":583},[1508],{"type":420,"value":1509},";\n",{"type":415,"tag":559,"props":1511,"children":1512},{"class":561,"line":677},[1513,1518,1522,1526],{"type":415,"tag":559,"props":1514,"children":1515},{"style":745},[1516],{"type":420,"value":1517},"    return",{"type":415,"tag":559,"props":1519,"children":1520},{"style":583},[1521],{"type":420,"value":768},{"type":415,"tag":559,"props":1523,"children":1524},{"style":572},[1525],{"type":420,"value":968},{"type":415,"tag":559,"props":1527,"children":1528},{"style":583},[1529],{"type":420,"value":586},{"type":415,"tag":559,"props":1531,"children":1532},{"class":561,"line":690},[1533,1538,1542,1546,1550,1555,1559,1564,1568,1572,1576,1581,1585,1590,1594,1598,1603],{"type":415,"tag":559,"props":1534,"children":1535},{"style":792},[1536],{"type":420,"value":1537},"        eventNameContainsYear ",{"type":415,"tag":559,"props":1539,"children":1540},{"style":583},[1541],{"type":420,"value":1134},{"type":415,"tag":559,"props":1543,"children":1544},{"style":792},[1545],{"type":420,"value":1238},{"type":415,"tag":559,"props":1547,"children":1548},{"style":583},[1549],{"type":420,"value":542},{"type":415,"tag":559,"props":1551,"children":1552},{"style":792},[1553],{"type":420,"value":1554},"Name ",{"type":415,"tag":559,"props":1556,"children":1557},{"style":583},[1558],{"type":420,"value":1206},{"type":415,"tag":559,"props":1560,"children":1561},{"style":583},[1562],{"type":420,"value":1563}," $\"{",{"type":415,"tag":559,"props":1565,"children":1566},{"style":792},[1567],{"type":420,"value":1289},{"type":415,"tag":559,"props":1569,"children":1570},{"style":583},[1571],{"type":420,"value":542},{"type":415,"tag":559,"props":1573,"children":1574},{"style":792},[1575],{"type":420,"value":1412},{"type":415,"tag":559,"props":1577,"children":1578},{"style":583},[1579],{"type":420,"value":1580},"}",{"type":415,"tag":559,"props":1582,"children":1583},{"style":583},[1584],{"type":420,"value":1144},{"type":415,"tag":559,"props":1586,"children":1587},{"style":792},[1588],{"type":420,"value":1589},"startingDate",{"type":415,"tag":559,"props":1591,"children":1592},{"style":583},[1593],{"type":420,"value":542},{"type":415,"tag":559,"props":1595,"children":1596},{"style":792},[1597],{"type":420,"value":1504},{"type":415,"tag":559,"props":1599,"children":1600},{"style":583},[1601],{"type":420,"value":1602},"}\"",{"type":415,"tag":559,"props":1604,"children":1605},{"style":583},[1606],{"type":420,"value":605},{"type":415,"tag":559,"props":1608,"children":1609},{"class":561,"line":1089},[1610,1615,1619,1624],{"type":415,"tag":559,"props":1611,"children":1612},{"style":792},[1613],{"type":420,"value":1614},"        developerEvent",{"type":415,"tag":559,"props":1616,"children":1617},{"style":583},[1618],{"type":420,"value":542},{"type":415,"tag":559,"props":1620,"children":1621},{"style":792},[1622],{"type":420,"value":1623},"Hyperlink",{"type":415,"tag":559,"props":1625,"children":1626},{"style":583},[1627],{"type":420,"value":605},{"type":415,"tag":559,"props":1629,"children":1630},{"class":561,"line":1102},[1631,1636],{"type":415,"tag":559,"props":1632,"children":1633},{"style":792},[1634],{"type":420,"value":1635},"        startingDate",{"type":415,"tag":559,"props":1637,"children":1638},{"style":583},[1639],{"type":420,"value":605},{"type":415,"tag":559,"props":1641,"children":1642},{"class":561,"line":1110},[1643,1648],{"type":415,"tag":559,"props":1644,"children":1645},{"style":792},[1646],{"type":420,"value":1647},"        endingDate",{"type":415,"tag":559,"props":1649,"children":1650},{"style":583},[1651],{"type":420,"value":605},{"type":415,"tag":559,"props":1653,"children":1654},{"class":561,"line":1118},[1655,1660,1664,1669],{"type":415,"tag":559,"props":1656,"children":1657},{"style":792},[1658],{"type":420,"value":1659},"        EventType",{"type":415,"tag":559,"props":1661,"children":1662},{"style":583},[1663],{"type":420,"value":542},{"type":415,"tag":559,"props":1665,"children":1666},{"style":792},[1667],{"type":420,"value":1668},"Conference",{"type":415,"tag":559,"props":1670,"children":1671},{"style":583},[1672],{"type":420,"value":605},{"type":415,"tag":559,"props":1674,"children":1675},{"class":561,"line":1171},[1676,1680,1684,1689,1694,1698,1703,1707,1712,1716,1720,1725,1729,1733,1737,1742],{"type":415,"tag":559,"props":1677,"children":1678},{"style":792},[1679],{"type":420,"value":1614},{"type":415,"tag":559,"props":1681,"children":1682},{"style":583},[1683],{"type":420,"value":542},{"type":415,"tag":559,"props":1685,"children":1686},{"style":792},[1687],{"type":420,"value":1688},"Country ",{"type":415,"tag":559,"props":1690,"children":1691},{"style":583},[1692],{"type":420,"value":1693},"is",{"type":415,"tag":559,"props":1695,"children":1696},{"style":583},[1697],{"type":420,"value":1434},{"type":415,"tag":559,"props":1699,"children":1700},{"style":822},[1701],{"type":420,"value":1702},"Online",{"type":415,"tag":559,"props":1704,"children":1705},{"style":583},[1706],{"type":420,"value":819},{"type":415,"tag":559,"props":1708,"children":1709},{"style":583},[1710],{"type":420,"value":1711}," ?",{"type":415,"tag":559,"props":1713,"children":1714},{"style":792},[1715],{"type":420,"value":1066},{"type":415,"tag":559,"props":1717,"children":1718},{"style":583},[1719],{"type":420,"value":542},{"type":415,"tag":559,"props":1721,"children":1722},{"style":792},[1723],{"type":420,"value":1724},"Virtual ",{"type":415,"tag":559,"props":1726,"children":1727},{"style":583},[1728],{"type":420,"value":1206},{"type":415,"tag":559,"props":1730,"children":1731},{"style":792},[1732],{"type":420,"value":1066},{"type":415,"tag":559,"props":1734,"children":1735},{"style":583},[1736],{"type":420,"value":542},{"type":415,"tag":559,"props":1738,"children":1739},{"style":792},[1740],{"type":420,"value":1741},"In_Person",{"type":415,"tag":559,"props":1743,"children":1744},{"style":583},[1745],{"type":420,"value":605},{"type":415,"tag":559,"props":1747,"children":1749},{"class":561,"line":1748},14,[1750,1754,1758,1763],{"type":415,"tag":559,"props":1751,"children":1752},{"style":792},[1753],{"type":420,"value":1614},{"type":415,"tag":559,"props":1755,"children":1756},{"style":583},[1757],{"type":420,"value":542},{"type":415,"tag":559,"props":1759,"children":1760},{"style":792},[1761],{"type":420,"value":1762},"Country",{"type":415,"tag":559,"props":1764,"children":1765},{"style":583},[1766],{"type":420,"value":605},{"type":415,"tag":559,"props":1768,"children":1770},{"class":561,"line":1769},15,[1771,1775,1779],{"type":415,"tag":559,"props":1772,"children":1773},{"style":792},[1774],{"type":420,"value":1614},{"type":415,"tag":559,"props":1776,"children":1777},{"style":583},[1778],{"type":420,"value":542},{"type":415,"tag":559,"props":1780,"children":1781},{"style":792},[1782],{"type":420,"value":1783},"City\n",{"type":415,"tag":559,"props":1785,"children":1787},{"class":561,"line":1786},16,[1788],{"type":415,"tag":559,"props":1789,"children":1790},{"style":583},[1791],{"type":420,"value":1792},"    );\n",{"type":415,"tag":559,"props":1794,"children":1796},{"class":561,"line":1795},17,[1797],{"type":415,"tag":559,"props":1798,"children":1799},{"style":583},[1800],{"type":420,"value":1801},"}\n",{"type":415,"tag":416,"props":1803,"children":1804},{},[1805],{"type":420,"value":1806},"It allows us to convert all retrieved events after filtering on their date to only keep upcoming events.",{"type":415,"tag":549,"props":1808,"children":1810},{"className":551,"code":1809,"language":326,"meta":401,"style":401},"var upcomingEvents =  events\n    .Where(e => e.Date.FirstOrDefault() > DateTimeOffset.UtcNow.ToUnixTimeMilliseconds())\n    .Select(ConvertToTechEvent)\n    .ToList();\n",[1811],{"type":415,"tag":555,"props":1812,"children":1813},{"__ignoreMap":401},[1814,1835,1921,1946],{"type":415,"tag":559,"props":1815,"children":1816},{"class":561,"line":562},[1817,1821,1826,1830],{"type":415,"tag":559,"props":1818,"children":1819},{"style":572},[1820],{"type":420,"value":858},{"type":415,"tag":559,"props":1822,"children":1823},{"style":572},[1824],{"type":420,"value":1825}," upcomingEvents",{"type":415,"tag":559,"props":1827,"children":1828},{"style":583},[1829],{"type":420,"value":763},{"type":415,"tag":559,"props":1831,"children":1832},{"style":792},[1833],{"type":420,"value":1834},"  events\n",{"type":415,"tag":559,"props":1836,"children":1837},{"class":561,"line":589},[1838,1843,1848,1852,1857,1862,1867,1871,1875,1879,1884,1889,1894,1898,1902,1907,1911,1916],{"type":415,"tag":559,"props":1839,"children":1840},{"style":583},[1841],{"type":420,"value":1842},"    .",{"type":415,"tag":559,"props":1844,"children":1845},{"style":883},[1846],{"type":420,"value":1847},"Where",{"type":415,"tag":559,"props":1849,"children":1850},{"style":583},[1851],{"type":420,"value":814},{"type":415,"tag":559,"props":1853,"children":1854},{"style":572},[1855],{"type":420,"value":1856},"e",{"type":415,"tag":559,"props":1858,"children":1859},{"style":583},[1860],{"type":420,"value":1861}," =>",{"type":415,"tag":559,"props":1863,"children":1864},{"style":792},[1865],{"type":420,"value":1866}," e",{"type":415,"tag":559,"props":1868,"children":1869},{"style":583},[1870],{"type":420,"value":542},{"type":415,"tag":559,"props":1872,"children":1873},{"style":792},[1874],{"type":420,"value":1298},{"type":415,"tag":559,"props":1876,"children":1877},{"style":583},[1878],{"type":420,"value":542},{"type":415,"tag":559,"props":1880,"children":1881},{"style":883},[1882],{"type":420,"value":1883},"FirstOrDefault",{"type":415,"tag":559,"props":1885,"children":1886},{"style":583},[1887],{"type":420,"value":1888},"()",{"type":415,"tag":559,"props":1890,"children":1891},{"style":583},[1892],{"type":420,"value":1893}," >",{"type":415,"tag":559,"props":1895,"children":1896},{"style":792},[1897],{"type":420,"value":1271},{"type":415,"tag":559,"props":1899,"children":1900},{"style":583},[1901],{"type":420,"value":542},{"type":415,"tag":559,"props":1903,"children":1904},{"style":792},[1905],{"type":420,"value":1906},"UtcNow",{"type":415,"tag":559,"props":1908,"children":1909},{"style":583},[1910],{"type":420,"value":542},{"type":415,"tag":559,"props":1912,"children":1913},{"style":883},[1914],{"type":420,"value":1915},"ToUnixTimeMilliseconds",{"type":415,"tag":559,"props":1917,"children":1918},{"style":583},[1919],{"type":420,"value":1920},"())\n",{"type":415,"tag":559,"props":1922,"children":1923},{"class":561,"line":608},[1924,1928,1933,1937,1942],{"type":415,"tag":559,"props":1925,"children":1926},{"style":583},[1927],{"type":420,"value":1842},{"type":415,"tag":559,"props":1929,"children":1930},{"style":883},[1931],{"type":420,"value":1932},"Select",{"type":415,"tag":559,"props":1934,"children":1935},{"style":583},[1936],{"type":420,"value":814},{"type":415,"tag":559,"props":1938,"children":1939},{"style":792},[1940],{"type":420,"value":1941},"ConvertToTechEvent",{"type":415,"tag":559,"props":1943,"children":1944},{"style":583},[1945],{"type":420,"value":833},{"type":415,"tag":559,"props":1947,"children":1948},{"class":561,"line":626},[1949,1953,1958],{"type":415,"tag":559,"props":1950,"children":1951},{"style":583},[1952],{"type":420,"value":1842},{"type":415,"tag":559,"props":1954,"children":1955},{"style":883},[1956],{"type":420,"value":1957},"ToList",{"type":415,"tag":559,"props":1959,"children":1960},{"style":583},[1961],{"type":420,"value":1962},"();\n",{"type":415,"tag":422,"props":1964,"children":1966},{"id":1965},"retrieve-an-event-twitter-profile-link",[1967],{"type":420,"value":1968},"Retrieve An Event Twitter Profile Link",{"type":415,"tag":416,"props":1970,"children":1971},{},[1972],{"type":420,"value":1973},"In the submission form, there's an optional field for entering the Twitter Profile Link of an event. That's not something the events from the developers conferences agenda have but that's interesting data that could be useful to supply. All events have an associated website and most of them contain a link to their Twitter Profile on it.",{"type":415,"tag":416,"props":1975,"children":1976},{},[1977,1979,1985],{"type":420,"value":1978},"This is where a library like ",{"type":415,"tag":434,"props":1980,"children":1983},{"href":1981,"rel":1982},"https://github.com/AngleSharp/AngleSharp",[438],[1984],{"type":420,"value":390},{"type":420,"value":1986},", which can parse HTML according to W3C specifications, becomes useful. Although I have not used this library before, creating a method to find the Twitter URL on an event's webpage is straightforward.",{"type":415,"tag":549,"props":1988,"children":1990},{"className":551,"code":1989,"language":326,"meta":401,"style":401},"async Task\u003Cstring?> RetrieveEventTwitterProfileLink(string eventUrl)\n{\n    var context = BrowsingContext.New(Configuration.Default.WithDefaultLoader());\n    var queryDocument = await context.OpenAsync(eventUrl);\n\n    var twitterSelector = \"a[href*='twitter.com'], a[href*='https://x.com']\";\n    var twitterSocialLink = queryDocument.QuerySelector(twitterSelector)\n        ?.GetAttribute(\"href\");\n\n    return Uri.TryCreate(twitterSocialLink, UriKind.Absolute, out var twitterProfileUri) ?\n        // Normalize X/Twitter profile URL by removing query parameters and fragments\n        $\"{twitterProfileUri.Scheme}://{twitterProfileUri.Host}{twitterProfileUri.AbsolutePath}\" : null;\n}\n",[1991],{"type":415,"tag":555,"props":1992,"children":1993},{"__ignoreMap":401},[1994,2043,2050,2110,2156,2163,2196,2238,2272,2279,2353,2362,2443],{"type":415,"tag":559,"props":1995,"children":1996},{"class":561,"line":562},[1997,2002,2007,2011,2016,2021,2026,2030,2034,2039],{"type":415,"tag":559,"props":1998,"children":1999},{"style":566},[2000],{"type":420,"value":2001},"async",{"type":415,"tag":559,"props":2003,"children":2004},{"style":572},[2005],{"type":420,"value":2006}," Task",{"type":415,"tag":559,"props":2008,"children":2009},{"style":583},[2010],{"type":420,"value":891},{"type":415,"tag":559,"props":2012,"children":2013},{"style":583},[2014],{"type":420,"value":2015},"string",{"type":415,"tag":559,"props":2017,"children":2018},{"style":583},[2019],{"type":420,"value":2020},"?>",{"type":415,"tag":559,"props":2022,"children":2023},{"style":883},[2024],{"type":420,"value":2025}," RetrieveEventTwitterProfileLink",{"type":415,"tag":559,"props":2027,"children":2028},{"style":583},[2029],{"type":420,"value":814},{"type":415,"tag":559,"props":2031,"children":2032},{"style":583},[2033],{"type":420,"value":2015},{"type":415,"tag":559,"props":2035,"children":2036},{"style":572},[2037],{"type":420,"value":2038}," eventUrl",{"type":415,"tag":559,"props":2040,"children":2041},{"style":583},[2042],{"type":420,"value":833},{"type":415,"tag":559,"props":2044,"children":2045},{"class":561,"line":589},[2046],{"type":415,"tag":559,"props":2047,"children":2048},{"style":583},[2049],{"type":420,"value":786},{"type":415,"tag":559,"props":2051,"children":2052},{"class":561,"line":608},[2053,2057,2062,2066,2071,2075,2080,2084,2088,2092,2097,2101,2106],{"type":415,"tag":559,"props":2054,"children":2055},{"style":572},[2056],{"type":420,"value":1257},{"type":415,"tag":559,"props":2058,"children":2059},{"style":572},[2060],{"type":420,"value":2061}," context",{"type":415,"tag":559,"props":2063,"children":2064},{"style":583},[2065],{"type":420,"value":763},{"type":415,"tag":559,"props":2067,"children":2068},{"style":792},[2069],{"type":420,"value":2070}," BrowsingContext",{"type":415,"tag":559,"props":2072,"children":2073},{"style":583},[2074],{"type":420,"value":542},{"type":415,"tag":559,"props":2076,"children":2077},{"style":883},[2078],{"type":420,"value":2079},"New",{"type":415,"tag":559,"props":2081,"children":2082},{"style":583},[2083],{"type":420,"value":814},{"type":415,"tag":559,"props":2085,"children":2086},{"style":792},[2087],{"type":420,"value":263},{"type":415,"tag":559,"props":2089,"children":2090},{"style":583},[2091],{"type":420,"value":542},{"type":415,"tag":559,"props":2093,"children":2094},{"style":792},[2095],{"type":420,"value":2096},"Default",{"type":415,"tag":559,"props":2098,"children":2099},{"style":583},[2100],{"type":420,"value":542},{"type":415,"tag":559,"props":2102,"children":2103},{"style":883},[2104],{"type":420,"value":2105},"WithDefaultLoader",{"type":415,"tag":559,"props":2107,"children":2108},{"style":583},[2109],{"type":420,"value":1312},{"type":415,"tag":559,"props":2111,"children":2112},{"class":561,"line":626},[2113,2117,2122,2126,2130,2134,2138,2143,2147,2152],{"type":415,"tag":559,"props":2114,"children":2115},{"style":572},[2116],{"type":420,"value":1257},{"type":415,"tag":559,"props":2118,"children":2119},{"style":572},[2120],{"type":420,"value":2121}," queryDocument",{"type":415,"tag":559,"props":2123,"children":2124},{"style":583},[2125],{"type":420,"value":763},{"type":415,"tag":559,"props":2127,"children":2128},{"style":583},[2129],{"type":420,"value":872},{"type":415,"tag":559,"props":2131,"children":2132},{"style":792},[2133],{"type":420,"value":2061},{"type":415,"tag":559,"props":2135,"children":2136},{"style":583},[2137],{"type":420,"value":542},{"type":415,"tag":559,"props":2139,"children":2140},{"style":883},[2141],{"type":420,"value":2142},"OpenAsync",{"type":415,"tag":559,"props":2144,"children":2145},{"style":583},[2146],{"type":420,"value":814},{"type":415,"tag":559,"props":2148,"children":2149},{"style":792},[2150],{"type":420,"value":2151},"eventUrl",{"type":415,"tag":559,"props":2153,"children":2154},{"style":583},[2155],{"type":420,"value":696},{"type":415,"tag":559,"props":2157,"children":2158},{"class":561,"line":643},[2159],{"type":415,"tag":559,"props":2160,"children":2161},{"emptyLinePlaceholder":847},[2162],{"type":420,"value":850},{"type":415,"tag":559,"props":2164,"children":2165},{"class":561,"line":660},[2166,2170,2175,2179,2183,2188,2192],{"type":415,"tag":559,"props":2167,"children":2168},{"style":572},[2169],{"type":420,"value":1257},{"type":415,"tag":559,"props":2171,"children":2172},{"style":572},[2173],{"type":420,"value":2174}," twitterSelector",{"type":415,"tag":559,"props":2176,"children":2177},{"style":583},[2178],{"type":420,"value":763},{"type":415,"tag":559,"props":2180,"children":2181},{"style":583},[2182],{"type":420,"value":1434},{"type":415,"tag":559,"props":2184,"children":2185},{"style":822},[2186],{"type":420,"value":2187},"a[href*='twitter.com'], a[href*='https://x.com']",{"type":415,"tag":559,"props":2189,"children":2190},{"style":583},[2191],{"type":420,"value":819},{"type":415,"tag":559,"props":2193,"children":2194},{"style":583},[2195],{"type":420,"value":1509},{"type":415,"tag":559,"props":2197,"children":2198},{"class":561,"line":677},[2199,2203,2208,2212,2216,2220,2225,2229,2234],{"type":415,"tag":559,"props":2200,"children":2201},{"style":572},[2202],{"type":420,"value":1257},{"type":415,"tag":559,"props":2204,"children":2205},{"style":572},[2206],{"type":420,"value":2207}," twitterSocialLink",{"type":415,"tag":559,"props":2209,"children":2210},{"style":583},[2211],{"type":420,"value":763},{"type":415,"tag":559,"props":2213,"children":2214},{"style":792},[2215],{"type":420,"value":2121},{"type":415,"tag":559,"props":2217,"children":2218},{"style":583},[2219],{"type":420,"value":542},{"type":415,"tag":559,"props":2221,"children":2222},{"style":883},[2223],{"type":420,"value":2224},"QuerySelector",{"type":415,"tag":559,"props":2226,"children":2227},{"style":583},[2228],{"type":420,"value":814},{"type":415,"tag":559,"props":2230,"children":2231},{"style":792},[2232],{"type":420,"value":2233},"twitterSelector",{"type":415,"tag":559,"props":2235,"children":2236},{"style":583},[2237],{"type":420,"value":833},{"type":415,"tag":559,"props":2239,"children":2240},{"class":561,"line":690},[2241,2246,2251,2255,2259,2264,2268],{"type":415,"tag":559,"props":2242,"children":2243},{"style":583},[2244],{"type":420,"value":2245},"        ?.",{"type":415,"tag":559,"props":2247,"children":2248},{"style":883},[2249],{"type":420,"value":2250},"GetAttribute",{"type":415,"tag":559,"props":2252,"children":2253},{"style":583},[2254],{"type":420,"value":814},{"type":415,"tag":559,"props":2256,"children":2257},{"style":583},[2258],{"type":420,"value":819},{"type":415,"tag":559,"props":2260,"children":2261},{"style":822},[2262],{"type":420,"value":2263},"href",{"type":415,"tag":559,"props":2265,"children":2266},{"style":583},[2267],{"type":420,"value":819},{"type":415,"tag":559,"props":2269,"children":2270},{"style":583},[2271],{"type":420,"value":696},{"type":415,"tag":559,"props":2273,"children":2274},{"class":561,"line":1089},[2275],{"type":415,"tag":559,"props":2276,"children":2277},{"emptyLinePlaceholder":847},[2278],{"type":420,"value":850},{"type":415,"tag":559,"props":2280,"children":2281},{"class":561,"line":1102},[2282,2286,2290,2294,2299,2303,2308,2313,2318,2322,2327,2331,2335,2339,2344,2348],{"type":415,"tag":559,"props":2283,"children":2284},{"style":745},[2285],{"type":420,"value":1517},{"type":415,"tag":559,"props":2287,"children":2288},{"style":792},[2289],{"type":420,"value":809},{"type":415,"tag":559,"props":2291,"children":2292},{"style":583},[2293],{"type":420,"value":542},{"type":415,"tag":559,"props":2295,"children":2296},{"style":883},[2297],{"type":420,"value":2298},"TryCreate",{"type":415,"tag":559,"props":2300,"children":2301},{"style":583},[2302],{"type":420,"value":814},{"type":415,"tag":559,"props":2304,"children":2305},{"style":792},[2306],{"type":420,"value":2307},"twitterSocialLink",{"type":415,"tag":559,"props":2309,"children":2310},{"style":583},[2311],{"type":420,"value":2312},",",{"type":415,"tag":559,"props":2314,"children":2315},{"style":792},[2316],{"type":420,"value":2317}," UriKind",{"type":415,"tag":559,"props":2319,"children":2320},{"style":583},[2321],{"type":420,"value":542},{"type":415,"tag":559,"props":2323,"children":2324},{"style":792},[2325],{"type":420,"value":2326},"Absolute",{"type":415,"tag":559,"props":2328,"children":2329},{"style":583},[2330],{"type":420,"value":2312},{"type":415,"tag":559,"props":2332,"children":2333},{"style":566},[2334],{"type":420,"value":1454},{"type":415,"tag":559,"props":2336,"children":2337},{"style":572},[2338],{"type":420,"value":753},{"type":415,"tag":559,"props":2340,"children":2341},{"style":572},[2342],{"type":420,"value":2343}," twitterProfileUri",{"type":415,"tag":559,"props":2345,"children":2346},{"style":583},[2347],{"type":420,"value":1468},{"type":415,"tag":559,"props":2349,"children":2350},{"style":583},[2351],{"type":420,"value":2352}," ?\n",{"type":415,"tag":559,"props":2354,"children":2355},{"class":561,"line":1110},[2356],{"type":415,"tag":559,"props":2357,"children":2359},{"style":2358},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[2360],{"type":420,"value":2361},"        // Normalize X/Twitter profile URL by removing query parameters and fragments\n",{"type":415,"tag":559,"props":2363,"children":2364},{"class":561,"line":1118},[2365,2370,2375,2379,2384,2388,2393,2398,2402,2406,2411,2416,2420,2424,2429,2433,2438],{"type":415,"tag":559,"props":2366,"children":2367},{"style":583},[2368],{"type":420,"value":2369},"        $\"{",{"type":415,"tag":559,"props":2371,"children":2372},{"style":792},[2373],{"type":420,"value":2374},"twitterProfileUri",{"type":415,"tag":559,"props":2376,"children":2377},{"style":583},[2378],{"type":420,"value":542},{"type":415,"tag":559,"props":2380,"children":2381},{"style":792},[2382],{"type":420,"value":2383},"Scheme",{"type":415,"tag":559,"props":2385,"children":2386},{"style":583},[2387],{"type":420,"value":1580},{"type":415,"tag":559,"props":2389,"children":2390},{"style":822},[2391],{"type":420,"value":2392},"://",{"type":415,"tag":559,"props":2394,"children":2395},{"style":583},[2396],{"type":420,"value":2397},"{",{"type":415,"tag":559,"props":2399,"children":2400},{"style":792},[2401],{"type":420,"value":2374},{"type":415,"tag":559,"props":2403,"children":2404},{"style":583},[2405],{"type":420,"value":542},{"type":415,"tag":559,"props":2407,"children":2408},{"style":792},[2409],{"type":420,"value":2410},"Host",{"type":415,"tag":559,"props":2412,"children":2413},{"style":583},[2414],{"type":420,"value":2415},"}{",{"type":415,"tag":559,"props":2417,"children":2418},{"style":792},[2419],{"type":420,"value":2374},{"type":415,"tag":559,"props":2421,"children":2422},{"style":583},[2423],{"type":420,"value":542},{"type":415,"tag":559,"props":2425,"children":2426},{"style":792},[2427],{"type":420,"value":2428},"AbsolutePath",{"type":415,"tag":559,"props":2430,"children":2431},{"style":583},[2432],{"type":420,"value":1602},{"type":415,"tag":559,"props":2434,"children":2435},{"style":583},[2436],{"type":420,"value":2437}," :",{"type":415,"tag":559,"props":2439,"children":2440},{"style":583},[2441],{"type":420,"value":2442}," null;\n",{"type":415,"tag":559,"props":2444,"children":2445},{"class":561,"line":1171},[2446],{"type":415,"tag":559,"props":2447,"children":2448},{"style":583},[2449],{"type":420,"value":1801},{"type":415,"tag":1178,"props":2451,"children":2452},{"icon":1180},[2453],{"type":415,"tag":416,"props":2454,"children":2455},{},[2456,2458,2464],{"type":420,"value":2457},"As the DOM API exposed follows the W3C specifications, it is very convenient. If you can retrieve something with ",{"type":415,"tag":555,"props":2459,"children":2461},{"className":2460},[],[2462],{"type":420,"value":2463},"document.querySelector",{"type":420,"value":2465}," in your browser console, you will be able to retrieve it using the same selector in your AngleSharp code.",{"type":415,"tag":422,"props":2467,"children":2469},{"id":2468},"submit-an-event",[2470],{"type":420,"value":2471},"Submit An Event",{"type":415,"tag":416,"props":2473,"children":2474},{},[2475,2477,2483],{"type":420,"value":2476},"Submitting forms is also possible using AngleSharp. We first have to retrieve the form element in the HTML document using the query sector ",{"type":415,"tag":555,"props":2478,"children":2480},{"className":2479},[],[2481],{"type":420,"value":2482},"form[action=\"/addevent/\"]",{"type":420,"value":2484},". Then we can directly submit the event.",{"type":415,"tag":549,"props":2486,"children":2488},{"className":551,"code":2487,"language":326,"meta":401,"style":401},"async Task SubmitEventToTechCommunityCalendar(TechCommunityCalendarEvent techCommunityCalendarEvent)\n{\n    var context = BrowsingContext.New(Configuration.Default.WithDefaultLoader());\n    var queryDocument = await context.OpenAsync(\"https://techcommunitycalendar.com/addevent/\");\n    var form = queryDocument.QuerySelector\u003CIHtmlFormElement>(\"\"\"form[action=\"/addevent/\"]\"\"\");\n    if (form is not null)\n    {\n        var response = await form.SubmitAsync(techCommunityCalendarEvent);\n    }\n}\n",[2489],{"type":415,"tag":555,"props":2490,"children":2491},{"__ignoreMap":401},[2492,2525,2532,2587,2639,2698,2730,2738,2785,2793],{"type":415,"tag":559,"props":2493,"children":2494},{"class":561,"line":562},[2495,2499,2503,2508,2512,2516,2521],{"type":415,"tag":559,"props":2496,"children":2497},{"style":566},[2498],{"type":420,"value":2001},{"type":415,"tag":559,"props":2500,"children":2501},{"style":572},[2502],{"type":420,"value":2006},{"type":415,"tag":559,"props":2504,"children":2505},{"style":883},[2506],{"type":420,"value":2507}," SubmitEventToTechCommunityCalendar",{"type":415,"tag":559,"props":2509,"children":2510},{"style":583},[2511],{"type":420,"value":814},{"type":415,"tag":559,"props":2513,"children":2514},{"style":572},[2515],{"type":420,"value":1204},{"type":415,"tag":559,"props":2517,"children":2518},{"style":572},[2519],{"type":420,"value":2520}," techCommunityCalendarEvent",{"type":415,"tag":559,"props":2522,"children":2523},{"style":583},[2524],{"type":420,"value":833},{"type":415,"tag":559,"props":2526,"children":2527},{"class":561,"line":589},[2528],{"type":415,"tag":559,"props":2529,"children":2530},{"style":583},[2531],{"type":420,"value":786},{"type":415,"tag":559,"props":2533,"children":2534},{"class":561,"line":608},[2535,2539,2543,2547,2551,2555,2559,2563,2567,2571,2575,2579,2583],{"type":415,"tag":559,"props":2536,"children":2537},{"style":572},[2538],{"type":420,"value":1257},{"type":415,"tag":559,"props":2540,"children":2541},{"style":572},[2542],{"type":420,"value":2061},{"type":415,"tag":559,"props":2544,"children":2545},{"style":583},[2546],{"type":420,"value":763},{"type":415,"tag":559,"props":2548,"children":2549},{"style":792},[2550],{"type":420,"value":2070},{"type":415,"tag":559,"props":2552,"children":2553},{"style":583},[2554],{"type":420,"value":542},{"type":415,"tag":559,"props":2556,"children":2557},{"style":883},[2558],{"type":420,"value":2079},{"type":415,"tag":559,"props":2560,"children":2561},{"style":583},[2562],{"type":420,"value":814},{"type":415,"tag":559,"props":2564,"children":2565},{"style":792},[2566],{"type":420,"value":263},{"type":415,"tag":559,"props":2568,"children":2569},{"style":583},[2570],{"type":420,"value":542},{"type":415,"tag":559,"props":2572,"children":2573},{"style":792},[2574],{"type":420,"value":2096},{"type":415,"tag":559,"props":2576,"children":2577},{"style":583},[2578],{"type":420,"value":542},{"type":415,"tag":559,"props":2580,"children":2581},{"style":883},[2582],{"type":420,"value":2105},{"type":415,"tag":559,"props":2584,"children":2585},{"style":583},[2586],{"type":420,"value":1312},{"type":415,"tag":559,"props":2588,"children":2589},{"class":561,"line":626},[2590,2594,2598,2602,2606,2610,2614,2618,2622,2626,2631,2635],{"type":415,"tag":559,"props":2591,"children":2592},{"style":572},[2593],{"type":420,"value":1257},{"type":415,"tag":559,"props":2595,"children":2596},{"style":572},[2597],{"type":420,"value":2121},{"type":415,"tag":559,"props":2599,"children":2600},{"style":583},[2601],{"type":420,"value":763},{"type":415,"tag":559,"props":2603,"children":2604},{"style":583},[2605],{"type":420,"value":872},{"type":415,"tag":559,"props":2607,"children":2608},{"style":792},[2609],{"type":420,"value":2061},{"type":415,"tag":559,"props":2611,"children":2612},{"style":583},[2613],{"type":420,"value":542},{"type":415,"tag":559,"props":2615,"children":2616},{"style":883},[2617],{"type":420,"value":2142},{"type":415,"tag":559,"props":2619,"children":2620},{"style":583},[2621],{"type":420,"value":814},{"type":415,"tag":559,"props":2623,"children":2624},{"style":583},[2625],{"type":420,"value":819},{"type":415,"tag":559,"props":2627,"children":2628},{"style":822},[2629],{"type":420,"value":2630},"https://techcommunitycalendar.com/addevent/",{"type":415,"tag":559,"props":2632,"children":2633},{"style":583},[2634],{"type":420,"value":819},{"type":415,"tag":559,"props":2636,"children":2637},{"style":583},[2638],{"type":420,"value":696},{"type":415,"tag":559,"props":2640,"children":2641},{"class":561,"line":643},[2642,2646,2651,2655,2659,2663,2667,2671,2676,2681,2686,2690,2694],{"type":415,"tag":559,"props":2643,"children":2644},{"style":572},[2645],{"type":420,"value":1257},{"type":415,"tag":559,"props":2647,"children":2648},{"style":572},[2649],{"type":420,"value":2650}," form",{"type":415,"tag":559,"props":2652,"children":2653},{"style":583},[2654],{"type":420,"value":763},{"type":415,"tag":559,"props":2656,"children":2657},{"style":792},[2658],{"type":420,"value":2121},{"type":415,"tag":559,"props":2660,"children":2661},{"style":583},[2662],{"type":420,"value":542},{"type":415,"tag":559,"props":2664,"children":2665},{"style":883},[2666],{"type":420,"value":2224},{"type":415,"tag":559,"props":2668,"children":2669},{"style":583},[2670],{"type":420,"value":891},{"type":415,"tag":559,"props":2672,"children":2673},{"style":572},[2674],{"type":420,"value":2675},"IHtmlFormElement",{"type":415,"tag":559,"props":2677,"children":2678},{"style":583},[2679],{"type":420,"value":2680},">(",{"type":415,"tag":559,"props":2682,"children":2683},{"style":583},[2684],{"type":420,"value":2685},"\"\"\"",{"type":415,"tag":559,"props":2687,"children":2688},{"style":822},[2689],{"type":420,"value":2482},{"type":415,"tag":559,"props":2691,"children":2692},{"style":583},[2693],{"type":420,"value":2685},{"type":415,"tag":559,"props":2695,"children":2696},{"style":583},[2697],{"type":420,"value":696},{"type":415,"tag":559,"props":2699,"children":2700},{"class":561,"line":660},[2701,2706,2711,2716,2720,2725],{"type":415,"tag":559,"props":2702,"children":2703},{"style":745},[2704],{"type":420,"value":2705},"    if",{"type":415,"tag":559,"props":2707,"children":2708},{"style":583},[2709],{"type":420,"value":2710}," (",{"type":415,"tag":559,"props":2712,"children":2713},{"style":792},[2714],{"type":420,"value":2715},"form ",{"type":415,"tag":559,"props":2717,"children":2718},{"style":583},[2719],{"type":420,"value":1693},{"type":415,"tag":559,"props":2721,"children":2722},{"style":583},[2723],{"type":420,"value":2724}," not",{"type":415,"tag":559,"props":2726,"children":2727},{"style":583},[2728],{"type":420,"value":2729}," null)\n",{"type":415,"tag":559,"props":2731,"children":2732},{"class":561,"line":677},[2733],{"type":415,"tag":559,"props":2734,"children":2735},{"style":583},[2736],{"type":420,"value":2737},"    {\n",{"type":415,"tag":559,"props":2739,"children":2740},{"class":561,"line":690},[2741,2746,2751,2755,2759,2763,2767,2772,2776,2781],{"type":415,"tag":559,"props":2742,"children":2743},{"style":572},[2744],{"type":420,"value":2745},"        var",{"type":415,"tag":559,"props":2747,"children":2748},{"style":572},[2749],{"type":420,"value":2750}," response",{"type":415,"tag":559,"props":2752,"children":2753},{"style":583},[2754],{"type":420,"value":763},{"type":415,"tag":559,"props":2756,"children":2757},{"style":583},[2758],{"type":420,"value":872},{"type":415,"tag":559,"props":2760,"children":2761},{"style":792},[2762],{"type":420,"value":2650},{"type":415,"tag":559,"props":2764,"children":2765},{"style":583},[2766],{"type":420,"value":542},{"type":415,"tag":559,"props":2768,"children":2769},{"style":883},[2770],{"type":420,"value":2771},"SubmitAsync",{"type":415,"tag":559,"props":2773,"children":2774},{"style":583},[2775],{"type":420,"value":814},{"type":415,"tag":559,"props":2777,"children":2778},{"style":792},[2779],{"type":420,"value":2780},"techCommunityCalendarEvent",{"type":415,"tag":559,"props":2782,"children":2783},{"style":583},[2784],{"type":420,"value":696},{"type":415,"tag":559,"props":2786,"children":2787},{"class":561,"line":1089},[2788],{"type":415,"tag":559,"props":2789,"children":2790},{"style":583},[2791],{"type":420,"value":2792},"    }\n",{"type":415,"tag":559,"props":2794,"children":2795},{"class":561,"line":1102},[2796],{"type":415,"tag":559,"props":2797,"children":2798},{"style":583},[2799],{"type":420,"value":1801},{"type":415,"tag":1178,"props":2801,"children":2802},{"icon":1180},[2803],{"type":415,"tag":416,"props":2804,"children":2805},{},[2806,2808,2813],{"type":420,"value":2807},"I intentionally named the properties in the ",{"type":415,"tag":555,"props":2809,"children":2811},{"className":2810},[],[2812],{"type":420,"value":1204},{"type":420,"value":2814}," record with the same names as the fields in the form. This way, I can directly submit the event without any transformation. Otherwise, I would have to convert the event to an anonymous object with the correct names.",{"type":415,"tag":422,"props":2816,"children":2818},{"id":2817},"the-full-program",[2819],{"type":420,"value":2820},"The Full Program",{"type":415,"tag":416,"props":2822,"children":2823},{},[2824,2826,2832],{"type":420,"value":2825},"Here is the content of the complete ",{"type":415,"tag":555,"props":2827,"children":2829},{"className":2828},[],[2830],{"type":420,"value":2831},"Program.cs",{"type":420,"value":2833}," file.",{"type":415,"tag":549,"props":2835,"children":2837},{"className":551,"code":2836,"filename":2831,"language":326,"meta":401,"style":401},"using System.Net.Http.Json;\nusing AngleSharp;\nusing AngleSharp.Dom;\nusing AngleSharp.Html.Dom;\n\nusing var httpClient = new HttpClient()\n{\n    BaseAddress = new Uri(\"https://developers.events/\")\n};\n\nvar events = await httpClient.GetFromJsonAsync\u003CDeveloperEvent[]>(\"all-events.json\");\nvar upcomingEvents =  events\n    .Where(e => e.Date.FirstOrDefault() > DateTimeOffset.UtcNow.ToUnixTimeMilliseconds())\n    .Select(ConvertToTechEvent)\n    .ToList();\n\nforeach (var upcomingEvent in upcomingEvents)\n{\n    upcomingEvent.TwitterHandle = await RetrieveEventTwitterProfileLink(upcomingEvent.Url);\n    await SubmitEventToTechCommunityCalendar(upcomingEvent);\n}\n\nasync Task\u003Cstring?> RetrieveEventTwitterProfileLink(string eventUrl)\n{\n    var context = BrowsingContext.New(Configuration.Default.WithDefaultLoader());\n    var queryDocument = await context.OpenAsync(eventUrl);\n\n    var twitterSelector = \"a[href*='twitter.com'], a[href*='https://x.com']\";\n    var twitterSocialLink = queryDocument.QuerySelector(twitterSelector)\n        ?.GetAttribute(\"href\");\n\n    return Uri.TryCreate(twitterSocialLink, UriKind.Absolute, out var twitterProfileUri) ?\n        // Normalize X/Twitter profile URL by removing query parameters and fragments\n        $\"{twitterProfileUri.Scheme}://{twitterProfileUri.Host}{twitterProfileUri.AbsolutePath}\" : null;\n}\n\nasync Task SubmitEventToTechCommunityCalendar(TechCommunityCalendarEvent techCommunityCalendarEvent)\n{\n    var context = BrowsingContext.New(Configuration.Default.WithDefaultLoader());\n    var queryDocument = await context.OpenAsync(\"https://techcommunitycalendar.com/addevent/\");\n    var form = queryDocument.QuerySelector\u003CIHtmlFormElement>(\"\"\"form[action=\"/addevent/\"]\"\"\");\n    if (form is not null)\n    {\n        var response = await form.SubmitAsync(techCommunityCalendarEvent);\n    }\n}\n\nTechCommunityCalendarEvent ConvertToTechEvent(DeveloperEvent developerEvent)\n{\n    var startingDate = DateTimeOffset.FromUnixTimeMilliseconds(developerEvent.Date.First());\n    var endingDate = DateTimeOffset.FromUnixTimeMilliseconds(developerEvent.Date.Last());\n    var eventNameContainsYear = int.TryParse(developerEvent.Name.Split(\" \").LastOrDefault(), out var year) \n                                && year == startingDate.Year;\n    return new TechCommunityCalendarEvent(\n        eventNameContainsYear ? developerEvent.Name : $\"{developerEvent.Name} {startingDate.Year}\",\n        developerEvent.Hyperlink,\n        startingDate,\n        endingDate,\n        EventType.Conference,\n        developerEvent.Country is \"Online\" ? EventFormat.Virtual : EventFormat.In_Person,\n        developerEvent.Country,\n        developerEvent.City\n    );\n}\n\npublic record DeveloperEvent(\n    string Name,\n    long[] Date,\n    string Hyperlink,\n    string Location,\n    string City,\n    string Country\n);\n\npublic record TechCommunityCalendarEvent(\n    string Name,\n    string Url,\n    DateTimeOffset StartDate,\n    DateTimeOffset EndDate,\n    EventType EventType,\n    EventFormat EventFormat,\n    string Country,\n    string City\n)\n{\n    public string? TwitterHandle { get; set; }\n};\n\npublic enum EventFormat\n{\n    Unknown = 1,\n    Virtual = 2,\n    In_Person = 3,\n    Hybrid = 4\n}\n\npublic enum EventType\n{\n    Any = 0,\n    Unknown = 1,\n    Conference = 2,\n    Meetup = 3,\n    Hackathon = 4,\n    Call_For_Papers = 5,\n    Website = 6,\n}\n",[2838],{"type":415,"tag":555,"props":2839,"children":2840},{"__ignoreMap":401},[2841,2885,2901,2925,2957,2964,2995,3002,3041,3048,3055,3114,3133,3208,3231,3246,3253,3287,3295,3347,3372,3380,3388,3432,3440,3496,3540,3548,3580,3620,3652,3660,3728,3736,3808,3816,3824,3856,3864,3920,3972,4028,4056,4064,4108,4116,4124,4132,4160,4168,4224,4280,4372,4404,4424,4496,4516,4528,4540,4560,4628,4648,4664,4672,4680,4688,4708,4724,4740,4756,4772,4788,4800,4808,4816,4836,4852,4868,4884,4900,4916,4932,4948,4960,4968,4976,5020,5028,5036,5054,5062,5084,5106,5128,5146,5154,5162,5179,5187,5209,5229,5250,5271,5293,5315,5337],{"type":415,"tag":559,"props":2842,"children":2843},{"class":561,"line":562},[2844,2849,2854,2858,2863,2867,2872,2876,2881],{"type":415,"tag":559,"props":2845,"children":2847},{"style":2846},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[2848],{"type":420,"value":748},{"type":415,"tag":559,"props":2850,"children":2851},{"style":792},[2852],{"type":420,"value":2853}," System",{"type":415,"tag":559,"props":2855,"children":2856},{"style":583},[2857],{"type":420,"value":542},{"type":415,"tag":559,"props":2859,"children":2860},{"style":792},[2861],{"type":420,"value":2862},"Net",{"type":415,"tag":559,"props":2864,"children":2865},{"style":583},[2866],{"type":420,"value":542},{"type":415,"tag":559,"props":2868,"children":2869},{"style":792},[2870],{"type":420,"value":2871},"Http",{"type":415,"tag":559,"props":2873,"children":2874},{"style":583},[2875],{"type":420,"value":542},{"type":415,"tag":559,"props":2877,"children":2878},{"style":792},[2879],{"type":420,"value":2880},"Json",{"type":415,"tag":559,"props":2882,"children":2883},{"style":583},[2884],{"type":420,"value":1509},{"type":415,"tag":559,"props":2886,"children":2887},{"class":561,"line":589},[2888,2892,2897],{"type":415,"tag":559,"props":2889,"children":2890},{"style":2846},[2891],{"type":420,"value":748},{"type":415,"tag":559,"props":2893,"children":2894},{"style":792},[2895],{"type":420,"value":2896}," AngleSharp",{"type":415,"tag":559,"props":2898,"children":2899},{"style":583},[2900],{"type":420,"value":1509},{"type":415,"tag":559,"props":2902,"children":2903},{"class":561,"line":608},[2904,2908,2912,2916,2921],{"type":415,"tag":559,"props":2905,"children":2906},{"style":2846},[2907],{"type":420,"value":748},{"type":415,"tag":559,"props":2909,"children":2910},{"style":792},[2911],{"type":420,"value":2896},{"type":415,"tag":559,"props":2913,"children":2914},{"style":583},[2915],{"type":420,"value":542},{"type":415,"tag":559,"props":2917,"children":2918},{"style":792},[2919],{"type":420,"value":2920},"Dom",{"type":415,"tag":559,"props":2922,"children":2923},{"style":583},[2924],{"type":420,"value":1509},{"type":415,"tag":559,"props":2926,"children":2927},{"class":561,"line":626},[2928,2932,2936,2940,2945,2949,2953],{"type":415,"tag":559,"props":2929,"children":2930},{"style":2846},[2931],{"type":420,"value":748},{"type":415,"tag":559,"props":2933,"children":2934},{"style":792},[2935],{"type":420,"value":2896},{"type":415,"tag":559,"props":2937,"children":2938},{"style":583},[2939],{"type":420,"value":542},{"type":415,"tag":559,"props":2941,"children":2942},{"style":792},[2943],{"type":420,"value":2944},"Html",{"type":415,"tag":559,"props":2946,"children":2947},{"style":583},[2948],{"type":420,"value":542},{"type":415,"tag":559,"props":2950,"children":2951},{"style":792},[2952],{"type":420,"value":2920},{"type":415,"tag":559,"props":2954,"children":2955},{"style":583},[2956],{"type":420,"value":1509},{"type":415,"tag":559,"props":2958,"children":2959},{"class":561,"line":643},[2960],{"type":415,"tag":559,"props":2961,"children":2962},{"emptyLinePlaceholder":847},[2963],{"type":420,"value":850},{"type":415,"tag":559,"props":2965,"children":2966},{"class":561,"line":660},[2967,2971,2975,2979,2983,2987,2991],{"type":415,"tag":559,"props":2968,"children":2969},{"style":745},[2970],{"type":420,"value":748},{"type":415,"tag":559,"props":2972,"children":2973},{"style":572},[2974],{"type":420,"value":753},{"type":415,"tag":559,"props":2976,"children":2977},{"style":572},[2978],{"type":420,"value":758},{"type":415,"tag":559,"props":2980,"children":2981},{"style":583},[2982],{"type":420,"value":763},{"type":415,"tag":559,"props":2984,"children":2985},{"style":583},[2986],{"type":420,"value":768},{"type":415,"tag":559,"props":2988,"children":2989},{"style":572},[2990],{"type":420,"value":773},{"type":415,"tag":559,"props":2992,"children":2993},{"style":583},[2994],{"type":420,"value":778},{"type":415,"tag":559,"props":2996,"children":2997},{"class":561,"line":677},[2998],{"type":415,"tag":559,"props":2999,"children":3000},{"style":583},[3001],{"type":420,"value":786},{"type":415,"tag":559,"props":3003,"children":3004},{"class":561,"line":690},[3005,3009,3013,3017,3021,3025,3029,3033,3037],{"type":415,"tag":559,"props":3006,"children":3007},{"style":792},[3008],{"type":420,"value":795},{"type":415,"tag":559,"props":3010,"children":3011},{"style":583},[3012],{"type":420,"value":800},{"type":415,"tag":559,"props":3014,"children":3015},{"style":583},[3016],{"type":420,"value":768},{"type":415,"tag":559,"props":3018,"children":3019},{"style":572},[3020],{"type":420,"value":809},{"type":415,"tag":559,"props":3022,"children":3023},{"style":583},[3024],{"type":420,"value":814},{"type":415,"tag":559,"props":3026,"children":3027},{"style":583},[3028],{"type":420,"value":819},{"type":415,"tag":559,"props":3030,"children":3031},{"style":822},[3032],{"type":420,"value":446},{"type":415,"tag":559,"props":3034,"children":3035},{"style":583},[3036],{"type":420,"value":819},{"type":415,"tag":559,"props":3038,"children":3039},{"style":583},[3040],{"type":420,"value":833},{"type":415,"tag":559,"props":3042,"children":3043},{"class":561,"line":1089},[3044],{"type":415,"tag":559,"props":3045,"children":3046},{"style":583},[3047],{"type":420,"value":841},{"type":415,"tag":559,"props":3049,"children":3050},{"class":561,"line":1102},[3051],{"type":415,"tag":559,"props":3052,"children":3053},{"emptyLinePlaceholder":847},[3054],{"type":420,"value":850},{"type":415,"tag":559,"props":3056,"children":3057},{"class":561,"line":1110},[3058,3062,3066,3070,3074,3078,3082,3086,3090,3094,3098,3102,3106,3110],{"type":415,"tag":559,"props":3059,"children":3060},{"style":572},[3061],{"type":420,"value":858},{"type":415,"tag":559,"props":3063,"children":3064},{"style":572},[3065],{"type":420,"value":863},{"type":415,"tag":559,"props":3067,"children":3068},{"style":583},[3069],{"type":420,"value":763},{"type":415,"tag":559,"props":3071,"children":3072},{"style":583},[3073],{"type":420,"value":872},{"type":415,"tag":559,"props":3075,"children":3076},{"style":792},[3077],{"type":420,"value":758},{"type":415,"tag":559,"props":3079,"children":3080},{"style":583},[3081],{"type":420,"value":542},{"type":415,"tag":559,"props":3083,"children":3084},{"style":883},[3085],{"type":420,"value":886},{"type":415,"tag":559,"props":3087,"children":3088},{"style":583},[3089],{"type":420,"value":891},{"type":415,"tag":559,"props":3091,"children":3092},{"style":572},[3093],{"type":420,"value":896},{"type":415,"tag":559,"props":3095,"children":3096},{"style":583},[3097],{"type":420,"value":901},{"type":415,"tag":559,"props":3099,"children":3100},{"style":583},[3101],{"type":420,"value":819},{"type":415,"tag":559,"props":3103,"children":3104},{"style":822},[3105],{"type":420,"value":910},{"type":415,"tag":559,"props":3107,"children":3108},{"style":583},[3109],{"type":420,"value":819},{"type":415,"tag":559,"props":3111,"children":3112},{"style":583},[3113],{"type":420,"value":696},{"type":415,"tag":559,"props":3115,"children":3116},{"class":561,"line":1118},[3117,3121,3125,3129],{"type":415,"tag":559,"props":3118,"children":3119},{"style":572},[3120],{"type":420,"value":858},{"type":415,"tag":559,"props":3122,"children":3123},{"style":572},[3124],{"type":420,"value":1825},{"type":415,"tag":559,"props":3126,"children":3127},{"style":583},[3128],{"type":420,"value":763},{"type":415,"tag":559,"props":3130,"children":3131},{"style":792},[3132],{"type":420,"value":1834},{"type":415,"tag":559,"props":3134,"children":3135},{"class":561,"line":1171},[3136,3140,3144,3148,3152,3156,3160,3164,3168,3172,3176,3180,3184,3188,3192,3196,3200,3204],{"type":415,"tag":559,"props":3137,"children":3138},{"style":583},[3139],{"type":420,"value":1842},{"type":415,"tag":559,"props":3141,"children":3142},{"style":883},[3143],{"type":420,"value":1847},{"type":415,"tag":559,"props":3145,"children":3146},{"style":583},[3147],{"type":420,"value":814},{"type":415,"tag":559,"props":3149,"children":3150},{"style":572},[3151],{"type":420,"value":1856},{"type":415,"tag":559,"props":3153,"children":3154},{"style":583},[3155],{"type":420,"value":1861},{"type":415,"tag":559,"props":3157,"children":3158},{"style":792},[3159],{"type":420,"value":1866},{"type":415,"tag":559,"props":3161,"children":3162},{"style":583},[3163],{"type":420,"value":542},{"type":415,"tag":559,"props":3165,"children":3166},{"style":792},[3167],{"type":420,"value":1298},{"type":415,"tag":559,"props":3169,"children":3170},{"style":583},[3171],{"type":420,"value":542},{"type":415,"tag":559,"props":3173,"children":3174},{"style":883},[3175],{"type":420,"value":1883},{"type":415,"tag":559,"props":3177,"children":3178},{"style":583},[3179],{"type":420,"value":1888},{"type":415,"tag":559,"props":3181,"children":3182},{"style":583},[3183],{"type":420,"value":1893},{"type":415,"tag":559,"props":3185,"children":3186},{"style":792},[3187],{"type":420,"value":1271},{"type":415,"tag":559,"props":3189,"children":3190},{"style":583},[3191],{"type":420,"value":542},{"type":415,"tag":559,"props":3193,"children":3194},{"style":792},[3195],{"type":420,"value":1906},{"type":415,"tag":559,"props":3197,"children":3198},{"style":583},[3199],{"type":420,"value":542},{"type":415,"tag":559,"props":3201,"children":3202},{"style":883},[3203],{"type":420,"value":1915},{"type":415,"tag":559,"props":3205,"children":3206},{"style":583},[3207],{"type":420,"value":1920},{"type":415,"tag":559,"props":3209,"children":3210},{"class":561,"line":1748},[3211,3215,3219,3223,3227],{"type":415,"tag":559,"props":3212,"children":3213},{"style":583},[3214],{"type":420,"value":1842},{"type":415,"tag":559,"props":3216,"children":3217},{"style":883},[3218],{"type":420,"value":1932},{"type":415,"tag":559,"props":3220,"children":3221},{"style":583},[3222],{"type":420,"value":814},{"type":415,"tag":559,"props":3224,"children":3225},{"style":792},[3226],{"type":420,"value":1941},{"type":415,"tag":559,"props":3228,"children":3229},{"style":583},[3230],{"type":420,"value":833},{"type":415,"tag":559,"props":3232,"children":3233},{"class":561,"line":1769},[3234,3238,3242],{"type":415,"tag":559,"props":3235,"children":3236},{"style":583},[3237],{"type":420,"value":1842},{"type":415,"tag":559,"props":3239,"children":3240},{"style":883},[3241],{"type":420,"value":1957},{"type":415,"tag":559,"props":3243,"children":3244},{"style":583},[3245],{"type":420,"value":1962},{"type":415,"tag":559,"props":3247,"children":3248},{"class":561,"line":1786},[3249],{"type":415,"tag":559,"props":3250,"children":3251},{"emptyLinePlaceholder":847},[3252],{"type":420,"value":850},{"type":415,"tag":559,"props":3254,"children":3255},{"class":561,"line":1795},[3256,3261,3265,3269,3274,3279,3283],{"type":415,"tag":559,"props":3257,"children":3258},{"style":745},[3259],{"type":420,"value":3260},"foreach",{"type":415,"tag":559,"props":3262,"children":3263},{"style":583},[3264],{"type":420,"value":2710},{"type":415,"tag":559,"props":3266,"children":3267},{"style":572},[3268],{"type":420,"value":858},{"type":415,"tag":559,"props":3270,"children":3271},{"style":572},[3272],{"type":420,"value":3273}," upcomingEvent",{"type":415,"tag":559,"props":3275,"children":3276},{"style":745},[3277],{"type":420,"value":3278}," in",{"type":415,"tag":559,"props":3280,"children":3281},{"style":792},[3282],{"type":420,"value":1825},{"type":415,"tag":559,"props":3284,"children":3285},{"style":583},[3286],{"type":420,"value":833},{"type":415,"tag":559,"props":3288,"children":3290},{"class":561,"line":3289},18,[3291],{"type":415,"tag":559,"props":3292,"children":3293},{"style":583},[3294],{"type":420,"value":786},{"type":415,"tag":559,"props":3296,"children":3298},{"class":561,"line":3297},19,[3299,3304,3308,3313,3317,3321,3325,3329,3334,3338,3343],{"type":415,"tag":559,"props":3300,"children":3301},{"style":792},[3302],{"type":420,"value":3303},"    upcomingEvent",{"type":415,"tag":559,"props":3305,"children":3306},{"style":583},[3307],{"type":420,"value":542},{"type":415,"tag":559,"props":3309,"children":3310},{"style":792},[3311],{"type":420,"value":3312},"TwitterHandle ",{"type":415,"tag":559,"props":3314,"children":3315},{"style":583},[3316],{"type":420,"value":800},{"type":415,"tag":559,"props":3318,"children":3319},{"style":583},[3320],{"type":420,"value":872},{"type":415,"tag":559,"props":3322,"children":3323},{"style":883},[3324],{"type":420,"value":2025},{"type":415,"tag":559,"props":3326,"children":3327},{"style":583},[3328],{"type":420,"value":814},{"type":415,"tag":559,"props":3330,"children":3331},{"style":792},[3332],{"type":420,"value":3333},"upcomingEvent",{"type":415,"tag":559,"props":3335,"children":3336},{"style":583},[3337],{"type":420,"value":542},{"type":415,"tag":559,"props":3339,"children":3340},{"style":792},[3341],{"type":420,"value":3342},"Url",{"type":415,"tag":559,"props":3344,"children":3345},{"style":583},[3346],{"type":420,"value":696},{"type":415,"tag":559,"props":3348,"children":3350},{"class":561,"line":3349},20,[3351,3356,3360,3364,3368],{"type":415,"tag":559,"props":3352,"children":3353},{"style":583},[3354],{"type":420,"value":3355},"    await",{"type":415,"tag":559,"props":3357,"children":3358},{"style":883},[3359],{"type":420,"value":2507},{"type":415,"tag":559,"props":3361,"children":3362},{"style":583},[3363],{"type":420,"value":814},{"type":415,"tag":559,"props":3365,"children":3366},{"style":792},[3367],{"type":420,"value":3333},{"type":415,"tag":559,"props":3369,"children":3370},{"style":583},[3371],{"type":420,"value":696},{"type":415,"tag":559,"props":3373,"children":3375},{"class":561,"line":3374},21,[3376],{"type":415,"tag":559,"props":3377,"children":3378},{"style":583},[3379],{"type":420,"value":1801},{"type":415,"tag":559,"props":3381,"children":3383},{"class":561,"line":3382},22,[3384],{"type":415,"tag":559,"props":3385,"children":3386},{"emptyLinePlaceholder":847},[3387],{"type":420,"value":850},{"type":415,"tag":559,"props":3389,"children":3391},{"class":561,"line":3390},23,[3392,3396,3400,3404,3408,3412,3416,3420,3424,3428],{"type":415,"tag":559,"props":3393,"children":3394},{"style":566},[3395],{"type":420,"value":2001},{"type":415,"tag":559,"props":3397,"children":3398},{"style":572},[3399],{"type":420,"value":2006},{"type":415,"tag":559,"props":3401,"children":3402},{"style":583},[3403],{"type":420,"value":891},{"type":415,"tag":559,"props":3405,"children":3406},{"style":583},[3407],{"type":420,"value":2015},{"type":415,"tag":559,"props":3409,"children":3410},{"style":583},[3411],{"type":420,"value":2020},{"type":415,"tag":559,"props":3413,"children":3414},{"style":883},[3415],{"type":420,"value":2025},{"type":415,"tag":559,"props":3417,"children":3418},{"style":583},[3419],{"type":420,"value":814},{"type":415,"tag":559,"props":3421,"children":3422},{"style":583},[3423],{"type":420,"value":2015},{"type":415,"tag":559,"props":3425,"children":3426},{"style":572},[3427],{"type":420,"value":2038},{"type":415,"tag":559,"props":3429,"children":3430},{"style":583},[3431],{"type":420,"value":833},{"type":415,"tag":559,"props":3433,"children":3435},{"class":561,"line":3434},24,[3436],{"type":415,"tag":559,"props":3437,"children":3438},{"style":583},[3439],{"type":420,"value":786},{"type":415,"tag":559,"props":3441,"children":3443},{"class":561,"line":3442},25,[3444,3448,3452,3456,3460,3464,3468,3472,3476,3480,3484,3488,3492],{"type":415,"tag":559,"props":3445,"children":3446},{"style":572},[3447],{"type":420,"value":1257},{"type":415,"tag":559,"props":3449,"children":3450},{"style":572},[3451],{"type":420,"value":2061},{"type":415,"tag":559,"props":3453,"children":3454},{"style":583},[3455],{"type":420,"value":763},{"type":415,"tag":559,"props":3457,"children":3458},{"style":792},[3459],{"type":420,"value":2070},{"type":415,"tag":559,"props":3461,"children":3462},{"style":583},[3463],{"type":420,"value":542},{"type":415,"tag":559,"props":3465,"children":3466},{"style":883},[3467],{"type":420,"value":2079},{"type":415,"tag":559,"props":3469,"children":3470},{"style":583},[3471],{"type":420,"value":814},{"type":415,"tag":559,"props":3473,"children":3474},{"style":792},[3475],{"type":420,"value":263},{"type":415,"tag":559,"props":3477,"children":3478},{"style":583},[3479],{"type":420,"value":542},{"type":415,"tag":559,"props":3481,"children":3482},{"style":792},[3483],{"type":420,"value":2096},{"type":415,"tag":559,"props":3485,"children":3486},{"style":583},[3487],{"type":420,"value":542},{"type":415,"tag":559,"props":3489,"children":3490},{"style":883},[3491],{"type":420,"value":2105},{"type":415,"tag":559,"props":3493,"children":3494},{"style":583},[3495],{"type":420,"value":1312},{"type":415,"tag":559,"props":3497,"children":3499},{"class":561,"line":3498},26,[3500,3504,3508,3512,3516,3520,3524,3528,3532,3536],{"type":415,"tag":559,"props":3501,"children":3502},{"style":572},[3503],{"type":420,"value":1257},{"type":415,"tag":559,"props":3505,"children":3506},{"style":572},[3507],{"type":420,"value":2121},{"type":415,"tag":559,"props":3509,"children":3510},{"style":583},[3511],{"type":420,"value":763},{"type":415,"tag":559,"props":3513,"children":3514},{"style":583},[3515],{"type":420,"value":872},{"type":415,"tag":559,"props":3517,"children":3518},{"style":792},[3519],{"type":420,"value":2061},{"type":415,"tag":559,"props":3521,"children":3522},{"style":583},[3523],{"type":420,"value":542},{"type":415,"tag":559,"props":3525,"children":3526},{"style":883},[3527],{"type":420,"value":2142},{"type":415,"tag":559,"props":3529,"children":3530},{"style":583},[3531],{"type":420,"value":814},{"type":415,"tag":559,"props":3533,"children":3534},{"style":792},[3535],{"type":420,"value":2151},{"type":415,"tag":559,"props":3537,"children":3538},{"style":583},[3539],{"type":420,"value":696},{"type":415,"tag":559,"props":3541,"children":3543},{"class":561,"line":3542},27,[3544],{"type":415,"tag":559,"props":3545,"children":3546},{"emptyLinePlaceholder":847},[3547],{"type":420,"value":850},{"type":415,"tag":559,"props":3549,"children":3551},{"class":561,"line":3550},28,[3552,3556,3560,3564,3568,3572,3576],{"type":415,"tag":559,"props":3553,"children":3554},{"style":572},[3555],{"type":420,"value":1257},{"type":415,"tag":559,"props":3557,"children":3558},{"style":572},[3559],{"type":420,"value":2174},{"type":415,"tag":559,"props":3561,"children":3562},{"style":583},[3563],{"type":420,"value":763},{"type":415,"tag":559,"props":3565,"children":3566},{"style":583},[3567],{"type":420,"value":1434},{"type":415,"tag":559,"props":3569,"children":3570},{"style":822},[3571],{"type":420,"value":2187},{"type":415,"tag":559,"props":3573,"children":3574},{"style":583},[3575],{"type":420,"value":819},{"type":415,"tag":559,"props":3577,"children":3578},{"style":583},[3579],{"type":420,"value":1509},{"type":415,"tag":559,"props":3581,"children":3583},{"class":561,"line":3582},29,[3584,3588,3592,3596,3600,3604,3608,3612,3616],{"type":415,"tag":559,"props":3585,"children":3586},{"style":572},[3587],{"type":420,"value":1257},{"type":415,"tag":559,"props":3589,"children":3590},{"style":572},[3591],{"type":420,"value":2207},{"type":415,"tag":559,"props":3593,"children":3594},{"style":583},[3595],{"type":420,"value":763},{"type":415,"tag":559,"props":3597,"children":3598},{"style":792},[3599],{"type":420,"value":2121},{"type":415,"tag":559,"props":3601,"children":3602},{"style":583},[3603],{"type":420,"value":542},{"type":415,"tag":559,"props":3605,"children":3606},{"style":883},[3607],{"type":420,"value":2224},{"type":415,"tag":559,"props":3609,"children":3610},{"style":583},[3611],{"type":420,"value":814},{"type":415,"tag":559,"props":3613,"children":3614},{"style":792},[3615],{"type":420,"value":2233},{"type":415,"tag":559,"props":3617,"children":3618},{"style":583},[3619],{"type":420,"value":833},{"type":415,"tag":559,"props":3621,"children":3623},{"class":561,"line":3622},30,[3624,3628,3632,3636,3640,3644,3648],{"type":415,"tag":559,"props":3625,"children":3626},{"style":583},[3627],{"type":420,"value":2245},{"type":415,"tag":559,"props":3629,"children":3630},{"style":883},[3631],{"type":420,"value":2250},{"type":415,"tag":559,"props":3633,"children":3634},{"style":583},[3635],{"type":420,"value":814},{"type":415,"tag":559,"props":3637,"children":3638},{"style":583},[3639],{"type":420,"value":819},{"type":415,"tag":559,"props":3641,"children":3642},{"style":822},[3643],{"type":420,"value":2263},{"type":415,"tag":559,"props":3645,"children":3646},{"style":583},[3647],{"type":420,"value":819},{"type":415,"tag":559,"props":3649,"children":3650},{"style":583},[3651],{"type":420,"value":696},{"type":415,"tag":559,"props":3653,"children":3655},{"class":561,"line":3654},31,[3656],{"type":415,"tag":559,"props":3657,"children":3658},{"emptyLinePlaceholder":847},[3659],{"type":420,"value":850},{"type":415,"tag":559,"props":3661,"children":3663},{"class":561,"line":3662},32,[3664,3668,3672,3676,3680,3684,3688,3692,3696,3700,3704,3708,3712,3716,3720,3724],{"type":415,"tag":559,"props":3665,"children":3666},{"style":745},[3667],{"type":420,"value":1517},{"type":415,"tag":559,"props":3669,"children":3670},{"style":792},[3671],{"type":420,"value":809},{"type":415,"tag":559,"props":3673,"children":3674},{"style":583},[3675],{"type":420,"value":542},{"type":415,"tag":559,"props":3677,"children":3678},{"style":883},[3679],{"type":420,"value":2298},{"type":415,"tag":559,"props":3681,"children":3682},{"style":583},[3683],{"type":420,"value":814},{"type":415,"tag":559,"props":3685,"children":3686},{"style":792},[3687],{"type":420,"value":2307},{"type":415,"tag":559,"props":3689,"children":3690},{"style":583},[3691],{"type":420,"value":2312},{"type":415,"tag":559,"props":3693,"children":3694},{"style":792},[3695],{"type":420,"value":2317},{"type":415,"tag":559,"props":3697,"children":3698},{"style":583},[3699],{"type":420,"value":542},{"type":415,"tag":559,"props":3701,"children":3702},{"style":792},[3703],{"type":420,"value":2326},{"type":415,"tag":559,"props":3705,"children":3706},{"style":583},[3707],{"type":420,"value":2312},{"type":415,"tag":559,"props":3709,"children":3710},{"style":566},[3711],{"type":420,"value":1454},{"type":415,"tag":559,"props":3713,"children":3714},{"style":572},[3715],{"type":420,"value":753},{"type":415,"tag":559,"props":3717,"children":3718},{"style":572},[3719],{"type":420,"value":2343},{"type":415,"tag":559,"props":3721,"children":3722},{"style":583},[3723],{"type":420,"value":1468},{"type":415,"tag":559,"props":3725,"children":3726},{"style":583},[3727],{"type":420,"value":2352},{"type":415,"tag":559,"props":3729,"children":3731},{"class":561,"line":3730},33,[3732],{"type":415,"tag":559,"props":3733,"children":3734},{"style":2358},[3735],{"type":420,"value":2361},{"type":415,"tag":559,"props":3737,"children":3739},{"class":561,"line":3738},34,[3740,3744,3748,3752,3756,3760,3764,3768,3772,3776,3780,3784,3788,3792,3796,3800,3804],{"type":415,"tag":559,"props":3741,"children":3742},{"style":583},[3743],{"type":420,"value":2369},{"type":415,"tag":559,"props":3745,"children":3746},{"style":792},[3747],{"type":420,"value":2374},{"type":415,"tag":559,"props":3749,"children":3750},{"style":583},[3751],{"type":420,"value":542},{"type":415,"tag":559,"props":3753,"children":3754},{"style":792},[3755],{"type":420,"value":2383},{"type":415,"tag":559,"props":3757,"children":3758},{"style":583},[3759],{"type":420,"value":1580},{"type":415,"tag":559,"props":3761,"children":3762},{"style":822},[3763],{"type":420,"value":2392},{"type":415,"tag":559,"props":3765,"children":3766},{"style":583},[3767],{"type":420,"value":2397},{"type":415,"tag":559,"props":3769,"children":3770},{"style":792},[3771],{"type":420,"value":2374},{"type":415,"tag":559,"props":3773,"children":3774},{"style":583},[3775],{"type":420,"value":542},{"type":415,"tag":559,"props":3777,"children":3778},{"style":792},[3779],{"type":420,"value":2410},{"type":415,"tag":559,"props":3781,"children":3782},{"style":583},[3783],{"type":420,"value":2415},{"type":415,"tag":559,"props":3785,"children":3786},{"style":792},[3787],{"type":420,"value":2374},{"type":415,"tag":559,"props":3789,"children":3790},{"style":583},[3791],{"type":420,"value":542},{"type":415,"tag":559,"props":3793,"children":3794},{"style":792},[3795],{"type":420,"value":2428},{"type":415,"tag":559,"props":3797,"children":3798},{"style":583},[3799],{"type":420,"value":1602},{"type":415,"tag":559,"props":3801,"children":3802},{"style":583},[3803],{"type":420,"value":2437},{"type":415,"tag":559,"props":3805,"children":3806},{"style":583},[3807],{"type":420,"value":2442},{"type":415,"tag":559,"props":3809,"children":3811},{"class":561,"line":3810},35,[3812],{"type":415,"tag":559,"props":3813,"children":3814},{"style":583},[3815],{"type":420,"value":1801},{"type":415,"tag":559,"props":3817,"children":3819},{"class":561,"line":3818},36,[3820],{"type":415,"tag":559,"props":3821,"children":3822},{"emptyLinePlaceholder":847},[3823],{"type":420,"value":850},{"type":415,"tag":559,"props":3825,"children":3827},{"class":561,"line":3826},37,[3828,3832,3836,3840,3844,3848,3852],{"type":415,"tag":559,"props":3829,"children":3830},{"style":566},[3831],{"type":420,"value":2001},{"type":415,"tag":559,"props":3833,"children":3834},{"style":572},[3835],{"type":420,"value":2006},{"type":415,"tag":559,"props":3837,"children":3838},{"style":883},[3839],{"type":420,"value":2507},{"type":415,"tag":559,"props":3841,"children":3842},{"style":583},[3843],{"type":420,"value":814},{"type":415,"tag":559,"props":3845,"children":3846},{"style":572},[3847],{"type":420,"value":1204},{"type":415,"tag":559,"props":3849,"children":3850},{"style":572},[3851],{"type":420,"value":2520},{"type":415,"tag":559,"props":3853,"children":3854},{"style":583},[3855],{"type":420,"value":833},{"type":415,"tag":559,"props":3857,"children":3859},{"class":561,"line":3858},38,[3860],{"type":415,"tag":559,"props":3861,"children":3862},{"style":583},[3863],{"type":420,"value":786},{"type":415,"tag":559,"props":3865,"children":3867},{"class":561,"line":3866},39,[3868,3872,3876,3880,3884,3888,3892,3896,3900,3904,3908,3912,3916],{"type":415,"tag":559,"props":3869,"children":3870},{"style":572},[3871],{"type":420,"value":1257},{"type":415,"tag":559,"props":3873,"children":3874},{"style":572},[3875],{"type":420,"value":2061},{"type":415,"tag":559,"props":3877,"children":3878},{"style":583},[3879],{"type":420,"value":763},{"type":415,"tag":559,"props":3881,"children":3882},{"style":792},[3883],{"type":420,"value":2070},{"type":415,"tag":559,"props":3885,"children":3886},{"style":583},[3887],{"type":420,"value":542},{"type":415,"tag":559,"props":3889,"children":3890},{"style":883},[3891],{"type":420,"value":2079},{"type":415,"tag":559,"props":3893,"children":3894},{"style":583},[3895],{"type":420,"value":814},{"type":415,"tag":559,"props":3897,"children":3898},{"style":792},[3899],{"type":420,"value":263},{"type":415,"tag":559,"props":3901,"children":3902},{"style":583},[3903],{"type":420,"value":542},{"type":415,"tag":559,"props":3905,"children":3906},{"style":792},[3907],{"type":420,"value":2096},{"type":415,"tag":559,"props":3909,"children":3910},{"style":583},[3911],{"type":420,"value":542},{"type":415,"tag":559,"props":3913,"children":3914},{"style":883},[3915],{"type":420,"value":2105},{"type":415,"tag":559,"props":3917,"children":3918},{"style":583},[3919],{"type":420,"value":1312},{"type":415,"tag":559,"props":3921,"children":3923},{"class":561,"line":3922},40,[3924,3928,3932,3936,3940,3944,3948,3952,3956,3960,3964,3968],{"type":415,"tag":559,"props":3925,"children":3926},{"style":572},[3927],{"type":420,"value":1257},{"type":415,"tag":559,"props":3929,"children":3930},{"style":572},[3931],{"type":420,"value":2121},{"type":415,"tag":559,"props":3933,"children":3934},{"style":583},[3935],{"type":420,"value":763},{"type":415,"tag":559,"props":3937,"children":3938},{"style":583},[3939],{"type":420,"value":872},{"type":415,"tag":559,"props":3941,"children":3942},{"style":792},[3943],{"type":420,"value":2061},{"type":415,"tag":559,"props":3945,"children":3946},{"style":583},[3947],{"type":420,"value":542},{"type":415,"tag":559,"props":3949,"children":3950},{"style":883},[3951],{"type":420,"value":2142},{"type":415,"tag":559,"props":3953,"children":3954},{"style":583},[3955],{"type":420,"value":814},{"type":415,"tag":559,"props":3957,"children":3958},{"style":583},[3959],{"type":420,"value":819},{"type":415,"tag":559,"props":3961,"children":3962},{"style":822},[3963],{"type":420,"value":2630},{"type":415,"tag":559,"props":3965,"children":3966},{"style":583},[3967],{"type":420,"value":819},{"type":415,"tag":559,"props":3969,"children":3970},{"style":583},[3971],{"type":420,"value":696},{"type":415,"tag":559,"props":3973,"children":3975},{"class":561,"line":3974},41,[3976,3980,3984,3988,3992,3996,4000,4004,4008,4012,4016,4020,4024],{"type":415,"tag":559,"props":3977,"children":3978},{"style":572},[3979],{"type":420,"value":1257},{"type":415,"tag":559,"props":3981,"children":3982},{"style":572},[3983],{"type":420,"value":2650},{"type":415,"tag":559,"props":3985,"children":3986},{"style":583},[3987],{"type":420,"value":763},{"type":415,"tag":559,"props":3989,"children":3990},{"style":792},[3991],{"type":420,"value":2121},{"type":415,"tag":559,"props":3993,"children":3994},{"style":583},[3995],{"type":420,"value":542},{"type":415,"tag":559,"props":3997,"children":3998},{"style":883},[3999],{"type":420,"value":2224},{"type":415,"tag":559,"props":4001,"children":4002},{"style":583},[4003],{"type":420,"value":891},{"type":415,"tag":559,"props":4005,"children":4006},{"style":572},[4007],{"type":420,"value":2675},{"type":415,"tag":559,"props":4009,"children":4010},{"style":583},[4011],{"type":420,"value":2680},{"type":415,"tag":559,"props":4013,"children":4014},{"style":583},[4015],{"type":420,"value":2685},{"type":415,"tag":559,"props":4017,"children":4018},{"style":822},[4019],{"type":420,"value":2482},{"type":415,"tag":559,"props":4021,"children":4022},{"style":583},[4023],{"type":420,"value":2685},{"type":415,"tag":559,"props":4025,"children":4026},{"style":583},[4027],{"type":420,"value":696},{"type":415,"tag":559,"props":4029,"children":4031},{"class":561,"line":4030},42,[4032,4036,4040,4044,4048,4052],{"type":415,"tag":559,"props":4033,"children":4034},{"style":745},[4035],{"type":420,"value":2705},{"type":415,"tag":559,"props":4037,"children":4038},{"style":583},[4039],{"type":420,"value":2710},{"type":415,"tag":559,"props":4041,"children":4042},{"style":792},[4043],{"type":420,"value":2715},{"type":415,"tag":559,"props":4045,"children":4046},{"style":583},[4047],{"type":420,"value":1693},{"type":415,"tag":559,"props":4049,"children":4050},{"style":583},[4051],{"type":420,"value":2724},{"type":415,"tag":559,"props":4053,"children":4054},{"style":583},[4055],{"type":420,"value":2729},{"type":415,"tag":559,"props":4057,"children":4059},{"class":561,"line":4058},43,[4060],{"type":415,"tag":559,"props":4061,"children":4062},{"style":583},[4063],{"type":420,"value":2737},{"type":415,"tag":559,"props":4065,"children":4067},{"class":561,"line":4066},44,[4068,4072,4076,4080,4084,4088,4092,4096,4100,4104],{"type":415,"tag":559,"props":4069,"children":4070},{"style":572},[4071],{"type":420,"value":2745},{"type":415,"tag":559,"props":4073,"children":4074},{"style":572},[4075],{"type":420,"value":2750},{"type":415,"tag":559,"props":4077,"children":4078},{"style":583},[4079],{"type":420,"value":763},{"type":415,"tag":559,"props":4081,"children":4082},{"style":583},[4083],{"type":420,"value":872},{"type":415,"tag":559,"props":4085,"children":4086},{"style":792},[4087],{"type":420,"value":2650},{"type":415,"tag":559,"props":4089,"children":4090},{"style":583},[4091],{"type":420,"value":542},{"type":415,"tag":559,"props":4093,"children":4094},{"style":883},[4095],{"type":420,"value":2771},{"type":415,"tag":559,"props":4097,"children":4098},{"style":583},[4099],{"type":420,"value":814},{"type":415,"tag":559,"props":4101,"children":4102},{"style":792},[4103],{"type":420,"value":2780},{"type":415,"tag":559,"props":4105,"children":4106},{"style":583},[4107],{"type":420,"value":696},{"type":415,"tag":559,"props":4109,"children":4111},{"class":561,"line":4110},45,[4112],{"type":415,"tag":559,"props":4113,"children":4114},{"style":583},[4115],{"type":420,"value":2792},{"type":415,"tag":559,"props":4117,"children":4119},{"class":561,"line":4118},46,[4120],{"type":415,"tag":559,"props":4121,"children":4122},{"style":583},[4123],{"type":420,"value":1801},{"type":415,"tag":559,"props":4125,"children":4127},{"class":561,"line":4126},47,[4128],{"type":415,"tag":559,"props":4129,"children":4130},{"emptyLinePlaceholder":847},[4131],{"type":420,"value":850},{"type":415,"tag":559,"props":4133,"children":4135},{"class":561,"line":4134},48,[4136,4140,4144,4148,4152,4156],{"type":415,"tag":559,"props":4137,"children":4138},{"style":572},[4139],{"type":420,"value":1204},{"type":415,"tag":559,"props":4141,"children":4142},{"style":883},[4143],{"type":420,"value":1225},{"type":415,"tag":559,"props":4145,"children":4146},{"style":583},[4147],{"type":420,"value":814},{"type":415,"tag":559,"props":4149,"children":4150},{"style":572},[4151],{"type":420,"value":896},{"type":415,"tag":559,"props":4153,"children":4154},{"style":572},[4155],{"type":420,"value":1238},{"type":415,"tag":559,"props":4157,"children":4158},{"style":583},[4159],{"type":420,"value":833},{"type":415,"tag":559,"props":4161,"children":4163},{"class":561,"line":4162},49,[4164],{"type":415,"tag":559,"props":4165,"children":4166},{"style":583},[4167],{"type":420,"value":786},{"type":415,"tag":559,"props":4169,"children":4171},{"class":561,"line":4170},50,[4172,4176,4180,4184,4188,4192,4196,4200,4204,4208,4212,4216,4220],{"type":415,"tag":559,"props":4173,"children":4174},{"style":572},[4175],{"type":420,"value":1257},{"type":415,"tag":559,"props":4177,"children":4178},{"style":572},[4179],{"type":420,"value":1262},{"type":415,"tag":559,"props":4181,"children":4182},{"style":583},[4183],{"type":420,"value":763},{"type":415,"tag":559,"props":4185,"children":4186},{"style":792},[4187],{"type":420,"value":1271},{"type":415,"tag":559,"props":4189,"children":4190},{"style":583},[4191],{"type":420,"value":542},{"type":415,"tag":559,"props":4193,"children":4194},{"style":883},[4195],{"type":420,"value":1280},{"type":415,"tag":559,"props":4197,"children":4198},{"style":583},[4199],{"type":420,"value":814},{"type":415,"tag":559,"props":4201,"children":4202},{"style":792},[4203],{"type":420,"value":1289},{"type":415,"tag":559,"props":4205,"children":4206},{"style":583},[4207],{"type":420,"value":542},{"type":415,"tag":559,"props":4209,"children":4210},{"style":792},[4211],{"type":420,"value":1298},{"type":415,"tag":559,"props":4213,"children":4214},{"style":583},[4215],{"type":420,"value":542},{"type":415,"tag":559,"props":4217,"children":4218},{"style":883},[4219],{"type":420,"value":1307},{"type":415,"tag":559,"props":4221,"children":4222},{"style":583},[4223],{"type":420,"value":1312},{"type":415,"tag":559,"props":4225,"children":4227},{"class":561,"line":4226},51,[4228,4232,4236,4240,4244,4248,4252,4256,4260,4264,4268,4272,4276],{"type":415,"tag":559,"props":4229,"children":4230},{"style":572},[4231],{"type":420,"value":1257},{"type":415,"tag":559,"props":4233,"children":4234},{"style":572},[4235],{"type":420,"value":1324},{"type":415,"tag":559,"props":4237,"children":4238},{"style":583},[4239],{"type":420,"value":763},{"type":415,"tag":559,"props":4241,"children":4242},{"style":792},[4243],{"type":420,"value":1271},{"type":415,"tag":559,"props":4245,"children":4246},{"style":583},[4247],{"type":420,"value":542},{"type":415,"tag":559,"props":4249,"children":4250},{"style":883},[4251],{"type":420,"value":1280},{"type":415,"tag":559,"props":4253,"children":4254},{"style":583},[4255],{"type":420,"value":814},{"type":415,"tag":559,"props":4257,"children":4258},{"style":792},[4259],{"type":420,"value":1289},{"type":415,"tag":559,"props":4261,"children":4262},{"style":583},[4263],{"type":420,"value":542},{"type":415,"tag":559,"props":4265,"children":4266},{"style":792},[4267],{"type":420,"value":1298},{"type":415,"tag":559,"props":4269,"children":4270},{"style":583},[4271],{"type":420,"value":542},{"type":415,"tag":559,"props":4273,"children":4274},{"style":883},[4275],{"type":420,"value":1365},{"type":415,"tag":559,"props":4277,"children":4278},{"style":583},[4279],{"type":420,"value":1312},{"type":415,"tag":559,"props":4281,"children":4283},{"class":561,"line":4282},52,[4284,4288,4292,4296,4300,4304,4308,4312,4316,4320,4324,4328,4332,4336,4340,4344,4348,4352,4356,4360,4364,4368],{"type":415,"tag":559,"props":4285,"children":4286},{"style":572},[4287],{"type":420,"value":1257},{"type":415,"tag":559,"props":4289,"children":4290},{"style":572},[4291],{"type":420,"value":1381},{"type":415,"tag":559,"props":4293,"children":4294},{"style":583},[4295],{"type":420,"value":763},{"type":415,"tag":559,"props":4297,"children":4298},{"style":583},[4299],{"type":420,"value":1390},{"type":415,"tag":559,"props":4301,"children":4302},{"style":883},[4303],{"type":420,"value":1395},{"type":415,"tag":559,"props":4305,"children":4306},{"style":583},[4307],{"type":420,"value":814},{"type":415,"tag":559,"props":4309,"children":4310},{"style":792},[4311],{"type":420,"value":1289},{"type":415,"tag":559,"props":4313,"children":4314},{"style":583},[4315],{"type":420,"value":542},{"type":415,"tag":559,"props":4317,"children":4318},{"style":792},[4319],{"type":420,"value":1412},{"type":415,"tag":559,"props":4321,"children":4322},{"style":583},[4323],{"type":420,"value":542},{"type":415,"tag":559,"props":4325,"children":4326},{"style":883},[4327],{"type":420,"value":1421},{"type":415,"tag":559,"props":4329,"children":4330},{"style":583},[4331],{"type":420,"value":814},{"type":415,"tag":559,"props":4333,"children":4334},{"style":583},[4335],{"type":420,"value":819},{"type":415,"tag":559,"props":4337,"children":4338},{"style":583},[4339],{"type":420,"value":1434},{"type":415,"tag":559,"props":4341,"children":4342},{"style":583},[4343],{"type":420,"value":1439},{"type":415,"tag":559,"props":4345,"children":4346},{"style":883},[4347],{"type":420,"value":1444},{"type":415,"tag":559,"props":4349,"children":4350},{"style":583},[4351],{"type":420,"value":1449},{"type":415,"tag":559,"props":4353,"children":4354},{"style":566},[4355],{"type":420,"value":1454},{"type":415,"tag":559,"props":4357,"children":4358},{"style":572},[4359],{"type":420,"value":753},{"type":415,"tag":559,"props":4361,"children":4362},{"style":572},[4363],{"type":420,"value":1463},{"type":415,"tag":559,"props":4365,"children":4366},{"style":583},[4367],{"type":420,"value":1468},{"type":415,"tag":559,"props":4369,"children":4370},{"style":792},[4371],{"type":420,"value":1473},{"type":415,"tag":559,"props":4373,"children":4375},{"class":561,"line":4374},53,[4376,4380,4384,4388,4392,4396,4400],{"type":415,"tag":559,"props":4377,"children":4378},{"style":583},[4379],{"type":420,"value":1481},{"type":415,"tag":559,"props":4381,"children":4382},{"style":792},[4383],{"type":420,"value":1486},{"type":415,"tag":559,"props":4385,"children":4386},{"style":583},[4387],{"type":420,"value":1491},{"type":415,"tag":559,"props":4389,"children":4390},{"style":792},[4391],{"type":420,"value":1262},{"type":415,"tag":559,"props":4393,"children":4394},{"style":583},[4395],{"type":420,"value":542},{"type":415,"tag":559,"props":4397,"children":4398},{"style":792},[4399],{"type":420,"value":1504},{"type":415,"tag":559,"props":4401,"children":4402},{"style":583},[4403],{"type":420,"value":1509},{"type":415,"tag":559,"props":4405,"children":4407},{"class":561,"line":4406},54,[4408,4412,4416,4420],{"type":415,"tag":559,"props":4409,"children":4410},{"style":745},[4411],{"type":420,"value":1517},{"type":415,"tag":559,"props":4413,"children":4414},{"style":583},[4415],{"type":420,"value":768},{"type":415,"tag":559,"props":4417,"children":4418},{"style":572},[4419],{"type":420,"value":968},{"type":415,"tag":559,"props":4421,"children":4422},{"style":583},[4423],{"type":420,"value":586},{"type":415,"tag":559,"props":4425,"children":4427},{"class":561,"line":4426},55,[4428,4432,4436,4440,4444,4448,4452,4456,4460,4464,4468,4472,4476,4480,4484,4488,4492],{"type":415,"tag":559,"props":4429,"children":4430},{"style":792},[4431],{"type":420,"value":1537},{"type":415,"tag":559,"props":4433,"children":4434},{"style":583},[4435],{"type":420,"value":1134},{"type":415,"tag":559,"props":4437,"children":4438},{"style":792},[4439],{"type":420,"value":1238},{"type":415,"tag":559,"props":4441,"children":4442},{"style":583},[4443],{"type":420,"value":542},{"type":415,"tag":559,"props":4445,"children":4446},{"style":792},[4447],{"type":420,"value":1554},{"type":415,"tag":559,"props":4449,"children":4450},{"style":583},[4451],{"type":420,"value":1206},{"type":415,"tag":559,"props":4453,"children":4454},{"style":583},[4455],{"type":420,"value":1563},{"type":415,"tag":559,"props":4457,"children":4458},{"style":792},[4459],{"type":420,"value":1289},{"type":415,"tag":559,"props":4461,"children":4462},{"style":583},[4463],{"type":420,"value":542},{"type":415,"tag":559,"props":4465,"children":4466},{"style":792},[4467],{"type":420,"value":1412},{"type":415,"tag":559,"props":4469,"children":4470},{"style":583},[4471],{"type":420,"value":1580},{"type":415,"tag":559,"props":4473,"children":4474},{"style":583},[4475],{"type":420,"value":1144},{"type":415,"tag":559,"props":4477,"children":4478},{"style":792},[4479],{"type":420,"value":1589},{"type":415,"tag":559,"props":4481,"children":4482},{"style":583},[4483],{"type":420,"value":542},{"type":415,"tag":559,"props":4485,"children":4486},{"style":792},[4487],{"type":420,"value":1504},{"type":415,"tag":559,"props":4489,"children":4490},{"style":583},[4491],{"type":420,"value":1602},{"type":415,"tag":559,"props":4493,"children":4494},{"style":583},[4495],{"type":420,"value":605},{"type":415,"tag":559,"props":4497,"children":4499},{"class":561,"line":4498},56,[4500,4504,4508,4512],{"type":415,"tag":559,"props":4501,"children":4502},{"style":792},[4503],{"type":420,"value":1614},{"type":415,"tag":559,"props":4505,"children":4506},{"style":583},[4507],{"type":420,"value":542},{"type":415,"tag":559,"props":4509,"children":4510},{"style":792},[4511],{"type":420,"value":1623},{"type":415,"tag":559,"props":4513,"children":4514},{"style":583},[4515],{"type":420,"value":605},{"type":415,"tag":559,"props":4517,"children":4519},{"class":561,"line":4518},57,[4520,4524],{"type":415,"tag":559,"props":4521,"children":4522},{"style":792},[4523],{"type":420,"value":1635},{"type":415,"tag":559,"props":4525,"children":4526},{"style":583},[4527],{"type":420,"value":605},{"type":415,"tag":559,"props":4529,"children":4531},{"class":561,"line":4530},58,[4532,4536],{"type":415,"tag":559,"props":4533,"children":4534},{"style":792},[4535],{"type":420,"value":1647},{"type":415,"tag":559,"props":4537,"children":4538},{"style":583},[4539],{"type":420,"value":605},{"type":415,"tag":559,"props":4541,"children":4543},{"class":561,"line":4542},59,[4544,4548,4552,4556],{"type":415,"tag":559,"props":4545,"children":4546},{"style":792},[4547],{"type":420,"value":1659},{"type":415,"tag":559,"props":4549,"children":4550},{"style":583},[4551],{"type":420,"value":542},{"type":415,"tag":559,"props":4553,"children":4554},{"style":792},[4555],{"type":420,"value":1668},{"type":415,"tag":559,"props":4557,"children":4558},{"style":583},[4559],{"type":420,"value":605},{"type":415,"tag":559,"props":4561,"children":4563},{"class":561,"line":4562},60,[4564,4568,4572,4576,4580,4584,4588,4592,4596,4600,4604,4608,4612,4616,4620,4624],{"type":415,"tag":559,"props":4565,"children":4566},{"style":792},[4567],{"type":420,"value":1614},{"type":415,"tag":559,"props":4569,"children":4570},{"style":583},[4571],{"type":420,"value":542},{"type":415,"tag":559,"props":4573,"children":4574},{"style":792},[4575],{"type":420,"value":1688},{"type":415,"tag":559,"props":4577,"children":4578},{"style":583},[4579],{"type":420,"value":1693},{"type":415,"tag":559,"props":4581,"children":4582},{"style":583},[4583],{"type":420,"value":1434},{"type":415,"tag":559,"props":4585,"children":4586},{"style":822},[4587],{"type":420,"value":1702},{"type":415,"tag":559,"props":4589,"children":4590},{"style":583},[4591],{"type":420,"value":819},{"type":415,"tag":559,"props":4593,"children":4594},{"style":583},[4595],{"type":420,"value":1711},{"type":415,"tag":559,"props":4597,"children":4598},{"style":792},[4599],{"type":420,"value":1066},{"type":415,"tag":559,"props":4601,"children":4602},{"style":583},[4603],{"type":420,"value":542},{"type":415,"tag":559,"props":4605,"children":4606},{"style":792},[4607],{"type":420,"value":1724},{"type":415,"tag":559,"props":4609,"children":4610},{"style":583},[4611],{"type":420,"value":1206},{"type":415,"tag":559,"props":4613,"children":4614},{"style":792},[4615],{"type":420,"value":1066},{"type":415,"tag":559,"props":4617,"children":4618},{"style":583},[4619],{"type":420,"value":542},{"type":415,"tag":559,"props":4621,"children":4622},{"style":792},[4623],{"type":420,"value":1741},{"type":415,"tag":559,"props":4625,"children":4626},{"style":583},[4627],{"type":420,"value":605},{"type":415,"tag":559,"props":4629,"children":4631},{"class":561,"line":4630},61,[4632,4636,4640,4644],{"type":415,"tag":559,"props":4633,"children":4634},{"style":792},[4635],{"type":420,"value":1614},{"type":415,"tag":559,"props":4637,"children":4638},{"style":583},[4639],{"type":420,"value":542},{"type":415,"tag":559,"props":4641,"children":4642},{"style":792},[4643],{"type":420,"value":1762},{"type":415,"tag":559,"props":4645,"children":4646},{"style":583},[4647],{"type":420,"value":605},{"type":415,"tag":559,"props":4649,"children":4651},{"class":561,"line":4650},62,[4652,4656,4660],{"type":415,"tag":559,"props":4653,"children":4654},{"style":792},[4655],{"type":420,"value":1614},{"type":415,"tag":559,"props":4657,"children":4658},{"style":583},[4659],{"type":420,"value":542},{"type":415,"tag":559,"props":4661,"children":4662},{"style":792},[4663],{"type":420,"value":1783},{"type":415,"tag":559,"props":4665,"children":4667},{"class":561,"line":4666},63,[4668],{"type":415,"tag":559,"props":4669,"children":4670},{"style":583},[4671],{"type":420,"value":1792},{"type":415,"tag":559,"props":4673,"children":4675},{"class":561,"line":4674},64,[4676],{"type":415,"tag":559,"props":4677,"children":4678},{"style":583},[4679],{"type":420,"value":1801},{"type":415,"tag":559,"props":4681,"children":4683},{"class":561,"line":4682},65,[4684],{"type":415,"tag":559,"props":4685,"children":4686},{"emptyLinePlaceholder":847},[4687],{"type":420,"value":850},{"type":415,"tag":559,"props":4689,"children":4691},{"class":561,"line":4690},66,[4692,4696,4700,4704],{"type":415,"tag":559,"props":4693,"children":4694},{"style":566},[4695],{"type":420,"value":569},{"type":415,"tag":559,"props":4697,"children":4698},{"style":572},[4699],{"type":420,"value":575},{"type":415,"tag":559,"props":4701,"children":4702},{"style":572},[4703],{"type":420,"value":580},{"type":415,"tag":559,"props":4705,"children":4706},{"style":583},[4707],{"type":420,"value":586},{"type":415,"tag":559,"props":4709,"children":4711},{"class":561,"line":4710},67,[4712,4716,4720],{"type":415,"tag":559,"props":4713,"children":4714},{"style":583},[4715],{"type":420,"value":595},{"type":415,"tag":559,"props":4717,"children":4718},{"style":572},[4719],{"type":420,"value":600},{"type":415,"tag":559,"props":4721,"children":4722},{"style":583},[4723],{"type":420,"value":605},{"type":415,"tag":559,"props":4725,"children":4727},{"class":561,"line":4726},68,[4728,4732,4736],{"type":415,"tag":559,"props":4729,"children":4730},{"style":583},[4731],{"type":420,"value":614},{"type":415,"tag":559,"props":4733,"children":4734},{"style":572},[4735],{"type":420,"value":619},{"type":415,"tag":559,"props":4737,"children":4738},{"style":583},[4739],{"type":420,"value":605},{"type":415,"tag":559,"props":4741,"children":4743},{"class":561,"line":4742},69,[4744,4748,4752],{"type":415,"tag":559,"props":4745,"children":4746},{"style":583},[4747],{"type":420,"value":595},{"type":415,"tag":559,"props":4749,"children":4750},{"style":572},[4751],{"type":420,"value":636},{"type":415,"tag":559,"props":4753,"children":4754},{"style":583},[4755],{"type":420,"value":605},{"type":415,"tag":559,"props":4757,"children":4759},{"class":561,"line":4758},70,[4760,4764,4768],{"type":415,"tag":559,"props":4761,"children":4762},{"style":583},[4763],{"type":420,"value":595},{"type":415,"tag":559,"props":4765,"children":4766},{"style":572},[4767],{"type":420,"value":653},{"type":415,"tag":559,"props":4769,"children":4770},{"style":583},[4771],{"type":420,"value":605},{"type":415,"tag":559,"props":4773,"children":4775},{"class":561,"line":4774},71,[4776,4780,4784],{"type":415,"tag":559,"props":4777,"children":4778},{"style":583},[4779],{"type":420,"value":595},{"type":415,"tag":559,"props":4781,"children":4782},{"style":572},[4783],{"type":420,"value":670},{"type":415,"tag":559,"props":4785,"children":4786},{"style":583},[4787],{"type":420,"value":605},{"type":415,"tag":559,"props":4789,"children":4791},{"class":561,"line":4790},72,[4792,4796],{"type":415,"tag":559,"props":4793,"children":4794},{"style":583},[4795],{"type":420,"value":595},{"type":415,"tag":559,"props":4797,"children":4798},{"style":572},[4799],{"type":420,"value":687},{"type":415,"tag":559,"props":4801,"children":4803},{"class":561,"line":4802},73,[4804],{"type":415,"tag":559,"props":4805,"children":4806},{"style":583},[4807],{"type":420,"value":696},{"type":415,"tag":559,"props":4809,"children":4811},{"class":561,"line":4810},74,[4812],{"type":415,"tag":559,"props":4813,"children":4814},{"emptyLinePlaceholder":847},[4815],{"type":420,"value":850},{"type":415,"tag":559,"props":4817,"children":4819},{"class":561,"line":4818},75,[4820,4824,4828,4832],{"type":415,"tag":559,"props":4821,"children":4822},{"style":566},[4823],{"type":420,"value":569},{"type":415,"tag":559,"props":4825,"children":4826},{"style":572},[4827],{"type":420,"value":575},{"type":415,"tag":559,"props":4829,"children":4830},{"style":572},[4831],{"type":420,"value":968},{"type":415,"tag":559,"props":4833,"children":4834},{"style":583},[4835],{"type":420,"value":586},{"type":415,"tag":559,"props":4837,"children":4839},{"class":561,"line":4838},76,[4840,4844,4848],{"type":415,"tag":559,"props":4841,"children":4842},{"style":583},[4843],{"type":420,"value":595},{"type":415,"tag":559,"props":4845,"children":4846},{"style":572},[4847],{"type":420,"value":600},{"type":415,"tag":559,"props":4849,"children":4850},{"style":583},[4851],{"type":420,"value":605},{"type":415,"tag":559,"props":4853,"children":4855},{"class":561,"line":4854},77,[4856,4860,4864],{"type":415,"tag":559,"props":4857,"children":4858},{"style":583},[4859],{"type":420,"value":595},{"type":415,"tag":559,"props":4861,"children":4862},{"style":572},[4863],{"type":420,"value":999},{"type":415,"tag":559,"props":4865,"children":4866},{"style":583},[4867],{"type":420,"value":605},{"type":415,"tag":559,"props":4869,"children":4871},{"class":561,"line":4870},78,[4872,4876,4880],{"type":415,"tag":559,"props":4873,"children":4874},{"style":572},[4875],{"type":420,"value":1011},{"type":415,"tag":559,"props":4877,"children":4878},{"style":572},[4879],{"type":420,"value":1016},{"type":415,"tag":559,"props":4881,"children":4882},{"style":583},[4883],{"type":420,"value":605},{"type":415,"tag":559,"props":4885,"children":4887},{"class":561,"line":4886},79,[4888,4892,4896],{"type":415,"tag":559,"props":4889,"children":4890},{"style":572},[4891],{"type":420,"value":1011},{"type":415,"tag":559,"props":4893,"children":4894},{"style":572},[4895],{"type":420,"value":1032},{"type":415,"tag":559,"props":4897,"children":4898},{"style":583},[4899],{"type":420,"value":605},{"type":415,"tag":559,"props":4901,"children":4903},{"class":561,"line":4902},80,[4904,4908,4912],{"type":415,"tag":559,"props":4905,"children":4906},{"style":572},[4907],{"type":420,"value":1044},{"type":415,"tag":559,"props":4909,"children":4910},{"style":572},[4911],{"type":420,"value":1049},{"type":415,"tag":559,"props":4913,"children":4914},{"style":583},[4915],{"type":420,"value":605},{"type":415,"tag":559,"props":4917,"children":4919},{"class":561,"line":4918},81,[4920,4924,4928],{"type":415,"tag":559,"props":4921,"children":4922},{"style":572},[4923],{"type":420,"value":1061},{"type":415,"tag":559,"props":4925,"children":4926},{"style":572},[4927],{"type":420,"value":1066},{"type":415,"tag":559,"props":4929,"children":4930},{"style":583},[4931],{"type":420,"value":605},{"type":415,"tag":559,"props":4933,"children":4935},{"class":561,"line":4934},82,[4936,4940,4944],{"type":415,"tag":559,"props":4937,"children":4938},{"style":583},[4939],{"type":420,"value":595},{"type":415,"tag":559,"props":4941,"children":4942},{"style":572},[4943],{"type":420,"value":1082},{"type":415,"tag":559,"props":4945,"children":4946},{"style":583},[4947],{"type":420,"value":605},{"type":415,"tag":559,"props":4949,"children":4951},{"class":561,"line":4950},83,[4952,4956],{"type":415,"tag":559,"props":4953,"children":4954},{"style":583},[4955],{"type":420,"value":595},{"type":415,"tag":559,"props":4957,"children":4958},{"style":572},[4959],{"type":420,"value":1099},{"type":415,"tag":559,"props":4961,"children":4963},{"class":561,"line":4962},84,[4964],{"type":415,"tag":559,"props":4965,"children":4966},{"style":583},[4967],{"type":420,"value":833},{"type":415,"tag":559,"props":4969,"children":4971},{"class":561,"line":4970},85,[4972],{"type":415,"tag":559,"props":4973,"children":4974},{"style":583},[4975],{"type":420,"value":786},{"type":415,"tag":559,"props":4977,"children":4979},{"class":561,"line":4978},86,[4980,4984,4988,4992,4996,5000,5004,5008,5012,5016],{"type":415,"tag":559,"props":4981,"children":4982},{"style":566},[4983],{"type":420,"value":1124},{"type":415,"tag":559,"props":4985,"children":4986},{"style":583},[4987],{"type":420,"value":1129},{"type":415,"tag":559,"props":4989,"children":4990},{"style":583},[4991],{"type":420,"value":1134},{"type":415,"tag":559,"props":4993,"children":4994},{"style":572},[4995],{"type":420,"value":1139},{"type":415,"tag":559,"props":4997,"children":4998},{"style":583},[4999],{"type":420,"value":1144},{"type":415,"tag":559,"props":5001,"children":5002},{"style":572},[5003],{"type":420,"value":1149},{"type":415,"tag":559,"props":5005,"children":5006},{"style":583},[5007],{"type":420,"value":1154},{"type":415,"tag":559,"props":5009,"children":5010},{"style":572},[5011],{"type":420,"value":1159},{"type":415,"tag":559,"props":5013,"children":5014},{"style":583},[5015],{"type":420,"value":1154},{"type":415,"tag":559,"props":5017,"children":5018},{"style":583},[5019],{"type":420,"value":1168},{"type":415,"tag":559,"props":5021,"children":5023},{"class":561,"line":5022},87,[5024],{"type":415,"tag":559,"props":5025,"children":5026},{"style":583},[5027],{"type":420,"value":841},{"type":415,"tag":559,"props":5029,"children":5031},{"class":561,"line":5030},88,[5032],{"type":415,"tag":559,"props":5033,"children":5034},{"emptyLinePlaceholder":847},[5035],{"type":420,"value":850},{"type":415,"tag":559,"props":5037,"children":5039},{"class":561,"line":5038},89,[5040,5044,5049],{"type":415,"tag":559,"props":5041,"children":5042},{"style":566},[5043],{"type":420,"value":569},{"type":415,"tag":559,"props":5045,"children":5046},{"style":572},[5047],{"type":420,"value":5048}," enum",{"type":415,"tag":559,"props":5050,"children":5051},{"style":572},[5052],{"type":420,"value":5053}," EventFormat\n",{"type":415,"tag":559,"props":5055,"children":5057},{"class":561,"line":5056},90,[5058],{"type":415,"tag":559,"props":5059,"children":5060},{"style":583},[5061],{"type":420,"value":786},{"type":415,"tag":559,"props":5063,"children":5065},{"class":561,"line":5064},91,[5066,5071,5075,5080],{"type":415,"tag":559,"props":5067,"children":5068},{"style":572},[5069],{"type":420,"value":5070},"    Unknown",{"type":415,"tag":559,"props":5072,"children":5073},{"style":583},[5074],{"type":420,"value":763},{"type":415,"tag":559,"props":5076,"children":5077},{"style":2846},[5078],{"type":420,"value":5079}," 1",{"type":415,"tag":559,"props":5081,"children":5082},{"style":583},[5083],{"type":420,"value":605},{"type":415,"tag":559,"props":5085,"children":5087},{"class":561,"line":5086},92,[5088,5093,5097,5102],{"type":415,"tag":559,"props":5089,"children":5090},{"style":572},[5091],{"type":420,"value":5092},"    Virtual",{"type":415,"tag":559,"props":5094,"children":5095},{"style":583},[5096],{"type":420,"value":763},{"type":415,"tag":559,"props":5098,"children":5099},{"style":2846},[5100],{"type":420,"value":5101}," 2",{"type":415,"tag":559,"props":5103,"children":5104},{"style":583},[5105],{"type":420,"value":605},{"type":415,"tag":559,"props":5107,"children":5109},{"class":561,"line":5108},93,[5110,5115,5119,5124],{"type":415,"tag":559,"props":5111,"children":5112},{"style":572},[5113],{"type":420,"value":5114},"    In_Person",{"type":415,"tag":559,"props":5116,"children":5117},{"style":583},[5118],{"type":420,"value":763},{"type":415,"tag":559,"props":5120,"children":5121},{"style":2846},[5122],{"type":420,"value":5123}," 3",{"type":415,"tag":559,"props":5125,"children":5126},{"style":583},[5127],{"type":420,"value":605},{"type":415,"tag":559,"props":5129,"children":5131},{"class":561,"line":5130},94,[5132,5137,5141],{"type":415,"tag":559,"props":5133,"children":5134},{"style":572},[5135],{"type":420,"value":5136},"    Hybrid",{"type":415,"tag":559,"props":5138,"children":5139},{"style":583},[5140],{"type":420,"value":763},{"type":415,"tag":559,"props":5142,"children":5143},{"style":2846},[5144],{"type":420,"value":5145}," 4\n",{"type":415,"tag":559,"props":5147,"children":5149},{"class":561,"line":5148},95,[5150],{"type":415,"tag":559,"props":5151,"children":5152},{"style":583},[5153],{"type":420,"value":1801},{"type":415,"tag":559,"props":5155,"children":5157},{"class":561,"line":5156},96,[5158],{"type":415,"tag":559,"props":5159,"children":5160},{"emptyLinePlaceholder":847},[5161],{"type":420,"value":850},{"type":415,"tag":559,"props":5163,"children":5165},{"class":561,"line":5164},97,[5166,5170,5174],{"type":415,"tag":559,"props":5167,"children":5168},{"style":566},[5169],{"type":420,"value":569},{"type":415,"tag":559,"props":5171,"children":5172},{"style":572},[5173],{"type":420,"value":5048},{"type":415,"tag":559,"props":5175,"children":5176},{"style":572},[5177],{"type":420,"value":5178}," EventType\n",{"type":415,"tag":559,"props":5180,"children":5182},{"class":561,"line":5181},98,[5183],{"type":415,"tag":559,"props":5184,"children":5185},{"style":583},[5186],{"type":420,"value":786},{"type":415,"tag":559,"props":5188,"children":5190},{"class":561,"line":5189},99,[5191,5196,5200,5205],{"type":415,"tag":559,"props":5192,"children":5193},{"style":572},[5194],{"type":420,"value":5195},"    Any",{"type":415,"tag":559,"props":5197,"children":5198},{"style":583},[5199],{"type":420,"value":763},{"type":415,"tag":559,"props":5201,"children":5202},{"style":2846},[5203],{"type":420,"value":5204}," 0",{"type":415,"tag":559,"props":5206,"children":5207},{"style":583},[5208],{"type":420,"value":605},{"type":415,"tag":559,"props":5210,"children":5212},{"class":561,"line":5211},100,[5213,5217,5221,5225],{"type":415,"tag":559,"props":5214,"children":5215},{"style":572},[5216],{"type":420,"value":5070},{"type":415,"tag":559,"props":5218,"children":5219},{"style":583},[5220],{"type":420,"value":763},{"type":415,"tag":559,"props":5222,"children":5223},{"style":2846},[5224],{"type":420,"value":5079},{"type":415,"tag":559,"props":5226,"children":5227},{"style":583},[5228],{"type":420,"value":605},{"type":415,"tag":559,"props":5230,"children":5232},{"class":561,"line":5231},101,[5233,5238,5242,5246],{"type":415,"tag":559,"props":5234,"children":5235},{"style":572},[5236],{"type":420,"value":5237},"    Conference",{"type":415,"tag":559,"props":5239,"children":5240},{"style":583},[5241],{"type":420,"value":763},{"type":415,"tag":559,"props":5243,"children":5244},{"style":2846},[5245],{"type":420,"value":5101},{"type":415,"tag":559,"props":5247,"children":5248},{"style":583},[5249],{"type":420,"value":605},{"type":415,"tag":559,"props":5251,"children":5253},{"class":561,"line":5252},102,[5254,5259,5263,5267],{"type":415,"tag":559,"props":5255,"children":5256},{"style":572},[5257],{"type":420,"value":5258},"    Meetup",{"type":415,"tag":559,"props":5260,"children":5261},{"style":583},[5262],{"type":420,"value":763},{"type":415,"tag":559,"props":5264,"children":5265},{"style":2846},[5266],{"type":420,"value":5123},{"type":415,"tag":559,"props":5268,"children":5269},{"style":583},[5270],{"type":420,"value":605},{"type":415,"tag":559,"props":5272,"children":5274},{"class":561,"line":5273},103,[5275,5280,5284,5289],{"type":415,"tag":559,"props":5276,"children":5277},{"style":572},[5278],{"type":420,"value":5279},"    Hackathon",{"type":415,"tag":559,"props":5281,"children":5282},{"style":583},[5283],{"type":420,"value":763},{"type":415,"tag":559,"props":5285,"children":5286},{"style":2846},[5287],{"type":420,"value":5288}," 4",{"type":415,"tag":559,"props":5290,"children":5291},{"style":583},[5292],{"type":420,"value":605},{"type":415,"tag":559,"props":5294,"children":5296},{"class":561,"line":5295},104,[5297,5302,5306,5311],{"type":415,"tag":559,"props":5298,"children":5299},{"style":572},[5300],{"type":420,"value":5301},"    Call_For_Papers",{"type":415,"tag":559,"props":5303,"children":5304},{"style":583},[5305],{"type":420,"value":763},{"type":415,"tag":559,"props":5307,"children":5308},{"style":2846},[5309],{"type":420,"value":5310}," 5",{"type":415,"tag":559,"props":5312,"children":5313},{"style":583},[5314],{"type":420,"value":605},{"type":415,"tag":559,"props":5316,"children":5318},{"class":561,"line":5317},105,[5319,5324,5328,5333],{"type":415,"tag":559,"props":5320,"children":5321},{"style":572},[5322],{"type":420,"value":5323},"    Website",{"type":415,"tag":559,"props":5325,"children":5326},{"style":583},[5327],{"type":420,"value":763},{"type":415,"tag":559,"props":5329,"children":5330},{"style":2846},[5331],{"type":420,"value":5332}," 6",{"type":415,"tag":559,"props":5334,"children":5335},{"style":583},[5336],{"type":420,"value":605},{"type":415,"tag":559,"props":5338,"children":5340},{"class":561,"line":5339},106,[5341],{"type":415,"tag":559,"props":5342,"children":5343},{"style":583},[5344],{"type":420,"value":1801},{"type":415,"tag":416,"props":5346,"children":5347},{},[5348],{"type":420,"value":5349},"Keep it mind that it's a quick experiment to automate the submission of developer conferences to the Tech Community Calendar, not production-ready code.",{"type":415,"tag":422,"props":5351,"children":5353},{"id":5352},"final-thoughts",[5354],{"type":420,"value":5355},"Final Thoughts",{"type":415,"tag":416,"props":5357,"children":5358},{},[5359],{"type":420,"value":5360},"I think this PoC is a good starting point to create a scheduled process that automatically submit the events from the developers conferences agenda to the tech community calendar.",{"type":415,"tag":1178,"props":5362,"children":5364},{"icon":5363},"i-heroicons-light-bulb",[5365],{"type":415,"tag":416,"props":5366,"children":5367},{},[5368],{"type":420,"value":5369},"Of course it would be great to do the opposite as well (automatically import events from the tech community calendar to the developers conferences agenda) but it seems complicated as events in the tech community calendar are stored in a database I don't have access to and it would involved parsing and writing in the README file of the developers conferences agenda repository.",{"type":415,"tag":416,"props":5371,"children":5372},{},[5373],{"type":420,"value":5374},"Some ideas for improvement:",{"type":415,"tag":5376,"props":5377,"children":5378},"ul",{},[5379,5385,5390],{"type":415,"tag":5380,"props":5381,"children":5382},"li",{},[5383],{"type":420,"value":5384},"store somewhere the events already submitted to only process new events on each run",{"type":415,"tag":5380,"props":5386,"children":5387},{},[5388],{"type":420,"value":5389},"parallelize the processing of events as retrieving the twitter URL of submitting an event can take some time",{"type":415,"tag":5380,"props":5391,"children":5392},{},[5393],{"type":420,"value":5394},"reorganize the code",{"type":415,"tag":416,"props":5396,"children":5397},{},[5398],{"type":420,"value":5399},"It was the first time I used AngleSharp, and I was happy with the result. It's a nice library that I would use again for similar needs.",{"type":415,"tag":416,"props":5401,"children":5402},{},[5403],{"type":420,"value":5404},"A big thank you to the contributors of these IT event calendars. As someone who tries to attend tech events and speak at developer conferences, I find them incredibly useful. A special shoutout to Aurélie Vache and her developer conferences agenda for making this data openly available (JSON files with CFPs and conferences publicly accessible).",{"type":415,"tag":5406,"props":5407,"children":5408},"style",{},[5409],{"type":420,"value":5410},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":401,"searchDepth":589,"depth":589,"links":5412},[5413,5414,5415,5416,5417,5418,5419,5420],{"id":424,"depth":589,"text":427},{"id":474,"depth":589,"text":477},{"id":525,"depth":589,"text":528},{"id":921,"depth":589,"text":924},{"id":1965,"depth":589,"text":1968},{"id":2468,"depth":589,"text":2471},{"id":2817,"depth":589,"text":2820},{"id":5352,"depth":589,"text":5355},"markdown","content:1.posts:60.it-event-calendars.md","content","1.posts/60.it-event-calendars.md","md",1716749600866]