├── backend-developer ├── stream-application │ ├── IPs.sqlite │ ├── docker-compose.yml │ ├── README.md │ ├── IPs.csv │ ├── input.csv │ ├── input.jsonl │ ├── output.csv │ └── output.jsonl └── README.md ├── content-strategist ├── README.md ├── privacy-laws │ └── README.md └── core-web-vitals │ └── README.md ├── social-media-marketer └── README.md ├── account-executive └── README.md ├── sdr └── README.md ├── marketing-intern └── README.md ├── devops └── README.md ├── content-editor └── README.md ├── frontend-developer └── README.md ├── web-designer └── README.md ├── customer-success-engineer └── README.md ├── README.md ├── product-manager └── README.md ├── motion-designer └── README.md └── technical-writer └── README.md /backend-developer/stream-application/IPs.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/croct-tech/challenges/HEAD/backend-developer/stream-application/IPs.sqlite -------------------------------------------------------------------------------- /backend-developer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Croct Backend Challenges 7 |
8 | Have fun showing off your skills! 9 |

10 | 11 | --- 12 | 13 | ### Challenges 14 | 15 | These are the current backend challenges available: 16 | 17 | - [Stream Application](/backend-developer/stream-application) 18 | Build a stream application to detect the geographic location of a user. -------------------------------------------------------------------------------- /backend-developer/stream-application/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | zookeeper: 4 | image: confluentinc/cp-zookeeper:latest 5 | environment: 6 | ZOOKEEPER_CLIENT_PORT: 2181 7 | 8 | kafka: 9 | image: confluentinc/cp-kafka:latest 10 | depends_on: 11 | - zookeeper 12 | environment: 13 | KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 14 | KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT 15 | KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092 16 | KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 17 | ports: 18 | - 9092:9092 19 | -------------------------------------------------------------------------------- /content-strategist/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Croct Content Strategist Challenges 7 |
8 | Have fun showing off your skills! 9 |

10 | 11 | --- 12 | 13 | ### Challenges 14 | 15 | These are the current backend challenges available: 16 | 17 | - [Privacy Laws](/content-strategist/privacy-laws) 18 | Write a blog post about privacy laws and data protection. 19 | 20 | - [Core Web Vitals](/content-strategist/core-web-vitals) 21 | Write a blog post about the Core Web Vitals. 22 | -------------------------------------------------------------------------------- /social-media-marketer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Social Media Copy 7 |
8 | Create copy for social media posts. 9 |

10 | 11 | # Challenge 12 | 13 | As a Social Media Marketer, you will be responsible for creating content for social media and communities while 14 | ensuring consistency across all company communication channels (blog, social media, website, sales materials, etc.). 15 | 16 | The marketing team just published a new [blog post about cohorts](https://docs.google.com/document/d/1ibzA32lye97b_88IKmJKMpg7mzo6IELRAsVPMORVsh0/edit?usp=sharing). 17 | 18 | Your task is to write copy to spread the content across the web, documenting the process you went through, from reading the blog post to writing the final drafts. 19 | 20 | ## Requirements 21 | 22 | Completing the challenge will require you to: 23 | 24 | - Create content for the following channels: 25 | - Croct Community (a Slack community of Croct's customers, developers and leads) 26 | - Growth communities on Slack 27 | - Instagram 28 | - Twitter 29 | - Linkedin 30 | - Write the document and the content in English 🇺🇸 31 | - Follow [our brand voice](https://croct.link/brand-voice). 32 | 33 | ## Deliverable 34 | 35 | Please send us the content and the document describing the steps to [jobs@croct.com](mailto:jobs@croct.com) in a 36 | Google Docs document, and we will reply to your email informing the next steps in the process. 37 | 38 | We will do our best to review your content and get back with feedback on the result as soon as possible. 39 | -------------------------------------------------------------------------------- /account-executive/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Sales Presentation 7 |
8 | Conduct a sales meeting with a prospective client. 9 |

10 | 11 | # Challenge 12 | 13 | As a new Account Executive, you are tasked with conducting a sales meeting to present Croct to a prospective client. 14 | The SDR assigned to this lead has already qualified it and gathered the necessary information for you to create and 15 | deliver an effective presentation. 16 | 17 | ## Requirements 18 | 19 | Completing the challenge will require you to: 20 | 21 | - Create some slides to support your presentation 22 | - Record a video of your presentation (up to 10 minutes) 23 | - All in English 🇺🇸 24 | 25 | Besides the [recorded call](https://cdn.croct.io/assets/sales/challenge-account-executive.mp3), you can also use 26 | [our success cases](https://blog.croct.com/tag/case-studies) and [this demo video](https://youtu.be/nsudSTeqK48) 27 | to get a better understanding of the product. If you want to go further, we suggest you 28 | [create an account](https://app.croct.com/) and explore the product yourself. 29 | 30 | We don't require a minimum number of slides or a minimum duration for the video. Our main goal is to assess 31 | your learning, synthesis, and communication skills 🙂 32 | 33 | ## Deliverable 34 | 35 | Please send us the slide and the video links to jobs@croct.com, and we will reply to your email with the next steps 36 | in the process. 37 | 38 | We will do our best to review your project and get back with feedback on the result as soon as possible. 39 | -------------------------------------------------------------------------------- /sdr/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Outbound Strategy 7 |
8 | Reach out to a prospective client. 9 |

10 | 11 | # Challenge 12 | 13 | As an SDR, you need to fully understand your persona and be able to create good messages to get their attention and 14 | book a meeting. 15 | 16 | You received 5 companies in your pipeline, and your goal is to pre-qualify them and reach out to those you believe 17 | makes sense. These are the companies: 18 | - Crefisa 19 | - Insider 20 | - Estácio 21 | - Simple Organic 22 | - Convert 23 | 24 | ## Requirements 25 | 26 | Completing the challenge will require you to: 27 | 28 | - List the top 3 companies you would reach, indicating the priority and explaining your reasons 29 | - Create two copy examples to use in a LinkedIn message for a Marketing Coordinator and a Head of Growth, 30 | considering it would be the first contact channel 31 | - Suggest other contact channels you would use rather than LinkedIn and email 32 | - All in English 🇺🇸 33 | 34 | You can use 35 | [our success cases](https://blog.croct.com/tag/case-studies) and [this demo video](https://youtu.be/nsudSTeqK48) 36 | to get a better understanding of the product. If you want to go further, we suggest you 37 | [create an account](https://app.croct.com/) and explore the product yourself. 38 | 39 | ## Deliverable 40 | 41 | Please send us your challenge content through email to jobs@croct.com, and we will reply to your email with the next steps 42 | in the process. 43 | 44 | We will do our best to review your project and get back with feedback on the result as soon as possible. 45 | -------------------------------------------------------------------------------- /marketing-intern/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Marketing Intern 7 |
8 | Create a newsletter email. 9 |

10 | 11 | # Challenge 12 | 13 | As Marketing Intern, you will be responsible for creating content for the newsletter, social media, and communities 14 | while ensuring consistency across all company communication channels (blog, social media, website, sales materials, etc.). 15 | 16 | The marketing team is constantly publishing new blog posts on [our blog](https://croct.com/blog). 17 | 18 | Your task is to create a newsletter email to spread the content across the web, documenting the process you went through, 19 | from reading the blog post to writing the final drafts. 20 | 21 | ## Requirements 22 | 23 | Completing the challenge will require you to: 24 | 25 | - Create content for the newsletter email 26 | - Write the document and the content in English 🇺🇸 27 | - Create the MJML file based on the [email template](./template.mjml) 28 | - You can remove the code blocks you don't wish to use and keep those you'll use 29 | - If you don't use an IDE, we suggest using the [MJML Live editor](https://mjml.io/try-it-live/) 30 | - Follow [our brand voice](https://croct.link/brand-voice). 31 | 32 | > ⚠️ **We don't require you have experience with MJML to work as marketing intern**. So if you are not familiar with it, it's okay to try to work with the template we provided you (we promise it is simple) and send us whatever you get by the end of the deadline. Feel free to study it on the internet. It might help you get along with the basics. 33 | 34 | ## Deliverable 35 | 36 | Please send us the MJML file and the document describing the steps to [jobs@croct.com](mailto:jobs@croct.com) in a 37 | Google Docs document, and we will reply to your email informing the next steps in the process. 38 | 39 | We will do our best to review your content and get back with feedback on the result as soon as possible. 40 | -------------------------------------------------------------------------------- /devops/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Kafka Terraform Deployment 7 |
8 | A Terraform module to deploy a Kafka cluster, a consumer and a producer in a Kubernetes cluster 9 |

10 |

11 | Language 12 | Build 13 | Coverage 14 | Maintainability 15 |

16 | 17 | # Challenge 18 | 19 | As a DevOps engineer, your task is to create a Terraform module to deploy a [Kafka](https://kafka.apache.org/) cluster, 20 | a consumer and a producer on an existing Kubernetes cluster using the [Strimzi Kafka operator](https://strimzi.io/). 21 | 22 | ## Requirements 23 | 24 | Your module should assume that there is a valid Kubernetes context available and use it. Applying the module should 25 | result in: 26 | 27 | - A Strimzi operator deployed on a `strimzi` namespace 28 | - A Kafka cluster deployed on an `application` namespace using the Strimzi Operator 29 | - A Kafka topic created using Strimzi's entities operator 30 | - A job that runs `kafka-producer-perf-test` (included on Strimzi's Kafka images) to produce messages into the created 31 | topic 32 | - A deployment that runs `kafka-console-consumer` (also included on Srimzi's Kafka images) to read and log the messages 33 | from the topic to the standard output 34 | 35 | Feel free to extract out sub-modules as you deem necessary. You can also use open-source components like Helm charts and 36 | modules from the Terraform Registry – why reinvent the wheel, right? 😜 37 | 38 | ## Deliverables 39 | 40 | Please send us the repository's link to jobs@croct.com, and we will reply to your email with the next steps in the 41 | process. 42 | 43 | We will do our best to review your project and get back with feedback on the result as soon as possible. 44 | 45 | ## Extras 46 | 47 | To have a visual dashboard about what is happening on you cluster, create a deployment for either: 48 | 49 | - [Confluent Enterprise Control Center](https://hub.docker.com/r/confluentinc/cp-enterprise-control-center) 50 | - [ProvectusLab's Kafka UI](https://github.com/provectus/kafka-ui) 51 | 52 | -------------------------------------------------------------------------------- /content-editor/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Blog Post Review 7 |
8 | Review and improve a blog post. 9 |

10 | 11 | # Challenge 12 | 13 | As a Content Editor, you will be responsible for ensuring content is concise, straight to the point, and resonates with our audiences. 14 | 15 | You received two blog posts written by one of our freelance writers. One is about [user-generated content](https://docs.google.com/document/d/160yeu9ygOQFk6cGWMLRwvua6DSsB1--SLuykjel5suY/edit?usp=sharing), and the other is about how [machine learning](https://docs.google.com/document/d/1zlcr0X6Xf9-tx87wdwm06EBxvGK6DklTvUyT52LvRnk/edit?usp=sharing) can leverage personalization marketing. 16 | 17 | Your task is to make suggestions to improve both, so they have no grammatical errors or typos and follow [our brand voice guideliness](https://croct.link/brand-voice). Also, one of them was translated from Portuguese. Make sure that there isn't any sentence sounding literally translated since word-by-word translations may not make sense or sound natural compared to how native speakers would formulate it. 18 | 19 |

