{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# πŸš€ HRHUB - Complete Bilateral Matching System\n", "\n", "## 🎯 System Architecture:\n", "\n", "```\n", "Candidates (9.5K) ←→ Postings (700) ←→ Companies (180K)\n", " ↓ ↓ ↓\n", " Skills text Job requirements Enriched profiles\n", " ↓ ↓ ↓\n", " Embeddings ←―――――― SAME SPACE ℝ³⁸⁴ ―――――→\n", "```\n", "\n", "## πŸ”‘ Key Innovation:\n", "\n", "**Use postings to enrich company profiles** so they speak the same language as candidates!\n", "\n", "- Companies describe: \"We are in tech industry\"\n", "- Postings translate: \"We need Python, AWS, React\"\n", "- Result: Companies can match with candidates!\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ“¦ Step 1: Install & Import" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "βœ… All packages ready!\n" ] } ], "source": [ "#!pip install -q sentence-transformers plotly anthropic scikit-learn umap-learn\n", "\n", "import pandas as pd\n", "import numpy as np\n", "from sentence_transformers import SentenceTransformer\n", "import plotly.express as px\n", "import plotly.graph_objects as go\n", "from sklearn.manifold import TSNE\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "print(\"βœ… All packages ready!\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ“‚ Step 2: Load ALL Datasets" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ“‚ Loading all datasets...\n", "\n", "======================================================================\n", "βœ… Candidates: 9,544 rows Γ— 35 columns\n", "βœ… Companies (base): 24,473 rows\n", "βœ… Company industries: 24,375 rows\n", "βœ… Company specialties: 169,387 rows\n", "βœ… Employee counts: 35,787 rows\n", "βœ… Postings: 123,849 rows Γ— 31 columns\n", "βœ… Job skills: 213,768 rows\n", "βœ… Job industries: 164,808 rows\n", "\n", "======================================================================\n", "βœ… All datasets loaded!\n", "\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
addresscareer_objectiveskillseducational_institution_namedegree_namespassing_yearseducational_resultsresult_typesmajor_field_of_studiesprofessional_company_names...online_linksissue_datesexpiry_datesο»Ώjob_position_nameeducationaL_requirementsexperiencere_requirementage_requirementresponsibilities.1skills_requiredmatched_score
0NaNBig data analytics working and database wareho...['Big Data', 'Hadoop', 'Hive', 'Python', 'Mapr...['The Amity School of Engineering & Technology...['B.Tech']['2019']['N/A'][None]['Electronics']['Coca-COla']...NaNNaNNaNSenior Software EngineerB.Sc in Computer Science & Engineering from a ...At least 1 yearNaNTechnical Support\\nTroubleshooting\\nCollaborat...NaN0.850000
1NaNFresher looking to join as a data analyst and ...['Data Analysis', 'Data Analytics', 'Business ...['Delhi University - Hansraj College', 'Delhi ...['B.Sc (Maths)', 'M.Sc (Science) (Statistics)']['2015', '2018']['N/A', 'N/A']['N/A', 'N/A']['Mathematics', 'Statistics']['BIB Consultancy']...NaNNaNNaNMachine Learning (ML) EngineerM.Sc in Computer Science & Engineering or in a...At least 5 year(s)NaNMachine Learning Leadership\\nCross-Functional ...NaN0.750000
2NaNNaN['Software Development', 'Machine Learning', '...['Birla Institute of Technology (BIT), Ranchi']['B.Tech']['2018']['N/A']['N/A']['Electronics/Telecommunication']['Axis Bank Limited']...NaNNaNNaNExecutive/ Senior Executive- Trade Marketing, ...Master of Business Administration (MBA)At least 3 yearsNaNTrade Marketing Executive\\nBrand Visibility, S...Brand Promotion\\nCampaign Management\\nField Su...0.416667
3NaNTo obtain a position in a fast-paced business ...['accounts payables', 'accounts receivables', ...['Martinez Adult Education, Business Training ...['Computer Applications Specialist Certificate...['2008'][None][None]['Computer Applications']['Company Name Γ―ΒΌ City , State', 'Company Name......NaNNaNNaNBusiness Development ExecutiveBachelor/Honors1 to 3 yearsAge 22 to 30 yearsApparel Sourcing\\nQuality Garment Sourcing\\nRe...Fast typing skill\\nIELTSInternet browsing & on...0.760000
4NaNProfessional accountant with an outstanding wo...['Analytical reasoning', 'Compliance testing k...['Kent State University']['Bachelor of Business Administration'][None]['3.84'][None]['Accounting']['Company Name', 'Company Name', 'Company Name......[None][None]['February 15, 2021']Senior iOS EngineerBachelor of Science (BSc) in Computer ScienceAt least 4 yearsNaNiOS Lifecycle\\nRequirement Analysis\\nNative Fr...iOS\\niOS App Developer\\niOS Application Develo...0.650000
\n", "

5 rows Γ— 35 columns

\n", "
" ], "text/plain": [ " address career_objective \\\n", "0 NaN Big data analytics working and database wareho... \n", "1 NaN Fresher looking to join as a data analyst and ... \n", "2 NaN NaN \n", "3 NaN To obtain a position in a fast-paced business ... \n", "4 NaN Professional accountant with an outstanding wo... \n", "\n", " skills \\\n", "0 ['Big Data', 'Hadoop', 'Hive', 'Python', 'Mapr... \n", "1 ['Data Analysis', 'Data Analytics', 'Business ... \n", "2 ['Software Development', 'Machine Learning', '... \n", "3 ['accounts payables', 'accounts receivables', ... \n", "4 ['Analytical reasoning', 'Compliance testing k... \n", "\n", " educational_institution_name \\\n", "0 ['The Amity School of Engineering & Technology... \n", "1 ['Delhi University - Hansraj College', 'Delhi ... \n", "2 ['Birla Institute of Technology (BIT), Ranchi'] \n", "3 ['Martinez Adult Education, Business Training ... \n", "4 ['Kent State University'] \n", "\n", " degree_names passing_years \\\n", "0 ['B.Tech'] ['2019'] \n", "1 ['B.Sc (Maths)', 'M.Sc (Science) (Statistics)'] ['2015', '2018'] \n", "2 ['B.Tech'] ['2018'] \n", "3 ['Computer Applications Specialist Certificate... ['2008'] \n", "4 ['Bachelor of Business Administration'] [None] \n", "\n", " educational_results result_types major_field_of_studies \\\n", "0 ['N/A'] [None] ['Electronics'] \n", "1 ['N/A', 'N/A'] ['N/A', 'N/A'] ['Mathematics', 'Statistics'] \n", "2 ['N/A'] ['N/A'] ['Electronics/Telecommunication'] \n", "3 [None] [None] ['Computer Applications'] \n", "4 ['3.84'] [None] ['Accounting'] \n", "\n", " professional_company_names ... online_links \\\n", "0 ['Coca-COla'] ... NaN \n", "1 ['BIB Consultancy'] ... NaN \n", "2 ['Axis Bank Limited'] ... NaN \n", "3 ['Company Name Γ―ΒΌ City , State', 'Company Name... ... NaN \n", "4 ['Company Name', 'Company Name', 'Company Name... ... [None] \n", "\n", " issue_dates expiry_dates \\\n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 NaN NaN \n", "4 [None] ['February 15, 2021'] \n", "\n", " ο»Ώjob_position_name \\\n", "0 Senior Software Engineer \n", "1 Machine Learning (ML) Engineer \n", "2 Executive/ Senior Executive- Trade Marketing, ... \n", "3 Business Development Executive \n", "4 Senior iOS Engineer \n", "\n", " educationaL_requirements experiencere_requirement \\\n", "0 B.Sc in Computer Science & Engineering from a ... At least 1 year \n", "1 M.Sc in Computer Science & Engineering or in a... At least 5 year(s) \n", "2 Master of Business Administration (MBA) At least 3 years \n", "3 Bachelor/Honors 1 to 3 years \n", "4 Bachelor of Science (BSc) in Computer Science At least 4 years \n", "\n", " age_requirement responsibilities.1 \\\n", "0 NaN Technical Support\\nTroubleshooting\\nCollaborat... \n", "1 NaN Machine Learning Leadership\\nCross-Functional ... \n", "2 NaN Trade Marketing Executive\\nBrand Visibility, S... \n", "3 Age 22 to 30 years Apparel Sourcing\\nQuality Garment Sourcing\\nRe... \n", "4 NaN iOS Lifecycle\\nRequirement Analysis\\nNative Fr... \n", "\n", " skills_required matched_score \n", "0 NaN 0.850000 \n", "1 NaN 0.750000 \n", "2 Brand Promotion\\nCampaign Management\\nField Su... 0.416667 \n", "3 Fast typing skill\\nIELTSInternet browsing & on... 0.760000 \n", "4 iOS\\niOS App Developer\\niOS Application Develo... 0.650000 \n", "\n", "[5 rows x 35 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"\"\"## πŸ“‚ Step 2: Load ALL Datasets\"\"\"\n", "\n", "# Define data folder path\n", "CSV_PATH = '../csv_files/' # πŸ‘ˆ Adjusted for VS Code project structure\n", "\n", "print(\"πŸ“‚ Loading all datasets...\\n\")\n", "print(\"=\" * 70)\n", "\n", "# Load candidates\n", "candidates = pd.read_csv(f'{CSV_PATH}resume_data.csv')\n", "print(f\"βœ… Candidates: {len(candidates):,} rows Γ— {len(candidates.columns)} columns\")\n", "\n", "# Load companies base\n", "companies_base = pd.read_csv(f'{CSV_PATH}companies.csv')\n", "print(f\"βœ… Companies (base): {len(companies_base):,} rows\")\n", "\n", "# Load company enrichment data\n", "company_industries = pd.read_csv(f'{CSV_PATH}company_industries.csv')\n", "print(f\"βœ… Company industries: {len(company_industries):,} rows\")\n", "\n", "company_specialties = pd.read_csv(f'{CSV_PATH}company_specialities.csv')\n", "print(f\"βœ… Company specialties: {len(company_specialties):,} rows\")\n", "\n", "employee_counts = pd.read_csv(f'{CSV_PATH}employee_counts.csv')\n", "print(f\"βœ… Employee counts: {len(employee_counts):,} rows\")\n", "\n", "# Load POSTINGS (THE BRIDGE!)\n", "postings = pd.read_csv(f'{CSV_PATH}postings.csv', on_bad_lines='skip', engine='python')\n", "print(f\"βœ… Postings: {len(postings):,} rows Γ— {len(postings.columns)} columns\")\n", "\n", "# Load job-related tables (optional)\n", "try:\n", " job_skills = pd.read_csv(f'{CSV_PATH}job_skills.csv')\n", " print(f\"βœ… Job skills: {len(job_skills):,} rows\")\n", "except:\n", " job_skills = None\n", " print(\"⚠️ Job skills not found (optional)\")\n", "\n", "try:\n", " job_industries = pd.read_csv(f'{CSV_PATH}job_industries.csv')\n", " print(f\"βœ… Job industries: {len(job_industries):,} rows\")\n", "except:\n", " job_industries = None\n", " print(\"⚠️ Job industries not found (optional)\")\n", "\n", "print(\"\\n\" + \"=\" * 70)\n", "print(\"βœ… All datasets loaded!\\n\")\n", "\n", "candidates.head()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " company_id name \\\n", "0 1009 IBM \n", "1 1016 GE HealthCare \n", "2 1025 Hewlett Packard Enterprise \n", "3 1028 Oracle \n", "4 1033 Accenture \n", "\n", " description company_size state \\\n", "0 At IBM, we do more than work. We create. We cr... 7.0 NY \n", "1 Every day millions of people feel the impact o... 7.0 0 \n", "2 Official LinkedIn of Hewlett Packard Enterpris... 7.0 Texas \n", "3 We’re a cloud technology company that provides... 7.0 Texas \n", "4 Accenture is a leading global professional ser... 7.0 0 \n", "\n", " country city zip_code address \\\n", "0 US Armonk, New York 10504 International Business Machines Corp. \n", "1 US Chicago 0 - \n", "2 US Houston 77389 1701 E Mossy Oaks Rd Spring \n", "3 US Austin 78741 2300 Oracle Way \n", "4 IE Dublin 2 0 Grand Canal Harbour \n", "\n", " url \n", "0 https://www.linkedin.com/company/ibm \n", "1 https://www.linkedin.com/company/gehealthcare \n", "2 https://www.linkedin.com/company/hewlett-packa... \n", "3 https://www.linkedin.com/company/oracle \n", "4 https://www.linkedin.com/company/accenture Index(['company_id', 'name', 'description', 'company_size', 'state', 'country',\n", " 'city', 'zip_code', 'address', 'url'],\n", " dtype='object')\n" ] } ], "source": [ "print(companies_base.head(), companies_base.columns)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 24473 entries, 0 to 24472\n", "Data columns (total 10 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 company_id 24473 non-null int64 \n", " 1 name 24472 non-null object \n", " 2 description 24176 non-null object \n", " 3 company_size 21699 non-null float64\n", " 4 state 24451 non-null object \n", " 5 country 24473 non-null object \n", " 6 city 24472 non-null object \n", " 7 zip_code 24445 non-null object \n", " 8 address 24451 non-null object \n", " 9 url 24473 non-null object \n", "dtypes: float64(1), int64(1), object(8)\n", "memory usage: 1.9+ MB\n" ] } ], "source": [ "companies_base.info()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " company_id industry\n", "0 391906 Book and Periodical Publishing\n", "1 22292832 Construction\n", "2 20300 Banking\n", "3 3570660 Book and Periodical Publishing\n", "4 878353 Staffing and Recruiting Index(['company_id', 'industry'], dtype='object')\n" ] } ], "source": [ "print(company_industries.head(), company_industries.columns)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 24375 entries, 0 to 24374\n", "Data columns (total 2 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 company_id 24375 non-null int64 \n", " 1 industry 24375 non-null object\n", "dtypes: int64(1), object(1)\n", "memory usage: 381.0+ KB\n" ] } ], "source": [ "company_industries.info()" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " company_id speciality\n", "0 22292832 window replacement\n", "1 22292832 patio door replacement\n", "2 20300 Commercial Banking\n", "3 20300 Retail Banking\n", "4 20300 Mortgage Index(['company_id', 'speciality'], dtype='object')\n" ] } ], "source": [ "print(company_specialties.head(), company_specialties.columns)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 169387 entries, 0 to 169386\n", "Data columns (total 2 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 company_id 169387 non-null int64 \n", " 1 speciality 169387 non-null object\n", "dtypes: int64(1), object(1)\n", "memory usage: 2.6+ MB\n" ] } ], "source": [ "company_specialties.info()" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " company_id employee_count follower_count time_recorded\n", "0 391906 186 32508 1712346173\n", "1 22292832 311 4471 1712346173\n", "2 20300 1053 6554 1712346173\n", "3 3570660 383 35241 1712346173\n", "4 878353 52 26397 1712346173 Index(['company_id', 'employee_count', 'follower_count', 'time_recorded'], dtype='object')\n" ] } ], "source": [ "print(employee_counts.head(), employee_counts.columns)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 35787 entries, 0 to 35786\n", "Data columns (total 4 columns):\n", " # Column Non-Null Count Dtype\n", "--- ------ -------------- -----\n", " 0 company_id 35787 non-null int64\n", " 1 employee_count 35787 non-null int64\n", " 2 follower_count 35787 non-null int64\n", " 3 time_recorded 35787 non-null int64\n", "dtypes: int64(4)\n", "memory usage: 1.1 MB\n" ] } ], "source": [ "employee_counts.info()" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " job_id company_name \\\n", "0 921716 Corcoran Sawyer Smith \n", "1 1829192 \n", "2 10998357 The National Exemplar \n", "3 23221523 Abrams Fensterman, LLP \n", "4 35982263 \n", "\n", " title \\\n", "0 Marketing Coordinator \n", "1 Mental Health Therapist/Counselor \n", "2 Assitant Restaurant Manager \n", "3 Senior Elder Law / Trusts and Estates Associat... \n", "4 Service Technician \n", "\n", " description max_salary pay_period \\\n", "0 Job descriptionA leading real estate firm in N... 20.0 HOURLY \n", "1 At Aspen Therapy and Wellness , we are committ... 50.0 HOURLY \n", "2 The National Exemplar is accepting application... 65000.0 YEARLY \n", "3 Senior Associate Attorney - Elder Law / Trusts... 175000.0 YEARLY \n", "4 Looking for HVAC service tech with experience ... 80000.0 YEARLY \n", "\n", " location company_id views med_salary ... \\\n", "0 Princeton, NJ 2774458.0 20.0 ... \n", "1 Fort Collins, CO 1.0 ... \n", "2 Cincinnati, OH 64896719.0 8.0 ... \n", "3 New Hyde Park, NY 766262.0 16.0 ... \n", "4 Burlington, IA 3.0 ... \n", "\n", " skills_desc listed_time \\\n", "0 Requirements: \\n\\nWe are seeking a College or ... 1.713398e+12 \n", "1 1.712858e+12 \n", "2 We are currently accepting resumes for FOH - A... 1.713278e+12 \n", "3 This position requires a baseline understandin... 1.712896e+12 \n", "4 1.713452e+12 \n", "\n", " posting_domain sponsored work_type currency compensation_type \\\n", "0 0 FULL_TIME USD BASE_SALARY \n", "1 0 FULL_TIME USD BASE_SALARY \n", "2 0 FULL_TIME USD BASE_SALARY \n", "3 0 FULL_TIME USD BASE_SALARY \n", "4 0 FULL_TIME USD BASE_SALARY \n", "\n", " normalized_salary zip_code fips \n", "0 38480.0 8540.0 34021.0 \n", "1 83200.0 80521.0 8069.0 \n", "2 55000.0 45202.0 39061.0 \n", "3 157500.0 11040.0 36059.0 \n", "4 70000.0 52601.0 19057.0 \n", "\n", "[5 rows x 31 columns] Index(['job_id', 'company_name', 'title', 'description', 'max_salary',\n", " 'pay_period', 'location', 'company_id', 'views', 'med_salary',\n", " 'min_salary', 'formatted_work_type', 'applies', 'original_listed_time',\n", " 'remote_allowed', 'job_posting_url', 'application_url',\n", " 'application_type', 'expiry', 'closed_time',\n", " 'formatted_experience_level', 'skills_desc', 'listed_time',\n", " 'posting_domain', 'sponsored', 'work_type', 'currency',\n", " 'compensation_type', 'normalized_salary', 'zip_code', 'fips'],\n", " dtype='object')\n" ] } ], "source": [ "print(postings.head(), postings.columns)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 123849 entries, 0 to 123848\n", "Data columns (total 31 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 job_id 123849 non-null int64 \n", " 1 company_name 123849 non-null object \n", " 2 title 123849 non-null object \n", " 3 description 123849 non-null object \n", " 4 max_salary 123849 non-null object \n", " 5 pay_period 123849 non-null object \n", " 6 location 123849 non-null object \n", " 7 company_id 123849 non-null object \n", " 8 views 123849 non-null object \n", " 9 med_salary 123849 non-null object \n", " 10 min_salary 123849 non-null object \n", " 11 formatted_work_type 123849 non-null object \n", " 12 applies 123849 non-null object \n", " 13 original_listed_time 123849 non-null float64\n", " 14 remote_allowed 123849 non-null object \n", " 15 job_posting_url 123849 non-null object \n", " 16 application_url 123849 non-null object \n", " 17 application_type 123849 non-null object \n", " 18 expiry 123849 non-null float64\n", " 19 closed_time 123849 non-null object \n", " 20 formatted_experience_level 123849 non-null object \n", " 21 skills_desc 123849 non-null object \n", " 22 listed_time 123849 non-null float64\n", " 23 posting_domain 123849 non-null object \n", " 24 sponsored 123849 non-null int64 \n", " 25 work_type 123849 non-null object \n", " 26 currency 123849 non-null object \n", " 27 compensation_type 123849 non-null object \n", " 28 normalized_salary 123849 non-null object \n", " 29 zip_code 123849 non-null object \n", " 30 fips 123849 non-null object \n", "dtypes: float64(3), int64(2), object(26)\n", "memory usage: 29.3+ MB\n" ] } ], "source": [ "postings.info()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " job_id skill_abr\n", "0 3884428798 MRKT\n", "1 3884428798 PR\n", "2 3884428798 WRT\n", "3 3887473071 SALE\n", "4 3887465684 FIN Index(['job_id', 'skill_abr'], dtype='object')\n" ] } ], "source": [ "print(job_skills.head(), job_skills.columns)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " job_id industry_id\n", "0 3884428798 82\n", "1 3887473071 48\n", "2 3887465684 41\n", "3 3887467939 82\n", "4 3887467939 80 Index(['job_id', 'industry_id'], dtype='object')\n" ] } ], "source": [ "print(job_industries.head(), job_industries.columns)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ”— Step 3: Merge Company Data" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ”— Merging company data...\n", "\n", "βœ… Aggregated industries for 24,365 companies\n", "βœ… Aggregated specialties for 17,780 companies\n", "\n", "βœ… Base company merge complete: 35,787 companies\n", "πŸ“Š Columns: ['company_id', 'name', 'description', 'company_size', 'state', 'country', 'city', 'zip_code', 'address', 'url']...\n", "\n" ] } ], "source": [ "print(\"πŸ”— Merging company data...\\n\")\n", "\n", "# Aggregate industries\n", "company_industries_agg = company_industries.groupby('company_id')['industry'].apply(\n", " lambda x: ', '.join(map(str, x.tolist()))\n", ").reset_index()\n", "company_industries_agg.columns = ['company_id', 'industries_list']\n", "print(f\"βœ… Aggregated industries for {len(company_industries_agg):,} companies\")\n", "\n", "# Aggregate specialties\n", "company_specialties_agg = company_specialties.groupby('company_id')['speciality'].apply(\n", " lambda x: ' | '.join(x.astype(str).tolist())\n", ").reset_index()\n", "company_specialties_agg.columns = ['company_id', 'specialties_list']\n", "print(f\"βœ… Aggregated specialties for {len(company_specialties_agg):,} companies\")\n", "\n", "# Start with base\n", "companies_merged = companies_base.copy()\n", "\n", "# Merge industries\n", "companies_merged = companies_merged.merge(\n", " company_industries_agg,\n", " on='company_id',\n", " how='left'\n", ")\n", "\n", "# Merge specialties\n", "companies_merged = companies_merged.merge(\n", " company_specialties_agg,\n", " on='company_id',\n", " how='left'\n", ")\n", "\n", "# Merge employee counts\n", "companies_merged = companies_merged.merge(\n", " employee_counts,\n", " on='company_id',\n", " how='left'\n", ")\n", "\n", "print(f\"\\nβœ… Base company merge complete: {len(companies_merged):,} companies\")\n", "print(f\"πŸ“Š Columns: {companies_merged.columns.tolist()[:10]}...\\n\")" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " company_id name \\\n", "0 1009 IBM \n", "1 1009 IBM \n", "2 1009 IBM \n", "3 1009 IBM \n", "4 1016 GE HealthCare \n", "\n", " description company_size state \\\n", "0 At IBM, we do more than work. We create. We cr... 7.0 NY \n", "1 At IBM, we do more than work. We create. We cr... 7.0 NY \n", "2 At IBM, we do more than work. We create. We cr... 7.0 NY \n", "3 At IBM, we do more than work. We create. We cr... 7.0 NY \n", "4 Every day millions of people feel the impact o... 7.0 0 \n", "\n", " country city zip_code address \\\n", "0 US Armonk, New York 10504 International Business Machines Corp. \n", "1 US Armonk, New York 10504 International Business Machines Corp. \n", "2 US Armonk, New York 10504 International Business Machines Corp. \n", "3 US Armonk, New York 10504 International Business Machines Corp. \n", "4 US Chicago 0 - \n", "\n", " url \\\n", "0 https://www.linkedin.com/company/ibm \n", "1 https://www.linkedin.com/company/ibm \n", "2 https://www.linkedin.com/company/ibm \n", "3 https://www.linkedin.com/company/ibm \n", "4 https://www.linkedin.com/company/gehealthcare \n", "\n", " industries_list \\\n", "0 IT Services and IT Consulting \n", "1 IT Services and IT Consulting \n", "2 IT Services and IT Consulting \n", "3 IT Services and IT Consulting \n", "4 Hospitals and Health Care \n", "\n", " specialties_list employee_count \\\n", "0 Cloud | Mobile | Cognitive | Security | Resear... 314102 \n", "1 Cloud | Mobile | Cognitive | Security | Resear... 313142 \n", "2 Cloud | Mobile | Cognitive | Security | Resear... 313147 \n", "3 Cloud | Mobile | Cognitive | Security | Resear... 311223 \n", "4 Healthcare | Biotechnology 56873 \n", "\n", " follower_count time_recorded \n", "0 16253625 1712378162 \n", "1 16309464 1713392385 \n", "2 16309985 1713402495 \n", "3 16314846 1713501255 \n", "4 2185368 1712382540 Index(['company_id', 'name', 'description', 'company_size', 'state', 'country',\n", " 'city', 'zip_code', 'address', 'url', 'industries_list',\n", " 'specialties_list', 'employee_count', 'follower_count',\n", " 'time_recorded'],\n", " dtype='object')\n" ] } ], "source": [ "print(companies_merged.head(), companies_merged.columns)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸŒ‰ Step 4: Enrich Companies with Postings (THE BRIDGE!)\n", "\n", "**This is the key step!** Postings tell us what companies actually need." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸŒ‰ Enriching companies with job posting data...\n", "\n", "======================================================================\n", "KEY INSIGHT: Postings contain the 'requirements language'\n", "that bridges companies and candidates!\n", "======================================================================\n", "\n", "βœ… Aggregated postings for 24,475 companies\n", "\n", "πŸ’‘ These 24,475 companies have explicit requirements!\n", "\n", "βœ… ENRICHED COMPANIES CREATED!\n", "πŸ“Š Final: 35,787 companies Γ— 20 columns\n", "\n", "πŸ“‹ New columns from postings:\n", " - posted_job_titles\n", " - posted_descriptions\n", " - required_skills ← KEY FOR MATCHING!\n", " - experience_levels\n", " - work_types\n", "\n", "πŸ‘€ Sample enriched company:\n", "\n", "⚠️ No companies found with non-empty 'required_skills' after enrichment.\n", " Showing a sample of a generic enriched company instead (may have empty skills).\n", "\n", "Company: IBM\n", "Industries: IT Services and IT Consulting...\n", "Required Skills: ...\n", "Job Titles Posted: ...\n" ] } ], "source": [ "print(\"πŸŒ‰ Enriching companies with job posting data...\\n\")\n", "print(\"=\" * 70)\n", "print(\"KEY INSIGHT: Postings contain the 'requirements language'\")\n", "print(\"that bridges companies and candidates!\")\n", "print(\"=\" * 70 + \"\\n\")\n", "\n", "# Clean postings\n", "postings = postings.fillna('')\n", "\n", "# Ensure company_id in postings is of consistent type (e.g., string) before grouping\n", "postings['company_id'] = postings['company_id'].astype(str)\n", "\n", "# Aggregate postings per company\n", "postings_agg = postings.groupby('company_id').agg({\n", " 'title': lambda x: ' | '.join(x.astype(str).tolist()[:10]), # Top 10 job titles\n", " 'description': lambda x: ' '.join(x.astype(str).tolist()[:5]), # Top 5 descriptions (truncated)\n", " 'skills_desc': lambda x: ' | '.join(x.dropna().astype(str).tolist()), # All skills\n", " 'formatted_experience_level': lambda x: ' | '.join(x.dropna().unique().astype(str)),\n", " 'formatted_work_type': lambda x: ' | '.join(x.dropna().unique().astype(str))\n", "}).reset_index()\n", "\n", "postings_agg.columns = [\n", " 'company_id',\n", " 'posted_job_titles',\n", " 'posted_descriptions',\n", " 'required_skills',\n", " 'experience_levels',\n", " 'work_types'\n", "]\n", "\n", "print(f\"βœ… Aggregated postings for {len(postings_agg):,} companies\")\n", "print(f\"\\nπŸ’‘ These {len(postings_agg):,} companies have explicit requirements!\\n\")\n", "\n", "# Ensure company_id in companies_merged is of consistent type (e.g., string) before merging\n", "companies_merged['company_id'] = companies_merged['company_id'].astype(str)\n", "\n", "# Merge postings into companies\n", "companies_full = companies_merged.merge(\n", " postings_agg,\n", " on='company_id',\n", " how='left'\n", ")\n", "\n", "# Fill NaN\n", "companies_full = companies_full.fillna('')\n", "\n", "print(f\"βœ… ENRICHED COMPANIES CREATED!\")\n", "print(f\"πŸ“Š Final: {len(companies_full):,} companies Γ— {len(companies_full.columns)} columns\")\n", "print(f\"\\nπŸ“‹ New columns from postings:\")\n", "print(f\" - posted_job_titles\")\n", "print(f\" - posted_descriptions\")\n", "print(f\" - required_skills ← KEY FOR MATCHING!\")\n", "print(f\" - experience_levels\")\n", "print(f\" - work_types\\n\")\n", "\n", "# Show sample\n", "print(\"πŸ‘€ Sample enriched company:\")\n", "companies_with_skills = companies_full[companies_full['required_skills'] != '']\n", "\n", "if not companies_with_skills.empty:\n", " sample_with_postings = companies_with_skills.iloc[0]\n", " print(f\"\\nCompany: {sample_with_postings.get('name', 'N/A')}\")\n", " print(f\"Industries: {str(sample_with_postings.get('industries_list', ''))[:100]}...\")\n", " print(f\"Required Skills: {str(sample_with_postings.get('required_skills', ''))[:100]}...\")\n", " print(f\"Job Titles Posted: {str(sample_with_postings.get('posted_job_titles', ''))[:100]}...\")\n", "else:\n", " print(\"\\n⚠️ No companies found with non-empty 'required_skills' after enrichment.\")\n", " print(\" Showing a sample of a generic enriched company instead (may have empty skills).\")\n", " sample_with_postings = companies_full.iloc[0] # Fallback to any company\n", " print(f\"\\nCompany: {sample_with_postings.get('name', 'N/A')}\")\n", " print(f\"Industries: {str(sample_with_postings.get('industries_list', ''))[:100]}...\")\n", " print(f\"Required Skills: {str(sample_with_postings.get('required_skills', ''))[:100]}...\")\n", " print(f\"Job Titles Posted: {str(sample_with_postings.get('posted_job_titles', ''))[:100]}...\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ“‚ Step 5: Load & Clean Candidates" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "βœ… Candidates cleaned: 9,544 rows\n", "πŸ“‹ Columns: ['address', 'career_objective', 'skills', 'educational_institution_name', 'degree_names', 'passing_years', 'educational_results', 'result_types', 'major_field_of_studies', 'professional_company_names']...\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
addresscareer_objectiveskillseducational_institution_namedegree_namespassing_yearseducational_resultsresult_typesmajor_field_of_studiesprofessional_company_names...online_linksissue_datesexpiry_datesο»Ώjob_position_nameeducationaL_requirementsexperiencere_requirementage_requirementresponsibilities.1skills_requiredmatched_score
0Big data analytics working and database wareho...['Big Data', 'Hadoop', 'Hive', 'Python', 'Mapr...['The Amity School of Engineering & Technology...['B.Tech']['2019']['N/A'][None]['Electronics']['Coca-COla']...Senior Software EngineerB.Sc in Computer Science & Engineering from a ...At least 1 yearTechnical Support\\nTroubleshooting\\nCollaborat...0.850000
1Fresher looking to join as a data analyst and ...['Data Analysis', 'Data Analytics', 'Business ...['Delhi University - Hansraj College', 'Delhi ...['B.Sc (Maths)', 'M.Sc (Science) (Statistics)']['2015', '2018']['N/A', 'N/A']['N/A', 'N/A']['Mathematics', 'Statistics']['BIB Consultancy']...Machine Learning (ML) EngineerM.Sc in Computer Science & Engineering or in a...At least 5 year(s)Machine Learning Leadership\\nCross-Functional ...0.750000
2['Software Development', 'Machine Learning', '...['Birla Institute of Technology (BIT), Ranchi']['B.Tech']['2018']['N/A']['N/A']['Electronics/Telecommunication']['Axis Bank Limited']...Executive/ Senior Executive- Trade Marketing, ...Master of Business Administration (MBA)At least 3 yearsTrade Marketing Executive\\nBrand Visibility, S...Brand Promotion\\nCampaign Management\\nField Su...0.416667
\n", "

3 rows Γ— 35 columns

\n", "
" ], "text/plain": [ " address career_objective \\\n", "0 Big data analytics working and database wareho... \n", "1 Fresher looking to join as a data analyst and ... \n", "2 \n", "\n", " skills \\\n", "0 ['Big Data', 'Hadoop', 'Hive', 'Python', 'Mapr... \n", "1 ['Data Analysis', 'Data Analytics', 'Business ... \n", "2 ['Software Development', 'Machine Learning', '... \n", "\n", " educational_institution_name \\\n", "0 ['The Amity School of Engineering & Technology... \n", "1 ['Delhi University - Hansraj College', 'Delhi ... \n", "2 ['Birla Institute of Technology (BIT), Ranchi'] \n", "\n", " degree_names passing_years \\\n", "0 ['B.Tech'] ['2019'] \n", "1 ['B.Sc (Maths)', 'M.Sc (Science) (Statistics)'] ['2015', '2018'] \n", "2 ['B.Tech'] ['2018'] \n", "\n", " educational_results result_types major_field_of_studies \\\n", "0 ['N/A'] [None] ['Electronics'] \n", "1 ['N/A', 'N/A'] ['N/A', 'N/A'] ['Mathematics', 'Statistics'] \n", "2 ['N/A'] ['N/A'] ['Electronics/Telecommunication'] \n", "\n", " professional_company_names ... online_links issue_dates expiry_dates \\\n", "0 ['Coca-COla'] ... \n", "1 ['BIB Consultancy'] ... \n", "2 ['Axis Bank Limited'] ... \n", "\n", " ο»Ώjob_position_name \\\n", "0 Senior Software Engineer \n", "1 Machine Learning (ML) Engineer \n", "2 Executive/ Senior Executive- Trade Marketing, ... \n", "\n", " educationaL_requirements experiencere_requirement \\\n", "0 B.Sc in Computer Science & Engineering from a ... At least 1 year \n", "1 M.Sc in Computer Science & Engineering or in a... At least 5 year(s) \n", "2 Master of Business Administration (MBA) At least 3 years \n", "\n", " age_requirement responsibilities.1 \\\n", "0 Technical Support\\nTroubleshooting\\nCollaborat... \n", "1 Machine Learning Leadership\\nCross-Functional ... \n", "2 Trade Marketing Executive\\nBrand Visibility, S... \n", "\n", " skills_required matched_score \n", "0 0.850000 \n", "1 0.750000 \n", "2 Brand Promotion\\nCampaign Management\\nField Su... 0.416667 \n", "\n", "[3 rows x 35 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Clean candidates\n", "candidates = candidates.fillna('')\n", "\n", "print(f\"βœ… Candidates cleaned: {len(candidates):,} rows\")\n", "print(f\"πŸ“‹ Columns: {candidates.columns.tolist()[:10]}...\")\n", "candidates.head(3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ“ Step 6: Create Aligned Text Representations\n", "\n", "**CRITICAL:** Both entities must use the same vocabulary!" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ“ Creating ALIGNED text representations...\n", "\n", "======================================================================\n", "ALIGNMENT STRATEGY:\n", "β€’ Candidates: Describe skills, experience, education\n", "β€’ Companies: Describe what they NEED (from postings!)\n", "β€’ Result: Both use 'skills language' β†’ same vector space!\n", "======================================================================\n", "\n", "πŸ”„ Generating candidate texts...\n", "πŸ”„ Generating company texts...\n", "\n", "βœ… ALIGNED texts created!\n", "\n", "======================================================================\n", "CANDIDATE SAMPLE:\n", "Professional seeking: Big data analytics working and database warehouse manager with robust experience in handling all kinds of data. I have also used multiple cloud infrastructure services and am well acquainted with them. Currently in search of role that offers more of development. || Skills and expertise: ['Big Data', 'Hadoop', 'Hive', 'Python', 'Mapreduce', 'Spark', 'Java', 'Machine Learning', 'Cloud', 'Hdfs', 'YARN', 'Core Java', 'Data Science', 'C++', 'Data Structures', 'DBMS', 'RDBMS', 'I\n", "\n", "======================================================================\n", "COMPANY SAMPLE (with postings data):\n", "\n", "⚠️ No companies found with non-empty 'required_skills' in their text representation.\n", " Showing a sample of a generic enriched company instead (may have empty skills).\n", "Company: IBM || Industries: IT Services and IT Consulting || Specialties: Cloud | Mobile | Cognitive | Security | Research | Watson | Analytics | Consulting | Commerce | Experience Design | Internet of Things | Technology support | Industry solutions | Systems services | Resiliency services | Financing | IT infrastructure || About: At IBM, we do more than work. We create. We create as technologists, developers, and engineers. We create with our partners. We create with our competitors. If you're\n", "======================================================================\n", "\n", "πŸ’‘ Notice: Both now use SKILLS LANGUAGE!\n", " Candidate: 'Skills and expertise: Python, Java'\n", " Company: 'Looking for skills: Python, AWS'\n", " β†’ They can now be compared in the same space!\n", "\n" ] } ], "source": [ "print(\"πŸ“ Creating ALIGNED text representations...\\n\")\n", "print(\"=\" * 70)\n", "print(\"ALIGNMENT STRATEGY:\")\n", "print(\"β€’ Candidates: Describe skills, experience, education\")\n", "print(\"β€’ Companies: Describe what they NEED (from postings!)\")\n", "print(\"β€’ Result: Both use 'skills language' β†’ same vector space!\")\n", "print(\"=\" * 70 + \"\\n\")\n", "\n", "# ========================================================================\n", "# CANDIDATE TEXT - Professional offering\n", "# ========================================================================\n", "def make_candidate_text(row):\n", " \"\"\"\n", " Candidate text focuses on:\n", " - What skills I have\n", " - What experience I bring\n", " - What value I offer\n", " \"\"\"\n", " parts = []\n", "\n", " # Professional identity\n", " if row.get('career_objective'):\n", " parts.append(f\"Professional seeking: {row['career_objective']}\")\n", "\n", " if row.get('job_position_name'):\n", " parts.append(f\"Target role: {row['job_position_name']}\")\n", "\n", " # SKILLS (most important for matching!)\n", " all_skills = []\n", " if row.get('skills'):\n", " all_skills.append(row['skills'])\n", " if row.get('related_skills_in_job'):\n", " all_skills.append(row['related_skills_in_job'])\n", " if row.get('certification_skills'):\n", " all_skills.append(row['certification_skills'])\n", " if row.get('skills_required'): # Skills they're looking for in jobs\n", " all_skills.append(row['skills_required'])\n", "\n", " if all_skills:\n", " parts.append(f\"Skills and expertise: {' | '.join(all_skills)}\")\n", "\n", " # EXPERIENCE\n", " if row.get('positions'):\n", " parts.append(f\"Experience in roles: {row['positions']}\")\n", "\n", " if row.get('professional_company_names'):\n", " parts.append(f\"Companies worked at: {row['professional_company_names']}\")\n", "\n", " if row.get('responsibilities'):\n", " resp = str(row['responsibilities'])[:250]\n", " parts.append(f\"Responsibilities: {resp}\")\n", "\n", " # EDUCATION\n", " edu_parts = []\n", " if row.get('degree_names'):\n", " edu_parts.append(row['degree_names'])\n", " if row.get('major_field_of_studies'):\n", " edu_parts.append(f\"in {row['major_field_of_studies']}\")\n", " if row.get('educational_institution_name'):\n", " edu_parts.append(f\"from {row['educational_institution_name']}\")\n", "\n", " if edu_parts:\n", " parts.append(f\"Education: {' '.join(edu_parts)}\")\n", "\n", " # ADDITIONAL\n", " if row.get('languages'):\n", " parts.append(f\"Languages: {row['languages']}\")\n", "\n", " if row.get('certification_providers'):\n", " parts.append(f\"Certifications from: {row['certification_providers']}\")\n", "\n", " if row.get('extra_curricular_activity_types'):\n", " parts.append(f\"Activities: {row['extra_curricular_activity_types']}\")\n", "\n", " return ' || '.join(parts) if parts else \"Professional profile\"\n", "\n", "\n", "# ========================================================================\n", "# COMPANY TEXT - Job requirements (enriched with postings!)\n", "# ========================================================================\n", "def make_company_text(row):\n", " \"\"\"\n", " Company text focuses on:\n", " - What skills we need (from postings!)\n", " - What roles we're hiring for\n", " - What our company does\n", " \"\"\"\n", " parts = []\n", "\n", " # Company identity\n", " if row.get('name'):\n", " parts.append(f\"Company: {row['name']}\")\n", "\n", " # REQUIRED SKILLS (from postings - KEY!)\n", " if row.get('required_skills'):\n", " parts.append(f\"Looking for skills: {row['required_skills']}\")\n", "\n", " # JOB TITLES (from postings)\n", " if row.get('posted_job_titles'):\n", " parts.append(f\"Hiring for roles: {row['posted_job_titles']}\")\n", "\n", " # EXPERIENCE LEVELS (from postings)\n", " if row.get('experience_levels'):\n", " parts.append(f\"Experience levels: {row['experience_levels']}\")\n", "\n", " # Industries & specialties\n", " if row.get('industries_list'):\n", " parts.append(f\"Industries: {row['industries_list']}\")\n", "\n", " if row.get('specialties_list'):\n", " parts.append(f\"Specialties: {row['specialties_list']}\")\n", "\n", " # Company description\n", " if row.get('description'):\n", " desc = str(row['description'])[:300]\n", " parts.append(f\"About: {desc}\")\n", "\n", " # Posted descriptions (gives context)\n", " if row.get('posted_descriptions'):\n", " posted_desc = str(row['posted_descriptions'])[:200]\n", " parts.append(f\"Job descriptions: {posted_desc}\")\n", "\n", " # Company size\n", " if row.get('employee_count'):\n", " parts.append(f\"Company size: {row['employee_count']} employees\")\n", "\n", " # Location\n", " loc = []\n", " if row.get('city'): loc.append(row['city'])\n", " if row.get('state'): loc.append(row['state'])\n", " if row.get('country'): loc.append(row['country'])\n", " if loc:\n", " parts.append(f\"Location: {', '.join(loc)}\")\n", "\n", " # Work types\n", " if row.get('work_types'):\n", " parts.append(f\"Work arrangement: {row['work_types']}\")\n", "\n", " return ' || '.join(parts) if parts else \"Company profile\"\n", "\n", "\n", "# ========================================================================\n", "# APPLY TO DATAFRAMES\n", "# ========================================================================\n", "print(\"πŸ”„ Generating candidate texts...\")\n", "candidates['text'] = candidates.apply(make_candidate_text, axis=1)\n", "\n", "print(\"πŸ”„ Generating company texts...\")\n", "companies_full['text'] = companies_full.apply(make_company_text, axis=1)\n", "\n", "print(\"\\nβœ… ALIGNED texts created!\\n\")\n", "\n", "# Compare vocabularies\n", "print(\"=\" * 70)\n", "print(\"CANDIDATE SAMPLE:\")\n", "print(candidates['text'].iloc[0][:500])\n", "print(\"\\n\" + \"=\" * 70)\n", "print(\"COMPANY SAMPLE (with postings data):\")\n", "# Find company with postings\n", "companies_with_skills_text = companies_full[companies_full['required_skills'] != '']\n", "if not companies_with_skills_text.empty:\n", " company_with_postings = companies_with_skills_text.iloc[0]\n", " print(company_with_postings['text'][:500])\n", "else:\n", " print(\"\\n⚠️ No companies found with non-empty 'required_skills' in their text representation.\")\n", " print(\" Showing a sample of a generic enriched company instead (may have empty skills).\")\n", " sample_company = companies_full.iloc[0] # Fallback to any company\n", " print(sample_company['text'][:500])\n", "\n", "print(\"=\" * 70)\n", "\n", "print(\"\\nπŸ’‘ Notice: Both now use SKILLS LANGUAGE!\")\n", "print(\" Candidate: 'Skills and expertise: Python, Java'\")\n", "print(\" Company: 'Looking for skills: Python, AWS'\")\n", "print(\" β†’ They can now be compared in the same space!\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 🧠 Step 7: Generate Embeddings (ℝ³⁸⁴)\n", "\n", "Transform aligned text β†’ vectors in same mathematical space" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "🧠 Loading embedding model...\n", "\n", "βœ… Model loaded! Embedding dimension: ℝ^384\n", "\n", "\n", "πŸ“‚ Loading cached vectors...\n", "βœ… Loaded from cache!\n" ] } ], "source": [ "print(\"🧠 Loading embedding model...\\n\")\n", "model = SentenceTransformer('all-MiniLM-L6-v2')\n", "\n", "embedding_dim = model.get_sentence_embedding_dimension()\n", "print(f\"βœ… Model loaded! Embedding dimension: ℝ^{embedding_dim}\\n\")\n", "\n", "print(\"\\nπŸ“‚ Loading cached vectors...\")\n", "cand_vectors = np.load('../processed/candidate_embeddings.npy')\n", "comp_vectors = np.load('../processed/company_embeddings.npy')\n", "print(\"βœ… Loaded from cache!\")" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "# print(\"🧠 Loading embedding model...\\n\")\n", "# model = SentenceTransformer('all-MiniLM-L6-v2')\n", "\n", "# embedding_dim = model.get_sentence_embedding_dimension()\n", "# print(f\"βœ… Model loaded! Embedding dimension: ℝ^{embedding_dim}\\n\")\n", "\n", "# print(\"πŸ”„ Generating candidate vectors...\")\n", "# print(f\" ({len(candidates):,} candidates Γ— ~2-3 minutes)\\n\")\n", "# cand_vectors = model.encode(\n", "# candidates['text'].tolist(), \n", "# show_progress_bar=True,\n", "# batch_size=32\n", "# )\n", "\n", "# print(\"\\nπŸ”„ Generating company vectors...\")\n", "# print(f\" ({len(companies_full):,} companies Γ— ~15-20 minutes)\\n\")\n", "# comp_vectors = model.encode(\n", "# companies_full['text'].tolist(), \n", "# show_progress_bar=True,\n", "# batch_size=64\n", "# )\n", "\n", "# print(\"\\n\" + \"=\" * 70)\n", "# print(\"βœ… VECTORS CREATED IN SAME SPACE!\")\n", "# print(\"=\" * 70)\n", "# print(f\"πŸ“Š Candidate vectors: {cand_vectors.shape}\")\n", "# print(f\"πŸ“Š Company vectors: {comp_vectors.shape}\")\n", "# print(f\"\\n🎯 Both live in ℝ^{embedding_dim}!\")\n", "# print(f\"🎯 Now companies with 'Python' requirements will be\")\n", "# print(f\" CLOSE to candidates with 'Python' skills!\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 🎯 Step 8: Matching Engine" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "βœ… Matching engine ready!\n", "πŸ“Š Can match 9,544 candidates with 35,787 companies\n", "\n" ] } ], "source": [ "def cosine_similarity(a, b):\n", " \"\"\"Calculate cosine similarity between two vectors.\"\"\"\n", " return np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))\n", "\n", "def find_top_matches(candidate_idx, top_k=10):\n", " \"\"\"\n", " Find top K company matches for a candidate.\n", " \n", " Returns: List of (company_idx, similarity_score)\n", " \"\"\"\n", " cand_vec = cand_vectors[candidate_idx]\n", " \n", " scores = []\n", " for i, comp_vec in enumerate(comp_vectors):\n", " score = cosine_similarity(cand_vec, comp_vec)\n", " scores.append((i, score))\n", " \n", " scores.sort(key=lambda x: x[1], reverse=True)\n", " return scores[:top_k]\n", "\n", "print(\"βœ… Matching engine ready!\")\n", "print(f\"πŸ“Š Can match {len(candidates):,} candidates with {len(companies_full):,} companies\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ” Step 9: Test Matching" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ” Finding top 10 matches for Candidate #0...\n", "\n", "🎯 Top 10 Company Matches:\n", "\n", "==========================================================================================\n", "Rank Score Company Skills Needed \n", "==========================================================================================\n", "1 0.7028 Anblicks \n", "2 0.7026 iO Associates - US \n", "3 0.7026 Anblicks \n", "4 0.7019 iO Associates - US \n", "5 0.7010 Anblicks \n", "6 0.6849 DATAECONOMY \n", "7 0.6827 Datavail \n", "8 0.6800 DATAECONOMY \n", "9 0.6784 DATAECONOMY \n", "10 0.6776 BitPusher \n", "==========================================================================================\n", "\n", "πŸ’‘ If scores are good (>0.5), the alignment worked!\n", " High scores = Company needs match candidate skills\n", "\n" ] } ], "source": [ "print(\"πŸ” Finding top 10 matches for Candidate #0...\\n\")\n", "\n", "matches = find_top_matches(0, top_k=10)\n", "\n", "print(\"🎯 Top 10 Company Matches:\\n\")\n", "print(\"=\" * 90)\n", "print(f\"{'Rank':<6} {'Score':<8} {'Company':<35} {'Skills Needed':<40}\")\n", "print(\"=\" * 90)\n", "\n", "for rank, (comp_idx, score) in enumerate(matches, 1):\n", " company = companies_full.iloc[comp_idx]\n", " name = company.get('name', 'N/A')[:33]\n", " skills = company.get('required_skills', 'N/A')[:38]\n", " print(f\"{rank:<6} {score:.4f} {name:<35} {skills}\")\n", "\n", "print(\"=\" * 90)\n", "\n", "print(\"\\nπŸ’‘ If scores are good (>0.5), the alignment worked!\")\n", "print(\" High scores = Company needs match candidate skills\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ“Š Step 10: Visualize Vector Space\n", "\n", "See where candidates and companies live in ℝ³⁸⁴ (projected to ℝ²)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "🎨 VECTOR SPACE VISUALIZATION\n", "\n", "======================================================================\n", "πŸ“Š Visualizing:\n", " β€’ 500 candidates\n", " β€’ 2000 companies\n", " β€’ From ℝ^384 β†’ ℝ² (t-SNE projection)\n", "\n", "πŸ”„ Running t-SNE (2-3 minutes)...\n", "[t-SNE] Computing 91 nearest neighbors...\n", "[t-SNE] Indexed 2500 samples in 0.001s...\n", "[t-SNE] Computed neighbors for 2500 samples in 0.177s...\n", "[t-SNE] Computed conditional probabilities for sample 1000 / 2500\n", "[t-SNE] Computed conditional probabilities for sample 2000 / 2500\n", "[t-SNE] Computed conditional probabilities for sample 2500 / 2500\n", "[t-SNE] Mean sigma: 0.383594\n", "[t-SNE] KL divergence after 250 iterations with early exaggeration: 74.845322\n", "[t-SNE] KL divergence after 1000 iterations: 0.837233\n", "\n", "βœ… t-SNE complete!\n", "\n" ] } ], "source": [ "print(\"🎨 VECTOR SPACE VISUALIZATION\\n\")\n", "print(\"=\" * 70)\n", "\n", "# Sample for visualization\n", "n_cand_viz = min(500, len(candidates))\n", "n_comp_viz = min(2000, len(companies_full))\n", "\n", "print(f\"πŸ“Š Visualizing:\")\n", "print(f\" β€’ {n_cand_viz} candidates\")\n", "print(f\" β€’ {n_comp_viz} companies\")\n", "print(f\" β€’ From ℝ^{embedding_dim} β†’ ℝ² (t-SNE projection)\\n\")\n", "\n", "# Sample vectors\n", "cand_sample = cand_vectors[:n_cand_viz]\n", "comp_sample = comp_vectors[:n_comp_viz]\n", "\n", "# Combine\n", "all_vectors = np.vstack([cand_sample, comp_sample])\n", "\n", "print(\"πŸ”„ Running t-SNE (2-3 minutes)...\")\n", "tsne = TSNE(\n", " n_components=2,\n", " perplexity=30,\n", " random_state=42,\n", " n_iter=1000,\n", " verbose=1\n", ")\n", "\n", "vectors_2d = tsne.fit_transform(all_vectors)\n", "\n", "# Split\n", "cand_2d = vectors_2d[:n_cand_viz]\n", "comp_2d = vectors_2d[n_cand_viz:]\n", "\n", "print(\"\\nβœ… t-SNE complete!\\n\")" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "%{text}", "marker": { "color": "#ff6b6b", "opacity": 0.6, "size": 6 }, "mode": "markers", "name": "Companies", "text": [ "Company 0: IBM", "Company 1: IBM", "Company 2: IBM", "Company 3: IBM", "Company 4: GE HealthCare", "Company 5: GE HealthCare", "Company 6: GE HealthCare", "Company 7: GE HealthCare", "Company 8: GE HealthCare", "Company 9: GE HealthCare", "Company 10: GE HealthCare", "Company 11: GE HealthCare", "Company 12: GE HealthCare", "Company 13: GE HealthCare", "Company 14: Hewlett Packard Enterprise", "Company 15: Hewlett Packard Enterprise", "Company 16: Hewlett Packard Enterprise", "Company 17: Hewlett Packard Enterprise", "Company 18: Oracle", "Company 19: Oracle", "Company 20: Oracle", "Company 21: Oracle", "Company 22: Oracle", "Company 23: Accenture", "Company 24: Accenture", "Company 25: Accenture", "Company 26: Accenture", "Company 27: Accenture", "Company 28: Accenture", "Company 29: Accenture", "Company 30: Microsoft", "Company 31: Microsoft", "Company 32: Microsoft", "Company 33: Microsoft", "Company 34: Microsoft", "Company 35: Microsoft", "Company 36: Microsoft", "Company 37: Microsoft", "Company 38: Deloitte", "Company 39: Deloitte", "Company 40: Deloitte", "Company 41: Deloitte", "Company 42: Deloitte", "Company 43: Deloitte", "Company 44: Deloitte", "Company 45: Siemens", "Company 46: Siemens", "Company 47: Siemens", "Company 48: PwC", "Company 49: AT&T", "Company 50: AT&T", "Company 51: AT&T", "Company 52: AT&T", "Company 53: AT&T", "Company 54: AT&T", "Company 55: AT&T", "Company 56: AT&T", "Company 57: Intel Corporation", "Company 58: Intel Corporation", "Company 59: Ericsson", "Company 60: Ericsson", "Company 61: Ericsson", "Company 62: Cisco", "Company 63: Cisco", "Company 64: Cisco", "Company 65: Cisco", "Company 66: Cisco", "Company 67: Cisco", "Company 68: Cisco", "Company 69: Cisco", "Company 70: Motorola Mobility (a Lenovo Co", "Company 71: JPMorgan Chase & Co.", "Company 72: JPMorgan Chase & Co.", "Company 73: JPMorgan Chase & Co.", "Company 74: JPMorgan Chase & Co.", "Company 75: JPMorgan Chase & Co.", "Company 76: JPMorgan Chase & Co.", "Company 77: JPMorgan Chase & Co.", "Company 78: Nokia", "Company 79: EY", "Company 80: EY", "Company 81: EY", "Company 82: EY", "Company 83: EY", "Company 84: EY", "Company 85: EY", "Company 86: EY", "Company 87: KPMG US", "Company 88: KPMG US", "Company 89: NXP Semiconductors", "Company 90: Philips", "Company 91: Philips", "Company 92: Philips", "Company 93: Philips", "Company 94: Philips", "Company 95: Philips", "Company 96: Verizon", "Company 97: Verizon", "Company 98: Verizon", "Company 99: Verizon", "Company 100: Verizon", "Company 101: Verizon", "Company 102: Verizon", "Company 103: Verizon", "Company 104: SAP", "Company 105: SAP", "Company 106: SAP", "Company 107: SAP", "Company 108: Procter & Gamble", "Company 109: Procter & Gamble", "Company 110: Bank of America", "Company 111: Bank of America", "Company 112: Bank of America", "Company 113: Bank of America", "Company 114: Bank of America", "Company 115: Bank of America", "Company 116: Bank of America", "Company 117: Bank of America", "Company 118: Bank of America", "Company 119: Elite Technology", "Company 120: BT Group", "Company 121: Pfizer", "Company 122: Pfizer", "Company 123: Pfizer", "Company 124: Pfizer", "Company 125: Pfizer", "Company 126: Johnson & Johnson", "Company 127: Johnson & Johnson", "Company 128: Johnson & Johnson", "Company 129: Johnson & Johnson", "Company 130: Johnson & Johnson", "Company 131: Johnson & Johnson", "Company 132: Johnson & Johnson", "Company 133: Johnson & Johnson", "Company 134: UBS", "Company 135: UBS", "Company 136: UBS", "Company 137: UBS", "Company 138: UBS", "Company 139: UBS", "Company 140: US Army Corps of Engineers", "Company 141: Wells Fargo", "Company 142: Wells Fargo", "Company 143: Wells Fargo", "Company 144: Wells Fargo", "Company 145: Wells Fargo", "Company 146: Wells Fargo", "Company 147: Wells Fargo", "Company 148: Wells Fargo", "Company 149: Unilever", "Company 150: Unilever", "Company 151: Sony", "Company 152: Sony Electronics", "Company 153: Sony Electronics", "Company 154: Sony Pictures Entertainment", "Company 155: Sony Pictures Entertainment", "Company 156: Sony Pictures Entertainment", "Company 157: Atos", "Company 158: Atos", "Company 159: Deutsche Bank", "Company 160: Deutsche Bank", "Company 161: DWS Group", "Company 162: Chubb", "Company 163: Chubb", "Company 164: Shell", "Company 165: American Express", "Company 166: American Express", "Company 167: American Express", "Company 168: American Express", "Company 169: American Express", "Company 170: American Express", "Company 171: American Express", "Company 172: American Express", "Company 173: American Express", "Company 174: Unisys", "Company 175: Unisys", "Company 176: Unisys", "Company 177: Unisys", "Company 178: Unisys", "Company 179: Infosys", "Company 180: Infosys", "Company 181: Infosys", "Company 182: Infosys", "Company 183: Infosys", "Company 184: Infosys", "Company 185: Infosys", "Company 186: Infosys", "Company 187: Yahoo", "Company 188: Yahoo", "Company 189: Yahoo", "Company 190: Yahoo", "Company 191: The Walt Disney Company", "Company 192: The Walt Disney Company", "Company 193: The Walt Disney Company", "Company 194: Fidelity Investments", "Company 195: Fidelity Investments", "Company 196: Fidelity Investments", "Company 197: Fidelity Investments", "Company 198: Fidelity Investments", "Company 199: Wipro", "Company 200: Wipro", "Company 201: Wipro", "Company 202: Wipro", "Company 203: Wipro", "Company 204: Wipro", "Company 205: Wipro", "Company 206: Wipro", "Company 207: Wipro", "Company 208: Wipro", "Company 209: LinkedIn", "Company 210: LinkedIn", "Company 211: LinkedIn", "Company 212: LinkedIn", "Company 213: LinkedIn", "Company 214: Air Force Research Laboratory", "Company 215: Air Force Research Laboratory", "Company 216: Air Force Research Laboratory", "Company 217: Honeywell", "Company 218: Honeywell", "Company 219: Honeywell", "Company 220: Honeywell", "Company 221: Honeywell", "Company 222: Honeywell", "Company 223: Honeywell", "Company 224: Honeywell", "Company 225: Honeywell", "Company 226: Tata Consultancy Services", "Company 227: Tata Consultancy Services", "Company 228: Tata Consultancy Services", "Company 229: Tata Consultancy Services", "Company 230: Tata Consultancy Services", "Company 231: Tata Consultancy Services", "Company 232: Tata Consultancy Services", "Company 233: Tata Consultancy Services", "Company 234: Tata Consultancy Services", "Company 235: Tata Consultancy Services", "Company 236: Tata Consultancy Services", "Company 237: National Security Agency", "Company 238: National Computer Systems", "Company 239: McKinsey & Company", "Company 240: Xerox", "Company 241: Xerox", "Company 242: Xerox", "Company 243: Fujitsu Network Communications", "Company 244: Goldman Sachs", "Company 245: Goldman Sachs", "Company 246: Goldman Sachs", "Company 247: Goldman Sachs", "Company 248: Goldman Sachs", "Company 249: Goldman Sachs", "Company 250: Goldman Sachs", "Company 251: Goldman Sachs", "Company 252: Boeing", "Company 253: Boeing", "Company 254: Boeing", "Company 255: Boeing", "Company 256: Boeing", "Company 257: Boeing", "Company 258: Boeing", "Company 259: bp", "Company 260: bp", "Company 261: bp", "Company 262: bp", "Company 263: bp", "Company 264: bp", "Company 265: bp", "Company 266: T-Mobile", "Company 267: T-Mobile", "Company 268: T-Mobile", "Company 269: T-Mobile", "Company 270: T-Mobile", "Company 271: NestlΓ©", "Company 272: NestlΓ©", "Company 273: GSK", "Company 274: GSK", "Company 275: GSK", "Company 276: GSK", "Company 277: Thomson Reuters", "Company 278: Thomson Reuters", "Company 279: Thomson Reuters", "Company 280: Thomson Reuters", "Company 281: Thomson Reuters", "Company 282: Booz Allen Hamilton", "Company 283: Booz Allen Hamilton", "Company 284: Booz Allen Hamilton", "Company 285: Booz Allen Hamilton", "Company 286: Booz Allen Hamilton", "Company 287: Booz Allen Hamilton", "Company 288: Novartis", "Company 289: Novartis", "Company 290: Novartis", "Company 291: Northrop Grumman", "Company 292: Northrop Grumman", "Company 293: Northrop Grumman", "Company 294: Northrop Grumman", "Company 295: Northrop Grumman", "Company 296: Northrop Grumman", "Company 297: Northrop Grumman", "Company 298: Northrop Grumman", "Company 299: Northrop Grumman", "Company 300: CGI", "Company 301: CGI", "Company 302: CGI", "Company 303: CGI", "Company 304: CGI", "Company 305: Capital One", "Company 306: Capital One", "Company 307: Capital One", "Company 308: Capital One", "Company 309: Capital One", "Company 310: Capital One", "Company 311: Capital One", "Company 312: Capital One", "Company 313: Barclays", "Company 314: Barclays", "Company 315: PepsiCo", "Company 316: PepsiCo", "Company 317: PepsiCo", "Company 318: PepsiCo", "Company 319: PepsiCo", "Company 320: PepsiCo", "Company 321: PepsiCo", "Company 322: PepsiCo", "Company 323: PepsiCo", "Company 324: Google", "Company 325: Google", "Company 326: Google", "Company 327: Google", "Company 328: Google", "Company 329: Electronic Arts (EA)", "Company 330: Electronic Arts (EA)", "Company 331: Electronic Arts (EA)", "Company 332: SUSE", "Company 333: SUSE", "Company 334: ADP", "Company 335: ADP", "Company 336: ADP", "Company 337: ADP", "Company 338: ADP", "Company 339: ADP", "Company 340: ADP", "Company 341: ADP", "Company 342: ADP", "Company 343: ADP", "Company 344: CDK Global", "Company 345: CDK Global", "Company 346: CDK Global", "Company 347: CDK Global", "Company 348: Teradata", "Company 349: SLB", "Company 350: SLB", "Company 351: SLB", "Company 352: SLB", "Company 353: SLB", "Company 354: General Motors", "Company 355: General Motors", "Company 356: General Motors", "Company 357: General Motors", "Company 358: General Motors", "Company 359: General Motors", "Company 360: Ally", "Company 361: Ally", "Company 362: Ally", "Company 363: Ally", "Company 364: Ally", "Company 365: Adobe", "Company 366: Adobe", "Company 367: Adobe", "Company 368: Adobe", "Company 369: Adobe", "Company 370: eBay", "Company 371: eBay", "Company 372: eBay", "Company 373: PayPal", "Company 374: PayPal", "Company 375: PayPal", "Company 376: PayPal", "Company 377: Ford Motor Company", "Company 378: Ford Motor Company", "Company 379: Ford Motor Company", "Company 380: Ford Motor Company", "Company 381: Ford Motor Company", "Company 382: Ford Motor Company", "Company 383: Ford Motor Company", "Company 384: Ford Motor Company", "Company 385: Merck", "Company 386: Merck", "Company 387: Merck", "Company 388: Merck", "Company 389: Merck", "Company 390: Merck", "Company 391: Merck", "Company 392: SAS", "Company 393: SAS", "Company 394: SAS", "Company 395: Avaya", "Company 396: AMD", "Company 397: AMD", "Company 398: AMD", "Company 399: AMD", "Company 400: MIT Lincoln Laboratory", "Company 401: MIT Lincoln Laboratory", "Company 402: Raytheon", "Company 403: Raytheon", "Company 404: Raytheon", "Company 405: Raytheon", "Company 406: Raytheon", "Company 407: BNP Paribas", "Company 408: MondelΔ“z International", "Company 409: MondelΔ“z International", "Company 410: MondelΔ“z International", "Company 411: MondelΔ“z International", "Company 412: MondelΔ“z International", "Company 413: MondelΔ“z International", "Company 414: MondelΔ“z International", "Company 415: Eastman Kodak Company", "Company 416: Eastman Kodak Company", "Company 417: Eastman Kodak Company", "Company 418: Carestream", "Company 419: UPS", "Company 420: UPS", "Company 421: UPS", "Company 422: UPS", "Company 423: Agilent Technologies", "Company 424: Agilent Technologies", "Company 425: The Home Depot", "Company 426: The Home Depot", "Company 427: Amdocs", "Company 428: Mars", "Company 429: Mars", "Company 430: Mars", "Company 431: Mars", "Company 432: Mars", "Company 433: Mars", "Company 434: Kaiser Permanente", "Company 435: Kaiser Permanente", "Company 436: Kaiser Permanente", "Company 437: Kaiser Permanente", "Company 438: Kaiser Permanente", "Company 439: Amazon", "Company 440: Amazon", "Company 441: Amazon", "Company 442: Amazon", "Company 443: Amazon", "Company 444: Amazon", "Company 445: Amazon", "Company 446: Amazon", "Company 447: Amazon", "Company 448: Amazon", "Company 449: BMC Software", "Company 450: Roche", "Company 451: Roche", "Company 452: Roche", "Company 453: Roche", "Company 454: AstraZeneca", "Company 455: AstraZeneca", "Company 456: AstraZeneca", "Company 457: AstraZeneca", "Company 458: Abbott", "Company 459: Abbott", "Company 460: Abbott", "Company 461: Abbott", "Company 462: Abbott", "Company 463: Abbott", "Company 464: Abbott", "Company 465: Abbott", "Company 466: Abbott", "Company 467: SAIC", "Company 468: SAIC", "Company 469: SAIC", "Company 470: Dignity Health", "Company 471: Owens & Minor", "Company 472: Owens & Minor", "Company 473: Stanford Children's Health | L", "Company 474: Stanford Children's Health | L", "Company 475: Stanford Children's Health | L", "Company 476: Stanford Children's Health | L", "Company 477: Boston Scientific", "Company 478: Boston Scientific", "Company 479: Sanofi", "Company 480: Sanofi", "Company 481: Sanofi", "Company 482: Sanofi", "Company 483: Sanofi", "Company 484: Harvard Medical School", "Company 485: Harvard Medical School", "Company 486: Harvard Medical School", "Company 487: Harvard Medical School", "Company 488: Harvard Medical School", "Company 489: Harvard University", "Company 490: Harvard University", "Company 491: Harvard University", "Company 492: Harvard University", "Company 493: Harvard University", "Company 494: Harvard Law School", "Company 495: Dana-Farber Cancer Institute", "Company 496: Boston Children's Hospital", "Company 497: Boston Children's Hospital", "Company 498: Boston Children's Hospital", "Company 499: Boston Children's Hospital", "Company 500: Boston Children's Hospital", "Company 501: Boston Children's Hospital", "Company 502: Boston Children's Hospital", "Company 503: Boston Children's Hospital", "Company 504: Beth Israel Deaconess Medical ", "Company 505: Beth Israel Deaconess Medical ", "Company 506: L'OrΓ©al", "Company 507: Eli Lilly and Company", "Company 508: Eli Lilly and Company", "Company 509: Eli Lilly and Company", "Company 510: Intuit", "Company 511: FedEx Ground", "Company 512: FedEx Ground", "Company 513: FedEx Ground", "Company 514: FedEx Ground", "Company 515: FedEx Ground", "Company 516: FedEx Ground", "Company 517: FedEx Ground", "Company 518: FedEx Ground", "Company 519: FedEx Services", "Company 520: FedEx Services", "Company 521: Ogilvy", "Company 522: Gap Inc.", "Company 523: Banana Republic", "Company 524: Cognizant", "Company 525: Cognizant", "Company 526: Cognizant", "Company 527: Cognizant", "Company 528: Cognizant", "Company 529: Cognizant", "Company 530: Cognizant", "Company 531: Cognizant", "Company 532: Cognizant", "Company 533: Robert Half", "Company 534: Robert Half", "Company 535: Robert Half", "Company 536: Robert Half", "Company 537: Robert Half", "Company 538: Robert Half", "Company 539: Robert Half", "Company 540: Robert Half", "Company 541: Robert Half", "Company 542: Robert Half", "Company 543: Robert Half", "Company 544: Robert Half", "Company 545: ExxonMobil", "Company 546: Societe Generale", "Company 547: Societe Generale", "Company 548: The Coca-Cola Company", "Company 549: The Coca-Cola Company", "Company 550: The Coca-Cola Company", "Company 551: The Coca-Cola Company", "Company 552: The Coca-Cola Company", "Company 553: Comcast", "Company 554: Comcast", "Company 555: Comcast", "Company 556: Comcast", "Company 557: Comcast", "Company 558: Comcast", "Company 559: Comcast", "Company 560: Comcast", "Company 561: Comcast", "Company 562: Nielsen", "Company 563: HCLTech", "Company 564: HCLTech", "Company 565: HCLTech", "Company 566: HCLTech", "Company 567: HCLTech", "Company 568: HCLTech", "Company 569: HCLTech", "Company 570: AIG", "Company 571: AIG", "Company 572: AIG", "Company 573: BBC", "Company 574: State Street", "Company 575: State Street", "Company 576: State Street", "Company 577: State Street", "Company 578: State Street", "Company 579: Bristol Myers Squibb", "Company 580: Bristol Myers Squibb", "Company 581: Bristol Myers Squibb", "Company 582: Bristol Myers Squibb", "Company 583: Bristol Myers Squibb", "Company 584: Bristol Myers Squibb", "Company 585: Bristol Myers Squibb", "Company 586: Bristol Myers Squibb", "Company 587: Bristol Myers Squibb", "Company 588: Boston Consulting Group (BCG)", "Company 589: Boston Consulting Group (BCG)", "Company 590: Boston Consulting Group (BCG)", "Company 591: Boston Consulting Group (BCG)", "Company 592: Boston Consulting Group (BCG)", "Company 593: Boston Consulting Group (BCG)", "Company 594: SLAC National Accelerator Labo", "Company 595: Stanford University School of ", "Company 596: Stanford University School of ", "Company 597: Stanford University", "Company 598: Stanford University", "Company 599: Stanford University", "Company 600: Stanford University", "Company 601: Stanford University", "Company 602: ManpowerGroup", "Company 603: ManpowerGroup", "Company 604: ManpowerGroup", "Company 605: ManpowerGroup", "Company 606: ManpowerGroup", "Company 607: ManpowerGroup", "Company 608: ManpowerGroup", "Company 609: ManpowerGroup", "Company 610: ManpowerGroup", "Company 611: ManpowerGroup", "Company 612: RBC", "Company 613: RBC", "Company 614: RBC", "Company 615: RBC", "Company 616: RBC", "Company 617: TotalEnergies", "Company 618: TotalEnergies", "Company 619: TotalEnergies", "Company 620: TotalEnergies", "Company 621: NBC News", "Company 622: NBCUniversal", "Company 623: NBCUniversal", "Company 624: NBCUniversal", "Company 625: NBCUniversal", "Company 626: NBCUniversal", "Company 627: NBCUniversal", "Company 628: NBCUniversal", "Company 629: CNBC", "Company 630: Allstate", "Company 631: Allstate", "Company 632: Allstate", "Company 633: Allstate", "Company 634: Allstate", "Company 635: Allstate", "Company 636: Allstate", "Company 637: Medtronic", "Company 638: Medtronic", "Company 639: Medtronic", "Company 640: Medtronic", "Company 641: Medtronic", "Company 642: Medtronic", "Company 643: Medtronic", "Company 644: Medtronic", "Company 645: Medtronic", "Company 646: Medtronic", "Company 647: Prudential Financial", "Company 648: Prudential Financial", "Company 649: Prudential Financial", "Company 650: Prudential Financial", "Company 651: Prudential Financial", "Company 652: Prudential Financial", "Company 653: Charles Schwab", "Company 654: 3M", "Company 655: 3M", "Company 656: Capco Energy Solutions", "Company 657: Capco Energy Solutions", "Company 658: Marsh", "Company 659: Marsh", "Company 660: Autodesk", "Company 661: Autodesk", "Company 662: Autodesk", "Company 663: Autodesk", "Company 664: BAE Systems, Inc.", "Company 665: BAE Systems, Inc.", "Company 666: BAE Systems, Inc.", "Company 667: BAE Systems, Inc.", "Company 668: Nickelodeon", "Company 669: Bayer", "Company 670: Bayer", "Company 671: Bayer", "Company 672: Bayer", "Company 673: Bayer", "Company 674: McKesson", "Company 675: McKesson", "Company 676: McKesson", "Company 677: McKesson", "Company 678: McKesson", "Company 679: General Dynamics Information T", "Company 680: General Dynamics Information T", "Company 681: General Dynamics Information T", "Company 682: General Dynamics Information T", "Company 683: General Dynamics Information T", "Company 684: General Dynamics Information T", "Company 685: General Dynamics Information T", "Company 686: General Dynamics Land Systems", "Company 687: General Dynamics Mission Syste", "Company 688: General Dynamics Mission Syste", "Company 689: General Dynamics Mission Syste", "Company 690: Philip Morris International", "Company 691: Philip Morris International", "Company 692: McCann Worldgroup", "Company 693: MRM", "Company 694: UM Worldwide", "Company 695: UM Worldwide", "Company 696: The Adecco Group", "Company 697: The Adecco Group", "Company 698: The Adecco Group", "Company 699: The Adecco Group", "Company 700: The Adecco Group", "Company 701: The Adecco Group", "Company 702: PTC", "Company 703: PTC", "Company 704: Thales", "Company 705: Sogeti", "Company 706: Sogeti", "Company 707: Sogeti", "Company 708: Sogeti", "Company 709: Rabobank", "Company 710: Rabobank", "Company 711: Rabobank", "Company 712: Mavenir", "Company 713: NASA - National Aeronautics an", "Company 714: NASA - National Aeronautics an", "Company 715: Qualcomm", "Company 716: Qualcomm", "Company 717: Qualcomm", "Company 718: Qualcomm", "Company 719: Qualcomm", "Company 720: Qualcomm", "Company 721: Qualcomm", "Company 722: Applied Materials", "Company 723: Western Union", "Company 724: Western Union", "Company 725: Western Union", "Company 726: Nike", "Company 727: Nike", "Company 728: Nike", "Company 729: Nike", "Company 730: Nike", "Company 731: Spectrum Enterprise", "Company 732: Spectrum Enterprise", "Company 733: Spectrum Enterprise", "Company 734: Coldwell Banker Realty", "Company 735: Aon", "Company 736: Aon", "Company 737: Aon", "Company 738: Aon", "Company 739: Aon", "Company 740: CNN", "Company 741: CNN", "Company 742: TE Connectivity", "Company 743: TE Connectivity", "Company 744: TE Connectivity", "Company 745: TE Connectivity", "Company 746: TE Connectivity", "Company 747: TE Connectivity", "Company 748: Amgen", "Company 749: Amgen", "Company 750: Amgen", "Company 751: Gartner", "Company 752: Gartner", "Company 753: Gartner", "Company 754: Gartner", "Company 755: Gartner", "Company 756: Volvo Group", "Company 757: Volvo Group", "Company 758: Volvo Group", "Company 759: Volvo Group", "Company 760: Volvo Penta", "Company 761: Volvo Buses", "Company 762: Mack Trucks", "Company 763: Mack Trucks", "Company 764: Volvo Construction Equipment", "Company 765: NetApp", "Company 766: NetApp", "Company 767: NetApp", "Company 768: NetApp", "Company 769: Toyota North America", "Company 770: Toyota North America", "Company 771: Toyota North America", "Company 772: Bain & Company", "Company 773: Bain & Company", "Company 774: Bain & Company", "Company 775: Avis Budget Group", "Company 776: Best Buy", "Company 777: Best Buy", "Company 778: Pearson", "Company 779: Pearson", "Company 780: Pearson", "Company 781: Pearson", "Company 782: Infineon Technologies", "Company 783: Infineon Technologies", "Company 784: TEKsystems", "Company 785: TEKsystems", "Company 786: TEKsystems", "Company 787: TEKsystems", "Company 788: TEKsystems", "Company 789: TEKsystems", "Company 790: TEKsystems", "Company 791: Allegis Group", "Company 792: DuPont", "Company 793: DuPont", "Company 794: DuPont", "Company 795: Cadence Design Systems", "Company 796: Cadence Design Systems", "Company 797: Cadence Design Systems", "Company 798: Cadence Design Systems", "Company 799: Cardinal Health", "Company 800: Cardinal Health", "Company 801: Cardinal Health", "Company 802: Cardinal Health", "Company 803: Cardinal Health", "Company 804: Cardinal Health", "Company 805: Cardinal Health", "Company 806: Cardinal Health", "Company 807: Department for Transport (DfT)", "Company 808: Visa", "Company 809: Visa", "Company 810: Visa", "Company 811: Visa", "Company 812: Chevron", "Company 813: Chevron", "Company 814: Canon Solutions America", "Company 815: Canon Solutions America", "Company 816: Canon Solutions America", "Company 817: Bosch Security and Safety Syst", "Company 818: LexisNexis", "Company 819: MetLife", "Company 820: MetLife", "Company 821: MetLife", "Company 822: MetLife", "Company 823: MetLife", "Company 824: MetLife", "Company 825: Halliburton", "Company 826: Halliburton", "Company 827: Halliburton", "Company 828: Halliburton", "Company 829: Halliburton", "Company 830: KBR, Inc.", "Company 831: KBR, Inc.", "Company 832: KBR, Inc.", "Company 833: KBR, Inc.", "Company 834: Keller Williams Realty, Inc.", "Company 835: Novo Nordisk", "Company 836: Novo Nordisk", "Company 837: Novo Nordisk", "Company 838: Novo Nordisk", "Company 839: Novo Nordisk", "Company 840: Hanesbrands Inc.", "Company 841: Hanesbrands Inc.", "Company 842: Danone", "Company 843: Danone", "Company 844: Danone", "Company 845: Danone", "Company 846: Juniper Networks", "Company 847: Juniper Networks", "Company 848: Juniper Networks", "Company 849: Johnson Controls", "Company 850: Johnson Controls", "Company 851: Johnson Controls", "Company 852: Victoria’s Secret & Co.", "Company 853: Victoria’s Secret & Co.", "Company 854: Victoria’s Secret & Co.", "Company 855: Victoria’s Secret & Co.", "Company 856: Victoria’s Secret & Co.", "Company 857: Bath & Body Works", "Company 858: Bath & Body Works", "Company 859: Bath & Body Works", "Company 860: Bath & Body Works", "Company 861: Bath & Body Works", "Company 862: Bath & Body Works", "Company 863: Spherion", "Company 864: Spherion", "Company 865: Spherion", "Company 866: Starbucks", "Company 867: Starbucks", "Company 868: Starbucks", "Company 869: Starbucks", "Company 870: Delta Air Lines", "Company 871: Delta Air Lines", "Company 872: Delta Air Lines", "Company 873: Delta Air Lines", "Company 874: Genentech", "Company 875: Genentech", "Company 876: Genentech", "Company 877: Genentech", "Company 878: Genentech", "Company 879: Flex", "Company 880: Flex", "Company 881: Flex", "Company 882: Flex", "Company 883: The Wall Street Journal", "Company 884: Dow Jones", "Company 885: Macy's", "Company 886: Macy's", "Company 887: Macy's", "Company 888: Macy's", "Company 889: Macy's", "Company 890: Macy's", "Company 891: Macy's", "Company 892: Macy's", "Company 893: Macy's", "Company 894: Macy's", "Company 895: Insight", "Company 896: Insight", "Company 897: Insight", "Company 898: Insight", "Company 899: Kelly", "Company 900: Kelly", "Company 901: Kelly", "Company 902: Kelly", "Company 903: Kelly", "Company 904: Kelly", "Company 905: Kelly", "Company 906: Kelly", "Company 907: Kelly", "Company 908: Marriott International", "Company 909: Marriott International", "Company 910: Marriott International", "Company 911: Marriott International", "Company 912: Marriott International", "Company 913: CBRE", "Company 914: CBRE", "Company 915: CBRE", "Company 916: CBRE", "Company 917: CBRE", "Company 918: CBRE", "Company 919: Randstad", "Company 920: Randstad", "Company 921: Randstad", "Company 922: Randstad", "Company 923: Randstad", "Company 924: Schneider Electric", "Company 925: Nationwide", "Company 926: Nationwide", "Company 927: Nationwide", "Company 928: Baxter International Inc.", "Company 929: Baxter International Inc.", "Company 930: Baxter International Inc.", "Company 931: Baxter International Inc.", "Company 932: Baxter International Inc.", "Company 933: Baxter International Inc.", "Company 934: Baxter International Inc.", "Company 935: United Airlines", "Company 936: United Airlines", "Company 937: United Airlines", "Company 938: United Airlines", "Company 939: United Airlines", "Company 940: United Airlines", "Company 941: United Airlines", "Company 942: United Airlines", "Company 943: State Farm", "Company 944: State Farm", "Company 945: State Farm", "Company 946: State Farm", "Company 947: State Farm", "Company 948: State Farm", "Company 949: Dun & Bradstreet", "Company 950: Dun & Bradstreet", "Company 951: Mercer", "Company 952: Mercer", "Company 953: Pratt & Whitney", "Company 954: Pratt & Whitney", "Company 955: Pratt & Whitney", "Company 956: Pratt & Whitney", "Company 957: Pratt & Whitney", "Company 958: Carrier HVAC", "Company 959: Grant Thornton LLP (US)", "Company 960: Alstom", "Company 961: Northwestern Mutual", "Company 962: Northwestern Mutual", "Company 963: Northwestern Mutual", "Company 964: Northwestern Mutual", "Company 965: Northwestern Mutual", "Company 966: Northwestern Mutual", "Company 967: Northwestern Mutual", "Company 968: Hilton", "Company 969: Hilton", "Company 970: Hilton", "Company 971: Hilton", "Company 972: Hilton", "Company 973: Hilton", "Company 974: Hilton", "Company 975: Hilton", "Company 976: Oliver Wyman", "Company 977: Synopsys Inc", "Company 978: Synopsys Inc", "Company 979: Synopsys Inc", "Company 980: Synopsys Inc", "Company 981: Synopsys Inc", "Company 982: Synopsys Inc", "Company 983: Synopsys Inc", "Company 984: Zurich North America", "Company 985: Zurich North America", "Company 986: Zurich North America", "Company 987: Zurich North America", "Company 988: Zurich North America", "Company 989: Digitas North America", "Company 990: The Hartford", "Company 991: The Hartford", "Company 992: The Hartford", "Company 993: UCLA Health", "Company 994: Children's Hospital Los Angele", "Company 995: Children's Hospital Los Angele", "Company 996: UCLA", "Company 997: UCLA", "Company 998: Wolters Kluwer", "Company 999: Wolters Kluwer", "Company 1000: Wolters Kluwer", "Company 1001: Wolters Kluwer", "Company 1002: Cigna Healthcare", "Company 1003: Bloomberg", "Company 1004: Bloomberg", "Company 1005: Bloomberg", "Company 1006: Bloomberg", "Company 1007: Bloomberg", "Company 1008: Diageo", "Company 1009: Diageo", "Company 1010: Rockwell Automation", "Company 1011: Rockwell Automation", "Company 1012: Rockwell Automation", "Company 1013: Rockwell Automation", "Company 1014: Michigan Medicine", "Company 1015: Michigan Medicine", "Company 1016: Michigan Medicine", "Company 1017: University of Michigan", "Company 1018: University of Michigan", "Company 1019: University of Michigan", "Company 1020: University of Michigan", "Company 1021: U.S. Bank", "Company 1022: U.S. Bank", "Company 1023: U.S. Bank", "Company 1024: U.S. Bank", "Company 1025: U.S. Bank", "Company 1026: U.S. Bank", "Company 1027: Experian", "Company 1028: Experian", "Company 1029: Experian", "Company 1030: Experian", "Company 1031: iHeartMedia", "Company 1032: iHeartMedia", "Company 1033: Clear Channel Outdoor", "Company 1034: Clear Channel Outdoor", "Company 1035: Whirlpool Corporation", "Company 1036: Whirlpool Corporation", "Company 1037: Dow", "Company 1038: Dow", "Company 1039: Dow", "Company 1040: Dow", "Company 1041: Dow", "Company 1042: Ingram Micro", "Company 1043: Ingram Micro", "Company 1044: Ingram Micro", "Company 1045: Ingram Micro", "Company 1046: CrΓ©dit Agricole CIB", "Company 1047: University of Washington", "Company 1048: Momentum Worldwide", "Company 1049: Eaton", "Company 1050: Eaton", "Company 1051: Tetra Pak", "Company 1052: Tetra Pak", "Company 1053: Panasonic Automotive North Ame", "Company 1054: Panasonic North America", "Company 1055: Panasonic Avionics Corporation", "Company 1056: Panasonic Avionics Corporation", "Company 1057: Caterpillar Inc.", "Company 1058: Caterpillar Inc.", "Company 1059: Caterpillar Inc.", "Company 1060: Caterpillar Inc.", "Company 1061: Caterpillar Inc.", "Company 1062: Caterpillar Inc.", "Company 1063: Caterpillar Inc.", "Company 1064: Columbia University Irving Med", "Company 1065: Columbia University Irving Med", "Company 1066: Columbia University Irving Med", "Company 1067: Columbia University Irving Med", "Company 1068: Columbia University Irving Med", "Company 1069: Columbia University", "Company 1070: BASF", "Company 1071: BASF", "Company 1072: BASF", "Company 1073: BASF", "Company 1074: BASF", "Company 1075: BASF", "Company 1076: BASF", "Company 1077: American Airlines", "Company 1078: American Airlines", "Company 1079: American Airlines", "Company 1080: American Airlines", "Company 1081: American Airlines", "Company 1082: American Airlines", "Company 1083: Citrix", "Company 1084: Walmart", "Company 1085: Walmart", "Company 1086: Walmart", "Company 1087: Walmart", "Company 1088: Walmart", "Company 1089: Walmart", "Company 1090: Walmart", "Company 1091: Walmart", "Company 1092: University of Illinois Chicago", "Company 1093: University of Illinois Chicago", "Company 1094: University of Illinois Chicago", "Company 1095: University of Illinois Chicago", "Company 1096: University of Illinois Urbana-", "Company 1097: University of Illinois Urbana-", "Company 1098: University of Illinois Urbana-", "Company 1099: University of Illinois Urbana-", "Company 1100: University of Illinois Urbana-", "Company 1101: University of Illinois Urbana-", "Company 1102: Caltrans", "Company 1103: Caltrans", "Company 1104: Caltrans", "Company 1105: County of San Diego", "Company 1106: County of San Diego", "Company 1107: CalPERS", "Company 1108: CalPERS", "Company 1109: California Department of Justi", "Company 1110: California Department of Justi", "Company 1111: Valeo", "Company 1112: Valeo", "Company 1113: McDonald's", "Company 1114: McDonald's", "Company 1115: McDonald's", "Company 1116: McDonald's", "Company 1117: McDonald's", "Company 1118: McDonald's", "Company 1119: McDonald's", "Company 1120: McDonald's", "Company 1121: Cargill", "Company 1122: Cargill", "Company 1123: John Hancock", "Company 1124: John Hancock", "Company 1125: John Hancock", "Company 1126: Manulife", "Company 1127: Liberty Mutual Insurance", "Company 1128: OpenText", "Company 1129: KLA", "Company 1130: KLA", "Company 1131: KLA", "Company 1132: BOMBARDIER", "Company 1133: RR Donnelley", "Company 1134: RR Donnelley", "Company 1135: RR Donnelley", "Company 1136: Acxiom", "Company 1137: Acxiom", "Company 1138: Acxiom", "Company 1139: IKEA", "Company 1140: IKEA", "Company 1141: IKEA", "Company 1142: IKEA", "Company 1143: IKEA", "Company 1144: IKEA", "Company 1145: IKEA", "Company 1146: IKEA", "Company 1147: Colgate-Palmolive", "Company 1148: Colgate-Palmolive", "Company 1149: Expedia Group", "Company 1150: Expedia Group", "Company 1151: Emerson", "Company 1152: Emerson", "Company 1153: Emerson", "Company 1154: Emerson", "Company 1155: Emerson", "Company 1156: TD", "Company 1157: TD", "Company 1158: TD", "Company 1159: TD", "Company 1160: TD", "Company 1161: TD", "Company 1162: Andersen Corporation", "Company 1163: Andersen Corporation", "Company 1164: Andersen Corporation", "Company 1165: Andersen Corporation", "Company 1166: Andersen Corporation", "Company 1167: Federal Reserve Board", "Company 1168: Federal Reserve Bank of San Fr", "Company 1169: Federal Reserve Bank of Boston", "Company 1170: Sage", "Company 1171: Publicis", "Company 1172: Publicis", "Company 1173: Publicis", "Company 1174: General Mills", "Company 1175: General Mills", "Company 1176: BlackBerry", "Company 1177: Mary Kay Global", "Company 1178: Mary Kay Global", "Company 1179: Mary Kay Global", "Company 1180: University of California, Sant", "Company 1181: University of California, Davi", "Company 1182: University of California, Davi", "Company 1183: UC Davis Health", "Company 1184: Commonwealth Bank", "Company 1185: Commonwealth Bank", "Company 1186: BDO USA", "Company 1187: BDO USA", "Company 1188: BDO USA", "Company 1189: BDO USA", "Company 1190: BDO USA", "Company 1191: Visteon Corporation", "Company 1192: Visteon Corporation", "Company 1193: Seagate Technology", "Company 1194: Canon Business Process Service", "Company 1195: ITT Inc.", "Company 1196: ITT Inc.", "Company 1197: ITT Inc.", "Company 1198: ITT Inc.", "Company 1199: Aerotek", "Company 1200: Aerotek", "Company 1201: Aerotek", "Company 1202: Aerotek", "Company 1203: Aerotek", "Company 1204: Brigham and Women's Hospital", "Company 1205: Massachusetts General Hospital", "Company 1206: Massachusetts General Hospital", "Company 1207: Massachusetts General Hospital", "Company 1208: Massachusetts General Hospital", "Company 1209: Newton-Wellesley Hospital", "Company 1210: NYC Department of Education", "Company 1211: NYC Department of Education", "Company 1212: NYC Department of Education", "Company 1213: NYC Department of Education", "Company 1214: NYC Department of Education", "Company 1215: NYC Department of Education", "Company 1216: Albertsons Companies", "Company 1217: Albertsons Companies", "Company 1218: Albertsons Companies", "Company 1219: Albertsons Companies", "Company 1220: Albertsons Companies", "Company 1221: Shaw's Supermarkets", "Company 1222: Shaw's Supermarkets", "Company 1223: Shaw's Supermarkets", "Company 1224: Shaw's Supermarkets", "Company 1225: Acme Markets", "Company 1226: Acme Markets", "Company 1227: Acme Markets", "Company 1228: Acme Markets", "Company 1229: The Save Mart Companies", "Company 1230: The Save Mart Companies", "Company 1231: Teradyne", "Company 1232: Teradyne", "Company 1233: S&P Global", "Company 1234: S&P Global", "Company 1235: S&P Global", "Company 1236: S&P Global", "Company 1237: S&P Global", "Company 1238: S&P Global", "Company 1239: S&P Global", "Company 1240: S&P Global", "Company 1241: Teacher Retirement System of T", "Company 1242: Texas Health and Human Service", "Company 1243: Texas Workforce Commission", "Company 1244: Texas Attorney General", "Company 1245: Allianz Life", "Company 1246: Lexmark", "Company 1247: Saint-Gobain", "Company 1248: Saint-Gobain", "Company 1249: CSAA Insurance Group, a AAA In", "Company 1250: CertainTeed", "Company 1251: VMware", "Company 1252: VMware", "Company 1253: VMware", "Company 1254: VMware", "Company 1255: Transportation Security Admini", "Company 1256: Transportation Security Admini", "Company 1257: Transportation Security Admini", "Company 1258: FEMA", "Company 1259: FEMA", "Company 1260: FEMA", "Company 1261: FEMA", "Company 1262: U.S. Customs and Border Protec", "Company 1263: U.S. Customs and Border Protec", "Company 1264: Universal Music Group", "Company 1265: Fifth Third Bank", "Company 1266: Fifth Third Bank", "Company 1267: Fifth Third Bank", "Company 1268: Fifth Third Bank", "Company 1269: Mastercard", "Company 1270: Mastercard", "Company 1271: Mastercard", "Company 1272: Mastercard", "Company 1273: Staples", "Company 1274: Staples", "Company 1275: Staples", "Company 1276: Staples", "Company 1277: Staples", "Company 1278: Elsevier", "Company 1279: University of California, San ", "Company 1280: University of California, San ", "Company 1281: University of California, San ", "Company 1282: University of California, San ", "Company 1283: University of California, San ", "Company 1284: UCSF Health", "Company 1285: UCSF Health", "Company 1286: UCSF Health", "Company 1287: UCSF Health", "Company 1288: UCSF Health", "Company 1289: UCSF Health", "Company 1290: Ameriprise Financial Services,", "Company 1291: Ameriprise Financial Services,", "Company 1292: Ameriprise Financial Services,", "Company 1293: Sony Music Entertainment", "Company 1294: Sony Music Entertainment", "Company 1295: Alcoa", "Company 1296: University of Phoenix", "Company 1297: University of Phoenix", "Company 1298: Accor", "Company 1299: Accor", "Company 1300: Accor", "Company 1301: Accor", "Company 1302: Accor", "Company 1303: Accor", "Company 1304: Accor", "Company 1305: Tech Mahindra", "Company 1306: Tech Mahindra", "Company 1307: Tech Mahindra", "Company 1308: Tech Mahindra", "Company 1309: Tech Mahindra", "Company 1310: Broadcom", "Company 1311: Broadcom", "Company 1312: Kforce Inc", "Company 1313: Thermo Fisher Scientific", "Company 1314: Thermo Fisher Scientific", "Company 1315: Thermo Fisher Scientific", "Company 1316: Thermo Fisher Scientific", "Company 1317: Thermo Fisher Scientific", "Company 1318: Thermo Fisher Scientific", "Company 1319: Thermo Fisher Scientific", "Company 1320: University of Southern Califor", "Company 1321: University of Southern Califor", "Company 1322: University of Southern Califor", "Company 1323: University of Southern Califor", "Company 1324: University of Southern Califor", "Company 1325: University of Southern Califor", "Company 1326: University of Southern Califor", "Company 1327: Travelers", "Company 1328: Travelers", "Company 1329: Travelers", "Company 1330: Check Point Software Technolog", "Company 1331: Check Point Software Technolog", "Company 1332: Reckitt", "Company 1333: Reckitt", "Company 1334: U.S. Department of State", "Company 1335: BD", "Company 1336: BD", "Company 1337: BD", "Company 1338: BD", "Company 1339: BD", "Company 1340: BD", "Company 1341: BD", "Company 1342: BD", "Company 1343: Office Depot", "Company 1344: Lionbridge", "Company 1345: Edwards Vacuum", "Company 1346: Edwards Vacuum", "Company 1347: FIS", "Company 1348: FIS", "Company 1349: FIS", "Company 1350: FIS", "Company 1351: FIS", "Company 1352: The HEINEKEN Company", "Company 1353: Hyatt Regency", "Company 1354: Hyatt Regency", "Company 1355: Hyatt Regency", "Company 1356: Hyatt Regency", "Company 1357: Hyatt Regency", "Company 1358: Hyatt Regency", "Company 1359: Levi Strauss & Co.", "Company 1360: Levi Strauss & Co.", "Company 1361: Levi Strauss & Co.", "Company 1362: Levi Strauss & Co.", "Company 1363: Scotiabank", "Company 1364: Scotiabank", "Company 1365: Freddie Mac", "Company 1366: Freddie Mac", "Company 1367: Freddie Mac", "Company 1368: Freddie Mac", "Company 1369: Stop & Shop", "Company 1370: Stop & Shop", "Company 1371: Stop & Shop", "Company 1372: Software Engineering Institute", "Company 1373: NYU Stern School of Business", "Company 1374: The University of Texas at Aus", "Company 1375: The University of Texas at Aus", "Company 1376: The University of Texas at Aus", "Company 1377: Penn Medicine, University of P", "Company 1378: Penn Medicine, University of P", "Company 1379: Penn Medicine, University of P", "Company 1380: Penn Medicine, University of P", "Company 1381: University of Pennsylvania", "Company 1382: University of Pennsylvania", "Company 1383: University of Pennsylvania", "Company 1384: University of Pennsylvania", "Company 1385: The Ohio State University Wexn", "Company 1386: The Ohio State University Wexn", "Company 1387: The Ohio State University Wexn", "Company 1388: The Ohio State University", "Company 1389: Ohio Department of Education a", "Company 1390: Ingersoll Rand", "Company 1391: Ingersoll Rand", "Company 1392: Ingersoll Rand", "Company 1393: Ingersoll Rand", "Company 1394: Ingersoll Rand", "Company 1395: Ingersoll Rand", "Company 1396: JLL", "Company 1397: JLL", "Company 1398: JLL", "Company 1399: JLL", "Company 1400: JLL", "Company 1401: JLL", "Company 1402: University of Minnesota", "Company 1403: University of Minnesota", "Company 1404: University of Minnesota", "Company 1405: Salesforce", "Company 1406: Salesforce", "Company 1407: Salesforce", "Company 1408: Salesforce", "Company 1409: Salesforce", "Company 1410: Salesforce", "Company 1411: Salesforce", "Company 1412: Mallinckrodt Pharmaceuticals", "Company 1413: Northwestern University", "Company 1414: Northwestern University", "Company 1415: Northwestern University", "Company 1416: Mattel, Inc.", "Company 1417: Mattel, Inc.", "Company 1418: Mattel, Inc.", "Company 1419: Mattel, Inc.", "Company 1420: Mattel, Inc.", "Company 1421: AkzoNobel", "Company 1422: Agfa", "Company 1423: Boehringer Ingelheim", "Company 1424: Boehringer Ingelheim", "Company 1425: Boehringer Ingelheim", "Company 1426: Boehringer Ingelheim", "Company 1427: Farmers Insurance", "Company 1428: Farmers Insurance", "Company 1429: Farmers Insurance", "Company 1430: Farmers Insurance", "Company 1431: International Paper", "Company 1432: International Paper", "Company 1433: International Paper", "Company 1434: International Paper", "Company 1435: CNA Insurance", "Company 1436: CNA Insurance", "Company 1437: CNA Insurance", "Company 1438: CNA Insurance", "Company 1439: CNA Insurance", "Company 1440: KeyBank", "Company 1441: KeyBank", "Company 1442: KeyBank", "Company 1443: KeyBank", "Company 1444: KeyBank", "Company 1445: KeyBank", "Company 1446: Aegon", "Company 1447: Aegon", "Company 1448: Danfoss", "Company 1449: Danfoss", "Company 1450: Danfoss", "Company 1451: Danfoss", "Company 1452: Progressive Insurance", "Company 1453: Progressive Insurance", "Company 1454: Progressive Insurance", "Company 1455: Progressive Insurance", "Company 1456: Progressive Insurance", "Company 1457: Progressive Insurance", "Company 1458: Progressive Insurance", "Company 1459: Progressive Insurance", "Company 1460: DHL Supply Chain", "Company 1461: DHL Supply Chain", "Company 1462: DHL Supply Chain", "Company 1463: DHL Supply Chain", "Company 1464: DHL Supply Chain", "Company 1465: DHL Supply Chain", "Company 1466: DHL Supply Chain", "Company 1467: DHL Supply Chain", "Company 1468: DHL Supply Chain", "Company 1469: Stryker", "Company 1470: Stryker", "Company 1471: Stryker", "Company 1472: Stryker", "Company 1473: Stryker", "Company 1474: Physio", "Company 1475: Bechtel Corporation", "Company 1476: Bechtel Corporation", "Company 1477: Ricoh USA, Inc.", "Company 1478: Avery Dennison", "Company 1479: Avery Dennison", "Company 1480: Avery Dennison", "Company 1481: Cox Communications", "Company 1482: Cox Communications", "Company 1483: Cox Communications", "Company 1484: CDW", "Company 1485: CDW", "Company 1486: CDW", "Company 1487: CDW", "Company 1488: Textron", "Company 1489: Textron Systems", "Company 1490: Kaplan", "Company 1491: Kaplan", "Company 1492: Kaplan", "Company 1493: Kaplan", "Company 1494: Fiserv", "Company 1495: Fiserv", "Company 1496: Fiserv", "Company 1497: Nordstrom", "Company 1498: Nordstrom", "Company 1499: Nordstrom", "Company 1500: Nordstrom", "Company 1501: Nordstrom", "Company 1502: Nordstrom", "Company 1503: Nordstrom", "Company 1504: Nordstrom", "Company 1505: UC San Diego", "Company 1506: UC San Diego", "Company 1507: UC San Diego Health", "Company 1508: UC San Diego Health", "Company 1509: IDC", "Company 1510: Celestica", "Company 1511: Celestica", "Company 1512: Celestica", "Company 1513: Celestica", "Company 1514: FICO", "Company 1515: Sodexo", "Company 1516: Pizza Hut", "Company 1517: Taco Bell", "Company 1518: Yum! Brands", "Company 1519: Georgia-Pacific LLC", "Company 1520: Georgia-Pacific LLC", "Company 1521: Georgia-Pacific LLC", "Company 1522: Georgia-Pacific LLC", "Company 1523: New York Life Insurance Compan", "Company 1524: New York Life Insurance Compan", "Company 1525: New York Life Insurance Compan", "Company 1526: New York Life Insurance Compan", "Company 1527: New York Life Insurance Compan", "Company 1528: Kimberly-Clark", "Company 1529: Kimberly-Clark", "Company 1530: Kimberly-Clark", "Company 1531: Kimberly-Clark", "Company 1532: Peace Corps", "Company 1533: Peace Corps", "Company 1534: Peace Corps", "Company 1535: Analog Devices", "Company 1536: Analog Devices", "Company 1537: UPMC", "Company 1538: UPMC", "Company 1539: UPMC", "Company 1540: UPMC", "Company 1541: UPMC", "Company 1542: UPMC", "Company 1543: UPMC", "Company 1544: UPMC", "Company 1545: UPMC Health Plan", "Company 1546: Electrolux Group", "Company 1547: Electrolux Group", "Company 1548: Electrolux Group", "Company 1549: Holcim", "Company 1550: Holcim", "Company 1551: Holcim", "Company 1552: Holcim", "Company 1553: Holcim", "Company 1554: Michael Page", "Company 1555: Michael Page", "Company 1556: Michael Page", "Company 1557: Michael Page", "Company 1558: Michael Page", "Company 1559: Michael Page", "Company 1560: Michael Page", "Company 1561: Michael Page", "Company 1562: Michael Page", "Company 1563: Michael Page", "Company 1564: Hays", "Company 1565: Hays", "Company 1566: Hays", "Company 1567: Hays", "Company 1568: Hays", "Company 1569: Hays", "Company 1570: Hays", "Company 1571: Hays", "Company 1572: Hays", "Company 1573: Hays", "Company 1574: Hays", "Company 1575: IDEMIA", "Company 1576: IDEMIA", "Company 1577: Conagra Brands", "Company 1578: Conagra Brands", "Company 1579: Conagra Brands", "Company 1580: Progress", "Company 1581: Safeway", "Company 1582: Safeway", "Company 1583: Safeway", "Company 1584: Safeway", "Company 1585: Safeway", "Company 1586: Safeway", "Company 1587: Weill Cornell Medicine", "Company 1588: Cornell University", "Company 1589: Johns Hopkins Hospital", "Company 1590: The Johns Hopkins University", "Company 1591: The Johns Hopkins University", "Company 1592: The Johns Hopkins University", "Company 1593: The Johns Hopkins University", "Company 1594: The Johns Hopkins University", "Company 1595: Continental", "Company 1596: Continental", "Company 1597: Continental", "Company 1598: Edelman", "Company 1599: Edelman", "Company 1600: Macquarie Group", "Company 1601: Macquarie Group", "Company 1602: Macquarie Group", "Company 1603: Red Hat", "Company 1604: Red Hat", "Company 1605: IHG Hotels & Resorts", "Company 1606: IHG Hotels & Resorts", "Company 1607: Boston University", "Company 1608: Boston University", "Company 1609: Boston University", "Company 1610: Georgia Tech Research Institut", "Company 1611: Georgia Tech Research Institut", "Company 1612: Georgia Tech Research Institut", "Company 1613: Georgia Institute of Technolog", "Company 1614: Georgia Institute of Technolog", "Company 1615: Georgia Institute of Technolog", "Company 1616: Georgia Institute of Technolog", "Company 1617: Georgia Institute of Technolog", "Company 1618: Georgia Institute of Technolog", "Company 1619: Georgia Institute of Technolog", "Company 1620: Hughes", "Company 1621: Arrow Electronics", "Company 1622: Arrow Electronics", "Company 1623: Arrow Electronics", "Company 1624: Arrow Electronics", "Company 1625: Computacenter", "Company 1626: Computacenter", "Company 1627: Computacenter", "Company 1628: Mphasis", "Company 1629: Mphasis", "Company 1630: Mphasis", "Company 1631: Mphasis", "Company 1632: The Princeton Group", "Company 1633: Walgreens", "Company 1634: Walgreens", "Company 1635: Walgreens", "Company 1636: Walgreens", "Company 1637: Walgreens", "Company 1638: Walgreens", "Company 1639: ESPN", "Company 1640: NVIDIA", "Company 1641: NVIDIA", "Company 1642: NVIDIA", "Company 1643: NVIDIA", "Company 1644: Cummins Inc.", "Company 1645: Cummins Inc.", "Company 1646: Cummins Inc.", "Company 1647: Cummins Inc.", "Company 1648: Cummins Inc.", "Company 1649: Cummins Inc.", "Company 1650: HCA Healthcare", "Company 1651: HCA Healthcare", "Company 1652: HCA Healthcare", "Company 1653: HCA Healthcare", "Company 1654: HCA Healthcare", "Company 1655: HCA Healthcare", "Company 1656: HCA Healthcare", "Company 1657: HCA Healthcare", "Company 1658: HCA Healthcare", "Company 1659: HCA Healthcare Physician Servi", "Company 1660: MassMutual", "Company 1661: MassMutual", "Company 1662: MassMutual", "Company 1663: Compucom", "Company 1664: University of Maryland", "Company 1665: University of Maryland", "Company 1666: University of Maryland", "Company 1667: Lenovo", "Company 1668: Lenovo", "Company 1669: Lenovo", "Company 1670: Lenovo", "Company 1671: Lenovo", "Company 1672: Penn State University", "Company 1673: Penn State University", "Company 1674: Penn State Health", "Company 1675: Penn State Health", "Company 1676: Penn State Health", "Company 1677: H&R Block", "Company 1678: H&R Block", "Company 1679: H&R Block", "Company 1680: H&R Block", "Company 1681: H&R Block", "Company 1682: H&R Block", "Company 1683: CACI International Inc", "Company 1684: CACI International Inc", "Company 1685: CACI International Inc", "Company 1686: CACI International Inc", "Company 1687: CACI International Inc", "Company 1688: CACI International Inc", "Company 1689: Franklin Templeton", "Company 1690: Franklin Templeton", "Company 1691: Franklin Templeton", "Company 1692: Edward Jones", "Company 1693: Edward Jones", "Company 1694: Edward Jones", "Company 1695: Edward Jones", "Company 1696: Edward Jones", "Company 1697: Edward Jones", "Company 1698: Corning Incorporated", "Company 1699: Fluor Corporation", "Company 1700: Fluor Corporation", "Company 1701: Fluor Corporation", "Company 1702: Fluor Corporation", "Company 1703: Fluor Corporation", "Company 1704: Fluor Corporation", "Company 1705: Mastech Digital", "Company 1706: Mastech Digital", "Company 1707: Mastech Digital", "Company 1708: Mastech Digital", "Company 1709: JCPenney", "Company 1710: Micron Technology", "Company 1711: Micron Technology", "Company 1712: Micron Technology", "Company 1713: Micron Technology", "Company 1714: Micron Technology", "Company 1715: United States Postal Service", "Company 1716: Equifax", "Company 1717: Equifax", "Company 1718: Equifax", "Company 1719: Equifax", "Company 1720: Lear Corporation", "Company 1721: Lear Corporation", "Company 1722: Lear Corporation", "Company 1723: Lear Corporation", "Company 1724: The Reynolds and Reynolds Comp", "Company 1725: The Reynolds and Reynolds Comp", "Company 1726: the LEGO Group", "Company 1727: ArcelorMittal", "Company 1728: ArcelorMittal", "Company 1729: Korn Ferry", "Company 1730: Korn Ferry", "Company 1731: Korn Ferry", "Company 1732: Korn Ferry", "Company 1733: Korn Ferry", "Company 1734: Korn Ferry", "Company 1735: RSM US LLP", "Company 1736: RSM US LLP", "Company 1737: RSM US LLP", "Company 1738: RSM US LLP", "Company 1739: RSM US LLP", "Company 1740: RSM US LLP", "Company 1741: RSM US LLP", "Company 1742: RSM US LLP", "Company 1743: ZF Group", "Company 1744: ZF Group", "Company 1745: ZF Group", "Company 1746: adidas", "Company 1747: adidas", "Company 1748: adidas", "Company 1749: University of North Carolina a", "Company 1750: Discover Financial Services", "Company 1751: Discover Financial Services", "Company 1752: Discover Financial Services", "Company 1753: Discover Financial Services", "Company 1754: Discover Financial Services", "Company 1755: Discover Financial Services", "Company 1756: GroupM", "Company 1757: University of Colorado", "Company 1758: University of Colorado", "Company 1759: University of Colorado", "Company 1760: University of Colorado", "Company 1761: University of Colorado Boulder", "Company 1762: University of Colorado Boulder", "Company 1763: University of Colorado Boulder", "Company 1764: University of Colorado Boulder", "Company 1765: University of Colorado Boulder", "Company 1766: Marvell Technology", "Company 1767: Marvell Technology", "Company 1768: Epsilon", "Company 1769: Epsilon", "Company 1770: Epsilon", "Company 1771: Epsilon", "Company 1772: Epsilon", "Company 1773: Iron Mountain", "Company 1774: John Deere", "Company 1775: John Deere", "Company 1776: John Deere", "Company 1777: AllianceBernstein", "Company 1778: AllianceBernstein", "Company 1779: Air Liquide", "Company 1780: Air Liquide", "Company 1781: Northern Trust", "Company 1782: Northern Trust", "Company 1783: Northern Trust", "Company 1784: Northern Trust", "Company 1785: Northern Trust", "Company 1786: Swiss Re", "Company 1787: MITRE", "Company 1788: MITRE", "Company 1789: MITRE", "Company 1790: DS Smith", "Company 1791: Informatica", "Company 1792: Informatica", "Company 1793: WebMD", "Company 1794: Grainger", "Company 1795: Grainger", "Company 1796: Grainger", "Company 1797: Grainger", "Company 1798: Grainger", "Company 1799: FedEx Office", "Company 1800: FedEx Office", "Company 1801: Rolls-Royce", "Company 1802: Rolls-Royce", "Company 1803: Rolls-Royce", "Company 1804: Rolls-Royce", "Company 1805: University of Chicago", "Company 1806: University of Chicago", "Company 1807: Emory Healthcare", "Company 1808: Emory Healthcare", "Company 1809: Emory Healthcare", "Company 1810: Emory Healthcare", "Company 1811: Emory Healthcare", "Company 1812: Emory University", "Company 1813: Emory University", "Company 1814: Emory University", "Company 1815: ASML", "Company 1816: ASML", "Company 1817: ASML", "Company 1818: ASML", "Company 1819: ASML", "Company 1820: ASML", "Company 1821: Pacific Gas and Electric Compa", "Company 1822: Pacific Gas and Electric Compa", "Company 1823: Pacific Gas and Electric Compa", "Company 1824: Framatome", "Company 1825: Framatome", "Company 1826: Framatome", "Company 1827: The Goodyear Tire & Rubber Com", "Company 1828: The Goodyear Tire & Rubber Com", "Company 1829: The Goodyear Tire & Rubber Com", "Company 1830: The Goodyear Tire & Rubber Com", "Company 1831: The Goodyear Tire & Rubber Com", "Company 1832: The Goodyear Tire & Rubber Com", "Company 1833: U.S. House of Representatives", "Company 1834: Akamai Technologies", "Company 1835: Akamai Technologies", "Company 1836: Akamai Technologies", "Company 1837: Hillsborough County Public Sch", "Company 1838: Clifford Chance", "Company 1839: Clifford Chance", "Company 1840: Baker McKenzie", "Company 1841: Ciena", "Company 1842: Ciena", "Company 1843: Ciena", "Company 1844: Biogen", "Company 1845: Biogen", "Company 1846: Biogen", "Company 1847: Heidrick & Struggles", "Company 1848: Houghton Mifflin Harcourt", "Company 1849: WTW", "Company 1850: WTW", "Company 1851: WTW", "Company 1852: WTW", "Company 1853: WTW", "Company 1854: WTW", "Company 1855: WTW", "Company 1856: WTW", "Company 1857: WTW", "Company 1858: Aflac", "Company 1859: Aflac", "Company 1860: Aflac", "Company 1861: Syngenta", "Company 1862: Syngenta", "Company 1863: Syngenta", "Company 1864: American Cancer Society", "Company 1865: American Cancer Society", "Company 1866: Capital Group", "Company 1867: Capital Group", "Company 1868: Capital Group", "Company 1869: Capital Group", "Company 1870: Jacobs", "Company 1871: Jacobs", "Company 1872: Jacobs", "Company 1873: Bose Corporation", "Company 1874: Bose Corporation", "Company 1875: FMC Corporation", "Company 1876: FMC Corporation", "Company 1877: FMC Corporation", "Company 1878: TIAA", "Company 1879: TIAA", "Company 1880: TIAA", "Company 1881: Invesco US", "Company 1882: IQVIA", "Company 1883: IQVIA", "Company 1884: IQVIA", "Company 1885: IQVIA", "Company 1886: IQVIA", "Company 1887: The EstΓ©e Lauder Companies Inc", "Company 1888: The EstΓ©e Lauder Companies Inc", "Company 1889: The EstΓ©e Lauder Companies Inc", "Company 1890: The EstΓ©e Lauder Companies Inc", "Company 1891: The EstΓ©e Lauder Companies Inc", "Company 1892: Cushman & Wakefield", "Company 1893: Cushman & Wakefield", "Company 1894: Cushman & Wakefield", "Company 1895: Cushman & Wakefield", "Company 1896: Cushman & Wakefield", "Company 1897: Cushman & Wakefield", "Company 1898: Cushman & Wakefield", "Company 1899: Cushman & Wakefield", "Company 1900: Cushman & Wakefield", "Company 1901: Faurecia", "Company 1902: Duke Energy Corporation", "Company 1903: Duke Energy Corporation", "Company 1904: Duke Energy Corporation", "Company 1905: Yale School of Medicine", "Company 1906: Sun Life", "Company 1907: DreamWorks Animation", "Company 1908: Tata Communications", "Company 1909: American Honda Motor Company, ", "Company 1910: American Honda Motor Company, ", "Company 1911: University of Wisconsin-Madiso", "Company 1912: University of Wisconsin-Madiso", "Company 1913: University of Wisconsin-Madiso", "Company 1914: University of Wisconsin-Madiso", "Company 1915: University of Wisconsin-Madiso", "Company 1916: Starcom", "Company 1917: Starcom", "Company 1918: Starcom", "Company 1919: Michelin", "Company 1920: Michelin", "Company 1921: Solvay", "Company 1922: Pottery Barn", "Company 1923: Pottery Barn", "Company 1924: Williams-Sonoma, Inc.", "Company 1925: Williams-Sonoma, Inc.", "Company 1926: Williams-Sonoma, Inc.", "Company 1927: Williams-Sonoma, Inc.", "Company 1928: Forrester", "Company 1929: SGS", "Company 1930: SGS", "Company 1931: SGS", "Company 1932: SGS", "Company 1933: Lowe's Companies, Inc.", "Company 1934: Lowe's Companies, Inc.", "Company 1935: Lowe's Companies, Inc.", "Company 1936: Lowe's Companies, Inc.", "Company 1937: Lowe's Companies, Inc.", "Company 1938: Lowe's Companies, Inc.", "Company 1939: Lowe's Companies, Inc.", "Company 1940: Lowe's Companies, Inc.", "Company 1941: Pirelli", "Company 1942: Air Products", "Company 1943: Air Products", "Company 1944: CareerBuilder", "Company 1945: PNC", "Company 1946: PNC", "Company 1947: PNC", "Company 1948: PNC", "Company 1949: Norsk Hydro", "Company 1950: Norsk Hydro", "Company 1951: Norsk Hydro", "Company 1952: Norsk Hydro", "Company 1953: Norsk Hydro", "Company 1954: Gannett | USA TODAY NETWORK", "Company 1955: Gannett | USA TODAY NETWORK", "Company 1956: Raymond James", "Company 1957: Raymond James", "Company 1958: Raymond James", "Company 1959: Raymond James", "Company 1960: Raymond James", "Company 1961: Raymond James", "Company 1962: Embraer", "Company 1963: Ohio Department of Transportat", "Company 1964: Ohio Department of Health", "Company 1965: TTEC", "Company 1966: Regions Bank", "Company 1967: Regions Bank", "Company 1968: Regions Bank", "Company 1969: Regions Bank", "Company 1970: EMD Serono, Inc.", "Company 1971: Paychex", "Company 1972: Paychex", "Company 1973: Paychex", "Company 1974: CAE", "Company 1975: CAE", "Company 1976: Humana", "Company 1977: Humana", "Company 1978: Humana", "Company 1979: Humana", "Company 1980: Humana", "Company 1981: Humana", "Company 1982: Humana", "Company 1983: Humana", "Company 1984: Rutgers University", "Company 1985: Vestas", "Company 1986: Vestas", "Company 1987: Vestas", "Company 1988: Vestas", "Company 1989: UF Health Jacksonville", "Company 1990: Arizona State University", "Company 1991: Arizona State University", "Company 1992: Arizona State University", "Company 1993: AMC Networks", "Company 1994: AMC Networks", "Company 1995: DISH Network", "Company 1996: DISH Network", "Company 1997: DISH Network", "Company 1998: DISH Network", "Company 1999: UVA Health" ], "type": "scatter", "x": [ 8.424368858337402, 8.40195369720459, 8.385270118713379, 8.42382526397705, -38.597190856933594, -38.74054718017578, -39.00513458251953, -38.19382858276367, -38.68928527832031, -39.055809020996094, -38.23733139038086, -38.41060256958008, -38.13452911376953, -38.96975326538086, 6.241576671600342, 6.2457356452941895, 6.244972229003906, 6.242238521575928, 10.229446411132812, 10.233492851257324, 10.243219375610352, 10.251922607421875, 10.23974323272705, 31.32158660888672, 31.50520133972168, 31.074567794799805, 31.456283569335938, 30.952003479003906, 31.256980895996094, 31.037574768066406, -1.6884390115737915, -2.029571771621704, -1.8245515823364258, -1.5695979595184326, -2.1955161094665527, -2.2359817028045654, -1.5817874670028687, -1.9934055805206299, 9.939101219177246, 10.179327011108398, 10.028629302978516, 9.859413146972656, 9.736146926879883, 9.666458129882812, 10.146087646484375, -29.77255630493164, -29.772802352905273, -29.772052764892578, 11.10151481628418, 1.3300023078918457, 1.4360734224319458, 1.0943334102630615, 1.0356072187423706, 1.1802235841751099, 1.674535870552063, 1.6853547096252441, 1.534334659576416, 0.6285699605941772, 0.6299970149993896, -1.206727385520935, -1.2102998495101929, -1.2111252546310425, 9.724861145019531, 9.326569557189941, 9.39232349395752, 9.622916221618652, 9.931135177612305, 10.042128562927246, 9.491296768188477, 9.992659568786621, 17.54332733154297, -0.3671700656414032, -0.1433565318584442, -0.4733661115169525, 0.06999942660331726, 0.059171970933675766, -0.11598870903253555, -0.3749028742313385, 0.8832989931106567, 20.084917068481445, 19.9399356842041, 20.446205139160156, 19.928754806518555, 19.841358184814453, 20.449960708618164, 20.274831771850586, 20.507068634033203, 15.08704948425293, 15.08784294128418, -0.7731616497039795, -47.88224792480469, -47.88972091674805, -47.74959945678711, -47.638980865478516, -47.61027526855469, -47.826072692871094, 3.918015480041504, 3.207364082336426, 3.330911636352539, 3.8493354320526123, 3.581437826156616, 3.3239355087280273, 3.5372464656829834, 3.7747905254364014, 5.4841485023498535, 5.485290050506592, 5.483107089996338, 5.468288421630859, -44.50997543334961, -44.509490966796875, 7.004449367523193, 6.9461259841918945, 7.7173566818237305, 7.457833766937256, 7.205479145050049, 7.674495697021484, 7.453052997589111, 7.798208713531494, 7.186491966247559, 16.148298263549805, 0.6788679361343384, -49.96831130981445, -49.9749870300293, -49.96926498413086, -49.98001480102539, -49.96370315551758, -53.66045379638672, -53.32814407348633, -53.1112060546875, -53.563846588134766, -53.72007369995117, -53.32570266723633, -53.33319854736328, -53.064266204833984, -1.7918540239334106, -1.5103708505630493, -1.656924843788147, -1.6139615774154663, -1.7948498725891113, -1.4628288745880127, -9.233979225158691, 0.8506536483764648, 0.9188241958618164, 0.33622848987579346, 0.21550366282463074, 0.6105638742446899, 0.5068449974060059, 0.2981937825679779, 0.8420239686965942, -34.76046371459961, -34.761802673339844, -0.3214055895805359, -0.5830390453338623, -0.5855518579483032, 27.71541404724121, 27.715551376342773, 27.715723037719727, 14.501453399658203, 14.501948356628418, 3.622316837310791, 3.619067430496216, 3.1090145111083984, -17.84478187561035, -17.845779418945312, -20.269529342651367, -2.39193058013916, -2.976329803466797, -2.819875717163086, -2.6543285846710205, -2.212239980697632, -2.162963628768921, -2.6436922550201416, -2.315013885498047, -2.870589017868042, 11.093473434448242, 11.16355037689209, 11.144811630249023, 11.154312133789062, 11.164909362792969, 20.428001403808594, 20.588680267333984, 20.027498245239258, 20.71439552307129, 20.362051010131836, 20.088254928588867, 20.595109939575195, 20.118406295776367, 6.959162712097168, 6.957623481750488, 6.957989692687988, 6.953879356384277, 21.536287307739258, 21.5371150970459, 21.539447784423828, 2.2849104404449463, 2.247946262359619, 2.2560007572174072, 2.2936506271362305, 2.273634433746338, 24.611116409301758, 24.024993896484375, 23.83722496032715, 23.802955627441406, 24.56348991394043, 24.356430053710938, 24.07606315612793, 23.74015235900879, 24.34441566467285, 24.691028594970703, -35.44540786743164, -35.44083786010742, -35.440086364746094, -35.442039489746094, -35.441978454589844, -11.628639221191406, -11.632146835327148, -11.631753921508789, -6.116138935089111, -5.735315322875977, -6.1684651374816895, -6.031317234039307, -5.350306510925293, -5.881524562835693, -5.453628063201904, -5.593273162841797, -5.3303542137146, 27.172494888305664, 27.05206871032715, 26.476150512695312, 26.975811004638672, 26.16529655456543, 26.405893325805664, 26.11762809753418, 26.70223617553711, 26.230031967163086, 27.16168975830078, 26.780899047851562, 41.57117462158203, 9.093786239624023, 7.729669094085693, -9.199989318847656, -9.200115203857422, -9.199707984924316, 3.275583505630493, 0.6109403967857361, 0.8323028087615967, 1.0309841632843018, 0.5399081707000732, 0.9001272916793823, 0.40024876594543457, 0.3644936978816986, 1.0575400590896606, -10.868709564208984, -11.195327758789062, -11.202178955078125, -10.839980125427246, -10.687455177307129, -10.656292915344238, -11.074051856994629, -19.25959587097168, -19.64748191833496, -19.830839157104492, -19.55939292907715, -19.510013580322266, -19.771268844604492, -19.477453231811523, 21.014442443847656, 21.01875877380371, 21.014751434326172, 21.02218246459961, 21.018726348876953, -34.7541389465332, -34.75838088989258, -44.35215759277344, -44.35417938232422, -44.35533142089844, -44.3489990234375, 23.116308212280273, 23.116008758544922, 23.13246726989746, 23.128582000732422, 23.128738403320312, -3.268699884414673, -3.276209831237793, -2.9686436653137207, -3.0327906608581543, -3.078014373779297, -2.992126226425171, -54.45542907714844, -54.45764923095703, -54.45448303222656, -5.214994430541992, -5.324438571929932, -5.1812825202941895, -5.841780185699463, -5.588702201843262, -5.81018590927124, -5.992255210876465, -5.4504523277282715, -5.917391300201416, 19.516084671020508, 19.53639030456543, 19.516597747802734, 19.517608642578125, 19.536191940307617, 4.3879923820495605, 4.643431663513184, 4.874138832092285, 4.80661678314209, 4.386302471160889, 4.539963245391846, 5.081382751464844, 5.046562671661377, 4.029664516448975, 4.032876014709473, -33.696231842041016, -34.20162582397461, -33.813697814941406, -33.68760299682617, -34.37712097167969, -33.885520935058594, -34.1035041809082, -34.528079986572266, -34.40664291381836, -3.97928786277771, -4.002251625061035, -3.9830708503723145, -3.9774272441864014, -3.9920456409454346, 0.6240297555923462, 0.6299149394035339, 0.6245612502098083, 14.754414558410645, 14.753911018371582, -10.065768241882324, -10.527876853942871, -10.335932731628418, -9.57887077331543, -9.763535499572754, -9.999625205993652, -9.6849946975708, -9.566462516784668, -10.2764892578125, -10.45286750793457, -5.479043960571289, -5.477899551391602, -5.478900909423828, -5.48048210144043, 12.779082298278809, -17.70671844482422, -17.744197845458984, -17.702316284179688, -17.742536544799805, -17.707124710083008, -20.93585777282715, -20.93665313720703, -20.633319854736328, -20.759273529052734, -20.69408416748047, -20.39215660095215, 15.015809059143066, 15.015778541564941, 15.02795124053955, 15.029789924621582, 15.031014442443848, 3.425910472869873, 3.4152750968933105, 3.408923387527466, 3.4254536628723145, 3.414301633834839, 3.9991567134857178, 3.99899959564209, 3.9927053451538086, 25.70205307006836, 25.701370239257812, 25.7038631439209, 25.716358184814453, -22.74942970275879, -22.6746768951416, -23.296579360961914, -23.007549285888672, -23.232913970947266, -23.03936004638672, -22.744829177856445, -23.363330841064453, -46.83793258666992, -46.51192855834961, -46.38588333129883, -46.4818000793457, -46.73876190185547, -46.61268997192383, -46.87735366821289, 12.541228294372559, 12.545148849487305, 12.542488098144531, 5.525738716125488, -0.666083037853241, -0.6896097660064697, -0.6464848518371582, -0.6849004030227661, -6.837101936340332, -6.837188720703125, -12.867753982543945, -12.870448112487793, -12.87316608428955, -12.863214492797852, -12.860433578491211, 4.128572463989258, -40.68437194824219, -41.17593002319336, -41.00885772705078, -40.91557693481445, -41.13207244873047, -40.776947021484375, -40.61848449707031, -33.27201843261719, -33.27245330810547, -33.27284622192383, -57.87062072753906, -9.34343147277832, -9.344001770019531, -9.340361595153809, -9.339327812194824, -47.296974182128906, -47.30055618286133, -37.84874725341797, -37.848854064941406, 3.0902435779571533, 1.7777507305145264, 1.6145280599594116, 1.7982213497161865, 1.51969313621521, 1.507896065711975, 1.6925978660583496, -52.13357162475586, -52.12623596191406, -52.13442611694336, -52.119266510009766, -52.1289176940918, 0.03377633914351463, 0.44756683707237244, 0.9032312631607056, 0.15730483829975128, 0.7627853155136108, 0.4680038094520569, 0.7006529569625854, 0.9010390043258667, -0.04280976951122284, 0.2129075825214386, 9.040034294128418, -58.03909683227539, -58.02412796020508, -58.02774429321289, -58.032772064208984, -52.453792572021484, -52.45466613769531, -52.455265045166016, -52.45302200317383, -64.5255355834961, -65.22887420654297, -64.8541259765625, -64.60836029052734, -65.15137481689453, -65.38077545166016, -64.71974182128906, -65.00115966796875, -65.38782501220703, 4.057638168334961, 4.056006908416748, 4.052893161773682, -55.83613967895508, -25.252897262573242, -25.25307846069336, -65.19004821777344, -65.1804428100586, -65.1854019165039, -65.1884536743164, -56.89091873168945, -56.89566421508789, -49.766849517822266, -49.776668548583984, -49.76902770996094, -49.79204559326172, -49.73958206176758, -60.75355911254883, -60.77012634277344, -60.67805099487305, -60.68153381347656, -60.67255783081055, -70.58096313476562, -70.56818389892578, -70.49311828613281, -70.45633697509766, -70.55171966552734, -71.75516510009766, -48.498043060302734, -67.8709945678711, -68.06137084960938, -67.869140625, -67.62189483642578, -67.38013458251953, -68.04399871826172, -67.56253814697266, -67.39675903320312, -63.39543533325195, -63.396156311035156, -47.06116485595703, -50.60409164428711, -50.60587692260742, -50.601593017578125, 6.235417366027832, -15.089536666870117, -14.96912956237793, -15.012476921081543, -15.332449913024902, -15.543253898620605, -15.413955688476562, -15.729859352111816, -15.62963581085205, -14.592277526855469, -14.593019485473633, -26.06534194946289, -38.52705764770508, -38.51149368286133, 21.112993240356445, 21.182252883911133, 20.90458869934082, 21.464303970336914, 21.588134765625, 20.741323471069336, 20.869428634643555, 21.384780883789062, 21.652090072631836, 32.56788635253906, 32.32442092895508, 32.82233810424805, 32.58119201660156, 33.00376892089844, 33.009517669677734, 32.874454498291016, 31.839994430541992, 31.822965621948242, 32.25719451904297, 31.995155334472656, 32.0140380859375, -21.0692081451416, 12.000478744506836, 11.998671531677246, -28.225128173828125, -28.22435188293457, -28.223079681396484, -28.21302032470703, -28.22294807434082, 26.650436401367188, 26.71042251586914, 26.541561126708984, 26.360599517822266, 26.018096923828125, 25.916732788085938, 26.0217227935791, 26.201248168945312, 26.79701042175293, 22.952205657958984, 9.003768920898438, 8.91420841217041, 8.65842342376709, 8.48921012878418, 8.727873802185059, 8.454588890075684, 8.81289005279541, 24.353986740112305, 24.353757858276367, 24.353864669799805, 24.144853591918945, 5.315511703491211, 5.3551812171936035, 5.345043182373047, 5.407382965087891, 5.339136123657227, -46.514156341552734, -47.360450744628906, -47.14832305908203, -46.87432861328125, -47.2081184387207, -46.96484375, -46.68968963623047, -47.336238861083984, -46.59156799316406, 10.548131942749023, 10.559576034545898, 10.368062973022461, 10.648305892944336, 10.286441802978516, 10.402506828308105, -16.5687198638916, -63.4290771484375, -63.42229080200195, -58.20360565185547, -58.17733383178711, -58.1947021484375, -58.16459655761719, -58.17775344848633, -3.7078065872192383, -4.323894500732422, -4.020966529846191, -3.4456288814544678, -4.229516506195068, -3.656536102294922, -3.9565958976745605, -3.4085915088653564, -4.262689590454102, -3.4956657886505127, 9.03604507446289, 9.044646263122559, 9.046369552612305, 9.060202598571777, 9.042214393615723, -22.461328506469727, -22.450204849243164, -22.4620361328125, -22.47696304321289, 21.704755783081055, 22.654081344604492, 22.87489128112793, 22.837860107421875, 22.682125091552734, 23.008441925048828, 22.685321807861328, 22.971527099609375, 22.319419860839844, -11.821859359741211, -11.4562406539917, -11.430265426635742, -11.802940368652344, -11.55270004272461, -11.346612930297852, -11.634156227111816, -55.61581802368164, -56.44009780883789, -56.55924987792969, -56.459171295166016, -55.809165954589844, -55.99927520751953, -55.95399475097656, -56.11747741699219, -55.57479476928711, -56.44060516357422, -3.503048896789551, -3.6055238246917725, -3.818509578704834, -3.767317295074463, -3.6996099948883057, -3.514622449874878, 3.8653600215911865, -27.51788902282715, -27.517377853393555, -10.292840957641602, -10.293699264526367, -4.3271379470825195, -4.328660488128662, -6.150954723358154, -6.146858215332031, -6.1473164558410645, -6.151699542999268, -7.847476959228516, -7.846634864807129, -7.847339153289795, -7.846627235412598, 22.062091827392578, -42.20407485961914, -42.21059036254883, -42.205562591552734, -42.2010383605957, -42.17451095581055, -54.45176315307617, -54.45507049560547, -54.44932174682617, -54.437103271484375, -54.458099365234375, 0.11311550438404083, 0.11269814521074295, -0.3183369040489197, -0.31079035997390747, -0.08086839318275452, -0.07864727824926376, -0.40902724862098694, -8.530174255371094, -8.875421524047852, -8.878767013549805, -8.87488079071045, -41.6385383605957, -41.63814926147461, 10.075909614562988, 13.474474906921387, 3.3136630058288574, 3.3146092891693115, -5.984489440917969, -5.942331314086914, -5.65389347076416, -5.974327087402344, -5.733998775482178, -5.71707820892334, -10.246761322021484, -10.247757911682129, 11.465141296386719, 16.85576820373535, 16.85823631286621, 16.855016708374023, 16.859519958496094, 11.282685279846191, 11.284430503845215, 11.282645225524902, 10.005130767822266, -10.744911193847656, -10.747952461242676, 2.1230387687683105, 2.279825210571289, 2.297940731048584, 2.254340410232544, 1.9931429624557495, 2.446924924850464, 1.924859642982483, -23.303342819213867, 0.5535921454429626, 0.556233286857605, 0.5561249256134033, -39.5833625793457, -39.5936164855957, -39.60243225097656, -39.60811233520508, -39.64350128173828, 21.599185943603516, 21.599828720092773, 21.600046157836914, 9.1586275100708, 5.82058572769165, 5.842195987701416, 5.822265148162842, 5.836764335632324, 5.831743240356445, 24.477479934692383, 24.477523803710938, 3.4941024780273438, 3.5356369018554688, 3.805636405944824, 3.662766933441162, 3.6072356700897217, 3.785088300704956, -52.43108367919922, -52.432403564453125, -52.434940338134766, -29.51155662536621, -29.511749267578125, -29.512527465820312, -29.513591766357422, -29.512319564819336, -26.14444351196289, -26.14342498779297, -26.1442928314209, -26.144636154174805, -25.476295471191406, -26.19039535522461, -20.268325805664062, -20.267528533935547, -26.666950225830078, 13.385660171508789, 13.392659187316895, 13.391640663146973, 13.394041061401367, -19.978500366210938, -19.98379135131836, -19.978111267089844, 8.24605655670166, 8.247496604919434, 8.25313949584961, 5.33571195602417, 1.570122241973877, 1.56509268283844, -50.80742263793945, -50.81294631958008, -50.81252670288086, -50.81089401245117, 3.611614227294922, 3.6118197441101074, 23.973388671875, 24.076915740966797, 24.42821502685547, 24.45101547241211, 24.34916114807129, 24.315494537353516, 24.02821922302246, 24.565372467041016, -26.899677276611328, -26.903812408447266, -26.903318405151367, 14.372613906860352, 14.367293357849121, 14.367090225219727, 14.371456146240234, -61.98445510864258, -62.25145721435547, -62.47407913208008, -62.25614929199219, -61.860660552978516, -62.614986419677734, -62.49680709838867, -62.014583587646484, -18.111356735229492, 22.44692039489746, 22.447153091430664, 22.442472457885742, 22.44460678100586, -20.74327278137207, -20.745454788208008, 12.831258773803711, 12.830989837646484, 12.831042289733887, -5.251822471618652, 16.589445114135742, -7.01567268371582, -6.808887958526611, -6.946660995483398, -6.7887067794799805, -7.075699329376221, -6.86447286605835, -17.10204315185547, -17.101015090942383, -17.10253143310547, -17.102405548095703, -17.099790573120117, -7.8117289543151855, -7.814805030822754, -7.818292617797852, -7.8097147941589355, 10.708316802978516, -57.271305084228516, -57.26393508911133, -57.27133560180664, -57.271034240722656, -57.27096176147461, -43.27741622924805, -43.27329635620117, -44.94085693359375, -44.941097259521484, -44.939422607421875, -44.94015121459961, 0.41917937994003296, 0.42184415459632874, 0.42084866762161255, -22.90757179260254, -22.90688133239746, -22.902053833007812, -43.78087615966797, -43.784114837646484, -43.79555130004883, -43.8066520690918, -43.784976959228516, -48.05199432373047, -48.004432678222656, -47.818328857421875, -47.98826217651367, -48.12126541137695, -47.817039489746094, 0.24960333108901978, 0.24967969954013824, 0.2483009696006775, -36.90621566772461, -36.90498733520508, -36.90475845336914, -36.89705276489258, -9.339715957641602, -9.337632179260254, -9.334293365478516, -9.333635330200195, -50.4771614074707, -50.47110366821289, -50.47177505493164, -50.45993423461914, -50.468021392822266, -16.25105857849121, -16.249670028686523, -16.253883361816406, -16.240957260131836, 23.78154754638672, 22.668743133544922, -47.52705001831055, -46.826332092285156, -47.363277435302734, -46.66850662231445, -47.09300994873047, -47.45309829711914, -46.578468322753906, -46.5025520324707, -46.94593048095703, -47.17988586425781, 16.074325561523438, 15.986766815185547, 16.02914810180664, 15.979602813720703, -9.244939804077148, -9.459209442138672, -9.525348663330078, -9.197150230407715, -9.53021240234375, -8.741883277893066, -8.908061981201172, -8.695394515991211, -8.926861763000488, -31.140836715698242, -31.142518997192383, -31.14365577697754, -31.142181396484375, -31.145404815673828, 11.921862602233887, 12.160572052001953, 12.029277801513672, 12.316140174865723, 12.281342506408691, 12.100750923156738, -7.097792148590088, -7.1051812171936035, -7.119196891784668, -7.1125311851501465, -7.107389450073242, -17.501123428344727, -10.500753402709961, -10.497730255126953, -10.49947738647461, -51.95438003540039, -52.382293701171875, -51.78439712524414, -51.761043548583984, -52.12165832519531, -52.0570068359375, -52.146820068359375, -13.595605850219727, -14.100326538085938, -14.241900444030762, -13.86053466796875, -13.590537071228027, -13.747114181518555, -13.999796867370605, -14.268654823303223, -17.36631965637207, -17.19453239440918, -17.48020362854004, -17.363676071166992, -17.15692901611328, -17.120025634765625, 15.651924133300781, 15.652823448181152, 1.3848296403884888, 1.3827440738677979, -15.755619049072266, -15.746484756469727, -15.74909496307373, -15.750643730163574, -15.750755310058594, -18.4794979095459, 11.25140380859375, -15.106375694274902, -6.372767925262451, -6.519701957702637, -6.875925540924072, -6.731739044189453, -6.736457347869873, -6.904006004333496, -6.435727119445801, -27.11993980407715, -26.51466941833496, -26.44937515258789, -26.837587356567383, -26.962995529174805, -27.03318214416504, -26.39188575744629, -26.698883056640625, 4.984915256500244, 11.247806549072266, 11.13890266418457, 11.491522789001465, 11.357682228088379, 11.654806137084961, 11.601849555969238, 11.094734191894531, -11.371184349060059, -11.371822357177734, -11.360681533813477, -11.361397743225098, -11.354806900024414, 3.5660488605499268, -10.614304542541504, -10.614241600036621, -10.62957763671875, -56.6731071472168, -54.925315856933594, -54.9257698059082, -60.83208465576172, -60.83211898803711, 28.312219619750977, 28.312278747558594, 28.311586380004883, 28.312294006347656, -55.093116760253906, 18.950105667114258, 18.942703247070312, 18.94816780090332, 18.95065689086914, 18.94476890563965, -31.00737953186035, -31.005002975463867, -19.790851593017578, -19.789791107177734, -19.789403915405273, -19.797624588012695, -60.712493896484375, -60.71503829956055, -60.713287353515625, -57.738651275634766, -57.724151611328125, -57.72794723510742, -57.73098373413086, 8.475144386291504, 8.315611839294434, 8.373150825500488, 8.164812088012695, 8.155284881591797, 8.444578170776367, 14.958893775939941, 14.968539237976074, 14.96784496307373, 14.964698791503906, 18.776565551757812, 18.775903701782227, 15.890573501586914, 15.890604019165039, -37.54127883911133, -37.546539306640625, -29.707714080810547, -29.77176284790039, -29.841392517089844, -29.863513946533203, -29.845125198364258, 12.486668586730957, 12.488693237304688, 12.489386558532715, 12.490241050720215, 6.677422046661377, -60.37477111816406, -26.067602157592773, -25.742372512817383, -25.74478530883789, -34.2813835144043, -34.280460357666016, -5.410487174987793, -5.484710216522217, -6.743513584136963, -6.746727466583252, -16.344520568847656, -15.843527793884277, -16.029876708984375, -16.311504364013672, -16.25292205810547, -15.997291564941406, -15.816859245300293, -68.20844268798828, -68.20467376708984, -68.20362854003906, -68.20428466796875, -68.20951843261719, -63.59611129760742, -33.69157409667969, -33.57405471801758, -33.616943359375, -33.975257873535156, -34.09513473510742, -34.031028747558594, -33.83718490600586, -10.965885162353516, -10.981391906738281, -10.699649810791016, -10.824625968933105, -10.782798767089844, -10.638372421264648, 9.29180908203125, -38.729251861572266, -38.570945739746094, -38.71137619018555, -38.21712875366211, -38.035316467285156, -38.431522369384766, -38.0672721862793, -38.39033126831055, -64.2486343383789, -64.2483901977539, -64.24852752685547, -64.24834442138672, -63.52492141723633, -63.382774353027344, -63.62936019897461, -63.69843673706055, -63.355098724365234, -63.65897750854492, -45.643898010253906, -45.64356231689453, -45.6444091796875, -6.111186504364014, -6.110682487487793, -23.565807342529297, -23.565982818603516, -48.05550765991211, -48.058753967285156, -12.51508903503418, -12.514734268188477, -33.91090393066406, -33.577415466308594, -34.107025146484375, -34.18293762207031, -33.85030746459961, -34.22393798828125, -33.686614990234375, -33.519405364990234, -37.65353775024414, -37.6534309387207, 3.740062713623047, 3.7442400455474854, 3.744046211242676, 4.14409875869751, -8.994057655334473, 18.659725189208984, -22.356401443481445, -22.357711791992188, -22.354808807373047, -10.963913917541504, 8.224335670471191, 8.223245620727539, 8.21993637084961, 10.15271282196045, 10.151826858520508, 10.15285587310791, -28.508148193359375, -28.72815704345703, -28.928924560546875, -28.620750427246094, -28.41084098815918, -28.178300857543945, -28.23463249206543, -28.87276268005371, -41.52851104736328, -41.52909469604492, -2.694683074951172, -2.697195053100586, -15.884135246276855, -15.802911758422852, -15.909880638122559, -15.8931884765625, -15.85837173461914, 12.1902437210083, 12.315624237060547, 12.097739219665527, 12.210334777832031, 11.979430198669434, 12.087703704833984, -31.50810432434082, -31.50511932373047, -31.5111141204834, -31.511566162109375, -31.50833511352539, 9.788679122924805, 10.110432624816895, 9.954949378967285, 14.9107084274292, 13.252981185913086, 13.252169609069824, 13.254631042480469, -35.92222213745117, -35.9213981628418, 10.167903900146484, -42.39931106567383, -42.399864196777344, -42.400142669677734, -60.82884216308594, -59.594913482666016, -59.59376525878906, -59.31385803222656, 6.677526950836182, 6.677916526794434, 13.84874153137207, 13.850943565368652, 13.84062385559082, 13.84172534942627, 13.84252643585205, -4.282179355621338, -4.282599449157715, 0.3869257867336273, 12.832763671875, -7.454047679901123, -7.449394226074219, -7.457730293273926, -7.4590253829956055, -15.222578048706055, -15.212117195129395, -15.160901069641113, -15.182815551757812, -15.175369262695312, -61.024513244628906, -63.69906234741211, -63.71110153198242, -63.70718002319336, -63.71381378173828, -63.949058532714844, -60.58774948120117, -60.6015625, -60.32884216308594, -60.61634063720703, -60.332279205322266, -60.329647064208984, -42.887001037597656, -42.936134338378906, -42.907081604003906, -42.89353942871094, -42.91228485107422, -39.551353454589844, -39.551639556884766, -39.55238342285156, -39.5519905090332, -43.45033645629883, -43.45110321044922, -43.44938659667969, -43.45255661010742, -36.511451721191406, -36.51188278198242, 0.2971312999725342, 0.29829561710357666, 19.549253463745117, 19.08359146118164, 19.741037368774414, 19.35431671142578, 19.013877868652344, 19.427513122558594, 19.675180435180664, 19.10927391052246, -50.96442413330078, -50.067161560058594, -50.167598724365234, -35.48662185668945, -10.021904945373535, 10.931439399719238, -31.322214126586914, -31.318532943725586, -12.73622989654541, -31.678556442260742, 11.203988075256348, 11.203958511352539, 11.227036476135254, 11.235265731811523, -6.904852867126465, -6.905430793762207, -6.905808448791504, -7.9446539878845215, -7.944716453552246, -7.945710182189941, -7.944148540496826, -8.191888809204102, -8.192843437194824, 2.678701877593994, 7.625016212463379, 7.628201484680176, 7.636503219604492, 7.630942344665527, 23.330265045166016, 23.332908630371094, 23.33187484741211, 23.332874298095703, -21.119800567626953, -21.138242721557617, -21.146650314331055, -21.133689880371094, -21.143014907836914, -39.742923736572266, -60.10016632080078, -60.06216049194336, -60.07659149169922, -60.078941345214844, -60.079627990722656, -63.87070083618164, -63.82933044433594, -64.08505249023438, -64.13878631591797, -63.88064193725586, -64.05622100830078, 7.359988212585449, 7.358536720275879, 7.359809875488281, 1.0549017190933228, 1.058767557144165, -16.96685791015625, -58.71111297607422, -58.70831298828125, -25.61821174621582, -25.855731964111328, -25.862937927246094, -25.42840576171875, -25.63933753967285, -25.422956466674805, -25.96933364868164, 21.871400833129883, 21.882171630859375, 21.8466854095459, 21.876964569091797, 21.86018943786621, 2.08731746673584, 2.084014654159546, 10.558155059814453, -53.51179885864258, -54.048458099365234, -54.05021286010742, -53.85361099243164, -53.892642974853516, -53.58709716796875, -53.63858413696289, -64.06803131103516, -63.908626556396484, -63.68824768066406, -63.51429748535156, -63.99873733520508, -63.77212905883789, -63.56523132324219, -14.23972225189209, -14.240264892578125, -14.242884635925293, 10.333036422729492, 10.333346366882324, -38.038490295410156, -38.03743362426758, -11.941420555114746, -56.69660949707031, -56.43345642089844, -56.61713790893555, -57.05439376831055, -56.94187545776367, -56.89845657348633, -56.38780975341797, -56.300106048583984, 13.6294584274292, -2.2375152111053467, -22.587581634521484, -22.58746337890625, 14.323687553405762, 14.331825256347656, 14.354517936706543, 14.348875045776367, 14.395720481872559, -39.51643371582031, -29.00905990600586, -28.725196838378906, -28.77578353881836, -28.775949478149414, -28.996015548706055, -28.814306259155273, -42.3772087097168, -42.37689208984375, -42.37672805786133, -42.37638473510742, 10.325542449951172, 10.32380485534668, -6.758334159851074, -6.761075496673584, -6.760504245758057, -6.76297664642334, -40.606712341308594, -40.60508346557617, -40.61124801635742, -4.945362091064453, -61.06270980834961, -52.90327072143555, -52.90538787841797, -52.906925201416016, -57.89860153198242, -57.90040588378906, -57.916629791259766, -57.90595626831055, -69.11897277832031, -69.12520599365234, -69.12963104248047, -69.14383697509766, -58.713809967041016, -58.7151985168457, -58.71522903442383, -56.7585334777832, -56.15938949584961, -21.997802734375, -21.83837127685547, -22.03680419921875, -21.775232315063477, -21.825849533081055, -22.09166145324707, 10.477498054504395, 10.400519371032715, 10.262097358703613, 10.503884315490723, 10.273590087890625, 10.445274353027344, -66.8909683227539, -66.8964614868164, -66.89068603515625, 9.131399154663086, 9.227867126464844, 9.608245849609375, 9.560931205749512, 9.306675910949707, 9.066203117370605, 9.438796997070312, -48.08914566040039, -62.206844329833984, -62.200286865234375, -62.200225830078125, -14.774711608886719, -14.770051956176758, -14.786432266235352, -14.782983779907227, -14.774290084838867, -31.653705596923828, -36.980125427246094, -44.349693298339844, -44.34103012084961, -44.35206604003906, -44.33806610107422, -17.752960205078125, -17.75241470336914, -17.757099151611328, -17.747058868408203, -28.952077865600586, -28.945486068725586, -28.956897735595703, -28.956375122070312, -15.358386039733887, -15.353671073913574, -15.361281394958496, -15.351487159729004, -15.343894004821777, 4.714502811431885, 4.9887003898620605, 4.804062843322754, 5.15646505355835, 4.923381328582764, 4.962911605834961, -3.091036558151245, -3.090825319290161, -18.099483489990234, -18.112123489379883, -18.09318733215332, -18.111907958984375, -14.688825607299805, -14.538540840148926, -14.299317359924316, -14.337711334228516, -14.815533638000488, -14.975482940673828, -14.466683387756348, -14.952736854553223, -13.293607711791992, -13.042061805725098, -12.775985717773438, -13.634769439697266, -13.521761894226074, -13.263656616210938, -12.952322006225586, -13.563087463378906, -12.813916206359863, -46.36420440673828, -46.368350982666016, -46.36145782470703, -46.36210250854492, -46.36933517456055, -56.07087707519531, -12.314374923706055, -12.314844131469727, 12.398545265197754, -25.324207305908203, -25.32459831237793, -25.32564926147461, 23.649797439575195, 23.64925765991211, 23.64340591430664, 7.435271263122559, 7.4091668128967285, 7.414517402648926, 7.409411430358887, -10.784873962402344, -10.7341947555542, -38.71002197265625, -38.71083068847656, -38.70957565307617, -38.71027374267578, 16.548364639282227, 16.553056716918945, 16.556907653808594, -40.726871490478516, -40.41619873046875, -40.20418167114258, -40.87351608276367, -40.61463928222656, -40.970252990722656, -40.734188079833984, -40.26972198486328, -60.970394134521484, -60.97218704223633, -61.686397552490234, -61.67934799194336, 17.61966896057129, -12.593852043151855, -12.59571361541748, -12.606873512268066, -12.598134994506836, 22.108257293701172, -33.103172302246094, -32.26847457885742, -33.500396728515625, -33.379940032958984, -31.56306266784668, -31.559171676635742, -31.563657760620117, -31.55913543701172, -7.861734390258789, -7.914711952209473, -7.903069496154785, -7.8621392250061035, -7.859370708465576, -37.925540924072266, -37.9260139465332, -37.925296783447266, -37.92491149902344, -2.920363187789917, -2.92573618888855, -2.923532009124756, 6.63681697845459, 6.6368088722229, -73.71869659423828, -74.39083862304688, -73.89617919921875, -73.83633422851562, -74.16877746582031, -74.4381103515625, -73.79354095458984, -74.25989532470703, -74.5290298461914, -29.44828987121582, -29.44973373413086, -29.452014923095703, -23.69202995300293, -23.694538116455078, -23.69133758544922, -23.69902229309082, -23.665298461914062, 26.732439041137695, 26.255809783935547, 26.72085189819336, 27.006927490234375, 26.98185157775879, 27.17838478088379, 27.184123992919922, 26.255008697509766, 26.433942794799805, 26.398193359375, -1.4631564617156982, -2.0807673931121826, -2.109511375427246, -2.034956693649292, -1.643190860748291, -1.098846673965454, -1.2552950382232666, -1.0877041816711426, -1.1651872396469116, -1.711522102355957, -1.8688719272613525, -34.13358688354492, -34.131935119628906, -32.48831558227539, -32.4871711730957, -32.483943939208984, 11.574583053588867, -44.878883361816406, -44.680580139160156, -44.54521560668945, -44.510921478271484, -44.757198333740234, -44.76645278930664, -70.60704040527344, -70.4699478149414, -58.79962158203125, -68.65261840820312, -68.69153594970703, -68.68538665771484, -68.63492584228516, -68.66101837158203, -18.63035774230957, -18.630281448364258, -18.632183074951172, 9.23144245147705, 9.234416961669922, 6.9486565589904785, 6.951380252838135, 6.948786735534668, 12.324705123901367, 12.32500171661377, -26.295886993408203, -26.293813705444336, -67.51423645019531, -67.50902557373047, -67.51679992675781, -13.990531921386719, -13.990288734436035, -13.99067211151123, -74.88426971435547, -75.06077575683594, -74.64924621582031, -74.60863494873047, -74.75909423828125, -75.1240463256836, -75.17537689208984, 1.8373706340789795, -2.3988356590270996, -2.3978402614593506, -2.3997175693511963, -2.403235912322998, 15.508713722229004, 15.503201484680176, 15.518051147460938, 19.19660758972168, 19.207592010498047, 19.191099166870117, 19.194103240966797, -2.014946937561035, -51.42313766479492, -51.48221206665039, -51.50404739379883, -51.718772888183594, -51.392723083496094, -51.656829833984375, 24.34108543395996, -1.947666883468628, -1.9471527338027954, -1.9479432106018066, -1.9480937719345093, -13.688237190246582, -13.902804374694824, -13.869246482849121, -13.867380142211914, -13.714706420898438, -14.013772010803223, -69.97193908691406, -69.59896850585938, -69.76571655273438, -69.88774108886719, -70.2620620727539, -69.55244445800781, -70.21824645996094, -70.18151092529297, -69.48090362548828, -68.66361236572266, -0.6842813491821289, -0.681919276714325, -0.6847624182701111, 12.793574333190918, -64.030029296875, -64.0291519165039, -64.02894592285156, 18.78449821472168, 18.759483337402344, 18.749286651611328, 18.70789337158203, 18.734590530395508, -66.60057067871094, -66.60079956054688, -71.56140899658203, -71.56015014648438, -71.55998992919922, -16.42772102355957, -16.70086097717285, -16.430152893066406, -16.610769271850586, -16.706754684448242, -16.49740219116211, 6.9606852531433105, 7.0034894943237305, 7.035506248474121, 6.7987847328186035, 6.725658893585205, 6.733903408050537, 9.696547508239746, 9.696070671081543, 9.69472599029541, 20.120067596435547, 19.9486026763916, 19.97699737548828, 19.874601364135742, 19.847043991088867, 20.13687515258789, -29.880834579467773, -13.434200286865234, -13.21408462524414, -13.079896926879883, -13.198468208312988, -13.180018424987793, -13.31921672821045, 12.88471794128418, 12.884405136108398, 12.888836860656738, 12.885273933410645, -31.919118881225586, 1.7155766487121582, 1.7177070379257202, 1.7088819742202759, 1.7074626684188843, 1.7065359354019165, -3.832618236541748, 23.17136573791504, 23.166664123535156, 23.162588119506836, 23.153064727783203, -23.753393173217773, -23.75490379333496, -23.760515213012695, -23.75670623779297, -26.812911987304688, -26.81266212463379, -25.151025772094727, -31.25493621826172, -31.25486946105957, 4.614198684692383, 4.35776424407959, 4.537964344024658, 4.382148265838623, 4.6024169921875, 4.3679914474487305, 15.136275291442871, 15.192586898803711, 14.60908317565918, 14.515890121459961, 14.918002128601074, 14.824934959411621, 14.55881118774414, 15.123894691467285, -21.82978057861328, -21.828632354736328, -21.829904556274414, -38.527156829833984, -38.52360534667969, -38.5373420715332, -66.375, 14.80654525756836, 14.527073860168457, 14.681469917297363, 14.626154899597168, 14.903265953063965, 14.803765296936035, 10.511466026306152, -62.85231399536133, -62.854312896728516, -62.84885025024414, -62.843990325927734, -65.01849365234375, -65.04086303710938, -65.02104949951172, -65.00076293945312, -65.0142822265625, 3.5364906787872314, 3.537658214569092, 7.743208885192871, 7.730005264282227, 7.733132362365723, 7.725170135498047, 7.736743450164795, 15.357967376708984, -21.674589157104492, -21.673192977905273, -21.67369270324707, 6.22451114654541, 6.223665237426758, -26.414087295532227, -26.412384033203125, 10.984674453735352, 11.031102180480957, 10.97566032409668, 11.019796371459961, 11.01504898071289, -11.826008796691895, 15.758673667907715, 15.758585929870605, 15.758808135986328, -26.26375961303711, 13.19601058959961, 13.195222854614258, -40.1959342956543, -20.548673629760742, -20.533201217651367, -20.545686721801758, -20.540372848510742, -20.545082092285156, -16.21440315246582, -16.21455192565918, -15.51506233215332, -15.51744556427002, -15.495964050292969, -15.51413345336914, -63.41346740722656, -63.41600799560547, -74.71138763427734, -74.71638488769531, -74.7139892578125, -74.71527099609375, -74.7126235961914, -73.77288818359375, -73.77259063720703, -73.77193450927734, -31.162431716918945, -30.882938385009766, -31.050857543945312, -31.102458953857422, -30.92737579345703, -30.824872970581055, -23.274465560913086, -23.27474594116211, -23.273426055908203, -29.317319869995117, -29.318452835083008, -29.317399978637695, -32.490543365478516, -32.59402084350586, -32.42753219604492, -32.55759811401367, -32.37129592895508, -32.69107437133789, -12.106900215148926, 5.268308162689209, 5.285607814788818, 5.299559593200684, -60.29117965698242, 8.361554145812988, 8.36322021484375, 8.10783863067627, 6.807921886444092, 6.809138298034668, 6.807848930358887, -50.65309524536133, -50.655147552490234, -50.65590286254883, 4.168941497802734, -51.677894592285156, 3.550462007522583, 4.13480281829834, 3.296396493911743, 3.7737202644348145, 4.032591819763184, 4.033749580383301, 3.304417610168457, 3.472301483154297, 3.7310631275177, 0.2156933695077896, 0.21454402804374695, 0.21309591829776764, -37.844032287597656, -37.84381103515625, -37.85132598876953, -48.83259582519531, -48.829410552978516, 0.6048681735992432, 0.602332353591919, 0.6024385690689087, 0.6032942533493042, -10.460880279541016, -10.465855598449707, -10.46719741821289, -26.53402328491211, -26.533193588256836, -39.14055633544922, -39.141517639160156, -39.143577575683594, -4.630090236663818, -4.636085033416748, -4.634174346923828, 5.97052001953125, -36.777931213378906, -36.77778625488281, -36.7770881652832, -36.77738571166992, -36.778255462646484, -47.05340576171875, -47.06605529785156, -47.059024810791016, -47.04941940307617, -47.03755187988281, 14.94761848449707, 14.920146942138672, 14.507064819335938, 14.228759765625, 14.727867126464844, 14.42956829071045, 14.182744026184082, 14.775954246520996, 14.116118431091309, -26.917078018188477, -21.612327575683594, -21.61187744140625, -21.612274169921875, -63.586483001708984, -5.423588752746582, 21.541709899902344, 23.06288719177246, -26.22901153564453, -26.222148895263672, -59.94818115234375, -59.92826843261719, -59.94501495361328, -59.94598388671875, -59.972293853759766, 6.338867664337158, 6.336419105529785, 6.340895652770996, -29.89619255065918, -29.90003204345703, -28.70121955871582, -32.03236389160156, -32.03085708618164, -48.773258209228516, -48.77297592163086, -48.772762298583984, -48.773162841796875, 4.502254009246826, -3.0169200897216797, -3.016517162322998, -3.0156655311584473, -3.014995574951172, -30.852481842041016, -30.807783126831055, -31.358808517456055, -31.13585662841797, -31.322595596313477, -31.149080276489258, -30.759552001953125, -31.477121353149414, -29.491474151611328, -19.08061408996582, -19.069759368896484, -4.164778232574463, 1.7760272026062012, 1.7821723222732544, 1.7835849523544312, 1.7815669775009155, -24.41427230834961, -24.40819549560547, -24.398540496826172, -24.39463996887207, -24.390335083007812, 31.716354370117188, 31.716712951660156, -6.247402191162109, -5.967007637023926, -5.938083171844482, -6.112759113311768, -6.252727031707764, -6.086130142211914, -1.3094497919082642, -55.55604553222656, -55.96192169189453, 25.658832550048828, 15.13271713256836, 15.12988567352295, 15.128801345825195, 15.128372192382812, -47.60731887817383, -10.182089805603027, -10.1725492477417, -10.171238899230957, -8.196640014648438, -8.196233749389648, -15.613466262817383, -15.662379264831543, -15.525261878967285, -16.14585304260254, -16.16933822631836, -15.879556655883789, -16.257312774658203, -15.892128944396973, -67.68579864501953, -21.02730941772461, -21.025123596191406, -21.031599044799805, -21.03111457824707, -52.023780822753906, -60.5666618347168, -60.56923294067383, -60.568721771240234, 21.38077735900879, 21.379133224487305, 26.983030319213867, 26.983373641967773, 26.98339080810547, 26.983129501342773, -58.92685317993164 ], "y": [ 19.615699768066406, 19.578353881835938, 19.56269073486328, 19.608068466186523, 41.28982162475586, 41.35234451293945, 41.655216217041016, 41.66573715209961, 42.25960159301758, 41.800071716308594, 42.088436126708984, 42.234275817871094, 41.50304412841797, 42.188907623291016, 29.378488540649414, 29.379528045654297, 29.378686904907227, 29.380535125732422, 17.270790100097656, 17.33060646057129, 17.28412628173828, 17.26725959777832, 17.24688148498535, 23.120615005493164, 23.29633903503418, 23.15921974182129, 23.550708770751953, 23.33256721496582, 23.668794631958008, 23.599817276000977, 16.278268814086914, 16.911842346191406, 16.963712692260742, 16.47856903076172, 16.458641052246094, 16.707019805908203, 16.769603729248047, 16.26326560974121, -18.072223663330078, -17.714962005615234, -17.611141204833984, -17.51753807067871, -17.974977493286133, -17.78512954711914, -18.114604949951172, 39.314910888671875, 39.31538391113281, 39.31454849243164, 5.45222282409668, 17.783935546875, 18.538698196411133, 18.445417404174805, 18.214054107666016, 17.962711334228516, 18.11878204345703, 18.053421020507812, 18.524438858032227, 33.58551788330078, 33.587310791015625, 28.048828125, 28.00119400024414, 28.022733688354492, 36.26835250854492, 36.57929229736328, 36.8087158203125, 36.9649772644043, 36.9301872253418, 36.678043365478516, 36.300228118896484, 36.44358444213867, 32.12184143066406, -53.52337646484375, -53.4671516418457, -53.76904296875, -53.64047622680664, -53.86141586303711, -54.027496337890625, -53.958831787109375, 26.282405853271484, 14.230093955993652, 14.095026969909668, 13.578433990478516, 13.552642822265625, 13.811094284057617, 14.0676851272583, 13.559479713439941, 13.972908973693848, -17.911563873291016, -17.911212921142578, 30.242389678955078, 17.14500617980957, 17.169950485229492, 17.0700740814209, 17.319496154785156, 17.16207504272461, 17.397430419921875, 21.870765686035156, 21.913341522216797, 22.118587493896484, 22.063289642333984, 22.190187454223633, 21.575468063354492, 21.52533721923828, 21.555145263671875, 14.247730255126953, 14.246955871582031, 14.2372407913208, 14.252955436706543, -19.202116012573242, -19.202844619750977, -51.182559967041016, -51.025917053222656, -51.28550338745117, -51.47473907470703, -51.44845962524414, -50.77499008178711, -50.671966552734375, -51.05278396606445, -50.71173095703125, 15.883289337158203, 26.978958129882812, 23.916189193725586, 23.89486312866211, 23.955957412719727, 23.879182815551758, 23.879444122314453, 21.103492736816406, 21.021989822387695, 21.358562469482422, 21.620197296142578, 21.34636878967285, 20.984487533569336, 21.7039737701416, 21.543445587158203, -39.02962112426758, -39.046173095703125, -38.7376823425293, -39.11378860473633, -38.85429000854492, -38.84651565551758, 10.438827514648438, -58.41144943237305, -58.660247802734375, -58.96452713012695, -58.7503662109375, -59.05216979980469, -58.3015022277832, -58.45181655883789, -58.9362678527832, -13.338593482971191, -13.333050727844238, 9.964539527893066, 10.185064315795898, 10.184954643249512, 1.5900442600250244, 1.5900211334228516, 1.5900081396102905, 21.485576629638672, 21.487709045410156, -51.81793975830078, -51.81572341918945, -51.60102844238281, -38.643516540527344, -38.64380645751953, 19.485759735107422, -25.054697036743164, -25.613727569580078, -25.90918731689453, -25.15110969543457, -25.414566040039062, -25.731201171875, -25.952638626098633, -25.9692440032959, -25.342546463012695, 22.265003204345703, 22.304595947265625, 22.266159057617188, 22.26791000366211, 22.315412521362305, 21.797143936157227, 21.703685760498047, 21.46921730041504, 21.40131187438965, 21.06464958190918, 21.195098876953125, 21.155073165893555, 21.68206214904785, 8.656951904296875, 8.66891098022461, 8.667092323303223, 8.657218933105469, 2.797476053237915, 2.795121908187866, 2.7751567363739014, -35.326114654541016, -35.33585739135742, -35.34679412841797, -35.35205841064453, -35.324642181396484, 22.31337547302246, 21.588685989379883, 22.371187210083008, 21.798524856567383, 21.74531364440918, 22.491037368774414, 22.532258987426758, 22.097257614135742, 21.59651756286621, 22.01993179321289, 24.93752670288086, 24.907100677490234, 24.94779396057129, 24.94810676574707, 24.912691116333008, 38.61061096191406, 38.6085090637207, 38.60810089111328, 50.59627914428711, 51.2478141784668, 50.88981246948242, 51.13763427734375, 50.611083984375, 50.398887634277344, 51.14272689819336, 50.400489807128906, 50.86909484863281, 26.62944221496582, 26.34125328063965, 26.240768432617188, 27.190793991088867, 27.013992309570312, 27.211650848388672, 26.68583869934082, 27.269569396972656, 26.422161102294922, 26.938817977905273, 26.24526596069336, -22.084138870239258, 20.964096069335938, -13.321735382080078, 23.128860473632812, 23.129323959350586, 23.129138946533203, 28.859342575073242, -49.30814743041992, -49.970123291015625, -49.795372009277344, -49.95668411254883, -49.338253021240234, -49.486568450927734, -49.75401306152344, -49.573848724365234, 31.59119415283203, 31.7225341796875, 31.703258514404297, 32.05325698852539, 31.7069034576416, 31.841228485107422, 32.039852142333984, 18.4599666595459, 18.084314346313477, 18.391223907470703, 18.657838821411133, 18.088529586791992, 18.38131332397461, 18.57831573486328, 43.139923095703125, 43.138587951660156, 43.14003372192383, 43.137229919433594, 43.13914489746094, -16.596200942993164, -16.59531593322754, 22.172283172607422, 22.176353454589844, 22.179351806640625, 22.168785095214844, -7.328705310821533, -7.326674461364746, -7.347386360168457, -7.326251029968262, -7.369787216186523, 20.111957550048828, 20.24652862548828, 20.217517852783203, 20.018869400024414, 20.006141662597656, 20.252830505371094, 27.96617889404297, 27.966535568237305, 27.9635009765625, 37.933528900146484, 38.431209564208984, 38.159400939941406, 38.4959831237793, 38.541900634765625, 37.74867630004883, 38.17307662963867, 37.69267272949219, 37.86213684082031, 17.426687240600586, 17.419557571411133, 17.423786163330078, 17.44196319580078, 17.42070198059082, -47.633663177490234, -47.87929916381836, -47.8117561340332, -47.18286895751953, -47.43963623046875, -47.19351577758789, -47.56377029418945, -47.33882141113281, -54.38703918457031, -54.37321090698242, -19.587642669677734, -19.73521614074707, -19.085710525512695, -19.237403869628906, -19.12386703491211, -19.793624877929688, -18.917041778564453, -19.28270721435547, -19.675552368164062, 13.466168403625488, 13.485111236572266, 13.475837707519531, 13.496359825134277, 13.46780014038086, 12.39631175994873, 12.400782585144043, 12.39777946472168, 29.72053337097168, 29.721115112304688, -23.193052291870117, -23.515684127807617, -23.351829528808594, -23.490182876586914, -23.345279693603516, -24.227420806884766, -24.129987716674805, -23.8349609375, -24.070886611938477, -23.968381881713867, 8.533242225646973, 8.532602310180664, 8.533222198486328, 8.537431716918945, 16.43352699279785, 15.081089973449707, 14.996771812438965, 15.039948463439941, 15.039217948913574, 15.013532638549805, 10.377174377441406, 10.415907859802246, 10.244771003723145, 10.217440605163574, 10.399816513061523, 10.205963134765625, -45.74216842651367, -45.74730682373047, -45.741817474365234, -45.740562438964844, -45.740760803222656, 10.377479553222656, 10.38703727722168, 10.392452239990234, 10.370540618896484, 10.392964363098145, 1.64154052734375, 1.6382131576538086, 1.6315724849700928, -26.38961410522461, -26.39211654663086, -26.38745880126953, -26.37983512878418, 7.973665237426758, 8.174388885498047, 8.041230201721191, 7.890689373016357, 8.534941673278809, 8.620923042297363, 8.478525161743164, 8.24081802368164, 24.613622665405273, 24.952003479003906, 24.790090560913086, 24.449861526489258, 24.480419158935547, 25.047170639038086, 24.84228515625, 14.366753578186035, 14.355749130249023, 14.349175453186035, 19.448162078857422, 31.79884147644043, 31.780868530273438, 31.823060989379883, 31.799461364746094, 45.0407829284668, 45.040771484375, 42.43040084838867, 42.41851806640625, 42.42902374267578, 42.42851257324219, 42.42464828491211, -52.53044509887695, -3.155938148498535, -2.8796818256378174, -2.692490339279175, -3.250364065170288, -3.1285879611968994, -2.6988611221313477, -2.908132314682007, 33.11275863647461, 33.112552642822266, 33.11207962036133, 18.52277374267578, -6.003015995025635, -6.003298759460449, -6.001523971557617, -6.0045976638793945, 20.889053344726562, 20.88602066040039, -29.078540802001953, -29.07904052734375, 18.078266143798828, -3.4970993995666504, -3.5381932258605957, -3.327721118927002, -3.271939992904663, -3.46517014503479, -3.2104032039642334, 11.029948234558105, 11.06947135925293, 11.062063217163086, 11.059599876403809, 11.057565689086914, 3.3656105995178223, 3.9214415550231934, 3.4019882678985596, 4.011246204376221, 3.0866987705230713, 3.073415517807007, 3.9658164978027344, 3.6711747646331787, 3.669630527496338, 3.1245009899139404, 17.559486389160156, 27.181766510009766, 27.178281784057617, 27.178625106811523, 27.184091567993164, 25.574501037597656, 25.576852798461914, 25.564151763916016, 25.580490112304688, 30.692625045776367, 30.44162368774414, 31.179794311523438, 31.03142547607422, 31.177473068237305, 30.684043884277344, 30.470535278320312, 30.34078025817871, 30.98609733581543, 38.46847152709961, 38.46990966796875, 38.47005081176758, 8.65318775177002, -32.61669921875, -32.61686325073242, 10.71679973602295, 10.71477222442627, 10.712583541870117, 10.719389915466309, 20.42066764831543, 20.420419692993164, 20.376850128173828, 20.35725212097168, 20.379533767700195, 20.37837028503418, 20.389883041381836, 15.15091323852539, 15.169249534606934, 15.278226852416992, 15.268529891967773, 15.309466361999512, -3.4194695949554443, -3.413484573364258, -3.441138505935669, -3.459097385406494, -3.4275295734405518, -3.5362589359283447, 12.4593505859375, 13.846491813659668, 13.352869987487793, 13.135689735412598, 13.131237030029297, 13.422636032104492, 13.599628448486328, 13.83968734741211, 13.582568168640137, 19.779544830322266, 19.78046417236328, -20.89499855041504, 15.194920539855957, 15.192988395690918, 15.193404197692871, 24.758909225463867, -8.548921585083008, -8.17263126373291, -8.092381477355957, -8.612166404724121, -7.9459404945373535, -7.908633232116699, -8.258086204528809, -8.47465705871582, -6.015981197357178, -6.016862392425537, -7.458787441253662, -16.627302169799805, -16.638513565063477, 9.4815034866333, 8.686928749084473, 8.767452239990234, 8.733052253723145, 9.254551887512207, 9.068819999694824, 9.326662063598633, 9.521208763122559, 9.01665210723877, -33.5537223815918, -33.41852951049805, -32.519500732421875, -32.37589645385742, -33.090675354003906, -32.76300048828125, -33.34613037109375, -32.79806137084961, -33.107383728027344, -32.37151336669922, -32.52617645263672, -33.4159049987793, 17.51405143737793, -48.12157440185547, -48.121917724609375, -18.398242950439453, -18.39564323425293, -18.39533042907715, -18.401718139648438, -18.396867752075195, 39.38861846923828, 39.976600646972656, 40.174774169921875, 39.38467025756836, 40.03343963623047, 39.68410110473633, 39.431175231933594, 40.16361999511719, 39.68256759643555, -1.0205796957015991, 27.122779846191406, 26.8991641998291, 27.365554809570312, 26.963308334350586, 26.82093620300293, 27.097187042236328, 27.3533992767334, -18.807035446166992, -18.80803108215332, -18.807857513427734, -3.0396621227264404, -35.32816696166992, -35.31455993652344, -35.30586242675781, -35.31141662597656, -35.32258605957031, 29.377277374267578, 29.331165313720703, 29.79332733154297, 29.823139190673828, 29.011152267456055, 28.968809127807617, 29.059791564941406, 29.547189712524414, 29.600854873657227, -10.023449897766113, -9.717480659484863, -9.696830749511719, -9.816121101379395, -9.817838668823242, -9.982062339782715, 15.562488555908203, 11.156473159790039, 11.161606788635254, 0.8024594187736511, 0.833760678768158, 0.8056886792182922, 0.8290128707885742, 0.8213921785354614, -12.169388771057129, -12.633644104003906, -13.01504898071289, -12.31503677368164, -12.885029792785645, -13.004104614257812, -12.17520523071289, -12.59722900390625, -12.286759376525879, -12.941996574401855, -54.278358459472656, -54.273651123046875, -54.274234771728516, -54.28263854980469, -54.26875305175781, 18.047138214111328, 18.04540252685547, 18.04578971862793, 18.05464744567871, -2.4231529235839844, -2.66336727142334, -2.739593267440796, -2.7503011226654053, -2.3187143802642822, -2.389716863632202, -2.282493829727173, -2.2627387046813965, -4.026824951171875, -29.96892547607422, -29.88970375061035, -29.825037002563477, -30.073617935180664, -30.382925033569336, -30.24701690673828, -30.375465393066406, 18.231870651245117, 17.834165573120117, 17.98078155517578, 18.37459945678711, 18.547462463378906, 18.556264877319336, 17.7244815826416, 17.70110511779785, 17.938413619995117, 18.50374984741211, -43.670738220214844, -43.633705139160156, -43.811954498291016, -43.68363952636719, -43.94546127319336, -43.9042854309082, -36.151737213134766, 18.404033660888672, 18.402496337890625, 16.15940284729004, 16.160688400268555, -28.839956283569336, -28.83730697631836, 24.75139045715332, 24.754684448242188, 24.755435943603516, 24.75493812561035, 41.76799011230469, 41.76414489746094, 41.76634979248047, 41.761878967285156, 1.2915915250778198, 13.169641494750977, 13.166664123535156, 13.163803100585938, 13.17993450164795, 13.1449613571167, 14.342586517333984, 14.325929641723633, 14.335565567016602, 14.34080696105957, 14.313389778137207, 39.03230285644531, 39.286476135253906, 38.963985443115234, 39.41490173339844, 39.44419860839844, 38.90126419067383, 39.13055419921875, 38.03284454345703, 38.67974090576172, 38.68232345581055, 38.679805755615234, 25.937957763671875, 25.937850952148438, 0.10437796264886856, -12.74303913116455, 6.366682529449463, 6.366235256195068, -19.949581146240234, -20.018552780151367, -19.821163177490234, -19.782100677490234, -19.71761703491211, -20.04237174987793, 19.610979080200195, 19.610275268554688, 23.666749954223633, 21.732524871826172, 21.73271369934082, 21.73044204711914, 21.737895965576172, -44.752830505371094, -44.75190734863281, -44.7523307800293, 32.28709030151367, 35.3055305480957, 35.300228118896484, 25.343730926513672, 25.33647918701172, 25.810789108276367, 25.833444595336914, 25.719240188598633, 25.67043685913086, 25.453523635864258, 42.5044059753418, -23.019763946533203, -23.020343780517578, -23.018888473510742, -20.25642204284668, -20.251367568969727, -20.25770378112793, -20.264944076538086, -20.267351150512695, 38.859405517578125, 38.85883712768555, 38.859527587890625, -28.573060989379883, -22.03397560119629, -21.922908782958984, -21.91755485534668, -21.973066329956055, -22.081790924072266, -1.0875455141067505, -1.0859827995300293, 46.17226028442383, 46.36589431762695, 46.309810638427734, 46.41761016845703, 46.08900451660156, 46.159236907958984, 30.402408599853516, 30.39059829711914, 30.392311096191406, 48.29679870605469, 48.29973602294922, 48.29946517944336, 48.29791259765625, 48.29937744140625, 35.39366912841797, 35.39427185058594, 35.39523696899414, 35.39255905151367, 34.78495407104492, 36.040557861328125, 3.8123602867126465, 3.8132331371307373, 34.87925338745117, 34.1427001953125, 34.14676284790039, 34.14508056640625, 34.147518157958984, 7.4317193031311035, 7.426583290100098, 7.42673921585083, -14.340104103088379, -14.342109680175781, -14.352396011352539, 19.41588592529297, 14.861258506774902, 14.864226341247559, -9.927525520324707, -9.928338050842285, -9.928703308105469, -9.928986549377441, 34.50882339477539, 34.50959777832031, 16.580358505249023, 16.831918716430664, 16.470169067382812, 16.649492263793945, 16.82012367248535, 16.278118133544922, 16.420555114746094, 15.21837043762207, 14.0881986618042, 14.0865478515625, 14.085740089416504, 49.11172866821289, 49.105228424072266, 49.10498046875, 49.11041259765625, 26.470069885253906, 26.347326278686523, 26.448701858520508, 27.0653133392334, 26.72629165649414, 26.699024200439453, 26.971960067749023, 26.996707916259766, 18.629465103149414, -26.576961517333984, -26.576292037963867, -26.579288482666016, -26.579381942749023, 14.829085350036621, 14.828548431396484, 26.582456588745117, 26.57759666442871, 26.578857421875, 36.30913543701172, 15.14454174041748, -29.532310485839844, -29.54073143005371, -29.213396072387695, -29.4670352935791, -29.279312133789062, -29.23227882385254, 0.45458221435546875, 0.45696786046028137, 0.4531818926334381, 0.4525377154350281, 0.45957911014556885, 14.10048770904541, 14.107304573059082, 14.10794734954834, 14.106003761291504, -26.944866180419922, 31.539813995361328, 31.548376083374023, 31.539230346679688, 31.5385684967041, 31.53981590270996, -22.068201065063477, -22.07402229309082, 8.366649627685547, 8.366140365600586, 8.368837356567383, 8.371243476867676, 21.943334579467773, 21.947996139526367, 21.94466209411621, 0.3661123216152191, 0.36600640416145325, 0.3646478056907654, -28.10162353515625, -28.094097137451172, -28.095890045166016, -28.111860275268555, -28.093626022338867, -17.77281379699707, -17.759801864624023, -17.76862335205078, -18.07876205444336, -18.04309844970703, -17.967166900634766, -10.003591537475586, -10.005874633789062, -10.005304336547852, -23.29532814025879, -23.297040939331055, -23.2872314453125, -23.291053771972656, 29.018587112426758, 29.016138076782227, 29.012004852294922, 29.01198959350586, 28.28271484375, 28.271907806396484, 28.269296646118164, 28.249237060546875, 28.251514434814453, 12.062560081481934, 12.060970306396484, 12.066309928894043, 12.06212043762207, -5.871798515319824, -6.27864933013916, -26.42731285095215, -26.788503646850586, -26.68514060974121, -26.009729385375977, -26.826467514038086, -26.105377197265625, -26.56304168701172, -26.259279251098633, -25.881832122802734, -25.932600021362305, 17.993370056152344, 17.949054718017578, 17.95391082763672, 17.961505889892578, -11.154484748840332, -11.899337768554688, -11.328936576843262, -11.997869491577148, -11.603348731994629, -11.371152877807617, -11.886072158813477, -11.714444160461426, -11.193719863891602, -45.507015228271484, -45.503639221191406, -45.507171630859375, -45.50143814086914, -45.503536224365234, -26.032690048217773, -26.23933219909668, -25.933151245117188, -26.065635681152344, -26.1584415435791, -26.14234733581543, -15.838115692138672, -15.813797950744629, -15.840272903442383, -15.824049949645996, -15.8139066696167, 24.244531631469727, -37.25996017456055, -37.262699127197266, -37.2634162902832, 18.010297775268555, 17.771242141723633, 17.663633346557617, 17.84130859375, 18.005756378173828, 17.524038314819336, 17.5631103515625, 34.26675796508789, 34.142459869384766, 34.6212158203125, 34.07425308227539, 34.5330696105957, 34.757144927978516, 34.79409408569336, 34.34833908081055, -29.973403930664062, -29.926877975463867, -30.179208755493164, -30.24758529663086, -30.17885398864746, -30.064863204956055, 9.9336576461792, 9.932912826538086, -25.95941925048828, -25.963790893554688, 44.0172233581543, 44.01338195800781, 44.01628112792969, 44.018463134765625, 44.01741027832031, 28.914749145507812, -17.783817291259766, 27.93597412109375, -38.99421310424805, -39.2667121887207, -38.783531188964844, -39.23589324951172, -38.68506622314453, -39.083274841308594, -38.805870056152344, -46.404815673828125, -46.07366180419922, -46.560726165771484, -46.01070785522461, -46.66352081298828, -46.1384162902832, -46.270477294921875, -46.69782638549805, -17.35503578186035, 45.32395935058594, 45.74835205078125, 45.32488250732422, 45.86692428588867, 45.537139892578125, 45.75690841674805, 45.53031539916992, -40.7474479675293, -40.753787994384766, -40.76063919067383, -40.75022506713867, -40.73986053466797, 18.218826293945312, -33.80427551269531, -33.8050537109375, -33.81000518798828, 8.926806449890137, 6.608199119567871, 6.59987211227417, 1.9787828922271729, 1.973188042640686, 12.132262229919434, 12.132129669189453, 12.13248348236084, 12.132060050964355, 8.555238723754883, -21.443077087402344, -21.437341690063477, -21.440475463867188, -21.432636260986328, -21.434541702270508, -18.74827766418457, -18.75035858154297, 33.441619873046875, 33.44369888305664, 33.435523986816406, 33.43416213989258, 11.619955062866211, 11.614394187927246, 11.617948532104492, -11.833293914794922, -11.850177764892578, -11.846364974975586, -11.842402458190918, -47.25044250488281, -46.9913330078125, -47.31332778930664, -47.13975143432617, -47.11505126953125, -47.0426139831543, 12.601533889770508, 12.604795455932617, 12.604125022888184, 12.601816177368164, -1.4588029384613037, -1.4590747356414795, 0.36826056241989136, 0.36933547258377075, -13.332139015197754, -13.331543922424316, 15.294424057006836, 15.234681129455566, 15.214116096496582, 15.2152681350708, 15.220285415649414, 9.783016204833984, 9.781049728393555, 9.78219985961914, 9.785968780517578, -49.471710205078125, -7.66483211517334, -7.5213422775268555, 1.493606448173523, 1.495274543762207, -0.9184134006500244, -0.918870747089386, 30.991134643554688, 31.027393341064453, 31.561174392700195, 31.562211990356445, 5.000809192657471, 4.867987155914307, 4.718029022216797, 5.135533332824707, 4.704723358154297, 5.22243595123291, 5.124989986419678, 6.559177875518799, 6.566623687744141, 6.5628533363342285, 6.5652875900268555, 6.561412334442139, -7.802720069885254, 16.877864837646484, 16.728225708007812, 16.456193923950195, 16.8848876953125, 16.6803035736084, 16.431123733520508, 16.34537124633789, 6.880577564239502, 6.872020244598389, 7.023813724517822, 7.224524974822998, 7.1789631843566895, 7.237362384796143, 23.911922454833984, -32.31336212158203, -32.01381301879883, -32.51520538330078, -32.667266845703125, -32.38756561279297, -32.70991897583008, -32.22779083251953, -31.980731964111328, -13.819992065429688, -13.819475173950195, -13.819344520568848, -13.819905281066895, -10.692642211914062, -10.556159973144531, -10.416699409484863, -10.570545196533203, -10.522032737731934, -10.442363739013672, 1.2010078430175781, 1.201279878616333, 1.201815128326416, -4.116559028625488, -4.118771553039551, -37.08694839477539, -37.08695602416992, 2.9004127979278564, 2.9008262157440186, 21.240633010864258, 21.24146270751953, -26.270017623901367, -25.73372459411621, -25.614456176757812, -26.087352752685547, -25.54012680053711, -25.892803192138672, -26.225982666015625, -25.88770866394043, -0.662028968334198, -0.661478579044342, -31.33824920654297, -31.32688331604004, -31.32499122619629, -30.42455291748047, -33.03818130493164, 13.20207405090332, 42.989593505859375, 42.98908615112305, 42.99000930786133, 30.573070526123047, -5.856276035308838, -5.856736660003662, -5.860818862915039, 2.1293270587921143, 2.1228580474853516, 2.1296756267547607, -11.273481369018555, -11.325653076171875, -11.5348482131958, -11.989509582519531, -11.952359199523926, -11.711209297180176, -11.47655963897705, -11.815461158752441, 5.284406661987305, 5.285542011260986, 5.746614933013916, 5.745158672332764, 22.156543731689453, 22.149154663085938, 22.109149932861328, 22.13410186767578, 22.142148971557617, -55.026580810546875, -54.87137222290039, -55.02241134643555, -54.68485641479492, -54.818626403808594, -54.6778678894043, -8.037609100341797, -8.034199714660645, -8.032663345336914, -8.050683975219727, -8.041062355041504, -50.15074920654297, -49.64912033081055, -49.93394470214844, 18.301916122436523, -2.04836106300354, -2.047417163848877, -2.0480849742889404, -5.110095024108887, -5.109223365783691, 22.894638061523438, -10.715763092041016, -10.716068267822266, -10.71595287322998, -0.038951728492975235, 4.517714500427246, 4.525969982147217, 5.6985626220703125, -56.7344970703125, -56.7391357421875, -7.435959815979004, -7.45888090133667, -7.428562641143799, -7.428994178771973, -7.425929069519043, 27.358173370361328, 27.353717803955078, 34.34779739379883, 25.88641357421875, 18.72780418395996, 18.72313690185547, 18.723148345947266, 18.72093963623047, 29.99066734313965, 29.973918914794922, 29.81153678894043, 29.90375518798828, 29.871623992919922, 16.744558334350586, 15.92836856842041, 15.944089889526367, 15.932124137878418, 15.925552368164062, 13.796652793884277, -19.735301971435547, -19.90638542175293, -19.86664390563965, -19.853260040283203, -19.799057006835938, -19.708324432373047, -31.957698822021484, -31.920074462890625, -31.946401596069336, -31.932653427124023, -31.921907424926758, -37.368770599365234, -37.37185287475586, -37.37347412109375, -37.37248992919922, -36.7940788269043, -36.795413970947266, -36.7943229675293, -36.79540252685547, -34.87132263183594, -34.870914459228516, 47.71986770629883, 47.72074508666992, -16.220420837402344, -16.3009033203125, -16.47381019592285, -16.151391983032227, -16.551475524902344, -16.872323989868164, -16.72113609313965, -16.812108993530273, -2.4767119884490967, -2.0573806762695312, -2.120256185531616, 23.652551651000977, -30.815797805786133, 18.582536697387695, 11.252683639526367, 11.250065803527832, -31.08638572692871, 11.306476593017578, 32.15816116333008, 32.158058166503906, 32.160499572753906, 32.16132736206055, 1.114404320716858, 1.1159000396728516, 1.1144204139709473, 3.707765579223633, 3.706777811050415, 3.7092833518981934, 3.707871198654175, -0.6900306344032288, -0.6938208937644958, 6.97075891494751, -43.6390380859375, -43.648738861083984, -43.6431884765625, -43.642024993896484, -29.78645896911621, -29.788311004638672, -29.785850524902344, -29.78651237487793, -3.981477737426758, -3.9813292026519775, -3.9809391498565674, -3.9754626750946045, -3.954899549484253, 40.61298751831055, 8.353392601013184, 8.363113403320312, 8.345367431640625, 8.363751411437988, 8.358330726623535, 7.696299076080322, 7.632247447967529, 7.66513204574585, 7.526895523071289, 7.414878845214844, 7.401457786560059, -32.966697692871094, -32.96757888793945, -32.96315383911133, 8.350659370422363, 8.345595359802246, 21.501447677612305, -4.188136100769043, -4.1862382888793945, -24.91275405883789, -24.957780838012695, -25.40624237060547, -25.31730079650879, -25.46578025817871, -25.06419563293457, -25.171260833740234, 27.114675521850586, 27.118816375732422, 27.129459381103516, 27.11992073059082, 27.106351852416992, 28.24547576904297, 28.2368221282959, 7.740007400512695, 37.918582916259766, 37.73516845703125, 38.01768112182617, 37.610809326171875, 38.161746978759766, 37.707359313964844, 38.136356353759766, 2.280782461166382, 2.0871777534484863, 2.0771172046661377, 2.268904447555542, 2.517817258834839, 2.6170005798339844, 2.5001935958862305, -37.858585357666016, -37.86007308959961, -37.8526725769043, 41.321414947509766, 41.31866455078125, 4.378730297088623, 4.376791477203369, -15.97047233581543, 23.693119049072266, 23.62434959411621, 23.013669967651367, 23.287546157836914, 23.55714988708496, 23.093278884887695, 23.08075714111328, 23.426206588745117, 4.8228325843811035, -23.536996841430664, 30.532718658447266, 30.532875061035156, 5.863246440887451, 5.87172269821167, 5.90596342086792, 5.89120626449585, 5.950563907623291, 9.896159172058105, -42.53872299194336, -42.68222427368164, -42.419490814208984, -42.42757797241211, -42.70460510253906, -42.727081298828125, -15.841381072998047, -15.835287094116211, -15.842693328857422, -15.843113899230957, -56.8805046081543, -56.880680084228516, -56.96718978881836, -56.966583251953125, -56.967201232910156, -56.96607208251953, -34.4014778137207, -34.404273986816406, -34.39933395385742, 20.786226272583008, -18.257396697998047, -3.231966257095337, -3.2332890033721924, -3.2337605953216553, 13.480339050292969, 13.46947956085205, 13.463752746582031, 13.467397689819336, -7.140839099884033, -7.1340131759643555, -7.137805461883545, -7.144547939300537, 10.966567039489746, 10.964113235473633, 10.964073181152344, -7.593807697296143, -7.475741386413574, 26.700037002563477, 26.388778686523438, 26.399003982543945, 26.541568756103516, 26.612478256225586, 26.485301971435547, -29.228050231933594, -28.905580520629883, -28.86673355102539, -28.97260856628418, -29.073232650756836, -29.255985260009766, -10.51164436340332, -10.506423950195312, -10.507916450500488, 12.636123657226562, 13.084096908569336, 12.888650894165039, 12.63332748413086, 12.525419235229492, 12.869837760925293, 13.063505172729492, 21.477447509765625, -3.260969638824463, -3.289344310760498, -3.2937121391296387, 8.265580177307129, 8.26555347442627, 8.265091896057129, 8.26089859008789, 8.264379501342773, 15.879090309143066, 40.756690979003906, 16.171823501586914, 16.163026809692383, 16.17864227294922, 16.161136627197266, -35.12771224975586, -35.13051223754883, -35.129337310791016, -35.13075637817383, -2.064112663269043, -2.0672175884246826, -2.0615594387054443, -2.061549186706543, -41.511966705322266, -41.46648406982422, -41.522491455078125, -41.506954193115234, -41.49835968017578, -44.22910690307617, -44.132713317871094, -44.257633209228516, -44.37809753417969, -44.12138748168945, -44.35356140136719, -31.654338836669922, -31.655935287475586, 25.093589782714844, 25.112720489501953, 25.08452606201172, 25.108095169067383, -33.58842468261719, -32.86674499511719, -33.31140899658203, -33.04273986816406, -32.90705871582031, -33.351768493652344, -33.52650451660156, -33.1409912109375, -3.0343246459960938, -2.996530771255493, -2.480149984359741, -2.614237070083618, -2.3039567470550537, -2.1867833137512207, -2.2546725273132324, -2.8107352256774902, -2.832228422164917, 38.25524139404297, 38.254756927490234, 38.258365631103516, 38.25779342651367, 38.25140380859375, 10.485915184020996, 10.246654510498047, 10.246710777282715, 22.0941104888916, -3.312370538711548, -3.3106021881103516, -3.3089044094085693, 36.45171356201172, 36.452125549316406, 36.45109176635742, 22.43485450744629, 22.484830856323242, 22.492847442626953, 22.459518432617188, 44.18609619140625, 44.134830474853516, 32.91526412963867, 32.91239547729492, 32.91429138183594, 32.914344787597656, 5.853630065917969, 5.8541717529296875, 5.855406761169434, -25.0044002532959, -25.676538467407227, -25.375837326049805, -25.60395050048828, -25.72479820251465, -25.36860466003418, -25.102020263671875, -25.175474166870117, -0.5462236404418945, -0.5663567185401917, 6.171211242675781, 6.172460079193115, 17.732479095458984, 25.067035675048828, 25.066112518310547, 25.068279266357422, 25.06783676147461, -13.241304397583008, 2.8637478351593018, -22.630218505859375, -22.45216941833496, -23.452598571777344, -3.812363862991333, -3.8071200847625732, -3.8099379539489746, -3.8088152408599854, -31.914588928222656, -32.00900650024414, -32.00255584716797, -31.929306030273438, -31.93777084350586, -9.695391654968262, -9.695213317871094, -9.698222160339355, -9.704031944274902, -6.290727138519287, -6.289334774017334, -6.289206504821777, 51.840938568115234, 51.841007232666016, 16.183576583862305, 16.08493423461914, 15.96239948272705, 16.567825317382812, 15.923433303833008, 16.3215389251709, 16.513198852539062, 16.503833770751953, 17.31149673461914, 2.701112985610962, 2.69804310798645, 2.6990251541137695, 14.800158500671387, 14.778239250183105, 14.769285202026367, 14.755502700805664, 14.74404525756836, -42.28889083862305, -41.667884826660156, -41.3197021484375, -42.20343017578125, -41.40203094482422, -41.6536979675293, -41.94474411010742, -41.970767974853516, -42.23006820678711, -41.41392135620117, -16.54487419128418, -15.878689765930176, -16.175458908081055, -16.432373046875, -15.54955768585205, -15.796941757202148, -15.62149715423584, -16.15195083618164, -16.41082763671875, -16.6264705657959, -15.6232271194458, 44.26640319824219, 44.26650619506836, -15.97832202911377, -15.974777221679688, -15.973469734191895, 20.78985595703125, -32.82716369628906, -32.998016357421875, -32.94586944580078, -32.874332427978516, -32.55278396606445, -32.56662368774414, -9.937012672424316, -9.88402271270752, 16.089218139648438, 0.5526585578918457, 0.5786538124084473, 0.5355678200721741, 0.5427761077880859, 0.5284500122070312, 38.912620544433594, 38.91225814819336, 38.9122428894043, -1.1412163972854614, -1.137648105621338, -58.0806999206543, -58.07757568359375, -58.080257415771484, 29.652006149291992, 29.649253845214844, -43.50829315185547, -43.50859069824219, -2.3483691215515137, -2.3538334369659424, -2.345325231552124, 50.94394302368164, 50.944114685058594, 50.94401168823242, -0.14012515544891357, 0.41782256960868835, -0.006793452426791191, 0.22352191805839539, 0.4150865972042084, -0.028098810464143753, 0.23846282064914703, 29.102741241455078, 24.2869815826416, 24.290470123291016, 24.288536071777344, 24.287158966064453, 24.67450714111328, 24.67310905456543, 24.686269760131836, 24.696033477783203, 24.698144912719727, 24.69276237487793, 24.69532585144043, -12.6117525100708, -29.425800323486328, -29.41171646118164, -29.71735191345215, -29.49496078491211, -29.67399787902832, -29.67487335205078, -2.1800663471221924, 43.14146423339844, 43.1409797668457, 43.141902923583984, 43.142051696777344, 14.764512062072754, 14.712055206298828, 14.974383354187012, 14.677641868591309, 14.968358039855957, 14.914052963256836, 18.54257583618164, 19.313018798828125, 18.573827743530273, 19.436664581298828, 19.02925682067871, 18.81679916381836, 18.742238998413086, 19.27256965637207, 19.12857437133789, 18.38174819946289, -33.386436462402344, -33.38676834106445, -33.386390686035156, 23.21918487548828, -1.9525316953659058, -1.9546228647232056, -1.9526299238204956, 31.79587745666504, 31.799571990966797, 31.800458908081055, 31.81169891357422, 31.80310821533203, -7.642937660217285, -7.643837928771973, 14.393228530883789, 14.393363952636719, 14.39262580871582, -17.14393424987793, -17.146846771240234, -17.126880645751953, -17.3830509185791, -17.15226173400879, -17.386804580688477, 40.70747375488281, 40.441864013671875, 40.51896667480469, 40.396568298339844, 40.58501052856445, 40.664180755615234, -40.0111083984375, -40.01359558105469, -40.01542663574219, -40.892555236816406, -40.823089599609375, -41.155433654785156, -41.11561965942383, -40.895755767822266, -41.05400466918945, 14.066155433654785, 3.1905248165130615, 3.3420722484588623, 3.1779658794403076, 3.0235447883605957, 3.3289222717285156, 3.0389740467071533, 19.750761032104492, 19.748821258544922, 19.750980377197266, 19.756099700927734, -22.676660537719727, 53.795047760009766, 53.793678283691406, 53.79328918457031, 53.78799819946289, 53.79477310180664, -24.597257614135742, -13.87508773803711, -13.87178897857666, -13.87104320526123, -13.86453914642334, 5.26564884185791, 5.267242908477783, 5.2550129890441895, 5.262408256530762, 5.912148475646973, 5.912282943725586, -4.591015815734863, 20.169784545898438, 20.169729232788086, -10.095734596252441, -10.10655403137207, -9.912860870361328, -10.171915054321289, -9.954948425292969, -9.787740707397461, -14.027153968811035, -13.765966415405273, -13.554597854614258, -13.991493225097656, -14.178147315979004, -13.47992992401123, -14.0242919921875, -13.518078804016113, 37.791282653808594, 37.791927337646484, 37.7913932800293, 9.540423393249512, 9.539304733276367, 9.543862342834473, -3.9976565837860107, -42.002777099609375, -42.11516571044922, -42.01088333129883, -42.259422302246094, -42.178409576416016, -42.28593063354492, 0.01017790101468563, -6.014378070831299, -6.0181565284729, -6.017068386077881, -6.017688751220703, -5.319100856781006, -5.305196285247803, -5.370142459869385, -5.328769207000732, -5.30883264541626, 31.684965133666992, 31.684518814086914, 4.65003776550293, 4.646630764007568, 4.646810054779053, 4.63346004486084, 4.635987281799316, 16.363956451416016, -8.225297927856445, -8.223050117492676, -8.224055290222168, -38.75217056274414, -38.75292205810547, 26.35517120361328, 26.354175567626953, -36.06904983520508, -36.02882766723633, -36.07080078125, -36.02425003051758, -36.03730010986328, -41.57865905761719, 38.947105407714844, 38.94660186767578, 38.9467658996582, -2.63562273979187, 16.951412200927734, 16.9505558013916, 42.466392517089844, -11.783584594726562, -11.783821105957031, -11.784163475036621, -11.78378677368164, -11.786603927612305, -5.468772888183594, -5.469125270843506, 18.315643310546875, 18.314359664916992, 18.315258026123047, 18.312314987182617, -8.266495704650879, -8.269063949584961, 5.57085657119751, 5.562460422515869, 5.5692057609558105, 5.563599109649658, 5.572672367095947, 2.858668565750122, 2.858051300048828, 2.8598806858062744, 28.558040618896484, 28.431123733520508, 28.40139389038086, 28.690183639526367, 28.714065551757812, 28.570720672607422, -17.155519485473633, -17.154388427734375, -17.15578269958496, 23.19464683532715, 23.196462631225586, 23.192834854125977, 7.129627704620361, 7.113959312438965, 6.838094711303711, 6.817015647888184, 6.960991382598877, 6.958813190460205, -16.182315826416016, 25.790599822998047, 25.773880004882812, 25.76763916015625, -21.042509078979492, -20.641368865966797, -20.6408748626709, -21.188987731933594, 33.64412307739258, 33.64402389526367, 33.64323043823242, 31.053171157836914, 31.054990768432617, 31.04871368408203, -7.634324550628662, -9.994010925292969, -18.211313247680664, -18.667438507080078, -18.44378089904785, -18.22260856628418, -18.347057342529297, -18.885540008544922, -18.723316192626953, -18.985374450683594, -19.04397201538086, -29.187984466552734, -29.186664581298828, -29.184585571289062, 15.691022872924805, 15.691450119018555, 15.690035820007324, 12.404831886291504, 12.404377937316895, -46.19942092895508, -46.198490142822266, -46.19878005981445, -46.19814682006836, 12.486980438232422, 12.482490539550781, 12.478582382202148, 30.3718318939209, 30.3714599609375, 18.57948875427246, 18.577653884887695, 18.576993942260742, -34.575408935546875, -34.57048034667969, -34.57372283935547, -23.363584518432617, 46.93637466430664, 46.93878173828125, 46.94318389892578, 46.94384765625, 46.94392013549805, -21.92167854309082, -22.03019142150879, -22.00393295288086, -21.986528396606445, -21.918025970458984, -30.71994972229004, -31.03073501586914, -30.41677474975586, -30.544414520263672, -31.22401237487793, -31.275737762451172, -31.09688949584961, -30.486469268798828, -30.83112144470215, 10.062305450439453, -20.17676544189453, -20.176116943359375, -20.1763916015625, 11.774186134338379, -33.67466354370117, 4.007706165313721, 27.699604034423828, 10.273591041564941, 10.275212287902832, -8.675962448120117, -8.720319747924805, -8.714585304260254, -8.704304695129395, -8.696915626525879, 17.094078063964844, 17.09287452697754, 17.092988967895508, 7.683358192443848, 7.681529998779297, 15.697549819946289, -11.283888816833496, -11.283696174621582, -36.88261795043945, -36.88181686401367, -36.88169860839844, -36.881771087646484, 15.406106948852539, -1.4628554582595825, -1.4641731977462769, -1.464605689048767, -1.4674345254898071, -31.229022979736328, -31.7437744140625, -31.277606964111328, -31.892589569091797, -31.784860610961914, -31.135757446289062, -31.535009384155273, -31.53071403503418, 7.514825820922852, 29.542049407958984, 29.53042221069336, -14.22795295715332, -41.614105224609375, -41.61539077758789, -41.62065887451172, -41.617897033691406, 21.637998580932617, 21.636682510375977, 21.62732696533203, 21.625125885009766, 21.627391815185547, 16.166133880615234, 16.16585350036621, -49.79198455810547, -49.6036262512207, -49.79666519165039, -49.537574768066406, -49.62736129760742, -49.886531829833984, 3.030226707458496, -7.663838863372803, -6.940779685974121, 16.702016830444336, -51.27207946777344, -51.27406311035156, -51.27574157714844, -51.27615737915039, 25.513582229614258, -20.066390991210938, -20.06627082824707, -20.065622329711914, 34.646629333496094, 34.646156311035156, -23.231964111328125, -23.75086784362793, -23.469804763793945, -23.219497680664062, -23.71854019165039, -23.83003044128418, -23.461713790893555, -23.103321075439453, -10.394655227661133, 22.73990821838379, 22.7401065826416, 22.744178771972656, 22.745420455932617, 20.886714935302734, -4.89597749710083, -4.893609523773193, -4.895732879638672, -0.48506009578704834, -0.48914825916290283, 35.203407287597656, 35.20281219482422, 35.20284652709961, 35.20296859741211, 5.995255947113037 ] }, { "hovertemplate": "%{text}", "marker": { "color": "#00ff00", "line": { "color": "white", "width": 1 }, "opacity": 0.8, "size": 10 }, "mode": "markers", "name": "Candidates", "text": [ "Candidate 0", "Candidate 1", "Candidate 2", "Candidate 3", "Candidate 4", "Candidate 5", "Candidate 6", "Candidate 7", "Candidate 8", "Candidate 9", "Candidate 10", "Candidate 11", "Candidate 12", "Candidate 13", "Candidate 14", "Candidate 15", "Candidate 16", "Candidate 17", "Candidate 18", "Candidate 19", "Candidate 20", "Candidate 21", "Candidate 22", "Candidate 23", "Candidate 24", "Candidate 25", "Candidate 26", "Candidate 27", "Candidate 28", "Candidate 29", "Candidate 30", "Candidate 31", "Candidate 32", "Candidate 33", "Candidate 34", "Candidate 35", "Candidate 36", "Candidate 37", "Candidate 38", "Candidate 39", "Candidate 40", "Candidate 41", "Candidate 42", "Candidate 43", "Candidate 44", "Candidate 45", "Candidate 46", "Candidate 47", "Candidate 48", "Candidate 49", "Candidate 50", "Candidate 51", "Candidate 52", "Candidate 53", "Candidate 54", "Candidate 55", "Candidate 56", "Candidate 57", "Candidate 58", "Candidate 59", "Candidate 60", "Candidate 61", "Candidate 62", "Candidate 63", "Candidate 64", "Candidate 65", "Candidate 66", "Candidate 67", "Candidate 68", "Candidate 69", "Candidate 70", "Candidate 71", "Candidate 72", "Candidate 73", "Candidate 74", "Candidate 75", "Candidate 76", "Candidate 77", "Candidate 78", "Candidate 79", "Candidate 80", "Candidate 81", "Candidate 82", "Candidate 83", "Candidate 84", "Candidate 85", "Candidate 86", "Candidate 87", "Candidate 88", "Candidate 89", "Candidate 90", "Candidate 91", "Candidate 92", "Candidate 93", "Candidate 94", "Candidate 95", "Candidate 96", "Candidate 97", "Candidate 98", "Candidate 99", "Candidate 100", "Candidate 101", "Candidate 102", "Candidate 103", "Candidate 104", "Candidate 105", "Candidate 106", "Candidate 107", "Candidate 108", "Candidate 109", "Candidate 110", "Candidate 111", "Candidate 112", "Candidate 113", "Candidate 114", "Candidate 115", "Candidate 116", "Candidate 117", "Candidate 118", "Candidate 119", "Candidate 120", "Candidate 121", "Candidate 122", "Candidate 123", "Candidate 124", "Candidate 125", "Candidate 126", "Candidate 127", "Candidate 128", "Candidate 129", "Candidate 130", "Candidate 131", "Candidate 132", "Candidate 133", "Candidate 134", "Candidate 135", "Candidate 136", "Candidate 137", "Candidate 138", "Candidate 139", "Candidate 140", "Candidate 141", "Candidate 142", "Candidate 143", "Candidate 144", "Candidate 145", "Candidate 146", "Candidate 147", "Candidate 148", "Candidate 149", "Candidate 150", "Candidate 151", "Candidate 152", "Candidate 153", "Candidate 154", "Candidate 155", "Candidate 156", "Candidate 157", "Candidate 158", "Candidate 159", "Candidate 160", "Candidate 161", "Candidate 162", "Candidate 163", "Candidate 164", "Candidate 165", "Candidate 166", "Candidate 167", "Candidate 168", "Candidate 169", "Candidate 170", "Candidate 171", "Candidate 172", "Candidate 173", "Candidate 174", "Candidate 175", "Candidate 176", "Candidate 177", "Candidate 178", "Candidate 179", "Candidate 180", "Candidate 181", "Candidate 182", "Candidate 183", "Candidate 184", "Candidate 185", "Candidate 186", "Candidate 187", "Candidate 188", "Candidate 189", "Candidate 190", "Candidate 191", "Candidate 192", "Candidate 193", "Candidate 194", "Candidate 195", "Candidate 196", "Candidate 197", "Candidate 198", "Candidate 199", "Candidate 200", "Candidate 201", "Candidate 202", "Candidate 203", "Candidate 204", "Candidate 205", "Candidate 206", "Candidate 207", "Candidate 208", "Candidate 209", "Candidate 210", "Candidate 211", "Candidate 212", "Candidate 213", "Candidate 214", "Candidate 215", "Candidate 216", "Candidate 217", "Candidate 218", "Candidate 219", "Candidate 220", "Candidate 221", "Candidate 222", "Candidate 223", "Candidate 224", "Candidate 225", "Candidate 226", "Candidate 227", "Candidate 228", "Candidate 229", "Candidate 230", "Candidate 231", "Candidate 232", "Candidate 233", "Candidate 234", "Candidate 235", "Candidate 236", "Candidate 237", "Candidate 238", "Candidate 239", "Candidate 240", "Candidate 241", "Candidate 242", "Candidate 243", "Candidate 244", "Candidate 245", "Candidate 246", "Candidate 247", "Candidate 248", "Candidate 249", "Candidate 250", "Candidate 251", "Candidate 252", "Candidate 253", "Candidate 254", "Candidate 255", "Candidate 256", "Candidate 257", "Candidate 258", "Candidate 259", "Candidate 260", "Candidate 261", "Candidate 262", "Candidate 263", "Candidate 264", "Candidate 265", "Candidate 266", "Candidate 267", "Candidate 268", "Candidate 269", "Candidate 270", "Candidate 271", "Candidate 272", "Candidate 273", "Candidate 274", "Candidate 275", "Candidate 276", "Candidate 277", "Candidate 278", "Candidate 279", "Candidate 280", "Candidate 281", "Candidate 282", "Candidate 283", "Candidate 284", "Candidate 285", "Candidate 286", "Candidate 287", "Candidate 288", "Candidate 289", "Candidate 290", "Candidate 291", "Candidate 292", "Candidate 293", "Candidate 294", "Candidate 295", "Candidate 296", "Candidate 297", "Candidate 298", "Candidate 299", "Candidate 300", "Candidate 301", "Candidate 302", "Candidate 303", "Candidate 304", "Candidate 305", "Candidate 306", "Candidate 307", "Candidate 308", "Candidate 309", "Candidate 310", "Candidate 311", "Candidate 312", "Candidate 313", "Candidate 314", "Candidate 315", "Candidate 316", "Candidate 317", "Candidate 318", "Candidate 319", "Candidate 320", "Candidate 321", "Candidate 322", "Candidate 323", "Candidate 324", "Candidate 325", "Candidate 326", "Candidate 327", "Candidate 328", "Candidate 329", "Candidate 330", "Candidate 331", "Candidate 332", "Candidate 333", "Candidate 334", "Candidate 335", "Candidate 336", "Candidate 337", "Candidate 338", "Candidate 339", "Candidate 340", "Candidate 341", "Candidate 342", "Candidate 343", "Candidate 344", "Candidate 345", "Candidate 346", "Candidate 347", "Candidate 348", "Candidate 349", "Candidate 350", "Candidate 351", "Candidate 352", "Candidate 353", "Candidate 354", "Candidate 355", "Candidate 356", "Candidate 357", "Candidate 358", "Candidate 359", "Candidate 360", "Candidate 361", "Candidate 362", "Candidate 363", "Candidate 364", "Candidate 365", "Candidate 366", "Candidate 367", "Candidate 368", "Candidate 369", "Candidate 370", "Candidate 371", "Candidate 372", "Candidate 373", "Candidate 374", "Candidate 375", "Candidate 376", "Candidate 377", "Candidate 378", "Candidate 379", "Candidate 380", "Candidate 381", "Candidate 382", "Candidate 383", "Candidate 384", "Candidate 385", "Candidate 386", "Candidate 387", "Candidate 388", "Candidate 389", "Candidate 390", "Candidate 391", "Candidate 392", "Candidate 393", "Candidate 394", "Candidate 395", "Candidate 396", "Candidate 397", "Candidate 398", "Candidate 399", "Candidate 400", "Candidate 401", "Candidate 402", "Candidate 403", "Candidate 404", "Candidate 405", "Candidate 406", "Candidate 407", "Candidate 408", "Candidate 409", "Candidate 410", "Candidate 411", "Candidate 412", "Candidate 413", "Candidate 414", "Candidate 415", "Candidate 416", "Candidate 417", "Candidate 418", "Candidate 419", "Candidate 420", "Candidate 421", "Candidate 422", "Candidate 423", "Candidate 424", "Candidate 425", "Candidate 426", "Candidate 427", "Candidate 428", "Candidate 429", "Candidate 430", "Candidate 431", "Candidate 432", "Candidate 433", "Candidate 434", "Candidate 435", "Candidate 436", "Candidate 437", "Candidate 438", "Candidate 439", "Candidate 440", "Candidate 441", "Candidate 442", "Candidate 443", "Candidate 444", "Candidate 445", "Candidate 446", "Candidate 447", "Candidate 448", "Candidate 449", "Candidate 450", "Candidate 451", "Candidate 452", "Candidate 453", "Candidate 454", "Candidate 455", "Candidate 456", "Candidate 457", "Candidate 458", "Candidate 459", "Candidate 460", "Candidate 461", "Candidate 462", "Candidate 463", "Candidate 464", "Candidate 465", "Candidate 466", "Candidate 467", "Candidate 468", "Candidate 469", "Candidate 470", "Candidate 471", "Candidate 472", "Candidate 473", "Candidate 474", "Candidate 475", "Candidate 476", "Candidate 477", "Candidate 478", "Candidate 479", "Candidate 480", "Candidate 481", "Candidate 482", "Candidate 483", "Candidate 484", "Candidate 485", "Candidate 486", "Candidate 487", "Candidate 488", "Candidate 489", "Candidate 490", "Candidate 491", "Candidate 492", "Candidate 493", "Candidate 494", "Candidate 495", "Candidate 496", "Candidate 497", "Candidate 498", "Candidate 499" ], "type": "scatter", "x": [ 41.186309814453125, 48.7649040222168, 58.316646575927734, 78.5217514038086, 45.868263244628906, 62.17395782470703, 43.80234909057617, 70.7208480834961, 50.60479736328125, 46.90532302856445, 81.60072326660156, 59.662071228027344, 50.84657669067383, 53.686279296875, 42.95430374145508, 81.39750671386719, 67.56729888916016, 57.606475830078125, 42.95831298828125, 57.782222747802734, 75.28368377685547, 60.29971694946289, 57.064308166503906, 74.5436019897461, 47.58145523071289, 56.73363494873047, 57.575626373291016, 60.73923110961914, 72.17411041259766, 59.215362548828125, 46.65153503417969, 43.19902420043945, 76.21859741210938, 44.94456100463867, 59.328670501708984, 54.44642639160156, 51.41210174560547, 49.53907775878906, 40.778316497802734, 77.38782501220703, 69.30795288085938, 52.119300842285156, 70.24610137939453, 62.90265655517578, 69.92957305908203, 40.96602249145508, 39.716941833496094, 56.91524124145508, 79.66697692871094, 46.232303619384766, 43.00526428222656, 84.82901000976562, 64.25175476074219, 45.929603576660156, 43.387351989746094, 62.17520523071289, 47.62195587158203, 44.57310485839844, 62.88313293457031, 74.54369354248047, 47.49254608154297, 54.291629791259766, 57.11681365966797, 54.734100341796875, 59.33404541015625, 44.617393493652344, 57.03125762939453, 73.83674621582031, 47.53178787231445, 71.25872802734375, 46.081077575683594, 58.01638412475586, 47.6691780090332, 51.8404426574707, 64.71923828125, 68.84765625, 49.98569869995117, 85.12652587890625, 54.67087936401367, 50.26119613647461, 79.08657836914062, 57.02825164794922, 66.48333740234375, 42.89822769165039, 82.3714370727539, 62.277305603027344, 60.5435676574707, 41.95161056518555, 50.29314422607422, 43.527671813964844, 41.62749481201172, 51.86753463745117, 42.44172286987305, 47.6842155456543, 47.832916259765625, 69.65628051757812, 74.05398559570312, 57.45872116088867, 68.69152069091797, 49.164791107177734, 62.173194885253906, 64.45359802246094, 57.73619842529297, 66.71459197998047, 65.0294189453125, 81.60086822509766, 47.62361145019531, 69.83934020996094, 65.38196563720703, 80.5767822265625, 83.85741424560547, 47.35179901123047, 46.10436248779297, 67.55209350585938, 78.83796691894531, 73.81653594970703, 46.00177764892578, 51.366085052490234, 58.193115234375, 64.42841339111328, 50.72207260131836, 81.2164535522461, 45.32265853881836, 54.78656005859375, 62.980262756347656, 43.76631164550781, 57.416542053222656, 63.92678451538086, 58.70901107788086, 68.42898559570312, 59.005855560302734, 70.7701416015625, 50.97396469116211, 64.9439697265625, 83.85741424560547, 72.08883666992188, 57.06011199951172, 51.03055953979492, 60.977622985839844, 55.50402069091797, 52.6026725769043, 43.91911315917969, 77.2295150756836, 62.1813850402832, 47.73841094970703, 41.46736526489258, 67.41845703125, 49.3739013671875, 66.51654052734375, 87.18785095214844, 68.16243743896484, 69.22865295410156, 75.51924133300781, 43.7775993347168, 42.96754837036133, 58.747718811035156, 49.0945930480957, 49.62605285644531, 66.85391998291016, 61.365943908691406, 66.81707763671875, 76.93666076660156, 52.06018829345703, 45.680503845214844, 61.46284866333008, 59.56631851196289, 73.81979370117188, 67.0411148071289, 62.42057418823242, 52.87530517578125, 64.63054656982422, 50.91524887084961, 65.6646957397461, 41.625816345214844, 50.964820861816406, 54.52518844604492, 61.47459030151367, 41.31926727294922, 65.033203125, 51.76608657836914, 71.47672271728516, 61.9365119934082, 66.08966827392578, 52.972084045410156, 79.0868911743164, 55.16151428222656, 66.57820129394531, 48.66446304321289, 41.57341384887695, 48.080753326416016, 75.7784194946289, 66.09010314941406, 68.8252182006836, 48.6120719909668, 55.47120666503906, 51.163570404052734, 53.49332809448242, 73.92813873291016, 66.96876525878906, 55.00785446166992, 60.992897033691406, 81.4289321899414, 60.17000961303711, 47.80009078979492, 82.1672134399414, 45.07600021362305, 51.89250946044922, 68.10161590576172, 61.485050201416016, 53.67943572998047, 62.20351791381836, 41.943809509277344, 58.699615478515625, 59.611289978027344, 64.50618743896484, 86.22273254394531, 58.34632110595703, 69.79548645019531, 81.42657470703125, 75.3263168334961, 43.410675048828125, 41.571590423583984, 58.676021575927734, 59.22542190551758, 50.148353576660156, 46.175506591796875, 58.08156204223633, 79.8652572631836, 69.45425415039062, 43.61137390136719, 73.80783081054688, 70.5758056640625, 63.05298614501953, 68.17485046386719, 59.34984588623047, 71.81078338623047, 56.431358337402344, 58.249053955078125, 80.15582275390625, 83.12422180175781, 73.49559020996094, 67.62193298339844, 86.34648132324219, 64.04608917236328, 47.759273529052734, 86.16856384277344, 44.574039459228516, 68.8252182006836, 48.20679473876953, 54.55522918701172, 71.22412872314453, 54.550514221191406, 65.1240234375, 52.67127227783203, 68.06970977783203, 58.68049621582031, 52.86639404296875, 73.49559020996094, 48.86499786376953, 82.1672134399414, 70.7208480834961, 73.82334899902344, 83.19234466552734, 69.24627685546875, 66.65544891357422, 59.9713020324707, 51.41242980957031, 71.5577392578125, 78.2261734008789, 76.63215637207031, 56.3738899230957, 52.776424407958984, 73.81979370117188, 73.29620361328125, 48.12745666503906, 48.301631927490234, 50.89945602416992, 58.042476654052734, 46.72831344604492, 50.8774528503418, 41.14567184448242, 64.02256774902344, 75.86663818359375, 60.81095886230469, 63.945289611816406, 78.31026458740234, 80.5767822265625, 61.512969970703125, 57.34416198730469, 65.78003692626953, 56.73273849487305, 59.08659362792969, 48.97831344604492, 58.347145080566406, 85.12652587890625, 47.60506057739258, 74.54369354248047, 57.51758575439453, 64.24957275390625, 55.44149398803711, 60.63573455810547, 73.67481231689453, 81.47534942626953, 75.48149871826172, 56.846595764160156, 78.80925750732422, 44.83224105834961, 41.23395538330078, 71.34185791015625, 43.95538330078125, 48.91103744506836, 76.21859741210938, 68.49401092529297, 57.69244384765625, 60.60251998901367, 77.20118713378906, 68.68830108642578, 47.584163665771484, 81.40174102783203, 64.3756332397461, 63.8189582824707, 78.80927276611328, 75.40087890625, 82.3717041015625, 82.1672134399414, 76.21859741210938, 59.15321731567383, 48.824256896972656, 64.53904724121094, 40.09119415283203, 68.87112426757812, 53.16276168823242, 54.69649124145508, 80.4161605834961, 78.9664077758789, 82.3717041015625, 81.30423736572266, 53.86909103393555, 48.72381591796875, 71.47592163085938, 60.90287780761719, 44.574039459228516, 61.740989685058594, 44.51225662231445, 53.68506622314453, 69.79618072509766, 77.59280395507812, 56.54179763793945, 51.87397003173828, 56.96883010864258, 51.03879165649414, 80.63733673095703, 51.43937683105469, 42.49432373046875, 77.8983383178711, 50.21311569213867, 48.84404373168945, 59.147708892822266, 41.1354866027832, 81.64849090576172, 58.46875, 60.76747131347656, 76.2755126953125, 71.48188781738281, 79.35529327392578, 49.3580207824707, 76.21859741210938, 65.74048614501953, 75.3469009399414, 59.1800537109375, 50.27642059326172, 71.94239044189453, 50.885372161865234, 51.83597183227539, 70.4898681640625, 41.51249313354492, 57.577392578125, 44.8387565612793, 52.95853042602539, 81.60145568847656, 74.1024398803711, 62.33481216430664, 59.89646911621094, 67.9429702758789, 43.59846496582031, 44.73035430908203, 68.18619537353516, 76.91547393798828, 60.88125228881836, 50.740196228027344, 48.359130859375, 48.645233154296875, 38.97972869873047, 61.789310455322266, 62.95248794555664, 66.08944702148438, 76.1357421875, 67.9873046875, 62.519920349121094, 65.51800537109375, 71.99424743652344, 40.49934005737305, 51.62420654296875, 70.7208480834961, 72.681640625, 81.96387481689453, 60.330448150634766, 57.86384963989258, 85.61955261230469, 60.57633590698242, 41.586002349853516, 77.87380981445312, 79.08675384521484, 48.518856048583984, 68.8252182006836, 57.70625686645508, 48.89633560180664, 42.551551818847656, 49.76506423950195, 78.80927276611328, 80.5767822265625, 55.04253387451172, 49.81794738769531, 71.46985626220703, 42.20147705078125, 72.04183959960938, 61.327301025390625, 77.0030746459961, 68.26632690429688, 52.789710998535156, 42.68382263183594, 80.23880004882812, 71.96002197265625, 72.38919067382812, 58.7811164855957, 57.16387939453125, 56.37018966674805, 56.2625617980957, 60.05529022216797, 61.79309844970703, 60.037696838378906, 62.76782989501953, 57.793373107910156, 51.91481018066406, 61.63617706298828, 56.876304626464844, 49.24814224243164, 49.09895324707031, 44.47395706176758, 41.7202033996582, 83.12308502197266, 49.76930236816406, 57.642616271972656, 57.47712326049805, 63.59986114501953, 48.831485748291016, 81.42448425292969, 72.1009521484375, 66.0814208984375, 64.61048126220703, 82.58796691894531, 74.09024047851562, 41.689151763916016, 52.05326461791992, 77.95873260498047, 71.9950180053711, 45.7216796875, 67.99883270263672, 85.12652587890625, 80.63733673095703, 60.95846176147461, 68.86085510253906, 44.1016960144043, 52.59684753417969, 64.88355255126953, 87.18785095214844, 46.276275634765625, 68.11552429199219, 81.4289321899414, 58.111045837402344, 55.06145477294922, 57.33681106567383, 60.271480560302734, 81.4289321899414, 52.789066314697266, 71.53141021728516, 61.96543884277344, 80.51499938964844, 59.055049896240234, 78.67124938964844, 43.576778411865234, 79.22743225097656, 65.21576690673828, 58.197635650634766, 58.91236114501953, 45.27826690673828, 53.65314483642578, 57.217498779296875, 67.17142486572266, 73.15074157714844 ], "y": [ -1.4922877550125122, -8.938495635986328, -15.353409767150879, -9.688542366027832, -24.66072654724121, 6.395302772521973, -23.499284744262695, 5.3420820236206055, -2.422621250152588, 7.6119890213012695, -10.742048263549805, -7.256931781768799, -12.694358825683594, 5.151981830596924, -15.540237426757812, 10.627208709716797, 6.6707892417907715, -15.860703468322754, -15.536866188049316, -2.665024995803833, -5.545052528381348, 12.479792594909668, -14.659369468688965, 1.6679441928863525, -11.179291725158691, 6.987683296203613, -7.948056697845459, -1.8479552268981934, 9.623579025268555, -3.369191884994507, 1.0154191255569458, 6.985005855560303, 4.910045146942139, -22.729000091552734, 2.179490089416504, -8.550671577453613, -4.876826763153076, -0.2785590887069702, -5.960836887359619, -2.666624069213867, -0.9398494958877563, -2.6598541736602783, 8.979642868041992, 5.110325813293457, -1.5967988967895508, -5.0648016929626465, -4.874930381774902, 6.949294090270996, -5.197410583496094, -1.3189396858215332, 6.647744655609131, -2.7565314769744873, 9.369978904724121, -23.756858825683594, 6.358474254608154, -0.3018849790096283, -2.3409574031829834, -22.67617416381836, -16.37928581237793, 1.669389009475708, -4.3933305740356445, -0.35989102721214294, -9.137138366699219, 1.3870636224746704, 13.195000648498535, -23.547855377197266, 3.58369779586792, -4.301017761230469, -3.6198253631591797, -1.3659148216247559, -4.995721340179443, -3.732149362564087, 9.274750709533691, -4.036750316619873, 1.8578561544418335, 5.550895690917969, 0.8769170045852661, -1.6177644729614258, -5.45681619644165, -3.034783124923706, -12.714402198791504, 3.5991642475128174, -15.568131446838379, -4.499922275543213, -5.461869716644287, 0.5897817015647888, -12.611681938171387, 6.828384876251221, 4.284623622894287, 7.527255058288574, 9.298942565917969, -4.019241809844971, -4.238113880157471, 9.088226318359375, 8.882399559020996, -1.115654468536377, -13.819854736328125, 13.414260864257812, -2.2700915336608887, 10.355640411376953, -11.89366626739502, 0.27045926451683044, -2.5885918140411377, -9.16625690460205, -15.53017807006836, -10.741829872131348, -11.261371612548828, -8.950119018554688, -13.965587615966797, -6.9723734855651855, -5.784872531890869, -0.008971304632723331, -21.929819107055664, 6.767290115356445, -10.391362190246582, 4.836461067199707, 0.6499705910682678, -11.801728248596191, -8.56159496307373, -4.714643955230713, -11.553486824035645, 9.473810195922852, -24.592161178588867, -5.39044189453125, -16.354440689086914, -21.336639404296875, -6.877792835235596, -8.799839973449707, -19.48927116394043, -2.8274405002593994, -18.86732292175293, -4.222970962524414, 4.972423553466797, -8.851733207702637, -5.784872531890869, 9.505176544189453, -11.183988571166992, -6.796271800994873, 1.99408757686615, -0.980618953704834, 1.3536030054092407, -22.435224533081055, -3.898395299911499, 12.94310474395752, -11.15131664276123, -4.672303676605225, -13.640619277954102, 1.3141183853149414, -2.1714813709259033, -2.3526201248168945, -12.96081829071045, -3.803976535797119, -2.640454053878784, -4.442056655883789, -15.530608177185059, -15.6439790725708, -3.6144118309020996, -1.6450414657592773, -0.9917809963226318, -9.678658485412598, -13.516290664672852, -9.269390106201172, -13.9585599899292, -22.614755630493164, 2.866201400756836, 0.008342435583472252, 9.41305923461914, -0.9467827677726746, -1.4674768447875977, -6.168642520904541, -0.8572776317596436, -1.5977007150650024, -3.193188428878784, -5.082321643829346, -1.6034015417099, -5.584026336669922, 7.043933868408203, 9.689094543457031, -7.5792059898376465, 0.29799947142601013, 10.321651458740234, -10.47062873840332, 4.304385185241699, -2.215846061706543, -12.71452808380127, 0.036669787019491196, -3.707127809524536, 8.677877426147461, -2.42038631439209, -3.404017925262451, -6.684049129486084, 4.306626796722412, 12.066198348999023, 10.404549598693848, -0.9336318969726562, 5.060445308685303, -3.3490869998931885, -4.36621618270874, -9.277847290039062, -9.885419845581055, 13.360785484313965, -7.931065082550049, -4.273126602172852, -4.967136859893799, -4.031393051147461, -21.901931762695312, -8.307486534118652, -14.966888427734375, 6.931680202484131, 5.143932819366455, -4.648625373840332, 6.641810894012451, -4.748589992523193, 13.787907600402832, -1.081494688987732, -0.39815959334373474, -15.13099479675293, 3.232675790786743, 8.219654083251953, -7.372599124908447, -22.13315200805664, 8.97138500213623, 12.148516654968262, 13.928171157836914, -5.881428241729736, -7.232564449310303, 14.014115333557129, 8.103519439697266, -4.568449974060059, -1.8053356409072876, 4.858993053436279, -3.8009073734283447, -7.4605231285095215, -4.3415608406066895, 13.367738723754883, -4.199997425079346, -0.012585623189806938, -14.47304916381836, -9.015084266662598, -6.339079856872559, 7.049975395202637, -2.279182195663452, -1.7843098640441895, -4.636688232421875, 9.295817375183105, -0.5218385457992554, -10.110942840576172, 12.066198348999023, -1.5609058141708374, -5.557375431060791, -6.838753700256348, -1.1819634437561035, -14.79620361328125, -0.3000124990940094, -14.898069381713867, -19.331403732299805, -6.008271217346191, 7.049975395202637, -5.380728244781494, -4.031393051147461, 5.3420820236206055, 5.566312789916992, -5.054574489593506, -3.5161924362182617, -9.101946830749512, -10.763110160827637, 2.52839732170105, 5.414730548858643, -6.655285835266113, -11.535677909851074, -9.755128860473633, -19.06597900390625, 9.41305923461914, -9.24907112121582, 4.853929042816162, -1.5498037338256836, 4.914575099945068, 13.516192436218262, 1.210645079612732, -12.025420188903809, -1.4286571741104126, -1.016004204750061, -9.31163215637207, -12.079316139221191, 5.961300373077393, -7.845369815826416, -6.9723734855651855, 14.198647499084473, -9.261303901672363, -4.7705302238464355, 6.681382656097412, 1.2212142944335938, 7.413909912109375, -19.52057647705078, -1.6177644729614258, 9.876154899597168, 1.669389009475708, -9.667237281799316, 9.379773139953613, 1.9664133787155151, -0.44351232051849365, -5.874195098876953, 10.482830047607422, -9.337278366088867, 7.005931854248047, -9.36722469329834, -21.32433319091797, -1.6076351404190063, -7.10358190536499, -2.8070473670959473, -2.7751731872558594, 4.910045146942139, -0.9476318955421448, 13.542257308959961, 12.750654220581055, -6.424211502075195, -1.3280645608901978, 0.800913393497467, 9.855602264404297, -0.3111674189567566, -7.897068023681641, -9.43624210357666, -5.496551036834717, -5.462174415588379, -4.031393051147461, 4.910045146942139, -7.758368015289307, -8.79951000213623, 0.6836874485015869, -4.817965030670166, 5.538528919219971, -1.0725709199905396, -8.844706535339355, -0.6047681570053101, -7.077367782592773, -5.462174415588379, 10.764768600463867, 2.6166861057281494, 2.554049253463745, -11.947504997253418, -16.50889778137207, -10.110942840576172, 2.9954326152801514, 5.64359188079834, 5.171072006225586, 3.232435941696167, -10.326900482177734, 7.143674373626709, -8.188432693481445, 1.477211833000183, -13.156472206115723, -1.034590721130371, 2.7793827056884766, 7.262403964996338, -4.755943775177002, -11.791107177734375, -5.314609527587891, 3.8878204822540283, -5.761231422424316, 8.009504318237305, 12.813529968261719, -2.804271936416626, -5.446318626403809, -11.8971586227417, -3.92665433883667, 2.666370153427124, 4.910045146942139, -3.845210075378418, -2.489241600036621, -5.114235877990723, 2.6689395904541016, -8.32136344909668, -6.605078220367432, -4.2430620193481445, 0.12305454164743423, 6.716599464416504, -19.076799392700195, -22.450218200683594, -2.1955835819244385, -10.74201774597168, -13.812590599060059, -2.7556896209716797, -16.50310707092285, -3.854200839996338, -3.037829875946045, -24.11436653137207, -5.826210021972656, -8.772568702697754, -10.600828170776367, -10.842354774475098, 4.539046287536621, 9.334234237670898, -4.828393936157227, -11.70596694946289, 5.113749027252197, 4.304637432098389, -6.268877029418945, -14.654519081115723, -1.4632513523101807, -9.810099601745605, 2.0312952995300293, -4.361074924468994, -1.26705002784729, 5.3420820236206055, 1.7866439819335938, 9.592169761657715, -10.100116729736328, -19.079622268676758, -2.3838260173797607, -1.8937102556228638, -4.766422271728516, -4.507429599761963, -12.714559555053711, 8.062276840209961, 12.066198348999023, -2.583662509918213, -6.482687950134277, 8.927447319030762, -0.5707994103431702, -9.43624210357666, -6.9723734855651855, -2.7128207683563232, 1.008800745010376, -11.874671936035156, -6.4043354988098145, -8.502972602844238, 13.951906204223633, -3.1364872455596924, -6.692933082580566, -19.060230255126953, 5.655462265014648, 8.769350051879883, -0.2937658727169037, 9.523269653320312, -5.003790855407715, -5.907060623168945, 0.015312752686440945, -10.016016006469727, -5.994969844818115, -2.2053754329681396, -10.739713668823242, -9.180935859680176, -3.82590389251709, -8.3259916305542, 2.953557252883911, -10.812188148498535, -5.778775215148926, -3.751978874206543, -22.54413414001465, 9.260998725891113, -6.339064598083496, -4.160421371459961, 5.046655178070068, 13.231433868408203, -0.6861903071403503, -8.769933700561523, 9.062976837158203, 9.626708030700684, -9.305784225463867, -16.002111434936523, 10.400837898254395, -7.210542678833008, 7.331563472747803, -13.92387866973877, -7.725407600402832, 2.031341791152954, -1.095839023590088, 0.3797302544116974, -1.6177644729614258, -1.034590721130371, 13.930790901184082, 4.175154209136963, -22.078479766845703, 1.3341844081878662, -4.416968822479248, -2.3526201248168945, -7.298153400421143, 1.6763633489608765, -7.931065082550049, 6.687289714813232, -2.7084994316101074, -18.905248641967773, -16.608074188232422, -7.931065082550049, -19.058612823486328, -8.3328857421875, -4.530581474304199, 8.255379676818848, -1.9998531341552734, -8.691783905029297, -1.8676494359970093, -3.655334234237671, -8.735392570495605, -18.485294342041016, -2.4930920600891113, -23.77134895324707, 2.1285438537597656, -5.3477091789245605, 1.5604074001312256, -9.120884895324707 ] } ], "layout": { "font": { "color": "white" }, "height": 800, "paper_bgcolor": "#0d0d0d", "plot_bgcolor": "#1a1a1a", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Vector Space: Candidates & Companies (with Postings Enrichment)" }, "width": 1200, "xaxis": { "title": { "text": "Dimension 1" } }, "yaxis": { "title": { "text": "Dimension 2" } } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "βœ… Visualization complete!\n", "\n", "πŸ’‘ KEY OBSERVATIONS:\n", " β€’ Green = Candidates | Red = Companies\n", " β€’ If they OVERLAP β†’ Good! Alignment worked!\n", " β€’ If still separated β†’ Need more postings data\n", " β€’ Clusters = Similar skill profiles grouped\n", "\n" ] } ], "source": [ "# Create plot\n", "fig = go.Figure()\n", "\n", "# Companies (red)\n", "fig.add_trace(go.Scatter(\n", " x=comp_2d[:, 0],\n", " y=comp_2d[:, 1],\n", " mode='markers',\n", " name='Companies',\n", " marker=dict(\n", " size=6,\n", " color='#ff6b6b',\n", " opacity=0.6\n", " ),\n", " text=[f\"Company {i}: {companies_full.iloc[i].get('name', 'N/A')[:30]}\"\n", " for i in range(n_comp_viz)],\n", " hovertemplate='%{text}'\n", "))\n", "\n", "# Candidates (green)\n", "fig.add_trace(go.Scatter(\n", " x=cand_2d[:, 0],\n", " y=cand_2d[:, 1],\n", " mode='markers',\n", " name='Candidates',\n", " marker=dict(\n", " size=10,\n", " color='#00ff00',\n", " opacity=0.8,\n", " line=dict(width=1, color='white')\n", " ),\n", " text=[f\"Candidate {i}\" for i in range(n_cand_viz)],\n", " hovertemplate='%{text}'\n", "))\n", "\n", "fig.update_layout(\n", " title='Vector Space: Candidates & Companies (with Postings Enrichment)',\n", " xaxis_title='Dimension 1',\n", " yaxis_title='Dimension 2',\n", " width=1200,\n", " height=800,\n", " plot_bgcolor='#1a1a1a',\n", " paper_bgcolor='#0d0d0d',\n", " font=dict(color='white')\n", ")\n", "\n", "fig.show()\n", "\n", "print(\"βœ… Visualization complete!\\n\")\n", "print(\"πŸ’‘ KEY OBSERVATIONS:\")\n", "print(\" β€’ Green = Candidates | Red = Companies\")\n", "print(\" β€’ If they OVERLAP β†’ Good! Alignment worked!\")\n", "print(\" β€’ If still separated β†’ Need more postings data\")\n", "print(\" β€’ Clusters = Similar skill profiles grouped\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ” Step 11: Highlight Specific Candidate + Matches" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ” Analyzing Candidate #0...\n", "\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "marker": { "color": "#ff6b6b", "opacity": 0.3, "size": 4 }, "mode": "markers", "name": "All Companies", "showlegend": true, "type": "scatter", "x": [ 8.424368858337402, 8.40195369720459, 8.385270118713379, 8.42382526397705, -38.597190856933594, -38.74054718017578, -39.00513458251953, -38.19382858276367, -38.68928527832031, -39.055809020996094, -38.23733139038086, -38.41060256958008, -38.13452911376953, -38.96975326538086, 6.241576671600342, 6.2457356452941895, 6.244972229003906, 6.242238521575928, 10.229446411132812, 10.233492851257324, 10.243219375610352, 10.251922607421875, 10.23974323272705, 31.32158660888672, 31.50520133972168, 31.074567794799805, 31.456283569335938, 30.952003479003906, 31.256980895996094, 31.037574768066406, -1.6884390115737915, -2.029571771621704, -1.8245515823364258, -1.5695979595184326, -2.1955161094665527, -2.2359817028045654, -1.5817874670028687, -1.9934055805206299, 9.939101219177246, 10.179327011108398, 10.028629302978516, 9.859413146972656, 9.736146926879883, 9.666458129882812, 10.146087646484375, -29.77255630493164, -29.772802352905273, -29.772052764892578, 11.10151481628418, 1.3300023078918457, 1.4360734224319458, 1.0943334102630615, 1.0356072187423706, 1.1802235841751099, 1.674535870552063, 1.6853547096252441, 1.534334659576416, 0.6285699605941772, 0.6299970149993896, -1.206727385520935, -1.2102998495101929, -1.2111252546310425, 9.724861145019531, 9.326569557189941, 9.39232349395752, 9.622916221618652, 9.931135177612305, 10.042128562927246, 9.491296768188477, 9.992659568786621, 17.54332733154297, -0.3671700656414032, -0.1433565318584442, -0.4733661115169525, 0.06999942660331726, 0.059171970933675766, -0.11598870903253555, -0.3749028742313385, 0.8832989931106567, 20.084917068481445, 19.9399356842041, 20.446205139160156, 19.928754806518555, 19.841358184814453, 20.449960708618164, 20.274831771850586, 20.507068634033203, 15.08704948425293, 15.08784294128418, -0.7731616497039795, -47.88224792480469, -47.88972091674805, -47.74959945678711, -47.638980865478516, -47.61027526855469, -47.826072692871094, 3.918015480041504, 3.207364082336426, 3.330911636352539, 3.8493354320526123, 3.581437826156616, 3.3239355087280273, 3.5372464656829834, 3.7747905254364014, 5.4841485023498535, 5.485290050506592, 5.483107089996338, 5.468288421630859, -44.50997543334961, -44.509490966796875, 7.004449367523193, 6.9461259841918945, 7.7173566818237305, 7.457833766937256, 7.205479145050049, 7.674495697021484, 7.453052997589111, 7.798208713531494, 7.186491966247559, 16.148298263549805, 0.6788679361343384, -49.96831130981445, -49.9749870300293, -49.96926498413086, -49.98001480102539, -49.96370315551758, -53.66045379638672, -53.32814407348633, -53.1112060546875, -53.563846588134766, -53.72007369995117, -53.32570266723633, -53.33319854736328, -53.064266204833984, -1.7918540239334106, -1.5103708505630493, -1.656924843788147, -1.6139615774154663, -1.7948498725891113, -1.4628288745880127, -9.233979225158691, 0.8506536483764648, 0.9188241958618164, 0.33622848987579346, 0.21550366282463074, 0.6105638742446899, 0.5068449974060059, 0.2981937825679779, 0.8420239686965942, -34.76046371459961, -34.761802673339844, -0.3214055895805359, -0.5830390453338623, -0.5855518579483032, 27.71541404724121, 27.715551376342773, 27.715723037719727, 14.501453399658203, 14.501948356628418, 3.622316837310791, 3.619067430496216, 3.1090145111083984, -17.84478187561035, -17.845779418945312, -20.269529342651367, -2.39193058013916, -2.976329803466797, -2.819875717163086, -2.6543285846710205, -2.212239980697632, -2.162963628768921, -2.6436922550201416, -2.315013885498047, -2.870589017868042, 11.093473434448242, 11.16355037689209, 11.144811630249023, 11.154312133789062, 11.164909362792969, 20.428001403808594, 20.588680267333984, 20.027498245239258, 20.71439552307129, 20.362051010131836, 20.088254928588867, 20.595109939575195, 20.118406295776367, 6.959162712097168, 6.957623481750488, 6.957989692687988, 6.953879356384277, 21.536287307739258, 21.5371150970459, 21.539447784423828, 2.2849104404449463, 2.247946262359619, 2.2560007572174072, 2.2936506271362305, 2.273634433746338, 24.611116409301758, 24.024993896484375, 23.83722496032715, 23.802955627441406, 24.56348991394043, 24.356430053710938, 24.07606315612793, 23.74015235900879, 24.34441566467285, 24.691028594970703, -35.44540786743164, -35.44083786010742, -35.440086364746094, -35.442039489746094, -35.441978454589844, -11.628639221191406, -11.632146835327148, -11.631753921508789, -6.116138935089111, -5.735315322875977, -6.1684651374816895, -6.031317234039307, -5.350306510925293, -5.881524562835693, -5.453628063201904, -5.593273162841797, -5.3303542137146, 27.172494888305664, 27.05206871032715, 26.476150512695312, 26.975811004638672, 26.16529655456543, 26.405893325805664, 26.11762809753418, 26.70223617553711, 26.230031967163086, 27.16168975830078, 26.780899047851562, 41.57117462158203, 9.093786239624023, 7.729669094085693, -9.199989318847656, -9.200115203857422, -9.199707984924316, 3.275583505630493, 0.6109403967857361, 0.8323028087615967, 1.0309841632843018, 0.5399081707000732, 0.9001272916793823, 0.40024876594543457, 0.3644936978816986, 1.0575400590896606, -10.868709564208984, -11.195327758789062, -11.202178955078125, -10.839980125427246, -10.687455177307129, -10.656292915344238, -11.074051856994629, -19.25959587097168, -19.64748191833496, -19.830839157104492, -19.55939292907715, -19.510013580322266, -19.771268844604492, -19.477453231811523, 21.014442443847656, 21.01875877380371, 21.014751434326172, 21.02218246459961, 21.018726348876953, -34.7541389465332, -34.75838088989258, -44.35215759277344, -44.35417938232422, -44.35533142089844, -44.3489990234375, 23.116308212280273, 23.116008758544922, 23.13246726989746, 23.128582000732422, 23.128738403320312, -3.268699884414673, -3.276209831237793, -2.9686436653137207, -3.0327906608581543, -3.078014373779297, -2.992126226425171, -54.45542907714844, -54.45764923095703, -54.45448303222656, -5.214994430541992, -5.324438571929932, -5.1812825202941895, -5.841780185699463, -5.588702201843262, -5.81018590927124, -5.992255210876465, -5.4504523277282715, -5.917391300201416, 19.516084671020508, 19.53639030456543, 19.516597747802734, 19.517608642578125, 19.536191940307617, 4.3879923820495605, 4.643431663513184, 4.874138832092285, 4.80661678314209, 4.386302471160889, 4.539963245391846, 5.081382751464844, 5.046562671661377, 4.029664516448975, 4.032876014709473, -33.696231842041016, -34.20162582397461, -33.813697814941406, -33.68760299682617, -34.37712097167969, -33.885520935058594, -34.1035041809082, -34.528079986572266, -34.40664291381836, -3.97928786277771, -4.002251625061035, -3.9830708503723145, -3.9774272441864014, -3.9920456409454346, 0.6240297555923462, 0.6299149394035339, 0.6245612502098083, 14.754414558410645, 14.753911018371582, -10.065768241882324, -10.527876853942871, -10.335932731628418, -9.57887077331543, -9.763535499572754, -9.999625205993652, -9.6849946975708, -9.566462516784668, -10.2764892578125, -10.45286750793457, -5.479043960571289, -5.477899551391602, -5.478900909423828, -5.48048210144043, 12.779082298278809, -17.70671844482422, -17.744197845458984, -17.702316284179688, -17.742536544799805, -17.707124710083008, -20.93585777282715, -20.93665313720703, -20.633319854736328, -20.759273529052734, -20.69408416748047, -20.39215660095215, 15.015809059143066, 15.015778541564941, 15.02795124053955, 15.029789924621582, 15.031014442443848, 3.425910472869873, 3.4152750968933105, 3.408923387527466, 3.4254536628723145, 3.414301633834839, 3.9991567134857178, 3.99899959564209, 3.9927053451538086, 25.70205307006836, 25.701370239257812, 25.7038631439209, 25.716358184814453, -22.74942970275879, -22.6746768951416, -23.296579360961914, -23.007549285888672, -23.232913970947266, -23.03936004638672, -22.744829177856445, -23.363330841064453, -46.83793258666992, -46.51192855834961, -46.38588333129883, -46.4818000793457, -46.73876190185547, -46.61268997192383, -46.87735366821289, 12.541228294372559, 12.545148849487305, 12.542488098144531, 5.525738716125488, -0.666083037853241, -0.6896097660064697, -0.6464848518371582, -0.6849004030227661, -6.837101936340332, -6.837188720703125, -12.867753982543945, -12.870448112487793, -12.87316608428955, -12.863214492797852, -12.860433578491211, 4.128572463989258, -40.68437194824219, -41.17593002319336, -41.00885772705078, -40.91557693481445, -41.13207244873047, -40.776947021484375, -40.61848449707031, -33.27201843261719, -33.27245330810547, -33.27284622192383, -57.87062072753906, -9.34343147277832, -9.344001770019531, -9.340361595153809, -9.339327812194824, -47.296974182128906, -47.30055618286133, -37.84874725341797, -37.848854064941406, 3.0902435779571533, 1.7777507305145264, 1.6145280599594116, 1.7982213497161865, 1.51969313621521, 1.507896065711975, 1.6925978660583496, -52.13357162475586, -52.12623596191406, -52.13442611694336, -52.119266510009766, -52.1289176940918, 0.03377633914351463, 0.44756683707237244, 0.9032312631607056, 0.15730483829975128, 0.7627853155136108, 0.4680038094520569, 0.7006529569625854, 0.9010390043258667, -0.04280976951122284, 0.2129075825214386, 9.040034294128418, -58.03909683227539, -58.02412796020508, -58.02774429321289, -58.032772064208984, -52.453792572021484, -52.45466613769531, -52.455265045166016, -52.45302200317383, -64.5255355834961, -65.22887420654297, -64.8541259765625, -64.60836029052734, -65.15137481689453, -65.38077545166016, -64.71974182128906, -65.00115966796875, -65.38782501220703, 4.057638168334961, 4.056006908416748, 4.052893161773682, -55.83613967895508, -25.252897262573242, -25.25307846069336, -65.19004821777344, -65.1804428100586, -65.1854019165039, -65.1884536743164, -56.89091873168945, -56.89566421508789, -49.766849517822266, -49.776668548583984, -49.76902770996094, -49.79204559326172, -49.73958206176758, -60.75355911254883, -60.77012634277344, -60.67805099487305, -60.68153381347656, -60.67255783081055, -70.58096313476562, -70.56818389892578, -70.49311828613281, -70.45633697509766, -70.55171966552734, -71.75516510009766, -48.498043060302734, -67.8709945678711, -68.06137084960938, -67.869140625, -67.62189483642578, -67.38013458251953, -68.04399871826172, -67.56253814697266, -67.39675903320312, -63.39543533325195, -63.396156311035156, -47.06116485595703, -50.60409164428711, -50.60587692260742, -50.601593017578125, 6.235417366027832, -15.089536666870117, -14.96912956237793, -15.012476921081543, -15.332449913024902, -15.543253898620605, -15.413955688476562, -15.729859352111816, -15.62963581085205, -14.592277526855469, -14.593019485473633, -26.06534194946289, -38.52705764770508, -38.51149368286133, 21.112993240356445, 21.182252883911133, 20.90458869934082, 21.464303970336914, 21.588134765625, 20.741323471069336, 20.869428634643555, 21.384780883789062, 21.652090072631836, 32.56788635253906, 32.32442092895508, 32.82233810424805, 32.58119201660156, 33.00376892089844, 33.009517669677734, 32.874454498291016, 31.839994430541992, 31.822965621948242, 32.25719451904297, 31.995155334472656, 32.0140380859375, -21.0692081451416, 12.000478744506836, 11.998671531677246, -28.225128173828125, -28.22435188293457, -28.223079681396484, -28.21302032470703, -28.22294807434082, 26.650436401367188, 26.71042251586914, 26.541561126708984, 26.360599517822266, 26.018096923828125, 25.916732788085938, 26.0217227935791, 26.201248168945312, 26.79701042175293, 22.952205657958984, 9.003768920898438, 8.91420841217041, 8.65842342376709, 8.48921012878418, 8.727873802185059, 8.454588890075684, 8.81289005279541, 24.353986740112305, 24.353757858276367, 24.353864669799805, 24.144853591918945, 5.315511703491211, 5.3551812171936035, 5.345043182373047, 5.407382965087891, 5.339136123657227, -46.514156341552734, -47.360450744628906, -47.14832305908203, -46.87432861328125, -47.2081184387207, -46.96484375, -46.68968963623047, -47.336238861083984, -46.59156799316406, 10.548131942749023, 10.559576034545898, 10.368062973022461, 10.648305892944336, 10.286441802978516, 10.402506828308105, -16.5687198638916, -63.4290771484375, -63.42229080200195, -58.20360565185547, -58.17733383178711, -58.1947021484375, -58.16459655761719, -58.17775344848633, -3.7078065872192383, -4.323894500732422, -4.020966529846191, -3.4456288814544678, -4.229516506195068, -3.656536102294922, -3.9565958976745605, -3.4085915088653564, -4.262689590454102, -3.4956657886505127, 9.03604507446289, 9.044646263122559, 9.046369552612305, 9.060202598571777, 9.042214393615723, -22.461328506469727, -22.450204849243164, -22.4620361328125, -22.47696304321289, 21.704755783081055, 22.654081344604492, 22.87489128112793, 22.837860107421875, 22.682125091552734, 23.008441925048828, 22.685321807861328, 22.971527099609375, 22.319419860839844, -11.821859359741211, -11.4562406539917, -11.430265426635742, -11.802940368652344, -11.55270004272461, -11.346612930297852, -11.634156227111816, -55.61581802368164, -56.44009780883789, -56.55924987792969, -56.459171295166016, -55.809165954589844, -55.99927520751953, -55.95399475097656, -56.11747741699219, -55.57479476928711, -56.44060516357422, -3.503048896789551, -3.6055238246917725, -3.818509578704834, -3.767317295074463, -3.6996099948883057, -3.514622449874878, 3.8653600215911865, -27.51788902282715, -27.517377853393555, -10.292840957641602, -10.293699264526367, -4.3271379470825195, -4.328660488128662, -6.150954723358154, -6.146858215332031, -6.1473164558410645, -6.151699542999268, -7.847476959228516, -7.846634864807129, -7.847339153289795, -7.846627235412598, 22.062091827392578, -42.20407485961914, -42.21059036254883, -42.205562591552734, -42.2010383605957, -42.17451095581055, -54.45176315307617, -54.45507049560547, -54.44932174682617, -54.437103271484375, -54.458099365234375, 0.11311550438404083, 0.11269814521074295, -0.3183369040489197, -0.31079035997390747, -0.08086839318275452, -0.07864727824926376, -0.40902724862098694, -8.530174255371094, -8.875421524047852, -8.878767013549805, -8.87488079071045, -41.6385383605957, -41.63814926147461, 10.075909614562988, 13.474474906921387, 3.3136630058288574, 3.3146092891693115, -5.984489440917969, -5.942331314086914, -5.65389347076416, -5.974327087402344, -5.733998775482178, -5.71707820892334, -10.246761322021484, -10.247757911682129, 11.465141296386719, 16.85576820373535, 16.85823631286621, 16.855016708374023, 16.859519958496094, 11.282685279846191, 11.284430503845215, 11.282645225524902, 10.005130767822266, -10.744911193847656, -10.747952461242676, 2.1230387687683105, 2.279825210571289, 2.297940731048584, 2.254340410232544, 1.9931429624557495, 2.446924924850464, 1.924859642982483, -23.303342819213867, 0.5535921454429626, 0.556233286857605, 0.5561249256134033, -39.5833625793457, -39.5936164855957, -39.60243225097656, -39.60811233520508, -39.64350128173828, 21.599185943603516, 21.599828720092773, 21.600046157836914, 9.1586275100708, 5.82058572769165, 5.842195987701416, 5.822265148162842, 5.836764335632324, 5.831743240356445, 24.477479934692383, 24.477523803710938, 3.4941024780273438, 3.5356369018554688, 3.805636405944824, 3.662766933441162, 3.6072356700897217, 3.785088300704956, -52.43108367919922, -52.432403564453125, -52.434940338134766, -29.51155662536621, -29.511749267578125, -29.512527465820312, -29.513591766357422, -29.512319564819336, -26.14444351196289, -26.14342498779297, -26.1442928314209, -26.144636154174805, -25.476295471191406, -26.19039535522461, -20.268325805664062, -20.267528533935547, -26.666950225830078, 13.385660171508789, 13.392659187316895, 13.391640663146973, 13.394041061401367, -19.978500366210938, -19.98379135131836, -19.978111267089844, 8.24605655670166, 8.247496604919434, 8.25313949584961, 5.33571195602417, 1.570122241973877, 1.56509268283844, -50.80742263793945, -50.81294631958008, -50.81252670288086, -50.81089401245117, 3.611614227294922, 3.6118197441101074, 23.973388671875, 24.076915740966797, 24.42821502685547, 24.45101547241211, 24.34916114807129, 24.315494537353516, 24.02821922302246, 24.565372467041016, -26.899677276611328, -26.903812408447266, -26.903318405151367, 14.372613906860352, 14.367293357849121, 14.367090225219727, 14.371456146240234, -61.98445510864258, -62.25145721435547, -62.47407913208008, -62.25614929199219, -61.860660552978516, -62.614986419677734, -62.49680709838867, -62.014583587646484, -18.111356735229492, 22.44692039489746, 22.447153091430664, 22.442472457885742, 22.44460678100586, -20.74327278137207, -20.745454788208008, 12.831258773803711, 12.830989837646484, 12.831042289733887, -5.251822471618652, 16.589445114135742, -7.01567268371582, -6.808887958526611, -6.946660995483398, -6.7887067794799805, -7.075699329376221, -6.86447286605835, -17.10204315185547, -17.101015090942383, -17.10253143310547, -17.102405548095703, -17.099790573120117, -7.8117289543151855, -7.814805030822754, -7.818292617797852, -7.8097147941589355, 10.708316802978516, -57.271305084228516, -57.26393508911133, -57.27133560180664, -57.271034240722656, -57.27096176147461, -43.27741622924805, -43.27329635620117, -44.94085693359375, -44.941097259521484, -44.939422607421875, -44.94015121459961, 0.41917937994003296, 0.42184415459632874, 0.42084866762161255, -22.90757179260254, -22.90688133239746, -22.902053833007812, -43.78087615966797, -43.784114837646484, -43.79555130004883, -43.8066520690918, -43.784976959228516, -48.05199432373047, -48.004432678222656, -47.818328857421875, -47.98826217651367, -48.12126541137695, -47.817039489746094, 0.24960333108901978, 0.24967969954013824, 0.2483009696006775, -36.90621566772461, -36.90498733520508, -36.90475845336914, -36.89705276489258, -9.339715957641602, -9.337632179260254, -9.334293365478516, -9.333635330200195, -50.4771614074707, -50.47110366821289, -50.47177505493164, -50.45993423461914, -50.468021392822266, -16.25105857849121, -16.249670028686523, -16.253883361816406, -16.240957260131836, 23.78154754638672, 22.668743133544922, -47.52705001831055, -46.826332092285156, -47.363277435302734, -46.66850662231445, -47.09300994873047, -47.45309829711914, -46.578468322753906, -46.5025520324707, -46.94593048095703, -47.17988586425781, 16.074325561523438, 15.986766815185547, 16.02914810180664, 15.979602813720703, -9.244939804077148, -9.459209442138672, -9.525348663330078, -9.197150230407715, -9.53021240234375, -8.741883277893066, -8.908061981201172, -8.695394515991211, -8.926861763000488, -31.140836715698242, -31.142518997192383, -31.14365577697754, -31.142181396484375, -31.145404815673828, 11.921862602233887, 12.160572052001953, 12.029277801513672, 12.316140174865723, 12.281342506408691, 12.100750923156738, -7.097792148590088, -7.1051812171936035, -7.119196891784668, -7.1125311851501465, -7.107389450073242, -17.501123428344727, -10.500753402709961, -10.497730255126953, -10.49947738647461, -51.95438003540039, -52.382293701171875, -51.78439712524414, -51.761043548583984, -52.12165832519531, -52.0570068359375, -52.146820068359375, -13.595605850219727, -14.100326538085938, -14.241900444030762, -13.86053466796875, -13.590537071228027, -13.747114181518555, -13.999796867370605, -14.268654823303223, -17.36631965637207, -17.19453239440918, -17.48020362854004, -17.363676071166992, -17.15692901611328, -17.120025634765625, 15.651924133300781, 15.652823448181152, 1.3848296403884888, 1.3827440738677979, -15.755619049072266, -15.746484756469727, -15.74909496307373, -15.750643730163574, -15.750755310058594, -18.4794979095459, 11.25140380859375, -15.106375694274902, -6.372767925262451, -6.519701957702637, -6.875925540924072, -6.731739044189453, -6.736457347869873, -6.904006004333496, -6.435727119445801, -27.11993980407715, -26.51466941833496, -26.44937515258789, -26.837587356567383, -26.962995529174805, -27.03318214416504, -26.39188575744629, -26.698883056640625, 4.984915256500244, 11.247806549072266, 11.13890266418457, 11.491522789001465, 11.357682228088379, 11.654806137084961, 11.601849555969238, 11.094734191894531, -11.371184349060059, -11.371822357177734, -11.360681533813477, -11.361397743225098, -11.354806900024414, 3.5660488605499268, -10.614304542541504, -10.614241600036621, -10.62957763671875, -56.6731071472168, -54.925315856933594, -54.9257698059082, -60.83208465576172, -60.83211898803711, 28.312219619750977, 28.312278747558594, 28.311586380004883, 28.312294006347656, -55.093116760253906, 18.950105667114258, 18.942703247070312, 18.94816780090332, 18.95065689086914, 18.94476890563965, -31.00737953186035, -31.005002975463867, -19.790851593017578, -19.789791107177734, -19.789403915405273, -19.797624588012695, -60.712493896484375, -60.71503829956055, -60.713287353515625, -57.738651275634766, -57.724151611328125, -57.72794723510742, -57.73098373413086, 8.475144386291504, 8.315611839294434, 8.373150825500488, 8.164812088012695, 8.155284881591797, 8.444578170776367, 14.958893775939941, 14.968539237976074, 14.96784496307373, 14.964698791503906, 18.776565551757812, 18.775903701782227, 15.890573501586914, 15.890604019165039, -37.54127883911133, -37.546539306640625, -29.707714080810547, -29.77176284790039, -29.841392517089844, -29.863513946533203, -29.845125198364258, 12.486668586730957, 12.488693237304688, 12.489386558532715, 12.490241050720215, 6.677422046661377, -60.37477111816406, -26.067602157592773, -25.742372512817383, -25.74478530883789, -34.2813835144043, -34.280460357666016, -5.410487174987793, -5.484710216522217, -6.743513584136963, -6.746727466583252, -16.344520568847656, -15.843527793884277, -16.029876708984375, -16.311504364013672, -16.25292205810547, -15.997291564941406, -15.816859245300293, -68.20844268798828, -68.20467376708984, -68.20362854003906, -68.20428466796875, -68.20951843261719, -63.59611129760742, -33.69157409667969, -33.57405471801758, -33.616943359375, -33.975257873535156, -34.09513473510742, -34.031028747558594, -33.83718490600586, -10.965885162353516, -10.981391906738281, -10.699649810791016, -10.824625968933105, -10.782798767089844, -10.638372421264648, 9.29180908203125, -38.729251861572266, -38.570945739746094, -38.71137619018555, -38.21712875366211, -38.035316467285156, -38.431522369384766, -38.0672721862793, -38.39033126831055, -64.2486343383789, -64.2483901977539, -64.24852752685547, -64.24834442138672, -63.52492141723633, -63.382774353027344, -63.62936019897461, -63.69843673706055, -63.355098724365234, -63.65897750854492, -45.643898010253906, -45.64356231689453, -45.6444091796875, -6.111186504364014, -6.110682487487793, -23.565807342529297, -23.565982818603516, -48.05550765991211, -48.058753967285156, -12.51508903503418, -12.514734268188477, -33.91090393066406, -33.577415466308594, -34.107025146484375, -34.18293762207031, -33.85030746459961, -34.22393798828125, -33.686614990234375, -33.519405364990234, -37.65353775024414, -37.6534309387207, 3.740062713623047, 3.7442400455474854, 3.744046211242676, 4.14409875869751, -8.994057655334473, 18.659725189208984, -22.356401443481445, -22.357711791992188, -22.354808807373047, -10.963913917541504, 8.224335670471191, 8.223245620727539, 8.21993637084961, 10.15271282196045, 10.151826858520508, 10.15285587310791, -28.508148193359375, -28.72815704345703, -28.928924560546875, -28.620750427246094, -28.41084098815918, -28.178300857543945, -28.23463249206543, -28.87276268005371, -41.52851104736328, -41.52909469604492, -2.694683074951172, -2.697195053100586, -15.884135246276855, -15.802911758422852, -15.909880638122559, -15.8931884765625, -15.85837173461914, 12.1902437210083, 12.315624237060547, 12.097739219665527, 12.210334777832031, 11.979430198669434, 12.087703704833984, -31.50810432434082, -31.50511932373047, -31.5111141204834, -31.511566162109375, -31.50833511352539, 9.788679122924805, 10.110432624816895, 9.954949378967285, 14.9107084274292, 13.252981185913086, 13.252169609069824, 13.254631042480469, -35.92222213745117, -35.9213981628418, 10.167903900146484, -42.39931106567383, -42.399864196777344, -42.400142669677734, -60.82884216308594, -59.594913482666016, -59.59376525878906, -59.31385803222656, 6.677526950836182, 6.677916526794434, 13.84874153137207, 13.850943565368652, 13.84062385559082, 13.84172534942627, 13.84252643585205, -4.282179355621338, -4.282599449157715, 0.3869257867336273, 12.832763671875, -7.454047679901123, -7.449394226074219, -7.457730293273926, -7.4590253829956055, -15.222578048706055, -15.212117195129395, -15.160901069641113, -15.182815551757812, -15.175369262695312, -61.024513244628906, -63.69906234741211, -63.71110153198242, -63.70718002319336, -63.71381378173828, -63.949058532714844, -60.58774948120117, -60.6015625, -60.32884216308594, -60.61634063720703, -60.332279205322266, -60.329647064208984, -42.887001037597656, -42.936134338378906, -42.907081604003906, -42.89353942871094, -42.91228485107422, -39.551353454589844, -39.551639556884766, -39.55238342285156, -39.5519905090332, -43.45033645629883, -43.45110321044922, -43.44938659667969, -43.45255661010742, -36.511451721191406, -36.51188278198242, 0.2971312999725342, 0.29829561710357666, 19.549253463745117, 19.08359146118164, 19.741037368774414, 19.35431671142578, 19.013877868652344, 19.427513122558594, 19.675180435180664, 19.10927391052246, -50.96442413330078, -50.067161560058594, -50.167598724365234, -35.48662185668945, -10.021904945373535, 10.931439399719238, -31.322214126586914, -31.318532943725586, -12.73622989654541, -31.678556442260742, 11.203988075256348, 11.203958511352539, 11.227036476135254, 11.235265731811523, -6.904852867126465, -6.905430793762207, -6.905808448791504, -7.9446539878845215, -7.944716453552246, -7.945710182189941, -7.944148540496826, -8.191888809204102, -8.192843437194824, 2.678701877593994, 7.625016212463379, 7.628201484680176, 7.636503219604492, 7.630942344665527, 23.330265045166016, 23.332908630371094, 23.33187484741211, 23.332874298095703, -21.119800567626953, -21.138242721557617, -21.146650314331055, -21.133689880371094, -21.143014907836914, -39.742923736572266, -60.10016632080078, -60.06216049194336, -60.07659149169922, -60.078941345214844, -60.079627990722656, -63.87070083618164, -63.82933044433594, -64.08505249023438, -64.13878631591797, -63.88064193725586, -64.05622100830078, 7.359988212585449, 7.358536720275879, 7.359809875488281, 1.0549017190933228, 1.058767557144165, -16.96685791015625, -58.71111297607422, -58.70831298828125, -25.61821174621582, -25.855731964111328, -25.862937927246094, -25.42840576171875, -25.63933753967285, -25.422956466674805, -25.96933364868164, 21.871400833129883, 21.882171630859375, 21.8466854095459, 21.876964569091797, 21.86018943786621, 2.08731746673584, 2.084014654159546, 10.558155059814453, -53.51179885864258, -54.048458099365234, -54.05021286010742, -53.85361099243164, -53.892642974853516, -53.58709716796875, -53.63858413696289, -64.06803131103516, -63.908626556396484, -63.68824768066406, -63.51429748535156, -63.99873733520508, -63.77212905883789, -63.56523132324219, -14.23972225189209, -14.240264892578125, -14.242884635925293, 10.333036422729492, 10.333346366882324, -38.038490295410156, -38.03743362426758, -11.941420555114746, -56.69660949707031, -56.43345642089844, -56.61713790893555, -57.05439376831055, -56.94187545776367, -56.89845657348633, -56.38780975341797, -56.300106048583984, 13.6294584274292, -2.2375152111053467, -22.587581634521484, -22.58746337890625, 14.323687553405762, 14.331825256347656, 14.354517936706543, 14.348875045776367, 14.395720481872559, -39.51643371582031, -29.00905990600586, -28.725196838378906, -28.77578353881836, -28.775949478149414, -28.996015548706055, -28.814306259155273, -42.3772087097168, -42.37689208984375, -42.37672805786133, -42.37638473510742, 10.325542449951172, 10.32380485534668, -6.758334159851074, -6.761075496673584, -6.760504245758057, -6.76297664642334, -40.606712341308594, -40.60508346557617, -40.61124801635742, -4.945362091064453, -61.06270980834961, -52.90327072143555, -52.90538787841797, -52.906925201416016, -57.89860153198242, -57.90040588378906, -57.916629791259766, -57.90595626831055, -69.11897277832031, -69.12520599365234, -69.12963104248047, -69.14383697509766, -58.713809967041016, -58.7151985168457, -58.71522903442383, -56.7585334777832, -56.15938949584961, -21.997802734375, -21.83837127685547, -22.03680419921875, -21.775232315063477, -21.825849533081055, -22.09166145324707, 10.477498054504395, 10.400519371032715, 10.262097358703613, 10.503884315490723, 10.273590087890625, 10.445274353027344, -66.8909683227539, -66.8964614868164, -66.89068603515625, 9.131399154663086, 9.227867126464844, 9.608245849609375, 9.560931205749512, 9.306675910949707, 9.066203117370605, 9.438796997070312, -48.08914566040039, -62.206844329833984, -62.200286865234375, -62.200225830078125, -14.774711608886719, -14.770051956176758, -14.786432266235352, -14.782983779907227, -14.774290084838867, -31.653705596923828, -36.980125427246094, -44.349693298339844, -44.34103012084961, -44.35206604003906, -44.33806610107422, -17.752960205078125, -17.75241470336914, -17.757099151611328, -17.747058868408203, -28.952077865600586, -28.945486068725586, -28.956897735595703, -28.956375122070312, -15.358386039733887, -15.353671073913574, -15.361281394958496, -15.351487159729004, -15.343894004821777, 4.714502811431885, 4.9887003898620605, 4.804062843322754, 5.15646505355835, 4.923381328582764, 4.962911605834961, -3.091036558151245, -3.090825319290161, -18.099483489990234, -18.112123489379883, -18.09318733215332, -18.111907958984375, -14.688825607299805, -14.538540840148926, -14.299317359924316, -14.337711334228516, -14.815533638000488, -14.975482940673828, -14.466683387756348, -14.952736854553223, -13.293607711791992, -13.042061805725098, -12.775985717773438, -13.634769439697266, -13.521761894226074, -13.263656616210938, -12.952322006225586, -13.563087463378906, -12.813916206359863, -46.36420440673828, -46.368350982666016, -46.36145782470703, -46.36210250854492, -46.36933517456055, -56.07087707519531, -12.314374923706055, -12.314844131469727, 12.398545265197754, -25.324207305908203, -25.32459831237793, -25.32564926147461, 23.649797439575195, 23.64925765991211, 23.64340591430664, 7.435271263122559, 7.4091668128967285, 7.414517402648926, 7.409411430358887, -10.784873962402344, -10.7341947555542, -38.71002197265625, -38.71083068847656, -38.70957565307617, -38.71027374267578, 16.548364639282227, 16.553056716918945, 16.556907653808594, -40.726871490478516, -40.41619873046875, -40.20418167114258, -40.87351608276367, -40.61463928222656, -40.970252990722656, -40.734188079833984, -40.26972198486328, -60.970394134521484, -60.97218704223633, -61.686397552490234, -61.67934799194336, 17.61966896057129, -12.593852043151855, -12.59571361541748, -12.606873512268066, -12.598134994506836, 22.108257293701172, -33.103172302246094, -32.26847457885742, -33.500396728515625, -33.379940032958984, -31.56306266784668, -31.559171676635742, -31.563657760620117, -31.55913543701172, -7.861734390258789, -7.914711952209473, -7.903069496154785, -7.8621392250061035, -7.859370708465576, -37.925540924072266, -37.9260139465332, -37.925296783447266, -37.92491149902344, -2.920363187789917, -2.92573618888855, -2.923532009124756, 6.63681697845459, 6.6368088722229, -73.71869659423828, -74.39083862304688, -73.89617919921875, -73.83633422851562, -74.16877746582031, -74.4381103515625, -73.79354095458984, -74.25989532470703, -74.5290298461914, -29.44828987121582, -29.44973373413086, -29.452014923095703, -23.69202995300293, -23.694538116455078, -23.69133758544922, -23.69902229309082, -23.665298461914062, 26.732439041137695, 26.255809783935547, 26.72085189819336, 27.006927490234375, 26.98185157775879, 27.17838478088379, 27.184123992919922, 26.255008697509766, 26.433942794799805, 26.398193359375, -1.4631564617156982, -2.0807673931121826, -2.109511375427246, -2.034956693649292, -1.643190860748291, -1.098846673965454, -1.2552950382232666, -1.0877041816711426, -1.1651872396469116, -1.711522102355957, -1.8688719272613525, -34.13358688354492, -34.131935119628906, -32.48831558227539, -32.4871711730957, -32.483943939208984, 11.574583053588867, -44.878883361816406, -44.680580139160156, -44.54521560668945, -44.510921478271484, -44.757198333740234, -44.76645278930664, -70.60704040527344, -70.4699478149414, -58.79962158203125, -68.65261840820312, -68.69153594970703, -68.68538665771484, -68.63492584228516, -68.66101837158203, -18.63035774230957, -18.630281448364258, -18.632183074951172, 9.23144245147705, 9.234416961669922, 6.9486565589904785, 6.951380252838135, 6.948786735534668, 12.324705123901367, 12.32500171661377, -26.295886993408203, -26.293813705444336, -67.51423645019531, -67.50902557373047, -67.51679992675781, -13.990531921386719, -13.990288734436035, -13.99067211151123, -74.88426971435547, -75.06077575683594, -74.64924621582031, -74.60863494873047, -74.75909423828125, -75.1240463256836, -75.17537689208984, 1.8373706340789795, -2.3988356590270996, -2.3978402614593506, -2.3997175693511963, -2.403235912322998, 15.508713722229004, 15.503201484680176, 15.518051147460938, 19.19660758972168, 19.207592010498047, 19.191099166870117, 19.194103240966797, -2.014946937561035, -51.42313766479492, -51.48221206665039, -51.50404739379883, -51.718772888183594, -51.392723083496094, -51.656829833984375, 24.34108543395996, -1.947666883468628, -1.9471527338027954, -1.9479432106018066, -1.9480937719345093, -13.688237190246582, -13.902804374694824, -13.869246482849121, -13.867380142211914, -13.714706420898438, -14.013772010803223, -69.97193908691406, -69.59896850585938, -69.76571655273438, -69.88774108886719, -70.2620620727539, -69.55244445800781, -70.21824645996094, -70.18151092529297, -69.48090362548828, -68.66361236572266, -0.6842813491821289, -0.681919276714325, -0.6847624182701111, 12.793574333190918, -64.030029296875, -64.0291519165039, -64.02894592285156, 18.78449821472168, 18.759483337402344, 18.749286651611328, 18.70789337158203, 18.734590530395508, -66.60057067871094, -66.60079956054688, -71.56140899658203, -71.56015014648438, -71.55998992919922, -16.42772102355957, -16.70086097717285, -16.430152893066406, -16.610769271850586, -16.706754684448242, -16.49740219116211, 6.9606852531433105, 7.0034894943237305, 7.035506248474121, 6.7987847328186035, 6.725658893585205, 6.733903408050537, 9.696547508239746, 9.696070671081543, 9.69472599029541, 20.120067596435547, 19.9486026763916, 19.97699737548828, 19.874601364135742, 19.847043991088867, 20.13687515258789, -29.880834579467773, -13.434200286865234, -13.21408462524414, -13.079896926879883, -13.198468208312988, -13.180018424987793, -13.31921672821045, 12.88471794128418, 12.884405136108398, 12.888836860656738, 12.885273933410645, -31.919118881225586, 1.7155766487121582, 1.7177070379257202, 1.7088819742202759, 1.7074626684188843, 1.7065359354019165, -3.832618236541748, 23.17136573791504, 23.166664123535156, 23.162588119506836, 23.153064727783203, -23.753393173217773, -23.75490379333496, -23.760515213012695, -23.75670623779297, -26.812911987304688, -26.81266212463379, -25.151025772094727, -31.25493621826172, -31.25486946105957, 4.614198684692383, 4.35776424407959, 4.537964344024658, 4.382148265838623, 4.6024169921875, 4.3679914474487305, 15.136275291442871, 15.192586898803711, 14.60908317565918, 14.515890121459961, 14.918002128601074, 14.824934959411621, 14.55881118774414, 15.123894691467285, -21.82978057861328, -21.828632354736328, -21.829904556274414, -38.527156829833984, -38.52360534667969, -38.5373420715332, -66.375, 14.80654525756836, 14.527073860168457, 14.681469917297363, 14.626154899597168, 14.903265953063965, 14.803765296936035, 10.511466026306152, -62.85231399536133, -62.854312896728516, -62.84885025024414, -62.843990325927734, -65.01849365234375, -65.04086303710938, -65.02104949951172, -65.00076293945312, -65.0142822265625, 3.5364906787872314, 3.537658214569092, 7.743208885192871, 7.730005264282227, 7.733132362365723, 7.725170135498047, 7.736743450164795, 15.357967376708984, -21.674589157104492, -21.673192977905273, -21.67369270324707, 6.22451114654541, 6.223665237426758, -26.414087295532227, -26.412384033203125, 10.984674453735352, 11.031102180480957, 10.97566032409668, 11.019796371459961, 11.01504898071289, -11.826008796691895, 15.758673667907715, 15.758585929870605, 15.758808135986328, -26.26375961303711, 13.19601058959961, 13.195222854614258, -40.1959342956543, -20.548673629760742, -20.533201217651367, -20.545686721801758, -20.540372848510742, -20.545082092285156, -16.21440315246582, -16.21455192565918, -15.51506233215332, -15.51744556427002, -15.495964050292969, -15.51413345336914, -63.41346740722656, -63.41600799560547, -74.71138763427734, -74.71638488769531, -74.7139892578125, -74.71527099609375, -74.7126235961914, -73.77288818359375, -73.77259063720703, -73.77193450927734, -31.162431716918945, -30.882938385009766, -31.050857543945312, -31.102458953857422, -30.92737579345703, -30.824872970581055, -23.274465560913086, -23.27474594116211, -23.273426055908203, -29.317319869995117, -29.318452835083008, -29.317399978637695, -32.490543365478516, -32.59402084350586, -32.42753219604492, -32.55759811401367, -32.37129592895508, -32.69107437133789, -12.106900215148926, 5.268308162689209, 5.285607814788818, 5.299559593200684, -60.29117965698242, 8.361554145812988, 8.36322021484375, 8.10783863067627, 6.807921886444092, 6.809138298034668, 6.807848930358887, -50.65309524536133, -50.655147552490234, -50.65590286254883, 4.168941497802734, -51.677894592285156, 3.550462007522583, 4.13480281829834, 3.296396493911743, 3.7737202644348145, 4.032591819763184, 4.033749580383301, 3.304417610168457, 3.472301483154297, 3.7310631275177, 0.2156933695077896, 0.21454402804374695, 0.21309591829776764, -37.844032287597656, -37.84381103515625, -37.85132598876953, -48.83259582519531, -48.829410552978516, 0.6048681735992432, 0.602332353591919, 0.6024385690689087, 0.6032942533493042, -10.460880279541016, -10.465855598449707, -10.46719741821289, -26.53402328491211, -26.533193588256836, -39.14055633544922, -39.141517639160156, -39.143577575683594, -4.630090236663818, -4.636085033416748, -4.634174346923828, 5.97052001953125, -36.777931213378906, -36.77778625488281, -36.7770881652832, -36.77738571166992, -36.778255462646484, -47.05340576171875, -47.06605529785156, -47.059024810791016, -47.04941940307617, -47.03755187988281, 14.94761848449707, 14.920146942138672, 14.507064819335938, 14.228759765625, 14.727867126464844, 14.42956829071045, 14.182744026184082, 14.775954246520996, 14.116118431091309, -26.917078018188477, -21.612327575683594, -21.61187744140625, -21.612274169921875, -63.586483001708984, -5.423588752746582, 21.541709899902344, 23.06288719177246, -26.22901153564453, -26.222148895263672, -59.94818115234375, -59.92826843261719, -59.94501495361328, -59.94598388671875, -59.972293853759766, 6.338867664337158, 6.336419105529785, 6.340895652770996, -29.89619255065918, -29.90003204345703, -28.70121955871582, -32.03236389160156, -32.03085708618164, -48.773258209228516, -48.77297592163086, -48.772762298583984, -48.773162841796875, 4.502254009246826, -3.0169200897216797, -3.016517162322998, -3.0156655311584473, -3.014995574951172, -30.852481842041016, -30.807783126831055, -31.358808517456055, -31.13585662841797, -31.322595596313477, -31.149080276489258, -30.759552001953125, -31.477121353149414, -29.491474151611328, -19.08061408996582, -19.069759368896484, -4.164778232574463, 1.7760272026062012, 1.7821723222732544, 1.7835849523544312, 1.7815669775009155, -24.41427230834961, -24.40819549560547, -24.398540496826172, -24.39463996887207, -24.390335083007812, 31.716354370117188, 31.716712951660156, -6.247402191162109, -5.967007637023926, -5.938083171844482, -6.112759113311768, -6.252727031707764, -6.086130142211914, -1.3094497919082642, -55.55604553222656, -55.96192169189453, 25.658832550048828, 15.13271713256836, 15.12988567352295, 15.128801345825195, 15.128372192382812, -47.60731887817383, -10.182089805603027, -10.1725492477417, -10.171238899230957, -8.196640014648438, -8.196233749389648, -15.613466262817383, -15.662379264831543, -15.525261878967285, -16.14585304260254, -16.16933822631836, -15.879556655883789, -16.257312774658203, -15.892128944396973, -67.68579864501953, -21.02730941772461, -21.025123596191406, -21.031599044799805, -21.03111457824707, -52.023780822753906, -60.5666618347168, -60.56923294067383, -60.568721771240234, 21.38077735900879, 21.379133224487305, 26.983030319213867, 26.983373641967773, 26.98339080810547, 26.983129501342773, -58.92685317993164 ], "y": [ 19.615699768066406, 19.578353881835938, 19.56269073486328, 19.608068466186523, 41.28982162475586, 41.35234451293945, 41.655216217041016, 41.66573715209961, 42.25960159301758, 41.800071716308594, 42.088436126708984, 42.234275817871094, 41.50304412841797, 42.188907623291016, 29.378488540649414, 29.379528045654297, 29.378686904907227, 29.380535125732422, 17.270790100097656, 17.33060646057129, 17.28412628173828, 17.26725959777832, 17.24688148498535, 23.120615005493164, 23.29633903503418, 23.15921974182129, 23.550708770751953, 23.33256721496582, 23.668794631958008, 23.599817276000977, 16.278268814086914, 16.911842346191406, 16.963712692260742, 16.47856903076172, 16.458641052246094, 16.707019805908203, 16.769603729248047, 16.26326560974121, -18.072223663330078, -17.714962005615234, -17.611141204833984, -17.51753807067871, -17.974977493286133, -17.78512954711914, -18.114604949951172, 39.314910888671875, 39.31538391113281, 39.31454849243164, 5.45222282409668, 17.783935546875, 18.538698196411133, 18.445417404174805, 18.214054107666016, 17.962711334228516, 18.11878204345703, 18.053421020507812, 18.524438858032227, 33.58551788330078, 33.587310791015625, 28.048828125, 28.00119400024414, 28.022733688354492, 36.26835250854492, 36.57929229736328, 36.8087158203125, 36.9649772644043, 36.9301872253418, 36.678043365478516, 36.300228118896484, 36.44358444213867, 32.12184143066406, -53.52337646484375, -53.4671516418457, -53.76904296875, -53.64047622680664, -53.86141586303711, -54.027496337890625, -53.958831787109375, 26.282405853271484, 14.230093955993652, 14.095026969909668, 13.578433990478516, 13.552642822265625, 13.811094284057617, 14.0676851272583, 13.559479713439941, 13.972908973693848, -17.911563873291016, -17.911212921142578, 30.242389678955078, 17.14500617980957, 17.169950485229492, 17.0700740814209, 17.319496154785156, 17.16207504272461, 17.397430419921875, 21.870765686035156, 21.913341522216797, 22.118587493896484, 22.063289642333984, 22.190187454223633, 21.575468063354492, 21.52533721923828, 21.555145263671875, 14.247730255126953, 14.246955871582031, 14.2372407913208, 14.252955436706543, -19.202116012573242, -19.202844619750977, -51.182559967041016, -51.025917053222656, -51.28550338745117, -51.47473907470703, -51.44845962524414, -50.77499008178711, -50.671966552734375, -51.05278396606445, -50.71173095703125, 15.883289337158203, 26.978958129882812, 23.916189193725586, 23.89486312866211, 23.955957412719727, 23.879182815551758, 23.879444122314453, 21.103492736816406, 21.021989822387695, 21.358562469482422, 21.620197296142578, 21.34636878967285, 20.984487533569336, 21.7039737701416, 21.543445587158203, -39.02962112426758, -39.046173095703125, -38.7376823425293, -39.11378860473633, -38.85429000854492, -38.84651565551758, 10.438827514648438, -58.41144943237305, -58.660247802734375, -58.96452713012695, -58.7503662109375, -59.05216979980469, -58.3015022277832, -58.45181655883789, -58.9362678527832, -13.338593482971191, -13.333050727844238, 9.964539527893066, 10.185064315795898, 10.184954643249512, 1.5900442600250244, 1.5900211334228516, 1.5900081396102905, 21.485576629638672, 21.487709045410156, -51.81793975830078, -51.81572341918945, -51.60102844238281, -38.643516540527344, -38.64380645751953, 19.485759735107422, -25.054697036743164, -25.613727569580078, -25.90918731689453, -25.15110969543457, -25.414566040039062, -25.731201171875, -25.952638626098633, -25.9692440032959, -25.342546463012695, 22.265003204345703, 22.304595947265625, 22.266159057617188, 22.26791000366211, 22.315412521362305, 21.797143936157227, 21.703685760498047, 21.46921730041504, 21.40131187438965, 21.06464958190918, 21.195098876953125, 21.155073165893555, 21.68206214904785, 8.656951904296875, 8.66891098022461, 8.667092323303223, 8.657218933105469, 2.797476053237915, 2.795121908187866, 2.7751567363739014, -35.326114654541016, -35.33585739135742, -35.34679412841797, -35.35205841064453, -35.324642181396484, 22.31337547302246, 21.588685989379883, 22.371187210083008, 21.798524856567383, 21.74531364440918, 22.491037368774414, 22.532258987426758, 22.097257614135742, 21.59651756286621, 22.01993179321289, 24.93752670288086, 24.907100677490234, 24.94779396057129, 24.94810676574707, 24.912691116333008, 38.61061096191406, 38.6085090637207, 38.60810089111328, 50.59627914428711, 51.2478141784668, 50.88981246948242, 51.13763427734375, 50.611083984375, 50.398887634277344, 51.14272689819336, 50.400489807128906, 50.86909484863281, 26.62944221496582, 26.34125328063965, 26.240768432617188, 27.190793991088867, 27.013992309570312, 27.211650848388672, 26.68583869934082, 27.269569396972656, 26.422161102294922, 26.938817977905273, 26.24526596069336, -22.084138870239258, 20.964096069335938, -13.321735382080078, 23.128860473632812, 23.129323959350586, 23.129138946533203, 28.859342575073242, -49.30814743041992, -49.970123291015625, -49.795372009277344, -49.95668411254883, -49.338253021240234, -49.486568450927734, -49.75401306152344, -49.573848724365234, 31.59119415283203, 31.7225341796875, 31.703258514404297, 32.05325698852539, 31.7069034576416, 31.841228485107422, 32.039852142333984, 18.4599666595459, 18.084314346313477, 18.391223907470703, 18.657838821411133, 18.088529586791992, 18.38131332397461, 18.57831573486328, 43.139923095703125, 43.138587951660156, 43.14003372192383, 43.137229919433594, 43.13914489746094, -16.596200942993164, -16.59531593322754, 22.172283172607422, 22.176353454589844, 22.179351806640625, 22.168785095214844, -7.328705310821533, -7.326674461364746, -7.347386360168457, -7.326251029968262, -7.369787216186523, 20.111957550048828, 20.24652862548828, 20.217517852783203, 20.018869400024414, 20.006141662597656, 20.252830505371094, 27.96617889404297, 27.966535568237305, 27.9635009765625, 37.933528900146484, 38.431209564208984, 38.159400939941406, 38.4959831237793, 38.541900634765625, 37.74867630004883, 38.17307662963867, 37.69267272949219, 37.86213684082031, 17.426687240600586, 17.419557571411133, 17.423786163330078, 17.44196319580078, 17.42070198059082, -47.633663177490234, -47.87929916381836, -47.8117561340332, -47.18286895751953, -47.43963623046875, -47.19351577758789, -47.56377029418945, -47.33882141113281, -54.38703918457031, -54.37321090698242, -19.587642669677734, -19.73521614074707, -19.085710525512695, -19.237403869628906, -19.12386703491211, -19.793624877929688, -18.917041778564453, -19.28270721435547, -19.675552368164062, 13.466168403625488, 13.485111236572266, 13.475837707519531, 13.496359825134277, 13.46780014038086, 12.39631175994873, 12.400782585144043, 12.39777946472168, 29.72053337097168, 29.721115112304688, -23.193052291870117, -23.515684127807617, -23.351829528808594, -23.490182876586914, -23.345279693603516, -24.227420806884766, -24.129987716674805, -23.8349609375, -24.070886611938477, -23.968381881713867, 8.533242225646973, 8.532602310180664, 8.533222198486328, 8.537431716918945, 16.43352699279785, 15.081089973449707, 14.996771812438965, 15.039948463439941, 15.039217948913574, 15.013532638549805, 10.377174377441406, 10.415907859802246, 10.244771003723145, 10.217440605163574, 10.399816513061523, 10.205963134765625, -45.74216842651367, -45.74730682373047, -45.741817474365234, -45.740562438964844, -45.740760803222656, 10.377479553222656, 10.38703727722168, 10.392452239990234, 10.370540618896484, 10.392964363098145, 1.64154052734375, 1.6382131576538086, 1.6315724849700928, -26.38961410522461, -26.39211654663086, -26.38745880126953, -26.37983512878418, 7.973665237426758, 8.174388885498047, 8.041230201721191, 7.890689373016357, 8.534941673278809, 8.620923042297363, 8.478525161743164, 8.24081802368164, 24.613622665405273, 24.952003479003906, 24.790090560913086, 24.449861526489258, 24.480419158935547, 25.047170639038086, 24.84228515625, 14.366753578186035, 14.355749130249023, 14.349175453186035, 19.448162078857422, 31.79884147644043, 31.780868530273438, 31.823060989379883, 31.799461364746094, 45.0407829284668, 45.040771484375, 42.43040084838867, 42.41851806640625, 42.42902374267578, 42.42851257324219, 42.42464828491211, -52.53044509887695, -3.155938148498535, -2.8796818256378174, -2.692490339279175, -3.250364065170288, -3.1285879611968994, -2.6988611221313477, -2.908132314682007, 33.11275863647461, 33.112552642822266, 33.11207962036133, 18.52277374267578, -6.003015995025635, -6.003298759460449, -6.001523971557617, -6.0045976638793945, 20.889053344726562, 20.88602066040039, -29.078540802001953, -29.07904052734375, 18.078266143798828, -3.4970993995666504, -3.5381932258605957, -3.327721118927002, -3.271939992904663, -3.46517014503479, -3.2104032039642334, 11.029948234558105, 11.06947135925293, 11.062063217163086, 11.059599876403809, 11.057565689086914, 3.3656105995178223, 3.9214415550231934, 3.4019882678985596, 4.011246204376221, 3.0866987705230713, 3.073415517807007, 3.9658164978027344, 3.6711747646331787, 3.669630527496338, 3.1245009899139404, 17.559486389160156, 27.181766510009766, 27.178281784057617, 27.178625106811523, 27.184091567993164, 25.574501037597656, 25.576852798461914, 25.564151763916016, 25.580490112304688, 30.692625045776367, 30.44162368774414, 31.179794311523438, 31.03142547607422, 31.177473068237305, 30.684043884277344, 30.470535278320312, 30.34078025817871, 30.98609733581543, 38.46847152709961, 38.46990966796875, 38.47005081176758, 8.65318775177002, -32.61669921875, -32.61686325073242, 10.71679973602295, 10.71477222442627, 10.712583541870117, 10.719389915466309, 20.42066764831543, 20.420419692993164, 20.376850128173828, 20.35725212097168, 20.379533767700195, 20.37837028503418, 20.389883041381836, 15.15091323852539, 15.169249534606934, 15.278226852416992, 15.268529891967773, 15.309466361999512, -3.4194695949554443, -3.413484573364258, -3.441138505935669, -3.459097385406494, -3.4275295734405518, -3.5362589359283447, 12.4593505859375, 13.846491813659668, 13.352869987487793, 13.135689735412598, 13.131237030029297, 13.422636032104492, 13.599628448486328, 13.83968734741211, 13.582568168640137, 19.779544830322266, 19.78046417236328, -20.89499855041504, 15.194920539855957, 15.192988395690918, 15.193404197692871, 24.758909225463867, -8.548921585083008, -8.17263126373291, -8.092381477355957, -8.612166404724121, -7.9459404945373535, -7.908633232116699, -8.258086204528809, -8.47465705871582, -6.015981197357178, -6.016862392425537, -7.458787441253662, -16.627302169799805, -16.638513565063477, 9.4815034866333, 8.686928749084473, 8.767452239990234, 8.733052253723145, 9.254551887512207, 9.068819999694824, 9.326662063598633, 9.521208763122559, 9.01665210723877, -33.5537223815918, -33.41852951049805, -32.519500732421875, -32.37589645385742, -33.090675354003906, -32.76300048828125, -33.34613037109375, -32.79806137084961, -33.107383728027344, -32.37151336669922, -32.52617645263672, -33.4159049987793, 17.51405143737793, -48.12157440185547, -48.121917724609375, -18.398242950439453, -18.39564323425293, -18.39533042907715, -18.401718139648438, -18.396867752075195, 39.38861846923828, 39.976600646972656, 40.174774169921875, 39.38467025756836, 40.03343963623047, 39.68410110473633, 39.431175231933594, 40.16361999511719, 39.68256759643555, -1.0205796957015991, 27.122779846191406, 26.8991641998291, 27.365554809570312, 26.963308334350586, 26.82093620300293, 27.097187042236328, 27.3533992767334, -18.807035446166992, -18.80803108215332, -18.807857513427734, -3.0396621227264404, -35.32816696166992, -35.31455993652344, -35.30586242675781, -35.31141662597656, -35.32258605957031, 29.377277374267578, 29.331165313720703, 29.79332733154297, 29.823139190673828, 29.011152267456055, 28.968809127807617, 29.059791564941406, 29.547189712524414, 29.600854873657227, -10.023449897766113, -9.717480659484863, -9.696830749511719, -9.816121101379395, -9.817838668823242, -9.982062339782715, 15.562488555908203, 11.156473159790039, 11.161606788635254, 0.8024594187736511, 0.833760678768158, 0.8056886792182922, 0.8290128707885742, 0.8213921785354614, -12.169388771057129, -12.633644104003906, -13.01504898071289, -12.31503677368164, -12.885029792785645, -13.004104614257812, -12.17520523071289, -12.59722900390625, -12.286759376525879, -12.941996574401855, -54.278358459472656, -54.273651123046875, -54.274234771728516, -54.28263854980469, -54.26875305175781, 18.047138214111328, 18.04540252685547, 18.04578971862793, 18.05464744567871, -2.4231529235839844, -2.66336727142334, -2.739593267440796, -2.7503011226654053, -2.3187143802642822, -2.389716863632202, -2.282493829727173, -2.2627387046813965, -4.026824951171875, -29.96892547607422, -29.88970375061035, -29.825037002563477, -30.073617935180664, -30.382925033569336, -30.24701690673828, -30.375465393066406, 18.231870651245117, 17.834165573120117, 17.98078155517578, 18.37459945678711, 18.547462463378906, 18.556264877319336, 17.7244815826416, 17.70110511779785, 17.938413619995117, 18.50374984741211, -43.670738220214844, -43.633705139160156, -43.811954498291016, -43.68363952636719, -43.94546127319336, -43.9042854309082, -36.151737213134766, 18.404033660888672, 18.402496337890625, 16.15940284729004, 16.160688400268555, -28.839956283569336, -28.83730697631836, 24.75139045715332, 24.754684448242188, 24.755435943603516, 24.75493812561035, 41.76799011230469, 41.76414489746094, 41.76634979248047, 41.761878967285156, 1.2915915250778198, 13.169641494750977, 13.166664123535156, 13.163803100585938, 13.17993450164795, 13.1449613571167, 14.342586517333984, 14.325929641723633, 14.335565567016602, 14.34080696105957, 14.313389778137207, 39.03230285644531, 39.286476135253906, 38.963985443115234, 39.41490173339844, 39.44419860839844, 38.90126419067383, 39.13055419921875, 38.03284454345703, 38.67974090576172, 38.68232345581055, 38.679805755615234, 25.937957763671875, 25.937850952148438, 0.10437796264886856, -12.74303913116455, 6.366682529449463, 6.366235256195068, -19.949581146240234, -20.018552780151367, -19.821163177490234, -19.782100677490234, -19.71761703491211, -20.04237174987793, 19.610979080200195, 19.610275268554688, 23.666749954223633, 21.732524871826172, 21.73271369934082, 21.73044204711914, 21.737895965576172, -44.752830505371094, -44.75190734863281, -44.7523307800293, 32.28709030151367, 35.3055305480957, 35.300228118896484, 25.343730926513672, 25.33647918701172, 25.810789108276367, 25.833444595336914, 25.719240188598633, 25.67043685913086, 25.453523635864258, 42.5044059753418, -23.019763946533203, -23.020343780517578, -23.018888473510742, -20.25642204284668, -20.251367568969727, -20.25770378112793, -20.264944076538086, -20.267351150512695, 38.859405517578125, 38.85883712768555, 38.859527587890625, -28.573060989379883, -22.03397560119629, -21.922908782958984, -21.91755485534668, -21.973066329956055, -22.081790924072266, -1.0875455141067505, -1.0859827995300293, 46.17226028442383, 46.36589431762695, 46.309810638427734, 46.41761016845703, 46.08900451660156, 46.159236907958984, 30.402408599853516, 30.39059829711914, 30.392311096191406, 48.29679870605469, 48.29973602294922, 48.29946517944336, 48.29791259765625, 48.29937744140625, 35.39366912841797, 35.39427185058594, 35.39523696899414, 35.39255905151367, 34.78495407104492, 36.040557861328125, 3.8123602867126465, 3.8132331371307373, 34.87925338745117, 34.1427001953125, 34.14676284790039, 34.14508056640625, 34.147518157958984, 7.4317193031311035, 7.426583290100098, 7.42673921585083, -14.340104103088379, -14.342109680175781, -14.352396011352539, 19.41588592529297, 14.861258506774902, 14.864226341247559, -9.927525520324707, -9.928338050842285, -9.928703308105469, -9.928986549377441, 34.50882339477539, 34.50959777832031, 16.580358505249023, 16.831918716430664, 16.470169067382812, 16.649492263793945, 16.82012367248535, 16.278118133544922, 16.420555114746094, 15.21837043762207, 14.0881986618042, 14.0865478515625, 14.085740089416504, 49.11172866821289, 49.105228424072266, 49.10498046875, 49.11041259765625, 26.470069885253906, 26.347326278686523, 26.448701858520508, 27.0653133392334, 26.72629165649414, 26.699024200439453, 26.971960067749023, 26.996707916259766, 18.629465103149414, -26.576961517333984, -26.576292037963867, -26.579288482666016, -26.579381942749023, 14.829085350036621, 14.828548431396484, 26.582456588745117, 26.57759666442871, 26.578857421875, 36.30913543701172, 15.14454174041748, -29.532310485839844, -29.54073143005371, -29.213396072387695, -29.4670352935791, -29.279312133789062, -29.23227882385254, 0.45458221435546875, 0.45696786046028137, 0.4531818926334381, 0.4525377154350281, 0.45957911014556885, 14.10048770904541, 14.107304573059082, 14.10794734954834, 14.106003761291504, -26.944866180419922, 31.539813995361328, 31.548376083374023, 31.539230346679688, 31.5385684967041, 31.53981590270996, -22.068201065063477, -22.07402229309082, 8.366649627685547, 8.366140365600586, 8.368837356567383, 8.371243476867676, 21.943334579467773, 21.947996139526367, 21.94466209411621, 0.3661123216152191, 0.36600640416145325, 0.3646478056907654, -28.10162353515625, -28.094097137451172, -28.095890045166016, -28.111860275268555, -28.093626022338867, -17.77281379699707, -17.759801864624023, -17.76862335205078, -18.07876205444336, -18.04309844970703, -17.967166900634766, -10.003591537475586, -10.005874633789062, -10.005304336547852, -23.29532814025879, -23.297040939331055, -23.2872314453125, -23.291053771972656, 29.018587112426758, 29.016138076782227, 29.012004852294922, 29.01198959350586, 28.28271484375, 28.271907806396484, 28.269296646118164, 28.249237060546875, 28.251514434814453, 12.062560081481934, 12.060970306396484, 12.066309928894043, 12.06212043762207, -5.871798515319824, -6.27864933013916, -26.42731285095215, -26.788503646850586, -26.68514060974121, -26.009729385375977, -26.826467514038086, -26.105377197265625, -26.56304168701172, -26.259279251098633, -25.881832122802734, -25.932600021362305, 17.993370056152344, 17.949054718017578, 17.95391082763672, 17.961505889892578, -11.154484748840332, -11.899337768554688, -11.328936576843262, -11.997869491577148, -11.603348731994629, -11.371152877807617, -11.886072158813477, -11.714444160461426, -11.193719863891602, -45.507015228271484, -45.503639221191406, -45.507171630859375, -45.50143814086914, -45.503536224365234, -26.032690048217773, -26.23933219909668, -25.933151245117188, -26.065635681152344, -26.1584415435791, -26.14234733581543, -15.838115692138672, -15.813797950744629, -15.840272903442383, -15.824049949645996, -15.8139066696167, 24.244531631469727, -37.25996017456055, -37.262699127197266, -37.2634162902832, 18.010297775268555, 17.771242141723633, 17.663633346557617, 17.84130859375, 18.005756378173828, 17.524038314819336, 17.5631103515625, 34.26675796508789, 34.142459869384766, 34.6212158203125, 34.07425308227539, 34.5330696105957, 34.757144927978516, 34.79409408569336, 34.34833908081055, -29.973403930664062, -29.926877975463867, -30.179208755493164, -30.24758529663086, -30.17885398864746, -30.064863204956055, 9.9336576461792, 9.932912826538086, -25.95941925048828, -25.963790893554688, 44.0172233581543, 44.01338195800781, 44.01628112792969, 44.018463134765625, 44.01741027832031, 28.914749145507812, -17.783817291259766, 27.93597412109375, -38.99421310424805, -39.2667121887207, -38.783531188964844, -39.23589324951172, -38.68506622314453, -39.083274841308594, -38.805870056152344, -46.404815673828125, -46.07366180419922, -46.560726165771484, -46.01070785522461, -46.66352081298828, -46.1384162902832, -46.270477294921875, -46.69782638549805, -17.35503578186035, 45.32395935058594, 45.74835205078125, 45.32488250732422, 45.86692428588867, 45.537139892578125, 45.75690841674805, 45.53031539916992, -40.7474479675293, -40.753787994384766, -40.76063919067383, -40.75022506713867, -40.73986053466797, 18.218826293945312, -33.80427551269531, -33.8050537109375, -33.81000518798828, 8.926806449890137, 6.608199119567871, 6.59987211227417, 1.9787828922271729, 1.973188042640686, 12.132262229919434, 12.132129669189453, 12.13248348236084, 12.132060050964355, 8.555238723754883, -21.443077087402344, -21.437341690063477, -21.440475463867188, -21.432636260986328, -21.434541702270508, -18.74827766418457, -18.75035858154297, 33.441619873046875, 33.44369888305664, 33.435523986816406, 33.43416213989258, 11.619955062866211, 11.614394187927246, 11.617948532104492, -11.833293914794922, -11.850177764892578, -11.846364974975586, -11.842402458190918, -47.25044250488281, -46.9913330078125, -47.31332778930664, -47.13975143432617, -47.11505126953125, -47.0426139831543, 12.601533889770508, 12.604795455932617, 12.604125022888184, 12.601816177368164, -1.4588029384613037, -1.4590747356414795, 0.36826056241989136, 0.36933547258377075, -13.332139015197754, -13.331543922424316, 15.294424057006836, 15.234681129455566, 15.214116096496582, 15.2152681350708, 15.220285415649414, 9.783016204833984, 9.781049728393555, 9.78219985961914, 9.785968780517578, -49.471710205078125, -7.66483211517334, -7.5213422775268555, 1.493606448173523, 1.495274543762207, -0.9184134006500244, -0.918870747089386, 30.991134643554688, 31.027393341064453, 31.561174392700195, 31.562211990356445, 5.000809192657471, 4.867987155914307, 4.718029022216797, 5.135533332824707, 4.704723358154297, 5.22243595123291, 5.124989986419678, 6.559177875518799, 6.566623687744141, 6.5628533363342285, 6.5652875900268555, 6.561412334442139, -7.802720069885254, 16.877864837646484, 16.728225708007812, 16.456193923950195, 16.8848876953125, 16.6803035736084, 16.431123733520508, 16.34537124633789, 6.880577564239502, 6.872020244598389, 7.023813724517822, 7.224524974822998, 7.1789631843566895, 7.237362384796143, 23.911922454833984, -32.31336212158203, -32.01381301879883, -32.51520538330078, -32.667266845703125, -32.38756561279297, -32.70991897583008, -32.22779083251953, -31.980731964111328, -13.819992065429688, -13.819475173950195, -13.819344520568848, -13.819905281066895, -10.692642211914062, -10.556159973144531, -10.416699409484863, -10.570545196533203, -10.522032737731934, -10.442363739013672, 1.2010078430175781, 1.201279878616333, 1.201815128326416, -4.116559028625488, -4.118771553039551, -37.08694839477539, -37.08695602416992, 2.9004127979278564, 2.9008262157440186, 21.240633010864258, 21.24146270751953, -26.270017623901367, -25.73372459411621, -25.614456176757812, -26.087352752685547, -25.54012680053711, -25.892803192138672, -26.225982666015625, -25.88770866394043, -0.662028968334198, -0.661478579044342, -31.33824920654297, -31.32688331604004, -31.32499122619629, -30.42455291748047, -33.03818130493164, 13.20207405090332, 42.989593505859375, 42.98908615112305, 42.99000930786133, 30.573070526123047, -5.856276035308838, -5.856736660003662, -5.860818862915039, 2.1293270587921143, 2.1228580474853516, 2.1296756267547607, -11.273481369018555, -11.325653076171875, -11.5348482131958, -11.989509582519531, -11.952359199523926, -11.711209297180176, -11.47655963897705, -11.815461158752441, 5.284406661987305, 5.285542011260986, 5.746614933013916, 5.745158672332764, 22.156543731689453, 22.149154663085938, 22.109149932861328, 22.13410186767578, 22.142148971557617, -55.026580810546875, -54.87137222290039, -55.02241134643555, -54.68485641479492, -54.818626403808594, -54.6778678894043, -8.037609100341797, -8.034199714660645, -8.032663345336914, -8.050683975219727, -8.041062355041504, -50.15074920654297, -49.64912033081055, -49.93394470214844, 18.301916122436523, -2.04836106300354, -2.047417163848877, -2.0480849742889404, -5.110095024108887, -5.109223365783691, 22.894638061523438, -10.715763092041016, -10.716068267822266, -10.71595287322998, -0.038951728492975235, 4.517714500427246, 4.525969982147217, 5.6985626220703125, -56.7344970703125, -56.7391357421875, -7.435959815979004, -7.45888090133667, -7.428562641143799, -7.428994178771973, -7.425929069519043, 27.358173370361328, 27.353717803955078, 34.34779739379883, 25.88641357421875, 18.72780418395996, 18.72313690185547, 18.723148345947266, 18.72093963623047, 29.99066734313965, 29.973918914794922, 29.81153678894043, 29.90375518798828, 29.871623992919922, 16.744558334350586, 15.92836856842041, 15.944089889526367, 15.932124137878418, 15.925552368164062, 13.796652793884277, -19.735301971435547, -19.90638542175293, -19.86664390563965, -19.853260040283203, -19.799057006835938, -19.708324432373047, -31.957698822021484, -31.920074462890625, -31.946401596069336, -31.932653427124023, -31.921907424926758, -37.368770599365234, -37.37185287475586, -37.37347412109375, -37.37248992919922, -36.7940788269043, -36.795413970947266, -36.7943229675293, -36.79540252685547, -34.87132263183594, -34.870914459228516, 47.71986770629883, 47.72074508666992, -16.220420837402344, -16.3009033203125, -16.47381019592285, -16.151391983032227, -16.551475524902344, -16.872323989868164, -16.72113609313965, -16.812108993530273, -2.4767119884490967, -2.0573806762695312, -2.120256185531616, 23.652551651000977, -30.815797805786133, 18.582536697387695, 11.252683639526367, 11.250065803527832, -31.08638572692871, 11.306476593017578, 32.15816116333008, 32.158058166503906, 32.160499572753906, 32.16132736206055, 1.114404320716858, 1.1159000396728516, 1.1144204139709473, 3.707765579223633, 3.706777811050415, 3.7092833518981934, 3.707871198654175, -0.6900306344032288, -0.6938208937644958, 6.97075891494751, -43.6390380859375, -43.648738861083984, -43.6431884765625, -43.642024993896484, -29.78645896911621, -29.788311004638672, -29.785850524902344, -29.78651237487793, -3.981477737426758, -3.9813292026519775, -3.9809391498565674, -3.9754626750946045, -3.954899549484253, 40.61298751831055, 8.353392601013184, 8.363113403320312, 8.345367431640625, 8.363751411437988, 8.358330726623535, 7.696299076080322, 7.632247447967529, 7.66513204574585, 7.526895523071289, 7.414878845214844, 7.401457786560059, -32.966697692871094, -32.96757888793945, -32.96315383911133, 8.350659370422363, 8.345595359802246, 21.501447677612305, -4.188136100769043, -4.1862382888793945, -24.91275405883789, -24.957780838012695, -25.40624237060547, -25.31730079650879, -25.46578025817871, -25.06419563293457, -25.171260833740234, 27.114675521850586, 27.118816375732422, 27.129459381103516, 27.11992073059082, 27.106351852416992, 28.24547576904297, 28.2368221282959, 7.740007400512695, 37.918582916259766, 37.73516845703125, 38.01768112182617, 37.610809326171875, 38.161746978759766, 37.707359313964844, 38.136356353759766, 2.280782461166382, 2.0871777534484863, 2.0771172046661377, 2.268904447555542, 2.517817258834839, 2.6170005798339844, 2.5001935958862305, -37.858585357666016, -37.86007308959961, -37.8526725769043, 41.321414947509766, 41.31866455078125, 4.378730297088623, 4.376791477203369, -15.97047233581543, 23.693119049072266, 23.62434959411621, 23.013669967651367, 23.287546157836914, 23.55714988708496, 23.093278884887695, 23.08075714111328, 23.426206588745117, 4.8228325843811035, -23.536996841430664, 30.532718658447266, 30.532875061035156, 5.863246440887451, 5.87172269821167, 5.90596342086792, 5.89120626449585, 5.950563907623291, 9.896159172058105, -42.53872299194336, -42.68222427368164, -42.419490814208984, -42.42757797241211, -42.70460510253906, -42.727081298828125, -15.841381072998047, -15.835287094116211, -15.842693328857422, -15.843113899230957, -56.8805046081543, -56.880680084228516, -56.96718978881836, -56.966583251953125, -56.967201232910156, -56.96607208251953, -34.4014778137207, -34.404273986816406, -34.39933395385742, 20.786226272583008, -18.257396697998047, -3.231966257095337, -3.2332890033721924, -3.2337605953216553, 13.480339050292969, 13.46947956085205, 13.463752746582031, 13.467397689819336, -7.140839099884033, -7.1340131759643555, -7.137805461883545, -7.144547939300537, 10.966567039489746, 10.964113235473633, 10.964073181152344, -7.593807697296143, -7.475741386413574, 26.700037002563477, 26.388778686523438, 26.399003982543945, 26.541568756103516, 26.612478256225586, 26.485301971435547, -29.228050231933594, -28.905580520629883, -28.86673355102539, -28.97260856628418, -29.073232650756836, -29.255985260009766, -10.51164436340332, -10.506423950195312, -10.507916450500488, 12.636123657226562, 13.084096908569336, 12.888650894165039, 12.63332748413086, 12.525419235229492, 12.869837760925293, 13.063505172729492, 21.477447509765625, -3.260969638824463, -3.289344310760498, -3.2937121391296387, 8.265580177307129, 8.26555347442627, 8.265091896057129, 8.26089859008789, 8.264379501342773, 15.879090309143066, 40.756690979003906, 16.171823501586914, 16.163026809692383, 16.17864227294922, 16.161136627197266, -35.12771224975586, -35.13051223754883, -35.129337310791016, -35.13075637817383, -2.064112663269043, -2.0672175884246826, -2.0615594387054443, -2.061549186706543, -41.511966705322266, -41.46648406982422, -41.522491455078125, -41.506954193115234, -41.49835968017578, -44.22910690307617, -44.132713317871094, -44.257633209228516, -44.37809753417969, -44.12138748168945, -44.35356140136719, -31.654338836669922, -31.655935287475586, 25.093589782714844, 25.112720489501953, 25.08452606201172, 25.108095169067383, -33.58842468261719, -32.86674499511719, -33.31140899658203, -33.04273986816406, -32.90705871582031, -33.351768493652344, -33.52650451660156, -33.1409912109375, -3.0343246459960938, -2.996530771255493, -2.480149984359741, -2.614237070083618, -2.3039567470550537, -2.1867833137512207, -2.2546725273132324, -2.8107352256774902, -2.832228422164917, 38.25524139404297, 38.254756927490234, 38.258365631103516, 38.25779342651367, 38.25140380859375, 10.485915184020996, 10.246654510498047, 10.246710777282715, 22.0941104888916, -3.312370538711548, -3.3106021881103516, -3.3089044094085693, 36.45171356201172, 36.452125549316406, 36.45109176635742, 22.43485450744629, 22.484830856323242, 22.492847442626953, 22.459518432617188, 44.18609619140625, 44.134830474853516, 32.91526412963867, 32.91239547729492, 32.91429138183594, 32.914344787597656, 5.853630065917969, 5.8541717529296875, 5.855406761169434, -25.0044002532959, -25.676538467407227, -25.375837326049805, -25.60395050048828, -25.72479820251465, -25.36860466003418, -25.102020263671875, -25.175474166870117, -0.5462236404418945, -0.5663567185401917, 6.171211242675781, 6.172460079193115, 17.732479095458984, 25.067035675048828, 25.066112518310547, 25.068279266357422, 25.06783676147461, -13.241304397583008, 2.8637478351593018, -22.630218505859375, -22.45216941833496, -23.452598571777344, -3.812363862991333, -3.8071200847625732, -3.8099379539489746, -3.8088152408599854, -31.914588928222656, -32.00900650024414, -32.00255584716797, -31.929306030273438, -31.93777084350586, -9.695391654968262, -9.695213317871094, -9.698222160339355, -9.704031944274902, -6.290727138519287, -6.289334774017334, -6.289206504821777, 51.840938568115234, 51.841007232666016, 16.183576583862305, 16.08493423461914, 15.96239948272705, 16.567825317382812, 15.923433303833008, 16.3215389251709, 16.513198852539062, 16.503833770751953, 17.31149673461914, 2.701112985610962, 2.69804310798645, 2.6990251541137695, 14.800158500671387, 14.778239250183105, 14.769285202026367, 14.755502700805664, 14.74404525756836, -42.28889083862305, -41.667884826660156, -41.3197021484375, -42.20343017578125, -41.40203094482422, -41.6536979675293, -41.94474411010742, -41.970767974853516, -42.23006820678711, -41.41392135620117, -16.54487419128418, -15.878689765930176, -16.175458908081055, -16.432373046875, -15.54955768585205, -15.796941757202148, -15.62149715423584, -16.15195083618164, -16.41082763671875, -16.6264705657959, -15.6232271194458, 44.26640319824219, 44.26650619506836, -15.97832202911377, -15.974777221679688, -15.973469734191895, 20.78985595703125, -32.82716369628906, -32.998016357421875, -32.94586944580078, -32.874332427978516, -32.55278396606445, -32.56662368774414, -9.937012672424316, -9.88402271270752, 16.089218139648438, 0.5526585578918457, 0.5786538124084473, 0.5355678200721741, 0.5427761077880859, 0.5284500122070312, 38.912620544433594, 38.91225814819336, 38.9122428894043, -1.1412163972854614, -1.137648105621338, -58.0806999206543, -58.07757568359375, -58.080257415771484, 29.652006149291992, 29.649253845214844, -43.50829315185547, -43.50859069824219, -2.3483691215515137, -2.3538334369659424, -2.345325231552124, 50.94394302368164, 50.944114685058594, 50.94401168823242, -0.14012515544891357, 0.41782256960868835, -0.006793452426791191, 0.22352191805839539, 0.4150865972042084, -0.028098810464143753, 0.23846282064914703, 29.102741241455078, 24.2869815826416, 24.290470123291016, 24.288536071777344, 24.287158966064453, 24.67450714111328, 24.67310905456543, 24.686269760131836, 24.696033477783203, 24.698144912719727, 24.69276237487793, 24.69532585144043, -12.6117525100708, -29.425800323486328, -29.41171646118164, -29.71735191345215, -29.49496078491211, -29.67399787902832, -29.67487335205078, -2.1800663471221924, 43.14146423339844, 43.1409797668457, 43.141902923583984, 43.142051696777344, 14.764512062072754, 14.712055206298828, 14.974383354187012, 14.677641868591309, 14.968358039855957, 14.914052963256836, 18.54257583618164, 19.313018798828125, 18.573827743530273, 19.436664581298828, 19.02925682067871, 18.81679916381836, 18.742238998413086, 19.27256965637207, 19.12857437133789, 18.38174819946289, -33.386436462402344, -33.38676834106445, -33.386390686035156, 23.21918487548828, -1.9525316953659058, -1.9546228647232056, -1.9526299238204956, 31.79587745666504, 31.799571990966797, 31.800458908081055, 31.81169891357422, 31.80310821533203, -7.642937660217285, -7.643837928771973, 14.393228530883789, 14.393363952636719, 14.39262580871582, -17.14393424987793, -17.146846771240234, -17.126880645751953, -17.3830509185791, -17.15226173400879, -17.386804580688477, 40.70747375488281, 40.441864013671875, 40.51896667480469, 40.396568298339844, 40.58501052856445, 40.664180755615234, -40.0111083984375, -40.01359558105469, -40.01542663574219, -40.892555236816406, -40.823089599609375, -41.155433654785156, -41.11561965942383, -40.895755767822266, -41.05400466918945, 14.066155433654785, 3.1905248165130615, 3.3420722484588623, 3.1779658794403076, 3.0235447883605957, 3.3289222717285156, 3.0389740467071533, 19.750761032104492, 19.748821258544922, 19.750980377197266, 19.756099700927734, -22.676660537719727, 53.795047760009766, 53.793678283691406, 53.79328918457031, 53.78799819946289, 53.79477310180664, -24.597257614135742, -13.87508773803711, -13.87178897857666, -13.87104320526123, -13.86453914642334, 5.26564884185791, 5.267242908477783, 5.2550129890441895, 5.262408256530762, 5.912148475646973, 5.912282943725586, -4.591015815734863, 20.169784545898438, 20.169729232788086, -10.095734596252441, -10.10655403137207, -9.912860870361328, -10.171915054321289, -9.954948425292969, -9.787740707397461, -14.027153968811035, -13.765966415405273, -13.554597854614258, -13.991493225097656, -14.178147315979004, -13.47992992401123, -14.0242919921875, -13.518078804016113, 37.791282653808594, 37.791927337646484, 37.7913932800293, 9.540423393249512, 9.539304733276367, 9.543862342834473, -3.9976565837860107, -42.002777099609375, -42.11516571044922, -42.01088333129883, -42.259422302246094, -42.178409576416016, -42.28593063354492, 0.01017790101468563, -6.014378070831299, -6.0181565284729, -6.017068386077881, -6.017688751220703, -5.319100856781006, -5.305196285247803, -5.370142459869385, -5.328769207000732, -5.30883264541626, 31.684965133666992, 31.684518814086914, 4.65003776550293, 4.646630764007568, 4.646810054779053, 4.63346004486084, 4.635987281799316, 16.363956451416016, -8.225297927856445, -8.223050117492676, -8.224055290222168, -38.75217056274414, -38.75292205810547, 26.35517120361328, 26.354175567626953, -36.06904983520508, -36.02882766723633, -36.07080078125, -36.02425003051758, -36.03730010986328, -41.57865905761719, 38.947105407714844, 38.94660186767578, 38.9467658996582, -2.63562273979187, 16.951412200927734, 16.9505558013916, 42.466392517089844, -11.783584594726562, -11.783821105957031, -11.784163475036621, -11.78378677368164, -11.786603927612305, -5.468772888183594, -5.469125270843506, 18.315643310546875, 18.314359664916992, 18.315258026123047, 18.312314987182617, -8.266495704650879, -8.269063949584961, 5.57085657119751, 5.562460422515869, 5.5692057609558105, 5.563599109649658, 5.572672367095947, 2.858668565750122, 2.858051300048828, 2.8598806858062744, 28.558040618896484, 28.431123733520508, 28.40139389038086, 28.690183639526367, 28.714065551757812, 28.570720672607422, -17.155519485473633, -17.154388427734375, -17.15578269958496, 23.19464683532715, 23.196462631225586, 23.192834854125977, 7.129627704620361, 7.113959312438965, 6.838094711303711, 6.817015647888184, 6.960991382598877, 6.958813190460205, -16.182315826416016, 25.790599822998047, 25.773880004882812, 25.76763916015625, -21.042509078979492, -20.641368865966797, -20.6408748626709, -21.188987731933594, 33.64412307739258, 33.64402389526367, 33.64323043823242, 31.053171157836914, 31.054990768432617, 31.04871368408203, -7.634324550628662, -9.994010925292969, -18.211313247680664, -18.667438507080078, -18.44378089904785, -18.22260856628418, -18.347057342529297, -18.885540008544922, -18.723316192626953, -18.985374450683594, -19.04397201538086, -29.187984466552734, -29.186664581298828, -29.184585571289062, 15.691022872924805, 15.691450119018555, 15.690035820007324, 12.404831886291504, 12.404377937316895, -46.19942092895508, -46.198490142822266, -46.19878005981445, -46.19814682006836, 12.486980438232422, 12.482490539550781, 12.478582382202148, 30.3718318939209, 30.3714599609375, 18.57948875427246, 18.577653884887695, 18.576993942260742, -34.575408935546875, -34.57048034667969, -34.57372283935547, -23.363584518432617, 46.93637466430664, 46.93878173828125, 46.94318389892578, 46.94384765625, 46.94392013549805, -21.92167854309082, -22.03019142150879, -22.00393295288086, -21.986528396606445, -21.918025970458984, -30.71994972229004, -31.03073501586914, -30.41677474975586, -30.544414520263672, -31.22401237487793, -31.275737762451172, -31.09688949584961, -30.486469268798828, -30.83112144470215, 10.062305450439453, -20.17676544189453, -20.176116943359375, -20.1763916015625, 11.774186134338379, -33.67466354370117, 4.007706165313721, 27.699604034423828, 10.273591041564941, 10.275212287902832, -8.675962448120117, -8.720319747924805, -8.714585304260254, -8.704304695129395, -8.696915626525879, 17.094078063964844, 17.09287452697754, 17.092988967895508, 7.683358192443848, 7.681529998779297, 15.697549819946289, -11.283888816833496, -11.283696174621582, -36.88261795043945, -36.88181686401367, -36.88169860839844, -36.881771087646484, 15.406106948852539, -1.4628554582595825, -1.4641731977462769, -1.464605689048767, -1.4674345254898071, -31.229022979736328, -31.7437744140625, -31.277606964111328, -31.892589569091797, -31.784860610961914, -31.135757446289062, -31.535009384155273, -31.53071403503418, 7.514825820922852, 29.542049407958984, 29.53042221069336, -14.22795295715332, -41.614105224609375, -41.61539077758789, -41.62065887451172, -41.617897033691406, 21.637998580932617, 21.636682510375977, 21.62732696533203, 21.625125885009766, 21.627391815185547, 16.166133880615234, 16.16585350036621, -49.79198455810547, -49.6036262512207, -49.79666519165039, -49.537574768066406, -49.62736129760742, -49.886531829833984, 3.030226707458496, -7.663838863372803, -6.940779685974121, 16.702016830444336, -51.27207946777344, -51.27406311035156, -51.27574157714844, -51.27615737915039, 25.513582229614258, -20.066390991210938, -20.06627082824707, -20.065622329711914, 34.646629333496094, 34.646156311035156, -23.231964111328125, -23.75086784362793, -23.469804763793945, -23.219497680664062, -23.71854019165039, -23.83003044128418, -23.461713790893555, -23.103321075439453, -10.394655227661133, 22.73990821838379, 22.7401065826416, 22.744178771972656, 22.745420455932617, 20.886714935302734, -4.89597749710083, -4.893609523773193, -4.895732879638672, -0.48506009578704834, -0.48914825916290283, 35.203407287597656, 35.20281219482422, 35.20284652709961, 35.20296859741211, 5.995255947113037 ] }, { "marker": { "color": "#00ff00", "line": { "color": "white", "width": 3 }, "size": 25, "symbol": "star" }, "mode": "markers", "name": "Candidate #0", "type": "scatter", "x": [ 41.186309814453125 ], "y": [ -1.4922877550125122 ] } ], "layout": { "font": { "color": "white" }, "height": 800, "paper_bgcolor": "#0d0d0d", "plot_bgcolor": "#1a1a1a", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Candidate #0 and Top Matches" }, "width": 1200, "xaxis": { "title": { "text": "Dimension 1" } }, "yaxis": { "title": { "text": "Dimension 2" } } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "βœ… Highlighted visualization created!\n", " ⭐ Green star = Candidate #0\n", " πŸ”΄ Red dots = Top matches\n", " πŸ’› Yellow lines = Connections in vector space\n", "\n" ] } ], "source": [ "target_candidate = 0\n", "\n", "print(f\"πŸ” Analyzing Candidate #{target_candidate}...\\n\")\n", "\n", "matches = find_top_matches(target_candidate, top_k=10)\n", "match_indices = [comp_idx for comp_idx, score in matches if comp_idx < n_comp_viz]\n", "\n", "# Create highlighted plot\n", "fig2 = go.Figure()\n", "\n", "# All companies (background)\n", "fig2.add_trace(go.Scatter(\n", " x=comp_2d[:, 0],\n", " y=comp_2d[:, 1],\n", " mode='markers',\n", " name='All Companies',\n", " marker=dict(size=4, color='#ff6b6b', opacity=0.3),\n", " showlegend=True\n", "))\n", "\n", "# Top matches (highlighted)\n", "if match_indices:\n", " match_positions = comp_2d[match_indices]\n", " fig2.add_trace(go.Scatter(\n", " x=match_positions[:, 0],\n", " y=match_positions[:, 1],\n", " mode='markers',\n", " name='Top Matches',\n", " marker=dict(\n", " size=15,\n", " color='#ff0000',\n", " line=dict(width=2, color='white')\n", " ),\n", " text=[f\"Match #{i+1}: {companies_full.iloc[match_indices[i]].get('name', 'N/A')[:30]}
Score: {matches[i][1]:.3f}\" \n", " for i in range(len(match_indices))],\n", " hovertemplate='%{text}'\n", " ))\n", "\n", "# Target candidate\n", "fig2.add_trace(go.Scatter(\n", " x=[cand_2d[target_candidate, 0]],\n", " y=[cand_2d[target_candidate, 1]],\n", " mode='markers',\n", " name=f'Candidate #{target_candidate}',\n", " marker=dict(\n", " size=25,\n", " color='#00ff00',\n", " symbol='star',\n", " line=dict(width=3, color='white')\n", " )\n", "))\n", "\n", "# Connection lines\n", "for i, match_idx in enumerate(match_indices[:5]):\n", " fig2.add_trace(go.Scatter(\n", " x=[cand_2d[target_candidate, 0], comp_2d[match_idx, 0]],\n", " y=[cand_2d[target_candidate, 1], comp_2d[match_idx, 1]],\n", " mode='lines',\n", " line=dict(color='yellow', width=1, dash='dot'),\n", " opacity=0.5,\n", " showlegend=False\n", " ))\n", "\n", "fig2.update_layout(\n", " title=f'Candidate #{target_candidate} and Top Matches',\n", " xaxis_title='Dimension 1',\n", " yaxis_title='Dimension 2',\n", " width=1200,\n", " height=800,\n", " plot_bgcolor='#1a1a1a',\n", " paper_bgcolor='#0d0d0d',\n", " font=dict(color='white')\n", ")\n", "\n", "fig2.show()\n", "\n", "print(\"βœ… Highlighted visualization created!\")\n", "print(f\" ⭐ Green star = Candidate #{target_candidate}\")\n", "print(f\" πŸ”΄ Red dots = Top matches\")\n", "print(f\" πŸ’› Yellow lines = Connections in vector space\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸ’Ύ Step 12: Export Results" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ’Ύ Generating matches for 500 candidates...\n", "\n", " Progress: 0/500\n", " Progress: 50/500\n", " Progress: 100/500\n", " Progress: 150/500\n", " Progress: 200/500\n", " Progress: 250/500\n", " Progress: 300/500\n", " Progress: 350/500\n", " Progress: 400/500\n", " Progress: 450/500\n", "\n", "βœ… Exported 5,000 matches!\n", "πŸ“„ File: data/results/hrhub_matches_with_postings.csv\n", "\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
candidate_idcompany_idcompany_nameranksimilarity_scorerequired_skillsposted_jobs
0072825Anblicks10.702806
1065529778iO Associates - US20.702621
2072825Anblicks30.702572
3065529778iO Associates - US40.701938
4072825Anblicks50.701032
5033307792DATAECONOMY60.684871
60323777Datavail70.682659
7033307792DATAECONOMY80.680029
8033307792DATAECONOMY90.678448
901016007BitPusher100.677616
10198704Analytic Recruiting Inc.10.620458
1112681218Logikk20.620197
12147591650Heliosz.AI30.589462
1311092280BPO Recruit40.576554
14128156433IntellectFaces, Inc50.575582
15190406839Vedan Technologies60.566410
161575811Burtch Works70.565807
1712319092Cleartelligence80.560748
18113423341Ampstek90.545455
19113423341Ampstek100.545455
\n", "
" ], "text/plain": [ " candidate_id company_id company_name rank similarity_score \\\n", "0 0 72825 Anblicks 1 0.702806 \n", "1 0 65529778 iO Associates - US 2 0.702621 \n", "2 0 72825 Anblicks 3 0.702572 \n", "3 0 65529778 iO Associates - US 4 0.701938 \n", "4 0 72825 Anblicks 5 0.701032 \n", "5 0 33307792 DATAECONOMY 6 0.684871 \n", "6 0 323777 Datavail 7 0.682659 \n", "7 0 33307792 DATAECONOMY 8 0.680029 \n", "8 0 33307792 DATAECONOMY 9 0.678448 \n", "9 0 1016007 BitPusher 10 0.677616 \n", "10 1 98704 Analytic Recruiting Inc. 1 0.620458 \n", "11 1 2681218 Logikk 2 0.620197 \n", "12 1 47591650 Heliosz.AI 3 0.589462 \n", "13 1 1092280 BPO Recruit 4 0.576554 \n", "14 1 28156433 IntellectFaces, Inc 5 0.575582 \n", "15 1 90406839 Vedan Technologies 6 0.566410 \n", "16 1 575811 Burtch Works 7 0.565807 \n", "17 1 2319092 Cleartelligence 8 0.560748 \n", "18 1 13423341 Ampstek 9 0.545455 \n", "19 1 13423341 Ampstek 10 0.545455 \n", "\n", " required_skills posted_jobs \n", "0 \n", "1 \n", "2 \n", "3 \n", "4 \n", "5 \n", "6 \n", "7 \n", "8 \n", "9 \n", "10 \n", "11 \n", "12 \n", "13 \n", "14 \n", "15 \n", "16 \n", "17 \n", "18 \n", "19 " ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Generate matches for sample\n", "results = []\n", "export_sample = min(500, len(candidates))\n", "\n", "print(f\"πŸ’Ύ Generating matches for {export_sample} candidates...\\n\")\n", "\n", "for i in range(export_sample):\n", " if i % 50 == 0:\n", " print(f\" Progress: {i}/{export_sample}\")\n", " \n", " matches = find_top_matches(i, top_k=10)\n", " \n", " for rank, (comp_idx, score) in enumerate(matches, 1):\n", " company = companies_full.iloc[comp_idx]\n", " results.append({\n", " 'candidate_id': i,\n", " 'company_id': company.get('company_id'),\n", " 'company_name': company.get('name', 'N/A'),\n", " 'rank': rank,\n", " 'similarity_score': float(score),\n", " 'required_skills': company.get('required_skills', 'N/A')[:100],\n", " 'posted_jobs': company.get('posted_job_titles', 'N/A')[:100]\n", " })\n", "\n", "results_df = pd.DataFrame(results)\n", "results_df.to_csv('../results/hrhub_matches_with_postings.csv', index=False)\n", "\n", "print(f\"\\nβœ… Exported {len(results_df):,} matches!\")\n", "print(f\"πŸ“„ File: data/results/hrhub_matches_with_postings.csv\\n\")\n", "results_df.head(20)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## πŸŽ‰ COMPLETE!\n", "\n", "### βœ… What you have:\n", "\n", "1. **Enriched companies** with job posting data (requirements, skills needed)\n", "2. **Aligned text representations** (both use \"skills language\")\n", "3. **Vectors in same space** ℝ³⁸⁴\n", "4. **Cosine similarity matching**\n", "5. **Vector space visualization**\n", "6. **Exported results**\n", "\n", "### πŸš€ Next steps:\n", "\n", "1. **Train LLM on patterns:** \"Company in industry X historically needs skills Y\"\n", "2. **Predict for companies without postings:** Use learned patterns\n", "3. **Add weights:** Let users tune dimension importance\n", "4. **Build UI:** Interactive matching interface\n", "5. **LLM explanations:** Why these matches make sense\n", "\n", "### πŸ’‘ Key insight achieved:\n", "\n", "**Postings bridge the gap!** They translate \"what companies are\" into \"what companies need\" - the same language candidates speak!\n", "\n", "---" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "πŸ•ΈοΈ Creating NETWORK GRAPH with nodes and edges...\n", "\n", "πŸ“Š Building network:\n", " β€’ 20 candidate nodes\n", " β€’ 5 companies per candidate\n", "\n", "βœ… Network created!\n", " β€’ Nodes: 73\n", " β€’ Edges: 100\n", "\n", "πŸ”„ Calculating network layout...\n", "βœ… Layout calculated!\n", "\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 2.1084170937538147 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.008228351239538344, -0.9560802919122287, null ], "y": [ 0.9966466904714828, 0.09304224125281234, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 2.1078633069992065 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.008228351239538344, -0.8178072349549047, null ], "y": [ 0.9966466904714828, 0.6504381140050118, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 2.107716679573059 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.008228351239538344, -0.51088390477384, null ], "y": [ 0.9966466904714828, 0.7747118143539422, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 2.1058130264282227 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.008228351239538344, 0.03385772127986288, null ], "y": [ 0.9966466904714828, 0.014578780025047939, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 2.1030964851379395 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.008228351239538344, 0.155681883616803, null ], "y": [ 0.9966466904714828, -0.9425873597731047, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.861372947692871 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7894048278138427, 0.9633331375888634, null ], "y": [ 0.5058618543015873, 0.37221871227342745, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8605904579162598 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7894048278138427, 0.7254841733567758, null ], "y": [ 0.5058618543015873, 0.7617491181934801, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7683861255645752 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7894048278138427, 0.1565674339014217, null ], "y": [ 0.5058618543015873, 0.9801149165378112, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7296605706214905 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7894048278138427, -0.9062075679479762, null ], "y": [ 0.5058618543015873, -0.43479480859055325, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7267446517944336 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7894048278138427, -0.9764391950133313, null ], "y": [ 0.5058618543015873, -0.20010659485776616, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.856497585773468 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.6986565583234747, -0.3272617252695024, null ], "y": [ -0.7196602508286567, -0.8677305146023527, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8517765402793884 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.6986565583234747, 0.9248668300158991, null ], "y": [ -0.7196602508286567, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8382592797279358 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.6986565583234747, -0.6932915075656053, null ], "y": [ -0.7196602508286567, 0.5723368740829652, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8247919082641602 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.6986565583234747, -0.6411098102454604, null ], "y": [ -0.7196602508286567, 0.7535771780958957, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8009127378463745 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.6986565583234747, -0.36910593125045776, null ], "y": [ -0.7196602508286567, 0.9752874600353632, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7664629817008972 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8728483863188377, 0.6039407907498316, null ], "y": [ 0.5408380605325042, -0.7831007240619937, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7664629817008972 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8728483863188377, -0.9649462556609305, null ], "y": [ 0.5408380605325042, 0.35274605956330785, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7664629817008972 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8728483863188377, 0.5070960506385946, null ], "y": [ 0.5408380605325042, 0.806660341634723, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7664629817008972 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8728483863188377, 0.4799934413290479, null ], "y": [ 0.5408380605325042, -0.9010264088848234, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6032766699790955 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8728483863188377, 0.04582703549054048, null ], "y": [ 0.5408380605325042, -0.9681012707939812, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5464075803756714 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3757469283195322, 0.9405220306259391, null ], "y": [ 0.8477704710762751, 0.29572534840003256, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5452231168746948 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3757469283195322, -0.04197551862332277, null ], "y": [ 0.8477704710762751, -0.9940816396722265, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5407277345657349 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3757469283195322, -0.6843079653481063, null ], "y": [ 0.8477704710762751, -0.6171287502791867, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5171425342559814 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3757469283195322, 0.6809598616104406, null ], "y": [ 0.8477704710762751, 0.6485930195539545, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.483992576599121 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3757469283195322, 0.9878192126313164, null ], "y": [ 0.8477704710762751, -0.02664853102043255, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.870912492275238 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.7102054089679392, -0.8758733747212577, null ], "y": [ 0.7923763191594281, 0.44539436543136557, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7713499665260315 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.7102054089679392, 0.04582703549054048, null ], "y": [ 0.7923763191594281, -0.9681012707939812, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7675634026527405 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.7102054089679392, 0.9243291569443604, null ], "y": [ 0.7923763191594281, 0.20566744112231705, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7619634866714478 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.7102054089679392, 0.9396663982885644, null ], "y": [ 0.7923763191594281, -0.12272794163406031, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7009924054145813 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.7102054089679392, -0.6932915075656053, null ], "y": [ 0.7923763191594281, 0.5723368740829652, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5846426486968994 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7815887357308049, 0.9405220306259391, null ], "y": [ -0.6288385754318626, 0.29572534840003256, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5837326645851135 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7815887357308049, -0.6843079653481063, null ], "y": [ -0.6288385754318626, -0.6171287502791867, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5110841393470764 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7815887357308049, -0.04197551862332277, null ], "y": [ -0.6288385754318626, -0.9940816396722265, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5024254322052002 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7815887357308049, 0.8501924531107831, null ], "y": [ -0.6288385754318626, 0.057675404273527714, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5024254322052002 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.7815887357308049, -0.8126553278199413, null ], "y": [ -0.6288385754318626, -0.6581629895590582, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6229479908943176 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8294490369866078, -0.9795833690173713, null ], "y": [ -0.5273933590889416, 0.19412416614086964, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5398486852645874 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8294490369866078, -0.8491059562001699, null ], "y": [ -0.5273933590889416, 0.007936963366552648, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.533843755722046 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8294490369866078, 0.8676712512668304, null ], "y": [ -0.5273933590889416, -0.5326593762096774, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5325459241867065 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8294490369866078, -0.27550373796794253, null ], "y": [ -0.5273933590889416, 0.8910871344525347, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5296419858932495 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8294490369866078, -0.5333794423046525, null ], "y": [ -0.5273933590889416, -0.8581162835039302, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5693644285202026 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.32776235208043264, -0.5874281621787033, null ], "y": [ 0.7010762636644056, -0.7747171261844794, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5630821585655212 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.32776235208043264, 0.9248668300158991, null ], "y": [ 0.7010762636644056, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.551601231098175 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.32776235208043264, 0.7254841733567758, null ], "y": [ 0.7010762636644056, 0.7617491181934801, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5490554571151733 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.32776235208043264, -0.8758733747212577, null ], "y": [ 0.7010762636644056, 0.44539436543136557, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5406851768493652 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.32776235208043264, -0.9764391950133313, null ], "y": [ 0.7010762636644056, -0.20010659485776616, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8231654167175293 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.20330763237698635, 0.8228099567237458, null ], "y": [ -0.5747824263313319, 0.6234011468667592, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7556148767471313 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.20330763237698635, 0.9248668300158991, null ], "y": [ -0.5747824263313319, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.708597183227539 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.20330763237698635, 0.03385772127986288, null ], "y": [ -0.5747824263313319, 0.014578780025047939, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7073662281036377 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.20330763237698635, -0.8178072349549047, null ], "y": [ -0.5747824263313319, 0.6504381140050118, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6973083019256592 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.20330763237698635, -0.8758733747212577, null ], "y": [ -0.5747824263313319, 0.44539436543136557, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.758370578289032 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3552836684103588, -0.6411098102454604, null ], "y": [ -0.9111061983480203, 0.7535771780958957, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.758202850818634 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3552836684103588, 0.28934438249608047, null ], "y": [ -0.9111061983480203, 0.9378640214470436, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7307082414627075 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3552836684103588, 0.6039407907498316, null ], "y": [ -0.9111061983480203, -0.7831007240619937, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7307082414627075 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3552836684103588, -0.9649462556609305, null ], "y": [ -0.9111061983480203, 0.35274605956330785, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7307082414627075 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.3552836684103588, 0.5070960506385946, null ], "y": [ -0.9111061983480203, 0.806660341634723, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7798132300376892 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.46402555438931375, 0.9248668300158991, null ], "y": [ -0.3497409847445115, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7454602122306824 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.46402555438931375, 0.6986374649591934, null ], "y": [ -0.3497409847445115, -0.7180536130518578, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.693077027797699 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.46402555438931375, 0.986606253155378, null ], "y": [ -0.3497409847445115, 0.08864147851135552, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6758159399032593 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.46402555438931375, 0.4395603864358236, null ], "y": [ -0.3497409847445115, 0.9143020256802576, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6597822308540344 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.46402555438931375, 0.6039407907498316, null ], "y": [ -0.3497409847445115, -0.7831007240619937, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8882771134376526 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.08240566277840888, 0.7254841733567758, null ], "y": [ 0.9372508664386603, 0.7617491181934801, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.869667410850525 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.08240566277840888, 0.1565674339014217, null ], "y": [ 0.9372508664386603, 0.9801149165378112, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8683390021324158 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.08240566277840888, 0.9633331375888634, null ], "y": [ 0.9372508664386603, 0.37221871227342745, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.774660885334015 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.08240566277840888, -0.9764391950133313, null ], "y": [ 0.9372508664386603, -0.20010659485776616, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7621017098426819 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.08240566277840888, -0.20313400318906608, null ], "y": [ 0.9372508664386603, -0.9627197644733071, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5326129794120789 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8883328481862192, -0.916790157482521, null ], "y": [ 0.28280671896346016, -0.14659629052058548, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.527764081954956 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8883328481862192, -0.8758733747212577, null ], "y": [ 0.28280671896346016, 0.44539436543136557, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5217523574829102 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8883328481862192, 0.606427121065023, null ], "y": [ 0.28280671896346016, 0.8121828199894329, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.4717399775981903 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8883328481862192, -1, null ], "y": [ 0.28280671896346016, -0.03252901424956319, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.4684464037418365 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.8883328481862192, -0.11558918281292858, null ], "y": [ 0.28280671896346016, -0.9285352247608196, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6345769762992859 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.2450129031289262, -0.9167739852822442, null ], "y": [ -0.9752978905544106, -0.33007227200585304, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5912646651268005 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.2450129031289262, -0.8178072349549047, null ], "y": [ -0.9752978905544106, 0.6504381140050118, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5878575444221497 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.2450129031289262, 0.03385772127986288, null ], "y": [ -0.9752978905544106, 0.014578780025047939, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5781166553497314 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.2450129031289262, 0.9911675438653995, null ], "y": [ -0.9752978905544106, -0.22072929288020213, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.5239886045455933 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.2450129031289262, 0.1306907098573154, null ], "y": [ -0.9752978905544106, 0.9060505833817114, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.786211907863617 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.5101351655589708, -0.18630594436687903, null ], "y": [ -0.8174265379594159, 0.9898304539186001, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6970425844192505 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.5101351655589708, 0.9480801792307914, null ], "y": [ -0.8174265379594159, -0.4114288196784026, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.694767713546753 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.5101351655589708, -0.8178072349549047, null ], "y": [ -0.8174265379594159, 0.6504381140050118, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.692204236984253 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.5101351655589708, 0.03385772127986288, null ], "y": [ -0.8174265379594159, 0.014578780025047939, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6841919422149658 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.5101351655589708, 0.6534620851761535, null ], "y": [ -0.8174265379594159, -0.6121474999811323, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.9614944458007812 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.49433648823279985, 0.9248668300158991, null ], "y": [ 0.9166242362687499, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.887673795223236 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.49433648823279985, 0.03385772127986288, null ], "y": [ 0.9166242362687499, 0.014578780025047939, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8831129670143127 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.49433648823279985, 0.6039407907498316, null ], "y": [ 0.9166242362687499, -0.7831007240619937, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8831129670143127 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.49433648823279985, -0.9649462556609305, null ], "y": [ 0.9166242362687499, 0.35274605956330785, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8831129670143127 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.49433648823279985, 0.5070960506385946, null ], "y": [ 0.9166242362687499, 0.806660341634723, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7810985445976257 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.9054713142617181, -0.3272617252695024, null ], "y": [ 0.5184957441045188, -0.8677305146023527, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7182477712631226 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.9054713142617181, 0.7254841733567758, null ], "y": [ 0.5184957441045188, 0.7617491181934801, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7080677151679993 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.9054713142617181, -0.8758733747212577, null ], "y": [ 0.5184957441045188, 0.44539436543136557, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.707676649093628 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.9054713142617181, -0.36910593125045776, null ], "y": [ 0.5184957441045188, 0.9752874600353632, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7009126543998718 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.9054713142617181, -0.6932915075656053, null ], "y": [ 0.5184957441045188, 0.5723368740829652, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7599546909332275 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.43262944545129567, -0.9167739852822442, null ], "y": [ -0.8937310642329417, -0.33007227200585304, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.734224259853363 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.43262944545129567, -0.8178072349549047, null ], "y": [ -0.8937310642329417, 0.6504381140050118, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.731368601322174 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.43262944545129567, 0.03385772127986288, null ], "y": [ -0.8937310642329417, 0.014578780025047939, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6846595406532288 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.43262944545129567, 0.9911675438653995, null ], "y": [ -0.8937310642329417, -0.22072929288020213, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.6479275822639465 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ -0.43262944545129567, 0.9248668300158991, null ], "y": [ -0.8937310642329417, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.8778835535049438 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.736491648913183, 0.9248668300158991, null ], "y": [ -0.4386927488435513, -0.3172141863038881, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7879573106765747 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.736491648913183, -0.6932915075656053, null ], "y": [ -0.4386927488435513, 0.5723368740829652, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7333738207817078 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.736491648913183, -0.5874281621787033, null ], "y": [ -0.4386927488435513, -0.7747171261844794, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.7233679294586182 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.736491648913183, -0.8758733747212577, null ], "y": [ -0.4386927488435513, 0.44539436543136557, null ] }, { "hoverinfo": "none", "line": { "color": "rgba(255, 255, 255, 0.3)", "width": 1.717163622379303 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 0.736491648913183, -0.30661812506089037, null ], "y": [ -0.4386927488435513, -0.9672988736742945, null ] }, { "hovertemplate": "%{text}", "marker": { "color": "#00ff00", "line": { "color": "white", "width": 2 }, "size": 25, "symbol": "circle" }, "mode": "markers+text", "name": "Candidates", "text": [ "Candidate 0", "Candidate 1", "Candidate 2", "Candidate 3", "Candidate 4", "Candidate 5", "Candidate 6", "Candidate 7", "Candidate 8", "Candidate 9", "Candidate 10", "Candidate 11", "Candidate 12", "Candidate 13", "Candidate 14", "Candidate 15", "Candidate 16", "Candidate 17", "Candidate 18", "Candidate 19" ], "textfont": { "color": "white", "size": 10 }, "textposition": "top center", "type": "scatter", "x": [ -0.008228351239538344, 0.7894048278138427, -0.6986565583234747, -0.8728483863188377, 0.3757469283195322, -0.7102054089679392, 0.7815887357308049, -0.8294490369866078, -0.32776235208043264, 0.20330763237698635, 0.3552836684103588, -0.46402555438931375, -0.08240566277840888, -0.8883328481862192, 0.2450129031289262, 0.5101351655589708, -0.49433648823279985, 0.9054713142617181, -0.43262944545129567, 0.736491648913183 ], "y": [ 0.9966466904714828, 0.5058618543015873, -0.7196602508286567, 0.5408380605325042, 0.8477704710762751, 0.7923763191594281, -0.6288385754318626, -0.5273933590889416, 0.7010762636644056, -0.5747824263313319, -0.9111061983480203, -0.3497409847445115, 0.9372508664386603, 0.28280671896346016, -0.9752978905544106, -0.8174265379594159, 0.9166242362687499, 0.5184957441045188, -0.8937310642329417, -0.4386927488435513 ] }, { "hovertemplate": "%{text}", "marker": { "color": "#ff6b6b", "line": { "color": "white", "width": 1 }, "size": 15, "symbol": "square" }, "mode": "markers+text", "name": "Companies", "text": [ "Anblicks", "iO Associates - US", "Anblicks", "iO Associates - US", "Anblicks", "Analytic Recruiting Inc.", "Logikk", "Heliosz.AI", "BPO Recruit", "IntellectFaces, Inc", "maven", "Digital Prospectors", "Tekniforce", "Neva Recruiting", "micro1", "Ampstek", "Ampstek", "Ampstek", "Ampstek", "CivicMinds, Inc", "Swift Strategic Solutions Inc", "National Security Agency", "Swift Strategic Solutions Inc", "AcctPositions", "Family Estate Planning Firm", "Understanding Recruitment", "CivicMinds, Inc", "Protechture, LLC", "GAC Solutions", "GAC Solutions", "Ram Mechanical Inc.", " EGN Consult & Recruit", "Industrial Technical Training", "Rhino Tool House", "Professional Engineering Consu", "Vedan Technologies", "Hire Python Developer", "Udemy", "OpenSesame", "Cephas Consultancy Services Pr", "HSI", "USM Business Systems", "SolidProfessor", "Google DeepMind", "Virtual Labs Inc.", "Lambda", "The Finders", "Cross Platform Developer", "Appzlogic ", "Datavail", "Infomatics Corp", "MongoDB", "Pluralsight" ], "textfont": { "color": "white", "size": 8 }, "textposition": "top center", "type": "scatter", "x": [ -0.9560802919122287, -0.8178072349549047, -0.51088390477384, 0.03385772127986288, 0.155681883616803, 0.9633331375888634, 0.7254841733567758, 0.1565674339014217, -0.9062075679479762, -0.9764391950133313, -0.3272617252695024, 0.9248668300158991, -0.6932915075656053, -0.6411098102454604, -0.36910593125045776, 0.6039407907498316, -0.9649462556609305, 0.5070960506385946, 0.4799934413290479, 0.04582703549054048, 0.9405220306259391, -0.04197551862332277, -0.6843079653481063, 0.6809598616104406, 0.9878192126313164, -0.8758733747212577, 0.9243291569443604, 0.9396663982885644, 0.8501924531107831, -0.8126553278199413, -0.9795833690173713, -0.8491059562001699, 0.8676712512668304, -0.27550373796794253, -0.5333794423046525, -0.5874281621787033, 0.8228099567237458, 0.28934438249608047, 0.6986374649591934, 0.986606253155378, 0.4395603864358236, -0.20313400318906608, -0.916790157482521, 0.606427121065023, -1, -0.11558918281292858, -0.9167739852822442, 0.9911675438653995, 0.1306907098573154, -0.18630594436687903, 0.9480801792307914, 0.6534620851761535, -0.30661812506089037 ], "y": [ 0.09304224125281234, 0.6504381140050118, 0.7747118143539422, 0.014578780025047939, -0.9425873597731047, 0.37221871227342745, 0.7617491181934801, 0.9801149165378112, -0.43479480859055325, -0.20010659485776616, -0.8677305146023527, -0.3172141863038881, 0.5723368740829652, 0.7535771780958957, 0.9752874600353632, -0.7831007240619937, 0.35274605956330785, 0.806660341634723, -0.9010264088848234, -0.9681012707939812, 0.29572534840003256, -0.9940816396722265, -0.6171287502791867, 0.6485930195539545, -0.02664853102043255, 0.44539436543136557, 0.20566744112231705, -0.12272794163406031, 0.057675404273527714, -0.6581629895590582, 0.19412416614086964, 0.007936963366552648, -0.5326593762096774, 0.8910871344525347, -0.8581162835039302, -0.7747171261844794, 0.6234011468667592, 0.9378640214470436, -0.7180536130518578, 0.08864147851135552, 0.9143020256802576, -0.9627197644733071, -0.14659629052058548, 0.8121828199894329, -0.03252901424956319, -0.9285352247608196, -0.33007227200585304, -0.22072929288020213, 0.9060505833817114, 0.9898304539186001, -0.4114288196784026, -0.6121474999811323, -0.9672988736742945 ] } ], "layout": { "font": { "color": "white" }, "height": 900, "hovermode": "closest", "paper_bgcolor": "#0d0d0d", "plot_bgcolor": "#1a1a1a", "showlegend": true, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Network Graph: Candidates ↔ Companies (with Nodes & Edges)" }, "width": 1400, "xaxis": { "showgrid": false, "showticklabels": false, "zeroline": false }, "yaxis": { "showgrid": false, "showticklabels": false, "zeroline": false } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "βœ… NETWORK GRAPH WITH NODES CREATED!\n", "\n", "πŸ’‘ Legend:\n", " 🟒 Green circles = Candidates\n", " πŸ”΄ Red squares = Companies\n", " ━━━ Lines = Matching connections\n", " Thicker lines = Stronger match\n", "\n" ] } ], "source": [ "# ============================================================================\n", "# NETWORK GRAPH WITH NODES & EDGES (usando networkx + plotly)\n", "# ============================================================================\n", "\n", "import networkx as nx\n", "import plotly.graph_objects as go\n", "\n", "print(\"πŸ•ΈοΈ Creating NETWORK GRAPH with nodes and edges...\\n\")\n", "\n", "# ----------------------------------------------------------------------------\n", "# STEP 1: Create NetworkX graph\n", "# ----------------------------------------------------------------------------\n", "\n", "G = nx.Graph()\n", "\n", "# Sample for visualization\n", "n_cand_sample = min(20, len(candidates)) # 20 candidates\n", "top_k_per_cand = 5 # Top 5 matches each\n", "\n", "print(f\"πŸ“Š Building network:\")\n", "print(f\" β€’ {n_cand_sample} candidate nodes\")\n", "print(f\" β€’ {top_k_per_cand} companies per candidate\")\n", "\n", "# Add candidate nodes\n", "for i in range(n_cand_sample):\n", " G.add_node(\n", " f\"C{i}\",\n", " node_type='candidate',\n", " label=f\"Candidate {i}\"\n", " )\n", "\n", "# Add company nodes and edges\n", "companies_in_graph = set()\n", "\n", "for i in range(n_cand_sample):\n", " matches = find_top_matches(i, top_k=top_k_per_cand)\n", "\n", " for comp_idx, score in matches:\n", " comp_id = f\"J{comp_idx}\"\n", "\n", " # Add company node if not exists\n", " if comp_id not in companies_in_graph:\n", " company_name = companies_full.iloc[comp_idx].get('name', 'N/A')[:30]\n", " G.add_node(\n", " comp_id,\n", " node_type='company',\n", " label=company_name\n", " )\n", " companies_in_graph.add(comp_id)\n", "\n", " # Add edge (connection!)\n", " G.add_edge(\n", " f\"C{i}\",\n", " comp_id,\n", " weight=float(score)\n", " )\n", "\n", "print(f\"\\nβœ… Network created!\")\n", "print(f\" β€’ Nodes: {G.number_of_nodes()}\")\n", "print(f\" β€’ Edges: {G.number_of_edges()}\")\n", "\n", "# ----------------------------------------------------------------------------\n", "# STEP 2: Calculate layout (positions using spring layout)\n", "# ----------------------------------------------------------------------------\n", "\n", "print(f\"\\nπŸ”„ Calculating network layout...\")\n", "\n", "# Use spring layout (force-directed)\n", "pos = nx.spring_layout(\n", " G,\n", " k=2, # Optimal distance between nodes\n", " iterations=50,\n", " seed=42\n", ")\n", "\n", "print(f\"βœ… Layout calculated!\\n\")\n", "\n", "# ----------------------------------------------------------------------------\n", "# STEP 3: Create Plotly visualization with nodes and edges\n", "# ----------------------------------------------------------------------------\n", "\n", "# Prepare edge traces\n", "edge_trace = []\n", "\n", "for edge in G.edges(data=True):\n", " x0, y0 = pos[edge[0]]\n", " x1, y1 = pos[edge[1]]\n", " weight = edge[2]['weight']\n", "\n", " edge_trace.append(\n", " go.Scatter(\n", " x=[x0, x1, None],\n", " y=[y0, y1, None],\n", " mode='lines',\n", " line=dict(\n", " width=weight * 3, # Thicker = higher similarity\n", " color='rgba(255, 255, 255, 0.3)'\n", " ),\n", " hoverinfo='none',\n", " showlegend=False\n", " )\n", " )\n", "\n", "# Prepare node traces (separate for candidates and companies)\n", "candidate_nodes = [n for n, d in G.nodes(data=True) if d['node_type'] == 'candidate']\n", "company_nodes = [n for n, d in G.nodes(data=True) if d['node_type'] == 'company']\n", "\n", "# Candidate nodes\n", "cand_x = [pos[node][0] for node in candidate_nodes]\n", "cand_y = [pos[node][1] for node in candidate_nodes]\n", "cand_labels = [G.nodes[node]['label'] for node in candidate_nodes]\n", "\n", "candidate_trace = go.Scatter(\n", " x=cand_x,\n", " y=cand_y,\n", " mode='markers+text',\n", " name='Candidates',\n", " marker=dict(\n", " size=25,\n", " color='#00ff00',\n", " line=dict(width=2, color='white'),\n", " symbol='circle'\n", " ),\n", " text=cand_labels,\n", " textposition='top center',\n", " textfont=dict(size=10, color='white'),\n", " hovertemplate='%{text}'\n", ")\n", "\n", "# Company nodes\n", "comp_x = [pos[node][0] for node in company_nodes]\n", "comp_y = [pos[node][1] for node in company_nodes]\n", "comp_labels = [G.nodes[node]['label'] for node in company_nodes]\n", "\n", "company_trace = go.Scatter(\n", " x=comp_x,\n", " y=comp_y,\n", " mode='markers+text',\n", " name='Companies',\n", " marker=dict(\n", " size=15,\n", " color='#ff6b6b',\n", " line=dict(width=1, color='white'),\n", " symbol='square'\n", " ),\n", " text=comp_labels,\n", " textposition='top center',\n", " textfont=dict(size=8, color='white'),\n", " hovertemplate='%{text}'\n", ")\n", "\n", "# ----------------------------------------------------------------------------\n", "# STEP 4: Create figure\n", "# ----------------------------------------------------------------------------\n", "\n", "fig = go.Figure(data=edge_trace + [candidate_trace, company_trace])\n", "\n", "fig.update_layout(\n", " title='Network Graph: Candidates ↔ Companies (with Nodes & Edges)',\n", " showlegend=True,\n", " hovermode='closest',\n", " width=1400,\n", " height=900,\n", " plot_bgcolor='#1a1a1a',\n", " paper_bgcolor='#0d0d0d',\n", " font=dict(color='white'),\n", " xaxis=dict(showgrid=False, zeroline=False, showticklabels=False),\n", " yaxis=dict(showgrid=False, zeroline=False, showticklabels=False)\n", ")\n", "\n", "fig.show()\n", "\n", "print(\"βœ… NETWORK GRAPH WITH NODES CREATED!\")\n", "print(\"\\nπŸ’‘ Legend:\")\n", "print(\" 🟒 Green circles = Candidates\")\n", "print(\" πŸ”΄ Red squares = Companies\")\n", "print(\" ━━━ Lines = Matching connections\")\n", "print(\" Thicker lines = Stronger match\\n\")" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "βœ… Interactive network saved to network_graph.html\n" ] } ], "source": [ "#!pip install pyvis\n", "\n", "from pyvis.network import Network\n", "\n", "# Create PyVis network\n", "net = Network(height='800px', width='100%', bgcolor='#222', font_color='white')\n", "\n", "# Add nodes\n", "for i in range(n_cand_sample):\n", " net.add_node(f\"C{i}\", label=f\"Cand {i}\", color='green', size=25)\n", "\n", "# Add companies and edges\n", "for i in range(n_cand_sample):\n", " matches = find_top_matches(i, top_k=5)\n", " for comp_idx, score in matches:\n", " comp_id = f\"J{comp_idx}\"\n", " if comp_id not in net.get_nodes():\n", " company_name = companies_full.iloc[comp_idx].get('name', 'N/A')[:20]\n", " net.add_node(comp_id, label=company_name, color='red', size=15)\n", "\n", " # Add edge\n", " net.add_edge(f\"C{i}\", comp_id, value=float(score)*10, title=f\"{score:.3f}\")\n", "\n", "# Physics\n", "net.set_options(\"\"\"\n", "{\n", " \"physics\": {\n", " \"enabled\": true,\n", " \"solver\": \"forceAtlas2Based\"\n", " }\n", "}\n", "\"\"\")\n", "\n", "net.save_graph('../results/network_graph.html')\n", "print(\"βœ… Interactive network saved to network_graph.html\")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "================================================================================\n", "🟒 CANDIDATE #76\n", "================================================================================\n", "\n", "πŸ“Š ALL 35 DIMENSIONS:\n", "\n", "🎯 Career Objective: Seeking Roles In Machine Learning, Natural Language Processing, Deep Learning. Previously worked as a Data Processing intern. Having good knowledge in using Python Libraries and different data process...\n", "πŸ’» Skills: ['Machine Learning', 'Natural Language Processing', 'Deep Learning', 'Business Analysis', 'Python', 'Numpy', 'Pandas', 'Scikit Learn', 'Tensorflow', 'Keras', 'PySpark']\n", "πŸŽ“ Education Institution: ['Sl Thala Model college']\n", "πŸ“œ Degrees: ['B.Tech']\n", "πŸ“… Graduation Years: ['2020']\n", "⭐ Academic Results: ['N/A']\n", "πŸ“Š Result Types: ['N/A']\n", "πŸ“š Major Field: ['N/A']\n", "🏒 Companies Worked: ['SaiKo Computation']\n", "πŸ”— Company URLs: [None]\n", "πŸ“… Start Dates: ['May 2019']\n", "πŸ“… End Dates: ['August 2019']\n", "πŸ‘” Positions Held: ['Data Processing Junior Intern']\n", "πŸ“ Work Locations: ['N/A']\n", "πŸ“‹ Responsibilities: Machine Learning Leadership\n", "Cross-Functional Collaboration\n", "Strategy Development\n", "ML/NLP Infrastructure\n", "Prototype Transformation\n", "ML System Design\n", "Algorithm Research\n", "Application Development\n", "Dataset Selec...\n", "🎨 Activities: ['Course']\n", "πŸ›οΈ Organizations: ['ML Artistry']\n", "πŸ”— Organization Links: [None]\n", "πŸ‘‘ Leadership Roles: ['Participant']\n", "πŸ“‹ Additional Responsibilities: Machine Learning Leadership\n", "Cross-Functional Collaboration\n", "Strategy Development\n", "ML/NLP Infrastructure\n", "Prototype Transformation\n", "ML System Design\n", "Algorithm Research\n", "Application Development\n", "Dataset Selec...\n", "🎯 Matched Score: 0.826666667\n", "\n", "πŸ“ TEXT REPRESENTATION (for embedding):\n", "--------------------------------------------------------------------------------\n", "Professional seeking: Seeking Roles In Machine Learning, Natural Language Processing, Deep Learning. Previously worked as a Data Processing intern. Having good knowledge in using Python Libraries and different data processing tools. || Skills and expertise: ['Machine Learning', 'Natural Language Processing', 'Deep Learning', 'Business Analysis', 'Python', 'Numpy', 'Pandas', 'Scikit Learn', 'Tensorflow', 'Keras', 'PySpark'] || Experience in roles: ['Data Processing Junior Intern'] || Companies wo\n", "...\n", "\n", "================================================================================\n", "\n", "================================================================================\n", "🟒 CANDIDATE #76\n", "================================================================================\n", "\n", "πŸ“Š ALL 35 DIMENSIONS:\n", "\n", "🎯 Career Objective: Seeking Roles In Machine Learning, Natural Language Processing, Deep Learning. Previously worked as a Data Processing intern. Having good knowledge in using Python Libraries and different data process...\n", "πŸ’» Skills: ['Machine Learning', 'Natural Language Processing', 'Deep Learning', 'Business Analysis', 'Python', 'Numpy', 'Pandas', 'Scikit Learn', 'Tensorflow', 'Keras', 'PySpark']\n", "πŸŽ“ Education Institution: ['Sl Thala Model college']\n", "πŸ“œ Degrees: ['B.Tech']\n", "πŸ“… Graduation Years: ['2020']\n", "⭐ Academic Results: ['N/A']\n", "πŸ“Š Result Types: ['N/A']\n", "πŸ“š Major Field: ['N/A']\n", "🏒 Companies Worked: ['SaiKo Computation']\n", "πŸ”— Company URLs: [None]\n", "πŸ“… Start Dates: ['May 2019']\n", "πŸ“… End Dates: ['August 2019']\n", "πŸ‘” Positions Held: ['Data Processing Junior Intern']\n", "πŸ“ Work Locations: ['N/A']\n", "πŸ“‹ Responsibilities: Machine Learning Leadership\n", "Cross-Functional Collaboration\n", "Strategy Development\n", "ML/NLP Infrastructure\n", "Prototype Transformation\n", "ML System Design\n", "Algorithm Research\n", "Application Development\n", "Dataset Selec...\n", "🎨 Activities: ['Course']\n", "πŸ›οΈ Organizations: ['ML Artistry']\n", "πŸ”— Organization Links: [None]\n", "πŸ‘‘ Leadership Roles: ['Participant']\n", "πŸ“‹ Additional Responsibilities: Machine Learning Leadership\n", "Cross-Functional Collaboration\n", "Strategy Development\n", "ML/NLP Infrastructure\n", "Prototype Transformation\n", "ML System Design\n", "Algorithm Research\n", "Application Development\n", "Dataset Selec...\n", "🎯 Matched Score: 0.826666667\n", "\n", "πŸ“ TEXT REPRESENTATION (for embedding):\n", "--------------------------------------------------------------------------------\n", "Professional seeking: Seeking Roles In Machine Learning, Natural Language Processing, Deep Learning. Previously worked as a Data Processing intern. Having good knowledge in using Python Libraries and different data processing tools. || Skills and expertise: ['Machine Learning', 'Natural Language Processing', 'Deep Learning', 'Business Analysis', 'Python', 'Numpy', 'Pandas', 'Scikit Learn', 'Tensorflow', 'Keras', 'PySpark'] || Experience in roles: ['Data Processing Junior Intern'] || Companies wo\n", "...\n", "\n", "================================================================================\n", "\n", "🎯 TOP 10 COMPANY MATCHES FOR CANDIDATE #76:\n", "================================================================================\n", "\n", "Rank Score Company Required Skills\n", "--------------------------------------------------------------------------------\n", "1 0.5815 IntellectFaces, Inc \n", "2 0.5545 Lexical Intelligence \n", "3 0.5536 Lexical Intelligence \n", "4 0.5535 Understanding Recruitment \n", "5 0.5460 Vedan Technologies \n", "6 0.5452 Workera \n", "7 0.5423 Heliosz.AI \n", "8 0.5336 Logikk \n", "9 0.5317 CivicMinds, Inc \n", "10 0.5308 CivicMinds, Inc \n", "\n", "================================================================================\n", "\n", "πŸ’‘ To see full details of a company, use:\n", " display_node_data('J28802')\n", "================================================================================\n", "πŸ”΄ COMPANY #1234\n", "================================================================================\n", "\n", "πŸ“Š COMPANY INFORMATION:\n", "\n", "πŸ†” Company ID: 2934\n", "🏒 Company Name: S&P Global\n", "πŸ“„ Description: S&P Global (NYSE: SPGI) provides Essential Intelligence. We enable governments, businesses and individuals with the right data, expertise and connected technology so that they can make decisions with ...\n", "🏭 Industries: Financial Services\n", "βš™οΈ Specialties: Analytics | Credit ratings | Finance | Energy & commodities information | Intelligence | Commodities | Benchmarks | Portfolio and enterprise risk solutions | ESG | Sustainable Finance\n", "πŸ‘₯ Employee Count: 38486\n", "πŸ“ˆ Followers: 519235\n", "πŸ“ City: New York\n", "πŸ“ State: NY\n", "🌍 Country: US\n", "\n", "πŸ“ TEXT REPRESENTATION (for embedding):\n", "--------------------------------------------------------------------------------\n", "Company: S&P Global || Industries: Financial Services || Specialties: Analytics | Credit ratings | Finance | Energy & commodities information | Intelligence | Commodities | Benchmarks | Portfolio and enterprise risk solutions | ESG | Sustainable Finance || About: S&P Global (NYSE: SPGI) provides Essential Intelligence. We enable governments, businesses and individuals with the right data, expertise and connected technology so that they can make decisions with conviction. From helping our custome\n", "...\n", "\n", "================================================================================\n", "\n", "================================================================================\n", "🟒 CANDIDATE #76\n", "================================================================================\n", "\n", "πŸ“Š ALL 35 DIMENSIONS:\n", "\n", "🎯 Career Objective: Seeking Roles In Machine Learning, Natural Language Processing, Deep Learning. Previously worked as a Data Processing intern. Having good knowledge in using Python Libraries and different data process...\n", "πŸ’» Skills: ['Machine Learning', 'Natural Language Processing', 'Deep Learning', 'Business Analysis', 'Python', 'Numpy', 'Pandas', 'Scikit Learn', 'Tensorflow', 'Keras', 'PySpark']\n", "πŸŽ“ Education Institution: ['Sl Thala Model college']\n", "πŸ“œ Degrees: ['B.Tech']\n", "πŸ“… Graduation Years: ['2020']\n", "⭐ Academic Results: ['N/A']\n", "πŸ“Š Result Types: ['N/A']\n", "πŸ“š Major Field: ['N/A']\n", "🏒 Companies Worked: ['SaiKo Computation']\n", "πŸ”— Company URLs: [None]\n", "πŸ“… Start Dates: ['May 2019']\n", "πŸ“… End Dates: ['August 2019']\n", "πŸ‘” Positions Held: ['Data Processing Junior Intern']\n", "πŸ“ Work Locations: ['N/A']\n", "πŸ“‹ Responsibilities: Machine Learning Leadership\n", "Cross-Functional Collaboration\n", "Strategy Development\n", "ML/NLP Infrastructure\n", "Prototype Transformation\n", "ML System Design\n", "Algorithm Research\n", "Application Development\n", "Dataset Selec...\n", "🎨 Activities: ['Course']\n", "πŸ›οΈ Organizations: ['ML Artistry']\n", "πŸ”— Organization Links: [None]\n", "πŸ‘‘ Leadership Roles: ['Participant']\n", "πŸ“‹ Additional Responsibilities: Machine Learning Leadership\n", "Cross-Functional Collaboration\n", "Strategy Development\n", "ML/NLP Infrastructure\n", "Prototype Transformation\n", "ML System Design\n", "Algorithm Research\n", "Application Development\n", "Dataset Selec...\n", "🎯 Matched Score: 0.826666667\n", "\n", "πŸ“ TEXT REPRESENTATION (for embedding):\n", "--------------------------------------------------------------------------------\n", "Professional seeking: Seeking Roles In Machine Learning, Natural Language Processing, Deep Learning. Previously worked as a Data Processing intern. Having good knowledge in using Python Libraries and different data processing tools. || Skills and expertise: ['Machine Learning', 'Natural Language Processing', 'Deep Learning', 'Business Analysis', 'Python', 'Numpy', 'Pandas', 'Scikit Learn', 'Tensorflow', 'Keras', 'PySpark'] || Experience in roles: ['Data Processing Junior Intern'] || Companies wo\n", "...\n", "\n", "================================================================================\n", "\n", "\n", "\n", "πŸ” Enter node ID to display (e.g., 'C76' or 'J1234'):\n", "================================================================================\n", "πŸ”΄ COMPANY #33\n", "================================================================================\n", "\n", "πŸ“Š COMPANY INFORMATION:\n", "\n", "πŸ†” Company ID: 1035\n", "🏒 Company Name: Microsoft\n", "πŸ“„ Description: Every company has a mission. What's ours? To empower every person and every organization to achieve more. We believe technology can and should be a force for good and that meaningful innovation contri...\n", "🏭 Industries: Software Development\n", "βš™οΈ Specialties: Business Software | Developer Tools | Home & Educational Software | Tablets | Search | Advertising | Servers | Windows Operating System | Windows Applications & Platforms | Smartphones | Cloud Computi...\n", "πŸ‘₯ Employee Count: 227118\n", "πŸ“ˆ Followers: 22194380\n", "πŸ“ City: Redmond\n", "πŸ“ State: Washington\n", "🌍 Country: US\n", "\n", "πŸ“ TEXT REPRESENTATION (for embedding):\n", "--------------------------------------------------------------------------------\n", "Company: Microsoft || Industries: Software Development || Specialties: Business Software | Developer Tools | Home & Educational Software | Tablets | Search | Advertising | Servers | Windows Operating System | Windows Applications & Platforms | Smartphones | Cloud Computing | Quantum Computing | Future of Work | Productivity | AI | Artificial Intelligence | Machine Learning | Laptops | Mixed Reality | Virtual Reality | Gaming | Developers | IT Professional || About: Every company has a mission. W\n", "...\n", "\n", "================================================================================\n", "\n" ] } ], "source": [ "# ============================================================================\n", "# DISPLAY NODE DATA - See what's behind the graph\n", "# ============================================================================\n", "\n", "def display_node_data(node_id):\n", " \"\"\"\n", " Print all data for a specific node (candidate or company).\n", "\n", " Args:\n", " node_id: str like \"C76\" (candidate) or \"J1234\" (company)\n", " \"\"\"\n", "\n", " print(\"=\" * 80)\n", "\n", " if node_id.startswith('C'):\n", " # It's a CANDIDATE\n", " cand_idx = int(node_id[1:])\n", "\n", " if cand_idx >= len(candidates):\n", " print(f\"❌ Candidate {cand_idx} not found!\")\n", " return\n", "\n", " candidate = candidates.iloc[cand_idx]\n", "\n", " print(f\"🟒 CANDIDATE #{cand_idx}\")\n", " print(\"=\" * 80)\n", "\n", " # Display all 35 dimensions\n", " print(\"\\nπŸ“Š ALL 35 DIMENSIONS:\\n\")\n", "\n", " dimensions = [\n", " ('address', 'πŸ“ Address'),\n", " ('career_objective', '🎯 Career Objective'),\n", " ('skills', 'πŸ’» Skills'),\n", " ('educational_institution_name', 'πŸŽ“ Education Institution'),\n", " ('degree_names', 'πŸ“œ Degrees'),\n", " ('passing_years', 'πŸ“… Graduation Years'),\n", " ('educational_results', '⭐ Academic Results'),\n", " ('result_types', 'πŸ“Š Result Types'),\n", " ('major_field_of_studies', 'πŸ“š Major Field'),\n", " ('professional_company_names', '🏒 Companies Worked'),\n", " ('company_urls', 'πŸ”— Company URLs'),\n", " ('start_dates', 'πŸ“… Start Dates'),\n", " ('end_dates', 'πŸ“… End Dates'),\n", " ('related_skills_in_job', 'πŸ› οΈ Job-Related Skills'),\n", " ('positions', 'πŸ‘” Positions Held'),\n", " ('locations', 'πŸ“ Work Locations'),\n", " ('responsibilities', 'πŸ“‹ Responsibilities'),\n", " ('extra_curricular_activity_types', '🎨 Activities'),\n", " ('extra_curricular_organization_names', 'πŸ›οΈ Organizations'),\n", " ('extra_curricular_organization_links', 'πŸ”— Organization Links'),\n", " ('role_positions', 'πŸ‘‘ Leadership Roles'),\n", " ('languages', '🌍 Languages'),\n", " ('proficiency_levels', 'πŸ“Š Language Proficiency'),\n", " ('certification_providers', 'πŸ… Certification Providers'),\n", " ('certification_skills', 'βœ… Certified Skills'),\n", " ('online_links', 'πŸ”— Online Profiles'),\n", " ('issue_dates', 'πŸ“… Certification Issue Dates'),\n", " ('expiry_dates', 'πŸ“… Certification Expiry'),\n", " ('job_position_name', 'πŸ’Ό Desired Position'),\n", " ('educational_requirements', 'πŸŽ“ Education Requirements'),\n", " ('experience_requirement', '⏱️ Experience Required'),\n", " ('age_requirement', 'πŸ‘€ Age Requirement'),\n", " ('responsibilities.1', 'πŸ“‹ Additional Responsibilities'),\n", " ('skills_required', 'πŸ”§ Skills Required'),\n", " ('matched_score', '🎯 Matched Score')\n", " ]\n", "\n", " for col_name, emoji_label in dimensions:\n", " value = candidate.get(col_name, '')\n", " if value and str(value) != '' and str(value) != 'nan':\n", " # Truncate long values\n", " value_str = str(value)[:200]\n", " if len(str(value)) > 200:\n", " value_str += \"...\"\n", " print(f\"{emoji_label}: {value_str}\")\n", "\n", " # Show text representation (what goes into embedding)\n", " print(f\"\\nπŸ“ TEXT REPRESENTATION (for embedding):\")\n", " print(\"-\" * 80)\n", " print(candidate.get('text', 'N/A')[:500])\n", " if len(str(candidate.get('text', ''))) > 500:\n", " print(\"...\")\n", "\n", " elif node_id.startswith('J'):\n", " # It's a COMPANY\n", " comp_idx = int(node_id[1:])\n", "\n", " if comp_idx >= len(companies_full):\n", " print(f\"❌ Company {comp_idx} not found!\")\n", " return\n", "\n", " company = companies_full.iloc[comp_idx]\n", "\n", " print(f\"πŸ”΄ COMPANY #{comp_idx}\")\n", " print(\"=\" * 80)\n", "\n", " # Display company data\n", " print(\"\\nπŸ“Š COMPANY INFORMATION:\\n\")\n", "\n", " company_fields = [\n", " ('company_id', 'πŸ†” Company ID'),\n", " ('name', '🏒 Company Name'),\n", " ('description', 'πŸ“„ Description'),\n", " ('industries_list', '🏭 Industries'),\n", " ('specialties_list', 'βš™οΈ Specialties'),\n", " ('employee_count', 'πŸ‘₯ Employee Count'),\n", " ('follower_count', 'πŸ“ˆ Followers'),\n", " ('city', 'πŸ“ City'),\n", " ('state', 'πŸ“ State'),\n", " ('country', '🌍 Country'),\n", " ('posted_job_titles', 'πŸ’Ό Posted Jobs'),\n", " ('posted_descriptions', 'πŸ“ Job Descriptions'),\n", " ('required_skills', 'πŸ”§ Required Skills'),\n", " ('experience_levels', '⏱️ Experience Levels'),\n", " ('work_types', 'πŸ’» Work Types')\n", " ]\n", "\n", " for col_name, emoji_label in company_fields:\n", " value = company.get(col_name, '')\n", " if value and str(value) != '' and str(value) != 'nan':\n", " value_str = str(value)[:200]\n", " if len(str(value)) > 200:\n", " value_str += \"...\"\n", " print(f\"{emoji_label}: {value_str}\")\n", "\n", " # Show text representation\n", " print(f\"\\nπŸ“ TEXT REPRESENTATION (for embedding):\")\n", " print(\"-\" * 80)\n", " print(company.get('text', 'N/A')[:500])\n", " if len(str(company.get('text', ''))) > 500:\n", " print(\"...\")\n", "\n", " else:\n", " print(f\"❌ Invalid node ID: {node_id}\")\n", " print(\" Use format: 'C76' for candidates or 'J1234' for companies\")\n", "\n", " print(\"\\n\" + \"=\" * 80 + \"\\n\")\n", "\n", "\n", "# ============================================================================\n", "# DISPLAY NODE + ALL CONNECTIONS\n", "# ============================================================================\n", "\n", "def display_node_with_connections(node_id, top_k=10):\n", " \"\"\"\n", " Display node data + all its connections.\n", " \"\"\"\n", "\n", " # Display the node itself\n", " display_node_data(node_id)\n", "\n", " # If candidate, show their top matches\n", " if node_id.startswith('C'):\n", " cand_idx = int(node_id[1:])\n", "\n", " print(f\"🎯 TOP {top_k} COMPANY MATCHES FOR CANDIDATE #{cand_idx}:\")\n", " print(\"=\" * 80)\n", "\n", " matches = find_top_matches(cand_idx, top_k=top_k)\n", "\n", " print(f\"\\n{'Rank':<6} {'Score':<8} {'Company':<35} {'Required Skills'}\")\n", " print(\"-\" * 80)\n", "\n", " for rank, (comp_idx, score) in enumerate(matches, 1):\n", " company = companies_full.iloc[comp_idx]\n", " name = company.get('name', 'N/A')[:33]\n", " skills = company.get('required_skills', 'N/A')[:40]\n", " print(f\"{rank:<6} {score:.4f} {name:<35} {skills}\")\n", "\n", " print(\"\\n\" + \"=\" * 80)\n", "\n", " # Ask if user wants to see details\n", " print(f\"\\nπŸ’‘ To see full details of a company, use:\")\n", " print(f\" display_node_data('J{matches[0][0]}')\")\n", "\n", "\n", "# ============================================================================\n", "# BATCH DISPLAY - Multiple nodes at once\n", "# ============================================================================\n", "\n", "def display_multiple_nodes(node_ids):\n", " \"\"\"\n", " Display data for multiple nodes.\n", "\n", " Args:\n", " node_ids: list of str like [\"C76\", \"J1234\", \"C80\"]\n", " \"\"\"\n", " for node_id in node_ids:\n", " display_node_data(node_id)\n", " print(\"\\n\")\n", "\n", "\n", "# ============================================================================\n", "# USAGE EXAMPLES\n", "# ============================================================================\n", "\n", "# Example 1: Display Candidate 76\n", "display_node_data('C76')\n", "\n", "# Example 2: Display Candidate 76 + their top matches\n", "display_node_with_connections('C76', top_k=10)\n", "\n", "# Example 3: Display a specific company\n", "display_node_data('J1234')\n", "\n", "# Example 4: Display multiple nodes\n", "display_multiple_nodes(['C76'])\n", "\n", "# Example 5: Interactive selection\n", "print(\"πŸ” Enter node ID to display (e.g., 'C76' or 'J1234'):\")\n", "node_input = input().strip()\n", "display_node_with_connections(node_input)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.3" } }, "nbformat": 4, "nbformat_minor": 4 }