20 | Croct 21 |

22 | 23 | We strongly recommend you read other articles from our [blog](https://croct.com/blog) to get familiar with our writing style. 24 | 25 | To help you understand the changes we usually make, we also provide you with [previously reviewed](https://docs.google.com/document/d/1ITny1TNSvEZ_9o2BK-B9ELjMJxRoTofMTaibFHQFk2Q/edit?usp=sharing) pieces of content with highlighted adjustments our content marketing team suggested. 26 | 27 | > ⚠️ We will assess your skills based on the final content we'll have after accepting each of your suggestions, so don't be afraid to make as many changes as you think are necessary for an excellent blog post. 28 | 29 | ## Deliverable 30 | 31 | Please send us the content and the document describing the steps to [jobs@croct.com](mailto:jobs@croct.com) in a 32 | Google Docs document, and give editor access to [juliana@croct.com](mailto:juliana@croct.com) and 33 | [mariana.bonanomi@croct.com](mailto:mariana.bonanomi@croct.com) – **only editors can visualize the changes 34 | made in suggestion mode**. 35 | 36 | We will do our best to review your content and get back with feedback on the result as soon as possible. 37 | -------------------------------------------------------------------------------- /frontend-developer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Avatar Uploader 7 |
8 | A React component to upload and crop avatars. 9 |

10 |

11 | Language 12 | Build 13 | Coverage 14 | Maintainability 15 |

16 | 17 | # Challenge 18 | 19 | As a frontend developer, your task is to create a React component using Typescript to let users upload and crop avatars. 20 | 21 |
22 | 23 |

24 | Croct 25 |

26 | 27 | ## Requirements 28 | 29 | The `` component should allow users to upload images to make it easier for them to recognize key interface elements related to an organization. 30 | 31 | - It should allow uploading an image by dragging it into the dashed area or clicking on it. 32 | - Throughout the entire process, the user can click on the "X" icon to cancel and return to the initial state 33 | - After uploading, the user can adjust the image to better fit the circular format. Using a slider, the user can zoom in and out on the image cut out by the circular mask to preview the final result. 34 | - Clicking on save, the component should display the cropped logo and a button to restart the process. It must also provide some way for parent components to access the resulting image's raw data. 35 | 36 | We are very focused on code quality, so we expect you to include tests to ensure all requirements are covered. 37 | 38 | Feel free to extract out subcomponents, like the slider, as you find necessary. You can also use open-source components available in the community – why reinvent the wheel, right? 😜 39 | 40 | ## Design 41 | 42 | You can find the component's design [here](https://www.figma.com/file/aiiSV722MgNFBy0WqgfeQL/Challenges?node-id=1%3A19). 43 | 44 | ## Deliverable 45 | 46 | Please send us the repository's link to jobs@croct.com, and we will reply to your email with the next steps in the process. 47 | 48 | We will do our best to review your project and get back with feedback on the result as soon as possible. 49 | -------------------------------------------------------------------------------- /web-designer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Social Media Post 7 |
8 | Design an Instagram post for a product campaign. 9 |

10 | 11 | # Challenge 12 | 13 | As a Web Designer, you will be responsible for developing and ensuring consistency across all company communication 14 | channels (social media, website, and external presentations). 15 | 16 | For starters, your first task is to analyze the Instagram page and the website of one of the companies below and 17 | document your impressions regarding design principles, brand consistency (between the examined platforms), and personal 18 | perspective. 19 | 20 | - QuintoAndar: [site](https://www.quintoandar.com.br/) and [Instagram](https://www.instagram.com/quintoandardesign/) 21 | - Notion: [site](https://www.notion.so/product) and [Instagram](https://www.instagram.com/notionhq/) 22 | - Vtex: [site](https://vtex.com/us-en/) and [Instagram](https://www.instagram.com/vtexbrasil/) 23 | 24 | The second task is redesigning the post below: 25 | 26 | ![Post](https://user-images.githubusercontent.com/943036/137801895-28abdc1b-0534-435c-8574-3b8be7a097f6.jpg) 27 | 28 | > **Context** 29 | > We provide a report that spots the users' main interests to let our customers plan personalizations for 30 | > different people according to their interests. 31 | 32 | ## Requirements 33 | 34 | Completing the challenge will require you to: 35 | 36 | - Write the analysis in English 🇺🇸 37 | - Follow brand consistency 38 | 39 | ## Support Materials 40 | 41 | Here is the transcript of the interview: 42 | 43 | - [Our brand voice](https://croct.link/brand-voice) 44 | - [Table of interests](https://user-images.githubusercontent.com/11818859/137769752-aff10064-c77e-43ae-84bb-2845dcb17943.png) 45 | - [Post in high resolution](https://user-images.githubusercontent.com/943036/137816832-a99e835b-4d67-4ffb-a27a-8b92180bb845.png) 46 | - [Instagram feed](https://user-images.githubusercontent.com/943036/137816777-16dafdb1-8884-4a90-a7b0-df36cc041c0c.png) 47 | 48 | ## Deliverable 49 | 50 | Please send us your analysis and the post assets to [jobs@croct.com](mailto:jobs@croct.com). You can use Photoshop, 51 | Illustrator, Figma, or any tool of choice, as long as the output allows us to evaluate how you organize your work. We 52 | will reply to your email informing the next steps in the process. 53 | 54 | We will do our best to review your project and get back with feedback on the result as soon as possible. 55 | -------------------------------------------------------------------------------- /customer-success-engineer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Croct App 7 |
8 | Create a personalized application using Croct. 9 |

10 |

11 | Language 12 | Build 13 | Coverage 14 | Maintainability 15 |

16 | 17 | # Challenge 18 | 19 | As a Customer Success Engineer, you will be responsible for helping our customers to get the most out of our platform. 20 | Supporting marketers and developers means being creative, thinking out of the box, and empowering them. 21 | 22 | ## Requirements 23 | 24 | ![Example](https://cdn.croct.io/assets/app/92894646-dc3d-4553-bfaf-194598f6aa4c/images/lp-react-personalization.png) 25 | 26 | The marketing team has asked you to integrate a personalized banner on their website using our Personalization 27 | Management System (PMS). 28 | 29 | The ultimate goal is to dynamically change the content based on the user's location without deploying a new version 30 | on every change or implementing a geolocation service. 31 | 32 | For cases like this, we recommend using Croct, which allows the marketing team to change the content or personalization 33 | rules whenever needed without touching the code, exactly as they requested. 34 | 35 | ## Further Information 36 | 37 | Here are some additional information you'll need to complete the integration: 38 | 39 | - You can follow our [getting started guide](https://docs.croct.com/introduction/getting-started) to get familiar with 40 | our product. 41 | - Feel free to design the functionality and UI/UX of the app as you want, but keep in mind we're only focused on the 42 | personalization implementation 43 | - You can implement it using the stack of your choice. The purpose here is to assess your technical skills and 44 | understand how you deal with documentation 45 | - If possible, test your application. We absolutely love well-written and tested code! 😍 46 | - If you have any questions, we're here to support you! Please reach us on the `#challenges` channel in 47 | the [Croct Community](https://croct.link/community). 48 | 49 | ## Deliverable 50 | 51 | Please send us the repository's link to jobs@croct.com, and we will reply to your email with the next steps in the 52 | process. 53 | 54 | We will do our best to review your project and get back with feedback on the result as soon as possible. 55 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Croct Challenges 7 |
8 | Have fun showing off your skills! 9 |

10 | 11 | --- 12 | 13 | ### Introduction 14 | 15 | The Croct Code Challenges is a repository that houses technical challenges that simulate real-world scenarios you may face in day-to-day work at Croct. 16 | 17 | The goal is to test your in-depth knowledge of tools and technologies that you may frequently use. We don't believe there is a one-size-fits-all solution to any challenge, so don't expect to see one. We're looking for creative and innovative solutions that make use of the tools and technologies at your disposal. Exploring, digging, and breaking out of your comfort zone will most often lead to better outcomes. 18 | 19 | > 👉 Check out the currently available job openings on [our careers page](https://croct.com/careers/). 20 | 21 | ### Evaluation criteria 22 | 23 | The Croct team will review your challenge based on the following criteria: 24 | 25 | - 🧐 **Clarity** 26 | Does the README clearly explain the problem and solution? 27 | - ✅ **Correctness** 28 | Does the solution accomplish what was asked? If anything is missing, does the README explain why it is missing? 29 | - 🧑‍🎨 **Creativity** 30 | Does the solution take a creative approach to solve the problem? 31 | - 🦾 **Usability** 32 | Is the solution accessible and helpful to users? 33 | - 🧙 **Maintainability** 34 | Is the solution simple, easy to understand, and maintainable? 35 | 36 | 37 | ### Challenges 38 | 39 | The current list of challenges in this repository is: 40 | 41 | - [**Product Manager**](/product-manager) 42 | Specify user stories that will guide the development team in building a new feature. 43 | 44 | - [**Technical Writer**](/technical-writer) 45 | Write the documentation that will walk developers through the process of integrating Croct into their apps. 46 | 47 | - [**Frontend Developer**](/frontend-developer) 48 | Build a React component using Typescript to let users upload and crop avatars. 49 | 50 | - [**Backend Developer**](/backend-developer) 51 | - [Stream Application](/backend-developer/stream-application) 52 | Build a stream application to detect the geographic location of a user. 53 | 54 | - [**Devops**](/devops) 55 | Create a Terraform module to deploy a Kafka cluster, a consumer and a producer on an existing Kubernetes cluster using the Strimzi Kafka operator. 56 | 57 | - [**Customer Success Engineer**](/customer-success-engineer) 58 | Create a personalized application using Croct. 59 | 60 | - [**Web Designer**](/web-designer) 61 | Design an Instagram post for a product campaign. 62 | 63 | - [**Motion designer**](/motion-designer) 64 | Create an animation that explains how personalization in Croct works. 65 | 66 | - [**Content Strategist**](/content-strategist) 67 | - [Privacy Laws](/content-strategist/privacy-laws) 68 | Write a blog post about privacy laws and data protection. 69 | 70 | - [Core Web Vitals](/content-strategist/core-web-vitals) 71 | Write a blog post about the Core Web Vitals. 72 | 73 | - [**Social Media Marketer**](/social-media-marketer) 74 | Create copy for social media posts. 75 | 76 | - [**Marketing Intern**](/marketing-intern) 77 | Create a newsletter email. 78 | 79 | - [**Content Editor**](/content-editor) 80 | Review and improve a blog post. 81 | -------------------------------------------------------------------------------- /content-strategist/privacy-laws/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Blog Post 7 |
8 | Write a blog post about privacy laws and data protection. 9 |

10 | 11 | # Challenge 12 | 13 | As a Content Strategist, you will be responsible for creating content and ensuring consistency across all company 14 | communication channels (blog, social media, website, sales materials, etc.). 15 | 16 | You received a briefing about privacy laws, a topic that has quickly earned attention in the digital marketing world. 17 | Your task is to write a blog post introducing the case for people who may not know it. You should also document 18 | the process you go through to create this post, from researching the topic to writing the final draft. 19 | 20 | ## Briefing 21 | 22 | The requirements for this blog post are: 23 | 24 | ### Keywords 25 | 26 | The post should include the following keywords: 27 | 28 | - privacy 29 | - data protection 30 | - anonymous data 31 | 32 | ### Questions 33 | 34 | The post should address the following questions: 35 | 36 | - What are the main topics regarding data protection laws in terms of digital marketing? 37 | - What are the roles of companies within the law? 38 | - Croct is the processor, while our client is the controller 39 | - Which actions should companies take to adapt? 40 | - Companies should ask for consent and identify users 41 | - What are companies allowed to do, considering the laws? 42 | - Collecting anonymous data 43 | - Does it affect personalization? 44 | - It roughly doesn’t if it only takes anonymous data to personalize the controller’s website 45 | - How is Croct’s positioning regarding this subject? 46 | - Croct keeps users’ personal information safe by not allowing access to anonymous users’ data 47 | 48 | ### Description 49 | 50 | Marketers have many doubts regarding data protection laws (GDPR, CCPA, LGPD, etc.). One of the questions we frequently 51 | get from our clients is "_what should I consider concerning privacy laws before personalizing my website?_". 52 | 53 | #### How is this related to Croct? 54 | 55 | The task here is to draw a detailed scenario with the main aspects of the laws, keeping it accessible for our reader 56 | to understand which points from personalization can get affected by it. 57 | 58 | According to the laws, all data that refers to a natural person should be considered personal data. First name, last 59 | name, phone number, email, etc., are good examples. Some data are not considered personal per se but may refer to 60 | a natural person when combined with additional information. Company name and title are good examples of this. Alone, 61 | they are not enough to correlate with a person of flesh and blood, but when combined, maybe. There is only one person 62 | that works as Head of Sales for Croct, for example. 63 | 64 | By default, Croct only collects anonymous data from users: pages they've accessed, their geographic location (with 65 | a precision of city), device name, etc. Even combined, these data do not allow us to discover who the person who 66 | is browsing is. However, our SDK allows our clients (companies that use our platform to personalize their websites) 67 | to collect personal data and store it in the user's profile, like their name and email address. 68 | 69 | ## Requirements 70 | 71 | Completing the challenge will require you to: 72 | 73 | - Write the document and the blog post in English 🇺🇸 74 | - Follow [our brand voice](https://croct.link/brand-voice) 75 | 76 | ## Deliverable 77 | 78 | Please send us the blog post and the document describing the steps to [jobs@croct.com](mailto:jobs@croct.com) in a 79 | Google Docs document, and we will reply to your email informing the next steps in the process. 80 | 81 | We will do our best to review your content and get back with feedback on the result as soon as possible. 82 | -------------------------------------------------------------------------------- /backend-developer/stream-application/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Location Detector 7 |
8 | An application that detects the visitor's location based on the IP address. 9 |

10 |

11 | Build 12 | Coverage 13 | Maintainability 14 |

15 | 16 | # Challenge 17 | 18 | As a backend developer, your task is to create a standalone application that translates IPs from a stream of events into another stream of geographical locations. 19 | 20 | The input stream will be a sequence of messages with the following schema: 21 | 22 | - **Client ID** 23 | The ID of the client that emitted the event. 24 | - **Timestamp** 25 | The time in milliseconds since the UNIX epoch. 26 | - **IP** 27 | The IP address of the user. 28 | 29 | For the output stream should be a sequence of messages with the following schema: 30 | 31 | - **Client ID** 32 | The ID of the client that emitted the event. Same as the message that was processed. 33 | - **Timestamp** 34 | The time in milliseconds since the UNIX epoch. Same as the message that was processed. 35 | - **IP** 36 | The IP address of the user. 37 | - **Latitude** 38 | The latitude coordinate of the user. 39 | - **Longitude** 40 | The longitude coordinate of the user. 41 | - **Country** 42 | The country of the user. For example, United States. 43 | - **Region** 44 | The region of the user. For example, California. 45 | - **City** 46 | The city of the user. For example, San Francisco. 47 | 48 | 49 | # Requirements 50 | 51 | The application should meet the following requirements: 52 | 53 | - It must be standalone, meaning you should not use frameworks like Spring, Serverless, or Functions Framework, for example. 54 | - It should produce at most one location per client and IP within a time window of 30 minutes. 55 | - This 30 minutes should follow, the timestamp of the messages, not the real world time. 56 | - The translation of IPs to geographical locations should be configurable and you should include at least two of the following implementations: 57 | - Reading from a local SQLite3 database (provided here as `IPs.sqlite`) 58 | - Reading from a local CSV (provided here as `IPs.csv`) 59 | - Calling an external API 60 | You can chose any external API, if the API requires authentication it should also be configurable, here are some examples: 61 | - [IPStack](https://ipstack.com/) 62 | - [IPApi](https://ip-api.com/) 63 | - [IPGeolocation](https://ipgeolocation.io/) 64 | - The input stream should be configurable, you should include at least two of the following implementations: 65 | - Reading from a newline-delimited JSON file (provided as `input.jsonl`) 66 | - Reading from a CSV file (provided as `input.csv`) 67 | - Reading from a UNIX or TCP socket for newline-delimited JSON 68 | - Reading from a Kafka Topic (the key is the client ID, the value is a JSON without the ID) 69 | - The output stream should be configurable, you should include at least two of the following implementations: 70 | - Writing to a newline-delimited JSON file 71 | - Writing a newline-delimited JSON stream to the standard output (your logging in this case must only go to the standard error) 72 | - Writing to a CSV file 73 | - Writing to a Kafka Topic (the key should be the client ID and the value should be a JSON without the ID) 74 | 75 | Your implementations should be properly tested. 76 | 77 | You can also use open-source libraries available in the community to help you with the project. Why reinvent the wheel, right? 😜 78 | 79 | ## Deliverable 80 | 81 | Please send us the repository's link to jobs@croct.com, and we will reply to your email with the next steps in the process. 82 | 83 | We will do our best to review your project and get back with feedback on the result as soon as possible. 84 | -------------------------------------------------------------------------------- /product-manager/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Feature Specification 7 |
8 | Technical specification for the sign-in and sign-up features. 9 |

10 | 11 | # Challenge 12 | 13 | As a Product Manager that just joined the team, one of your tasks is to write the user stories that will guide the development team in building the product. 14 | 15 | The design team and the product manager collaborated to create the wireframes that you'll use as a base to write the user stories. Your task is to describe all possible scenarios involving the sign-in and sign-up pages. For each interaction, you need to write a scenario that tells the user's story and how the interface should behave. 16 | 17 | To better understand the screens you should describe, you can revisit the conversation between the designer and the product manager who created the wireframes. 18 | 19 | ## Requirements 20 | 21 | Completing the challenge will require you to: 22 | 23 | - Write the stories in English 🇺🇸 24 | - Use a clear and unambiguous writing style 25 | - Describe the stories in plain text using the [Gherkin language](https://cucumber.io/docs/gherkin/reference) 26 | - Uncover as many scenarios as possible: there are at least 6 stories on each page. 27 | 28 | Below, you can see the example of a story where the user wants to change their name from `john-doe` to `johndoe`: 29 | 30 | > **Scenario: Changing to a new valid username** 31 | > 32 | > When I visit the personal settings page 33 | > 34 | > And I enter a new username `johndoe` 35 | > 36 | > And click to *Save* 37 | > 38 | > Then I should see a notification saying _"Changes successfully saved!"_ 39 | 40 | ## Chat between design and product teams 41 | 42 | Here is the transcript of the conversation between the **Designer** and the **Product Manager**: 43 | 44 | > **Designer:** Hi there! I just got that task assigned to design, and I have some questions I would like to clarify with you. 45 | > 46 | > **Product Manager:** Sure! How can I help you? 47 | > 48 | > **Designer:** Let's start from the beginning. I designed this navigation flow between these [sign-in and sign-up screens](https://user-images.githubusercontent.com/943036/114629591-3f3ab300-9c8f-11eb-9edb-cbe5cd9a4051.png). What are your thoughts? 49 | > 50 | > **Product Manager:** I just took a look here. It seems good, but don't forget that your task comprehends only the sign-in and sign-up screens. Don't worry about the other screens for now. 51 | > 52 | > **Designer:** Ok! Which information does a user need to provide to create an account? 53 | > 54 | > **Product Manager:** The user should enter their first and last names, valid email, and a strong password. Plus, they should agree to our terms of use and privacy policy since we deal with customers' data. 55 | > 56 | > **Designer:** Noted! Could you please explain the minimum requirements for a password to be considered "strong"? 57 | > 58 | > **Product Manager:** Great question! We take security very seriously here. That's why we have some strict password requirements. At the very least, for a password to be considered strong, it should be at least 8 characters long, contain uppercase and lowercase letters, and have at least one number or symbol. 59 | > 60 | > **Designer:** Got it. Once the user is registered, which information do they need to log in to Croct? 61 | > 62 | > **Product Manager:** The email and password, as usual. 63 | > 64 | > **Designer:** That's what I thought. Taking all we've discussed into account, I designed these [wireframes](https://user-images.githubusercontent.com/943036/114629543-2c27e300-9c8f-11eb-9122-d9c11113e5db.png) for the pages. 65 | > 66 | > **Designer**: Do you think the structure and copies make sense? 67 | > 68 | > **Product Manager:** That's exactly it! 69 | > 70 | > **Designer:** Good to hear! And, thank you for the help 😉. Once I finish the screens, I will send them to you to write the user stories. 71 | > 72 | > **Product Manager:** Anytime 🙂 73 | > 74 | > **Designer:** See you later! 75 | 76 | ## Deliverable 77 | 78 | Please send us the repository's link to jobs@croct.com, and we will reply to your email with the next steps in the process. 79 | 80 | We will do our best to review your project and get back with feedback on the result as soon as possible. 81 | -------------------------------------------------------------------------------- /motion-designer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Motion designer 7 |
8 | Create an animation that explains how personalization in Croct works 9 |

10 | 11 | # Introduction 12 | 13 | As a motion-designer at Croct, you will: 14 | 15 | - Help our customers understand the platform more easily through animations; 16 | - Design commercial animations to promote product updates on social medias, email, blog and website; 17 | 18 | ## What does Croct do? 19 | 20 | Croct is a startup that focuses on improving the user experience through personalization. 21 | 22 | Using our platform, you can deliver a different experience to each customer simultaneously. It's like having a custom website for each visitor, but without the burden of maintaining multiple versions of your website. 23 | 24 | For example, imagine that a company wants to personalize a banner for pet parents who live in Florianopolis. Croct analyzes which people fit this audience and shows them the personalized variant. 25 | 26 |

27 | Croct 28 |

29 | 30 | Cool huh? With Croct it's possible! To create these personalized experiences, you need to tell who you want to personalize for (Audience → Parents of Pet in Floripa), which place on your platform you would like to personalize (Slot → Home banner), and what content you would like to show to that audience (banner with a cute cat). 31 | 32 | Below is a diagram explaining how to create an experience in Croct: 33 | 34 |

35 | Croct 36 |

37 | 38 | ## Deliverable 1 39 | 40 | Create an animation that briefly explains how personalization in Croct works. 41 | 42 | Here is the animation script: 43 | 44 | 1. A skeleton interface with a button labeled "New experience". By clicking on new experience... 45 | 2. ...the audience definition screen appears, showing the condition to participate (ex: liking cats, living in Florianopolis, etc) 46 | 3. Show the content definition 47 | 4. Show the experience going live 48 | 5. Show that only users who fit that audience are seeing that experience. 49 | 50 | ### Specification 51 | 52 | - Frame width → 720px 53 | - Frame height → open for suggestions 54 | - Animation time → Maximum of 10s 55 | - Appearance → Should use Croct's branding 56 | - Document format → Editable After Effect file + mp4 animation 57 | 58 | ### References 59 | 60 | - [Strategic Product Management Platform](https://airfocus.com/) 61 | - [Storybook: UI component explorer for frontend developers](https://storybook.js.org/) 62 | - [Segment | #1 CDP to Manage Customer Data](https://segment.com/#:~:text=Together%2C%20our-,products,-create%20your%20ultimate) 63 | 64 | ## Deliverable 2 65 | 66 | Having a critical view is a key trait of a Crocter. That's why we'd like you to choose one of the tools below and write a critical review about the use of motion on their platforms: 67 | 68 | - Storybook: [site](https://storybook.js.org/) and [blog](https://storybook.js.org/blog) 69 | - Segment: [site](https://segment.com/) 70 | - Figma: [site](https://www.figma.com/) 71 | 72 | ### Specification 73 | 74 | - Language → English 75 | - Maximum length → 5 pages 76 | - Covered topics → You are free to choose the topics that you find most interesting 77 | - Document format → PDF 78 | 79 | ## Requirements 80 | 81 | - Follow brand consistency 82 | - Document the analysis in English 🇺🇸 83 | 84 | ## Support materials 85 | 86 | - [Croct's brand voice](https://docs.google.com/presentation/d/1aZxXDtMiSZLfI5FIW360Z-xT8V1SVk8Nz6KIxLDBWiI/edit) 87 | - [Croct's Instagram](https://www.instagram.com/croct/) 88 | - [Croct's Landing page](https://croct.com/) 89 | - [Croct's Blog](https://blog.croct.dev/) 90 | 91 | > ⚠️ We won't use any produced graphic or textual material unless we have a specific agreement with the candidate. 92 | 93 | Please send your deliverables to [jobs@croct.com](mailto:jobs@croct.com) and we will reply to your email, including the next steps in the process. 94 | 95 | We will do our best to review your project and get back with feedback on the result as soon as possible. 96 | -------------------------------------------------------------------------------- /content-strategist/core-web-vitals/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Blog Post 7 |
8 | Write a blog post about the Core Web Vitals 9 |

10 | 11 | # Challenge 12 | 13 | As a Content Strategist, you will be responsible for creating content and ensuring consistency across all company 14 | communication channels (blog, social media, website, sales materials, etc.). 15 | 16 | You received a briefing about core web vitals, a topic that has quickly earned attention in the digital marketing 17 | world. Your task is to write a blog post introducing the case for people who may not know it. You should also 18 | document the process you go through to create this post, from researching the topic to writing the final draft. 19 | 20 | ## Briefing 21 | 22 | The requirements for this blog post are: 23 | 24 | ### Keywords 25 | 26 | The post should include the following keywords: 27 | 28 | - user experience 29 | - page experience 30 | - ranking criteria 31 | - web vitals 32 | - core web vitals 33 | 34 | ### Questions 35 | 36 | The post should address the following questions: 37 | 38 | - What metrics does Google use today to measure page experience? 39 | - What does "Core Web Vitals" mean? 40 | - What are the new "Core Web Vitals" metrics? 41 | - What is the impact of this change on personalization strategies? 42 | 43 | ### Description 44 | 45 | In May 2020, Google announced that its ranking algorithm would be updated to focus on user experience. One of the new 46 | algorithm's metrics is entirely in line with what we do and gives us a substantial competitive advantage due to how 47 | our software works. Most of the personalization tools on the market today emerged from the evolution of AB testing 48 | tools. A great example of this is Google Optimize. 49 | 50 | Traditionally, personalization and AB tests are performed in the browser (client-side) and happen as follows: 51 | 1. The site loads with the default static content 52 | 2. Using the browser's resources, the tool runs the test or evaluates what to display to the user and applies 53 | the corresponding content over the default site, shifting its elements 54 | 3. After the content is loaded, the user sees the modified site. 55 | 56 | Due to the delay between steps 1 and 3, users often notice the page reloads, which we call page flicker. This process 57 | changes the page's content, which means that tests and personalization impact the "Cumulative Layout Shift" metric. 58 | 59 | 60 | #### How is this related to Croct? 61 | 62 | The task here is to draw a detailed scenario with the main aspects of the Core Web Vitals, keeping it accessible 63 | for our reader to understand how it can affect personalization strategies. 64 | 65 | We provide a solution for growth teams to create natively personalized applications that offer unique experiences 66 | for users according to their behavioral profile, interests, and browsing history. Our PMS (Personalization 67 | Management System) is like a content management system that allows them to dynamically display content without 68 | depending on developers to personalize and deploy it on each change. 69 | 70 | Since Croct's PMS runs personalization and AB tests on the server (server-side), this happens as follows: 71 | 1. When starting to load, the website fetches the content to be displayed 72 | 2. Using server resources, the PMS runs the test or evaluates what to display to the user and provides the browser 73 | with the content to be displayed 74 | 4. After the content is loaded, the user sees the site. 75 | 76 | From an SEO point of view, this process is much more suitable because: 77 | - The user doesn't see two contents, just as he doesn't see the page "flicking" 78 | - The site doesn't get heavy because it doesn't load two different contents, just the final content 79 | - The performance of the site is much better since it doesn't run all the logic using the user's browser but 80 | using the Croct server 81 | - Content does not change during load, not impacting the "Cumulative Layout Shift" metric. 82 | 83 | ## Requirements 84 | 85 | Completing the challenge will require you to: 86 | 87 | - Write the document and the blog post in English 🇺🇸 88 | - Follow [our brand voice](https://croct.link/brand-voice) 89 | 90 | ## Deliverable 91 | 92 | Please send us the blog post and the document describing the steps to [jobs@croct.com](mailto:jobs@croct.com) in a 93 | Google Docs document, and we will reply to your email informing the next steps in the process. 94 | 95 | We will do our best to review your content and get back with feedback on the result as soon as possible. 96 | -------------------------------------------------------------------------------- /backend-developer/stream-application/IPs.csv: -------------------------------------------------------------------------------- 1 | ip,latitude,longitude,country,state,city 2 | 30.46.245.122,39.97883,-82.89573,United States,Ohio,Columbus 3 | 194.13.98.124,51.98038,5.90333,Netherlands,Gelderland, 4 | 113.203.103.249,35.76067,51.40426,Iran,,Tehran 5 | 206.60.255.24,40.82120,-74.13370,United States,New Jersey,Nutley 6 | 168.208.1.242,44.82090,-93.46061,United States,Minnesota,Eden Prairie 7 | 26.133.138.78,39.97883,-82.89573,United States,Ohio,Columbus 8 | 158.89.63.196,-31.95383,115.84988,Australia,Western Australia,Perth 9 | 15.90.72.218,37.41188,-122.14806,United States,California,Palo Alto 10 | 62.202.1.225,47.36197,8.50949,Switzerland,Zurich,Zurich 11 | 43.149.42.112,32.04154,118.76741,China,Jiangsu,Nanjing 12 | 214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 13 | 90.155.33.26,51.41530,-0.76532,United Kingdom,England, 14 | 44.117.224.123,32.81943,-117.17978,United States,California,San Diego 15 | 13.196.190.80,47.55379,-122.30346,United States,Washington,Seattle 16 | 141.175.56.25,45.93804,6.12052,France,Auvergne-Rhone-Alpes,Epagny Metz-Tessy 17 | 98.75.106.201,29.21082,-81.02283,United States,Florida,Daytona Beach 18 | 207.6.8.176,50.67424,-120.33406,Canada,British Columbia,Kamloops 19 | 193.28.50.187,51.54611,9.90432,Germany,Lower-Saxony,Göttingen 20 | 161.135.108.169,35.03296,-89.72355,United States,Tennessee,Collierville 21 | 70.162.38.172,33.44825,-112.07580,United States,Arizona,Phoenix 22 | 39.167.59.72,27.11170,114.98637,China,Jiangxi,Jian 23 | 166.12.34.116,47.36993,8.53864,Switzerland,Zurich,Zurich 24 | 221.127.92.159,22.34434,114.11210,Hong Kong,Hong Kong SAR,New Territories 25 | 15.114.91.36,37.41467,-122.14572,United States,California,Palo Alto 26 | 196.228.128.173,36.84980,10.19732,Tunisia,,Tunis 27 | 149.232.51.190,51.48957,7.40455,Germany,North-Rhine-Westphalia,Dortmund 28 | 192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 29 | 112.51.242.134,26.07530,119.30624,China,Fujian,Fuzhou 30 | 1.36.218.4,22.26650,114.24677,Hong Kong,Hong Kong SAR,Hong Kong 31 | 18.38.14.236,47.62232,-122.33665,United States,Washington,Seattle 32 | 15.31.18.8,37.41188,-122.14806,United States,California,Palo Alto 33 | 131.23.187.25,32.40286,-86.24044,United States,Alabama,Montgomery 34 | 110.149.66.93,-37.81739,144.96751,Australia,Victoria,Melbourne 35 | 91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 36 | 196.170.252.87,6.12563,1.22542,Togo,Maritime Region,Lomé 37 | 144.48.22.176,21.03083,105.78278,Vietnam,Hà Nội, 38 | 128.106.91.210,1.29884,103.83882,Singapore,,Singapore 39 | 90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 40 | 51.121.73.0,34.05357,-118.24545,United States,California,Los Angeles 41 | 141.209.1.134,40.18957,-79.58207,United States,Pennsylvania,Mt Pleasant 42 | 88.116.218.216,48.18114,16.39087,Austria,Vienna,Vienna 43 | 114.182.202.192,35.69156,139.76755,Japan,Tokyo,Chiyoda City 44 | 8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 45 | 16.120.66.50,47.55379,-122.30346,United States,Washington,Seattle 46 | 55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 47 | 63.88.221.171,39.01121,-77.47120,United States,Virginia,Ashburn 48 | 220.126.235.59,37.41043,127.13716,South Korea,,Seongnam 49 | 69.115.161.47,40.75997,-73.50450,United States,New York,Hicksville 50 | 214.95.173.84,39.97883,-82.89573,United States,Ohio,Columbus 51 | 56.176.128.215,47.55379,-122.30346,United States,Washington,Seattle 52 | 143.19.95.222,39.10291,-84.50630,United States,Ohio,Cincinnati 53 | 29.225.211.57,39.97883,-82.89573,United States,Ohio,Columbus 54 | 177.124.43.52,-21.21030,-50.45827,Brazil,Sao Paulo,Araçatuba 55 | 142.142.72.15,43.65811,-79.37557,Canada,Ontario,Toronto 56 | 72.132.49.186,33.72892,-116.37866,United States,California,Palm Desert 57 | 28.153.153.219,39.97883,-82.89573,United States,Ohio,Columbus 58 | 172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 59 | 40.235.94.232,39.75588,-86.15417,United States,Indiana,Indianapolis 60 | 52.33.119.26,44.93326,-123.04381,United States,Oregon, 61 | 78.104.175.24,47.82262,13.04103,Austria,Salzburg,Salzburg 62 | 130.195.121.121,51.23569,6.73257,Germany,North-Rhine-Westphalia,Dusseldorf 63 | 59.90.255.63,12.96677,77.58003,India,Karnataka,Bengaluru 64 | 107.227.210.89,47.66930,-122.12180,United States,Washington,Redmond 65 | 63.156.63.34,32.58997,-92.06862,United States,Louisiana,Monroe 66 | 169.255.40.248,6.43056,3.41425,Nigeria,Lagos,Lagos 67 | 109.202.55.192,56.38197,61.96860,Russia,Ural Federal District,Kamensk-Uralsky 68 | 34.146.217.30,37.42240,-122.08421,United States,California,Mountain View 69 | 124.62.216.84,37.55886,126.99989,South Korea,,Seoul 70 | 149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 71 | 152.245.43.249,-23.56287,-46.65468,Brazil,Sao Paulo,Sao Paulo 72 | 220.77.221.121,37.41043,127.13716,South Korea,,Seongnam 73 | 203.252.78.50,37.55886,126.99989,South Korea,,Seoul 74 | 146.37.213.135,37.75832,-121.95969,United States,California,San Ramon 75 | 39.14.230.35,25.01519,121.47930,Taiwan,,New Taipei City 76 | 156.216.81.236,30.03808,31.20930,Egypt,,El Dokki 77 | 167.241.95.228,47.55379,-122.30346,United States,Washington,Seattle 78 | 56.121.49.111,35.83782,-78.61171,United States,North Carolina,Raleigh 79 | 51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 80 | 193.239.237.3,51.60999,-0.24436,United Kingdom,England,London 81 | 223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 82 | 107.123.239.116,47.66930,-122.12180,United States,Washington,Redmond 83 | 162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 84 | 169.106.224.224,40.70823,-74.01056,United States,New York,New York 85 | -------------------------------------------------------------------------------- /technical-writer/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | Croct 4 | 5 |
6 | Croct Docs 7 |
8 | Learn how to integrate Croct into your application. 9 |

10 | 11 | # Challenge 12 | 13 | As a technical writer who recently joined the team, your task is to write the documentation that will walk developers 14 | through the process of integrating Croct into their apps. You've invited Juliana, the Subject Matter Expert (SME), 15 | for an interview to gather the information you need to start writing a documentation plan and the first section. 16 | 17 | ## Requirements 18 | 19 | Completing the challenge will require you to: 20 | 21 | - Write the document in English 🇺🇸 22 | - Propose a table of contents for the documentation using [task-based headings](https://developers.google.com/tech-writing/two/large-docs#prefer_task-based_headings) 23 | - [Outline the first sections of the document](https://developers.google.com/tech-writing/two/large-docs#outline_a_document), including a brief description of what each section will cover 24 | - Fill the first section of the plan, or the first 1000 words, whichever is shorter 25 | - Format the document using [Markdown](https://en.wikipedia.org/wiki/Markdown) 26 | 27 | Outline example from the [Stripe Docs](https://stripe.com/docs): 28 | 29 | ```markdown 30 | # Payments 31 | Find a guide to integrate Stripe's payments APIs. 32 | 33 | ## Online Payments 34 | Build a payment form or use a prebuilt checkout page to accept online payments. 35 | 36 | ### How cards work 37 | See how a credit or debit card payment works online, step by step. 38 | 39 | ### Custom payment flow 40 | Learn how to embed a custom Stripe payment form in your website or application. 41 | 42 | # Developer tools 43 | Get up and running with libraries, keys, and integration tools. 44 | 45 | ## Stripe CLI 46 | Build, test, and manage your Stripe integration right from the terminal. 47 | 48 | ## Webhooks 49 | Listen for events on your Stripe account so your integration can automatically trigger reactions. 50 | ``` 51 | 52 | ## Interview 53 | 54 | Here is the transcript of the interview: 55 | 56 | > **Interviewer:** Hi Juliana! Thanks for accepting my invitation to the interview. 57 | > 58 | > **Juliana:** Hi there! I'm glad to help. Welcome to the team! 🙂 59 | > 60 | > **Interviewer:** Great! Let's start from the beginning: what exactly is Croct? 61 | > 62 | > **Juliana:** Croct is a SaaS platform that provides technology for real-time personalization. We provide unified and managed customer data for marketers, product managers, and software engineers to generate insights, toggle features to meet each customer's unique needs, and drive revenue with timely and relevant messages. The platform is also expertly designed for developers, allowing them to focus on building great products instead of expensive personalization infrastructure. By working with Croct, companies can take full advantage of first-party customer data to create a positive customer experience and increase their ROI. 63 | > 64 | > **Interviewer:** Great intro, thanks! Is Croct focused on a particular type of personalization? 65 | > 66 | > **Juliana:** Well, the possibilities are pretty much endless, but we focus on three main avenues: boost conversion, improve user experience, and increase engagement. 67 | > 68 | > **Interviewer:** I can't imagine a company that doesn't care about all three of those. Each application uses a different tech stack, though, how does Croct adapt to that? 🤔 69 | > 70 | > 71 | > **Juliana:** Our focus is on providing a great developer experience on any platform and framework. We currently provide an SDK only for JavaScript, but we're working to support iOS and Android. 72 | > 73 | > **Interviewer:** Can you walk me through the implementation process? 74 | > 75 | > **Juliana:** The implementation process consists of gathering data, defining a personalization strategy and goal, and implementing. The first step is gathering the information that will fuel the personalization engine – it’s common to all other steps. The second step is defining the audience, whether it will be an experiment or not (like an A/B test), what will be personalized, and which metrics will help to measure the outcome of the personalization. The last step is actually implementing the personalization and, eventually, the tracking to measure the results. 76 | > 77 | > **Interviewer:** Ok, thanks for the details. So I guess this flow is common to all the implementations? 78 | > 79 | > **Juliana:** Yes, that's the same for both web (Vanilla JavaScript, React, Vue, NextJs, etc) and app (iOS and Android). 80 | > 81 | > **Interviewer:** What our customers use the platform for? 82 | > 83 | > **Juliana:** Marketing, product, and engineering teams use Croct to drive revenue with more targeted messages and to increase the near-term customer lifetime value. 84 | > 85 | > **Interviewer:** I heard that Croct created a programming language for non-developers, is it true? 😨 86 | > 87 | > **Juliana:** Yes! It's called CQL - Contextual Query Language. It's an intuitive query language that allows anyone - even those who never touched code before - to query information and make decisions without dealing with code, data processing, or other complicated stuff. 88 | > 89 | > **Interviewer:** Can you give me a few examples of CQL? 90 | > 91 | > **Juliana:** Sure! For example, `page's title` is a valid CQL expression that tells you the title of the page the user is currently viewing. Similarly, `user's name` will tell you the name of the user using your app. Simple as that. 92 | > 93 | > **Interviewer:** That seems really straightforward. It's plain English! 🤩 94 | > 95 | > **Juliana:** Yes! 😜 96 | > 97 | > **Interviewer:** So it's like SQL, but for non-developers? 98 | > 99 | > **Juliana:** You could say that, yes. 100 | > 101 | > **Interviewer:** Got it. What can you tell me about the target audience of the documentation? 102 | > 103 | > **Juliana:** The documentation is for developers that want to, or have to, integrate Croct into an application. 104 | > 105 | > **Interviewer:** I see. What would make the documentation good? 106 | > 107 | > **Juliana:** I guess it would be good if it is written in such a way that follows a logical progression of integration steps and is accessible to any developer from any level of skill. 108 | > 109 | > **Interviewer:** Could you give me references of what you consider a good documentation? 110 | > 111 | > **Juliana:** Developers really love the [Stripe docs](https://stripe.com/docs). They are really well laid out, easy to follow, and know what they are talking about. They have a good way of teaching the reader things without making it seem like it's boring. I also like the [Twilio doc](https://www.twilio.com/docs), they have some tutorials and it's got interactive demos, which developers really like. Last but not least, the [Launch Darkly docs](https://docs.launchdarkly.com/home/getting-started) solves some of the challenges that we have here. 112 | > 113 | > **Interviewer:** What do you think would make the documentation successful? 114 | > 115 | > **Juliana:** That's an easy one: reduce the integration time. We really need to make our onboarding process as smooth as possible. 116 | > 117 | > **Interviewer:** I see how the docs could help with that. 118 | > 119 | > **Interviewer:** I noticed that the voice and tone we use don't follow the formal style of most documentation. How would you describe Croct's brand voice? 120 | > 121 | > **Juliana:** [Croct's brand voice](https://croct.link/brand-voice) is professional yet friendly. It's not overly formal or complicated. We prefer conversational, but not too casual, language. We use contractions like "isn't" and "aren't" to make it sound more natural. Emojis are okay in moderation. 122 | > 123 | > **Interviewer:** That was the impression that I got while playing with the [quick start guide](https://github.com/croct-tech/plug-js/blob/master/docs/quick-start.md)! 124 | > 125 | > **Interviewer:** Is there any style guide in particular that we follow? 126 | > 127 | > **Juliana:** Yes, we really like the [Google style guide](https://developers.google.com/style), but the [IBM](https://www.carbondesignsystem.com/guidelines/content/writing-style/) and [Apple](https://help.apple.com/applestyleguide/) style guides are pretty good too. 128 | > 129 | > **Interviewer:** What is it specifically about their style guide that appeals to you? 130 | > 131 | > **Juliana:** I like that they are clean, organized, and succinct. They maintain a similar structure and content across different topics, so developers can tap through it without needing to read everything 132 | > 133 | > **Interviewer:** Well Juliana, I think I have a good understanding of what the documentation should cover and how it should be written. I'll get to work on the documentation plan now and I'll send it to you for review. Thank you for your time! 134 | > 135 | > **Juliana:** Anytime 🙂 136 | 137 | ## Deliverable 138 | 139 | Please send us the repository's link to jobs@croct.com, and we will reply to your email with the next steps in the process. 140 | 141 | We will do our best to review your project and get back with feedback on the result as soon as possible. 142 | -------------------------------------------------------------------------------- /backend-developer/stream-application/input.csv: -------------------------------------------------------------------------------- 1 | timestamp,id,ip 2 | 1684196387094,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63 3 | 1684196440840,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 4 | 1684196476484,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 5 | 1684196516641,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 6 | 1684196558470,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 7 | 1684196606664,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 8 | 1684196665608,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 9 | 1684196698276,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 10 | 1684196743449,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 11 | 1684196779271,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 12 | 1684196815396,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 13 | 1684196862703,7b72c512-c34f-5e26-aecc-a09b1c107938,72.132.49.186 14 | 1684196908498,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 15 | 1684196954664,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 16 | 1684197006250,baa10c90-6ee4-5fe6-8568-01dcae970035,15.31.18.8 17 | 1684197038731,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 18 | 1684197087374,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 19 | 1684197136662,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 20 | 1684197196602,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 21 | 1684197238045,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 22 | 1684197286858,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 23 | 1684197342630,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 24 | 1684197382908,6518f323-b53d-5946-a43d-eaa888253ff8,69.115.161.47 25 | 1684197431240,6518f323-b53d-5946-a43d-eaa888253ff8,69.115.161.47 26 | 1684197483772,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 27 | 1684197517663,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 28 | 1684197569425,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 29 | 1684197620137,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 30 | 1684197674147,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 31 | 1684197731766,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 32 | 1684197784776,6518f323-b53d-5946-a43d-eaa888253ff8,69.115.161.47 33 | 1684197784776,6518f323-b53d-5946-a43d-eaa888253ff8, 34 | 1684197823949,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 35 | 1684197868129,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 36 | 1684197910376,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 37 | 1684197970273,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 38 | 1684198020383,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 39 | 1684198054985,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 40 | 1684198107468,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 41 | 1684198157420,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 42 | 1684198193505,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 43 | 1684198250451,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 44 | 1684198306236,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 45 | 1684198352780,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 46 | 1684198391416,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 47 | 1684198427878,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38 48 | 1684198475149,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 49 | 1684198524905,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 50 | 1684198572689,7b72c512-c34f-5e26-aecc-a09b1c107938,72.132.49.186 51 | 1684198616988,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 52 | 1684198664009,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38 53 | 1684198706808,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63 54 | 1684198743134,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 55 | 1684198797060,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38 56 | 1684198854432,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 57 | 1684198892218,7b72c512-c34f-5e26-aecc-a09b1c107938,72.132.49.186 58 | 1684198892218,7b72c512-c34f-5e26-aecc-a09b1c107938, 59 | 1684198952156,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63 60 | 1684198985950,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38 61 | 1684199028787,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 62 | 1684199069982,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63 63 | 1684199104110,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 64 | 1684199156905,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 65 | 1684199191970,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 66 | 1684199227055,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63 67 | 1684199227055,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2, 68 | 1684199284836,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 69 | 1684199321822,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 70 | 1684199357948,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 71 | 1684199402803,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 72 | 1684199441651,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38 73 | 1684199495281,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 74 | 1684199525412,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 75 | 1684199573903,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 76 | 1684199627228,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 77 | 1684199680419,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 78 | 1684199714540,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 79 | 1684199754150,baa10c90-6ee4-5fe6-8568-01dcae970035,15.31.18.8 80 | 1684199754150,baa10c90-6ee4-5fe6-8568-01dcae970035, 81 | 1684199785619,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 82 | 1684199836301,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38 83 | 1684199836301,f353d640-647d-54e2-ad90-37d7de80fe34, 84 | 1684199886956,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 85 | 1684199935557,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 86 | 1684199986635,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 87 | 1684200035595,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 88 | 1684200080933,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 89 | 1684200137544,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 90 | 1684200180758,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0 91 | 1684200180758,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9, 92 | 1684200237950,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 93 | 1684200289820,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 94 | 1684200349750,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 95 | 1684200408239,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 96 | 1684200457503,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 97 | 1684200503309,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 98 | 1684200546860,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 99 | 1684200602404,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 100 | 1684200634773,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 101 | 1684200681961,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 102 | 1684200739580,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 103 | 1684200787036,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 104 | 1684200825101,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 105 | 1684200873956,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 106 | 1684200907690,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 107 | 1684200945595,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77 108 | 1684200945595,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8, 109 | 1684200976279,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 110 | 1684201010235,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 111 | 1684201055782,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 112 | 1684201103753,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 113 | 1684201137140,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204 114 | 1684201137140,fba283ed-9295-5907-848d-59da9d2664a1, 115 | 1684201183272,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 116 | 1684201241536,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 117 | 1684201276947,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 118 | 1684201328277,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 119 | 1684201387367,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 120 | 1684201439101,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 121 | 1684201495014,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 122 | 1684201547652,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 123 | 1684201581479,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 124 | 1684201628876,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 125 | 1684201687549,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 126 | 1684201728633,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 127 | 1684201777518,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 128 | 1684201836080,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 129 | 1684201889208,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143 130 | 1684201889208,aff3b117-acd0-503e-b2fd-f37c0e5612ef, 131 | 1684201922748,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 132 | 1684201969610,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 133 | 1684202008613,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 134 | 1684202052357,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 135 | 1684202089395,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 136 | 1684202131306,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 137 | 1684202185605,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 138 | 1684202228551,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 139 | 1684202274311,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 140 | 1684202312657,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 141 | 1684202366619,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 142 | 1684202417874,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 143 | 1684202457782,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 144 | 1684202501812,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 145 | 1684202557564,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 146 | 1684202604117,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 147 | 1684202657368,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 148 | 1684202707530,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 149 | 1684202742977,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 150 | 1684202777017,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 151 | 1684202809492,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110 152 | 1684202809492,3c935d47-dade-522c-96af-511ecb068fdb, 153 | 1684202856119,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 154 | 1684202889960,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 155 | 1684202939358,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 156 | 1684202992898,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 157 | 1684203023614,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 158 | 1684203067275,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 159 | 1684203109058,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 160 | 1684203146652,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 161 | 1684203181946,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 162 | 1684203220987,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 163 | 1684203274156,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 164 | 1684203311936,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 165 | 1684203343337,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 166 | 1684203375775,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 167 | 1684203407669,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 168 | 1684203444301,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 169 | 1684203501878,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59 170 | 1684203501878,9a68e620-6deb-58c1-be7b-8ef47190ec47, 171 | 1684203547866,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 172 | 1684203598952,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 173 | 1684203644623,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 174 | 1684203697126,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 175 | 1684203743444,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 176 | 1684203797243,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 177 | 1684203829048,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 178 | 1684203866141,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 179 | 1684203902707,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 180 | 1684203952251,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 181 | 1684204009833,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 182 | 1684204045409,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 183 | 1684204085107,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 184 | 1684204142362,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 185 | 1684204193714,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 186 | 1684204224575,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 187 | 1684204264132,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 188 | 1684204299627,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 189 | 1684204340441,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 190 | 1684204397046,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 191 | 1684204448731,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 192 | 1684204484689,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 193 | 1684204541849,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 194 | 1684204589164,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 195 | 1684204623499,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 196 | 1684204674650,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 197 | 1684204726757,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 198 | 1684204760880,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21 199 | 1684204760880,1f15b7d4-6481-50ea-84dc-3555326ee3fe, 200 | 1684204806377,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211 201 | 1684204806377,95cdb0f2-9487-5bfd-aeda-bac27dd406fa, 202 | 1684204851919,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 203 | 1684204906819,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 204 | 1684204960883,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 205 | 1684205011498,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 206 | 1684205045818,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 207 | 1684205089726,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 208 | 1684205127882,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 209 | 1684205177778,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 210 | 1684205226636,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 211 | 1684205284154,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 212 | 1684205315076,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 213 | 1684205355427,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60 214 | 1684205355427,7d116fe5-2cac-5811-8101-d50810709f47, 215 | 1684205413385,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 216 | 1684205453836,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 217 | 1684205486604,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 218 | 1684205544991,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 219 | 1684205589792,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 220 | 1684205648590,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 221 | 1684205706829,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 222 | 1684205746183,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 223 | 1684205800173,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 224 | 1684205838463,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 225 | 1684205871074,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192 226 | 1684205871074,ee526cba-4846-5a1f-bd30-5397a63ce383, 227 | -------------------------------------------------------------------------------- /backend-developer/stream-application/input.jsonl: -------------------------------------------------------------------------------- 1 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "ip": "59.90.255.63", "timestamp": 1684196387094} 2 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684196440840} 3 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684196476484} 4 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684196516641} 5 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684196558470} 6 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684196606664} 7 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684196665608} 8 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684196698276} 9 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684196743449} 10 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684196779271} 11 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684196815396} 12 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "ip": "72.132.49.186", "timestamp": 1684196862703} 13 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684196908498} 14 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684196954664} 15 | {"id": "baa10c90-6ee4-5fe6-8568-01dcae970035", "ip": "15.31.18.8", "timestamp": 1684197006250} 16 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684197038731} 17 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684197087374} 18 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684197136662} 19 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684197196602} 20 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684197238045} 21 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684197286858} 22 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684197342630} 23 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "ip": "69.115.161.47", "timestamp": 1684197382908} 24 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "ip": "69.115.161.47", "timestamp": 1684197431240} 25 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684197483772} 26 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684197517663} 27 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684197569425} 28 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684197620137} 29 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684197674147} 30 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684197731766} 31 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "ip": "69.115.161.47", "timestamp": 1684197784776} 32 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "ip": null, "timestamp": 1684197784776} 33 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684197823949} 34 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684197868129} 35 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684197910376} 36 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684197970273} 37 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684198020383} 38 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684198054985} 39 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684198107468} 40 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684198157420} 41 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684198193505} 42 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684198250451} 43 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684198306236} 44 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684198352780} 45 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684198391416} 46 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": "172.111.30.38", "timestamp": 1684198427878} 47 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684198475149} 48 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684198524905} 49 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "ip": "72.132.49.186", "timestamp": 1684198572689} 50 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684198616988} 51 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": "172.111.30.38", "timestamp": 1684198664009} 52 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "ip": "59.90.255.63", "timestamp": 1684198706808} 53 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684198743134} 54 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": "172.111.30.38", "timestamp": 1684198797060} 55 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684198854432} 56 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "ip": "72.132.49.186", "timestamp": 1684198892218} 57 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "ip": null, "timestamp": 1684198892218} 58 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "ip": "59.90.255.63", "timestamp": 1684198952156} 59 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": "172.111.30.38", "timestamp": 1684198985950} 60 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684199028787} 61 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "ip": "59.90.255.63", "timestamp": 1684199069982} 62 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684199104110} 63 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684199156905} 64 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684199191970} 65 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "ip": "59.90.255.63", "timestamp": 1684199227055} 66 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "ip": null, "timestamp": 1684199227055} 67 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684199284836} 68 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684199321822} 69 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684199357948} 70 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684199402803} 71 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": "172.111.30.38", "timestamp": 1684199441651} 72 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684199495281} 73 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684199525412} 74 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684199573903} 75 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684199627228} 76 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684199680419} 77 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684199714540} 78 | {"id": "baa10c90-6ee4-5fe6-8568-01dcae970035", "ip": "15.31.18.8", "timestamp": 1684199754150} 79 | {"id": "baa10c90-6ee4-5fe6-8568-01dcae970035", "ip": null, "timestamp": 1684199754150} 80 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684199785619} 81 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": "172.111.30.38", "timestamp": 1684199836301} 82 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "ip": null, "timestamp": 1684199836301} 83 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684199886956} 84 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684199935557} 85 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684199986635} 86 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684200035595} 87 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684200080933} 88 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684200137544} 89 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": "91.174.207.0", "timestamp": 1684200180758} 90 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "ip": null, "timestamp": 1684200180758} 91 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684200237950} 92 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684200289820} 93 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684200349750} 94 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684200408239} 95 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684200457503} 96 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684200503309} 97 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684200546860} 98 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684200602404} 99 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684200634773} 100 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684200681961} 101 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684200739580} 102 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684200787036} 103 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684200825101} 104 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684200873956} 105 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684200907690} 106 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": "162.95.29.77", "timestamp": 1684200945595} 107 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "ip": null, "timestamp": 1684200945595} 108 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684200976279} 109 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684201010235} 110 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684201055782} 111 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684201103753} 112 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": "192.98.251.204", "timestamp": 1684201137140} 113 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "ip": null, "timestamp": 1684201137140} 114 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684201183272} 115 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684201241536} 116 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684201276947} 117 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684201328277} 118 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684201387367} 119 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684201439101} 120 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684201495014} 121 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684201547652} 122 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684201581479} 123 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684201628876} 124 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684201687549} 125 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684201728633} 126 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684201777518} 127 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684201836080} 128 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": "55.60.192.143", "timestamp": 1684201889208} 129 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "ip": null, "timestamp": 1684201889208} 130 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684201922748} 131 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684201969610} 132 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202008613} 133 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684202052357} 134 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684202089395} 135 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684202131306} 136 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684202185605} 137 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202228551} 138 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684202274311} 139 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684202312657} 140 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202366619} 141 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684202417874} 142 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684202457782} 143 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684202501812} 144 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202557564} 145 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684202604117} 146 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202657368} 147 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684202707530} 148 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202742977} 149 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684202777017} 150 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": "90.69.147.110", "timestamp": 1684202809492} 151 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "ip": null, "timestamp": 1684202809492} 152 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684202856119} 153 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684202889960} 154 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684202939358} 155 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684202992898} 156 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684203023614} 157 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684203067275} 158 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684203109058} 159 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684203146652} 160 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684203181946} 161 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684203220987} 162 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684203274156} 163 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684203311936} 164 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684203343337} 165 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684203375775} 166 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684203407669} 167 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684203444301} 168 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": "223.232.180.59", "timestamp": 1684203501878} 169 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "ip": null, "timestamp": 1684203501878} 170 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684203547866} 171 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684203598952} 172 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684203644623} 173 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684203697126} 174 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684203743444} 175 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684203797243} 176 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684203829048} 177 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684203866141} 178 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684203902707} 179 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684203952251} 180 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204009833} 181 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204045409} 182 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204085107} 183 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684204142362} 184 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204193714} 185 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204224575} 186 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204264132} 187 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204299627} 188 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684204340441} 189 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684204397046} 190 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684204448731} 191 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684204484689} 192 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204541849} 193 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684204589164} 194 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204623499} 195 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204674650} 196 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204726757} 197 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": "214.183.104.21", "timestamp": 1684204760880} 198 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "ip": null, "timestamp": 1684204760880} 199 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": "51.215.112.211", "timestamp": 1684204806377} 200 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "ip": null, "timestamp": 1684204806377} 201 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684204851919} 202 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204906819} 203 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684204960883} 204 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205011498} 205 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205045818} 206 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684205089726} 207 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205127882} 208 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205177778} 209 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205226636} 210 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684205284154} 211 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205315076} 212 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": "8.253.203.60", "timestamp": 1684205355427} 213 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "ip": null, "timestamp": 1684205355427} 214 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205413385} 215 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205453836} 216 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205486604} 217 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205544991} 218 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205589792} 219 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205648590} 220 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205706829} 221 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205746183} 222 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205800173} 223 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205838463} 224 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": "149.107.176.192", "timestamp": 1684205871074} 225 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "ip": null, "timestamp": 1684205871074} 226 | -------------------------------------------------------------------------------- /backend-developer/stream-application/output.csv: -------------------------------------------------------------------------------- 1 | timestamp,id,ip,latitude,longitude,country,state,city 2 | 1684196387094,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63,12.96677,77.58003,India,Karnataka,Bengaluru 3 | 1684196440840,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 4 | 1684196476484,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 5 | 1684196516641,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 6 | 1684196558470,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 7 | 1684196606664,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 8 | 1684196665608,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 9 | 1684196698276,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 10 | 1684196743449,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 11 | 1684196779271,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 12 | 1684196815396,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 13 | 1684196862703,7b72c512-c34f-5e26-aecc-a09b1c107938,72.132.49.186,33.72892,-116.37866,United States,California,Palm Desert 14 | 1684196908498,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 15 | 1684196954664,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 16 | 1684197006250,baa10c90-6ee4-5fe6-8568-01dcae970035,15.31.18.8,37.41188,-122.14806,United States,California,Palo Alto 17 | 1684197038731,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 18 | 1684197087374,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 19 | 1684197136662,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 20 | 1684197196602,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 21 | 1684197238045,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 22 | 1684197286858,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 23 | 1684197342630,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 24 | 1684197382908,6518f323-b53d-5946-a43d-eaa888253ff8,69.115.161.47,40.75997,-73.50450,United States,New York,Hicksville 25 | 1684197431240,6518f323-b53d-5946-a43d-eaa888253ff8,69.115.161.47,40.75997,-73.50450,United States,New York,Hicksville 26 | 1684197483772,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 27 | 1684197517663,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 28 | 1684197569425,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 29 | 1684197620137,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 30 | 1684197674147,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 31 | 1684197731766,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 32 | 1684197784776,6518f323-b53d-5946-a43d-eaa888253ff8,69.115.161.47,40.75997,-73.50450,United States,New York,Hicksville 33 | 1684197823949,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 34 | 1684197868129,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 35 | 1684197910376,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 36 | 1684197970273,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 37 | 1684198020383,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 38 | 1684198054985,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 39 | 1684198107468,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 40 | 1684198157420,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 41 | 1684198193505,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 42 | 1684198250451,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 43 | 1684198306236,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 44 | 1684198352780,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 45 | 1684198391416,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 46 | 1684198427878,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 47 | 1684198475149,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 48 | 1684198524905,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 49 | 1684198572689,7b72c512-c34f-5e26-aecc-a09b1c107938,72.132.49.186,33.72892,-116.37866,United States,California,Palm Desert 50 | 1684198616988,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 51 | 1684198664009,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 52 | 1684198706808,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63,12.96677,77.58003,India,Karnataka,Bengaluru 53 | 1684198743134,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 54 | 1684198797060,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 55 | 1684198854432,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 56 | 1684198892218,7b72c512-c34f-5e26-aecc-a09b1c107938,72.132.49.186,33.72892,-116.37866,United States,California,Palm Desert 57 | 1684198952156,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63,12.96677,77.58003,India,Karnataka,Bengaluru 58 | 1684198985950,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 59 | 1684199028787,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 60 | 1684199069982,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63,12.96677,77.58003,India,Karnataka,Bengaluru 61 | 1684199104110,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 62 | 1684199156905,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 63 | 1684199191970,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 64 | 1684199227055,1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2,59.90.255.63,12.96677,77.58003,India,Karnataka,Bengaluru 65 | 1684199284836,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 66 | 1684199321822,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 67 | 1684199357948,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 68 | 1684199402803,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 69 | 1684199441651,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 70 | 1684199495281,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 71 | 1684199525412,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 72 | 1684199573903,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 73 | 1684199627228,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 74 | 1684199680419,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 75 | 1684199714540,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 76 | 1684199754150,baa10c90-6ee4-5fe6-8568-01dcae970035,15.31.18.8,37.41188,-122.14806,United States,California,Palo Alto 77 | 1684199785619,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 78 | 1684199836301,f353d640-647d-54e2-ad90-37d7de80fe34,172.111.30.38,41.67696,-85.00375,United States,Indiana,Angola 79 | 1684199886956,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 80 | 1684199935557,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 81 | 1684199986635,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 82 | 1684200035595,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 83 | 1684200080933,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 84 | 1684200137544,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 85 | 1684200180758,0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9,91.174.207.0,48.87135,2.32115,France,Ile-de-France,Paris 86 | 1684200237950,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 87 | 1684200289820,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 88 | 1684200349750,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 89 | 1684200408239,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 90 | 1684200457503,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 91 | 1684200503309,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 92 | 1684200546860,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 93 | 1684200602404,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 94 | 1684200634773,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 95 | 1684200681961,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 96 | 1684200739580,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 97 | 1684200787036,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 98 | 1684200825101,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 99 | 1684200873956,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 100 | 1684200907690,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 101 | 1684200945595,e790b6c4-b5bf-5e4d-ae5a-788ac28506b8,162.95.29.77,39.76348,-86.15116,United States,Indiana,Indianapolis 102 | 1684200976279,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 103 | 1684201010235,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 104 | 1684201055782,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 105 | 1684201103753,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 106 | 1684201137140,fba283ed-9295-5907-848d-59da9d2664a1,192.98.251.204,34.05357,-118.24545,United States,California,Los Angeles 107 | 1684201183272,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 108 | 1684201241536,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 109 | 1684201276947,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 110 | 1684201328277,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 111 | 1684201387367,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 112 | 1684201439101,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 113 | 1684201495014,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 114 | 1684201547652,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 115 | 1684201581479,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 116 | 1684201628876,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 117 | 1684201687549,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 118 | 1684201728633,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 119 | 1684201777518,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 120 | 1684201836080,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 121 | 1684201889208,aff3b117-acd0-503e-b2fd-f37c0e5612ef,55.60.192.143,31.55514,-110.34628,United States,Arizona,Fort Huachuca 122 | 1684201922748,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 123 | 1684201969610,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 124 | 1684202008613,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 125 | 1684202052357,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 126 | 1684202089395,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 127 | 1684202131306,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 128 | 1684202185605,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 129 | 1684202228551,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 130 | 1684202274311,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 131 | 1684202312657,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 132 | 1684202366619,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 133 | 1684202417874,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 134 | 1684202457782,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 135 | 1684202501812,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 136 | 1684202557564,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 137 | 1684202604117,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 138 | 1684202657368,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 139 | 1684202707530,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 140 | 1684202742977,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 141 | 1684202777017,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 142 | 1684202809492,3c935d47-dade-522c-96af-511ecb068fdb,90.69.147.110,40.41951,-3.80142,Spain,Community of Madrid,Pozuelo de Alarcón 143 | 1684202856119,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 144 | 1684202889960,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 145 | 1684202939358,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 146 | 1684202992898,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 147 | 1684203023614,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 148 | 1684203067275,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 149 | 1684203109058,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 150 | 1684203146652,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 151 | 1684203181946,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 152 | 1684203220987,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 153 | 1684203274156,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 154 | 1684203311936,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 155 | 1684203343337,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 156 | 1684203375775,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 157 | 1684203407669,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 158 | 1684203444301,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 159 | 1684203501878,9a68e620-6deb-58c1-be7b-8ef47190ec47,223.232.180.59,28.44324,77.05501,India,Haryana,Gurugram 160 | 1684203547866,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 161 | 1684203598952,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 162 | 1684203644623,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 163 | 1684203697126,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 164 | 1684203743444,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 165 | 1684203797243,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 166 | 1684203829048,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 167 | 1684203866141,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 168 | 1684203902707,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 169 | 1684203952251,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 170 | 1684204009833,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 171 | 1684204045409,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 172 | 1684204085107,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 173 | 1684204142362,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 174 | 1684204193714,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 175 | 1684204224575,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 176 | 1684204264132,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 177 | 1684204299627,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 178 | 1684204340441,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 179 | 1684204397046,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 180 | 1684204448731,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 181 | 1684204484689,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 182 | 1684204541849,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 183 | 1684204589164,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 184 | 1684204623499,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 185 | 1684204674650,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 186 | 1684204726757,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 187 | 1684204760880,1f15b7d4-6481-50ea-84dc-3555326ee3fe,214.183.104.21,39.97883,-82.89573,United States,Ohio,Columbus 188 | 1684204806377,95cdb0f2-9487-5bfd-aeda-bac27dd406fa,51.215.112.211,48.18234,11.59691,Germany,Bavaria,Munich 189 | 1684204851919,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 190 | 1684204906819,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 191 | 1684204960883,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 192 | 1684205011498,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 193 | 1684205045818,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 194 | 1684205089726,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 195 | 1684205127882,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 196 | 1684205177778,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 197 | 1684205226636,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 198 | 1684205284154,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 199 | 1684205315076,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 200 | 1684205355427,7d116fe5-2cac-5811-8101-d50810709f47,8.253.203.60,32.58997,-92.06862,United States,Louisiana,Monroe 201 | 1684205413385,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 202 | 1684205453836,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 203 | 1684205486604,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 204 | 1684205544991,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 205 | 1684205589792,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 206 | 1684205648590,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 207 | 1684205706829,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 208 | 1684205746183,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 209 | 1684205800173,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 210 | 1684205838463,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 211 | 1684205871074,ee526cba-4846-5a1f-bd30-5397a63ce383,149.107.176.192,38.90701,-77.05270,United States,District of Columbia,Washington 212 | -------------------------------------------------------------------------------- /backend-developer/stream-application/output.jsonl: -------------------------------------------------------------------------------- 1 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "timestamp": 1684196387094, "ip": "59.90.255.63", "latitude": "12.96677", "longitude": "77.58003", "country": "India", "state": "Karnataka", "city": "Bengaluru"} 2 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684196440840, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 3 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684196476484, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 4 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684196516641, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 5 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684196558470, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 6 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684196606664, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 7 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684196665608, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 8 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684196698276, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 9 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684196743449, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 10 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684196779271, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 11 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684196815396, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 12 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "timestamp": 1684196862703, "ip": "72.132.49.186", "latitude": "33.72892", "longitude": "-116.37866", "country": "United States", "state": "California", "city": "Palm Desert"} 13 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684196908498, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 14 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684196954664, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 15 | {"id": "baa10c90-6ee4-5fe6-8568-01dcae970035", "timestamp": 1684197006250, "ip": "15.31.18.8", "latitude": "37.41188", "longitude": "-122.14806", "country": "United States", "state": "California", "city": "Palo Alto"} 16 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684197038731, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 17 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684197087374, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 18 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684197136662, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 19 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684197196602, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 20 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684197238045, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 21 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684197286858, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 22 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684197342630, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 23 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "timestamp": 1684197382908, "ip": "69.115.161.47", "latitude": "40.75997", "longitude": "-73.50450", "country": "United States", "state": "New York", "city": "Hicksville"} 24 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "timestamp": 1684197431240, "ip": "69.115.161.47", "latitude": "40.75997", "longitude": "-73.50450", "country": "United States", "state": "New York", "city": "Hicksville"} 25 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684197483772, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 26 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684197517663, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 27 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684197569425, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 28 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684197620137, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 29 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684197674147, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 30 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684197731766, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 31 | {"id": "6518f323-b53d-5946-a43d-eaa888253ff8", "timestamp": 1684197784776, "ip": "69.115.161.47", "latitude": "40.75997", "longitude": "-73.50450", "country": "United States", "state": "New York", "city": "Hicksville"} 32 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684197823949, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 33 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684197868129, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 34 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684197910376, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 35 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684197970273, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 36 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684198020383, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 37 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684198054985, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 38 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684198107468, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 39 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684198157420, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 40 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684198193505, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 41 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684198250451, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 42 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684198306236, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 43 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684198352780, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 44 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684198391416, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 45 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "timestamp": 1684198427878, "ip": "172.111.30.38", "latitude": "41.67696", "longitude": "-85.00375", "country": "United States", "state": "Indiana", "city": "Angola"} 46 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684198475149, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 47 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684198524905, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 48 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "timestamp": 1684198572689, "ip": "72.132.49.186", "latitude": "33.72892", "longitude": "-116.37866", "country": "United States", "state": "California", "city": "Palm Desert"} 49 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684198616988, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 50 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "timestamp": 1684198664009, "ip": "172.111.30.38", "latitude": "41.67696", "longitude": "-85.00375", "country": "United States", "state": "Indiana", "city": "Angola"} 51 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "timestamp": 1684198706808, "ip": "59.90.255.63", "latitude": "12.96677", "longitude": "77.58003", "country": "India", "state": "Karnataka", "city": "Bengaluru"} 52 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684198743134, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 53 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "timestamp": 1684198797060, "ip": "172.111.30.38", "latitude": "41.67696", "longitude": "-85.00375", "country": "United States", "state": "Indiana", "city": "Angola"} 54 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684198854432, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 55 | {"id": "7b72c512-c34f-5e26-aecc-a09b1c107938", "timestamp": 1684198892218, "ip": "72.132.49.186", "latitude": "33.72892", "longitude": "-116.37866", "country": "United States", "state": "California", "city": "Palm Desert"} 56 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "timestamp": 1684198952156, "ip": "59.90.255.63", "latitude": "12.96677", "longitude": "77.58003", "country": "India", "state": "Karnataka", "city": "Bengaluru"} 57 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "timestamp": 1684198985950, "ip": "172.111.30.38", "latitude": "41.67696", "longitude": "-85.00375", "country": "United States", "state": "Indiana", "city": "Angola"} 58 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684199028787, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 59 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "timestamp": 1684199069982, "ip": "59.90.255.63", "latitude": "12.96677", "longitude": "77.58003", "country": "India", "state": "Karnataka", "city": "Bengaluru"} 60 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684199104110, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 61 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684199156905, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 62 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684199191970, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 63 | {"id": "1a301e29-6d6f-5e47-b130-e8fb5c0b1ee2", "timestamp": 1684199227055, "ip": "59.90.255.63", "latitude": "12.96677", "longitude": "77.58003", "country": "India", "state": "Karnataka", "city": "Bengaluru"} 64 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684199284836, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 65 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684199321822, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 66 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684199357948, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 67 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684199402803, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 68 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "timestamp": 1684199441651, "ip": "172.111.30.38", "latitude": "41.67696", "longitude": "-85.00375", "country": "United States", "state": "Indiana", "city": "Angola"} 69 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684199495281, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 70 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684199525412, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 71 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684199573903, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 72 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684199627228, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 73 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684199680419, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 74 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684199714540, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 75 | {"id": "baa10c90-6ee4-5fe6-8568-01dcae970035", "timestamp": 1684199754150, "ip": "15.31.18.8", "latitude": "37.41188", "longitude": "-122.14806", "country": "United States", "state": "California", "city": "Palo Alto"} 76 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684199785619, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 77 | {"id": "f353d640-647d-54e2-ad90-37d7de80fe34", "timestamp": 1684199836301, "ip": "172.111.30.38", "latitude": "41.67696", "longitude": "-85.00375", "country": "United States", "state": "Indiana", "city": "Angola"} 78 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684199886956, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 79 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684199935557, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 80 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684199986635, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 81 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684200035595, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 82 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684200080933, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 83 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684200137544, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 84 | {"id": "0c8cca05-0e9e-5cb6-bf1b-0f5b3151b0c9", "timestamp": 1684200180758, "ip": "91.174.207.0", "latitude": "48.87135", "longitude": "2.32115", "country": "France", "state": "Ile-de-France", "city": "Paris"} 85 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684200237950, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 86 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684200289820, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 87 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684200349750, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 88 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684200408239, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 89 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684200457503, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 90 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684200503309, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 91 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684200546860, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 92 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684200602404, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 93 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684200634773, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 94 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684200681961, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 95 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684200739580, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 96 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684200787036, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 97 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684200825101, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 98 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684200873956, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 99 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684200907690, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 100 | {"id": "e790b6c4-b5bf-5e4d-ae5a-788ac28506b8", "timestamp": 1684200945595, "ip": "162.95.29.77", "latitude": "39.76348", "longitude": "-86.15116", "country": "United States", "state": "Indiana", "city": "Indianapolis"} 101 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684200976279, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 102 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684201010235, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 103 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684201055782, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 104 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684201103753, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 105 | {"id": "fba283ed-9295-5907-848d-59da9d2664a1", "timestamp": 1684201137140, "ip": "192.98.251.204", "latitude": "34.05357", "longitude": "-118.24545", "country": "United States", "state": "California", "city": "Los Angeles"} 106 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684201183272, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 107 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684201241536, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 108 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684201276947, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 109 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684201328277, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 110 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684201387367, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 111 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684201439101, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 112 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684201495014, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 113 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684201547652, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 114 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684201581479, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 115 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684201628876, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 116 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684201687549, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 117 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684201728633, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 118 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684201777518, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 119 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684201836080, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 120 | {"id": "aff3b117-acd0-503e-b2fd-f37c0e5612ef", "timestamp": 1684201889208, "ip": "55.60.192.143", "latitude": "31.55514", "longitude": "-110.34628", "country": "United States", "state": "Arizona", "city": "Fort Huachuca"} 121 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684201922748, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 122 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684201969610, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 123 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202008613, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 124 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684202052357, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 125 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684202089395, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 126 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684202131306, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 127 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684202185605, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 128 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202228551, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 129 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684202274311, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 130 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684202312657, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 131 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202366619, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 132 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684202417874, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 133 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684202457782, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 134 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684202501812, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 135 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202557564, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 136 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684202604117, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 137 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202657368, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 138 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684202707530, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 139 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202742977, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 140 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684202777017, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 141 | {"id": "3c935d47-dade-522c-96af-511ecb068fdb", "timestamp": 1684202809492, "ip": "90.69.147.110", "latitude": "40.41951", "longitude": "-3.80142", "country": "Spain", "state": "Community of Madrid", "city": "Pozuelo de Alarc\u00f3n"} 142 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684202856119, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 143 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684202889960, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 144 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684202939358, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 145 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684202992898, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 146 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684203023614, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 147 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684203067275, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 148 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684203109058, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 149 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684203146652, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 150 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684203181946, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 151 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684203220987, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 152 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684203274156, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 153 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684203311936, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 154 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684203343337, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 155 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684203375775, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 156 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684203407669, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 157 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684203444301, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 158 | {"id": "9a68e620-6deb-58c1-be7b-8ef47190ec47", "timestamp": 1684203501878, "ip": "223.232.180.59", "latitude": "28.44324", "longitude": "77.05501", "country": "India", "state": "Haryana", "city": "Gurugram"} 159 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684203547866, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 160 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684203598952, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 161 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684203644623, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 162 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684203697126, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 163 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684203743444, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 164 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684203797243, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 165 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684203829048, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 166 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684203866141, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 167 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684203902707, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 168 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684203952251, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 169 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204009833, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 170 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204045409, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 171 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204085107, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 172 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684204142362, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 173 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204193714, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 174 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204224575, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 175 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204264132, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 176 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204299627, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 177 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684204340441, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 178 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684204397046, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 179 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684204448731, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 180 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684204484689, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 181 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204541849, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 182 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684204589164, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 183 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204623499, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 184 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204674650, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 185 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204726757, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 186 | {"id": "1f15b7d4-6481-50ea-84dc-3555326ee3fe", "timestamp": 1684204760880, "ip": "214.183.104.21", "latitude": "39.97883", "longitude": "-82.89573", "country": "United States", "state": "Ohio", "city": "Columbus"} 187 | {"id": "95cdb0f2-9487-5bfd-aeda-bac27dd406fa", "timestamp": 1684204806377, "ip": "51.215.112.211", "latitude": "48.18234", "longitude": "11.59691", "country": "Germany", "state": "Bavaria", "city": "Munich"} 188 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684204851919, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 189 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204906819, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 190 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684204960883, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 191 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205011498, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 192 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205045818, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 193 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684205089726, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 194 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205127882, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 195 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205177778, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 196 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205226636, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 197 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684205284154, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 198 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205315076, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 199 | {"id": "7d116fe5-2cac-5811-8101-d50810709f47", "timestamp": 1684205355427, "ip": "8.253.203.60", "latitude": "32.58997", "longitude": "-92.06862", "country": "United States", "state": "Louisiana", "city": "Monroe"} 200 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205413385, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 201 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205453836, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 202 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205486604, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 203 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205544991, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 204 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205589792, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 205 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205648590, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 206 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205706829, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 207 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205746183, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 208 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205800173, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 209 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205838463, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 210 | {"id": "ee526cba-4846-5a1f-bd30-5397a63ce383", "timestamp": 1684205871074, "ip": "149.107.176.192", "latitude": "38.90701", "longitude": "-77.05270", "country": "United States", "state": "District of Columbia", "city": "Washington"} 211 | --------------------------------------------------------------------------------