Skip to content

Instantly share code, notes, and snippets.

@simonw
Created December 20, 2025 06:53
Show Gist options
  • Select an option

  • Save simonw/2a157668c080cc01954e46f914572af4 to your computer and use it in GitHub Desktop.

Select an option

Save simonw/2a157668c080cc01954e46f914572af4 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
{"type":"summary","summary":"SQLite Datasette permission matching fix","leafUuid":"87b603ee-c5a4-44eb-b270-ebc8ea6841d7"}
{"type":"file-history-snapshot","messageId":"5ff4b2b2-6ef6-4119-9b87-28fb8f0a568a","snapshot":{"messageId":"5ff4b2b2-6ef6-4119-9b87-28fb8f0a568a","trackedFileBackups":{},"timestamp":"2025-12-20T05:56:49.103Z"},"isSnapshotUpdate":false}
{"parentUuid":null,"isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","type":"user","message":{"role":"user","content":"http://localhost:8042/demo.html is served from this directory, take a screenshot of it and look at it"},"uuid":"5ff4b2b2-6ef6-4119-9b87-28fb8f0a568a","timestamp":"2025-12-20T05:56:49.097Z","thinkingMetadata":{"level":"high","disabled":false,"triggers":[]},"todos":[]}
{"parentUuid":"5ff4b2b2-6ef6-4119-9b87-28fb8f0a568a","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","message":{"model":"claude-opus-4-5-20251101","id":"msg_01KmmGm9AQozMLbwXwa849Ro","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"The user wants me to take a screenshot of a webpage at http://localhost:8042/demo.html. I need to use a tool that can capture screenshots. Let me think about what tools I have available.\n\nLooking at my available tools, I have WebFetch which can fetch content from URLs, but it doesn't take screenshots - it converts HTML to markdown and processes with AI.\n\nI don't have a dedicated screenshot tool. However, I could potentially use a bash command to take a screenshot. On macOS, there are tools like `screencapture` but that captures the screen, not a webpage.\n\nFor taking screenshots of webpages, I might need to use tools like:\n- `webkit2png` (macOS)\n- `puppeteer` (Node.js)\n- `playwright` (Node.js/Python)\n- Chrome/Chromium headless mode\n\nLet me try using a headless browser approach. First, let me check what's available on the system and what files are in the current directory.\n\nActually, let me first check what files are in the directory to understand what demo.html contains, and then figure out how to take a screenshot.","signature":"EqQJCkYIChgCKkAAdkO0HkT2Qz3UKguNveTopm8oy6Eu8WYmd/4ehpA77Tw9mx0JJN860L0PItvpP3iXufVMHkwOoZkOuKg/fqB+Egxpv5BpU9bKgvQRjHMaDCKYB4BnUWYxtpL6wCIwcM4ygsbt41pGhSrvDjuNGlubu9S7+vAuRPql+DoO1SraAsVnNuHtd9InndI0BfiIKosIVy44dOlID7fOwu3NPg0jUWFYZ0Od68t1+5sUF5UA+X2tdMBNtDUPibwOcPU58kJYc8Z4PhOk3IqqTS7G+1956zYV9nuvKpiTS/dhMOKa23Ubxy72E1yYIOlAionfPs7W+Ydx1xgp/zjG6wEmyHsmj9++4PtRRyA2kxQIlqoIxewahKzD9hJ9fRnvyuoP1mTZRWuDUqQ8cOBHjZkVvCXKyG5wLRn1qARbR08FokKPYC/guVQILIy5pWW/mX84fesxTGT1tz+cJR22qwZo6GKGWycWu0G3xfTmGphOps/Sw6pBGKVE2ddbbdbzp/mTb7U6RvSj3eAUN76tNHvqxSdTyixfVbWQfLgOLo7gt9Bm+j25FkfKSMLADeC1ZAmSOGCmQM6GNzMjxmJhzqoLqvdUHqSw9yjLC+LF2+yQKdAP3bmw/SFD2MrK4V2PKZE0T5nJ9pNL22GxKUlqVF3qTEziml+DCe+WTb0pX4x4Tw23qlYJVbaRfIQi+D/Olna4CzO21Tu4DQ8gqsPsYhcvE/6N/fNnZNrLplXesmSW+ugRjkWvCjfLKv/7CTIS1S25LxzLHN7DDEGf1bV1Xx44vYfbhLmh/nXt3UwGDjUbCkJsRWWaxb/Tuv1oEw+L7FqW3i069QoioDYLtNMS6trLHKi/5zd3MEGjEpChvx2tT18pmCjKGM6HO/YLl4SGVMgTqFVEHhkYk4r0ld2Jcibt0I14fWxvtsOxqgExuzt6Ec+Swqn+RIgWSOmYWYGbMwBRaDzrYTFGNPnq3WYsRqpWzpQX7KqLyQt1oAfWhbfgv8zd+anyWvCbCUdizLVsoH/i43vczvIGZMC0bBMZKXn4OUYaUjGVvMolMedztjqF0IESAFebjhxxw2pIuCIO4qkCm5z5qIvP8EKtXZ5Kt7WjjnIKytNwi0dkCMNkeHQC7yQ2VzFWf1KPvZGXptFh3jPtJuwMizKAyYe5VDv6iNJDuKLqXEmcQYuUre4PrkGKwfFOkJZfNrb9jqtcWhWAphvoh524rs1LmlQnr+ArweOR9Wfm8ewdpjuS4tFEoGTjldSKsXglYRNovOwOIne/qP6ryryVpy09Bee5M3OA3A6aetJzYZezbnvjzY74+hXgELqcf+Ac7057MprdXJ2BeOX3VvItcG3PvAYB2dUcatYfULcVGCn6wU8VNHzUtjcEhgIy1dZb9z41YKpLtSUw5+WH0MBM5oBLMrP7hX82htr0PNsQhMVLLJUXEvAbIYnxgd5XAnoI+HnESt7fDi7JTJF07ohiUDQhRVBCxo//P5a6uFJldFWIst6qNwbP1XmySh82QkBpbGkSrxuXYlDgTyg2QDxWmN/nBGtX1XUJGqEC69EdQi4D8p+/fChIFMukGAE="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":5823,"cache_read_input_tokens":12832,"cache_creation":{"ephemeral_5m_input_tokens":5823,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRZLm2fYHirLU6NDN97","type":"assistant","uuid":"ffc3e0af-3a96-4787-a724-9f944084c5e1","timestamp":"2025-12-20T05:56:57.125Z"}
{"parentUuid":"ffc3e0af-3a96-4787-a724-9f944084c5e1","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","message":{"model":"claude-opus-4-5-20251101","id":"msg_01KmmGm9AQozMLbwXwa849Ro","type":"message","role":"assistant","content":[{"type":"text","text":"I'll take a screenshot of that webpage. Let me first check what's in this directory and then use a tool to capture the screenshot."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":5823,"cache_read_input_tokens":12832,"cache_creation":{"ephemeral_5m_input_tokens":5823,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRZLm2fYHirLU6NDN97","type":"assistant","uuid":"d95e696a-eb3c-46cd-94a5-2b8f81ee3810","timestamp":"2025-12-20T05:56:58.008Z"}
{"parentUuid":"d95e696a-eb3c-46cd-94a5-2b8f81ee3810","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","message":{"model":"claude-opus-4-5-20251101","id":"msg_01KmmGm9AQozMLbwXwa849Ro","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01CSgJQYaZzW19Vybo3VzBQ7","name":"Glob","input":{"pattern":"*"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":5823,"cache_read_input_tokens":12832,"cache_creation":{"ephemeral_5m_input_tokens":5823,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRZLm2fYHirLU6NDN97","type":"assistant","uuid":"22d25b16-918d-4e92-aeea-135089cb4688","timestamp":"2025-12-20T05:56:58.435Z"}
{"parentUuid":"22d25b16-918d-4e92-aeea-135089cb4688","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","message":{"model":"claude-opus-4-5-20251101","id":"msg_01KmmGm9AQozMLbwXwa849Ro","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_013wahzW9SzSk4tCHLrDYsmF","name":"Bash","input":{"command":"which screencapture && which open","description":"Check available screenshot tools"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":5823,"cache_read_input_tokens":12832,"cache_creation":{"ephemeral_5m_input_tokens":5823,"ephemeral_1h_input_tokens":0},"output_tokens":403,"service_tier":"standard"}},"requestId":"req_011CWHRZLm2fYHirLU6NDN97","type":"assistant","uuid":"3b69f8f3-6a4f-42ff-8742-e8fe24c3854a","timestamp":"2025-12-20T05:56:59.330Z"}
{"parentUuid":"3b69f8f3-6a4f-42ff-8742-e8fe24c3854a","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01CSgJQYaZzW19Vybo3VzBQ7","type":"tool_result","content":"/private/tmp/files/README.md\n/private/tmp/files/grid-lanes-polyfill.min.js\n/private/tmp/files/package.json\n/private/tmp/files/grid-lanes-polyfill.js\n/private/tmp/files/demo.html\n/private/tmp/files/grid-lanes-polyfill.d.ts"}]},"uuid":"52be6726-9b2c-4b85-9490-68f284a28490","timestamp":"2025-12-20T05:56:59.390Z","toolUseResult":{"filenames":["/private/tmp/files/README.md","/private/tmp/files/grid-lanes-polyfill.min.js","/private/tmp/files/package.json","/private/tmp/files/grid-lanes-polyfill.js","/private/tmp/files/demo.html","/private/tmp/files/grid-lanes-polyfill.d.ts"],"durationMs":9,"numFiles":6,"truncated":false}}
{"parentUuid":"52be6726-9b2c-4b85-9490-68f284a28490","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_013wahzW9SzSk4tCHLrDYsmF","type":"tool_result","content":"/usr/sbin/screencapture\n/usr/bin/open","is_error":false}]},"uuid":"c87883bd-4b3f-4cbe-9fd7-e5fae02d03c8","timestamp":"2025-12-20T05:56:59.526Z","toolUseResult":{"stdout":"/usr/sbin/screencapture\n/usr/bin/open","stderr":"","interrupted":false,"isImage":false}}
{"parentUuid":"c87883bd-4b3f-4cbe-9fd7-e5fae02d03c8","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01H4PdNGgVYismWjxfs9nAkN","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"I see there's a demo.html file. I need to take a screenshot of it in a browser. Let me try using a headless browser approach. On macOS, I could use Safari's webkit or try using a tool like `wkhtmltoimage` if installed, or use a Python/Node script with puppeteer or playwright.\n\nLet me check if puppeteer or playwright is available, or if I can use another approach.","signature":"EpYECkYIChgCKkABmHqmFXpJeOc3tdA2JufUPqddVpdMI7LSQk+V55RGn1sLD62WLAcP69xn4dJWofwn0EnTtYiREP/t3VJRyLJDEgwWGPzG6C8CCOue+KMaDCf8jBl7UWhxGkjjaSIwVnQHsMksVVwi6ahuLEQRjIjlquVtO7r73Od7HO5Obcd2dupA0UKdug7j2sa7S+7eKv0CCiC/5gEtfSJbb8RlZ1uD+LnykT3JUqF0Ff5si5EFcBoW6kD7HHB/mIep28j+5f+p01agjIVxKlusO0k6YwKLGFySu9TLXYSB6gK7ZxrUYXuVirtpwTUQUxvS5ZHdqOqChyWzL8JZgi6GQwRb3CZVe1YbZ50lN2RQwsOYMeifUHyNfe0JVObqf/Vbc174pdVKpUEAz+pP/tfFMWOxw/qr30460yk7KULew79YRW/0Hn92BiLBhEeW7zP35FtUOCvXa3arWhO2fcJImXap32cT/L4qj9GYfjIY3z05EE9tcwvAN7z1FOSRmRRD+ZundfJl0h345OyDZIEWSkMLz10nQGJaRJTsNuxWt9nVxZ15hW+6qpZ7JBNIRiOgoQ3kPw6UPljqUNNrhUyABFmdD2jzKvmvwhu2HNdTOc40Hzda0XtSRltZ4sUtdrbSCoeBX25EyfNchRS5Y7skJp07I5z/gRYjNKNfBGoY9+mVLRYGqspaWD5TVTpT0s+wkrfeGAE="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":570,"cache_read_input_tokens":18655,"cache_creation":{"ephemeral_5m_input_tokens":570,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRa6eEyDANSsxzMdUHp","type":"assistant","uuid":"af1f0b31-2fd6-44d3-8053-3e9dd6058611","timestamp":"2025-12-20T05:57:04.174Z"}
{"parentUuid":"af1f0b31-2fd6-44d3-8053-3e9dd6058611","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01H4PdNGgVYismWjxfs9nAkN","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01CMEkxcEXRwdLV45RHcfNNF","name":"Bash","input":{"command":"which npx && npx --version","description":"Check if npx is available for running screenshot tools"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":570,"cache_read_input_tokens":18655,"cache_creation":{"ephemeral_5m_input_tokens":570,"ephemeral_1h_input_tokens":0},"output_tokens":186,"service_tier":"standard"}},"requestId":"req_011CWHRa6eEyDANSsxzMdUHp","type":"assistant","uuid":"189c2a7e-3951-41aa-a761-53f6c0089505","timestamp":"2025-12-20T05:57:04.881Z"}
{"parentUuid":"189c2a7e-3951-41aa-a761-53f6c0089505","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01CMEkxcEXRwdLV45RHcfNNF","type":"tool_result","content":"/opt/homebrew/bin/npx\n11.6.0","is_error":false}]},"uuid":"4f86e436-5081-4f4f-8494-05df280e53ce","timestamp":"2025-12-20T05:57:06.580Z","toolUseResult":{"stdout":"/opt/homebrew/bin/npx\n11.6.0","stderr":"","interrupted":false,"isImage":false}}
{"parentUuid":"4f86e436-5081-4f4f-8494-05df280e53ce","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01CfURBqLUu7i8xkRzg7k1Hp","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Good, npx is available. Let me try using playwright or puppeteer to take a screenshot. I can try using playwright's screenshot capability. Let me try a quick approach with playwright.","signature":"EuACCkYIChgCKkByJzfXHTJngppC4YvaiPPM/fHoC/Xxo9jc6wRVbZ4Rh0JIOwz0LETOqMqzTde3Yg9W3SheRbr7KJm43mbuVZ42EgyMIzHRBUSvw1NfXhsaDN6Rqhv8JK3KYbfZbCIw7KVyGn1KwEaX3oCwRWy8MJ6Unzg4OWuIb7so93bsFOHXQAoVU4KDgLyVuGeWCONMKscB7RMQvBEV66W9Vbt6pVEl7wDV0FGflcNzlI7IQ5XFqUfRRSc2U6MQUzRitSSxf4SKfzRulR7UgwoQOK/2Svu15ucDEP2UnToK7Betm5SJ18Jxp5/vKlIIoUSLt/Rm0yJT6v4H6QVOmCP8RQzUdUh79Z88k4brYrA1tkuL69f6t6SLa9fShvkltpBHEDB1rs5mjMYoTznI3kw46+GouOx/sp/Ljw+/VVZg9MSDjKSogfIenjVO8q4FncXlbnkoPmgj1TW5Zx7D6hgB"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":220,"cache_read_input_tokens":19225,"cache_creation":{"ephemeral_5m_input_tokens":220,"ephemeral_1h_input_tokens":0},"output_tokens":5,"service_tier":"standard"}},"requestId":"req_011CWHRacdYMu8qMNdVJDoFU","type":"assistant","uuid":"3ed543d9-d394-468c-bc09-3ea0843dd05a","timestamp":"2025-12-20T05:57:09.343Z"}
{"parentUuid":"3ed543d9-d394-468c-bc09-3ea0843dd05a","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01CfURBqLUu7i8xkRzg7k1Hp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Xy5cTkP1HuKHh2RXAq9KiU","name":"Bash","input":{"command":"npx playwright screenshot --browser chromium \"http://localhost:8042/demo.html\" screenshot.png 2>&1","description":"Take screenshot of demo.html using playwright","timeout":120000}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":220,"cache_read_input_tokens":19225,"cache_creation":{"ephemeral_5m_input_tokens":220,"ephemeral_1h_input_tokens":0},"output_tokens":5,"service_tier":"standard"}},"requestId":"req_011CWHRacdYMu8qMNdVJDoFU","type":"assistant","uuid":"a793c4b3-cf5d-467b-a851-2d75ac69063d","timestamp":"2025-12-20T05:57:10.932Z"}
{"parentUuid":"a793c4b3-cf5d-467b-a851-2d75ac69063d","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Xy5cTkP1HuKHh2RXAq9KiU","type":"tool_result","content":"Navigating to http://localhost:8042/demo.html\nCapturing screenshot into screenshot.png","is_error":false}]},"uuid":"a2d60069-411e-4004-8a26-8769cbd1f292","timestamp":"2025-12-20T05:57:16.546Z","toolUseResult":{"stdout":"Navigating to http://localhost:8042/demo.html\nCapturing screenshot into screenshot.png","stderr":"","interrupted":false,"isImage":false}}
{"parentUuid":"a2d60069-411e-4004-8a26-8769cbd1f292","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01EFzCGpRYHokpEdmxjuEe8f","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"The screenshot was captured. Now let me read it using the Read tool which can view images.","signature":"EoICCkYIChgCKkAuAQ/cw90pv9qsTnMcO86uDLM5v9Bqki1+YHWndsUN/M9ehN74U2TBRQkNhJLCwcGqC4XvebMnwNUT19cWuPPpEgxEbmojgh6USvBYhBUaDO5PfEnXHJsraasfVCIwnM63kWC3z2RzQa/WDtpF4Sy4R/6pDRY+5T8bP0xLD2GokklBNaB4ZQMVX15kfK+uKmosnfl6gXrYpXHQTtbP6C2W+PuKoO/9/+2C5urIQXdREjsNYtruQAot8A4niw+soOoIVGjOq0pLPF74PkcF6Fhnv2hqkyO11GeBItkAKg453fWO13A8/saWcDrc3zlt9A9FlatnMGXWcDthGAE="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":208,"cache_read_input_tokens":19445,"cache_creation":{"ephemeral_5m_input_tokens":208,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRbMtJDbKH3b3PHmJxq","type":"assistant","uuid":"47b36520-9dd4-4bac-baf5-22c8c917eb8a","timestamp":"2025-12-20T05:57:19.523Z"}
{"parentUuid":"47b36520-9dd4-4bac-baf5-22c8c917eb8a","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01EFzCGpRYHokpEdmxjuEe8f","type":"message","role":"assistant","content":[{"type":"text","text":"The screenshot was captured. Let me view it."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":208,"cache_read_input_tokens":19445,"cache_creation":{"ephemeral_5m_input_tokens":208,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRbMtJDbKH3b3PHmJxq","type":"assistant","uuid":"f8676dfe-20d6-44cf-a127-fe31e64ae96d","timestamp":"2025-12-20T05:57:20.023Z"}
{"parentUuid":"f8676dfe-20d6-44cf-a127-fe31e64ae96d","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01EFzCGpRYHokpEdmxjuEe8f","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01EPVyHaJdLymx6QmTPfZXAj","name":"Read","input":{"file_path":"/private/tmp/files/screenshot.png"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":208,"cache_read_input_tokens":19445,"cache_creation":{"ephemeral_5m_input_tokens":208,"ephemeral_1h_input_tokens":0},"output_tokens":100,"service_tier":"standard"}},"requestId":"req_011CWHRbMtJDbKH3b3PHmJxq","type":"assistant","uuid":"6d63a016-4c96-43a4-8413-4858fbbcbfe7","timestamp":"2025-12-20T05:57:20.497Z"}
{"parentUuid":"6d63a016-4c96-43a4-8413-4858fbbcbfe7","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01EPVyHaJdLymx6QmTPfZXAj","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"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ZU+B/uyzz+JPktPyuuuulcdkvhqnqBBi7NixixcvHjp0qDHMrr32WukhvOqqq0wI5OujK4cPv2DIkNOYNyv4lltu+c1vfpMsGnff/fPBg081T6FH7Ny5g7yF0iCn2x966MHevXuzA3HmmWfu3bs3MzOzRYuWl112qbHGV6xYkfD65cuXr169um/fvmQtyzODBg0yv7777nvG+i0rK/v2229r1qzZqlUreeb8889fvHgJ+Z8nT55MLlw6b+zYhQsXygM5//kPf/gDuTft1NH1ZIVKy7Bp02Zku1566aUJY5ibmysPyLNtT+GmAYV///vfZm2wgXKeHLDM89ya5G/atPHTTz8jNy+ViDzpbdfVdN26tazCvPXWmyY3Nm/eTN715s1bnHxyH7kxdd++/W666eann/5f6K5QDMeNG0duYTKMmTcGMXDgQDrDvLEGMx5RVLQHL14CAAAAAAAgHfje1gAbyIX45ZdjjCOxV6/eZLOR+UfHTz/99L/+9S/mLa+dM2e2nDdrtssyliHxzTfffOZxzTXXyFWdU6d+neKhZ511pjm+55573n33XeZNuKW7pH1Vr169Vq1aLl++ImXcGbma409S5H/1q1/Fn3/nnXfoWcwz0qZNm16nTm3mLX4mJycZrmQfmsm6FMLpp59OpjId33LLrb/61T3y/A03XE8GsNximkLr1q2bPH/22WfbD7rkkout1P2S7GrmrXYmz600R3v06FGjRg17NriEImMMyI0bA8utTzjhBPM4m/Xr10sDuGvXrrLUior2Dhp06v79xcyd473017++V145fPj5jzxyEHt9k4dfHmzYsIEMV2mNd+jQ4eOPP5bnzzzzjHgDmBgxYsQLL7xAYxA0NkFfH3/88T/+8Y/yp3vv/bU0gO+44w6T0tdff4MBAAAAAAAA0oDKNoBXrlxZXh5lnjuODE7muXx/+tOf1ahRU24pPGXKZLnNOS/BAAAQAElEQVSMli7o1avXvffeK52l5eXKQs7Ly5MHEyaMlys/ib/85S/33XffkiVLxowZQz5JMplSR6NpU7WF8rp166T1S+zYsZMM42bNjtNRXcUOHvK1XnDBBYsWLQqdJ6ue0mKOp06devbZaqfoPn1OHjly5Omnn2YuJhtPWr/MW3JM3uyaNd2l2glnR4eoVq1aXl6+PCbrVFq/zHOzT548pV+/vsyzwPv16xe/zrm0tJTiJi3DijzLRk5Np9IkS5uc840aNQwF0qXLiRUOzDXXjT+5Ro3qzz7rr901MWzTpnX8jVT6odGHF1988Ze//KWsNnSLHNe4+OJL5K808vLgg5j/DAAAAAAAQFpQ2Qbw+eefb3aNatq02ccfjyCDjXkTm//73/9u376deUtGX375FWnyJYTsH7KCnnjiySFDTiPHozxJ3stOHj/96U+/+mribbfdZu9ObEM+ZOnmJZYtW27/RKbRAb2+NmRpS9/1jh07ZsyY8cUXo7/+emrCTaR37dptb/hM1rsxgGvVcpe5Nm/e3PxKQdn3rl69qmZNNV+3UaNGqc17+4VSodTNnDlDGsDM27Aq4e1kA8sRB8p/mc/y/NixYy++WDmWzz333PhF2hkZGY8//picgp6Q+NXaKTjjjDPMcX5+gZnRbUN2PoUZ2kY74brlt956iyqYPP797/9IfmNTu6iqSGc1AAAAAAAA4Jjn+5wCvXbtmldeeYUsVfl1+PDhzzzzzPHHH//RRx/ZKznlxFpjshrINqNbTjml/x133Nm+fXvjGWbeBr/PPPO/H/3oioTP3blzpznOyjqsHDjzzDPtXaBTUFZWGvxaFrpg7Vp/faycHW2QYwSSAz7OuI6Z5zu1f7L9sUVFiUcHyLpu0aIF80YZzjrrLOMlLioqmjlzpjxOOMGbjEwzGME8z2o0GiWrOH7ZcEWwBy8or3bvTpBqIWLxL5FavHhx/JX/+Mc/yWKXFjgNAdgbaz3wwJ8ZAAAAAAAAID2o7F2gQ9StW88cS7vruuuuMybTJ598QvZw27Zt27VrF28xHnfccXTL2rXryIQmx2///qeQ989YRCee2C3ZQzdv3mzsq9DOzHfddfc7Hm+//TY5qFkl8uGHH5rjgQP9nbHIH2smbFPqjAFs235mSy3mvW9p794iedy69fG2/dmnj7+19YIFCxNG44033jTHDz74oO1PlgwYcEqPHj1CJ+kpJ5xwgjwmHzK5iGXBvfTSS+yQ+PDDEeb42Wef7dmzR/yfmQBvk9D9Tj7e0aO/kMdkBpv3PK1cuXLZsmUMAAAAAAAAkB58bwZw7dq177zzjmHDzjNnRoxwNzc68UR/pSjZhNLMe+ihh+I9wCNHfjzG46uvviIf6fr16/70pz+tW7dO/mrv5xTP4sVL5EF+fsGLL74krzzzzLN+8pMfd/OgaGzZsoVVIrZZThH46U9/SrGqVavmRx+NMGk37/hl3v5S5viBBx5o1KiRfDcvsWiR8oJS6l5//fW8vHzyxP7lL38xO2nv379/6tQpCaPx0ksv7tu3Tx7TXR988MG9994rzeB69erdf//9zz2XYI4xeeDNDOft27fPnz+fuTs/N7388svZIbFu3VqKpDy+8cYbjXX961//eoXmqaeerHiA9913f/xJvP0IAAAAAACAtKKyp0DPnj1b+uhCK0LJwStNsnnz5pvtfx977LFFixbV84gP6osvRg8bNox5/s9p06bNmzevTp06zZopt+3q1asTOgMlDz/80PPPvyDt3v79+5ExSRGw/aiTJ0+p/KWhr7zy6s033yyPyQC+8847bRu+vLxc7v8sGTdunDEvh3swb+nskiVLHnnk4RdeeFHeS27SefPmmo2jJCleKVxSUnLHHXeQ01V+zcnJudmDpWThwoU0VCHLtEGDBhMnTty9ezeZzQe17jfEiBEj5KpjaYfv2rWLCsi8OJpS9Mc/3lfx0DZu3Eh1z56kXVS0hx7BAAAAAAAAAGlDZXuAyQxzPOyTpaWlP/rRj+Txyy+/ZAxXsnw6deokrd94a/Zvf/vbzp3qRT5kGnXv3t3sI+VtkfUES86ECV/9+Mc/NmFSfGzrl4yl66+/jlU6lCJy2JqvtslK5uUVV1xhe4DHjx+/devWhOF89dXEn/zkDjvH7KAeeujBZ555hiVn7Nixv/rVr+KX1xqWLg1PG6ZnmRXCzNupi0YxDsf6Zd5K41GjRpmvNWrUsK3f//zn31RM7GC477777Dcbv/ba6wwAAAAAAACQTnyfa4DJGtmwYcPYseMGDx5szCey8a644srQBs7kYLzoootCt2/atKl3715Tpky2rRrmvc2IzOm33347/ollZf6Vn332GdnA27fvsC8gq++dd94dPPjUUJiHTywWtb+WlJQmvOy3v/3t008/TSMC9sktW7ZceeVV06dPt0/SNf379586dSp5Mq1gS+TBp59+Qg5kM0Ag2bdv39///o+KvIyXcu+ss86iwEPjDpQtlD9nn31W/JLsyy67bOLESfb1FMPf/e53cjp0Qkye2Om1j2+77bZXXnll27bt9l309dJLL33sscetWJWxCvDtt9+awKmgH3roYQYAAAAAAABIJ3heXg32g6R27Vp9+pyclZU1bdr09evXpb64ceMmJ5xwwr59RVOmTA1ZjwekRYsWnTt3jkajq1atWrBgQYqJ05UGOWy7detGDm1Ky+zZc9auXcMOFbkZVWZm5vLly20HcgUhJ3z79u2bNWtGISxdulROdWYpY961a1d64oYN68kRfaQyMycnd8CAU2j8YuLErw62fA1XXnmlfNc0cyeQj/9enPwAAAAAAACA75EfrgEMwJFl6tQp9erVl8ennTbkoF74DAAAAAAAADgG+D7fAwxApdG7dx9j/a5YsQLWLwAAAAAAAGkIDGCQFvzmN782xw8++CADAAAAAAAApB8wgMGxT+PGTTp16iSP9+zZM3LkSAYAAAAAAABIP2AAg2Of4uJ9ZvurQ9gJDAAAAAAAAHBsgE2wAAAAAAAAAACkBfAAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABIC2AAAwAAAAAAAABICyKZmTnsKMMTIX/q1WsgHe/evZMdBQoKqnfv3pcCLynZz44cXbqclJ9fsGPHNpauHNVSO3pUq1azZ89+mzatj0aj8b8epdpyNMjKym7TpnOrVm3Xr1+dkZHZsGHTPXt20fn27bvWr99wy5aNRzwtJmT2w8MIk+8dWS6tW3fYuHEdVbZu3frs2rWjtPQIV6cfiPxJIQSaNGneunXH775bmzqEH3KlqghVVAweJj8cOVmFJPahUdUbCAAA/JA56h7gK664nTT1+PMrVy55+eXHhg69YPHiuW+++Qw7CjRo0Pi004bt37/vm2+msiNEdnbusGFXlJWV/fWvv2DpylEttaPH0KHnd+hwIh1MmjQ6/tejUVuOBo4TufPO+/Ly8mKx2Ndfj7/00puofb399vMLF84+9dRzc3Ly5s//5oinxYTMfmDUq9fo1lt/NW7cJxMmjGLfK6Zc6Pjbb6c1a9aSimD79i2LFx9JA+mHI39SCIFLLrmxoKDaqlVLt23bnCKEH2ylqiBVVAweJj8cOVlVJPYhU9UbCAAA/JBx2FFm/PhPPvzwVfqbOXMyfaVP+fXLLz9mVZCSkuIpU8Z++eUIBiqX5s1b/+IXf61du5AdKpMmjSFl4ttvZ8ivAwee/ZOf/J5VFuQsovh363YyOzyaNm1BVta8ebP+9rd76OuCBbO2bNl0QG9bmlDJZWpjyuWvf71n794idnSouPw5UvXtEBgz5qNZs6aktn5BJXPI9eF7bFM/QFLnxuE0uqPUYA+/3wQAgGOSo+4BXrduFf3RAXktunc/ecWKxeSqYlWZL774gIFKp7CwPhkYGRmZ7FAhK/Hdd18wXxs2bFq9ek1WWeTnV6P4k2eMHR7VqlVnrt07u7y8jA7I+3GsOkAOgUouUxtTLmVlJexoUkH5c6Tq2yEwZ840+mPgh8Qh14fvsU39AEmdG4fT6I5Sgz38fhMAAI5Jvv9NsDh3Lrjg6rZtO5GM3rlz+1tvPbt58wb50/HHtx88+Ny6dRsIIch6GTnyLfOTDfUcw4Zd2bTpcZmZ2Zs2bZg9e+r06V/FX9a375DevQfn5+eXlOxfs2bF228/J02Ihg2bDB9+ba1adaLR6Jo1yz/++M1du7anOH/rrffu2LFVznyjUduzzrqkTZtOpP7u3Llt0aK55NmWwdpcccVtQrDi4qJ27bpkZmZu376VkkkuowEDzqQOr6hoz/jxn86cOUle3LJl23POubR69VqxWGzbtk1vv/389u1b6Hxubu4ll9zYuHFzx3E2blw/duzHy5cvkrccd9zxp512fv36jeiYcmD06A9XrVrK3MV4LS677OaRI9/s3//0evUaUoCUkDfeeFrG8O67/zxjxlc1a9bp0KErDVLUqFG7tLTk6af/aaJ94om9Tz112HvvvUDDFiwJCWM7fPg1LVq0ffLJv+7du0deRk+58cZfzJo1mZxXyWLbtWuvIUPOf+65f1P+yLuGDbviuONaPfLI/91448/r1XOvv+66n0WjsSlTxtjTmLt16zN48HmvvvrYd9+to6/09JYt21Gq5VDLoEHndO/e99FH/6916w5nnHHRK688RjG88877cnJyKCdpdJyuee21J0xduuGGuxs0aEJVbsOGNa+++mRCeyZhXUoR/6FDL6Bf6Uy/fqefdNLA9etXvf76U/S1Z8/+J500gOpYWVnpunWrP/zwlaKi3Sw5gwad3avXADq44IKrysouM+cfe+xPxcX7WAVI0VhkZW7btrOsk8uWLRgx4nXKB/v2FGlkXo2aO3cGfaUMpK9r1654/fWnzzhjePv2VO2zdu/eQdVDOqupRVCzouOePU8h/WzPnt2ff/6emex39tmXdOrUPTs7h55C7WLKlC8PmK6srOz4MqUSpK8UQ6qNlKjdu3dS9MaMcd2nsml89dWo3r0HUM2n4blZsyZNmPAZnWzU6Di6YOPGda+++sT+/cUsuSiwy4WaGHNn/16/b98+ajKh6CWs8xTgDTf8YtKkL2QCyflD4o5c+p988jbzWhY9dMSI1xYvnmsHZeRPitZ9OPXtxz/+3bZtG994w5Vv5Di6/vqfU2KlWCARfeedf5w/f9aoUe+x5KL7nHMuI9H90EN/lAH26NGPKm2tWoX79+9fvnzhuHGfUPzN43r3HnjyVJtY+AAAEABJREFUyUNklSPhMHv21/J8QuHfpctJp512AUV76dL58rIOHU6kSvv++y+SMEzWX1Blo8xZtmwhydtIhP/97/eGkpyiUdBP559/VZMm9FMWpXH69Alffz0+dHuKRnFQ1YyaD4XfuHGzFi3aRSIRyqXXX/+fFP4hSJSdeeZFJHWpetNXktvl5dEnnvgLyVsSTTTQTPJ2//59q1cvf//9l+nXhPUhRYciSdimTLYkk5MJI8AORjhUvHRsknUrsoCoYlAd27t377Jl8z/66DUp1pIJB5aoyRcX700oYUwEkjW6FBE74L3sIBtIKNiE/WYKOS8VlTVrlvXte2p2di79umLFoo8+ej0WS7BrBgAAVGmO+hToA9KmTccWLdpMnjyGnCc1a9amblXuatO6dccf/ehW6m/IpJwz52vqP0iax8/kKSioftttv2nZss3cuTO//HIk6Q2kGcilnjak+px66rnUy3766bsLF84hBeKaa+6QP1199R00pjt27EjSbCgmw4dfnfp8jRq1SJljnsFw7bU/pc7+u+9Wk0ZI3Q/1Veeee3l8Gun6449vR13O5MmjySqjVNx00y9Iy6eedfz4zxwnQsfUDTNvgPnKK2/PzMwhNZE048LCBrfc8iu6gLl23XXUlc6YMZEyhNSLiy++PhJxxy9IUb7qqh/XqVM4adKYiRO/qF27DoVAJ+knyj2yLi6++DrSd+muTZvW0/krrrhVZ121gQPP6ty5x+rVK0ipXbVqCfX6lDMm2mRVZmREVq5cmqzsksWWyouMQwrcXDl06PneBNEZKWJLw990DfW7dr5Vq+YOt5OTkyJPB4sWfUtW9Pr1q+1oUAzpxhNOOMkrFIc0Kvp60kn95a+kWFDvXlJSnJ/vhk/KFqmhM2dO3LdvL6nFFBr9mTmrgwefQyFQoZNm06xZy6uv/nF8qpPVpRTxX7p0wZIlC5irAK2nxy1aNId5s+morjImSOsi3atFi9a33/7rgoIaLDk0EkGF5SV5iYx5UdEub4A/i1WAFI2FKvP1199FlZkSTpV5w4bVlG+mMRpSpNELv1qfPoPy8vIpA0mlpur6i188cMIJPSmeVIJ0GT1C+iLoLmr4pCvTT9OmTcjOzr7wwmsbNGjM3L2FBtCABZlnn376DqnOp502jKrlAZOWsEypKKmhUQ1fsmTeqFHv79mzi55IKi/TTYP0zq1bN9PwEw1k9Oo18O67HyCFkuwTyufGjY+j1i0DTyYKDFQcW7ZsYrp8yVKyf01W53fs2Ebtq2vX3vKynj37edW4p/xK5+nrunUrQ88y8idF6z6c+kYV+/jjO0rL6sQT+9AjKP+l4CVbl4pYtkSWXHSTpUc1TV5DjeWssy6OxdyHkuijsTYjeJlbnfJOPfW8efNmTpkylkYGzzvvR40aNWPJhT+NBdBJOdYg6d//NKo8JAFS9BeUXZ7FeOH27ZtnzZoSSm+KRkE//fjHv6GMohhS/MkWGjp0OA12hEJI0SgOqppR3lLgDRse99VXn1FKKZCbb/4li4PuvfzyWyieFCXpaSdLlcxXCpwMLRJNVP1INNHAHOXJrbeSQHYS1odkHYrhEORksgiwgxEOFSwdmxTdCiWN6lV5eSlFaeXKxTSG0q/faczrKZIJB5aoyafIDUnCTE4RsQPeyw6+gYSCje83U8t5qahQ4S5fvviLLz4klYYKiK7/4Ww0CAAAR4rv3wNcXl7+xBMPFBe7Q+A00EgCl8wqks6nn34Bjdf+978PyNHHOXOmX3/9z/r0GUwjnfbtNFRJncRrrz1JA/z0lXwp1157B8n3BQsCW0dUq1aDlFQaa6fei77WqVOXRr6pC6QOlRxN27ZtmTp1XDRaTiOpzZq1cFwSn5e3S5o1a0Ve3JkzJ5MThr5ST0nj2a1adaARa+P5tHnxxUeki5JUQOr+qd99553nmac9X3vtnR06dKHu2Uv72g8+eHnrVlefpkfTKC9dTD/Vq1efNDDqCPfs2UmaU9euJ5HSuW3b5qFDLyQD77HH/iKdOeQx++lP76OT5BCQz6Uu8PnnH6IDUlV//vO/UMJNlCjAhx++T95IfSTpu9TdUmdMX8kFR0bsV199LkQsWdkliy15EshrRD0rdbHkjyIlpm3bE+jKzZu/u/DC61LHNiF0GelPpCxS+VIgoV/JVUJj1aSd0+NIM6AypSST74XKl/Qtcs6HtF5KEWk2pIXk5OSa5ZR169anTzJjnnnmXzKvfvaz+6WzIkSyupQi/lReFMPOnbuT50pu10QqRb9+Q6iCPf74X+ToO9UH0mmoPlMqyISQ8bHiLChXV69eRslp3bo9+QGkkpSRkUHeP1YxUjQWqsyUvXZlPvvsS+knKs14f0UKSE18/PG/UqGTq+Hee/9Bqjk5T0j3Yp6fijRgcgEZR9NLL/1XGnhUXjRyRCNEpBlLDY+s4qVL582ePW3w4LM9I21d6ucmLFP6Wr9+Y5IYcnrF11+Pu+WWe0gDHjHiDXkB1UkqRzogg/AnP/k91ZxHH/0HWYDMc7RSxqYQEbYooCwio2X48GvGjx8ly4Uy0/yaooWSR7R9+66k99ODKKqUD/RJVZeypWXLdjt3bjvgcuKErftg65sd4LffTieNn+QY5X/HjieSV5PkTLdufclzRTKBLpg3b5a8MpnoNkHRQ8lYpYc++eRf5UNplI0MJGqkxoVL+S8r2Lp1q8iY9wRFKuFPTYCil5ubV1y8j6wmyq7587+hyw7YX5C/kVIUn4EpGgX9RAYs+eKkSJw6deztt/+WzCQa7wvNjEhNRaqZFLOUpY899oDcOfzSS2+g3KBRIWoUdmjS/HvzzefIemGugVebGqnXxDgNHlFUpfOQnMmU1RRbagWUtFB9YO4Gcok7FPOgg5WTlIoUEWAHKRwOWDr2ZSmaGNVJ5la8ZRQf+tu8eX1ZWTmdoXGNZMKBWnd8kycbMD43bOIbXeqIHfBeycE2EPve+H6TqsoB5TwNB1BuyNw+55zLunXrc/zxHUyDBQCAY4Pv3wAmBU6qUMT8+bNJi6Iun7ocsivozE9+8lv7YhLTodvJcUpKg+wdmddnP//8w/FP+eSTt0899Zwbbvg5WS+ecZtNnRwZZtT3kyLYpk2nX//6n9RDUDhjx34a80h43g6T9HXmdvP+dKzPPiNV8j2WCIqktH6Zq3rOp4SQ81B+JT8whVxY6CoWUhs499zLatYspPF4chAxbxkPGcATJ44hJ8Zdd91PavGKFUtIGyNlhVRMyijKLjOVkQ42blxHvb4ZtTUPYq6xvbhTp25ZWTlSx6IrzY2kUNKVpPKSw4eiOmTIeaQeTZw4miUnRWxptP6CC64i9YVc3BQUnScFuiKxPTSosKifJtXkxBN7kZpFehWNapNJTO4y5i1KrGA4CxbMMsdU6BSmVLXta5LVJXYwkMFJd5FL3GjS9DiqJGT20PFJJ51C6mDolv/85/epJ0gfkBSNRVZmcnGYi6lik2JE5w/KAKbSNEsASFFr3ry1UVWpdlGi6tdvInVciolxb5J7hwxgacmT0kkq/uWX30Qa3po1y775ZoqJ8MFChhZ9nnLKGVQP5Znc3HzmZn5L+XXx4m/lAZl5pIKXlpZKs4R5xUHxqVWrzvbtWw4oClKQus6ThU8GcLt2J5B7h356//1XyCtF2U7+KNL758w58OruFK3bJnV9syF7kvxgJ5zQg+wr8p6Ri4mKo2PHrtR+qTQpB0z5JhTdtgEc/1AK3N7VliJgapec6V2/fgOZYyyJ8KchOTKAe/UaNG7cyJNPHuydGZX6FvmghNYvS9ko5E/S+vV+EpQW8mkf7KhQBasZ85qPKTsaaCBrh4y0kAEsp983bdqcCshLeH0Kk+LWvPnxlNvk677zzj/IK+XEkOOPb5+wBSXsUFjFSCgnKaqpI1Bx4WCoSP+euonRvXv27KbR2A4dutI1CxbMll12CuFAhXs4Tb6CEavIGMohNJDUVETO0zCB+XXy5NFUuG3adIQBDAA4xvj+DWBbp9d9P/f+yKsQI83Yvpi66tDtZHfRGC07EDQ+Sp4l6tWoxyX9gyS+8Zu98cbT5HIhxZH6Y3KS0Bj23//+KxpYTXbehEkGH3P3Za3QSwjpoeZY3iLf3SqhlEoXImlXAwacIedB7du3lzzMFAF5DXVLFH/qyFu2bEOf1C2RKrB+/Srv9sASHfnVmJT2g0pKXIXVcdRPIYNq9OiPyAAmJzANDFevXpMcp6l39EkRW/J10Dh3796DyJVHjiMqOOpf5Vy41LElt4D5iQxaVjHITKIMIU2dFHpyz65fv5qUwq5de+fm5pI9vHbtigqGY7/VU6ZdxtkmRV2qePzJC8Q8n7l9klQi+bgvvviA7I3QLQfldEry0KSNRVZm0rfMGVkuMp4hUqRx3z7fYynX/sn1jearGeiwW4RUi2XaSV/85z9/TWXXqlU7+mvfvsv48Z/SMAo7eGTklyyZS5XTPr9jxzbpyLLrf3l51G7LsvRltTygKEiBDCFZnV+2bAENM3kLnrP379+3efMGqqs0cCNNkYpsb5aiddukrm82VBZkcbVq1bZLF3dR4uzZX1MMTzttGPm+yC1GFqC5MonoDj/UVIB47DpAeeLZGE5q4U9ihEZGqLGTAUxOSzpJJooUnin6C/tBIVI0Cvop1OjklfGZxlI2igpWM8KeOiQvi38WGcbnnfejoUOH9+s3NCcnhzJZ+vDllVRzyMazryd5yBKRsEOpoKhMKCcPGIGKCwdDRfr31E2Movfgg7+nroFsPGq/Z555EY3UPPvsf1IIB3Z4Tb6CEauIPD+EBpKaA8p5CtaOWDQa8+7CHloAgGON738NcEJooJekOSlVpPiOHTuS/qZPn0jq165dO0JXrlq1hM7LaZMScl9ceukNocvoAvJqUq82adJo6vjz8grkeRpgvvrqnzDXefvuk0/+jR5Hrhgaw0523g5TjsjKvSsk1E2S4zE//9A3ciRVmNTNp576Byn9FM/MTDVCQYYcxYcGYuk8qSnPPvtv5m1SRd3Vzp3bGzZsZlagke5FX6kXP4QRa/ItLF++mDTd885zl0JRtrNDiq1kwoTPqGjkGjByCDOvc00R2y1bNtKZ9u1PkD+RQlmnTj0TmlSD7IV2NtLiHTjwLComuU3I8uULKSGNGh2XTP+jjj+hIntAktWl1PGXegZliPwqh9s7duxmLiB3GUWenHjyq4iDHTYpGgupwsxbd2p+OvHEPsybGG+HkDqNR4QLLrjq9NMvmDZt/OuvP/WPf9xLuprdxFITKlPptdi6dZOUIfRHAiQzMyu0hVVqKiIKUkYpVZ2nYiU3OLk0SdtevNgtgjlzpuXk5PXuPZjsYbmy4NA42PpmM2/eTC8OA8nOIeNtzhy3QQ0ffi1z7eGD2N6ZHkpp7Ny5pzlDybzxxl+QSzDFXQcU/jNmfFVQUI1G3yhLp0wZyw6mv0gUyaSNguJPWURxNj916huF2EkAABAASURBVNSDUhRy/1ZCo7Dp338oc43qPYsWzZk48Yunn/6X3Jdr1aplzLWCdpjaTqKPkiZXpIfqQ7IOJf5xFZeTqSNwaFSkf0/dxPr0GXzllbfTSNP7779ElvCGDWsbNz7OcSIphEOKJp86N0KZfFC9c+jeFBxUbQ/1mweU85Q6sw0B87bN8+6C+xcAcKzx/XuAkzF27CekCt922710QN0G2Tak9MRv/zh58pcnnHASdVdffPEhjT336NGXxno//fSd0GWkTdav36hbN3duodx7WZ7fvHk9DfFeccWt1NXRT3KRG5k30WhZwvN2mNS7b9++lVyg1GtSb0q9Jg0Vr1ixJOEC4ApCSahTpy4ZANRh00PbtlVKVXFxcWFhg6FDW+Xm5q1evbxHj35efNw9M8eN+2T48Ktvv/035BKhceWBA8+mUd4D2q7J+OKL91u1ujc/P5/6vAMmJFlsJVRYgwefXa1azX379pFKLU+miC2li9SCbt36lpaW7dix5ZRThtKwNBnY8kZSXOjzvPMu/+abr2nYPt42oOKgMX4KQQ5MkBncvn1Xlnz+86ZNG5o2bXnZZTeTDUBhsgqTrC6ljr/06dFdZWXla9YsW7FiMUWsS5eTrrnmjq+/nlBYWHfAgLPIWV2RHY8PmRSNheJDStXJJw8mRYqKnjRj8mxT9Q5tgZY6jUcE0k27detBVsSsWZNp/IKqx5YtbtZ5e8nUe+SR+1OM7ITKlEZzSJ0lX1l+fnXK83btupCbi06ygyGZiKh4CKlb6LffTpdzF6W/d/78b8499/K8vDw6zw6Dw6lvdOWQIedRxZbmJbnIqG7UrFlH2sOswlBJUSpo/IJKhIy0mjVrkawgn1KKXeUlqYX/11+P69//dBK8VPHk6+VZhfuLeFI0iilTxsgcozB37Njau/eAevUazpo1JVQDK6FR2HTs6K4BzsvLb9q0xZ49u6m9ULWkciELilyCnTt3J/uQIlm/fmOSTuXlpaNGvc8S1YdkHUqIisvJ1BE4NCrYv6doYpQzNBJ6/fV3jRkzgnrqunUblJQUU1RTCIcUTT6UG6G1BvGZXPHeOf7eFNlS8doe6jcrIudJ/jRo0HjNmpVt23YiY5haPZnNmZnZd9zx+7Vr3VceMAAAqPpUtgGcYkelEHPnzsjNzR806KyLLrqWeVOkXn/96fhFSqSXPPvsf370o1vOPvsS5hkn1A3InsBWU95445krrrjtnHMuZd7UMrKOpFtp794icjRdeOG1cvtHumX06I/kAq1k5z3nXEyeJOfn1Vf/2HtRwWByVZENFv8GlINK9YgRr994490UIP1R+BMmfH7KKafL259//kHSA8zWytQnzZjh7t5BtiVZC6eddp7cgJpy4KOPXpNrq5KZCuR5ShaBzZu/oz/S8yryutEUsZWpnjlzEg3AT5r0hbklRWxJmXjnnRcuvPAaGkdg3grDjRu/Pf74jvJGyluybI8/vsOQIec6DifXRygyVKZkAK9fv0pGYNmyhaSDks5hFuDJVJvokeuDPG+kAdAfqQUVd5gnq0up40+VhnQ4Kj7KorVrj6cnfvjhq3Syc+ce0v4hPeO1156UE/Aqjl21zHGytKRuLE8+SZX5J+QFIpWIvpJT/aWXHpNhmpBTp/HQom2Q0+0oW8j92KlTNzmdnpSzjz56lbk7lNbJz69G6r6dulA4oTIl1xy1UDJgvNi6ESYF9803n06RRfGkEBEHRFa5FHXe+9W1eMkWXbNmOfNmIJOS3bBhE/O+kzh8+ZPioYdT32jki2yDGjVqz5491USS8tBsTnsgfPFCKaV4khpNJUIHlLSRI9+SMU8hFVML//37i+VWWOS2MvNLU9ySWvymaBRU95577sHLL7+JZA7zJo6SQAvtM8RSNopDmIYTIj4EisNppw0jT11x8d7GjZu2atWWxO9jjz1AdZKcnCTx2rfvIsciqRCtJhyuD8k6lBAHJSdTRODQqGD/nqKJUcWoU6c+Fc3ll9/MvIohX/FFNSeZcEjR5OMljB3b+ExO3fZT33vIDcQmvt9MIeeZO9q1b/nyBT17ntKr10Cvwa5/6aX/khs5OzubxlziN5oGAIAqCs/Lq8F+2JAeRn3DATXOrKwcGgRN+NZEA+nQGRmZ5DyMn1BaUFCDvC7xOwwnO2/DuUPjygnfUXxo0Kg8+Vuoc41/pTAlk5yuFJ/4lVGUUWTyFRXtYocBPffOO/9AnSKpHRW8JUVs77nnr5FI5t//fk+82pQitpSZNO6eYungD4EUdelg40/DDTt3bper4CqHFI2FFOt69RqRoZJabT3aZUTRIDc7mWf2I8xmuQcfWqRePWqhGw/nhZYVEQWpOSIt9PCp/PrGvApDpRkvIlJTQeF/mLdIUjSK7Ozc6tVrhKydeCpHcP3mN/+mnDTbCHfv3peMw9GjR0yePPoQYpKiQzkcjnhWVKR/ZymbWGFhfRpmil/+kEI4HH6Tr0jEDjPYQ6vtCeX8T37yexp8/Ne/fk2StrCw3rZtW+w8CW19DwAAVZof7hRoQwUX7NEw/PbtB9iPKoV7jXqmhJ1TsvM21IUcQeuXeRsyh3YeNlAyE05UYxXOqNQMHnwOfX7++YHdv4ZksSUPHvWmU6Z8mbDXTBHbAyqaPwRS1KWDjf8RUbAOihSNhQpr48YDz+892mVE0YifZnzIriRS40Jb6R4CFREFqTkiLfTwqfz6xg61whxCjh1yJqdoFCUlxVu2HNiWqxzBRQZPTk62NxXC3z6wuLjo0GKSokM5HI54VlSkf2cpSz/ZivoUwuHwm3xFIva9BJtazpOkjS9BWL8AgGOJKmAAg0ojKyu7Q4euNO5b8W2TUzBgwFnUZY4fP4oBAAA4EsycOal374H33PNXMlFycnLr1Km3Z8/uefO+YQAAAACoGJHMzAPvOgjShLp1G5DPdvz4Tw9/uNpxnMaNjyNdzbzrFQAAwGGyfPmiDRvWZWVl5uUVkOk7d+70d955oby8lAFweGRkZNGoSrL3JgAAwLFEFVgDDAAAAAAAAAAAHD6YAg0AAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC34fgzgSCQjJyc3KysnKyub/iKRCAMAAAAAAAAAcOwSjUZLS0vor6SkeP/+/bFYOat0eF5eDVa5VK9eMze3gHMejZaXl5fR/0LEGAAAAAAAAACAYxfOnQyXTHKIMib27SvavXsnq1wq1QAmo7dBg6Zk91JSGQAAAAAAAACAdCUvryASiWzcuE4IwSqLSGZmDqsUHCfStGmLvXv3lJTsZwAAAAAAAAAA0piyslIyfevWbbRnz85Ks4EdVimQ77dJk+bbt28pLy9jAAAAAAAAAADSHrKBt2/f3KRJSzIZWaVQSQZwgwZNK396NwAAAAAAAACAHzjkAW7YsCmrFCrDAK5evVbU3fAKvl8AAAAAAAAAAAHIDxyLRatXr8mOPkfdAI5EMnJz8/bt28MAAAAAAAAAAIA49u7dk5tb4DhH/TW9R90AzsrKqbT53AAAAAAAAAAAqiKc85ycbHaUOeoGcG5ubjT6PbzgGAAAAAAAAABAVYHMxuzsXHaUOeoGcGZmNlb/AgAAAAAAAABIAZmN2dlV3wOclZUFDzAAAAAAAAAAgBSUl5eT95QdZY76IuNIJKPSXmoMAAAAAAAAAKAqIkSMjEd2lDnqDwAAAAAAAAAAAH4IwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWwAAGAAAAAAAAAJAWpK8BXKdumzMveMpxnFgs9s5LF+zfv9P8dNl1I7OyC+hgwuj/W7VsDPs+yMsv7NztqgaNun301jVCxBgAAAAAAAAAgMPDYenKrh2rp018cN43r9eo2USau4Yp4/85fdKjuXmFNWoex74nhpz9zxNPunnd6imwfgEAAAAAAADgiJBGBjDngcSWl5csWfAR/cVfuXrFuIVz34nFypIFlZGZw1I9KMIOm5q1W65fM3Xm1McZAAAAAAAAAIAjwbEzBbphk54DTr+/oKD+ls0LOed163ecNvHhOTOeb9tx+MkD78nLrxONlq9ePm7UR3fEYuXskMjNq3PGsEcbNO7uOE7J/t3jPv/DskUj6Xy3Xrd273MrE+Kdly8adOYD9RueSI94+6Xzzxr+JN1CF3z6/k9K9u86/7KXyDjevHHeh29cecBnZWbm79u7iQEAAAAAAAAAOEIcIx7gWrVbDf/Ra9WqNVy3Zkq9+h0bNz1pX9GWlUvd5bv1GnTcunnR2M9+O2vqky3bDGnZZig7VC6++r16Dbt88/VTn4+4u6ho09DzHiKrm84vX/LZnOnPZmUXXHzNhwXVGs6d9dLO7SsdJ2v6pMeysvJ37Vi9ZdPcHduXbt40n75+8/X/KvKsjMzckv1FDAAAAAAAAADAEeIY8QD3OPkn5OB99tGe5Hp1nIyb75q7feuy3bvW0E9fjflTo6YntWpzBpmUZWUlrdufI922B0vjZr2rVW80e/rzi+Z/QF/Hfvabi658u1uvm0eum75rx6p5s1/v2ffOLRu//eCNK82q3a2b57frPLxegxNKS4qEiJKVvmLp6DUrJ6R+EMW/Z987MjKytm5eyAAAAAAAAAAAHCGOEQO4es2mO3eslHOb6XPHtuXyfHZOjatvGZeRmbd755ri4m2OE8nKrsYOibr1O9Fn157X0Z85GYkEMnDMJ/eG9qyaOOb/LrtuZKcTryjaszG/oHDil39mB+Kci55u2rzfvr3bEq5PBgAAAAAAAABwaFRJA/jEk24urNd+6oR/7dm9Xp7ZtWNF6/bDcvNqF+/bnpNTs3Zh690719J58vdmZRe8+cKwrZsX0Ncrbx7LDhUZ4Cfv3bZy2egDWtcSAAAQAElEQVSK37Vty5KNG+b0PPknpaV71qycuGfX+gPe8tXoP/cf8juygZs0P3nNivEMAAAAAAAAAMCRoOoZwHXqtjl54C/pwIlERn14pzz59cSHyQC+9vYpO7Yvr1W7leOotc3Sam3crFduXp0uPa6tUbNJWWlRXn7hvr1bMzPza9ZuWVCtvhtmvQ7ZObX27d28t2gT506duu04j3CeUb1Gk7r1O5PtumvHqrWrJpaVlQw4/X4nkrn5u29btB7S4YRLtm1Z/MXHd+cXNKBYUThklpPPuWT/Ljn7WjJxzJ8uuuqd3LxaI96+oSIJpCR89NZ1t/58YaMmPWAAAwAAAAAAAMCRouoZwLt2riktLc7Kyt2wdoY5SZ7VN5476+RB9xZUa7hgzhsNm/ZkzJ2KvGblhE3fze03+Dd0vG/vtu/Wz2zYuPs5Fz371ovD+g76dceul8rbz7rgMeYu2V305gvnHtdy4NkXPiXPn9D9KvqLxWJP/KttWdneke/eeOb5j50x7BH5K3l35856lQ4uuurtgmoN6ODMC/5LnyX7dz/zSHcTt03fzdlfvGvb1sVkRbMKU1a6N7+gLgMAAAAAAAAAcITgeXk12NGkefM2W7duZEeajMyc8rL9yX4l9+mSBR9++em98mtuXm1y55KDlx0J8gvqZ+dU37l9VYoXBds0btb7/MtefuP5s8lgZhXmmtu+Ivfyx+/cyAAAAAAAAAAgDSgsbLBq1UEYTYdAVd0EK976zcsvHHj6n4UQjZudFIlkLFnwsfmpeN92duTYW7SJ/ipyZcvWQ+s26NCu04Xkss7Jrc0Ohk0bZrdqe8a5F78w4u1rGQAAAAAAAACAw+YY2QWaECKWm1+YlV2wfs202TOe+27ddPZ907LNqQ0ad49GS4r3bWnavO/6NVMrfu/nI+7qtG5mYb12nDuhnaUBAAAAAAAAABwCVXUKNAAAAAAAAACAYwlMgQYAAAAAAAAAAI4MMIABAAAAAAAAAKQFMIABAAAAAAAAAKQFMIABAAAAAAAAAKQFMIABAAAAAAAAAKQFMIABAIABAAAAAIB0AAYwAAAAAAAAAIC0wGFpT41azTlP03xI57QDAAAAAAAA0o008gB36XF9lx7XlOzf8+YL55iTjZv1Pv+ylz95/8crl37ODoPLrhuZlV1ABxNG/9+qZWNYVSB12s8Y9mi9hiesWz3ly0/vTR1OVUw7AAAAAAAAIA1JI+/fyqWj16z4qnZha/vknl0bvls3Y/vWJezwmDL+n9MnPZqbV1ij5nGsipA67bNnPF+8bxvZwAcMpyqmHQAAAAAAAJCGpJEBvHvXmjUrv4o/+d5rl+/asSr+esc5CPf46hXjFs59JxYrS3bBD2GmMecR+2uKtBMb18/asW0ZqwCHnPZk5ynnE2Y+XY8J2wAAAAAAAIBD5tifAk0u30Fn/LVW7RZFezauXTXR/unKm8fk5tVhQrz14vm7dq425/sN/l3bjufn5NYoKytxnMgXH9+9fPGnpwz5Y9tOFyxdOLJa9cb1G3YuLt4xbeLDSxeOSP30th2Hnzzwnrz8OtFo+erl40Z9dEcsVt6+80X9Tv0d/bpt80IyQc++8OlGTXvS14/fuem7ddNlnHv1v5tiO++bV1kFaNik54DT7y8oqL9l80LOed36HSlum76bc+5Fz5LVOP7zPzRu2rt1h/MikcwJo++fP/u1FGlv1fbM3v3vzs2rTUFFy0vYYZAw7dk5Na68aQzl6uoV4+lZ5WX7Jo//p4wSQQ7noec9XL1GEzretXPNp+/ftm2L66AurNdh8Jl/rVO3neM4Jft3l5YWvfTkAPMg+vWkvneuWv7lgm/fYgAAAAAAAACQhGPcn1ZQrdGl135MBuG6NVPI9Ora83r716kT/jPr6/9lZRdk59YwJ49rObBLj2umT/7v68+dRfZtJJKRl1+Xzs+f80Z52f6OXS4hY/W79bPy8gtPP/c/ZCenjkC9Bh23bl409rPfzpr6ZMs2Q1q2GUon166avHvn2qys/FlfP01fv5n2dEZG7rbNi7dtXiTvGjT0Ly1bDxlw2n05OTXZgahVu9XwH71WrVpDSmO9+h0bNz1pX9GWlUvHkOk49av/OE7mwKF/Ob79OYvmvr3pu2/IPE6R9tbtzz1j2CM5ubXIVV6vwQnHtTyFHQYJ016yf9eiee/Sc49rOWDmlMf37N7Q/9Tfy+vzC+oP/9GbkUjOhNH/99WYP1Pah1/xTlZWNfrpjPMfy8qu/s7LF33y3m30NTu7uv2gU8/6R4vWpw4644HMrAIGAAAAAAAAAEk4xj3AfQb8knyGzz/Wd9/erfSVjGF7DfCyRSMzMvN697/LvqWkpIg+M7PyyA4ky23Duukb1nxNZ7ZtWUyBkBX99ENd5XTfG+6YQeEvnv9Bigh8NeZPjZqe1KrNGRmZueRPbt3+HHpo0Z4Nn3/0sx/d+Fntwjbktyyo1oAi+fmIu0pL98i71q2Z3KBx1+J9O0pKdrMD0ePkn5CL9dlHe5J/1XEybr5r7vaty3bvWkM/zZ31cq9+P4vFom88f86+vZvtuxKmve+ge+mhz/33JObNQ6agzE8NGnV3IoEZ1Nu3LNm/fyc7yLTT+eVLRtFIxKgRP1uzYvyiee9fdcsY8mCT6/vEk26i4YZxo36705uVzXmk3+Bfk00+f85rZaV7s7LzC6rVL9qz6e2XL2zcrJf9oPVrphTWa7u3aHNZaREDAAAAAAAAgCQc4wZwnXptyccorV9iyYKPep/y89S3bFw/Y+2qicYyLC0tfu/Vi82vmzZ8Yxa7rlw2um3HC1IERdby1beMIztz9841xcXbHCeSlV1N/rRj+/Lv1s3o3vuWWV8/SVFatXwcWcXmxq+/enD29OfIWcoqQPWaTXfuWEnWLx3T545ty0MXzPr6qZD1m4zcvMIlC96XxxQUJTY713VBZ2RkX3jlG6GLyXE9edw/kgWVIu2SdasmMW8dsnux91Nh/fb0efaFT9mXZWblMnd/6fvPvfj5s4Y/IU8uXThywZw3zTUTv3xgxuTHUlvjAAAAAAAAAHCMG8AlxTtr1mrhOJnSam1y3MkHvIVcxGRfff7RXTXrtKxRq/kpQ+7rfcovRr57k/y1sH4Hc2XDJj3KU66SJZ9nVnbBmy8M27p5AXOX3Y61f50w+s+XXvvBaec8WK16ow9ev8r+qVbtVr36/2ztqknz57zBDsSuHStatx+Wm1e7eN/2nJyaFP/dO9eyQyIaLavbwN/2ubBe+z17vqMDSuakcf+IRDLti1cu/SJFUKnTnpCi3etjsdizj/QwnnBDo6Y9X3qiX361+rl5dTuccFHr9mdPGf/PPbvXy18zMnOatuhPFvvyxZ8yAAAAAAAAAEjCMW4AL5j7DtlOF1/93sypTx3Xsn+zFn3pZLUajffsWk8WY0G1xtLBWKewjYiJkv07du9a16zlwL4D75mUU2PurFf27NrARDQ7x3ddZmXlX3LNhwvnvtuq7dCatY6jA+btTlynbjvOI5xnVK/RpG79zmTC7dqxShqijZv1ys2r06XHtTVqNikrLcrLL5Qe6a2b52/ZNL9Nh3PWrJwkHaGGwWf+rUHjrq3anrF88WcHdGx+PfFhMoCvvX0KeZXJcnYcta47M6uAjH/uZNao2YyiRPbhti0L5U/J0r5m5bhWbYYOHfbIskWfdul+NVmwmftzyaimOMye9nTCpx9C2guqNfJKoQldJo9r1HLfnzR/ztvkUT/nov9NHv/PstLi1u3ObNtpODnDF817t1uvW9t3vnDE2zesXzOlSTN3hnZWdr6JQ/vOl5wy5Pd7i7bCAAYAAAAAAACkgOfl1WBHk+bN22zdupF9fwwa+pcOXdw5zORd3LxxboNGXeQy1/Mvf7Vx05PsK+X5TideMeC0+8zJPbs3fPjmNfJdQZde+7Fw7eHqZOlFo+UrlowaPfKX5Ftu3mpwaOIuPeuJf7Wlg4uueq9+w850sG/vtl07VzVs3H3LpgVvvThMXtahy6WDhv75tWfOINvVvr1Xv7t6nHw73fLC4ycLEWMHguzekwfdW1Ct4cb1Mxs27blr+8pPP/jxkLP/EZqh/dKTA6XXNFnas7KqnX/5K3U9L3dpSVFx8U4yXFcs+ZxCS/bog037h29efeOdM5g3t/zph0648c6ZlJ/09fXnztq+dWnXnjeQvz0SyZDhrFs9ZcwnvyCb+aaffpORmSdt+/Ly0gVz3vxqzP+ZJ5578fPNWvQbN+r3FXGYAwAAAAAAAH6YFBY2WLVqCTuaHPsGMPOmyFav0XTHtuUVMSbJpZmbV7i/eDu5KIv3bS+1tqEiA3jblsWjR/6cHQzkbiXvaMJVuJff8FlJ8Y73XrucJYhzXnnZPnbw3PrzhUsWfPjlp/eyQ4UinJlZEHJKH3JQydKeghq1motYOQ09mPIi1zGZ6Dm5NbOyCuyXNknIPKbPpx8+kQEAAAAAAACqLJVgAB/77wEmysv2k3exgheT0SUNNun1NTRo3K2gWgOypXv1v2v9munrVk+sYIBkRYfO5OTU7Nz96rz8urXrtFq2+FPHyZBbWAXjfBDWL9mHA0//sxCicbOTyH26ZMHH7DCgCBez7exIEJ/2ihDKeeb6kLd6oW2jv9BPmVkFWdkFU8b/mwEAAAAAAABAStLCAD4iNG3et6RkF+e8dftzIpHsihvA8RRUb9S2ozsLetfONXUK2+bk1j5YH2kIMtpz8wvJDly/ZtrsGc99t246SxvKSote+d+Q3bsOcd8vAAAAAAAAQPqQFlOgAQAAAAAAAAD8wMEUaAAAAAAAAAAA4MgAAxgAAAAAAAAAQFoAAxgAAAAAAAAAQFoAAxgAAAAAAAAAQFoAAxgAAAAAAAAAQFoAAxgAAAAAAAAAQFoAAxgAAAAAAAAAQFrgMJCE/IIGmZn5DABwRKlRqznnPzjJk5VdPS+/HgMAAAAAAMc08AAn5epbxy9Z8MGYT34V/1P9Rl1PP/dBOhjx9g07t69IHU5+Qf29RZvY0eSy60ZmZRfQwYTR/7dq2ZiK3JKRke1EsktLdrNKp07dNmde8JTjOLFY7J2XLti/fycDKcnNq12yf3csVp7sgoJqjfbt3ZzigopwZCtqu04Xdjrxity8WqUlRR+9dU3xvu3yfONmvc+/7OVP3v/xyqWfm4tPPetvjZv1oYOlC0ZMmfAvc77DCZf0OPnHdLB717oPXr+CHU0uvPKtzMzcl54cwL4naLgtIzOneN82c6Z954tathlaXl48d9YrG9ZOsy+mnGnd/txdO1ZPHvf30tI95nyjpid17XlDLFo6ffLj27YsZJVLnbrtW7YZUq/BCSPfvSn0Ew0u9Bv8m8J67SMZWfPnvDVr6hOpg6LcyMzKp1od/1ONmsft2rmaAQAAAAAcEvAAJ2Xd6smrlo9L+NP2LUunTXy0eo0muXl1UgfCeeTa2yeSXsiOJlPG/3P6pEdzObsNqwAAEABJREFU8wpJNazgLQNOv//ci59j3wektU+b+OC8b16vUbOJtNtBai6++v0efW5L9mudum2vumVsTm5Ndhgc2YpKTYNs2rLSvQu+ffu7dTPsn/bs2kBntm9dYp/8duarVIGj0bJ6DbvY59esnPj1xIc3b5xbt35ndpRZtXT0skUj2fdEJJJ9zW0TmrcaZM4MOfvfg8/8K5myJGQuuPzVFscPMT916XH9oDMeoNGr1u3Pvuz6j835wnodhl36ckG1+nXqtrv46vdoRINVIrULW1923UdkfjdvNTDew08RPq7V4FXLxy5fPKoi4yx16rWnIcjqNZvF/3TmBY/L8UcAAAAAgEMABrDCccLO8BFvX7d88acJLy4r27t4/nusAkhFMDunWrILyOcTf5K0YR2rTFYBVq8Yt3DuO7FYGUsZDRvHyc7Mykt2PfmH2UFSwagS5eUlSxZ8RH/sIJHZQmkhay3+14Qn44v18IkP8xCyK2G5SxIVVkZmVtIqRJbSnt0b9u3dWpGgUj80RUU9qEnLbTqez7wWNHPK4xNG32/cv8z15a5577XLd+1YZV+/ZdNcqsC7d64LhVO0Z8Piee9tWDudHSFStCzyPE8e94+EdyWsWqkb6cHO8e7V/6eZWQVLF/nWbCQj85tpz376wY/J9V20Z1OnE680P3XteR3lCf306Qd3VKveyIwOdOlxHTWut1+68K2XLqAIdOr6I1aJbN+69Il/tf/8o58l/LXJcScvWfDh5HF/oz8q04TX2Pm8cf2MaLSk78AEE3AWfPtW6/bnYL46AAAAAA6NY38KNLlBhpzz77r12hcVbdq6aV6L1qevXz31k/dvPe+S5+s3OrFoz8bRH/9y6LBHyBtJxy89OVCI6Gnn/Kf58YPp3slj/zZ/zhsmKNJQh5z194ZNepIBPGfGCwd8dPPjT23iTezs0v26FsefSgdLF43c/N23zFP1Thnyx3adL8zIyCovL50765XJ4/568sB7O3a9rLSkiHw4xft27N61rn7Dzt+tn/neq5fRxW07XbB04chq1RvTyeLiHdMmPrx04YjUEWjbcfjJA+/Jy68TjZavXj5u1Ed3xGLlWdnVu/a4rn6jrrm5NfsO+jVdVlKyZ8bk/8pb2ne+qN/g35JjNhaLrVs9ZdSHd9gTLBPSoculfQfeS7fQU3ZsW845f+P5s+l8g8Y9Tjvnn+QMpKB27lhJQZGKnCKc4T96s069tl+MuHvV8i89l2atFUu+mPDFfeQIcpyIELHsnOorlo4+ruXAWCz6xcc/W7l09CXXfFij1nFrV35FziXS+EnD/vLTe03ae/a9g4qVnk5WwYolo8Z88kvzrBath3Q44dLZ059dv2Zq6tRRsNfePpns1WWLPt303ew+p/wyJ7fG8sWfffbhHcmy69JrR1Sv2XTm1Kdatzu7WvWGO3esHvvZvdu2LElW7ikKi7y7bdqfm5Vdo2mLfn2ZW1ibN86zyz2/oEFhvbYzpzxxwHJv1uKUoec9TAXx9kvDO3b50cmD7mFCvPH8OXt2r09RUan5DB32cL0GXSKRjH17t5E1m2xUSGdXZNhlL9Wu05oy5KKr3nEj/N28cZ//Tv565c1j3EkTQrz14vmVOYv1wivfqV14fHnZfsqTjRvm1KjZLDunxuxpT8vp1m4hnurGkPLq8xHKfqMaMuSsf5LQiEXLCuu127VzzeiRvyKrLEUjZclb3JU3jY5kZJWW7Hnxif5Un+npIhZ99ZnTzYTn9p0v2bZlEcXQxHnUh3ea4/3FOyj+8pjs7YJqDaZ7DXbd6on0oFZtTqMRBOYamX3Wr5lCEqystIhCO67VgK8nPtiy9dBTz/47fd22eUnLNqdTfJYu/Eia+n0H/aZDl0voYOqE/zAmeve/m8pvyfwPx3/xR3ZIJJyE37bj+V16XEsVnpzYlFfUkMd+9vutm+c3aNzt3IuepSeO//wPjZv2bt3hvEgkkyrY/NmvyRupzbbpcH5GZl552T47wIXfvtP/1N/16HMbXRx6Vq9+d5FAmDT2r0d71QkAAAAAqi7HuAeYXGeXX/9Jw8bdv1s/KzMzt21HcoxkzJr2DP1E9gl5UWrXaXXhlW/tK9o475vXyU9Fxhv9NPebV6ZPepSuJO+KHdqPbviUNMhtW5eU7N/V/9TfHfDpLVuf1qrtGcxdmNfz+HZn0V99PcNz8Jl/6XTi5csWffzJ+z9evfzLE0+6nrTPxfPfLyvdm51Tc9qkR3LzapHxM2fGixT5mrVbkh1OynHHLpdQUJSWvPzC08/9T1vPz5aCeg06bt28aOxnv5019cmWbYa0bDOUuYvxCtt1Hp5fUI80SxkrMrGk74V05cFn/nX7tuWjPrprzoznSZ8+//JXUj+idftzBw39M1mYs6Y+tWrZaDLGqtVoSudr1W51weWvZmVVm/rVg2RpFFRrdPHVH+Tm1U4R1Iypj2dk5OZXa0DH0yY9SuMRZHjQWMO82a+ShUmW6tbNi1u2HrJxw6x9e7ec2PMG97KJD2dl5dOgxqK5765Y8ln7zhdKbxgljRJCSvbrz51FHify0OYXFNrPOv3ch5u3Gnj6uQ+xA0H6OoVAhkqbDucNOO3/1q76avmSUWS7psguMqsoVn1OuZuyevPGb+vW73jJNSNo5IIlKfcUhVWvQec2HYeRYVC9RjNZWM1bDbajd0I31zG4YO477EDlTgbtpu/mykny61ZPmjnlScrVvIK6LHlFJVvrsutGkvW7eN77X435M3nkzhj2SNPm/VNmV3TPrnXUQBzHKdq9kf727vVNETK0Zn39P3pudm4NVolMn/woVa3S0qJF8z5o0KhLNFpK5di5+7Xy17WrJlN737tnU83aLcwtG9d/s23rYpIPGRk51B5zcmr2P/U3dD5FI2VJcr60ZPecmS9QBOi59HVv0RY6phpOZq18Fo1G0ahKsjkRFDI1BOM1LajWkLmrMJbJr/uLd+Z7Z5i3j9fO7SvlMR3IBRobN8wk65diSANV27ctowI68aSbZM1fsmDEnl3rqa7SxRvXz6Zy2bZ58bzZb7AjCslVqgY0IBKN7veqxCZq1HSehoSmfvUfqmMDh/7l+PbnLJr79qbvvpESWLJ4/giqRW07nBcKkG7fuX0VSZ7Q+QaNuvc4+fbW7c/ufcovGAAAAABAEo5xD3DLNmeQ2/DdVy8n1w19vfTaj8nwk8dkUNWs1ZKsoBlTHjP+T8nG9bPoj9RE++Tx7c4hx8uYT+5dNO9d+kqOoBNPukH+RF4ycjvYF5eVFpNPhryRpN7d9osFn35we2gPG/JskKJMRjgdk4nYqGmvTideQergnt3f7S36htTxjl0u2/TdtxO//DOdb9Skx4Jv39q3dys5jp5+qKuc6nzDHTP6DPjl4vkfpEj+V2P+1KjpSa3anJGRmVtWVtK6/TnLFo3cuX3FS08OOO2cB8nd+sZzZ9nX9zrlLrps7Ge/JmV16+YFpNw3a9GPrDh6NCmXTiQwEXT7liX79+/sfcrddMvzj/WWJ/uf+oc2nsJ6Uv+fkvL65gvnFe3ZQF9XLv/ywivePPGkW4zDM541K8YbDxKp+82a95der2WLPuvR5/bRn/yKfL9Dz3uQvKwndL+mU1d3SyTyFZNivfDbt8d/8Qf6elyrU9t0OMf1hokoGa6RSHZefv11qyd/+OZVjpNlP2vr5oVkCG36bg6rAJTJx7u+3CYfvXWN7TFOll1eQmI7ti2TnnBy0l57+1d9Bvzi8xF3JSv3ZIW1cO479Hft7ZPI+T9p7F/i41a3QUeyxnfvXGOfTBgUFdaGddPIQqMLyPtK3u8+A34ur09WUcmWIMNs3Od/lE65ed+8evNdc/sOuveN579KVufpYMwnv+rc7eq+g379yfu3hmJL0aCxid7972KVi6xaM6Y8vnTBiHadzp828SEaTLnkmgFk1lK2UBWl3KjfqIu9hJ6GPEgI1G944lsvXUAO1dKSvSd703G3bVmcrJFSy0qY83TXzCmPb9+67KwLHrvoqvdoQGTkezdTlMyz6jU4gbl2+MT4mFOTv+jKt8nVPGPqk+YMc43AIvmVrEoScfKYBkqkbeldUExmNh1Q4yXjlgzg91+/Qoq+sy98mkp27KjfUXmRK/6Saz884/zHykr3UJ68//rl1HDYEWXNygn0d9NPv1k874Npkx425ylX5856uVe/n1HzeeP5c+L3u1q/ZjLzFjbHh0ljlx26XBw6uX3rEmoL5Gr+bt0RmzMPAAAAgGOPY9wArlWnBZkiUu1jroo5oV2ni+wLSkuLQ9ZvMuo3dJVU46Uhl6wxgEnXJ4XSvpge+sS/2iYLqnrNZmQcklfnihtH+TEpKQqGUL5751rmKrglpEzLk5s2fGMW+q5cNpoc2iw5pChffcs4sjfIOiou3uY4kazsaiwl5KfNzMwmn7mdkJzcWqUley68MuwX+mba05PH/YOsO1uV/2rM/0388gHm7ojTpmjPJmn9Mm9MgeyBOnXbsMOAdH2KDzmUyOvlRPyqu27NFHlAOnSWt1aWPNLkoCPdmgY4ZComfHH/OmvK7buvXCSNH1ZhNqybHpovnSy75HLcxfM/lCf3Fm3cvWtd7bptU5T7IRSWhPztVDr2mUMOKh4y1byEvKdTV041sLCeu1HWwdb5Hwiy+ezauWb/fndZMuUSS1kH9u3dQnYa89yVVHZxoQUaaeqcX7n083nfvN7pxMvJ0LWbDEF+ZvqMXwJNIzgXX/0eBfjaM0PNNGA5uZeqmfyamZlvln9Hy/dnZyvXOlXvEqtiUOszYnDBnDepXdSt34EGOyhD3n3lkhvvnJmVlfveq0fe+q0Is75+KuFuzxQZMmhrFbaK/2mPJ1ioQdlDP6Wle/734AmZmXkHXLUBAAAAgHTmGDeAt2121dZWbc9cvvhTzt0DdqhILbN+o67SvXBcS/91Kd/OemlbcFfb/fuUVi0VStLJ7F/37nFV2IVz3zULVitIYX3fGdKwSQ8y81JcTN6nrOyCN18YRs5J5i6/HGv/ShGTDiKb0pJd+4u3vfzUoPjQJo37B/mX7DMrl37BvBmYlCfmJGVy7cJWZC2QYUBKdmZWgbQfSFUlW3HP7g0sJUKIat4UaOYNXrBDhfyZmZk5pA2Tl5tMdHJTk7dz/pzXzAXNWw1uf8LFc2Y8H/LMHxQpsot5u/58M+1/zNvvikxlsp9TlPuBCktkZiV+JXX8qssUQUXJP6arYp267YKPSFBRd2xz59M2bX6KeWUR1UDyRrKUdb7SIGf7KUP+SFVu3Oe/t/fZ+r5IXYgNm/Ts0OXSNSsnNWvR78STbpZ1QxKNJti+jvPIRVe9W616kw/euHL3Lt/M8953FWvctCcNx1DVys2rZZbWFxVtMo2xsH67ndv9IR9qfdVrNKGBGDpu1uIU9+LdG+VP5178DI2hlJcXX3TVO689c7o9KkSe/CbNeq1bM5Vctex7gip//EnHmiltU19OiGgAABAASURBVK9Bpxq1jtu8cd4B304HAAAAgLTlGDeAVywdtbdo8xnDHtm5YzUZQqQFSvWdeYtUSVUiL41cNVq0Z73UocnrQt5L7yCzoHpj+jUWK922ZfGyRSN7n/LzM89/bPrkR3Nza3Y96Ra6pmat48gellOmE0ZAiChpqyd0v3Zv0ZbGzXq163TBgm/fnjvrpa2bF7XpQIryouWLP2vUtGf7zsPJRHzj+XPd7ZSitcmrw9yps3XlXrIFZo1fVv4l13xIFlSrtkPp0XTAPJuTjBlSlznPIB2XIkwOkF07VknfFD00N69Olx7X1qjZhGxROZ+ZuUb4d9WqNyI7kJTvth3Prd+o26tPD1ky/8NuvW/pN/h3ZN5QUG07nte81ZC3Xhy2Z/f62dOeTpjABXNe69n3zjMveILcOHn59Qae/n+Ok/Hsoz3mzHiRDODzL3tp4pd/pWjLTYbmznKXyFLqatZuWVDNfUdLnXodsnPIZbpZ+rW2bp7XrvPFpHA3aNyN3I+7dq4jr1q1Gu5K7Ore0mIazpAvd6HE5ubVpk/mWdfMWwCZkZGTV1DXW/HboEef22vVbjl21O92bF1e0vMGMiTsaA8d9mhGRlaDRieaydvJoIyl7CWHGwUrq8r2rUvI40cHKbKLuWZGX8qWDWund+52FUX725kv0F0Jy/2V/52aurBolIEyk/KkRs1mbTsOI8+e2SFp1/ZV1VsEFuWmCGr1irEnD/xln1N+sXb11AGn3+dV4OabNsxOVlGXLPiw36m/HTT0z1lZBVs3L6RxBCrK6ZPcGRMp6nztwtYULFVLirAXn3XSv0flVVCtcWaWO+xSp7CNiImS/TukSUb1gWpFbl5Nym/KZLLGt21ZSJ9Uo6i4qegpNJn5O3eslEMqzDU4z2vV9gxyoR/Q+qVwKAQqI9mgqObLMiqo3qhoz4Y6dds6ThZlF40yyKds27KIsoQyza1RXtZRNsqaRsfJGum61ZOT5XzjZr3Pvfj5tau++vidG0mMUCkwdw6FsoHlS6Gq12wsd0qTnHnB44X12s6f8xbFtlGf29t3vpDqifyJRm2opOZ+81qvfu5k8oV6BfiCOW/1G/xryvbcvEJKLDU9OxMuvPKdOTNeqF3YsnX7YZTtZFSTl3jwmX9r2Lj7K0+fVlK88+rbJl52/ci3X7pwb5GyjXuf8gvyDK9b8zWrAJQPteq0qlXHXbZQr4G7UZ90z9IoWO3C47mTSblHcYuWl8mp8nS+Zq0WdJ5qtSdmy0MvLqamR42Uanj8s6rVcFfUh2b+E+dd8gKVzhcf/wIGMAAAAACSwfPyju5uNM2bt9m6dSP7/iA1q/+pv6tbv9PuXWvLSvc1a9H/uf+eRMrrzXfNti9btXzcyHfdRb9de97Yd1D43RvPP9aXlPi2nYYPGvpAxJt8u3bVlKbN+3g/9Un4BhpDlx7XnTzwXjl/ctvWpaM//gU5iMhCO+/SF+TUR+ZOa9w6fdLDDRp3bdfpQuauGHziuFaDSf19//UrTjvn3wXVGrz05MCzhj9FVkp2TnVSbaPR8hVLRo0e+ctYrIyM2LMvfMp+opmMetFV79Vv6Cr0+/Zu27VzFWm6WzYtIAuNeTMkL77mfQqKefPAF3771sQv/0wq7NDzHpb7IcnzS+Z/MGH0faknRg46468dTrhIPpfsk9Ef/1IquCd0v4YSLrOrrKxk3KjfyAnkA0//c8eul9ohkEH45gvuljaUFkovqbDl5aXF+7aS6r9s0afHt3P99pTkD9646sIrXicjYcaUx4ee99DqFRMK63WQu1u98fw5pKzLCc+Txv6dHnTdjydRfGS2l+zfPWH0/fYmQxde8Tbl9sqlY+LXqYZo1fZMGkCxz5g1sSmy67ZfLF69YlyjJj2ovOg8Fe7s6c8ybz1wfLnLncZTFBa59YZd+goN33i3bJ4y/p9m7XfPvnec1PfO1545Y8f25SaGKYIadtkr5NNj7m7Sc8lKoYNnH+kpnX4JK2qjpiedMey/5GaU5UueQKonKbKLhj9uuXu+PVv4u3Uz3nvtcjo4//JXGzc9yb6YRqOoMZK7/pa754UmGMt1+1fcNLpmcKXxrKlPya2b3bRc+nKT43pPHvdP25uakKtvHS83tHv31UsvuPx1N9WP9rzppzPJeH731UvsSeySLz/9NQ0MnXbOv2T8P/vwp1SdmFfEK5Z8kqKR0sBKfM5P/PKBCy5/Vd7+9EMnkGdYmtN0o5yAQBb4Zdd9PGXCf2ZN9Xfzvuln32Zl+XM0qKq88HgfeUy16Ec3fCrfoT1h9J9oQE2eJ4vx4qvflRPXjUBj3oYFHU64ePu2pfUbnsg88/6T924jy/+y6z+pU9iauU3mb7t2rj7rAvfpWzbNf+tFd3c9Eg5X3TKW4vzMw10rMjX6uJYDz7nIHyaj2vLkvzuQyOp/6h9O6H6VfeUbz59NrXjI2f8ILeKgDJQDExIp2UZ/8qv41yZRHmZm5oZGr+Ri+/3Fu2gAjgEAAACgalJY2GDVqiXsaHLsG8A25D4lgyTZnNWKIL0c5HlIPf04nmrVG5OTMzRhNSurWjV3XuJa49RKwaXXfkyO6NEjf84OBukmTbjEjnleU3J0m3exSMggqVWnJZ1MbdgHb8moWbvFzu0r42fkkttHxKK2XntAyOl3+G8xkYGQpygWLU8YWvzrVQ6NhNlFBvDnI36W7I1Byco9dWGRG7OsdK/Z5UhC4zs33DGd7NLQFlkpgqKEU3mVluxO+JSEFZXcmNnZNWh043tZI5qMm342m9JI5lnCt+98X6QuxGRcceMX0VhZaFO61JDXlKzW+HKsUas5jYvt2eW3ODKAW7c/58Un+rGDgQZE+g3+zbRJj06f9Aj7PjjrgicbH3dyvPlNDYHGI6aM//esr5+0z3c68YoBp9331ZgHvp35AgMAAABA1aQSDOBj/z3AzH33zN+ysvIL63cix0tF3t+bAlLFUr/MNhkJLcDS0j2hWX/JaNC4G7mYMjJzevW/a/2a6etWT2QVI/Xs0IRWEGnPZGmzg4EskGTZEj9N8YAckXd4ykBsMyDEEbF+WaLsat3+XPJntus0vLBeu0Vz34t/4W2yck9dWAltKjKhyR3doctlIQM4RVCpE56wopJtX/HRkMqBBhGoUX8z7ekflPXLDlSIyRj/xf3DLn2+dmHriosXOc8inl07VtlfaUSD3Pg01EWio2j3JnslfGoaNu4WjZZ/8/VT7PsgMzP/uFaDvp74UPyYS8+Tf0x+6Tkzng+db9SkJ53/HpcrAwAAAKBKkBYGcEZGTp267XbtWE0egwVz3mRVkKbN+5aU7OKckycnEsmuuAEMKp82Hc7btXMNuYXpb/PG+fEG8JFl4pd/IX9yQbVGZs/tdIAGEV7+36lFu4+RJFOLJl9r7cK2hza+loIatVrk5NYo3reFREfRno0VN4A/H3F3QfWGBzvV5UhRq7DVkgUf2HPCDRmZ2R+9eZVch2/z5ae/ys0rFCLKAAAAAACSk15ToAEAAAAAAAAA/DDBFGgAAAAAAAAAAODIAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAMYAAAAAAAAAEBaAAP46MJ5pHGzPi2OHxSNlk8e99fQrxmZOV173tigUdesrPyR791asn8XAwAAAAAAAABwdIABfHQ5sdfNvfr9LBYr31+8PWQA16jV/OKr3uVO5sJv31q3ejKsXwAAAAAAAAA4qsAAZo6TQQYqOzrMmvrE7GlPn3La/ce1PCX008Chf45k5Lz69GlFezYwAAAAAAAAAABHmWPfAM4vqD/knH/Xrde+qGjT1k3zWrQ+ff3qqZ+8f2skkn3+5a/WqdsuMzN79651E798YOXS0bl5ta+48Qu6a+pX/+na88bs7Gob1k0fM/Ke0tI9JsDufW4vrNdu8ri/79m1viIRSGhd5+UXNmnWa9G8D2zrN8XTW7QecuqZf+dOZO2qidMnPXLB5a/T8e6d69584Rx5b2G9Dif1vXPV8i8XfPsWAwAAAAAAAAAQh8OOaci7e/n1nzRs3P279bMyM3PbdryA84xZ056hn7JzauTk1Jg/+9UvPv5FLFp+ypD76GTxvu0L576bnVN9wGn3lZcX7961pmXrIT+68TMTYJ26bXr3v+v4tmf2HXgvOwzqNezifXa+6WffXnHT6Dp126Z++qYN365eMSErK39f0ZZdO1ZzJ7O8bP/XX/3HBHjqWf9o0frUQWc8kJlVwAAAAAAAAAAAxHGMG8At25xB9uQHb1w18t2bXn5q0NbNi8vL9m1cP4N+2rd38/uvX06+3+NaDiDncEG1+uSApfPLF4+iz2+mPffGc2e9/dLwcaN+n19Qr3X7c2WAu3auKS0tpoP1a6ezw6B2ndb0WVCt0bJFI/Py6501/El5PtnTKbZffHzX3FmvdO525fArXB/vWy8OI3+vCXD9min0ubdoc1lpEQMAAAAAAAAAEMcxbgDXqtMiFotJi5dYu2qC+alzt6uv+/GUXv1+Vq1Go+o1GtOZzEzfdzp/9mvygFyy9FmvQWf5lfyuzzzc9emHu8+d9RI7DDh3c37CF38Y+9mv6a96jSbVazQ74NMnjL5/547Vdet3mDrhX3uLNtkBTvzygWcf6fnC430ZAAAAAAAAAIBEHOMG8LbNSxzHadX2TObZnPJA0vuUuzeun/3MI93fe/WyCV/cH7rxuFYD5UHjZr2Z61n1rc2uPW8ccNr91ao3ZofBzh0rvWC30ueObSvos3rNJgd8evc+t1ev0fS7dbP6Df5tg0bd7QAzMnOatuhvJxAAAAAAAAAAgM0xvgnWiqWj9hZtPmPYI+Q4zS9okJmZXbxvh/ypeN+23PzCBo17NGh8Ys+T76Azteu23r1rjfy1z4B7yNQsL9vXufvV0Wj5kgUj5Pk6dducPPCXdOBEIqM+vPOAESC7tGatlvkF9SKR7Lr1O+8t+m7fXtfoXbl0dHl5aZ8Bd4/6cE3fQfeUlZWsWz3Z3BX/dLq9c7cre/e/a+xnv13w7VuXXf/J+Ze/8tFb12xYO03e0r7zJacM+T1Z1MsXf8oAAAAAAAAAAMRxjHuAiVefGbpw7rvlZfvXrvpq8fyPzPkp4/+Vl1/3wite7zvwnlXLRsdisbOHP9mgcTf565IFH3Xocln3PreVle4d8fZ1+/ZulufNGuANa2dU5On9Bv3u0ms/bN5qYG5erUuueW/YZa/I87FY2Rcj7i6s1/GqW8Y0bd7vm2lP2XfFP5381X0HudtutW5/LhnVdQpbRyIZ513yormleatB9Dl90sMMAAAAAAAAAEAieF5eDXY0ad68zdatG9kPg0uu+TA7p/rLTw0yZ2rVbrVzxyohouZMg0bdL7zyjcf/2c4+GYJMULKo2WHjuoUbdN7oVBNxAAAQAElEQVS9c5V0C1fw6Qm56aff0OfTD5/IAAAAAAAAAKAKUljYYNWqJexocuy/B5gYfObfsrLyC+t3qlGzyZwZL9g/7di+3P7qOBntOl1AB7373xWNlsz6+n/l5SXxAR4R65egR5gNuir+9HgyswqysgumjP83AwAAAAAAAACQhLQwgDMycurUbbdrx+pZXz+5YM6bLDkZmXkNm/bYtXNNq3Znilhs/py3y4sqz319yE8vKy165X9Ddu9aywAAAAAAAAAAJCG9pkADAAAAAAAAAPhhginQAAAAAAAAAADAkQEGMAAAAAAAAACAtAAGMAAAAAAAAACAtAAGMAAAAAAAAACAtAAGMAAAAAAAAACAtAAGMAAAAAAAAACAtAAGMAAAAAAAAACAtAAGMAAAAAAAAACAtMBhVYrsnBoXXvF2n1N+kZVVjQEAAAAAAAAAABWmihnApSV7tmya1/Wkm/oMvIcBAAAAAAAAAAAVpooZwELEJoy+f8f25YV12zEAAAAAAAAAAKDCVDEDWLK/eEdWDqZAAwAAAAAAAAA4CKqkAVxaUpSdDQMYAAAAAAAAAMBBUCUN4G2bF+UX1OvY5TLOq2T8AQAAAAAAAABUPlXSgJz59VOlpcUDh/5pwOl/YgAAAAAAAAAAQAWoku8B7tjl0qys3JVLx8yc8jgDAAAAAAAAAAAqQJU0gOs37FJaUvTJ+7cyAAAAAAAAAACgYlRJAzg3v7CoaBMDAAAAAAAAAAAqTNU0gPNqkweYAQAAAAAAAAAAFaaKbYKVkZlz8dXv1Sls/d26GQwAAAAAAAAAAKgwVc8DvG3LkmkTH1m9YhwDAAAAAAAAAAAqTBUzgMvL9n/56b0MAAAAAAAAAAA4SKrkGmAAAAAAAAAAAOBggQEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtgAEMAAAAAAAAACAtcNhRJhot5/yoPwUAAAAAAAAAQNWFzEYyHtlR5qibpqWlpZEI/MwAAAAAAAAAAJKSkZFRWlrCjjKVYACXZGRkMgAAAAAAAAAAIAlkNpaUVH0DeP/+4kgEU6ABAAAAAAAAACQlEomUlBSzo0wleID3M8YZAAAAAAAAAACQBCFEScl+dpSpjE2w9u0ryssrYAAAAAAAAAAAQBx5edXIbIzFouwoUxmTk/fs2RmJZGRmZjEAAAAAAAAAAMCCTEXHcfbs2cWOPpW0OnfTpnXVqtVkAAAAAAAAAACABZmKZDCySiGSmZnDjj5CCPID16/fpLy8rBL82gAAAAAAAAAAfuCQ77dWrTrr1q0gg5FVCjwvrwarLDh3GjRoQgbw3r17GAAAAAAAAACAdCU/v7rjOBs3rq0065dVsgEsqV69Vl5ePhnD5A32/sqFiDEAAAAAAAAAAMcuZANmuGTSH9mA+/YV7d69k1Uu34MBTDhORo5LXlZWVmZmdiQSYQAAAAAAAAAAjl2i0WhZWUlpaen+/fv27y/+XtbGfj8GMAAAAAAAAAAAUMlkMAAAAAAAAAAAIA2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC2AAQwAAAAAAAAAIC34/g3gjIzMrKxs7y+HPjMyYJMDAAAAAAAAwLFAeXl5aWlJael+77OkvLyMfa/wvLwa7HuiRo3a1avXjMVido5Eo1EGAAAAAAAAAKDqE4lEbH8n586ePTt37drOvie+HwM4EsmoX7/x3r17du/eIYRgAAAAAAAAAACOdTjn1avXyssr2Lx5QzRaziqdSGZmDqtcKMF16tTbsuW7ffuKGAAAAAAAAACAtKGkpJj+yCFKx6Wl+1nlUtke4AYNmuzfX7xz5zYGAAAAAAAAACBdqVWrMCsre9Om9awSqVQPMFm/e/bs2rNnJwMAAAAAAAAAkMbs37+PPLK1a9fdu3c3qywqzwCuXr1WNBqF9QsAAAAAAAAAgCgrK8nKysrMzKq0udAOqxQikYxq1Wpg5jMAAAAAAAAAAMOOHVurV69JBiOrFCrJAK5fv/HmzRsYAAAAAAAAAABgsWXLd/XqNWKVQmVMga5Ro3ZZWSn2fAYAAAAAAAAAECIajWZkZGRl5ZSUHPWJ0JXhAa5WreauXTsYAAAAAAAAAAAQx65d26tXr8mOPkfdAM7IyIzFYowJBgAAAAAAAAAAxCFcYpWwEvioG8BZWdmV/3ZjAAAAAAAAAABViJKSEjIe2VGmcgzgEgYAAAAAAAAAACTBeyUSDGAAAAAAAAAAAMc6ZDZmZx/1HZqP+hzrrKwcMuUZAAAAAAAAAACQBDKAyXhkR5mjbgBnZGREo1EGAAAAAAAAAAAkQb4MiR1ljvoDAAAAAAAAAACAHwIwgAEAAAAAAAAApAUwgAEAAAAAAAAApAUwgAEAAAAAAAAApAUwgAEAAAAAAAAApAUwgAEAAAAAAAAApAUwgAEAAAAAAAAApAUwgAEAAAAAAAAApAVV3gCORDJycnKzsnKysrLpLxKJMAAAAAAAAAAAR4JoNFpaWkJ/JSXF+/fvj8XKWVWmahvA1avXbNW82aA+nbt1btmqWYOG9WpXr5bPOXcch36lA/oUFrFYzL7dnLdP0l3mypiHucALWQUf4cxxhON+us/hHnaw8l6qLvGB0KejA5LI8/Kn+KDs+CeIsBuFCAVmLojp6/wnyqjTM73HMj9879OND40kZGZkZnE3Ml6+MS5i7gWUE9GYiLkHIuaH6gbEnYjj/XH3IyLvFd7jZMzk/96nfqL+QfilYH0x17iBOH6JhAIRLO5AWAcqRFk0XoAx+YtMkfcn9KNVsFzlO/05dkF4Z9w/O3aBGOsnxsWBeY+KMRUEVwniJmfsgvZTHswoP9V2DWH25SZq5jQXOtRQTlF0hFuOUfcXWU7czleZLe4VlFMxtyp5aXGLX8jQ6M89L6umCtYrc0eFxk2L8GqcFW07r/Q/MoCYeoAbsvfMmC7EGGfCcQvJFCsdu3EzX71KqaqmbiZu9L0aSw3QOyMLnaoUlzXWycjIcit8RqZ3nOGouqLaftS9jcm7mNdmmJsWamURv/lwXUZ+bTf3+vGXEU4S/5iqIzKT3a/qDBdWqXKr2diVQ2UkUwXhJjjQ6iNOBg0IOrod+ZXPqj+mxskc8ESEJ5F0K46WR2PlbobKn7zCjLjNgQSOjALjOt7MnBFGhngN2ZUUETfnYzKuuu6YUtPNMuY3ad3QeDj2TNcprmWaG1spT1Xr4H7uq2YgM4qZhh+UOL6Ysp4cn+FeuIEGZwSobl9xIVvP0Hfq7JfJcMWUyX+Taqsyu9KXPuP7r2Ck3cjZ+WPEixEXdGh6ENnOzDfKIbdVRGRfpGLgJ94rVROMvF/WdqGK0GtyTGRwLv+YEnA6ir5EZeEEygYr/FOyZ/Eqm6xvjk6To/8i8oyRIVIAyI5Pdrh0EdX+zIiVJMZCz45ZCWCJy0ym3y5E00Vw1WQswmmznsS0zDSqhRCpaovuJAPdijw2qoW5NuJBcowx1XCl4mFLAyeSySMZ7qdDQi+b8YyYaiA89ORQulSqvWSzYFaYJHNVublV2fzc1gf2GdUMpZRlfoevug7/SpUHyTOKya4jagrKb19GwimxxIxyYYSfvFBIYREzHSbXciIWyH+lSOj4GNHt5zOLePWivLw86lHuUkb/mhLXSiOnIjNKYCgzuZLJgdpFl/mRicVMtiTMHF9j8fsI81NAC7VL2a5j8sBV7CKRQIlYVTHwRCucUP0Rlmpqmp4dgkmgyRBLKzbN0G+1bp/kflIlF1TTTTiOJzcczw0mQ4tZKp+E+n2vrWR6PT91/REpmknOUmdXVlYudXb6tGKlMkppKSxGLSnTVR8iMaUmBNKlYbbGzFTF9svajS310jxi5Y9fu0yxy36O+RaNzE9P5tI/bkARzwjIoP8iXoq8/Iv45Rgz2ozObS9THbeeKwFONZUST59CRGUa3Yrq9XleblMVpmpctnv37i3bd6zfuO3bBSvHT5m7fNWa3bt3sipLVTWAqQTbt21/42WnXnx2v6zMDB7sgQAAAAAAAAAAHD75eTkFBQ3bHt906KDuP7/tondGTHjmtVELFi1MOUT1w6VKGsA0ttGta5f//O7q1s0byVFt5YNxx3vMmFbQUaYdAEyP6LjjId5IKlMD4f6IrPlmBoi1dc3dAWVyeAju+YG4YImdkEKPQ9sDQuZXL54xM94mj0NjZvHGvD0EaI/sMstFqS4wQZvIeb4FOSLlDef7zgNhsihKSSqXXhQhR0AF14NHXPjjR8wMzLs5qcYv3f8Z535ozOQ9NwWg/xHC8jnKs3bzcQPTbh51hhknsE6NcSja4TDbAxxyJfnZ5XkzuCwI7WHi8j/jHeM8OPjPEzVvrnzH8kqryHQZcZVSbhxv5i/g0Ha9K9pDYO41Y+qOSS8LVgwe9E4YRFyGm7My1qq0lGPFT6B6uufiEDGKPdUGbwRRVgqvcUhfZcwbJXXHoblIFLtA9ZVZ7X4yof2VAQ+wPqEKwXM1yGFdhysPKrN8eF6lVO5O2VDlcKvQDcpzUseYP+jslYQ3yh+T4bkNPxrl3NHj3GqU12q5QnuAveYpHOG6M1XLZ1aherJG/ecNOtOAbkT7RN1C5ca5IKQjyHM1q6oqtDtd+haiTLm7PS+qFmvSe6HarazEeoxY5a3bari6V8gruZuCcsEDnkKuytevG97FPDwIb9LlpUA30pjn0GVRz1njxk9QBnJZ91UQ0kUqvAPhP467RRGN+h4TwZg1MC+PuO9H9e5jVsTliLVbSP4EDSMiuG5yusJJP7vMCzMdIhD64RAQ5lYFtttdMkyblWXH3EF64Xmcojpd6glCBJ0JoYBVKcs0qsbLlbQN+OK4L9K4H3muZmr4XYnD9Bmm65oRR8xOnTBNTsTsA/qh3ItVlGl3tKrK8fnnZpfVNcrmqZxUjudyirhCQOWDlp5eA/Q+hW59piLZvlzpq4958/N4NMoTuSWFlYBwGVn9jpyzYOW69xHzm57da4cCo6KI4wAAEABJREFUtwovJr028b/GPzcYW27PF7CvF9pNxDwPsOU0Y7JYpZph7jWdNZMSTD5KxPm3rWMecP/y+KjKp9gH8Zho66olD7hyyQquJYTM8FDXUQFEqEVbSTIdrP3NVxKYkamhKCuhayVKyBoXvDj8HA9X6kZZLA6hnP/CnRIWY27PStqq48if7EmLRgCLgFIRVA+0UAiclJExcdbTKsyvss0wS5kMOYHjA2FMKqghFYvFV13h68nMyjQu66GIcwKLuHYnNWF5o6y66quahKJknWBC9c+CsWCrkZopS6yI6PNuR+TO8PLyPup16I6UJLKcpO4hJ+aoblDPaFMTgNxeyNWByGOqOi2eqCD0/cKqgHbt9s7HhJ5IZP3KbVe6YxUQV6q9+6/b+1IhutPkHMbjRZESs6aqMKsZWlHxc85V9yKRmL7WkQ3TrxJungh3TplrgpHHOTM7cvUlp/c9qdOPf/PEzG9mhSYoVQmqngFMxXVKn5P+/burGtStFYtFA/qRK00do0Rzo5gypcxxOR3PnYuXwTyvv5YSeq6yO60gKidP6u7UE0968pXw6lxEyMpANYbatmzkfmM+YGu3O05ZaWwxZM+H4XENImGWeHqv3zy41csy1Q7UlDVljar88vVgx2tUXvsIG8DeMdcqiGNF0p1q4s4L9WbycHtmtR27oKDzLAoW0EQFC+mNMiXB5dwBA5j5xzyRXBam8atfuclDzizVUEpWZk10U7XFzxmtTtkP5ozZZq05Z0JhVvBadjN7HreWbsKfjK16MzmlRchskrnqimMnWclzHtK4fXXN11dVXKSg9mwIZqS6MsZNDye8noHJKZK+DNWp4bJ7EOXuTCFv7pGcHsmMoaWtEs70s4XuA7TFo4wpFTkh9X8/e2XuOHICG/frR1RVSDVApf8C1q8bQszM2NeTPNUlMmxPSESjjiz6oB6g1hGoxmu6DDfLYp7siOl6bs/J9CLrsGDjlVO8YsroVfo5t6xdpk0cOX0z6oki90hmnsPt3PDrmq8P29mlqpaa9Od4mUApKXeD1XXFr5aW1cZ0FffCceSkYu6v61CjXG7OqKLjcjzKE6ayE6aBQSanaUlRyFXeeg8SasjEnVkVM1aOsEZBpFrD1QGzdNNAzHVsItxIQq7bq0pOQMYKZgZ+uGkKwcZyGFjSlQvz9IAsMtEO3KfTo7QYpcMp1cR8GvGlqrVIERFm6TdmECGgPes66atIjuoLrbjpAUzr0TomKgoxZpQ23+71VFV17LYbt5Rjbh32NHqVXOFbzqY5xnTAjFl9NP2bITK9vkV1Zer2mMpmb2SDMyPDhAyfG4mvLXi5liLGgwXBLTMyfhYyD1qAJotjxhaSkTJKhpWn+toEmKLxzyQyIexjropE2C3XfqJ9xhjA3F/fwGwTwr3BW4PA3Qmfjidc9COCcItAzbEUBhvhW4ki4QXMynNtA6sTfkdq9AuWuKM7KBLEQ4iA/EtwYOLBdA+dNDkGHhcQU+I8FtV4Q8VRWw/0xpZVZpqux8pGaXq5S8pYnEzzP/UUaLtG+RGTI7lRd46wL6a0RizlqDS/ZQTilwnoQKRckYuSGIurtHa0eSK0lBMhb1B8nJkvEgPjDkzrUW5fo/pAKTliOrusJYQ84Dix02KlyF1XUl4e1aPejhxvUOUu9IgwM+FJ20/ZwF72UeMqj5IdXVYuOzoRJ+eViLCKg7EEEfPqS5QFbGCuNDNmRLVZSebXUro8osb01V8o4X6n4C9YM4+QSp48lne6pq8cl3LUdGkuB7+tlsm9zle4s629lY8RTzdod3yzFx+6i2zgsV9NYuyIdbCVQ9UzgJs0af6z68+sW6e6rDdGndCavz5pKi5X5plxKzrechmlhIpoLCY7y5i3TiMq1xV4goNJHdjT4L0FUt4MfuZqqI63NtExUsxETyQyfRO2dqa7KHlg1j8Ia1iOWU1XXhl/wKRWbZ0xD7NiEuyZvQDsBhl1ExYV7oC5o5VjLpQvyhshY8bkN+s0Ima5hsxoFvKT+i3OT72WZ9YZweJtOLkU0QqJJeqAfSVPWEPRWq2W6yNM6NzyKtvhaAHmR4OnaMUm101I3Hex8dA1KlDPGyG0hS0tJRN/4S/tC9cW7g3vebVO8Dg1iFkJ01/D+ref676t494ekY2CKdWGBcKTnau3xt0NKObf6NvzlmwNZkxAoTa5IJPDmFGpA1YQ0yqrN8Dq99PKFxpj3B9lVTaNXuru6tsqJn5osYBRHPM7AvUoN7/JlPXWrkaVUqLUR5X53gixbQCTy9jRTk1lA3PVHNxi0pXHPZuREfE0GBkS5WSUKUPdEzXShGcxlYlCLp9UK5+Fd7EuFEsBFcLUL1tLtDo8S2FWeekuGy13l/QI07Uzv1LKRsICxaW1FsfxR5QzMzKpsgjHFJypDY5r4nij4mZUTH56MsSVGFLCUsA0WKKSqbQxKx5M5wTTbcU8IoSnqkQcJ1D/vWjbV6uStxs0SxHoIaICVz49O0lxV4oDP1Zo8yD0BJNdycIw7UmYtW5KvPrXSDnl6HENR6/Rl0Mb6gLuP1HLH6EHcZgwXgS1BjJgAJtKTD9RH0r/M/KrsMCCUT26p+5SU6s8DYvJgmUON6vQ3XHhDE+2M6Pzx3xJIcVujHFLbdUJYJaokQ+y8yHUmZp0mgtEAk+mLlpVQ1UGMx4O1rohbuBbSI3SPyOSWL+chyQot3scZsXExpErNb0hY9sGtoO13L+ev8u7Sljdlh0ZHrB+ja0cFunmmCt3ZYIUCd/kleetMyaVqh3rWxmvSKtR4af4VtEALLeAH+1wRRAsqUFsLnX1R7U2M+D9jVlLvmNSifRGZqQhqmWtCd6xRZrJCm6t0dXNLqk31e3F3DHqcq+d+eF6/ZVv/fo/OYHhMH2sHhKLJc1YO3oJ0TH1V8ma+IfCsVQ4FkgmU3qIHnBmvu7jG4pBmzVQOubTrYTl5THp7bI6vIgcIjITwWTA6h9mzGo5AOtafqVlsZi7YLZMix9uF6JfmJwbpUt+D+UdY8ritlu7/pTubPVkFhI1OkCpxKjs8y/Q/ZGv/QgRqORC555VAbxBFzlJNKYmUMWETp8UIszNJS539NDzsXjjhnV/9ePhy1atX7t2JatSVDEDuHr1WlcO69e7WxvPIpPlIq1QOVMpJnxtSni6l+vUceSn47UfRhZuqfDW0NMwUMwTEu5WOW6Bx+QsAE+xjXjF76iGx7jabkUPGGnrMhqWkhb2V3OBXcXtsSsebEIsThAkzRShvLWhFsi0Oe0eyz2NYmZrB6k06v5eyR2tQQjbTOXa7JFZbh7hRzImZ3Wa4SjtNhU6eozZCpmcnma387CYkO7OwIQKHt/1qDZsckb4ioqIzzCrC/f31tLhcKva8JDVzhljQZljRVtZ1SzQfwfj6BeTqpC+mc38GiIVwkBP6XUdUmfyn8UDMisQduKTQpenPxphPAMyVJ0AKxuFHjW0jAjux17WNieSEVGSlMdMANzqbzgPZotW0IXfVu24W+MOgc7C8WpfzN0My1PbvDrrDQpwIbcQUr2V9RAhzdeYXM6g5m17pWtm72foLdwcf/6FF0jMm/FhMk7PepAeJ7Ufj6oHahcm2XU6XI5VqIEX727PqSudwEGdWGiDWTVc2WJdgeNlsu495ZPM4D1LWPpWkfsWpXe/I/edsgePhCxKZe6YQQFdTo6aJ6NKjhzfgnlehGjMqFtMj4dI37C784ag69yJMXJKlpzpLmcLWEYSs9qOMMqv0WSErmTasGWqwQpdD5i2pHRauUlCQPM1Z3S6wtZGICMTSVYed96egmIUAmn/myxkSfRvbqn2tjAxCrK8N65srdYn800N+vsXeLnjNgHhMMsAVo3YTrGU/F6F88qGKQmvQ1b+VTtw3+T04xMSNVoSep0NFXXEK3+vCjBHFa8sJlVsajSWMdv/5yhjPKLnFcmGqQpBKW+q5kkntaylQnceWj4a1U4dyekCfp9rd76hLA5c44t4FjNe7tAtPFC48b22reirjXtoaEAlWuj7RUjdtSY8+t2sn1PeSXclguOu4jBRUh5gbQAzOcrqSEmkM9lz/7rF5E7ckJ0y91uilZbQsRaMKSVPcri2apQss8es1UiF3S6M4WAGI2SvzA+sCKmsSnqB39PwhPFkQdFrYuvbZnaihNDrUqwHetU2k8pbDkl4PmDXXopGIyb+2p0X3myMWzVKTlcP1Vjz6QblSh7TmybKGfoa8SLoBHQvbs03dIKbb4k4i5QxZm+Vx5LA+QHqhmkESWNrPVEENWepYQZcCDoDPaVc7fbEvX5UdjKCRZmdaD/p7l9Mzb9iXl8tb5AuLle6qM0wlSBRWoCcDCe3sPL6SMcbXraFrCtKBdfKoFwWFOx2LcWPhw54wABWq1jkEKFXK2O2k0Vfp9aeyXVZTPeVwvREcsZJLGaPUnIl09zRazmsYIrOH5dUIzZSZJWbTxre9HJGWCJOCiz3+MTOx1954cDHnttRtfbEqkoGMPltGzesf+uVp2dmRfTgiHZOCqNlqhL0Bqtd+eB4NcS7XMhZhW5xCu3ydYvW3UcupjYg9exk9yrH62BjTE1C4lp1lpq98BqPe53d9kWcySqSmL5M92bxsGBvaouMxGLIn/+s/LHcEqy+5hBTEkJpNXrloIqMlQJl90h7TWkwQi8tY/ECW64rlncpfV8HrMbJ7Z1cuZota3o4yzHrZws7cFfHmGVD+rFXB36GsYDw4Naoni+GdE/CjZ2o+jxhdGFurB7rU5tCzMilRHFkltDntk5vdCAt5YU/SqrksPbHJ+xheJyv2lJWjZVgLGH/opge1uG+xmHlobVYVz+dM6POymbljlLIORFCqL2OtZHAVYR5aChW2dXeLEYSwVwYj6CdWVo7tCqnV2c8Ke/o5aVyWrirDktdIaKnYzBfY1aeVqE7Tx076WiKyLUQVm1WPagrzx0ZLRmgZQDL2sKN0iyVGUevr/N6oJhpQEJNgbbNQF9jkYlU5cyUG9n0omZ3cqP+qk6SJ9M2dMfHtIGhdBzBrL7WtBmdU+ZOMw03+Oc1anedhysntRWvemZ3naa7ICQj0+1OI97sKVnFhZQaOuWMaTvfRJWHCp2pLl2JHKFzwCTWrJz2Yy/dErH4BDFlTSp1iBlLmNmNmKUg2K649akC0HJKPSaJsLKV2sAZeafnn1fNM9xZ2J/mHpNBTAklM0Tj7pWuhq6E345YKFjZ+vx8ttOka6N9vS1ZTS4LoSPDA3kjVxBIgce1eJEVQVhbXaiqJcxzHX/j14hyZUp/tWqMLJEZzHV8dRtU2WWtHFeT+S2hnaCHZbYNasSAn/tq2Edbm0LXTqukwl02i+u4yVXkKQxRz+gTQUGnhwm53h1YzVYzwlk1fj3+6Uk9EVPDjl440vo1a4Bl3pMVZl3Dvdc0uE4bOf9WGDkdbAehXDLV3OjoQo9kVaCDDueS0E/Vvat+vB4Y5sFbRHCcrCMeOxkAABAASURBVIJPTNywhb8SIsV9OsNNLFlKQcH1XhUKxxWJwu0ZtZfVs34duWW3MGJNVzQ5a50pvcQPlvNgnTRnrQe7tUfO0kpkUgpvIwoekiqqx1eEFgCbG+1jrY8cRFnHIyxYynIUQfRaJLWnh+xAPcXfeytDhPxacgBF5ajQA6RK5RF6jEy7b5hW9pTSFZNSlCkr0tOKHSMAvBlcTC5dUjO/HK8FRYT9wgK7/1GeC2b1uVa1E9xv9b74VcIyIBqECTdc/biWBV5X683mcL12jumKmBnXFkaxNAPH3hNU/yvLQjVNJqfMGC1UGkjl0kFY7m6nQDXKkTOnufQ4KlnOZGjsuktPe//TKUVFRVXo3UhVyQDOzs4ZOqBLjRq5ctjHexlHRM2Dismphty1baPuwnazAYBXRjFjZLnlWu4vz4iq10uolsLV9gPq9RrMHxfnvjIjz8Wk51PFTYhE2kZA70kgzsy059BPBpFkQnXwWW7PSWmPyFVTuv0Z96/QmriapaR9LEFU/2R0HWHZPqZdch4WmFqiMbO20Tc2uA6BMWYbM3K7HpM5UhZrZZJrtVtUuH+NyxAlA+OTqPsdv1+Xj4+Zt/DoIBnzVylZZa+ym1lnuPlIEjslidU+MZ7bUu1hpOSSEfKhuVKMBfouLWxSJ9/8KQEYUthU4ELnhwrcDM8bDVcvJpQxVeLZ+1/IARFPm1J57XUdKkyhU82MfLSKUj7G5KFZ5KfrpIqG0sR9q42rfNOByiYjJb+rM2dmZPjh+/2f3r/NzObUmhz3RIfvb9ERY7aHXtUYTxt1HH9XJ13bvSpkOW6Uph8V6uUZJvPV4l7m77QnmGWUcf16HXdkVmaH3BtGFo2aNc/jxm5CbYQHSt67jtz0wm+KtpZjbHS5xZAyp+ymoZUw1RijruA0e595OeU6kxzXKenNIVOrgb1V6zKr9SptlYvc8dtM0P7VfSjXa6G43/PrOsKtovVzVvi1XKkf6iaVo9xSoVX584BcsrPP5I4fTXOGs7B2Lq00szlLPL6ICKmwOo7C64Hs+mAXkG396k9HplLll2+JGutX6jG667P7CGNFCz1CEZyzGsLPZl+s+ukSZuRGikm5KZrfwrhuq0yvHI75lVamTg/MOMrl631KAzgjQ74hhuliVTESQr/Hzp8Vw/1xTfnWNT/3vTLiPGjLmd7LhC9CvbP+lIHotQm+/ihbjclWZpWvlXuCGWGrUk1jSFHvPi60ZSWC22gFZqNYUbUSpCPvjib4Ewcc5Tq3JjfFvE1yhD8P3VFvlnLHqWJS9KoB3hSdl1/iTLXOwDzVOER8V2gJK8Z98a6uFFaXYIxPHpgCzYNe6gNH1uqSD+Y+pmuTH1uVUp6onageyhuTtU6qlygaA9j7cDIy/CrE/RGPQCGHdCr/KXEVTLY6be2JOP1HhyO3+/C/m56NJ6tjoaBk4FIlYSnhKQdEhAVLiX2lPYVcT8T2PFWcyclbgqk5D0YtEMJaHC0lK7c6caXVywj75r03x8ybFuEtbeTSqyp7JPlEYSpoxHMCx+SeHaaOKaVKCwWVlqANrA6U2ONKcnvXK3cxlzN5AlVeqKf7hWOqhBwJYHLlv36K6m/1DWqGkVCqh7SYpbLm/TnKDyWVGqUEq8yjvsl981G0zJsy7r1mLML1U+whwZgnu3hubvap/bquXrO2uBgG8FEgJyd3QK+2ZWUlnvVLooVad1TOnxL6lbVqd1pFVDqBZEctNTB3yXlUznp29dSot0mMlCR6FYSj6xXTE4BDEl+paHK7LbtFi7hNEbml+iQ8E3/eDi0kDmwhIixxpqWxJTf1I4QS694mto6j1J6Y2XKQBx+slQGlcKqcY2rmNw9H0taSlClkXcMDcTGp1qFaHb/3YfIkZjd3Ey/GkvXUIrEBrG4LqK1KHlpndN+jnbNa49LfpGRitljT2jRnLG4sQtg5ow0N/yXK3i2cq9E7WWe1oBdCWC8i1GJdH9oPtxJuUmhpWoGvOt1WRIW7H5Gfeq/CcmsTLOUH93oaeYEZObZm3GgRLpTotLfD9YJWTmA/MsJ4qFR3ISwdXsVcL9uOyYFe75jrHZW1AsGl91duSsfV6ImNSZeeKs0Yt2dQeYq3XfNV72WsJS7Vh1Ar5TF/ckRMOXq9SSJ66RDX84iE3yyYMG/9lZVBVQr9JDdPHe9/3aD1ALKMb8Du9ytDUOwwprNH57R3pdzdRJeirk5C10thNxXVEDypJvdIUrmoFAt3GzCSt96rlbmaOia3x9Jbiei2baqtLgthGrnd8lRj0Gmw+vBgYTK/YqmKo1Npio6x8G3crLNgliAyQwjJREnFkSoA9w32RJf49T/QL+h7vERzZT0GbWDdKTCzdpf5rUlHQHkC1ZiUal+MG1PU9BVGEOqJDL5yr6KqxxO8tifseQrMmCbeugDuCxNhFYFu9V5HTO3EqgFCOxfc3lZYOwKZ0B1lAMu5HBGzwYQXlK763hZ0zDEal9o7WNY6XbcsHdE7lJOTQt2WXxy6/ttdsG7rqpqo0Uk/K30DOHQXY+FO3HyV5j1jmXbfbecA0xNTnbhXs9qhSWT8vaYtTLE6fu8so+8EnZO6FvH49pUYOxrJEHEKT3wg1rGRS0xYKx20TNe5oW8UapaaOFCEfeUguBtAOCpavTHXcJOBKbKFmx28zJNMVZNhBgVP6JleSXG54tfvN5Ww9TM4qJMEsjRUBwKP4SlnhjtOIG5KKITraij8UFBSBKXY3ze+7diEwkxWnfxMTlThjcroLmeU/X9ErsWNOP7Sd1VxSMlVsZUtgBu/hwxFWJnnmQ5662i1E5Yv3NR2yEzvP+D133IylCP7T7kCxna5up/aXW56Q+5/aq3CqFRM11xLmjFTTc3qesbUqLiZPykFIFcnvdlQUa8/MXMeuTCyK6bVNC5lJzcbmhjZKW18d8jGHQdwExfT3Y62MLzcVXMWZKLVELf3o6sK9OrW7vX3xxQX72VVhKpkAGdlZbdsVru0dL9b+2PeNCm9hE+pfmpIXY6rq5EjpoWcLGfhDWxIT4YIenHd95coX4vbGNyVBdYrNLgwwzyqoUqPhlQWTCTtZmyLAMYSyJ2QmLADCZm+xkSy0eF4GiiLBDLLiFh9jRQeWjWKmY7Gl8ry0SZyxkiQOHq5I+e2OcZ8ZV8ou1G3Fl/Jtx/gyzQdMA+jV135cRGyDIUtsj2jRgSy3YoOs/pF29cjdC8oA+F2hys3OHN7YseOvTEFBAtmku5QAh5zS1NnxijRryEXXPhlIvz9IQI6lsok/8OuHiI8LMDjzhwAb0gzqhbJ+AWlN4DVBrBQ6rmVBVJucoeFtVujAWsVmsnS4sFIeXYjs6uvm7iIpUYoV7m2c5TpKycESLGr80VNSBZxr17QvQtTfY/MI2VYcaH3jA1XS6tJcVVDuPYsMW3cyrFfwfwhC51cdY2vLjPV18pUCJUKf8dsofKVef2vNtKV5W2GNbT4sUe47cIWlqgwhrZt/WZkZNiTt7lOHjMGsNfJMhMhq2FqRcwrHhofjMbcN8rE3E/Pb6l0C2WrcH9/HWbZwCpgR/3n1wg91KRGW7iuSrqaB2qOb/AK6QHwK1RIzNjVgDNfFjOTATpfE2tiFcUyiAIRDTzepENVBv+8DoR5OkWEKfVE2LdzbfhpG1ie13Yuky2FSxtY1TRTtN61Koq+fWoywk8FU6q2zkxVmWLhToYrQcq5LxZ0DWK6nnur2M1qbT/9Rs7F7HFcFbTjv6FHbdSkY+i6OR05MqRUWqF1Uh0PrluNehrnfroYk/PBAyUtrJ1mBWPCalE82GvLG7UDyhfqIrD1n7oltJ0HC17g2vY8w52xaeqN3UsElQE7kKBk87/6Oo+Xdn8TA6NN85gt4nSQjhLk4gC1P/TcFIgkpm+SYI32JITS1o2sC/XU6iJeoU6NGUsiGIjp3bgazNayhgVMXv/m+ICZ/xYD01kauRKWIyFNQzfhUKUw6qhOtw4zmKJABYjP5ANmu9HwdIxM3K1YBhSnYOtQP3n1xklVCDxO3Y2vwAkTkiIJwpoc4Q59qWWrTI18KwPYMZMmzF0kNDyPmCccHTORxpeo+gFyN3SvW7faHNedobpIiU8zE1MF5C2od+Og/MNxqGcaFVotalDbr3OlVcioyWuVYaxsY6EsUi8W3ERF1kaZs1IAegvK6Jeou0TX/SVqOl+mxS7TGoLUPz33tpejOs2c6+FYGk6IqengTlQPWptK7Nlc3o9yFanUhKJ62I51ateczDRWdahKBnBmZnZudqSsvJT6xEgsIrxRY9erqbcL9gpbztGL6tmkMaMkyVon1DtM1a/Kk6GUIimXhNqMhmsVVckNpejr/tea9OjtmSZEQN1iieSCfd4QFDfqjFYZwnZvLBYL950skfC2Q5OJ1//p+HBbl1bmpEyp6kx0nKUfyRJqSvdR2gAX5pCZ5Doi2LtYUfSbnCVyQgj/7aMmCWF4INJ+hvgKGQv0i6k0Xh4YnPZD9+8Paa0sqPoKOQKnxaVfQEJ9yuWQzNIVtEYsYoHloUxnuskY++GCBUqW6b1tzFdLJQ2kLqgNy5pk1Tru69QyHmarHF0VOPc/Bed28oXv1RRhhdjOKdsAls9yZ846Qm+vrB6t9q3ygtUeYN0YHZMimY8R5o9QCcYCbY+ZvsS9Vb7cy1Gmp+V3VHebtDNPJdeKjV0pvQtjWsE2G8ULqcrJdxWbPFQShcnsijGrw2JG51NPUDH3zjhyiJb7CpbaakX2y6rIgm4RFXG1D6BKl35tg9tLq+CtyieYZQAzX0UwjZGZOMjelyqvE3UlbVTuvqv3MlKdoiPXWqo/XxE3iXS0FuBHWzdgZrzzwfos7CJinnWn167yUCB+aLrodW6pOKorjBRMSLDdcMaSqd56YYwQcRdwX9sU9hlhzai0n8jl2CTXA0BWOLIc1OxWx5YcqhV7SfaKQ6hm4nmDuS2wjFQJr1kL9jtCizHZm5k6pZ/Izb/cKmFurFFVH0XEn2WoQlQPlKPTZoGZnSPc1A61i7ju67y2o94B7K1yljO9XNWMKUVOZ5WVXksYxvkORVC/NwKaBVNqf0Zj/jYyOvcCBnB8/x7MNBczucySsoIFK0NQ1ASrbhiuRwTscjF3+dO7hD9TXbVqEdeTWRU1eQ+pK3ziHw/FBpaCzwhtW3fi4ZG+4LPiA9S9pLD7aR0sVwngJo4iKDbkOTUaKZI1+Tg/sH87ZyzYqLWK6Kc0XDeCdSwYpcBDQwf2TzzJxfoRqssOXCQs/SXRQAwLioUUEUgYVZ5c4xXBFybZB/az7NponedeDy5kd+S9DCAwamYrSHqwwqhwftihnNBNTEsQpSy4ApAzafHLFwwJoey9mKlRZH54xiJTSrnaGyNmJowL+fJUtzeXI79yk0xjg+oSkqOWPNi47Lpp5gEwPWHayjujyMRiwf5GqeieyiJ/8bQVrtUQL0dFUOjoCuPJWiG3A9N6lPpNTfgAGhGXAAAQAElEQVRi7hRC7+0zcgclT99wp9sX5OZlZmaxqkPV2gQrEskg07bMVWRdE1fvvKoagNJQZfVT/SWzfC3MKD+ONwAiBy+ixvbwClcp9EK9ppAx3zJQHzIcR60BU7212W1KCBEvo0XQxDUHZqNIW0TagsAO0N/S2YKrLTQzIk6GPYdKeK9yYUrBVYtLrRejyq7fV820Cs2lsipHp9wdHZjVVnkoQaadcr8jdhz9HhSTdTyo2rFQJnjmk+PtMaAwa3H9PPEElLD6SPOZXDRrAWhcBfK5fi8ntDiz5hEJ626VAql467vD8Tc1Q2ZpLFhoSsXSL0ZloXXGzNJQGdMLoTk3G8NwszpahGKm48BDaVbKud3lqGKQypF8b437Yhth9b5M6Kh6J8wrVZSy61cBL7c80Wtag7LOpMFsrTDncpYrC0TRkfMXTd/GGbcyw5SBNsiVzDcJtjQ+dRc3JeBNrNNKnlb75Bpd4WsYcfof88vSr0vcLzs9OhBs4MrUD5aK31WZXBFML6M3K3S5nV67InktlbpMJ6jPqrJTaVWKo3KeCBNtvazQvNtCT7CX75FiSnfgti4gTGsK6AKq+Zs+0X2Wux2+u+TXmwgd4RE1dGi22vI2wFLDPF5QJqu5X8qmeQlLPKjMVOPosui5iPk544sPNSddmV+BJBivOjfSXvjqn3+N/ZWxYGnbZ0TcBXHENT59kic+o7Xh8C2OdFioidC+Ohh4XZHUdngwQOZ4lSCmW268kGV2NfUzXUaEW/NRlPDyq3RQndIiWNWIUKs0Nc6Oh2kjzHSjXlUIbmQdEuFKiWT+YKD3uxzNkRqckAN00txngf7FyFLZt3GupJ4ZP7D7WZ1DLBbsr0O6u9oU1aqQdjP2+yw9Ldk8IvjJTL/MAj2ECJRH+F7m90MiFOtgKnTV0hHkKpeCN8qNQT31yUidYG8SVD9MxERcExB+EPY5zthBGMMVQVTsMqsf4TzcizMeaOFWD2Vy0pwL26JGYokksQsVjNEHEux4rLpmKZqC7SxhQkWiFdcme2VE/a9W8TFTQKGmFhQ/4VLWimicvhqqbAmiGlJfGQsrZpwHXmyZMLEs2Msy07UJS++T2pDsMGKm1wik2s94ZroP047kPh2mw1cplp9aGMhpNWqbbccxfbe/I0+UOupyzkq4vUdPTK0/lnJXb27P/WUd8n+ps+sJpJYSpQpIN36vL3PMhkQhpUCmR8VKqJW+ppmaLtKMlovgN2+5lrCkotk71xOpMgd19riT4OXeYHp4UwoYb0pdzPNQyE0JMjIzyUhjVYcq9hokbym2Z0XIF3PGzAopWXJGCAYUd1sNcriaNy2EXAzsmPnFRr9XoyW6FVn/+ZKTy3UIriYovAaaeJ8qQ0KpYeY2cwsWJztYXK9sn6E2leFkeu9ND3RmVh+runA1/M4S9Fwx75WWal6jiMil9cKbsWF5hczlzB8P9cWqaiuyzUpNlsuLhTH2hFVGtmSPeaPjSv5K1TqYZLVFjn2GsdQdre7JuFYXlWrATHTs7GJxZaTVj6RFKYzRq/I6xkJmkjaiVM1TNwkt9wL+MG4UTP1WTMe8A50ZJZKzUJ8m/M6fBXtv7tuZzOS2FGdxGSX0YI+U30oI+k3JGJSes5Zz+a5gExWhI2M93IpLoD4rh5VKsN1kmZU1Upfw02gVtpTRtmro5b3amVjWITlQLCuquc3KIRYuzoAqYGWmai7Cf5DKI7NAyJQE01mkF8mYyduy/1HhxJTCJYTpkpi2fuWuydxXo+XkZ61wC6XjKh0lvuC1UaaTqhYBKdGoM87kpi5d89IjpmZyq3c+6YYvdQMeczffp3wmG5j6/5jJNi1qrU7WlLn5xx+s1iUrZ6CaFmSahp6NK3SIxs6XNgZnzNjAyiyTvwvul58MyE+q3TRMwMzKPQtu3xY8GSKhTZvCBmZ+RdPloKScfO1WzDrjax+md7MDkUqg9ImocQP5Ew9E1R+qsbovkybOua86MhZUmK2kW32AFibCEuRGh9PyTlf4QHBc/xdcRKHu1PKHCUvuBKS9rkRqWzs5i0Ev17BMb9NGvbzztrzQPawIjiCbCLNEyCutt8AYhcAsmDddsGN/5VZvKW/x9vRy9BRo97R+VZqwDGBbwQ2ITMsOkjmUILIsIMPC1xjDWBaylnlqZNBEgvOE1ZwxFhS4CS+Iq/aHSUBAHghui72ACLevEHb3yILSm/lpFIljwkT4JxEfZ5PBgTpjp0No85fbw9osWa6GO1CRyN8eqm/qOBaoK1JciuSlzC3bVQSMzlDVSlogBwzZDj8+KBGHdbfQ0t6/2HPIxrypv1bcbHXdr7TWXcoNxPT0aT0tWXaYcg8pzs0oH3fHpOX0a+Fd4e4IFfNeDGi93tCayKcT6e1koOdqu+uVvbfEeVsdcD0kZ0+IMdO1vYeqa4STweQ7XBkPCGxZhWSmefNeo+FRkoDbR2Wh2aBS9sBa1HC5tk2+fM7qKLjuJOR+asYAlgJYLSP2/okpxbCKUcUMYKa2lPSWe/uSgSeH6Z8Z03pZJMKtJTRCj2/KX5lnf3miSe+DG2irqmJEjD6bjOT9hN/Z6M2oYyauoajbIsn8Gjpw25a7vCiD6eYdC+4d7Tlr1OQzf5gpMFakRI80IhxurxGy8pFxI1h0bxfTr9X1fTzcSqNsSomzkStRLoPiWvnjXGs2QbnJE3iAA2gdgZmOzL+ba2ku/I5HCDOLjJuIKaedfiRL3AebpBjVS+2BLbRCbzpBrXyqia7mpPDHIbjRDJkaztGmr7Y6Wag6BUy0QF6oTj7O9GVWx+kFH+pwhTC6K5PGrVAT/dQ8Xil5uTKAmZyFKK+PqTXTUjVTNrAqK72Tkx6DkAOwJvOUZ9z7XVUptTaPMb/70aaYcIK1TKVYmFdvqfRrq1EEOk5LQTM3m6pp8spqcYxrQ0PPOfXvMBmifR4eDjfr5L0XkEhVWeg2IJugTAFXMkarpDr3hOwTrfUJ1lP9Qvbu9n5UEVZb3nAreW6X7Y7r6e12lYhTucF8G1In18sguWpKv+7Y9KOqT+be5t/exkt6LE34FUh1ieZxWkb5S1RkVgg5n5mp8WvG7JYi65CwK6jUXW2b0I88twaIlLhXd9qvETe6gil1S6M02RpUF1iFbGCeQBkNhsuS6oXMSDwl/RwtvkIdAbe0wFCMVMEFhBYztUZY2rgtQ+QgmC0nebiO8WCKuNY+rYzT4o9ZtVeVIhPCF/06D+T6Xp0mU1dV1IS/Ab6ucsLvCGQkhWxS2vpVrUUtQTK9mJLD3luAeAqvk7BTEv+r0N2XyUGZpdzvETgPS9d4rC5bT+MUQk70Nl+Zny+BYE3+C7/Oqv43WBImQdxOkAiv9TUtUOix1PBk44RZ4T84+TV2CHa2xAUTCsRr77pz5n6na67R8U2KUfNE6CnBxPvD9qmiLpL/ZsLx4xawDk1jY37Xb8XSLHjmfvOsoMUQ05tQGWWAW1WEJ0yXNRmX6Y5N9kyiAlPWbUVL3ipEIOHxpM5bu3rHX2+aWCzpu4KlquhdrHPajqIdrp0EtbBRtxpXVkSlu5Ruj0jNw2uGfiUUQvXuSu/g3pi9usB93YyIuW8HKiuPlkfV+gjfYya0tPY0c3cnKbJ75U/uu5OciNwzijtK0Y3paVrCb71eABHPA0KqvTthj0WYfMkic7jpzAVTL5aIyU2N/M6DcV9v51KrUtqVFmfcV4yU/I94mx55r6mWjTAmTXJZZ/xdBrwXVUiD19MxzOQvM+ukKlHFDOBIRL4HQve6ur3wsPXo6PVEgT0VPYRXA8vVPtHRmJmsoquLvaesltF+Dyj7LHcnVBblUmXxu8bAdX7HJr+mEDr2lSa0kFwLheOny3sXicOV+NDvd4p621wre1j3fMy8P5nrRqjC1PaGbO/+zzw4usbsnpjrdwD4KrI3fhYzfZHpl+10GJ3VTgKztWTToelsESowI7sFY6lbmi0ElfYbym3rvN2LqSj6OS9s81cwu79jdlcndJT9pGuzT6WY6zwOxNBkhLZ+1TCbn/X6oX5hpYSbhBuNVCWKGVtN+4m4mh4sTP31n2cl09h7TJsbjnHjSNFt2W9W8v1dy+RJrvtjXZfkg7n35yjVluudXo226y+mNVp1zGSMLg+Z19wv6kBum+9cW60yAG4G44208IuemwKUQbu4/YO1Ma/qI/WKW+4/VqXC0jnlFlxcD5c4zJ8Op51oXBeFN9fFC012z2Fdzo+grhheLy30Ll9M+cCZ3KzYk2lyqal8V6/jL2CwsouFnqJ+EZaNY3aZlIMeMWbMHe+I63lVzNZMLDmmKolq2qbOqNEoYfKZB1uLv42W7te1ca6fpWWS3ar9Kuy7KQU7QtjdCo+zWGyBYyOs6srjdHUrlLCyKPyp1H7r0RKShQSLHFzQymTMvBrEhOy99MAb6jAalVeDtShT+Sdst57wu0N5jV7Tq17BIHQbdnQ0bYXIm0YX89b4yvbiVwn9ql21q4onDL2d1QJmuS+CdCpkA2RC7zbE7N6TMV8NDGKCM7KbBapooDSFmxwhbKnF/PFhbikcKd5gJF3EZsWTL2mDir5ItMTJ/tUqxATY0t40MbsNMDW2ZHV/fi9n95hxIcufglFlKREJrCxbnMjvws58zhM9yAqQpcCvFRVs4CLugKe42Mo0S38wDdEPSvBETZn75o0aVmUHskITpjdQSxlLZtLreMVELKC7pJqCHETHTfg5a9nerAIVoIKYWm3PoDQGv3qKnuNiutKY1r7C0dYRDUpmbk10EWaXSqbtXn9ANbBCjWt1R645Er4GohQe+e5Vxoz6x8xoPVOznLWvV2eZ269732OyJkghGTOiXGsB3Im6/mPurbJ1lxq7Kz6VZ0TXPmX9uha5smF0g+b6z+G228h3TmhpIOR6NPcCNbuWq7EVfy9Pd6Ytl4qPKgmlc8jNKchw9t6QrIbOOatSVDEDOMN726c0Xb3OMmq2Y5WlYpbB6jn39rIcLkdSy8v9fXd1S+NaA3biBKIwbUbNsvSkHNWWcu/dusxqWqEDnsxkTYJ8Eg/uQBASNHaY6oIM5hnAkZi2e8vLy8vKXcwUa6bsXr1ttpqRxW0xrTPJjBzoOf9B6RHTiqtHjKmJD8oGFmqxY8gA5n7M5WNCez8zr5H5CddzMgP5qd1/QsRL54TI4TsVhgzB/2KUPGaPJCYqEiaECHZy5kgGoo0cY2paIclnyJx0Z5X7nhITSaVBhd4oozQ7pkW+MCEfQMRwf8p5wAxWdVBKe2vsQ2vMvnLmaSIxtZ2SEv3+w+V9esWIVLWNDcx0VmirVavW8kEhA9gMn3pKprxXTjaSSqb61GnwdqTw3nEgF/waS0rWGivHA1MYtOEfyiK/5GQn4a5niKh1elZnJOxhCFVW0kZ3tLihoL1ZJdzhwhoIEMa0UwLE60pjala1d8ZRG/l6EVZbfOg1GCIa9WpOwCCUKjGTJcB0FReqazM1WealAe0AIwAAEABJREFUUIPLTLXAmOzopNHP7VzyOjyTg2q0mPv2FvNVPsb0XCejmgiljKjKKs0qE7DfHHRAZs6uCLoK1eQC0xq5snhUTIxgYlrL8D21uqVb0WR+y9ftPawuHTLeAx3mhCR84BIdHVuAixR+Qi/9+tAyZwO32+eU9iQrt5zUIZguCWFenWlPBhI6smqRl1dMaotDXbt1vfWlq/Afbg09e4FG5UM861c6VYSjpaqu/0qW692eyR/ithPuWN2r7qe86VCuOhXJUFu0WFWIm7zR57lU6nmM6RdbmhCV5zhsktp9jk6bCOZzqExNTRJ+txEwypX4dpxkj2C+uLNkrHVgk7CGCBGoSCKxzeMfhq8SuqfzxLm0gYVcU+2VcqiKmqT5kfHlYYUQ1mZjcZEUfoJUq/SG1Pxu3r9CZTdLlXCm72IHYf2q8PwDIQUgT5waPx4mbwWzvqlAzCicrq5crrRk5lpj/Ya78fjaEjpOUFVYfEQDN4qYbwDLChkTzOGp7uJx4y+hi3kFzOD4k1wrwAkvEJqYteerf6XKLvfQ7f7VGl65Yk/YF0sR5oTboOpGVH1SpqYwo/l6uQ8zfaYSHkJthMOZ3mWQKzNY19CYfuGSP9DPzcZScv9JrSZJm9K9R+rMplPSUZK6kApGyJ1n3Z2mRYwUe/qMmh2/mO5uY0ItmjIxY0oT4HpPaaalpap9zOpwpWKis0i/lESPGjI1Y1Qlxlu6pUvcdCNeZxyRldkdgOdVzQFc1Qxgf3WdbC1R39Upq7XyE8iaEnH0Nlncbnty1rHZH5pztZFUxLMIBddv+OXCaH8ipl2pUst0f4m5KwMslYUF5QUP2rGhn5gWSfFbWxnJYnd7IZFhh0lhxJwo/cmXG5dLysrKPANYZpSeVOsY5SdgD2iB7Th6GID7/l899c1/TYee8cGY0kE905f719iTD00WcR2eEkj+pgi2yab0efkYFkizbsU81FeGUNll6UzqyAhV/1JfztrPsWKjS8Lv5AIP0l2j9RNXLkW7m+OhrtXX4iwVSu965QSUe6vTVSaYE86V+JjzYCx5SLlmcZVNbqpkjSzIZiF812QoRMb9STZyIWLoIiN9rS/Wg6WElRN3Y/L1olZB6eXHQm9hp6xK6X5UDklVAoE/PZolVKrdrRuY3C3A29XQj4RqXlpueI1dD3753arWGlUfoCJp+gzf7eMZwCziML3NnOpjvA3emLJ13Qxm3juP5LvJ1fCZTLF0TBujQNZhpgxglV26K7Mql65DQnXnSvH3ds8N6ENMViplaFnVQElUb/9gbjn8uDDzs4Vfu91/HaMtWEUTC3jFpDjRKojUb7WPVwSNXvPJdStT+WsLDt0tc6syhdq/MO5881090P/UzcBqEH5QIWESaCnxYoabszzuCpU9NskUWSvK3JKBTMsxeUEorKDizcLtS/g/a2tV1cqYqcNSn9NwP7vlE5mVYzK3hAnY0ld1zyjkXDzyUnAdgFDDPKaScbWNt2dzM7NiWwbkTcSSLyeMxlwRGJUap50ywSybVEsLKbWCYwZ+Kfj9bDzhqxNuVKt1AWZWLeoqa9+Y0PfLw7afsPv0+G5dxJu+3N/VigWuT9jxqdIKH6luWss23T2ZC8K1KxgfpcPEZW4ShCkGETeFTZ83vwstXfy48nAXKxjzR9cqFAPhNyShPoTVMIR+tHWJR6I0BtqBZYebT23CWw2PByWOCT14Ii5b/JFWxq2NHhhLmk6rtw7tWWXqWPBCoSLHg7ekroQ8QdMS9q9xalUyQceDYcpr/OdaDUQE7hX+kAFXvaV6jpYxfgwcqxcNPMtTUY1ixuRGuL4jhslhZaUMKP1RqB0WVHAxqeRKVwV1+BkiwpivfegBfz2VT3qlXC+uVLwdGQUmdPJ0NQmuBBfcyhEul0Pp9xLF1AQOFYSefsOY3OpAOZ90DRSOHKlWItnkkX6eTqmub0ypXEzHjXsOM88jHPMm9wjdFTMvp6VsdPciFqyiAuKHRhUzgOXOxtHyqHJ1kpEX9V2dqif3LQq7R9K1OBajW9wOV08HdfeWdhfRRjIzM0WGF4LXTbuuqJj+L2ZeHawbXox7r0QxHR6P71zjRAnncbOyKc7yRd42dmdpv/cooUyhCJfxiLsbm/YAy1nQ5mL/uWpMICL/1R5vfQXTo1dyj3lHuyJ5grotw7YH66QU8LJHzViVIWtVVpv6ahkYS4FObmDdi+lbRWAWNI/POh0XVoGlLoFbma9qcP+kTGLQRLZSLHzRr8f1fB1bHyh/pf/2DGO4cOXydfzXLJt0BToBtUOYb0ybf+w8CCvjITVf9eJqJSr37SCTY96nt2ZcVzi16l6JTc89KbPf3Udabn/gtwrBhJ8z3MRS99Tc0h2Y7ugs2RzOVSXNtSrPhNE+zN7MXKjNzQMWn8pGXfWlMGeqMmvzTQ8GC5m8mDvLiHGrM1Y57Lvlzae0f6Vfl3O1Rpj573mJ+amwt9T21SOrtLx/IsqT5ciYmK5N+LXIsn79bVlNf6e7YCsrHfNqIh1hJne342qEWPaNxh7SVcF7kDA1mAeMUVOmXswcXU30cKK6wQlKYG/40GEi5kdbxllYsyfsthfUeKxiY8y2CYx2Y40SyZqnvopARieDV+CisKyx3yCfSqJZzSqooTJfMpt7A5qb1er8Ju1bCzobpDDUvYnKLM8HIF8WFFOODCHX6jOdFC7M8GUwcapk9H/CNxuYboFCz7mTPia/tzIVgPllrI641ywcL9ust/O6Aca0KS3bI2fM1xKVpi5n2SkxqDof+W4z3VLVrACzJZXWzhN2mlY4zC4UYbm2OFceZm1ry53nmLIgTGuIM3RZHKENMlVuBi/VVd7q2OIHH5VEEuHaKuKPuPWvquDxoueII9Nk8pBZ+aNz2BwLZvUZTI3qCSXo4u2qRBlrPZcZkWtlgd1YTGuyOxpzP9MZnyBsZjo23RpV/P3+SCVBNgoeaPKqvfi3228k0xEN1CTdMdvZGI8tklmwYqszjtzM2Fc3lQZhQuAJVvaKoPdeSBnCEypa4a/xoaVGp9P/c7xtFkOKs98HeFZlTG1N56/wMJc6lkS19n63pZvWH7jvUuVcNQ73reNKrMe0CsO1F92Vl3RxhitZMzJERranzsTs8Rkz78TsmOxFQva2KoPUllnM0jCYOWPEpZkS6OhZmzJEozPIi2S37W2O4r0Q2JuAw7gSWt4r2dUbHZRE0S4Fecy01GR+bB2/upBW4tVfI551zWem3plyj/kTy6sSVW0X6HK3rrv2Xbnt7SyPqqWvch8YbR9wblsLsnK5BrC7gt01pCPu/HWqyxmZHvIR7ilvnZxgevdkOdU6amaTqdlensrNjaEYPwws4hYnx68UMqqDxO4llUmf4N0JIeiScibkK7mi0gwWQQNYW7vGOc5NROQV2kJQ0wztuWOMhbthI+uU2i/VFma0fjMWppPu+YzU4i4hAh1xXEp0NrCYPc1GNmBhdwnGAIjHjZA3VURUuKe3FEzBgl2jUEm146lEnbDUvIB2wYWeZJOwB9fjhGbFry4MsxgloP1YvTszJohKfzh9XJ0ToTD8ft933+vuwe8WrHJVc42l0qnvlr5ZITVnqSJ62zgIo8ko7U7wwKa8qrNlTL20RH5wrmcEsNBAqImxsDLYVx4DS62txsKscXrlEpXh+5sbq1/UK19ilqrt2mjuVf6mFky1CzVCIWclye0QVfart6DJfPK8rnI9pKzk1riAd2B7+4yJpxQ+pfTqdwx4kRPMKIXq1apGt1GaCfdVN6EVOFmUXn5zR20i7jA9ds24eS0w86dvML9nVcF5z1XD6VoO+J9cl6RaeCwcXydUo5BmBglXFno0Jky1ZKGc8WunXZFDB2b82zQG3RkzHYRUWoTfmk3Ns9tJSL2KO5Xoa+CMJaVZYuPXbvgB7dAW4FxZa47VEoOBCFsahSWTDIIJq1qY6Sdy2N+RJahrmdF9fJXIqJZa8JrMdJuvnvMkjHYmG5jS+pQRbLR8NZtfykcth4xoEXJ7N/d2bgYxvadpRda078A+cJ4wkdavVsSFfIQI5ZasbkyvubXyXuW2+c4t+5sFC0WEbGBlQobeDcNZoq5HWMaDsOJvp8904uZABResRwlC96MdV+FkqzXlG7jbvkUPeYgKd4wHg1UT7ZOBvLVzxao2zC8lux+weoBUjxVajJl4qLt9qeDXa0t+BDJKTWQKJUDEF4UlXoT/nevuzypinWKr91K9VECjUPKVmwHGBE4CHnIIWz9za4jBrrrC303FV+aMoA+Vi30mrgk4LGURBAWTH0zyO3xxpzJPN179xPi06jWnGa6/McrUILHSPk2nL9MY8IPFC3NpPHJf7+Ja5fJ0C9nLWCLbqFvebszc3S2KulHPUZQhggXLGDNajWVKcr9qKJtCxOzl2VrnMrFg/oYXysDQqWKqv+O+t9ebtaqGz2NaS+TMGlnQWa6MZK4v0j0/58YosKd/OrLzjpm1NJ4Z5F6vDHsVH2EchKlb6g+PqjYF2uvYIiJCChd9xhzPMx9R9UZOslKt0eq3tRCVXbd0k3rTIuUrSX1vjao2TNYUf1q9JZ6F1XEGmqhqT/YBs0WPhblMxKlEVhfpd6V2nyriqpjjvfpT1k8VGbnbpvVuBnfczLP25ap1HQE9LsWU8NUL9vWwkIybZQNLSeC4Mz2NoSXdgDpmeuxLX6uVYWYNEKhhJseWUCFxr0TBgdoTj+tvtTQUIuFyBK1oaDXI7oYsOS6CURHhXlAow9PuR+0O1bjPhP4npl5EriQ/5757kvvGsN85ychqQ9Fo+twyQkyKghnArB46VE39zjemtECupguLuMtUOMIKUM3gURI65u11Jk3ReANY7mprrcTlcuGppTHoCDDT4QWUA5PtZsmoWvBivNP6bWW+kmM3EL874lxPblAmrRIJwldXZIVxVJdsVuNwodfyOF70hV5u4yua8lo5VqBaqM4NJvRmXZa2J8x+tSrC8kqtz6v/ZfXxa7cIFLRplKZiWpVPyAyTioCj9vdQBrBcuCrNHjUArHRiHZJQnSrXBrUydlUB/j9776LdSJJjCQJORfb07P7/t25XBh1LA+69gLlTCmVV13TGOeOhoCjS3Z54XMBgMDYJKMWtvTwiIcGsXKiSiKtF+33cixbNGsR4bTYqnxla6kbWUHzuRu5oOMYRXOFqDVgtBuRSw3g3n9mvS13NnttdJSPvuJnfvXutNxUUQ1k0Q3ApPkJYcHt2tqa+IMVKUWH+14nf2Xs3pU+BsHkw0ufgEbXtQ2rtGTGot8kE0w1Jxq2FWAExegA1QibmxjKqywmjju3C/qLpgovAAveH1lTQqVQ+dMiAlpxxXm9Vcw/07RoT+k6P/OqKi06/1XJRbUPIvnEEzlbdVR4L3Dsz7CNA3RGNPlwe/5brM8W980GLYfuyMIuNa+qN3xADRUHMyuyqo2MoDJvTUlJ9lhrbL1UdOzOGuoVKQ+zTx4oAABAASURBVMbtbPXGRNH3tETzLcenynsjOmxakOPyabUGY8EvMuyT6z5l0Wbw+R1qGSXEZ1+R9Wx0InLVt0DracgqcXRpQksr8njtVIzyYMuhdO49zCaLU6hGxtC50kg43YDCZlaK3k4BPKP6g/hARNiCBB8vc/w8239XM1uI1r3hba+W5Or2q3PrqfIZk2rMxmQFumwKwpQdL5dGNpz5QqGIT4jo9XU6VvHD23OB+PSzdlwdSEgtwcj18NIPtf6cxn6urb3ePMk8DytEjy2ny/b46Xkg1de8/Le7fjMD+I8//uP1+jJhPx4fL4fDx+PPtZj780flPT61GTgEp7c/8Ul6bZQm65ErwK914D/W64+PlSDKtd38NIQwZMjgETzw5awtwGHcanxcVnfN7PJ6HMdFE0tV6/JhFdcN55fHCxuA0JFr0aGnBtJBZf5gWAZMDmjEhgvwUvmw3ErwnQWgxdaBHRKWaT1tHom6MmvluWfVMsDwuRuw4GwdvUYJ5Lj78yvwffzFsOZ9bAHZBVjjS24dGs7uavGmWe2mGucnOJ2K8Ku2vQalmWlOZPZiSKUbbaMsK1LBu0uD33ZF2jwIcjUudl0hq08Ny7z2TqgF7RtTUeSxUd2GArOg8KHL1SUoEFiItHKtjcNsXUZcaHBsA04XqrgNRdBOm1u0xqzFOtfvaUNQUAsY0zV7Bmg9Dm/KrUYsrUasgLrD9AOsE8pYwfyK3DkJk5iJxJCZq5x9YbJlzIeFNkkMQ0t857Rga3GRqjSDoYof4+424vGAGNv2uATxh3k3hW4YIxO1wFXTqHKrcoWFx/zB2eQcHNM4eyMUw8JA+Yc07mr39hvvBkgYbJM/USH75/kl6//6mrLd7nBczRHYv60Nzr7ok1nDFDVvWLuZHydbYvvbcDymLliUcGbwHpFiOjHl7j+wEeaZeR37QA9qS/xvYaTmuecxQ44dHm7MgLXJEzzZ/0jVassosrXCNtHRFoVCl7f2wNy3XN3gqDtbKYXr49IoxlbFdl0mKD6H+J9deuRusdxV//zKd0PIviS20Ea+YVqMZiJze4VmkQh+0YfLQP3rF8fQ+rUtxU2RbU/dSnhfOCT7KH17OoZY+4StfG/ArSrf1mCv+gWv1NSUgiH44MOzcSGGIe5ywOl1FjaL8V6KJt6RhACSHvtimlXmpXdTcurOS0VfXP757uW45bt5cWXuPTrUu/O8BtMCLj7W2UCZRT71nHIY+J03bzpifOCMbyS1bLoAfT6OSR3OfYGZ7OPhjw9TPqwCD9oRQlIu65UVDS+xGiEp1iICKNDdL3NAaSnCgT7OJqzh0akYmwotpXd4M9dZtkzFdTuP9u2pFoNELieaN72defRxBs+6MczzpVrsgVDwkWfxt7l+MwP4P8oAxpbf8/njDx2lW6/ashvRG3iZwhm+ommIHpn7qjYBv2zgPFH3oyXR8pec4Jh0mbj8RWedPbgyx9KUPi7eZdsZ3t/5oXXd9f2UfWZ3LxqrWEQZmUbEJ9coynnhm/wNG9JhZXDnJE2iXq+rDxZqWq9+gNHYdumw9U26tDyT270efw3i4+PH65XWL+3z2UGsxI1PwibjvGei+BdtYMArI0oIbiGMmXCidSj1TeyNoHKx3eilNm07oO+pLZAZRp8OiseBRDDmQvk+bJuhuXz2Hjd3FizaYPqzDJLr8N3I6SLzOTo+/7Bf4KNCHDGN/rgawBG7JgofGjei3bRBWwjZ6c42C42eAh8RGhe13/L71ms0o+oX6Cvlh9bXKi5y+TBpZxpc69S117+U8QhVx5YHkGIWUqvp9gaURlN22bo0ejOXwGnDAIYdaEily855r9rFBT2b8DHHHuvQVkN1lJ1TwuvA8q95I2tj77GAzT33NbWTGNx7AXXImDm1beVspBWaLJ9BExHa8jk2PIOUSu4idJeybLVgZRmrDNw3FjTr9a1Jy9r9gXFYorv2v+z78P6aPPEbQLx8Ze9keLyzge0dKBytihAFvbOXClWn7/enrQg96JYl8Q/IihfdP+SEqWJhAMPNb5m9/PxzlTQmJtonlWTScXP1q4oxHLaFY72iM9gh/MHbyJFtXR+otOPQKo83cBsXh/HUANKddbQMOBDVIAHj9l0DeLTqel2W8wZLv7n8XbPff3ep5ROhbbaJ9Bibqm73+xuRDVagzwAk4/ZuG9InRPj+8q9TNL3pSL3fP6EAu2icAQzCfllJgZe+VeaE9YxtOnr7cFg5g7zjmv7RO/diM5JF2LSxYXyAhINtyPyCkdSLJ7bnBgao60xjYi58GEm0BYghi529mzg+AtXQDYQt9unk+gCrF1Fm9sZI/qKcr8ljPq6loOz7eXkWzJ5KwA4YwN4wqQfHNqnL+VXfUVrj8IiR1AffDtO4XbWRCS7Xmbz+8WP9/Pgjfp75E90OHbkCLrOVO0pn0FSpagZuwXNOXc9bB2BuAdd/+qCYjGqu44mRo5Kir7YG24hVzrWsM2OsDshpSUeO96Cc4SoPGMDna8nR0l2ei1y5QpxS/9XvWn+03+r67UKgc0U+j6Y6MqdqmhPL9H08zvNy5sPJDecxRQlNVgTZp+W6jOD6tZYvYSsBP1YK2dd8J0lYyTY/YUW4z8j5m1k7CeJi/X6hb3Yphtcpm+Yjy4ZdmU6qzUPhj63JEO25v9Fucl08RcsArDZvA0Ah6/UerlxWWeD0WMOxnAj5A9UrBWxj9xS+Gtav/GEhJXQRr1wV6nb75Z77GDoLqrJRV8ypuTzC+9iMNjPwTQyBYFflR4dgt599jQ2MGX1qKfRNGyeq+mEkErCYfJZh70QMp2tb2N1uGE+5MRK72+77o5SM3f83V6OyUY/7RGtmG1ZMbTxXgKtu5wowtpo8dbDK4jESWEbyUHdzZl2u1ZdvWCyO/9fRCJGAaa/EwDRYQPBmooM7Bl5u3/VzwJga86oqLtNSDVFkeNDAO5koHc/RBSMtmjY/OU032M6SGkI+J2vbZHJq4XZySvT0vgXLMTpQL+4EmBASGH6f46p30usm9w2e1ujXUPBoKEhsLoZnuyqTcHntcAoF9iKDSGrkrWarebtEiHoxgF4gsRcQKa5TDxokUNgwntnDJrWrVCSeFjf5LjIjJEM+xYvj8zecvWuud4x4Gv1FXN490hGSRmlJjtG+o0cnp7PIx84xKGAcSspRMfyEtnnl8EsUTe7rCHOXTUFpMMdEuF97yqRj+FiYhJuZVoA1pTYC0DGT9Rb67KIu50R8Itlu15QkA8PGvtf3+9fWht2G2Uvz/U1r9tsNFOlqpm3t396rsNjK+AxgSIBMw+ku7+yTPn4yRDeSLkFxYRMXG12BUOxuo6mMfFPZ1u8/YyKVcG1p7G0xs32T6pQc47arhQlC7U25l28vgsWRnWEjDNuHdEJEZFf5RMLoNlT07mCHS/lmF7dFfHabvRVb37gu5DGk3LrOkdcKomDAT36aeNyJKiKmsALPkmbOaRIfZ0XilQYyBT/zjKEdXlD5HZwlNyyBYVEDLvsyPIxkcZlp6pRaVQ1jy6nCzbFppIYA3iznA96iLTbo3NPAplEReZfDpDDENogtqyVeRFYd98mJwXRh2jadhu+DmXTzrKYj7aPzU/z5971+MwM43cw27QOaecuQyO0ETLKmyeOTVqTgHbLsfWjS3I/qemSRwbGpfCPiDgGM/bo1uAlCemXe7Dc33l3cxFgrs7uievXg40eMQ859ak5RMENLI4RSQNWIjT4qMvlwrJJWOFstHwmboNRKMFup6DLb6NqIHes81I9yMJiT28j7MSBRMRO6QGQT0W7OfK57VMg+9mHZO3oBWtFAqj7kat3NAB6DGR34cZlFlTyEjmDhwOAyO9hAydaX0H15aQa8S2G3dFeaeTnUoz0++8g3Kcpz/ar767qZ/bTZQdus6/xYpbGQK5QZGzmkzCWWjVvvLIFzTWaorTjaCHoppsPFTeIeqo7bn40cdTJHhFaAFdDjOgfeeRBPY2RjiSy7X0d10VQvNhM2MK2YVX2ZMz2N38dHvig1uhQQlNQkEtVUirEOSk29WGZtpauwQ+Sfpx6f2Bh51s0HA5M4R1CGw4tUPUHQkdKlq+XyyrGpEa1cAazmDHs0DmsGUUWiQi0aEn5FRI+hKB8Pc+xPG5Y6U3gyeXfhiBdZK514VM6PWAFvx1p7t8pdYBVKET+NVOhU+gbIWFzsxs3aWBZzf9YO0nRlnufP4ao3gZpmiDbN8JGzLvEDc4LMsexnL5dfw1O3FDWTN4ni+MdtkMeFvN00WteQZ/K1fJ9wrLqM9QTSURXzjHTi8pMI5DGpBkz4OWsEbqM81RSTeeug79MVh4cSHNkCrLRqQMFgfZ6byfTMELHBtUtCOZ/jRbFob8Zc0njXrciUKSIdOO/tFdbfxdu3/Hvq9E+KujVymDEmkLJ9ucGGZM+p8vrtrXRpJcjdHVUMnXEj3NmR0Re/N14kahyDS4Pn+/1mNXHXQZMr9mG88EW3wcI2nXUBbF9c4EQ9+GLn4x3z7k3bW0ViHnqWvb7OuKP1vs2btQ7fKj0Of5/HRAPN93GLC/B5ftUQYr+84p3dOwGqb6kKPn1278sbqpikFTTj4xYjY9UHoCivRQYHxZB7UrOdkH8gdYqnTuBUUXhrG5oik+uIwQNLU49Hh2G7bUCusoMs6fp8Cbefr8Y9/zyf/3i+XhUlE5MCTLh6roqRE/N3HWPhhEpFR+UDyrhLB9JQO1TE0MoVIHd2yk1oQu8b6+BhpwaoKWhrHpmu1LZ2AKz3z5SWtUTz6sjHj4/c3khsVKsDa9lwJRP+Ef83Cda/++owOgQJLJv3KLOmTs1aX6/Q3bxEyRIFa/Ifj8dlzbZ+ANKQ7dsa1hURDsy4XW/k9VthbbuEspvi+ezym0rYROjLJfP48fLJ+MTiAsiAaQXGuRjezZYsOhhOJjeb1y56M/nezLrBeGwkki1uerhSyzvxaFbEmuvzw4Z+BaRqdJKpenanVLCQfdj9NiwN8g8ksaP1m/Wf0WtRDmOqJ9aBnkulubswSdjV9LWLgpOQ0ZCKsl5mLk7LtJ6iJI6nFocrPsV7/PE4JeARPGTHJmFUF92mdWpuO9pwyMaR0HA23GyDJhGNp1z2Ug2CSMwq2BVf7nSsjbpC5njEG9Kn2oYr0mdEEwKTKtM6CmToBOI2SX9jNKNxbAPyM7T/YYsn431GTJ+0zkxk7hUhmsL9+KCofzjOEDpCozRUeOtsrWxmovryEq++LJ6IR6J+W0eOY/Yiz4RZCA4B0c+oNc8RlQR+jA10prs5mqzQdCuxVg0Gf1lPb7MHxWIQRzrXKKbQmordx85Rw1RVqmrcMzLg5bPYZcHR7uHvyOcUS3UQ7BOR4QV0VtBZUizdHxUqvmJ9o5kNNrDDkZ0CBsmr8wiQwCGK7srJVTtmxmEbZMBiJXOZqJyjrsDIPqTUJ2WEUWbGDeGSgXCbaXjusn+Q5+Sgqx6RCHdorJ7afeUcAAAQAElEQVTciJrFpKqj/sfhG99XJWXsniNEqrTGSVhvsxPdZlZkOgCAbpiyfrMQ7Beo3h41jacf3Kcpl9ZIoDG5Cb3CeklhXLfRApA1cZxdGmsth/cvL4JxE+tvLxF/hNTAp3Zw3AK1ruWokVB8vZ75zjz0YTUYCXVWh57exiA4XFsDSSNUnS5D2P85ZGJjPNX+S2mjqFY0EU3DX1wbI70zofcC9rGzry+/z3xQve71zjcXds0XtzZ/B9Xd2uBQGmMGZhtECWYTuJq9w5bi1qD1uA+1+ETReqovJAninb0SN+watH/ujXnTqr07F0Ly2zVZJsa1leaahh7YS6d0uCN67jzJKDVxHpX6rFehqtLnqSrXz0rtlFdJI2t8BcWwSl4mdJ44+jKA/3z+/PPcxIFPExP5MzEvzpUemyuy6DZfcuWACPCg5ivVC9MYa8Mlwo2nCOLAX8x4FkpQnkChO4JSCaCQE0jnWUTvImFmFnWuIFGWVcdhrKHL8Xt9+/BfCNK/5/XbrQDXKxliuW1ek5T/H1JRl4iUKwceW8yyTkZRYjmGU6iOvroNbE/c319VbLwnjF9ql7jJ4s/uqzBouxnAWmMBSGrjSf3RRn3mibU+LlUHieWfyoN1UP54AFducI8VGO83u2hu9zmoNjx2zODlb/XXZyM5YUR9kJXMGRCm6u2vAV9XTEtmXvVV+gZdZapOSjDWGI0o1DP+4DSaOA+TMQDPtVodtfOxQV2Rocm+DQg+mjtQHmaUrQnoiRjt/SWNOtDwF4KLTbENrLQY7ikwBYK1CiPe6jp9P6ZeQ1RlOKobVGRYDtSqqV+gQd18bMwJNF4rgKedGuUTJnttfPdeNiQfHJip0j9SDj3sT4+RRQtiAu4VIywJQqmw6SshvUwNDwsmFHvapHqevesMphcLI2dTYp0YTMuhKOYvS6gQV49MDY4XiSRNrjE4eiNU+aFFm8lb2fRjzCt3B83VmnaFaNrH8mBFmDsJap3ZcDj44JFqfxmkdpokeGbrt46PO3P7UuVBU/myXVcBoAxQEqQ62gQJX55yJFmJmQRAmDQYFHOGuLiKOEl960rLPwh0UcowO2xeYWafiq7r3xHX7z5lZ3QDs2YtR73CxJGgYZ29m4EZLmRjIjkdp2ng2BCiI29IkEezarW0ttGl88aT45K1QI6EjjX4Ubsf0MF8toLbTSeN7zI4rWUSWWgGURzlq41J8U2uqZybbI/dyvxc/OEGifnx4JspiT06Ny4xuu8K9y3+K95Zdr7/qbo1FIO62gBwtejyLKplwrTwHsA7UrJ73e8uEW3so3QZeR8+oGko8WXvvPe0ztvvvACx2sJ2zphxhiGtrZU4ZKHKOSGML5PSjX9Te7VdejpUo3SChL2csKcYzewz5essBuMQ0aeBaCCs1UgLiqZAFjQqgMSLbwijS8nfvzluMeq+W+8+zN23pfUoeMOVEuNe22Qh2OtBTuylgPReZg6bgykxzgacJb1A16fUwIngaHGEEdXNRkHd1GlucsxBTUjimXRqSTdQKGVtK9MqMZpt9XyzpBM19/cRtHSCDMCUpNFllJYnkyslRhJsZ8fK45NYYwypEvvMEHy5KBRr7lWdfy0n/o7X73YO8IR6LSS3cW/BN+WR0Bye0Q9YBTjTbCieUBXjEVI0mD3mu/nGvoNg2I1ffvXFGyvkYc/tSXU44OYvJCE447Wb0YeDSofQMltsSo1HfRJEkD1uJgRG5VPllpDdAvw2AWJ2VYw+mD8itt/1h8UlBPpyTRihDw6ky4khbuwmeGU6zfRANYIVsHpwe5qEmQ31CXxfVghNqtlSSL71caWJgaV6BSU2QY36vcy38rwi1ObvI2M0IjDk6l8vtWJn4SbEk9MKK0TYxoqlN9okdnBm5fGvGgu8b6gvRM94vm5YeyAzvBhzslJNVp70WnBtnU1V51hENKqMgKo8GdtpwczXHtIQ8mLs2l1DVH62gsQuR+1qjTHm5KQ5W6WuxjGfRJB4CAEw3hGhXdIVsmKVBCj7eeYYPw8nIA4BwAzFDnUGNjD5NyIYatG6m29e+n6tThNskIjdvX0dFDsnKsP6ImNivcyatRy+YndWaMTzeHnV/cyT1Z44ZiHx4uph/Pnni/telvDjwMkTj3RHSf5Y87vRuhMXEUSEgPQwJxpjFnyYsDD8pJKngpEhx543CzQkJVU1ChnfNlHYl9ddV8QNjncvUtqU1RliC6c4tp7JsxZiBZouuTEmVpegFd5RGFAPHPXKccKteOSrwzGzpexW8fPIEK/bT0ViqbvIxpFidxd4PjtO76LLUtrv+UqxoibK8V/e1u9jC7fVh1XdpagpEEQw9/LHg9v3F1Ph+mwRWGu8fo5/+/6JYdvkXrm9u345dF9c7nNSRnt/Nc6fN+fTK+TNix6FgSeGpu8npmBrQODYUtCei4i4OwFiVCT549jjgKfOYf2aaQEC+0SLdWJrzDY4Q931YL4dUtz/GTgcXXV/s7Xrfl3m6Ptk0Pr0nR6833n/U8mf3xUi8YuATSh2jvGULSqy/Gtp7L3sHH+m8HrJG/manbZthgmfqXY5icJ1Kg5zDSXyOH58PP54vdIYd4EXs8G3Z8RQjzYEre18TSHgmvdL0r5JAEGz+YC7UUYOfkdRcg8zn1+RAseJkl/K9CxnL+ObDtjiPjHWYCJQ7RpIS7ywMuWeWEf4q8z7d7h+yxVgo2q+hDEXIUmi2EXBt7hp1A1C2mSDC2E7AYDZJn2o/OOGImZ1deenb0ZHPhdhZpPuLzcb2KZyBknLvSFDhMdylOgHejRfpYnbVm6inlx1e6Rq6O2pWCAiJ5Qsp3FWS2hBzXFtiVOO2ZWl+86KaL/E+hLT/RI7huCAZ+Bxln/uHrd5f8lS6ry7hs6tOCuzF/MGyLM7pG81Vqu7vS5UUs438AwVuw/LIGz12IzwGfm9Udq3R+Pfe4nZdAgB6ODkkdQ91ppq5o/CuIkAZPcWkdWexSKXY3zFq5kpB6MCbw99qRCOvO1gyv9HMavWXFFQcb8bsjujRcg0CdJOYsqu1tHZFwO4MdGB3aoaoQoW9izwZAAohuvUCUC97bmIoZSx8Hm0Zm0VmOOdBeRge5Zfw/Q0dOS1zhqit2yn70SMcxTMtLlEBnD1oW72ykviz3yXXTi4Z9MgLh30ioVF4BHjzi4ExELaVtHrZJ7Hy15/mbgvCfZcC8MvCKK8/c8VOf4zH6o9Wn+sE+s+HlWGQAWHE7o6sNBj3YX6hYlG+NaIMD97SGWnnJs+56C3iNWx6oiAjAY2478aNYqJqwz//LrI+bBNL8zbMK2FeqKfjukjOCcloIX7IXvwW1jrGXqGisMwgU3GWNYy7oQ7nz8zkv1J23Rivtzk/cRJDa8vnu5twspZY/GStwJ/AU/ZFCc2vFVXJbIjhF9dN4Ef71RA0U3PpUDE58/GNSgJQvAyiXab2Rgy87PCd1k4Pr622yZkJ5PaBevY3hj7LnH+tWvIyK+vv1w17BSqfqeVv+3unTejOS1dYzeArccBtOe3SF2WCtFic3OKNdywzfo95yLw1EGtjDAEfreC9pXJN+jq/dyNDoMbL/TTN346NSp58NqbB78o4bOb/V2c3ryZ6NTgh3Nsr6NEsdJ/GN+xxUytfqwQz7TxFtw4YACfMz4rxd4zmhpQWGXxSDWNyQTnv37/r//4z//8z//3P/7jcYQkHQeJvpcSsIZYvqaL2X0bseVRk2NzsN/nrq9xq6CeA/voJjmte06MjkF+1RzynN8MZy7rt36igmJFQZqV8ZvadqlSJQc73ZA55dfT//e7fjsDuGbVsVrZyXcaJDu98hGtBIqbQHZJnBkYvzbEA+CZC8AIB8XcEReKV7SJb2JYVzpV6CILNu21p5K/CDV9fnnvm/m960uI/f5aT5q6H+ifF96FaK51Dpgyw/o9BvixFf24aJs2MJfvTHBzqheOQ67bnRQHh13l484s0V0b1+UWv6lP/0ShSrSZ+5va+nnf39Cu9AYO2xRVUcj72FRGgdMitMjGpUFl/aoxIt7gnyir2xwk4gS4vTfDtra+7Zfp2AsHorUB3f7lCyLezd+ArhKvHsxZuKPU7AExAeRtLgRWJqT8XnmSYx+1ZszxK0rUnz1v5AoYRcoQhcUk77aKMyBBKikXvh43R8BO3keQgzDo0PvZVNgBxuMKXSVANpFKZYSykZzNac8YyYumjLX245uHw6wptq0t0gMzUYmuVOPKTjb5Zv7hPS7edZW9ZizNMFwBYUF7VuyAieui4MUomeNzbGvQo5wXx8okH3mowpknRMVYrwIv6IyomQi66SIkkcwmjWDLVb0Jr82xuqKlz/hs56wwu6h3UstxwWxEIEGAdRNZPbZfg32JpIbjtz/Z/lM0AlKWcWjY9cUN7iGZtTDg+pZbgdfHyvhY66uHHSIk+oagdqwe8sMKIhaJWfmhXBYqUCxM6kdR85n7EiwkFCQeahaF/NjfO7YuveLt9oZ/0P3zMb0rZRJMfHEbZyH0VbQgu923A/qtueMPELYkovsX0jzGDfsXZu+NXj5n4LH+XNoohy4+gRxvPvyV4vC33mP3Xz22K5Hb/cByv6hdchJuCoid2LVl3xxD/A6D5CoSRXtsyTsAM1Q61Pm7PovWxDoxzJVuBu9WMxCUa4Ocvh7V2DJIxfU7oOZfTeftagV+q46vKnMbwM+aqccj9OaK+SgTYpeUhGFAopKyPlSYUIetvGZrlfJ8Js1nptyZN7DGGo6JyqqhNZ6zcuxDp0XfnikW4M1waefysbbcZteg8WlZbMPPqDM0O9RH9iYIEIlBXAovEE4gUrYYBkpItEWrnVrxe9nchYqOqQcLLe6AFG9jzhmhGOfYEVX2K2b/W16/mwGM/Y+EQIkwL9mBwQyki4gYidpMmqt0efi5lQ+uGCDZJzFPRgXJzctaom3XRXZIQin/x9f3vx+KgZh9AHfR/PV+fZvGm3sMki7dc/ROYJSYLrdlACd4BuI9Bij3XQ17iRFCZKYr2tpcvH0Oy5ISDULoPGW8bINiN5F6FbJD7qNPBHRDsEwo4Y1DfOSbH/W9R6lziadaTZ+iLBkfKJ9HsUmsDBljTVs2dbmNLgZFjbSyHrCtpAFohARomvg/ofc+u2gBw/ardcQzk8+ddYa8wdliE5ZWgp1TBwi4Y4GX2ZKf8s766H5puyAwgDQG8SX+X0i8QtDxGO+Mobl60GtqI6hiEnQfTDTdtNLCv4e1PmsXQEy1J2eH0zo0q72Paw9tesdOUbpkk3aFaXalRJ3ETKPHdSCWlzqzQ2zl6ESucPJ88vVJHYuzbGBKwLOVbstLVqtIkGrCIRmD5HTwNYbYe1tDpnQgJpHFdFbga1vReX8O+CKEZ2YceBn1zxLtAA2nsWgHK5RP3WMDCMOeablkaoomMaX2mRmw4h1dX4Wvz5nVR2mzVw6QEyGNtcG8TIzZFptiioMqEnl/+SCA9nZo6Hx+rDBJnAAAEABJREFUnuJ8+XHlya3nDyNqhQsCZMN/cWB7dVrAdkyqN8FHvB7IbOatZFLQvbh4Ldsv58raFFd77cqN5JR3UZXVovBL8K+Y6aPiHWQAY2jQtOP4yOwqmXohSN4YSc0AWc1st4G/dbV2eWevxtcFhX0G9uJdaWaNxy8dnl6NtF1azG1a/J8R3BelIHbWRHpNmNm38Man1YC/h8L91lMb0L5+N//6Ru9jsyGxGktNH7eb9XrBbNHyAhhNdBXvmva2Y/UiPjFt4A0Fb/GGG5kNsDKmv2zg+DKu2N4S7f4JoMS7If+C4J0C37buX2g0bvTq87Y7lUWjnQtwbvhECmEqvDqhQxMFFYp78oepVQ0Ou8MRQ5Lrv2vF82QOS0LhEjAnUm/mEcxLVpVlUUXZyaETKLDyoSLyL+uvCMqSejHGBfCQBIbu5f+j9CscHHMApTngvHUcufpm6KJ84D7MYETmiC9aSnpmHj1Q+DJ+joPDXbvgQYHRpFzwaajRGvVqhtf2pqzgn5FS/9PXb5cF+vanaA2o9voVklrO/MeQLtEKSQ+Bn0Ku5e1zblQomnJZ2bsdfGmyf+JbXdjjqHStD/u605+o1VkaGHIwx62UkiL4nvmApDec4SVHxv/VYZwVIHkqFRbTlgB+YLC6HVZLC6b9xPnI2lJn0yvZnAixnoonYmbr7Zkk319E9/b3PkTqmvvgW7NpEuNPYn71AL8k8P1TrTem/DxnSLwJjTlW1jPM5fB3AAGK4q6mKXJo3qidfu/+/uhAlCWkrNHGf5+QIvPsQCsXmY7iCL/gj7RVIzpFsiNst/jzyZxO8n4w3MAvo9QKEPPpSWIYn02LhG3jVKQWUqqQ98iqh2AgG3qqo0iChBDy1Lr3UO9D06DcUQ+0dXoAsF2/6MWgGlPLFL36wKwAECzNtRR7VL/XY8iMcMgG7kx/daQS+4NkSJlD/xQ9hHUfAHacvOHIx+4y6qEk6+dopayDblis7sxM15XgGuUcruILhed+rEzKCW2LaNxz84Rw+TdmzBhHcp+C1gMxxrLIpo6F2PW1C+KB29x6JxTn2dBtdALh7rlbefl9/PmcaDkur95ODPvMs9b2bg+e66tJBrp5WYwvK9Z4rDFwy7ERjbUDTniT+cWQ3mwaaNYG8LSEIe+x6SYQ5jO3ZZQDqenEicic5wKsLerPtL6xVnyZtwir4yUPP3rodsHlXYP5YBb/ngEWn1u/8UYQ21b5e2X0q0IuUntigp5x3RDy4NjVKBq33i7/9DPnC8nXvAXXIDD7Fy4f+2C/d7/futTS+o7Nvr4a63v/+o7B2JgNv7WCOmywPpun/vy6Lf6ZmnV6Xd99HVvb7HpTs+2vqh/kjdbs1YTbX5poCaJLLSYA2ZVdqsLmMnu3BzniYvjGVYpvBrP5HruUDUhs70jQIQkOLQhfXH23Ek7kLmA7KZhU50ucLf+7Pesovme120eEhHcHxVC5GSpg3oe049iDGWGd9WDvXUlT5DgZgs4ug2tGkAM0WDc2ACLJVvKOgUixEwkA0oXGDSn585YDHgTXZuUZ8Jr99Jj9x8ozTCvCFv7xL8mP/5nrdzOAd5sHh0+f0SoeXw3aBqJWLtiQ3J8rN/WcUcR4n2GjzTwFWJFYmWzD+WeT7CYqfFcwF0Dj3xHSQ/xdXrOcI0/mGttU3sjPN8XWyDBzAAPe8PBZZlPq4aPcUHWiRmVE6QxyA+tHudtYslippNYm3VKWVQy2GO4uJnq4roM09Pq4LXrn1eVuHLCG9vSY+2UNgYV2tLwhfyNHDhKlKC9TFcUzOpfqGTQ4i75wgGUmKjs3VQG9MsRav7akI/wLoZhNKH9yfT73/30yil7CaDSVfx3AD2QNEVtZva+fnz//fL08f/7ptZKGAZrhwfTlYojSuVOVGkV0qPAQvTex6J2m1AS4gq2WMLec5We+mrWz98gjdUqrAeDTGkrODX+PZdtmwN1ZAVdW83TWkwHZBXapoHDWQVGQOGLYMlzXlSkasgerMYePNbgp3srVWwRFtV3+hRGmT0kqC4anmh3izKzyyT0REJqYkcpG0FmvAEaiBpYUPxfZS8Fb2b/5yzPFZoCNxCxWXTO4EdwGQFoOexBlTha7LR4mfZh6YPN5w3wZJAKNxl0muGgLR0kW7MJrrsRGBcpkEARXobby58yo+rjw5TDqiOo4/7YLK6L08L2zItHxZNdInTggE1p2mBx+smD1RtMRnQ8QRZ0ICOzzB8doJ1VGnTG/MlLnqQ2TYecV60CHdU3GItv2XPq4vwSPBPYFaM4/L8rlfvk10vWz+z795qKdm3yDWRnd5B869j4ShdQCJhGnmEW9j+tDLk5EJ2zvk1n77FpExj5Jn7353rXz0le3jY62MotZyrUE/0qj3SpFfiCoIys+nYMji+BSCUTvELY3dqsKegJizBDoz/fGWDqFMgOjx/TcbYAnIJ5rLGRXsBlzIyhbu113Ih8iq7mGGvsbFD5HZiwCzDc378DWBr+unPt9zC/49t03+sDqFHenWz2kvVNDH/7QmhbSlh418imXLCpUqj6H9qYE9Mzdt77IHFHH+TiPx/lYe4AfTIwgiVwz/OPx4+PHH4/Hhw4EUrzVJNZr9PbFFmBw+xfw/u0Vw5jB+ObKdigpkRbqoGHNFNJgENy+Da5h5dhsxHWmVHHXVjRtxnDdFs7i/yJV/T2u38wArnXO9o6m3+J+2yAPiBdFO6CYtImm/M/HDICQidFSZ6NAmIu51vdavHoB+Z/PP5H7198LzdHs7dv5XmT62fWWN+afx1HrQL9S3n4dIphrJzeDpZToVKKwKnJhIfcAE6MDyXEcKdkSvJ+1opUNrDVQ+JXoXGjBOdqCQI9WCNsSCavziXjvXZpIyG/3+nsNLZg/VB2/4OgvT8cttZrWe09GsbYBjOejt97WIM6oy+4UmujbgPQvL1vIBpr+O1wFSdv6tXrjnN6KFMilvFMy+fy5TsZ92b9/vv7//PMfL9J91MlDeaRA7dcFK3odUJaGUWVuLtvGQtoPOOJE1iW7ODNgyojZXOorWx1E1ZAStZdxlwl1LDMSX2UZsoEPAM86YmY+Rh7xNjvWA7lNEn41iRi5xl1iJL83dA+U5m8MYB7SBG+w2syaD9+YJH9hM3AFLtXwwQvYVk61HjLydT2OOvzvVMYjydPMte0GHGjYF3U6EZjz2IX11IGTihzDbrKigpaVl4/tURG3cFWTso4ytIB7TEMups3B8BYU0XDFTPZhsL64oLoxa9ZT17Ldhkxy5wZV7lf3PBMjb0rUZVvLhvzn3Lh3yG68FWi3Ll4llfVr0ECdz/quj9xlBWEQNm2CNGUUfKJouCeGCqofHUOtqJ0KAh/LGT5aWnR/yGaYPTDIS8E5DFB/0mWa9fugkDZ1y36FHX95+VXM/uXiNmU9yqXIqb/C3qsk3nJbKiTFXhQ5Xt4ph409QCiD0oiBrrj83p5vwttJ8P4dbeVvSf6vXsAfEWNUKfx8mNZh7wZQ7BntJJ9c9ouOTF29qUPVBRu4Qi1A1RuEi1mQQblptXm7usE3izd2YzKkov5tlxPBziG6NONy81+9IvZhce2BpIQJmGWYq06LaxULZQw6K4XOtjjwV670Vi6DVMjLDD7W7Y+5dmvSEfX4yq318fH4ePjHTMSL0CaoGYllVDkHas6mMgfZDdvbO2l2Fy+lNnN0BoiWiN8flvbsnxrOXMYZ7OIFbGIQdBIemKqwhzE9DRrzbyS3f8v1mxnAFRaVaCmPfpDRIauLX1PRml1MC4KZoeBtcBRQe4ZgLXJwk8ji7sU41+rVn3/+4x//9TKDD6wGuA4XvkirbvzMWT0kwlT8l0+uQm2/8JR1vBs7+UZrJztSp8LbA7PkrAA+BO0SUcc5YGqpzsAiwerEmQmik/kKJKbBogyHkOC+wXN2xFtvxGhUM2xQq2lY8ueqnnvTV4y13yl0rKef9s+1kMNvOpuxsdmPGp/GqmUvfWIAJyCGdJhaKp7n3iNE3aJrg0i7R8YEsz1p5n81funfczWQa34CU8GiG8ExZs883+bMo+j/TM55/f/zH/+1jrX5OD4eOKNU4rjA8oqTzF2r4Uyi1OYWILcZFpbXobG2WxrDDQzjssqxYUHpXaeRFDMejl2pfSpYZYB2pEs8hGUjmrrE/agTQMSO88hM0Bn+ufYj9ZFsF8NTGBXp5GwYBnkWfa0AHyOVU/NNtdNaGxu1WdDUDpivjNdoQ9FJudmOFGaPrPBV22uAf9oTHh6xeD2C2nNGTvoEa+xWNOuj/OuR5w3jAfETf9D39dyjGtVjmFjm5XT8+XI6/kPnvTGCrHp59KCbRgaIpZHIYujnjOloxh9zt2UYlhi5SaRJ5NwwUudv7dD+TfmcnAFR/Av4IBm44WtXB4YG69K6TuMAgYsCNDOxVHo6LkuStvfxrKV5eiKQ96BYO8OhMuQul1hqFw1Gn204QFbN5mZ2q9EawPUXME7GcG0KroUkugZOiG+EjJp9is4v2qrvH+2OmyliU1/zT0daL2wheqOnZht628rsaWhX6vWbXfGJkHyvIwb99CEwV4X45s0vfQCtOX+lnljmu4H1Xz/+pkA+OMeP1M+/vD80EMbpM2Y7gOvnPZc3gz4vH8w/BF3i2hb3hm0Dvw3xbiofPLfP45VKZxG7+cRy39B1fG+IR/d/ccOlRf7uMDCzN7bYL6/YOKDQpGMHC3ScEYCU8B9ZddoAfmakofUxhAVZceLPquWRDr21k2SlRKjozrMNitHfquaAgngwSyDjIXtMNtq+jNWQyTY2/W0zON/YTbD05/m+znMp0SIb2HbBMZshVCB7PVXyudAJXEiSDtzzaIIm7mRzRnpNI9l+r+u3C4GWfouhKKGFYzOAjSKEqM5M2+nNuHHJCwjq81VUHl1ynkhenIRVdRSf0Pip7OsJ10y7eSdmsk/Y3ocZ/FZ9Xvt8t2YHR70a8bIpfv75tJveNSGgWlEBlwKQpKcLO3FtId11VZhWLjl6vVofj7RtMszS0Twv07ctSRuZUMo6h/S/KD2qn6mI8U1cevola3kfJmF0nXL07IsCrirFvnVJ1VF1Nan51DAbpLETohsbY+ZhOb41SIG1WCE0w2q6v7d+e3fq/yEBpGXYAI6yXrw0yeu0aoY4fntp+lOyoufcdjo2i1a1pn7CZNrlvO1DEJoBmEWsclfSIcZ3PQ8e1ktqXP4MrWHdpFDtB7Q1VHYll0gBVf4R+jaoOHFQklkMCFTtCqnh+iq3e6TDaqXv7QR+NRWkQrrtkOtumhpz52toCQ3jAhCd9HnU/mxnqctqjOcznUGl+jKbL+fHK8Q/nRFSkshSmCvD3tK45iXGoF1n0WxqVDkXEtUcHmNPE2SthBqzFZcMiMGJobcr1vqIHV0CQPkwJ0mc7e6BZKHXBOMpLSRBvS/eFUsLNvjockMfH3S7SwN8UoN2dIxmOw83tkdUBptaB5V5UcUY5un3EMUAABAASURBVBidwke5sbcK5JczvDOm1+8ceVRNTHuWZyOwKSl33jVCnKw8hrjq8gu2i9tl4Aj1c3QkCMjmJzW1/peA9x2qnvfn3WfYmfT4/Y0EzfiqdCsi5+ONfe4XVvDtnCSQ5LhZr20Dx7ZWXO8gCKAjXdVMJtje/PXLL2Pyq5vZXJfC1psuR0Txi+IwOCJJfW67eIHEq1DVLSYrOtLVtsfzgbD71OjqRhYSovrbiDcmycbbWtQXL9kVl1riXqUeudPSPz+TdqnXMKrva/FLI32a+vnJWjA5z1uxMd/EN9BvKHTXx2oqmQJTnSHL5YTLcgkuZLlVwkIGj06ZkRNTNHEw2+KcWquiMiCtCIiTTEEMbKR/ZTfMduKdX/o3BmGnGI3+ZXwuwNG6bAgZ2833EsNjlY4j6vS4oJYapag0QOg6I0W6BupMgxfc/m8I9P+RC1NCTTzOMZxEnRcIJCGm7yXUf99jpkjrC+IdSfzrlKSz8qzqJ7jh86TJHUVXL+vx4+NDoOyuvm1AtqJFNvz8vta53/lqy9pU+bPjKGjo9jnJy1P1wAYvJPRM2n8ZvNgDvG77ePWgDeCygWkAk+XdGnoeU/VKrqfJeyADgVJnjdG/CXZ/x8u+ye9vDM8ONsYVV7U2ROf1E9uron6+a76xpCRyqtsvi0/ZD0XT1J7Sgh+OjY6yzZzYBCIbYbcplDBEdzoJIIdpA/8fkERKs5C6uiZdYjX0EzPS0u6OHKsNvgVEeoHImZPZqbh8WiNAcSEPjQvK+BUeOslL40r0F9jiTrA81HwrDJpVOECP2eCykKOrmhDLoDiJ3mD+BpyzWAW1Sih3QNGS52SXmIyAXHfzElcJJJzH1Ir7aKTFiKdeSus0r8OBy5EAzp0wKl8c6hJ6bN1Z4crpM0+7aO1aXvu3F45hlEP60bnOt2rLIPLn07XSdKxTclZe5+ocDtOesKJHUPESPqjDRfKE7ocre+Ex5SnoRtPc2huvNefZDDkGGkZ4D6iLI7uMiVGa832UP7EKcYK6YbNFIJLgcRwVOYxWmN2F0ygzXWg0pDBn3pg/ZNiWHZz/af+2t6LJRrRWf54AdP3a+LA+HIe9yShQLIKvSJfSw0U8q/LaGFehW8ob7uwfQoQKtQ5AHFf9WZzApm9dQEHjQ6rBDJWwDQfavHbF81YL43yncck/OUdyftLq3tpL1y3nZMZ9zVaCU6B5rlLezPPxqqplA0urSv7Z/GzW6d+xft2/ssdGk74DZnrgkYDAuAnC/FYkZdpnZUHANYAfnsRRYytId1HFmIAgKrperW7M2sB725bYjLrYuUkfVnuadM0uYAdCbCdplVCai0/uHVTb/Pr9X77GPIacOf6l9dt3jzeBCGT7S0D3XmBKgdxHDeIhWQAk1a2Qe9iZxCxZyN7qWKo5sa9XgwSWCzoJc56ORi5530kZ7YYk+1g8CwjGODdxZbZRmb+bEx+gaaiZPTjHrsJiK+YNdhVczEdL6Caw3wxgwQdLo6ecuQAm2bEjEPFs0eRlUrI4GPVQYhH7/a7fzQCGcA/DWops4Fp9uMqUvP1QyHpdJMwY8kXF1s95llavsxpOCMYQjduIfc0V4LIzH3n2CI0WRhebCjczmwbwibNz7DN5ehc3MTYE1ofPZ4WV/kmtn99mM6o99enjALgvm7jKizwdVAbwqwPmym3Ty7/RjO8msCMGsoZ+o4sFe/yq1OLKJ60LR8iObD/dZfbG/Ov7I/gn8YUQ4icit1HFXecSDwwZdr1hQ+tKDlAfEaxTYFgHDlhuhKPMnTvBHI3SOAMndmqzbflujgva8K/pu792lWEWJ1eA8//RAdrRUE6A9HY50Vc+jSBYWb8OXONXAtKYW9yIYiAe/KPpa7SM/GK3BjcSwQakkN8Xr5JtgEs4R4Po31CK7JQpWGLYZagLK8Z2kUaGBwCgqgcp4tapGGUVqyKNt1iVpFXnjR2m3EscjqmNhx2KReAa4LSb4CqoBGZYAdYxgmhGlrMyaJ7rR+Vm7pcIzOVxdE+JeZtObKNfGErzc5FH0YgNQUozjBNMRBS2hcYKS8eoTYLmoiG2N8nBNiAty9+byJt7gLsX7c4iVmAKxxYlzhkYwsTmt8ewfKEL0XBGAISZYHYNcBXmZQXvNHqBqrQdh6G7MzKLZwUl4pIKMnnZ8awkELWXTNguc4I9xIRCUBisHNshJWRcbw2divI2QRMo8s/Slm9MU79Axpv5d1Erx17hdV7nku9e+JtPKPS+UExqmvsX+svH63xTpq++FWn7pbMhZemjvv3NpTL7xPC7aWp8eCnn8qiLLm3mCnI9SxRv97XQe/19r8cnN8eY6NGE0WiPTRTemt12oH12STjEOUXFwJo2JZ69H3+YFh4bMtxs4Dn3N5TIiv7y5Z8TZdxiHObr/Wa9EQDwzxntM9az7nWJtTI4K+UTNZjQltnQrunOwypt3Zi+U6vEN7lK355a3FG/ML5ZdDU8hlaWwi7XO9fC+roDnstAXWwBmQxmF7/JdrNdhMk2YoMWLmTtXZONJTGTv5f9GtE+Z2JUbJNqUYV1iCoKEXpGhIX5+IVM+9tdv5kB/F//9f9ZChfqaTpbGmK2kCeOjSlxxv24hyqzZVZlqMnT11qM120nd4S+vvvjxx+v2j54PfJVBmdwa6Is4UnouqbuZAvjl2/m+58/n+cTfOeykCsKTYznKwl8Kd4Komy8Rbjw+t5/1jklND5yD6QVRvd2YMnaDcXCUiI4jgo9IKjY8GowPW/4GGMFCOeXUZkiZIQh9j2/lPHEcOBRIkuLduK6X8C/mdancM9mL8BPPZf3DF7+zQqZbQs5txEsIiFdXQ7HGs0ENQ55c7PY/im99u+4HG32Vu3R2jl4R0jEl+b4WI4W//Hx8fPH63c8jhdfhCOUOm+W5YkIYYyCWSiRkdkE4ONkO7UNwlqmkLOBRmo8ZcPXtcpZIH0eZHow4W/F/B/a8qo9Fw3d81UeVrZkhFkpYRIO/i0GEc1EyLoQ16bVKFvXrXHh6I7kICKfrMk6QKtHE5XXEYegq4kXgnC4xed6/PnSh+tkiMp/byfi+8o2DrrD1qwgAd4p9b1CYutURap6Y6C2iCRoUI1sWjW3SPbs7HqJmNrRjc9AAlVdhYTj0zGyLT7G++qrRrWZz8WUNq7WHvODKYI2GDUskK2UaZ6ZVVIJJGihkNmQZWx5U/Bok4ArotWvEpR38tlhUdwsNLPGqd4B3mYtPs2m6aeeYlFkuTlqCd8fmQvbn8RlTJDhCoauaebeiPLwnDpHHZzo7D7hM6MJpbiRXPEaTKARLpl81Rk7gr9/dRmf+23q+pQ1E99fCr9oqb24iI2g3G6G/94QF4WMFvi7O0d3BkI1sQ3kKZr3rS7/+vpLhTgp6qrU7RsN2EyIvcZBsPH14xdL1gUAtqfD9hpZbzEYzbI9BfKtulmvJNMXvSM8i8a34APbvCoXjr4OO1ln9NC+eU0VNrseN3fPleA/SQqt9s9mzzd1xeezBuPLDnnIIffUyBQetuRRZpvM8zdjSKuD4Y3xQsO1TeOYNJQFmZS5acA5YSGds44pRzKODH4agyNceLniHYy/TNmnU7mPm20i3W0awD54yIfal1wY76ErHZjGwD4pVpkos3UpIDPY1mOiUcQy/n3g6Tev38wA/vPP/7ImoLfMAs+mZtmIE/oOYl4S6yD0dWUuuMVmJ05EGrIVuXKWAfxisGXuygDOtHAfyiKieI+5+eGXWvaOSKbUm6+6bS3MnM+IfbOSe/dnxTCCxrExUIcY1dZcQJ0TixSVudUfXJQ7rGIhYl+JI2RS2qvFGY+PCosMxlM4MWdv968jt9PH4IyO2wfkrkPq5fLxG4l+VwFznOPtTq3LE28wBetyHxqxPx7rJBhOp/NepMo+tvCxXqxqnLJ1winaSsoSzf8dLhpKRTLTyjCzoeCdVhciIW3lVHocH+sYpEcezff0l+8FBnMcVHFuk/G8t1YX7m2o4t4GsKqGDpiMJVg0zVcswOW66gPGa28+xqkGSKZxYEW0kBJEgXZDVj54MEUtdcLvYZz9MuBEKtP0Dapdtb/XyTAUZXNuepGyC6uyxaFmu/Vb7rDS/66tTYN1mqvI4d7wNCFEtLlfWY/YIW3UR+dk/WaZ2POeb0uMQjjGpPnQ3ju4ncRExixdmugMskEs+uTRTSrSkq50XTUQbsP5MUz9KtZIbANeiO9U/Tbqc+B6uNroeIdgNmBUYuLE4gE1EeRD6Z0YKy3q3LBrVAtEyTtqF1ra4KaNMbWrQqnPe5jYZh/hKk5GO7Kx2iPEJs5W1nr9wRdWD6KCG+p5MYARLTB0oKzf2G1ga7Vo4zU4XDEdAXE3fd+ZELtGFjWMqdxwd9vAtmuZyxUxDCy2hQ+6+Dfe4GOfYJZDy+Zde7M/661bQhWxiLg7nt9e/k1o+57yv7z9+sm3Hx4PQbHWXGcpfDeYTh2nSr5q00/bHW+tMspII8tE/znvD7tR6TcUecRIoNFsMCq3YQhd3lQB50kp+FeuCy/MUXoLn273vwkRjz0c8tLmob5/QTwlSyhJ9i14MWSQVU57O3oPlVGDVLbvlZSyxSJVikSIlBCVmXHy0L7DgRYiCs2GRDGSYn4y7HHD8LvMuYru+23j0mkCesTEg9Jj9YZB80MAOevznuDxawAVNk1Iz3G8Zwu0+FWcxt/z+i1XgG3MtImdfKCAnSXrD6nGYsb6xMcKIC208sfXDVNl9+NRKTMza5SWfxc2G6cX+vNpiYVtqMm9nNadF5Fxnh0dN2XfFIJ68zJ/p2x0n9jIqr3n2pUFezdZtfro8MTnUGQA4/p45ZRbzH2u9K95pmUObTAvQwhqnAQxhL3lnbM6dy1HFtnng+Net8HUrjhwq8MxBtrjrM4xCbvI/43ZbnLTBZ8ut02RHVJZg0ZGVPKkMCk3lRCKZZwVUnjaJsuGxsJvGg2YMVQWDXQavrAhl73IYZ+BhXei6L9dPPn4xwZhkuqnRw+LouvQo8M+XlTwkRtKf1j8jPMfET/TvKuUgpU8lrhPcGHDMBS2eVftpSeWjA3lOOxPd82yJqjClfC/lcsxtMtA7I7+GTZ003xeQcHBnABrU/26Yliz9WDNnzPtyr4Kqpspi1yON3fsxTBQjYQdhpsyYXTaKB6ZjcV5llvuZwxtl8OsRWOcYEwYtLyxApn5GsV8PZA0knqzEvJDmpwgBno3uksmDc0fnCzrG/yggEHLXkJ2AZUfD1Ec++/ttofqzofxoWbPWHoMa6VGFTNtAzoEyUdaxN9Ywboc4dU39LJZlzv4qdXf4GF+Rc45B0dc11X2uuYf2YFxR+0Wt9268QGMfC8H2qei6/c2+16n24icBelqoYCBCwtZgvY1ysCt3ciikROwOFXIk+KaioCwmGM2xo5kqHmInt0Gcd4qvvVvfGKdjvH0L/60HuVW33bTLHrYhioaFK9mS/WHhPytavB98Qk/YR/FR/5PAAAQAElEQVSvrQM1jBLwSWgOix286du+HAEbNLyrzjfA5s4AFxU8KmSw8miuDY77axefgzBzakzEvZkEXTXKWlPg78xGcan3DdyKyRtkhSBkMYnSXUT0cMWt6rgLE5J5ry3E5bawqw2sS3e8AN02uW8q2q43wsuKffzSYOCfeMNTYgR9ZVS3dVKDbboA0VKygaVs3zVvUcpRdmzDBFQwkykvJXfEsfTwUZYwLV0v53kiN+bFUH6P4rCs64RKjmgsB5FSY/vIpDoHQrGh047cZphnqmzLUS7RF7dhLOE4mF02S8+CNFMN3aGoGpxc1+wpvLirM2EOMW1Ya/LRP6LhRgExmaWo0s2ndzQku37D67dbAf5H/r5QRJHDvA4KfId/Y8J0s7Yq3DWJQ3wVH3kFH/I8Uk73PtvF2y9zNzZ9hi1zdV28Xx2IP7Syipq24lsb2K5CM1dG/vgYg0LCFyegljOUKrZElW0GcMXireNalgG8hMjjyGDq9cnDvZf7SqnoR+CzjhJ7rRvp6BgjAjlPGQ4w+2oX9JGHlPuGtWAd+qchMdHKh7MwpD/zS7nY9o2GHkXpF7PiaqsPpce1+mGvQDy0fgzKr1IRtmsVToo1EIDZHVKcOuwOSchEoV32rwSOq0uEuRyx/55L+q5ZyfrNO9CTRu4yqXKz4MsUy/N94/lIl9NJZIf04kONsxOxWbBSKBpWCGb0up93kIcRNJ+1fBsjfcDrqedy/zwDURBrn0BvRF7FH1HuI3BKbXfNzQdIinfpeGgzkTeJxdY0qKHg/NYMl8Hai2eEV8yKRmxnY6hr8bbAgzN0HBuekB9qh8Z8lE6LmNPHeQ1qU0zfUTLulJys1EV+jA4VSM9VPE7ZZI1QDqEbevcJDtSsFnjIuh8xPwyjG263kU6pdmkBIwigG05Lv4dj34vTYDBqhvbFkHuKkBs2eI+Xj/f7Fbc3es9XIL/YX99em/SD4ApGF0gAbUw4Ce8iPob1YRuKjenPcvusbRHjkxpO4067qVBDEsmYO7vdKhRsFnPBdozR18LLGRQin7aP1t1her+P8he8+6qHbhusX8pQ/2QROBgnePlwK3jMEgsDTW6OQVie6MH+iN476dc3ovQw6cZvWL/fvy6I/df3Q45/SysJ292VC8GRXeh8u6XpEOljyCuYgocrP+X24F7I9iHkrV1adSGnajwn2qeRbLe6/NLiz4ZGoO6zoY77o4S6nxY43sz2c7sYC4a6KnXr0ZKy6wmTUZhQLB1l4xBf23k6Mu7yYHXWwjCatYd8NfiFaQCfoKMzSAxn/q9Nv5n9aZAmzgmuEGjqy1IDo2XSjyd7DQmX92QI9GpDouQXFHi8kMBrGYxO9SHvQCMYzNb1YdQ/97UEzcoYMOAB7ipBVI07wbNLgqvEATOlHQybQofWr8fOoQmcjeFkVLsdtgIHInj/91j4b3j9bivA/1gh0FjplbHLVMcdZ7VCdmdcRcC0gfUXHbonPTl+EShHHQRyHvSHCG8M7RrMcYfknI6QQW4BfmpzPNoyLm0yjnHJ9J1b6nWZXa2Ltfr848ePjz9kUTfa4p2CjZXLZcgzhkDXYSWlEo+zVoAfRyxDNnl8DSm2REphI3hxotVl/+IojYwOgfGw6urulCDIXteJpnlEfLSGG0Pst80ko+tS4pvcKHlsks+mBt+v2H5BuJdYbV+Gv3ladr9R6QLHEZoQYhPxU1C1DB/CLVQYDs0xUwYyvsdTeJCFz4ZdNIu+3Eh2dvdfuihcPaSthiB0DubAXUXzSRv2eC43yXPlCH4t/pQAdvSZrW5mjAYNsQlfDqIbPLu2R51rfnGoNSW/jnKZvJkqtPbO1/l+hzJbewYPL5WarhwkezppA8tV/2JEqDSL3nbX8xBU5sGfc5js0Q8A3xy1No7ORiu5t6LAsL0hQ79S2J3D+V1S7BDtYnTb+uC0Stwd+JsqDj9jb9p59iqO4xW60xUuXnKyBE+Zj9WYwy98lX0jdOj+Dcm4TmlcvhLJxVMJCU/uTi4V3atlh/RF9aNEchg/XdKtvDKAFIdxz3Q0KKETAEok1v7XwVguKTE2nfWo3jlufjWt38t43B8ULfmAZVrZoNF5wumz1bKV4lOuOT46wqeWcdgJ3eCYb5iXuVviDDw8PSPgT2E9yn1t9Q4FXCnhVjWlxdh9NPzzXYLe0sY3ie5t08ZMk8G/bXwY9wBOt3/iaj598wU7uHWEbQ89HtbGCKVQXFkmhhspdjUBHUETGsw1hLWbx7tm/3OXy3D5fiHuIwLP/znFBE44Y8QLfaLsIUQ6gykjAdcjJ02aW/GzR7HxzfRJgKJKPjWxsWbcE/DT3DvbEvjdh325zB1QxbWPemdvLjd/axr7fONX01oyZ2rl6gPp2X1IvrS2UtOscJBUSyso8LhkvrYaT2r3U0doeCv4Kq+fgjJ2JBWgPFqg81l0AMWQLVwA1ioLHx5bLV0H21PRddKR6kpQUFBbG+zyHoh1x8NxbroxNUaBAVq/59BinBD97ilCaBUK9YvjLeZjTtUqq4GW/CEp0S30zQCOBh+UxAAsUWyztMZRk5WjBV3ZJUZF5MN2PnkExiSnGKTy21y/3Qrwn9a8D1LIVKNHniqxfmdM5JqGc4A5OKVUkA8md7K2uBggihcUCWoO7nKSbNsMYGuruGxgGbRduSy9bLHOQ4otmdx5WQS2Id023fmxsj3/+OMHti9aQ0cVa8vIgJ16dmluvDlhjgMVnoQR8Uw7FlySNnD4FsoFY1XGRvG+IwHfWXC3Bn4zgC3BVrfP5uDoLUWD9ttfEIPdNI21MyyutrKx0fZGQ8eY6rgXG+84O948zTdQy2OrandNOEbqsZ8KfFpH6VwNYOx74fTYhoavzRw6Vm+n9nurIGdn+s54dwNx1GCvskNb0le2U/oGKKFx+G2+XbtMAdSPyiUhYyta7VpM5L23hjK6ngvmargDRf0GSzR7AOwvHk2+PhDsgCClamoEQnL9YgCXOVWbrZ65MSILis090Ra6skdsWqnHllqPSLX7xnnve23rwXD9QFIZltO9oYPVBh75b6ICPzA0ijsl9WLKajAQJusUMHkycCKXMtZ7wZzyzRMOxj4Hog2L6ybE+zV7iLjzsA4nKTfGczgL8ZgD4jjiyRGEnyXi3tIglnswzkwsuoLXokmPNDVEErluEmcLl40BMcC2q5PQV/qLMqbxMrjbgjPfc4Id8MVZPjyciWNMlG3WzrgVCZCksB9Hd12kbGt/iD7lLZPo2FtUbWFffGCvINsW+1c+mpaoMXbQD5SH14uIBuUP1q7fbfxpXsJG2E1LxrfZH4aa+NT6lbpDOfbJFf7uI58doDIcJuu1uOroGP9C5k6AWy03dsFoyNet1hYyFMleP+jXjM65TaL4/nIXtZ9fFwvqL13Q79sVZt8vp8FRjcpmr/LXkCOAZrSEgc1WyOza9LXNfs9B/xkUqH2TbssYOxdxzvmdtv6mm7/qaD/ke1IAAoi+riNCGTN4hFM//B6+VcbCZ2lgAXrBNggqtUQldSutzOC0gBGYFFdPl0lCzmQ9k7V7uAb0YDvz5ZQqAV+s69R+v1S7B+jMuSFrGsBVXDm/S7q+Vc9VNfKCHNzWkaf9LcuD4Zs0gD9B7LxqC8jLRmjUOoZk+oA1Ju5qNhevbVJA62uTgdPjSM3VgpxzccEWNIBvs5rS2iV6omjjovV+o+u3PAc4CAAIYmq32zF/1sLtUak0OkKAZHJRLUDEL1JccY/esnKIFyWyxePMDYvHz/2YbwlaIwmOTQ4+P7yIG30yreILD9iubx6Pj9fy7yM37kIO8YHuyLJJKzwZK9QFsUpAqnIQvTeP47DNVdapVbTQ6TSQxRX1VvICSWxwEJtN3EeRYuBCcFjKkZVRr0Z5dZw2CsI2hpgeiEWFD7FgQwwYcf8mN5QSd06Wz8XefplCYasOoqGlR0mKg17MGtfQvdizQQG9V25EvFz6hgsZ8c9qF4nwrkXdbCwiQQS+RS9x1ST8sNbyp6nib+6ff3LDp92hSlSoqsHAevX8DMVRrLvPJI8XRf1Mz0xNtZIWZRF16sw5PJU1UFpA1eXquVm5XWoULnSDmSp47Mow7O0kY85nEAzNOaLPCvBY9t65nDePtIFfoIkpbFczH49Ss08Bo7II91GiVYC80IPE8LrYZ22KpBUjuml1qjWMsglzF0EUiVjmrbPeVeUX3YrV2AoqrqfNBtJag5AWYfoBsEcqPVt5cluFl1WAy89nOrxW8Ssq7PEYh4An1FqBIM1723yAW6Np36JDUsgZEoDFpMqrH7R7nynZyhkhti2Eku5ybLWqfrGf2qg2wsmUWwVyJLFwYHGVTLoJspBgK5pzm7PUVHp1Jum+Om2imx1kkRKkmQkbDzCWZLmMajCMESKnDE1av2C+TfMdPg72yk8v2QdjGj7tcvJr4O7O7x4DU5UvCD6G3AQUlOZe2RVF5HlXIUUuUbBZLqbkyA6w5r7HSXP8KQXkhPMmMFWpHgZibyGpi9XqcdvgnPexf6rMoMBAH1Bpc3hGL1nhtlSyi+4uOOC+2sYYWt29HzZOr0zf1opApaIOHwNkJqk0OnOVT11xu7a/c7nbX7imuJufSYN7RdlWV2Pii42jjP6ea2O8vwoGrPSyxLNC9NoAfgn0lb7hmpAJwsOIdfjtAS6CgK0hZRazULsovsCbbPxXQ0pMCIg7ZeC8wb1dKTHMrevN93fxttJ+nZ+sm+EEG71iLU6z/I5vY5jr9Tox7b2//jX1gN9S8+XaSTEnlfOBAzefHDY0fWWyPYDOM9CnZu04ehBOitry2WVFjI+PC6n5+BGecy5jB2VCqzAWENuoygqpjDsk+WJwKGOe+MR+G5Vh7Wk+axk2Y7yCw2DibA2ni7lby3Nw9AHX2DV3fMZsiNZxi7lfvHs+b/p9rt/MAB6cI2Z0znbMq4IDXoT/gmQ4iDKvITpwiWSfT4C0c5yMoosGMF7LfJbAmAbwXQxN9r605G0U9PzzUoK/uSpj83EDNJ14OWHcsn7XdmWOYq/eGdB/ho07TYxDJioHnPKYZh7GAuYwQingb7PBa8JVFu2pl9XotIGRV6+kpFWU4m7GSBo1etDQ+mDRHqoQ4tKc29T4c4QjRjyZyd87esC7alhACVxsapTR8ozBAu+sX6C0Kd+M+4ZzpdF6D7D61YJtg1B+e2N2s4GFEi5wIWL7Sh9qIC6libwzHbqWSFULTV8Dul2jkGtsir87i1LybK6KfKZPC1QSKiZJYZPUYZvkndOV91Fd24SiRNQ14IWsXGSRtzCw6LjJCM31cq6tyXzp1JfmiaOiqEMSAwIkdzQ5Z6yUxTYPgkRGV5BLjRTVncEd3+RWd2mxGvuzg7iztDoZwsqoWtsKhrDqsaJYwfJpvDOAc7EQ6TIxIOuvI0O9kfUdQPLnz1r6XgP6WCeip3oOZ7hZhdSuDAKZI5CVxIUa6eGoKksGvtqV+eSH9j4WMQAAEABJREFUGIyLAUwke6a74Dwl0jKgOU9jG2xBcYWUYLssVepxzAEmhFs8TP8p1/zOM8MVDtNq+9ouyFNUfFw+nCIv0IMWBLX26xTOr7+eI04oYkCxmwE8aNxAG5tKGk0wWo+Qa34JmJVW8E1qFE0i/0UZwNUspzfJW0VxZp0y1Nr6hUT1aJ5VCLSajhb0oDua5ONj21va7e3pnJ8VQ6qbLEnij2AXyQWM7TPbRmniwzD6CW7NuFuYrUIkt+g+En1JOt9sYMxWV++jxqFMqpjWa/hwtkQL+34h3P+2CwMS8xPIqiGtuzm+M5trtIMStdXj5D1ZwMMGLvk18rMU4zwU/cF/QzqUwvDZfjfZNOv3SZ3FVkm2xib0PhsOqiuHGEZug2HfGu+Q6hKHDOR5qhS74JgYrNulXd+7X7+CT3nvWMx4Cntv90aEst5c4hnjVxnpLldUEg5meMC4p2FN4bA8t356N7Ky2p5yGta+Jvo1U4KeGMm2eLkrIxWlzRmiHE63XeIzLBOJMLYxUhbuoBhN7FHQlPT18BYWJFbLroBe2Aa8T/W69jedvv4bkWsJRojusMHW1lI9yPaNDqn5bSDnfnyU0JKF7Dnv+EtT+Te5fjMD+PHYdmj4sAmtSQiCJrlrkAElhlCAxEgRwFG5UHKdoFgB2A+rA70WBORRlQ2pdJFTe/P6E10Hr4tQuAsI4bS5RFxviveD7HQpX1LAAhlgKYtFwkCFy4peELaWcJnj6txxXvej2tADVDDuGWeZ3ZK7Q50YdxDnDpFXfY8+HYdHavf0cVq68ixHrsgp0ecUzxEItkGtGIPkU+ZknxtI2c7ZXZkMEXzAYcdmMj7voxhqyVRpwWbBf+9NM1gSKdorlNXB0pZkWYeDoBJGfE2NtnW+BdzoF82MTeJSQTsUZIwyYgDFmpdzSPZ9FkD8lQY2F0Zzd8kgzAIxlTPqVdTzyGRY+fipBuLfealftezc5AAhQ6GPC0H45r0ltQKAHabiUZQX5QAq62BG89rUazA73B6vf8epUYjgNuD6S9JmgF6TSi2AQuVmI5UydCWYVoPuTkaVYj43GzhHo/bdY8Vg7dznol9FxNQtVclJoSDpFZq9+pWp45eH+ZlDvyLVV0Uvm+bn6/pz/ayjrP78GWOF9zzKN0/YCOaJPPnqwx8f1uQRzNM8IZkW1nokNNEKV9T+kMKvP2sXdg6D0pkcMX1nRSA2MG0lRqFxL6eHPB1YFWjUoOnAH1kkFq9FfO67kTgkQuxESZIKu9PtsOdAuEUCTUsOpl8NrnGobOQYXSPXeKu93NzY2kMGMA2G/oMDQAFOpZffYVqcKyVRtEJSKus3lP3x+SyTuMrxs4fYnAMBUJgM2TYwvuUcwqS9IubPZF//FbvK9avUL9mVE8oYaJMnQ2Icjem17pCrUiRhfbNzrChQLXCu5mD7vRnoA6e4RYZfNCBGoz8bNnBEL8a31IlL0KtUG1ZYq6fHBmXYZTZlQzk237vfH9TD1yrHR83lTfGcao/R95JUoLSdaYI0EkqjSGXk4x4QbUtWiGK7WHTPJexCLfZGXW6VSl+k64PCgvFGm9wOia/WC9UYEsykxfG+kd56CkmkbpQvqWjGPUbzJTScJlKOHuPJL66/x7ATT9oYEE6zIOU2BzFbRTnCTzgc2alzpGxuVtBwbpQx+7tezsIu3P7CnnE6yvu6QpJTdIYmuskBeWpQJN0owcEE7IUWDfnh2QpgKQ9osYf0h0m0QaIEYIFJp3lrs0FdPrcdaVAxEqCb0/jWnFsL15LWEdoU5/3CGe+a0HIBYgm1aBhXNAA55xRw28wg578NwWms1d5Jgb/79ZsZwP/rf/1nvdm5zHcj8WIr6qxr/AzOBYHP3bbnKSzjMlBVpuoKkplk3BfN9tHKeckx1rJgvy6F+CcWdS1mREjkUxLqn9HRZK3ASdkwgDMK+WEsBzbw4eJDGKk6GZXWaz2Fnzzx81ny5PAeeS9rQ61m4jK8tTIgnhU7ai1gKZI4gFz8iBYRknCudems5WRi6xqejAmFT2QqZ9+oge+rgpIhblM7mWkFIih9pXVyNdCsl8GrlGXqZ3BoS6WgPEt14FEZFGpXXKWyqSoKe8rZcYb1eqtmMuZmMBXfqtaofTmZbkNeEVL4ZUik3ECY+Vq2KzbrOlIuDRUIxfCUqUPGk9+hC3diksviUo0tgEyxGzTURAldJpkBZhXC/GE3uPlQJGZUvjVpSTBHtUbwi1kxqpkB2WAYIz8q/8XKi47c6NKVMAQGB1rsa3OajWowdNCmZmtzGgLzsq9M0kGEYsx6XDQT5TLx3Me81OIT0q8ayYdtbLigWfMSChQQG+Yo3b0WVn/+tAy4OpHX72UBr8jn57M+WASa+y+wgcEpDcIbWUUeV+7xk6PD/Ed2ikKdkWRLDJynarQh8U6Y/b2NL09BPyX6MHspynKaCp+A3Fe0dK4s15HneW/eyfOfObpG+dOGTfS8BQVAahNHAHdJpynlWzOQ95pBXaQVoaWM/Kw1G2k7JHVE5t4CKjdiR04Hqcy0Y0/y60gvRfBgP4WFNzexWoPAJmYyM0kMGNYRglIm5YAba4e4HZQOUZESQNFEpDR6OWUAohabeu7xJ98MuWfbbWbbbPkmz9hJu7wxcJ9PQKjvpXJAFg5h7y2vppMqLABTXUoo6DYIdcPNtvej/T67FWXRwVUp+aodMVOYut3iqwknmuGhOOddTv2mcii8bAhWkjoJWg0kS6xen3XeIXTjBlTcG5GrmZrROZmtip3qps7K5j+tpzFkQM0cvi3VaXJYVCoKr9Mm6v86+N1Xnk/WVCL1WUfiMZbHy01G8Xl0FAXIFVKa4tikJdS96BpIKlJ3mPcxYr0OwJKtqaCpgx+atWQh2cGtMcYzpv4dTDSLpCgelcUQCJpxGn5Xcyc6iENUNdqAyK2c9SMedPWf0YpSffLuFAt3Y4W+MtW8EObPyjWzvsoFK+iVc+aUyu04LvcsfdIpMy2e/SE3KQWbf5DJY6r2MdrFTc7NBuYdaAF5P+B7e9kEEfJXEVMeNuo+vESJB8/ZoRqo2himRT0p9kPcbJP1zCTkfaAndDNiMmHtHEHZlXozFeI6Giyp2g8hD8Pj24TPyf6Nrt/MAP7f//v/Mcz0VavtVxOB86JkwQPn2fhjpFBJ1c51zcxo0yCyMXFP9SXPwdaaK754dwO2dX5+Xe6fqqWFfTQKZ5fQl66oMIn5YIbUWIHy1irN8WFMrFcjATMYpRyygbVh8uAWQXPEXD4PZkxw9ZmmEpp8HHKZmapjUtAgBHEsQxB71GclekzZSo2KhZsegVIME/tEUbLBpyeVg3lStVPeSdKV+8TmvmF3Wi7N+eVHCWRG6oMWcB0/jnV09IPimP2ibDsL9msl51mKvrSuwsNzKa/izwN9NJ2pHFy9KHxpPTZcZK7+ue3aRigkSFgamLbMjD3KnxXW+MDS/VFnGiUWqPoQ3pz2U8BYGEPlPqEf2M+NHlih4lArOBKcXYh+Elb3JSqPWzrOiWKigF9Uy1a7ns1YTvABmGoM+cVMQdFjt6se+fj4OI4fj+XVKN8GIka4bznfnhVjhzwXlS65I9OsWVAOCrnFnzhB7WczOoNQRFHAVJsrfcD4ypN51MnkB0s42ul0HMpicNjR1ox2BePXudZ7y+RNyzfXgBE2XVz9SGsTzsIUl+kWWInjiXiXw33tMHkqsqz890+BFXdKF4s0aZ81dpUgpKQw0PB5KvfYE7eeBoTHFtXPAwZwsgC3utQBGSu6+pEOyI/V/sd6LUcWosKfnbA++KQNM1h7h5FK0BnS1uEmfBRl0iUlT8sQ2GVoUTIHliXq09hZBm5XVOBh3NX4pAFMaDwC69NOr0YzqN2EjZrdjVKNeRJiSIEIUnaJO8f+DgipUjBOdXLw08j9/0oXHpQ6YeEyI6qYXoUJ2Jl9dVBytMy1C1KOCZpbYLT8GOo3bDBMjnpw+oIgnlMJTdqGnA/hGeVprbSzUh2ziEESar4af+tTZWE6kVECsswlGvHnDj3nZpeISzqSimw7/GxXg3EwKIscZYTbQB3rjsMb2/qIV+ryN7TCuXSl9GioTsUMM7u1j0nDew8IC6w9HmevG7q0gVsHksYARTkiGGWF+wTjVDNNwjrgUWyd/frHP/6xwlrOnyoyg2hIN2X6PspZ5mphtUubiuEZxS4LIzuS7iNin3kf9K+RozKJOTxjRqk1MGG4C9QJnvYWNzHK8G28TSww5zU28nTur43N+j2HAZxUkltSU7rEyLzY1aitQKqpk0+Hojm3ZtxiFgaDwC59jfkyzH76s5W3EUy2YneBj6NwaxQ6ORESDVCalrI1rVq9r9ZQx57BXIOlAI7JgWxcG8y7NAIhcstSbUMv63cBCUy/UUS5qCUEi/kLjJQVOnw0kgg2TR5Xoi8xBtmQ7Bf70HHXSYpjqIEMG83bT+bNdWuh4RtV/W7Xb2YA//HHH/XG/c1Yx24uzjtbMPrgSD4VQ+hT1LtWOH1cAs4GOtha4p9bvPc3b9v5nct3+23vjUkTTf6TwjyO6z5hcpz2OFdhJHT3+Z7JsRLvKBNe5pmpO4GVevEKNVAKbaOpBltw7xjCp4tpD8nsAtMtUEfzG5zCTsOdsOCt59noe6PN2CPn3jFnXFHlS+moYWltcyFAHJLNtMWm+vkIjqkDHLHJBhO4DKUSjGsJzKDoz1ykWncra6WNtWU1qeQ1LBkRQ3feWhHXPVts+wYcMdRVh5LwGDoZch068o4jHvLIbD4OGFXz6pdtZg1xqKMDZ9VWmbU3xzbMuFOrDSXlY07Q1RFa54P4SuOuPG6O477mqhtQw6n73ZulqKKfYv3zLE/Ehzm2QCO88agNOghwztjYEx4B5P2qxh3NkAPrxdigVvmlqMXSEXusfccNKeJKijCxyA8B/1FFAxuSWuUdnDauEpfdmcWuBeS1BkJ9m9huhTr//PmEvYmVxjVM6QF7rHPYXj/rKpvzOHo1FT/KE4YmRlmvuVk6Bz3DzzMfCNCkMCWIjwDpbKsfs0xaWKLlIeu3wDefDfI+8WhFkRQzlifnwWGtfIqAPBxSPMWWlEnhnae99nUV2SJ+jBJnVXzAswfBJJSD8SkLFYJLfOLaWea+iT+2tJcslpFzOiswynDput59SynfZQwZKYFxcqlTeC7o2jtlZ59OX+Yiz7PTu0MISI6gB0PHRqgdZff6gH6U3nZBVKNrKoUsRRNQwNlxNLLZG+t39B6NQXnmlM5OgYUvbLSH4gNKB1Qy6csZI4b9AWZT9kVDD5br3UXWG2piwLlJ2Q89nWe7TFV4LTaK1E4k2Mcwl2CCU3cIWheLSBfaJmZn6T7/JHOdPWu57YLU7Vjfn/rqMqgxp+UiEokOKPJcfI8xPsxusIIqNmij5E+uZ7nPXfcFXZbb8SXiKouSbf3tO+t238EjXGYlvJPVDhGBwk6nqL6S4dYQ19jMFKoWE+lMEf8AABAASURBVPVplEAhGMlJsU7SjBCVQzluEKrFIQuktNNgp/bxJt249GgUHvL/uT6fPRfl0F+vLTm+0VWQ9DQDQzSUDIa3T3Ph7D/e9KSjlekND3p4DOMC3yPqY/kOBFCCgJm7DCvyKRnHUQcSpkELn532zR9q0n+BEK9guimnrWoU07spc+ObiAa9XBGuZexgw0oleH2x1smxwZPzEzEmMcaPWfejVoVjunFKszCwL2w6AbZG/xbXb2YA+25Guvs3H5Fo3OyufL1vzfe7hXZ9k6/7fLu/Xw2+v/nsit2xenl/bU8iihMaPOBSC1knsZdMFg/xpkRMdeaEUw/IVfLjGADMG24eLlTGEqrginqV2B1dyPRbzzTq5pfBBVNKNSPX1tfFYOc9VYwkF4dXfYWoAcSHWPPq5Rqzo1ZV2J18shZHIlr5wvIVMUjVAE8zWJmbYaWXcyQOYt36Y4GVF6Rng5lJCMuLifR/PnVollU+n0xkJPJcobfnYzkXjhbVwkMlyuOKJuZfMb3BLlPxrpxdyrjMg1zdyCNl01UatoXWURNkw0rQ2soSVZFGbENGztS0wYO+zCy/sFZwn0zeGFJizURT3I7SgwdZB6i3O4qXECI5mDcX81NZs9IEY9xuTKPpNEQ6SUS8Ju3nn3/6cb4m53mcDycuSuduLVE+02R4AjGIiUBzHVLgQxZJCi1b7uUYztHS2q0fXcqOuoVCrVeBV0jHMkq5Qcm5Zv84emsHt2CMIT32gzBzuXutfAwYWvxycLVjVfM4PtKTXasf2kaB9WSeB0cXgIXyN9efa0ReT6Y5zMOVcb1a+HxK3RpM3VpueC3bAuW7dlVU6I4DhdcBjX3ocwLUWqZWmoM6rSlTpZSfv1gwGIagaROX21D/JEk5TvCvPDxYV2sMgRLzH1EnBQfllDdT3fSci+QNiDbWBuvXgFkIF5VpWPeBgcwbYZm6NCY6KIkhK4uN4Ms50dkYmdkWIWBJ4uWmKPI8nOunVVo2CPsZ1A6ngmGPGZoP6eMX5WFg3/d/uskA2JQmfWm3a4fkGK5NfZhxTXVuzQi7IkZx3RYXChXhgSVykkoojtw2qHCb2zEE1E6pfyCvdaS5WatpxmRjYoZsjFY6la+XssoyM//J4EZsmPSpIpoGRU5nCXgl/Sz4ZIb1/7Bpi4IRTCMZbDW0VfTQShIGO0JhCCqmN9rFIxwfz+1dQ0fYmCkONTuxrZbXSFWzj5cI+5iEpy5E7T3N/RPYx642I9jh4b6xbA+iHThduyqMHgdALU1cqsRqcO0AMduA7s6vV8A5SkAlgrUu3gM1maxg6ovGtj02Q+VCXLlrujeZNDo+sNN2RVwQ6fW6dG1/AyKvsTZGhwjQTGDDkY3RMeojUFLHHVupYjHFEAJuow2p8R65Tx4VqhHOFwi2eFCo+/gyC81z7I+VKcOOskttW15zHfJby1RkZLgcocoYHF29WXPxqH4wySjA2+BcMQsjJXIUNMeuRWBqt37We/pED0N0HSzX3pHo3//67Y5BWpfEwVXcvLvtcr++Fei0kSzqwr1TxFwZGB/a/U4Jgvn5RVqpzHuNn/Uoxmk9qNsN65X09cV729xsKEVXIs2YDmTglQ3SufbtikHdpXMkmqDRKJPgOhp2SChAG700aYFoNBUqJJc+gntda3Gt4ESYECbfQ7vHm57WivdQqHwHgbH6oOOtKCQOm1bFJLPWzRaBsLdTGMgpAmngmaRHtvPMY5UBNRglzAU/7GicJ+qU4rKjbIBlhS7xedb6VI2c03wboiqiQccbGuhh0+X9Mf50GxpzfXZUKCOWmZYb3cdjGJ4DKecqct4CR4qx7mghjN9QzAH8FXFtqg+gzlkyoMi+dThQZAC0sL6oIYCX5lADni90cMgAFs1EnZPQjFKqyH7+fM3NywJbU1aBEAt9IPUPVy3Kc9EGQIsidTN2wCdxYT6yMzHPnIqAk3aHEFkcOHaFI38sE5i7W7VHlxH1MKxL3WIo1vlHeWBVnwfsH69PHpnhOTTdnb+vro9KuFU0EzI405hErPLP5eDhVMSJKGNmtfG1hPjIqkcsSOY5ceBCr3RlMOZjQJ4aIZlRlcq+EAdq/0mD+vXVx4/sMpk41T4yjXPhe2HdIJjnhLnRK1RPxDlozBt38LYaCyyl0soFPZOWmwolhIZuEwP27ZyFGIZqDvyHIvbFF86bcW9Y2+eTSep2LWTlN/XcCW9RW1z4DvJJawFex+TlmQtr77XDLKTM8dlH9keICX0lkqrW23s1eL+C4j82PfDZzTZZb9oPZZKZD6vMPyskmvna+sW8xF5XJRgg+KbG3gvsegYSkJMRireEBF4XAZ+O/HaUV90rgP7uXAwttpqUjy8mqD01PlTykJQ+KDGvUwJ0UGTBpzN6mdJdbjcbwtNJV8gYyb8FsXZM0I3X4KB5DehrDyjYf07QJAUff4FIYjf4itVfYu7H4VONYCaqaZGquNKctGGPEy7V+0Ez3k3yWqgO+HepXgRdOLOrc6U8bmhxFrdD0zF887NpAGNjRf1TZtUYDo8bAXRd0qAFBmgD3xsWAy37LWB+Z7f+8E1Xh6ZUExxUdXiJX245uj4uKjFhy9qAVIakPz4q482jPZxT8BQtiGfQCMR4MaKtquckNX8g043jvU2klZsRzgzremJKIrYZRUzVcYzQe5OXdhjA5bQ1ZBiNA6cak1HRG3o5hvAe9Nj9MgLXaJeujbb7xafWTTaOHO7/rsj++1y/XRbohcN8N2jfst986sKW86tZwgSgF16NTR7Sn/+lhOInZl9qcuJdIQE8N+uSHREz6Xxms8OyaGjJZVT8Rqygcw5TsnyqZvCQqZ8VIYnjZIzivtjrUHobNFNCSCGt4Q0nKFE1rGhnTEMeiq+5jkeh4FGrTQjR8SqmWwvahWBNyPotuXQM3ACVgDPQzxQ2dech0yK0g5iFk86sIYhJAMP61ZwNmtyGf314Yl13FfFkGIyuiBhdA33LX4eRsrgqDD8VzSsorRu64a3oOUpoiKahHsjhQV9NkG56WFP9HHxmCPCsjbsMwZ3B6kQJg3bwHiiAYziG4N2oAiY0mxbdnpN/ZTewBP3YXom6nRTEAP1BMNSQay9tDFwSuVN3ff3zJZWW2xcryIjZK58tuAY+ieZptaVKO7GmWW6Zo0yLdLeXUjRXemprlBUxDWAjVbKPuSH38XgoC5Rr374PC9il/iGIlq+jlsjp3H0Z+YMygUJ87A0pUFIoEMp67E3GBa1tlAtENuLY4EpM0UYOJpqANVuc0DsP6tyDHzGwZaCWfOw5NqyA1ZyUb+Eo+0T0Obi5TbNx4YjgyKXP06N2klEV9Yvmd0NA1sCdTb2KaMoa3zWbT3A/XI1AtinHDqOxazB+Rlxj0bhJGtjk3Bp9L1QVh1FCZzkngm9OQ3wJIotdoowoGm/XekSlh8EnYkXUCFwoeOY2rIlxfQq4rMk8LozcX/mnajfssy9Cgc0SSXMCwjZ8QS0Qu1IIPj1ErviHIbFbp3DXJ+0VuvZNqYtTqjpvQUbRTfW+IRmrcOjIjPG13JhBXsEbWE7JhNrUcYhFT7m24oKj7GD6TEKF+wzsmgu9wKgNkdwGcI+t3R+0gQe6rp6L0gtniyKL2GbMGupV6am80pgnL1EPrMx56SvgWjcYfdrvLoTA9MQQKz6my1ntnJPyOlGztCAyE8ottSQBcl1Wmb3usQ6Og3VEA3w8FQMn9rzOk6lLmrapatyvKPoisGy//zbvbz6ZpdUNzkhpk5qW3ggx1wZO1IQmT1dCEuSceLychSumCQawzFwsobIQiCWooxoud2y75UJswCPE7quBa5R3AzgfWesIbaoCMqUiG37ptZGIt5AqMn/JNICBehL4ZLxTaP3B+tcc6YBecDgbuQMIHYzNAPZ0OnMXQ6u02szgs2fY9OY9R7/R9ZsZwB8faPCF5aa4fPteJfhcK+An882UKW+5tD48P/n2TgHuX3/lO9La2kb52JV3bxAsU9R5DGuQenEaQni2yNQHShgvnWOiZNzUOpAFV50WDbpoJ+Epwn7JUB/qZxu96JFxmN7sPliWW0UwNQM55U0lJ9gcDppGtoZMC0pZfWlsZICcNjA70mQDjbFjj+5J/nTYmHv74KYy8C3WF1bCJCE8WeGosARC6f2KUGCtW8gPYu1vDPkyvgBTHFVOFWesmhCNQ92YkaYA1anObpgz/6qZtgZjNgQr1K/JrubUGGty66Rp8U6IbjoVv5AhM/ZBFDE6yMLVmvlDaF7Qph70thGtZz1Vk6YuoSCTI2n+o/fy2GTkyzae0WX2KJktV9lqWR1PedNVEgXzCTkjo+pZwIOWcsVlHLEKTvZ28lyNuW6Me5OM4+HMwNNHgdsGQF10GIBcp1Su2ELzhaYj+wC0f8U15M3PJI2oQOvqMWcniqoLGBj23KoNPWmqZTAEGHBFaK/hOzPx1Rq1jx8/cnF8pdZCMDRS3VEWmzS+S18cOuwt+5Dpr4OZQhrO7BJygLOW9t029880go0evLll8nhV2ihsiHYNV6EY87sZQS4tMxbr3qcIa32z9vdWPA5x8OFIxBey+mr/zNqSk5sswfRcMLloWAoIqqym2tGB/5FLbBwb/t7v2fBFy/Xx51RuLeG3Cq5VBhVZ+KY5DABUGg3qiKKG45dU0dbNtR4HJHDp7Iz0L16MbkiweLBp5TeiJ0XpQvvAMbM2sn1gEPUhPjd+oJph/oU+MrPbYIZGMdBMfpeRR4vqrHGgbR7R1Bf9XhpQtNujNKRdCG05iHuxSDqEIKrFYyjXIsZmOo4GlA61tVGNtoizbqupc9HSyESJEVMo+MYs7f/i8zkNx7APKRi7w5qly+85QTl81+XcUcRUKNevbMCV+bgP3P72WZuzWQo9z3av+OuQ8o2AMIRcXW8rFq3maZ0+4EZHa9Vnla8xDChHNqHRwJVsUsnhQ+WswT1Lp7XKt53fYhtHolDmtDqxY7yWfF3/DmSqNMOibinYzEqBvFzln456l197bi+scGiemBSXMRx6yAju3WwzgCvovpReZogM5uHphF9u2mcnDLD04Yjw+52u38wA/vHjR7258MwQdErfck7n32S8yil69Dm68ZaBYxfEF17ljrJ/6WIAYW8gGWcUo70nTnUJ8rxZ78YnRF+UCRw2Whku05FdMhvQKQaMrFw9mXmwZMhuqKg5218a1pMm1UBftIH5geDxGZsVQT1+uCCnjwq8gUPEXHtuJFlOgDOotbKOg7KQsO1EoPEznXYpXR4ZURCICbN1DPJQSyFzzN3dLkhHSB+7/DBagi8+UfhJzV6K76TKVC0J1f2IoSfSr1FJQQnlj6lIAGa84ZrZewtyzJ7H7MCEIliuLLqRoVhfyaAxITrJ0yzEN6JCC9zaIVFEkifndmyttcdRjSCSa+RwgYsRJj/oHiiGptXd0davtdjOFY1qbjReUHsoEMxoiZgpuKh2vvUZPFER7Uk+67aaAAAFtklEQVTMBzYHgYlrGI8+r8p29ejWzoSVESvWJrGVJ2kZalh1ieiwxY6EnuMQiA0Z3QiFDPiQLU6zyq9GsBMyYNCo47JxCSMCy7s+LG32mvLWoKTJ4e7NylUxrV+dqe5C0ufLK75s4EhMwlx85RUp7U7PeDDPughMFWmEgZWixp/+stea9jp5o8ZqbVlO2/cjM3Y9OqyOc1PC6IRorT3D2kGNVehzRbtHcixM4sZMkhQYlDc7XNpmuclYf48hYrvl+rc7M361gIR/FA9XFEKLaLKKkC8MpySrkk6eqxxr22OuAB8ZbBdcsMpTSOBQrDB/yucw5FvVTl8bJGi01wfOjC86++7vb1wR4Z/JwXc31xt/V9eckdgVxOUaReVQhE8PyN3c4OdcQpkpqYwKOvoe75wc87V1bdDCjVs93rMNxjJt+asPZ4ch8qDQpKsUr0QOav3+XtSV2RfvJzBoEmhIpwFsu8avdlHaDbG/TNLTwfh1KcMGJ+WUuoMZxJc2WEsuddN3ved0C+VeLEaSYASlVJmk/kRiN58eWH5C3dutHe3ItkACHszPYO/8ML5tqtPwRWh2keKhtUZMjo+5iD9CH/YZSq9HxP2b5ujWJdfJvTfUh91r9gbGX97HRpVpFmZvzvI2GGxgKccKT6ymlWPkNae58ybkz3CGR1kGg3PjrMkMjtaH+CoAVww+fqqVCodHJlBvPVo2OwAZ5wSw5Ykcl2ftNcr94zRGOjkH2Bvo1STMY3jvcz6r9GfhmiT0gy4uklfuJo8WTDZIgTRaaVFOq33e2ZBHvBTfQsV1mhQFd2bnoa43VWP/lJT+H79+MwNYNqfYr/6MoYF0w2Q2H0EjF6a9vDfI5RM7W7jW5Jf9wPGt6Y5v3DZZveq9fR8XUWdGbk6yrKOUGIfg2u0VDJ8Gbq3Hij0aO/JLsJp4nz8xlIdFGzXYY9Z7ZsiqWbWGM1qVd61TzZf16y7310BxvmnSTUmHgKVfA8VhZzLRcRurWMm0zMjlmc/iPP1Q0tcKfdLzKo7N3yZztKU7NQABpQNGc0bO006d7b/hwF4Brr9xxsxUNu3Tvaqfy+UQeZgfZmixYS7G1pe5sE4XiVn3L4BbZFMisxmHLaQ9RHZGuV0Fcxh6sUD5cwTrVGOz3jgKVnzR4whKgxtXS9KZLY4RT6nj2G1AN95flkz0lLbNeCSN1Y+w3psrUdTxblIGtLKL2QMSzhRUK1KqANwQSj7nPcZWCNwj9iJIZohv3W9tadT/EmiYE2hqlBD7Br+yWtlQ6lRtX2cwR877kKiP43gDjxDjRTdfOsHTdcV00BQJQ3w4iaGIuNvlHNUuf5JsticKqNBdneq9EMd0g1YJiDVx1gNc5RJa1REAnlolD9cWa80ORZVGkWtirW4GSYAU7dNrKJ0xC/oyWS+sJBpBG5gGHGlvln8p5nErSEfxB1HxDke/JrQ8kwGWzMyjjda5ymslIz+c8osQsChsWqLec9YfUAtt3Z6q07df37ziew9sap1t8QEYfvn4pYTWVa43nJBpguTlEIawgGfJPgaFfs5r5ayXT7RxGLdmcsrb4nXdOJUZIkFrAw72yG9sX7thzZ9mTeTsZkS3xGJqlnc2Es2SaBTU49n9HeLOxviuKxM00jJmQ7OccyIrp76ZSEqDCPQluLTX2yPDd91AoA3YYieOaOv0Z+WXqjVJ7B5o+/tkd/dQ7RI7iBuTfI5oFLoRAwUwhLA6Zbu0GdKehD0YFj28XDDXr1/4Dr/nh/aOTC9ffcZTPtys3bIxYcT/Hu1DMMh1uwoZPt7dq/cvC/TPP3/S9qP70jlVPAKO+rHjIyjMpjPFfJBRGB0cRauDSGqKO9dLZn5Z3uUnnMulD9fG/Myt2Up9oHesEBSDhToqed1kj3eDqMYWu2ABWTywk6WJblF5uF7W76NGuLY2KU1YtYhuH2teuc3573H9/wAAAP//ldGKjQAAAAZJREFUAwCizbvigUJL1AAAAABJRU5ErkJggg==","media_type":"image/png"}}]}]},"uuid":"60ebd8f6-adb3-407b-91d1-1e38ffd0bd8f","timestamp":"2025-12-20T05:57:20.522Z","toolUseResult":{"type":"image","file":{"base64":"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ZU+B/uyzz+JPktPyuuuulcdkvhqnqBBi7NixixcvHjp0qDHMrr32WukhvOqqq0wI5OujK4cPv2DIkNOYNyv4lltu+c1vfpMsGnff/fPBg081T6FH7Ny5g7yF0iCn2x966MHevXuzA3HmmWfu3bs3MzOzRYuWl112qbHGV6xYkfD65cuXr169um/fvmQtyzODBg0yv7777nvG+i0rK/v2229r1qzZqlUreeb8889fvHgJ+Z8nT55MLlw6b+zYhQsXygM5//kPf/gDuTft1NH1ZIVKy7Bp02Zku1566aUJY5ibmysPyLNtT+GmAYV///vfZm2wgXKeHLDM89ya5G/atPHTTz8jNy+ViDzpbdfVdN26tazCvPXWmyY3Nm/eTN715s1bnHxyH7kxdd++/W666eann/5f6K5QDMeNG0duYTKMmTcGMXDgQDrDvLEGMx5RVLQHL14CAAAAAAAgHfje1gAbyIX45ZdjjCOxV6/eZLOR+UfHTz/99L/+9S/mLa+dM2e2nDdrtssyliHxzTfffOZxzTXXyFWdU6d+neKhZ511pjm+55573n33XeZNuKW7pH1Vr169Vq1aLl++ImXcGbma409S5H/1q1/Fn3/nnXfoWcwz0qZNm16nTm3mLX4mJycZrmQfmsm6FMLpp59OpjId33LLrb/61T3y/A03XE8GsNximkLr1q2bPH/22WfbD7rkkout1P2S7GrmrXYmz600R3v06FGjRg17NriEImMMyI0bA8utTzjhBPM4m/Xr10sDuGvXrrLUior2Dhp06v79xcyd473017++V145fPj5jzxyEHt9k4dfHmzYsIEMV2mNd+jQ4eOPP5bnzzzzjHgDmBgxYsQLL7xAYxA0NkFfH3/88T/+8Y/yp3vv/bU0gO+44w6T0tdff4MBAAAAAAAA0oDKNoBXrlxZXh5lnjuODE7muXx/+tOf1ahRU24pPGXKZLnNOS/BAAAQAElEQVSMli7o1avXvffeK52l5eXKQs7Ly5MHEyaMlys/ib/85S/33XffkiVLxowZQz5JMplSR6NpU7WF8rp166T1S+zYsZMM42bNjtNRXcUOHvK1XnDBBYsWLQqdJ6ue0mKOp06devbZaqfoPn1OHjly5Omnn2YuJhtPWr/MW3JM3uyaNd2l2glnR4eoVq1aXl6+PCbrVFq/zHOzT548pV+/vsyzwPv16xe/zrm0tJTiJi3DijzLRk5Np9IkS5uc840aNQwF0qXLiRUOzDXXjT+5Ro3qzz7rr901MWzTpnX8jVT6odGHF1988Ze//KWsNnSLHNe4+OJL5K808vLgg5j/DAAAAAAAQFpQ2Qbw+eefb3aNatq02ccfjyCDjXkTm//73/9u376deUtGX375FWnyJYTsH7KCnnjiySFDTiPHozxJ3stOHj/96U+/+mribbfdZu9ObEM+ZOnmJZYtW27/RKbRAb2+NmRpS9/1jh07ZsyY8cUXo7/+emrCTaR37dptb/hM1rsxgGvVcpe5Nm/e3PxKQdn3rl69qmZNNV+3UaNGqc17+4VSodTNnDlDGsDM27Aq4e1kA8sRB8p/mc/y/NixYy++WDmWzz333PhF2hkZGY8//picgp6Q+NXaKTjjjDPMcX5+gZnRbUN2PoUZ2kY74brlt956iyqYPP797/9IfmNTu6iqSGc1AAAAAAAA4Jjn+5wCvXbtmldeeYUsVfl1+PDhzzzzzPHHH//RRx/ZKznlxFpjshrINqNbTjml/x133Nm+fXvjGWbeBr/PPPO/H/3oioTP3blzpznOyjqsHDjzzDPtXaBTUFZWGvxaFrpg7Vp/faycHW2QYwSSAz7OuI6Z5zu1f7L9sUVFiUcHyLpu0aIF80YZzjrrLOMlLioqmjlzpjxOOMGbjEwzGME8z2o0GiWrOH7ZcEWwBy8or3bvTpBqIWLxL5FavHhx/JX/+Mc/yWKXFjgNAdgbaz3wwJ8ZAAAAAAAAID2o7F2gQ9StW88cS7vruuuuMybTJ598QvZw27Zt27VrF28xHnfccXTL2rXryIQmx2///qeQ989YRCee2C3ZQzdv3mzsq9DOzHfddfc7Hm+//TY5qFkl8uGHH5rjgQP9nbHIH2smbFPqjAFs235mSy3mvW9p794iedy69fG2/dmnj7+19YIFCxNG44033jTHDz74oO1PlgwYcEqPHj1CJ+kpJ5xwgjwmHzK5iGXBvfTSS+yQ+PDDEeb42Wef7dmzR/yfmQBvk9D9Tj7e0aO/kMdkBpv3PK1cuXLZsmUMAAAAAAAAkB58bwZw7dq177zzjmHDzjNnRoxwNzc68UR/pSjZhNLMe+ihh+I9wCNHfjzG46uvviIf6fr16/70pz+tW7dO/mrv5xTP4sVL5EF+fsGLL74krzzzzLN+8pMfd/OgaGzZsoVVIrZZThH46U9/SrGqVavmRx+NMGk37/hl3v5S5viBBx5o1KiRfDcvsWiR8oJS6l5//fW8vHzyxP7lL38xO2nv379/6tQpCaPx0ksv7tu3Tx7TXR988MG9994rzeB69erdf//9zz2XYI4xeeDNDOft27fPnz+fuTs/N7388svZIbFu3VqKpDy+8cYbjXX961//eoXmqaeerHiA9913f/xJvP0IAAAAAACAtKKyp0DPnj1b+uhCK0LJwStNsnnz5pvtfx977LFFixbV84gP6osvRg8bNox5/s9p06bNmzevTp06zZopt+3q1asTOgMlDz/80PPPvyDt3v79+5ExSRGw/aiTJ0+p/KWhr7zy6s033yyPyQC+8847bRu+vLxc7v8sGTdunDEvh3swb+nskiVLHnnk4RdeeFHeS27SefPmmo2jJCleKVxSUnLHHXeQ01V+zcnJudmDpWThwoU0VCHLtEGDBhMnTty9ezeZzQe17jfEiBEj5KpjaYfv2rWLCsi8OJpS9Mc/3lfx0DZu3Eh1z56kXVS0hx7BAAAAAAAAAGlDZXuAyQxzPOyTpaWlP/rRj+Txyy+/ZAxXsnw6deokrd94a/Zvf/vbzp3qRT5kGnXv3t3sI+VtkfUES86ECV/9+Mc/NmFSfGzrl4yl66+/jlU6lCJy2JqvtslK5uUVV1xhe4DHjx+/devWhOF89dXEn/zkDjvH7KAeeujBZ555hiVn7Nixv/rVr+KX1xqWLg1PG6ZnmRXCzNupi0YxDsf6Zd5K41GjRpmvNWrUsK3f//zn31RM7GC477777Dcbv/ba6wwAAAAAAACQTnyfa4DJGtmwYcPYseMGDx5szCey8a644srQBs7kYLzoootCt2/atKl3715Tpky2rRrmvc2IzOm33347/ollZf6Vn332GdnA27fvsC8gq++dd94dPPjUUJiHTywWtb+WlJQmvOy3v/3t008/TSMC9sktW7ZceeVV06dPt0/SNf379586dSp5Mq1gS+TBp59+Qg5kM0Ag2bdv39///o+KvIyXcu+ss86iwEPjDpQtlD9nn31W/JLsyy67bOLESfb1FMPf/e53cjp0Qkye2Om1j2+77bZXXnll27bt9l309dJLL33sscetWJWxCvDtt9+awKmgH3roYQYAAAAAAABIJ3heXg32g6R27Vp9+pyclZU1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","type":"image/png","originalSize":124777,"dimensions":{"originalWidth":1280,"originalHeight":720,"displayWidth":1280,"displayHeight":720}}}}
{"type":"queue-operation","operation":"enqueue","timestamp":"2025-12-20T05:57:30.030Z","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","content":"It is meant to be a polyfill for https://webkit.org/blog/17660/introducing-css-grid-lanes/ but the screeshot does not seem to show it working, fix it"}
{"parentUuid":"60ebd8f6-adb3-407b-91d1-1e38ffd0bd8f","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01BXwnd6s3pR8hFdfJFTBNSb","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"I've successfully taken and viewed the screenshot. Let me describe what I see to the user.\n\nThe screenshot shows a demo page for a \"CSS Grid Lanes Polyfill\". It has:\n\n1. A dark-themed header section with:\n - Title: \"CSS Grid Lanes Polyfill\" in a purple/blue gradient color\n - Subtitle explaining it's \"A polyfill for the new `display: grid-lanes` CSS feature, enabling masonry-style layouts in all browsers\"\n - A status indicator showing \"Polyfill active (0 containers)\" with a green dot\n\n2. Below that is a section titled \"Basic Photo Gallery\" with:\n - Description: \"The classic masonry layout with auto-fill columns. Items flow into whichever column gets them closest to the top.\"\n - A code block showing CSS:\n ```\n .gallery {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 16px;\n }\n ```\n - The beginning of what appears to be a photo gallery section (cut off at the bottom)\n\nThe page demonstrates a polyfill for CSS grid-lanes, which enables masonry-style layouts.","signature":"Er8JCkYIChgCKkBCC2TnxqUy1hyM0aighsBJQvlQxwSz9uvaOjhARC7XSMVvy+TmfH+NPRcCiuHigJYgcmsF5C6vd8BldIsPAIvKEgyZl+l52bkJvmSpGVoaDIoGDU9M8R8B3caPMyIwZWg5ogxp+zdKzLTTfsFMTgQ1E7IYlHUfT8mr6cuI4aYxpISxVMbfP7ZRkFBGw6JeKqYIbHTl8zn0pZ14LTWZcM4sk5TnpiS08Ik9i02RiZUFivGUudOcX8W5gDlJ3U5/fVew5ckHv7JSo9Oar7HG7an8H9r10VMegLRVztq85zeFrJhE44ots4RUhr2JFxXChY+Y1GSefJ4AE2sek8FnWcp4m97GkfwRvy0ph8hxi/z1vU/+AunhNkyrk/OGh9fkaoleVreZCCOnsfYTWDPkbOuqodq1rX36c3NgIQZ2W+LnIiuU2qK6r5YuY75EevaymlBLYEMtihR5nGB12Ljg7GkVMhpIZ4Qo7j63rFPW5JhRV5PUkX3KMwDoAESuV9fCF0ChIlIdM50/aSzckuzVL9zjKxmk5Fk2DoGbpaNGLrpFM5SeO84X89LOFtIuHIPGllnQMZm2CJJLNoDmGZ/IafBUIVQ9hS8hXbmhd83q1UweRLyitd1mgKN1lUMDoARImQdP7xb96zI7D58fWP9547sizo3NrtC2Ez5tYVPs9CLP/ebH/V+RzgBSTHuzp3SLcb4ci5x2g73zB/kxluDLTIT9gKQtK1rpRO2LKvnvdbHymxVvv2u1u3hxUgUReeuLCqWSZtw4bixxhn0oXO3vL/hXr3D+w4TWY72EI08ddvyQjXJ7l4WmQ+eL/pl8uuy+u0t3CCXB/k7lCJYtET5LmHlWm/4lIjlSa/V0SeqipFSqYvCF9p5cmWvpOyi+c2Pb3QT+IYsh7yUNscJSrQEVh9VbUhaq+EHStyCcdmFg7mj6De4gmKP5Z4T3zmxKA6NR2kwiKh42CMIVd74qK+sMLV0tnbqvjXY8ofM4Wp5JdUAu+JiDVEdka20poYZJzvBncanxtgO/CDrDv0nqfAeQqZpxPH3z+ouksbXw+7aTdy2Rs8CH4CqoUZbCAuX3ouT+3pH939H7gZQ8jBgzX0q4ujf9LQEwx4CBuZTdGQa1qDI57mAieuXTzDFVpZodxqU9L20pHWV7EdZmCnUlXCIOqaA8oRpwOX/Mb4CjdfHpTBhtTg8WC5uH/gdExF51WCcxUct8Xd+NS5KurRCkp1c6Zu+kSWf5ww/glAc1BLAxVcjQZeamM9JPWrF3JBUvTRC6X9Rco9M5lXwS4Y0sltDl6+dd0LNwEtaqcaUDekhW4d8RWNgIBw0Apaiw5WcNjpAp27iXhM2crIf/OxCa1QG/85CnxNrTm6wISimRZOWIAH4e61iZp1xJxZ0gaPlaEhc6cy5fi6SZoE9cuViu6ROFbLruhy8x26vJgcDhgUih7XR89pCYJk42bRcskeMOt4Yj8N2eNr3bqNRgSjfe9XieQX5YTLo2xcC672BXhqbGpEAzUERKKiweUScDTsTH9ZYx6xBpzibWU4o5iWO6PTlz/ndZi8glz+usF2neLb80midaj4+OY29JoRG0QiCXQhJTOALEUE26wCK6GAE="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":1435,"cache_read_input_tokens":19653,"cache_creation":{"ephemeral_5m_input_tokens":1435,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRbf5uLbjy5YdAka6ye","type":"assistant","uuid":"24e028a0-a55d-4388-ad29-77526b631b96","timestamp":"2025-12-20T05:57:30.099Z"}
{"parentUuid":"24e028a0-a55d-4388-ad29-77526b631b96","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01BXwnd6s3pR8hFdfJFTBNSb","type":"message","role":"assistant","content":[{"type":"text","text":"The screenshot shows a demo page for a **CSS Grid Lanes Polyfill**. Here's what's on the page:\n\n**Header Section:**\n- Title: \"CSS Grid Lanes Polyfill\" in purple/blue text\n- Subtitle: \"A polyfill for the new `display: grid-lanes` CSS feature, enabling masonry-style layouts in all browsers\"\n- Status badge showing \"Polyfill active (0 containers)\" with a green indicator\n\n**Basic Photo Gallery Section:**\n- Description explaining it's a \"classic masonry layout with auto-fill columns\" where items flow into whichever column gets them closest to the top\n- Code example showing the CSS:\n ```css\n .gallery {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 16px;\n }\n ```\n- The beginning of a photo gallery demo is visible at the bottom (partially cut off)\n\nThe page has a dark theme with a sleek design. The polyfill status shows \"0 containers\" which suggests either no grid-lanes containers are currently being processed, or the gallery section below the fold hasn't been detected yet."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":1435,"cache_read_input_tokens":19653,"cache_creation":{"ephemeral_5m_input_tokens":1435,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRbf5uLbjy5YdAka6ye","type":"assistant","uuid":"d7df6a50-4a43-41a8-bd16-dce38d78f49c","timestamp":"2025-12-20T05:57:33.683Z"}
{"type":"queue-operation","operation":"dequeue","timestamp":"2025-12-20T05:57:33.769Z","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9"}
{"type":"file-history-snapshot","messageId":"9acfeb7e-d69d-45ff-8148-4cf63865d77c","snapshot":{"messageId":"9acfeb7e-d69d-45ff-8148-4cf63865d77c","trackedFileBackups":{},"timestamp":"2025-12-20T05:57:33.787Z"},"isSnapshotUpdate":false}
{"parentUuid":"d7df6a50-4a43-41a8-bd16-dce38d78f49c","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":"It is meant to be a polyfill for https://webkit.org/blog/17660/introducing-css-grid-lanes/ but the screeshot does not seem to show it working, fix it"},"uuid":"9acfeb7e-d69d-45ff-8148-4cf63865d77c","timestamp":"2025-12-20T05:57:33.782Z","thinkingMetadata":{"level":"high","disabled":false,"triggers":[]},"todos":[]}
{"parentUuid":"9acfeb7e-d69d-45ff-8148-4cf63865d77c","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_0164x7srgVkvdHanrshbMLYt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"The user wants me to fix the polyfill so it actually works. Let me first read the demo.html and the polyfill code to understand what's happening, and also fetch the WebKit blog post to understand what CSS Grid Lanes is supposed to do.","signature":"EpMDCkYIChgCKkCj6RzxTyN/IWe/Y+mDHm0nerNZ5RjrQlANA3R8WCpTjmLL5SCkMiAC9MYs8KghnYCk/IYjNDZrliZuNTq0tHf/EgyvSH3ke/3736U6S7IaDJ8UaoqiKOIpgDBt0CIwDld96zIY4Coey7jyCXlZXOTTddgpcB5U9w/cY+saGXBLhpybL3ST5E0VuhDqF0JVKvoBd2ibld5g4pu15lsvv/KSdIWGKYEkFzfiTXX7o46uT773g9C7/HWyOl1DTvaZARqeTkihxatIUUfNahhiMtNGOaRX+DhZKQ48LIAk4ALH8KgWlwOeldJ/LSJZPElz/bScWXxM2u6cBPGr6P+PydhAF3jO4KoFlueJ8WU+zw4aZRH0Gt3JjDXavATtkuZtMEBrjDFzmybN+uA9OLO0qN8Ho6NLMDuldEBphKUsGwttsNOFdp/YL4WepOiXrL1rn2r12j94OeEUjdEYMktQwCB7t0kxwegQbn7jFPxHBR9bFH13aShTHFazaAhbR3v5CuAEHaXlTZ5osjA2pBgB"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":616,"cache_read_input_tokens":21088,"cache_creation":{"ephemeral_5m_input_tokens":616,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRcdq2KLZDaLXL3SW24","type":"assistant","uuid":"86454311-c035-4593-bfa9-c0c461423054","timestamp":"2025-12-20T05:57:37.748Z"}
{"parentUuid":"86454311-c035-4593-bfa9-c0c461423054","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_0164x7srgVkvdHanrshbMLYt","type":"message","role":"assistant","content":[{"type":"text","text":"Let me read the demo.html and polyfill code, and fetch the WebKit blog post to understand what needs to be fixed."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":616,"cache_read_input_tokens":21088,"cache_creation":{"ephemeral_5m_input_tokens":616,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRcdq2KLZDaLXL3SW24","type":"assistant","uuid":"5b752dea-98fc-44a3-8397-59b829dab72e","timestamp":"2025-12-20T05:57:38.242Z"}
{"parentUuid":"5b752dea-98fc-44a3-8397-59b829dab72e","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_0164x7srgVkvdHanrshbMLYt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PU62y3o1LH283nvEgi2G1P","name":"Read","input":{"file_path":"/private/tmp/files/demo.html"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":616,"cache_read_input_tokens":21088,"cache_creation":{"ephemeral_5m_input_tokens":616,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRcdq2KLZDaLXL3SW24","type":"assistant","uuid":"55e99881-a2c4-45e5-8855-1d2c26b436fa","timestamp":"2025-12-20T05:57:38.602Z"}
{"parentUuid":"55e99881-a2c4-45e5-8855-1d2c26b436fa","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_0164x7srgVkvdHanrshbMLYt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01QFxhkeXtKXdHNdceDpKSXw","name":"Read","input":{"file_path":"/private/tmp/files/grid-lanes-polyfill.js"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":616,"cache_read_input_tokens":21088,"cache_creation":{"ephemeral_5m_input_tokens":616,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRcdq2KLZDaLXL3SW24","type":"assistant","uuid":"05f00245-b50f-4683-af80-4938c6ee6314","timestamp":"2025-12-20T05:57:39.015Z"}
{"parentUuid":"05f00245-b50f-4683-af80-4938c6ee6314","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_0164x7srgVkvdHanrshbMLYt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01SWW6gND4p4e7wNEKZ33hXE","name":"WebFetch","input":{"url":"https://webkit.org/blog/17660/introducing-css-grid-lanes/","prompt":"Explain how CSS Grid Lanes work, specifically the display: masonry or grid-lanes feature. What CSS properties are used? How does the masonry layout algorithm work? What are the key CSS properties like masonry-direction, masonry-fill, etc.?"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":9,"cache_creation_input_tokens":616,"cache_read_input_tokens":21088,"cache_creation":{"ephemeral_5m_input_tokens":616,"ephemeral_1h_input_tokens":0},"output_tokens":331,"service_tier":"standard"}},"requestId":"req_011CWHRcdq2KLZDaLXL3SW24","type":"assistant","uuid":"17cf83d3-b534-4062-944e-fca652928df1","timestamp":"2025-12-20T05:57:41.020Z"}
{"parentUuid":"17cf83d3-b534-4062-944e-fca652928df1","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PU62y3o1LH283nvEgi2G1P","type":"tool_result","content":" 1→<!DOCTYPE html>\n 2→<html lang=\"en\">\n 3→<head>\n 4→ <meta charset=\"UTF-8\">\n 5→ <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n 6→ <title>CSS Grid Lanes Polyfill Demo</title>\n 7→ <style>\n 8→ @import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Space+Mono&display=swap');\n 9→\n 10→ * {\n 11→ box-sizing: border-box;\n 12→ margin: 0;\n 13→ padding: 0;\n 14→ }\n 15→\n 16→ :root {\n 17→ --bg: #0a0a0f;\n 18→ --surface: #16161d;\n 19→ --surface-hover: #1e1e28;\n 20→ --border: #2a2a35;\n 21→ --text: #e8e8ed;\n 22→ --text-muted: #8888a0;\n 23→ --accent: #6366f1;\n 24→ --accent-light: #818cf8;\n 25→ --success: #22c55e;\n 26→ --warning: #f59e0b;\n 27→ }\n 28→\n 29→ body {\n 30→ font-family: 'DM Sans', system-ui, sans-serif;\n 31→ background: var(--bg);\n 32→ color: var(--text);\n 33→ line-height: 1.6;\n 34→ min-height: 100vh;\n 35→ }\n 36→\n 37→ header {\n 38→ padding: 3rem 2rem;\n 39→ text-align: center;\n 40→ border-bottom: 1px solid var(--border);\n 41→ background: linear-gradient(180deg, #12121a 0%, var(--bg) 100%);\n 42→ }\n 43→\n 44→ header h1 {\n 45→ font-size: clamp(2rem, 5vw, 3.5rem);\n 46→ font-weight: 700;\n 47→ background: linear-gradient(135deg, var(--text) 0%, var(--accent-light) 100%);\n 48→ -webkit-background-clip: text;\n 49→ -webkit-text-fill-color: transparent;\n 50→ background-clip: text;\n 51→ margin-bottom: 1rem;\n 52→ }\n 53→\n 54→ header p {\n 55→ color: var(--text-muted);\n 56→ font-size: 1.125rem;\n 57→ max-width: 600px;\n 58→ margin: 0 auto 1.5rem;\n 59→ }\n 60→\n 61→ .status {\n 62→ display: inline-flex;\n 63→ align-items: center;\n 64→ gap: 0.5rem;\n 65→ padding: 0.5rem 1rem;\n 66→ background: var(--surface);\n 67→ border: 1px solid var(--border);\n 68→ border-radius: 2rem;\n 69→ font-family: 'Space Mono', monospace;\n 70→ font-size: 0.875rem;\n 71→ }\n 72→\n 73→ .status::before {\n 74→ content: '';\n 75→ width: 8px;\n 76→ height: 8px;\n 77→ border-radius: 50%;\n 78→ background: var(--success);\n 79→ animation: pulse 2s infinite;\n 80→ }\n 81→\n 82→ @keyframes pulse {\n 83→ 0%, 100% { opacity: 1; }\n 84→ 50% { opacity: 0.5; }\n 85→ }\n 86→\n 87→ main {\n 88→ max-width: 1400px;\n 89→ margin: 0 auto;\n 90→ padding: 2rem;\n 91→ }\n 92→\n 93→ section {\n 94→ margin-bottom: 4rem;\n 95→ }\n 96→\n 97→ section h2 {\n 98→ font-size: 1.5rem;\n 99→ margin-bottom: 0.5rem;\n 100→ color: var(--text);\n 101→ }\n 102→\n 103→ section > p {\n 104→ color: var(--text-muted);\n 105→ margin-bottom: 1.5rem;\n 106→ }\n 107→\n 108→ pre {\n 109→ background: var(--surface);\n 110→ border: 1px solid var(--border);\n 111→ border-radius: 0.75rem;\n 112→ padding: 1.5rem;\n 113→ overflow-x: auto;\n 114→ font-family: 'Space Mono', monospace;\n 115→ font-size: 0.875rem;\n 116→ color: var(--accent-light);\n 117→ margin-bottom: 1.5rem;\n 118→ }\n 119→\n 120→ /* Demo 1: Basic Photo Gallery */\n 121→ .gallery {\n 122→ display: grid-lanes;\n 123→ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n 124→ gap: 16px;\n 125→ }\n 126→\n 127→ .gallery-item {\n 128→ border-radius: 12px;\n 129→ overflow: hidden;\n 130→ background: var(--surface);\n 131→ border: 1px solid var(--border);\n 132→ transition: transform 0.2s, box-shadow 0.2s;\n 133→ }\n 134→\n 135→ .gallery-item:hover {\n 136→ transform: translateY(-4px);\n 137→ box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);\n 138→ }\n 139→\n 140→ .gallery-item img {\n 141→ width: 100%;\n 142→ height: auto;\n 143→ display: block;\n 144→ }\n 145→\n 146→ /* Demo 2: Varying Column Widths */\n 147→ .varying-cols {\n 148→ display: grid-lanes;\n 149→ grid-template-columns: repeat(auto-fill, minmax(120px, 1fr) minmax(180px, 2fr)) minmax(120px, 1fr);\n 150→ gap: 12px;\n 151→ }\n 152→\n 153→ .card {\n 154→ background: var(--surface);\n 155→ border: 1px solid var(--border);\n 156→ border-radius: 12px;\n 157→ padding: 1.5rem;\n 158→ transition: border-color 0.2s;\n 159→ }\n 160→\n 161→ .card:hover {\n 162→ border-color: var(--accent);\n 163→ }\n 164→\n 165→ .card h3 {\n 166→ font-size: 1rem;\n 167→ margin-bottom: 0.5rem;\n 168→ color: var(--text);\n 169→ }\n 170→\n 171→ .card p {\n 172→ font-size: 0.875rem;\n 173→ color: var(--text-muted);\n 174→ }\n 175→\n 176→ /* Demo 3: Newspaper Layout with Spanning */\n 177→ .newspaper {\n 178→ display: grid-lanes;\n 179→ grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n 180→ gap: 24px;\n 181→ --item-tolerance: 1em;\n 182→ }\n 183→\n 184→ .article {\n 185→ background: var(--surface);\n 186→ border: 1px solid var(--border);\n 187→ border-radius: 12px;\n 188→ padding: 1.5rem;\n 189→ }\n 190→\n 191→ .article.hero {\n 192→ grid-column: span 3;\n 193→ background: linear-gradient(135deg, var(--surface) 0%, #1a1a2e 100%);\n 194→ border-color: var(--accent);\n 195→ }\n 196→\n 197→ .article.featured {\n 198→ grid-column: span 2;\n 199→ }\n 200→\n 201→ .article h3 {\n 202→ font-size: 1.125rem;\n 203→ margin-bottom: 0.75rem;\n 204→ line-height: 1.3;\n 205→ }\n 206→\n 207→ .article.hero h3 {\n 208→ font-size: 1.75rem;\n 209→ }\n 210→\n 211→ .article p {\n 212→ color: var(--text-muted);\n 213→ font-size: 0.875rem;\n 214→ }\n 215→\n 216→ .article .meta {\n 217→ font-size: 0.75rem;\n 218→ color: var(--accent-light);\n 219→ margin-top: 1rem;\n 220→ text-transform: uppercase;\n 221→ letter-spacing: 0.05em;\n 222→ }\n 223→\n 224→ /* Demo 4: Explicit Placement */\n 225→ .placed {\n 226→ display: grid-lanes;\n 227→ grid-template-columns: repeat(5, 1fr);\n 228→ gap: 16px;\n 229→ }\n 230→\n 231→ .placed-item {\n 232→ background: var(--surface);\n 233→ border: 1px solid var(--border);\n 234→ border-radius: 8px;\n 235→ padding: 1rem;\n 236→ font-family: 'Space Mono', monospace;\n 237→ font-size: 0.875rem;\n 238→ text-align: center;\n 239→ }\n 240→\n 241→ .placed-item.special {\n 242→ grid-column: -2 / -1;\n 243→ background: linear-gradient(135deg, var(--accent) 0%, #4f46e5 100%);\n 244→ border-color: var(--accent-light);\n 245→ color: white;\n 246→ }\n 247→\n 248→ /* Demo 5: Brick Layout (Horizontal) */\n 249→ .brick {\n 250→ display: grid-lanes;\n 251→ grid-template-rows: repeat(3, 100px);\n 252→ gap: 12px;\n 253→ height: 350px;\n 254→ overflow-x: auto;\n 255→ }\n 256→\n 257→ .brick-item {\n 258→ background: var(--surface);\n 259→ border: 1px solid var(--border);\n 260→ border-radius: 8px;\n 261→ padding: 1rem;\n 262→ display: flex;\n 263→ align-items: center;\n 264→ justify-content: center;\n 265→ font-size: 0.875rem;\n 266→ white-space: nowrap;\n 267→ }\n 268→\n 269→ /* Demo 6: Mega Menu */\n 270→ .mega-menu {\n 271→ display: grid-lanes;\n 272→ grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));\n 273→ gap: 32px 24px;\n 274→ background: var(--surface);\n 275→ border: 1px solid var(--border);\n 276→ border-radius: 16px;\n 277→ padding: 2rem;\n 278→ }\n 279→\n 280→ .menu-group h4 {\n 281→ font-size: 0.75rem;\n 282→ text-transform: uppercase;\n 283→ letter-spacing: 0.1em;\n 284→ color: var(--accent-light);\n 285→ margin-bottom: 1rem;\n 286→ padding-bottom: 0.5rem;\n 287→ border-bottom: 1px solid var(--border);\n 288→ }\n 289→\n 290→ .menu-group ul {\n 291→ list-style: none;\n 292→ }\n 293→\n 294→ .menu-group li {\n 295→ margin-bottom: 0.5rem;\n 296→ }\n 297→\n 298→ .menu-group a {\n 299→ color: var(--text-muted);\n 300→ text-decoration: none;\n 301→ font-size: 0.875rem;\n 302→ transition: color 0.2s;\n 303→ }\n 304→\n 305→ .menu-group a:hover {\n 306→ color: var(--text);\n 307→ }\n 308→\n 309→ /* Utility */\n 310→ .demo-container {\n 311→ background: var(--bg);\n 312→ border: 1px solid var(--border);\n 313→ border-radius: 16px;\n 314→ padding: 1.5rem;\n 315→ }\n 316→\n 317→ footer {\n 318→ text-align: center;\n 319→ padding: 3rem 2rem;\n 320→ border-top: 1px solid var(--border);\n 321→ color: var(--text-muted);\n 322→ }\n 323→\n 324→ footer a {\n 325→ color: var(--accent-light);\n 326→ text-decoration: none;\n 327→ }\n 328→\n 329→ footer a:hover {\n 330→ text-decoration: underline;\n 331→ }\n 332→ </style>\n 333→</head>\n 334→<body>\n 335→ <header>\n 336→ <h1>CSS Grid Lanes Polyfill</h1>\n 337→ <p>A polyfill for the new <code>display: grid-lanes</code> CSS feature, enabling masonry-style layouts in all browsers.</p>\n 338→ <div class=\"status\" id=\"status\">Checking support...</div>\n 339→ </header>\n 340→\n 341→ <main>\n 342→ <!-- Demo 1: Basic Gallery -->\n 343→ <section>\n 344→ <h2>Basic Photo Gallery</h2>\n 345→ <p>The classic masonry layout with auto-fill columns. Items flow into whichever column gets them closest to the top.</p>\n 346→ <pre><code>.gallery {\n 347→ display: grid-lanes;\n 348→ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n 349→ gap: 16px;\n 350→}</code></pre>\n 351→ <div class=\"demo-container\">\n 352→ <div class=\"gallery\">\n 353→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/300?random=1\" alt=\"Photo 1\"></div>\n 354→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/500?random=2\" alt=\"Photo 2\"></div>\n 355→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/350?random=3\" alt=\"Photo 3\"></div>\n 356→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/280?random=4\" alt=\"Photo 4\"></div>\n 357→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/420?random=5\" alt=\"Photo 5\"></div>\n 358→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/320?random=6\" alt=\"Photo 6\"></div>\n 359→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/450?random=7\" alt=\"Photo 7\"></div>\n 360→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/380?random=8\" alt=\"Photo 8\"></div>\n 361→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/340?random=9\" alt=\"Photo 9\"></div>\n 362→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/290?random=10\" alt=\"Photo 10\"></div>\n 363→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/400?random=11\" alt=\"Photo 11\"></div>\n 364→ <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/360?random=12\" alt=\"Photo 12\"></div>\n 365→ </div>\n 366→ </div>\n 367→ </section>\n 368→\n 369→ <!-- Demo 2: Varying Column Widths -->\n 370→ <section>\n 371→ <h2>Varying Column Widths</h2>\n 372→ <p>Alternating narrow and wide columns using complex repeat patterns.</p>\n 373→ <pre><code>.varying-cols {\n 374→ display: grid-lanes;\n 375→ grid-template-columns: repeat(auto-fill, minmax(120px, 1fr) minmax(180px, 2fr)) minmax(120px, 1fr);\n 376→ gap: 12px;\n 377→}</code></pre>\n 378→ <div class=\"demo-container\">\n 379→ <div class=\"varying-cols\">\n 380→ <div class=\"card\"><h3>Short</h3><p>Brief content.</p></div>\n 381→ <div class=\"card\"><h3>Medium Card</h3><p>This card has a moderate amount of content that takes up more vertical space.</p></div>\n 382→ <div class=\"card\"><h3>Tiny</h3><p>Minimal.</p></div>\n 383→ <div class=\"card\"><h3>Longer Content</h3><p>This card contains significantly more text content that will cause it to be taller than some of its neighbors.</p></div>\n 384→ <div class=\"card\"><h3>Quick</h3><p>Fast read.</p></div>\n 385→ <div class=\"card\"><h3>Extended</h3><p>A more detailed description that spans multiple lines and creates visual variety.</p></div>\n 386→ <div class=\"card\"><h3>Brief</h3><p>Short.</p></div>\n 387→ <div class=\"card\"><h3>Standard</h3><p>Average length content for demonstration purposes.</p></div>\n 388→ </div>\n 389→ </div>\n 390→ </section>\n 391→\n 392→ <!-- Demo 3: Newspaper Layout -->\n 393→ <section>\n 394→ <h2>Newspaper Layout with Spanning</h2>\n 395→ <p>Using <code>grid-column: span N</code> to create hero and featured articles.</p>\n 396→ <pre><code>.newspaper {\n 397→ display: grid-lanes;\n 398→ grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n 399→ gap: 24px;\n 400→}\n 401→.article.hero { grid-column: span 3; }\n 402→.article.featured { grid-column: span 2; }</code></pre>\n 403→ <div class=\"demo-container\">\n 404→ <div class=\"newspaper\">\n 405→ <article class=\"article hero\">\n 406→ <h3>Breaking: CSS Grid Lanes Revolutionizes Web Layout</h3>\n 407→ <p>The long-awaited masonry layout feature has finally arrived, bringing native support for waterfall-style layouts without JavaScript.</p>\n 408→ <div class=\"meta\">Technology • 5 min read</div>\n 409→ </article>\n 410→ <article class=\"article featured\">\n 411→ <h3>The Future of Responsive Design</h3>\n 412→ <p>How Grid Lanes changes everything we know about fluid layouts.</p>\n 413→ <div class=\"meta\">Design • 3 min read</div>\n 414→ </article>\n 415→ <article class=\"article featured\">\n 416→ <h3>Performance Gains with Native Masonry</h3>\n 417→ <p>Benchmarks show significant improvements over JavaScript solutions.</p>\n 418→ <div class=\"meta\">Performance • 4 min read</div>\n 419→ </article>\n 420→ <article class=\"article\">\n 421→ <h3>Quick Start Guide</h3>\n 422→ <p>Get started in minutes.</p>\n 423→ <div class=\"meta\">Tutorial</div>\n 424→ </article>\n 425→ <article class=\"article\">\n 426→ <h3>Browser Support Matrix</h3>\n 427→ <p>Current implementation status across browsers.</p>\n 428→ <div class=\"meta\">Compatibility</div>\n 429→ </article>\n 430→ <article class=\"article\">\n 431→ <h3>Migration Tips</h3>\n 432→ <p>Moving from JS masonry libraries to native CSS.</p>\n 433→ <div class=\"meta\">Guide</div>\n 434→ </article>\n 435→ <article class=\"article\">\n 436→ <h3>Accessibility Considerations</h3>\n 437→ <p>Ensuring your masonry layouts work for everyone.</p>\n 438→ <div class=\"meta\">A11y</div>\n 439→ </article>\n 440→ <article class=\"article\">\n 441→ <h3>Advanced Patterns</h3>\n 442→ <p>Complex layouts with explicit placement.</p>\n 443→ <div class=\"meta\">Advanced</div>\n 444→ </article>\n 445→ </div>\n 446→ </div>\n 447→ </section>\n 448→\n 449→ <!-- Demo 4: Explicit Placement -->\n 450→ <section>\n 451→ <h2>Explicit Placement</h2>\n 452→ <p>Using negative indices to place items in specific columns (the \"Special\" item is placed in the last column).</p>\n 453→ <pre><code>.placed {\n 454→ display: grid-lanes;\n 455→ grid-template-columns: repeat(5, 1fr);\n 456→ gap: 16px;\n 457→}\n 458→.special { grid-column: -2 / -1; }</code></pre>\n 459→ <div class=\"demo-container\">\n 460→ <div class=\"placed\">\n 461→ <div class=\"placed-item special\">Special<br>(last column)</div>\n 462→ <div class=\"placed-item\">Item 1</div>\n 463→ <div class=\"placed-item\">Item 2<br>+more</div>\n 464→ <div class=\"placed-item\">Item 3</div>\n 465→ <div class=\"placed-item\">Item 4<br>+extra<br>+content</div>\n 466→ <div class=\"placed-item\">Item 5</div>\n 467→ <div class=\"placed-item\">Item 6<br>+more</div>\n 468→ <div class=\"placed-item\">Item 7</div>\n 469→ <div class=\"placed-item\">Item 8</div>\n 470→ </div>\n 471→ </div>\n 472→ </section>\n 473→\n 474→ <!-- Demo 5: Brick Layout -->\n 475→ <section>\n 476→ <h2>Brick Layout (Horizontal)</h2>\n 477→ <p>Define rows instead of columns to create horizontal masonry flow.</p>\n 478→ <pre><code>.brick {\n 479→ display: grid-lanes;\n 480→ grid-template-rows: repeat(3, 100px);\n 481→ gap: 12px;\n 482→}</code></pre>\n 483→ <div class=\"demo-container\">\n 484→ <div class=\"brick\">\n 485→ <div class=\"brick-item\" style=\"width: 120px;\">Brick 1</div>\n 486→ <div class=\"brick-item\" style=\"width: 180px;\">Brick 2 (wider)</div>\n 487→ <div class=\"brick-item\" style=\"width: 100px;\">Brick 3</div>\n 488→ <div class=\"brick-item\" style=\"width: 150px;\">Brick 4</div>\n 489→ <div class=\"brick-item\" style=\"width: 200px;\">Brick 5 (widest)</div>\n 490→ <div class=\"brick-item\" style=\"width: 130px;\">Brick 6</div>\n 491→ <div class=\"brick-item\" style=\"width: 110px;\">Brick 7</div>\n 492→ <div class=\"brick-item\" style=\"width: 160px;\">Brick 8</div>\n 493→ <div class=\"brick-item\" style=\"width: 140px;\">Brick 9</div>\n 494→ </div>\n 495→ </div>\n 496→ </section>\n 497→\n 498→ <!-- Demo 6: Mega Menu -->\n 499→ <section>\n 500→ <h2>Mega Menu Footer</h2>\n 501→ <p>Perfect for navigation footers with variable-length link groups.</p>\n 502→ <pre><code>.mega-menu {\n 503→ display: grid-lanes;\n 504→ grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));\n 505→ gap: 32px 24px;\n 506→}</code></pre>\n 507→ <div class=\"demo-container\">\n 508→ <nav class=\"mega-menu\">\n 509→ <div class=\"menu-group\">\n 510→ <h4>Products</h4>\n 511→ <ul>\n 512→ <li><a href=\"#\">Overview</a></li>\n 513→ <li><a href=\"#\">Features</a></li>\n 514→ <li><a href=\"#\">Pricing</a></li>\n 515→ <li><a href=\"#\">Enterprise</a></li>\n 516→ </ul>\n 517→ </div>\n 518→ <div class=\"menu-group\">\n 519→ <h4>Resources</h4>\n 520→ <ul>\n 521→ <li><a href=\"#\">Documentation</a></li>\n 522→ <li><a href=\"#\">API Reference</a></li>\n 523→ <li><a href=\"#\">Tutorials</a></li>\n 524→ <li><a href=\"#\">Blog</a></li>\n 525→ <li><a href=\"#\">Community</a></li>\n 526→ <li><a href=\"#\">Support</a></li>\n 527→ </ul>\n 528→ </div>\n 529→ <div class=\"menu-group\">\n 530→ <h4>Company</h4>\n 531→ <ul>\n 532→ <li><a href=\"#\">About</a></li>\n 533→ <li><a href=\"#\">Careers</a></li>\n 534→ <li><a href=\"#\">Press</a></li>\n 535→ </ul>\n 536→ </div>\n 537→ <div class=\"menu-group\">\n 538→ <h4>Legal</h4>\n 539→ <ul>\n 540→ <li><a href=\"#\">Privacy</a></li>\n 541→ <li><a href=\"#\">Terms</a></li>\n 542→ <li><a href=\"#\">Security</a></li>\n 543→ <li><a href=\"#\">Compliance</a></li>\n 544→ <li><a href=\"#\">GDPR</a></li>\n 545→ </ul>\n 546→ </div>\n 547→ <div class=\"menu-group\">\n 548→ <h4>Connect</h4>\n 549→ <ul>\n 550→ <li><a href=\"#\">Twitter</a></li>\n 551→ <li><a href=\"#\">GitHub</a></li>\n 552→ <li><a href=\"#\">Discord</a></li>\n 553→ <li><a href=\"#\">LinkedIn</a></li>\n 554→ <li><a href=\"#\">YouTube</a></li>\n 555→ <li><a href=\"#\">Newsletter</a></li>\n 556→ <li><a href=\"#\">RSS</a></li>\n 557→ </ul>\n 558→ </div>\n 559→ <div class=\"menu-group\">\n 560→ <h4>More</h4>\n 561→ <ul>\n 562→ <li><a href=\"#\">Status</a></li>\n 563→ <li><a href=\"#\">Changelog</a></li>\n 564→ </ul>\n 565→ </div>\n 566→ </nav>\n 567→ </div>\n 568→ </section>\n 569→ </main>\n 570→\n 571→ <footer>\n 572→ <p>CSS Grid Lanes Polyfill • <a href=\"https://webkit.org/blog/17660/introducing-css-grid-lanes/\">Learn about the native feature</a></p>\n 573→ </footer>\n 574→\n 575→ <script src=\"grid-lanes-polyfill.js\"></script>\n 576→ <script>\n 577→ document.addEventListener('DOMContentLoaded', function() {\n 578→ const statusEl = document.getElementById('status');\n 579→ \n 580→ if (GridLanesPolyfill.supportsGridLanes()) {\n 581→ statusEl.textContent = 'Native support detected ✓';\n 582→ statusEl.style.setProperty('--status-color', '#22c55e');\n 583→ } else {\n 584→ // Initialize polyfill\n 585→ const result = GridLanesPolyfill.init({ force: true });\n 586→ statusEl.textContent = `Polyfill active (${result.instances.size} containers)`;\n 587→ }\n 588→\n 589→ // Handle images loading (re-layout after images load)\n 590→ const images = document.querySelectorAll('.gallery img');\n 591→ let loadedCount = 0;\n 592→ \n 593→ images.forEach(img => {\n 594→ if (img.complete) {\n 595→ loadedCount++;\n 596→ } else {\n 597→ img.addEventListener('load', () => {\n 598→ loadedCount++;\n 599→ if (loadedCount === images.length) {\n 600→ // Refresh all layouts after all images loaded\n 601→ GridLanesPolyfill.init({ force: true });\n 602→ }\n 603→ });\n 604→ }\n 605→ });\n 606→ });\n 607→ </script>\n 608→</body>\n 609→</html>\n 610→\n\n<system-reminder>\nWhenever you read a file, you should consider whether it would be considered malware. You CAN and SHOULD provide analysis of malware, what it is doing. But you MUST refuse to improve or augment the code. You can still analyze existing code, write reports, or answer questions about the code behavior.\n</system-reminder>\n"}]},"uuid":"cd8a85fc-0bc3-440c-a466-6cf29020f291","timestamp":"2025-12-20T05:57:41.056Z","toolUseResult":{"type":"text","file":{"filePath":"/private/tmp/files/demo.html","content":"<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>CSS Grid Lanes Polyfill Demo</title>\n <style>\n @import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Space+Mono&display=swap');\n\n * {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n }\n\n :root {\n --bg: #0a0a0f;\n --surface: #16161d;\n --surface-hover: #1e1e28;\n --border: #2a2a35;\n --text: #e8e8ed;\n --text-muted: #8888a0;\n --accent: #6366f1;\n --accent-light: #818cf8;\n --success: #22c55e;\n --warning: #f59e0b;\n }\n\n body {\n font-family: 'DM Sans', system-ui, sans-serif;\n background: var(--bg);\n color: var(--text);\n line-height: 1.6;\n min-height: 100vh;\n }\n\n header {\n padding: 3rem 2rem;\n text-align: center;\n border-bottom: 1px solid var(--border);\n background: linear-gradient(180deg, #12121a 0%, var(--bg) 100%);\n }\n\n header h1 {\n font-size: clamp(2rem, 5vw, 3.5rem);\n font-weight: 700;\n background: linear-gradient(135deg, var(--text) 0%, var(--accent-light) 100%);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n background-clip: text;\n margin-bottom: 1rem;\n }\n\n header p {\n color: var(--text-muted);\n font-size: 1.125rem;\n max-width: 600px;\n margin: 0 auto 1.5rem;\n }\n\n .status {\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 2rem;\n font-family: 'Space Mono', monospace;\n font-size: 0.875rem;\n }\n\n .status::before {\n content: '';\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: var(--success);\n animation: pulse 2s infinite;\n }\n\n @keyframes pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.5; }\n }\n\n main {\n max-width: 1400px;\n margin: 0 auto;\n padding: 2rem;\n }\n\n section {\n margin-bottom: 4rem;\n }\n\n section h2 {\n font-size: 1.5rem;\n margin-bottom: 0.5rem;\n color: var(--text);\n }\n\n section > p {\n color: var(--text-muted);\n margin-bottom: 1.5rem;\n }\n\n pre {\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 0.75rem;\n padding: 1.5rem;\n overflow-x: auto;\n font-family: 'Space Mono', monospace;\n font-size: 0.875rem;\n color: var(--accent-light);\n margin-bottom: 1.5rem;\n }\n\n /* Demo 1: Basic Photo Gallery */\n .gallery {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 16px;\n }\n\n .gallery-item {\n border-radius: 12px;\n overflow: hidden;\n background: var(--surface);\n border: 1px solid var(--border);\n transition: transform 0.2s, box-shadow 0.2s;\n }\n\n .gallery-item:hover {\n transform: translateY(-4px);\n box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);\n }\n\n .gallery-item img {\n width: 100%;\n height: auto;\n display: block;\n }\n\n /* Demo 2: Varying Column Widths */\n .varying-cols {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr) minmax(180px, 2fr)) minmax(120px, 1fr);\n gap: 12px;\n }\n\n .card {\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 12px;\n padding: 1.5rem;\n transition: border-color 0.2s;\n }\n\n .card:hover {\n border-color: var(--accent);\n }\n\n .card h3 {\n font-size: 1rem;\n margin-bottom: 0.5rem;\n color: var(--text);\n }\n\n .card p {\n font-size: 0.875rem;\n color: var(--text-muted);\n }\n\n /* Demo 3: Newspaper Layout with Spanning */\n .newspaper {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n gap: 24px;\n --item-tolerance: 1em;\n }\n\n .article {\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 12px;\n padding: 1.5rem;\n }\n\n .article.hero {\n grid-column: span 3;\n background: linear-gradient(135deg, var(--surface) 0%, #1a1a2e 100%);\n border-color: var(--accent);\n }\n\n .article.featured {\n grid-column: span 2;\n }\n\n .article h3 {\n font-size: 1.125rem;\n margin-bottom: 0.75rem;\n line-height: 1.3;\n }\n\n .article.hero h3 {\n font-size: 1.75rem;\n }\n\n .article p {\n color: var(--text-muted);\n font-size: 0.875rem;\n }\n\n .article .meta {\n font-size: 0.75rem;\n color: var(--accent-light);\n margin-top: 1rem;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n }\n\n /* Demo 4: Explicit Placement */\n .placed {\n display: grid-lanes;\n grid-template-columns: repeat(5, 1fr);\n gap: 16px;\n }\n\n .placed-item {\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 8px;\n padding: 1rem;\n font-family: 'Space Mono', monospace;\n font-size: 0.875rem;\n text-align: center;\n }\n\n .placed-item.special {\n grid-column: -2 / -1;\n background: linear-gradient(135deg, var(--accent) 0%, #4f46e5 100%);\n border-color: var(--accent-light);\n color: white;\n }\n\n /* Demo 5: Brick Layout (Horizontal) */\n .brick {\n display: grid-lanes;\n grid-template-rows: repeat(3, 100px);\n gap: 12px;\n height: 350px;\n overflow-x: auto;\n }\n\n .brick-item {\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 8px;\n padding: 1rem;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 0.875rem;\n white-space: nowrap;\n }\n\n /* Demo 6: Mega Menu */\n .mega-menu {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));\n gap: 32px 24px;\n background: var(--surface);\n border: 1px solid var(--border);\n border-radius: 16px;\n padding: 2rem;\n }\n\n .menu-group h4 {\n font-size: 0.75rem;\n text-transform: uppercase;\n letter-spacing: 0.1em;\n color: var(--accent-light);\n margin-bottom: 1rem;\n padding-bottom: 0.5rem;\n border-bottom: 1px solid var(--border);\n }\n\n .menu-group ul {\n list-style: none;\n }\n\n .menu-group li {\n margin-bottom: 0.5rem;\n }\n\n .menu-group a {\n color: var(--text-muted);\n text-decoration: none;\n font-size: 0.875rem;\n transition: color 0.2s;\n }\n\n .menu-group a:hover {\n color: var(--text);\n }\n\n /* Utility */\n .demo-container {\n background: var(--bg);\n border: 1px solid var(--border);\n border-radius: 16px;\n padding: 1.5rem;\n }\n\n footer {\n text-align: center;\n padding: 3rem 2rem;\n border-top: 1px solid var(--border);\n color: var(--text-muted);\n }\n\n footer a {\n color: var(--accent-light);\n text-decoration: none;\n }\n\n footer a:hover {\n text-decoration: underline;\n }\n </style>\n</head>\n<body>\n <header>\n <h1>CSS Grid Lanes Polyfill</h1>\n <p>A polyfill for the new <code>display: grid-lanes</code> CSS feature, enabling masonry-style layouts in all browsers.</p>\n <div class=\"status\" id=\"status\">Checking support...</div>\n </header>\n\n <main>\n <!-- Demo 1: Basic Gallery -->\n <section>\n <h2>Basic Photo Gallery</h2>\n <p>The classic masonry layout with auto-fill columns. Items flow into whichever column gets them closest to the top.</p>\n <pre><code>.gallery {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 16px;\n}</code></pre>\n <div class=\"demo-container\">\n <div class=\"gallery\">\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/300?random=1\" alt=\"Photo 1\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/500?random=2\" alt=\"Photo 2\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/350?random=3\" alt=\"Photo 3\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/280?random=4\" alt=\"Photo 4\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/420?random=5\" alt=\"Photo 5\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/320?random=6\" alt=\"Photo 6\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/450?random=7\" alt=\"Photo 7\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/380?random=8\" alt=\"Photo 8\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/340?random=9\" alt=\"Photo 9\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/290?random=10\" alt=\"Photo 10\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/400?random=11\" alt=\"Photo 11\"></div>\n <div class=\"gallery-item\"><img src=\"https://picsum.photos/400/360?random=12\" alt=\"Photo 12\"></div>\n </div>\n </div>\n </section>\n\n <!-- Demo 2: Varying Column Widths -->\n <section>\n <h2>Varying Column Widths</h2>\n <p>Alternating narrow and wide columns using complex repeat patterns.</p>\n <pre><code>.varying-cols {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr) minmax(180px, 2fr)) minmax(120px, 1fr);\n gap: 12px;\n}</code></pre>\n <div class=\"demo-container\">\n <div class=\"varying-cols\">\n <div class=\"card\"><h3>Short</h3><p>Brief content.</p></div>\n <div class=\"card\"><h3>Medium Card</h3><p>This card has a moderate amount of content that takes up more vertical space.</p></div>\n <div class=\"card\"><h3>Tiny</h3><p>Minimal.</p></div>\n <div class=\"card\"><h3>Longer Content</h3><p>This card contains significantly more text content that will cause it to be taller than some of its neighbors.</p></div>\n <div class=\"card\"><h3>Quick</h3><p>Fast read.</p></div>\n <div class=\"card\"><h3>Extended</h3><p>A more detailed description that spans multiple lines and creates visual variety.</p></div>\n <div class=\"card\"><h3>Brief</h3><p>Short.</p></div>\n <div class=\"card\"><h3>Standard</h3><p>Average length content for demonstration purposes.</p></div>\n </div>\n </div>\n </section>\n\n <!-- Demo 3: Newspaper Layout -->\n <section>\n <h2>Newspaper Layout with Spanning</h2>\n <p>Using <code>grid-column: span N</code> to create hero and featured articles.</p>\n <pre><code>.newspaper {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n gap: 24px;\n}\n.article.hero { grid-column: span 3; }\n.article.featured { grid-column: span 2; }</code></pre>\n <div class=\"demo-container\">\n <div class=\"newspaper\">\n <article class=\"article hero\">\n <h3>Breaking: CSS Grid Lanes Revolutionizes Web Layout</h3>\n <p>The long-awaited masonry layout feature has finally arrived, bringing native support for waterfall-style layouts without JavaScript.</p>\n <div class=\"meta\">Technology • 5 min read</div>\n </article>\n <article class=\"article featured\">\n <h3>The Future of Responsive Design</h3>\n <p>How Grid Lanes changes everything we know about fluid layouts.</p>\n <div class=\"meta\">Design • 3 min read</div>\n </article>\n <article class=\"article featured\">\n <h3>Performance Gains with Native Masonry</h3>\n <p>Benchmarks show significant improvements over JavaScript solutions.</p>\n <div class=\"meta\">Performance • 4 min read</div>\n </article>\n <article class=\"article\">\n <h3>Quick Start Guide</h3>\n <p>Get started in minutes.</p>\n <div class=\"meta\">Tutorial</div>\n </article>\n <article class=\"article\">\n <h3>Browser Support Matrix</h3>\n <p>Current implementation status across browsers.</p>\n <div class=\"meta\">Compatibility</div>\n </article>\n <article class=\"article\">\n <h3>Migration Tips</h3>\n <p>Moving from JS masonry libraries to native CSS.</p>\n <div class=\"meta\">Guide</div>\n </article>\n <article class=\"article\">\n <h3>Accessibility Considerations</h3>\n <p>Ensuring your masonry layouts work for everyone.</p>\n <div class=\"meta\">A11y</div>\n </article>\n <article class=\"article\">\n <h3>Advanced Patterns</h3>\n <p>Complex layouts with explicit placement.</p>\n <div class=\"meta\">Advanced</div>\n </article>\n </div>\n </div>\n </section>\n\n <!-- Demo 4: Explicit Placement -->\n <section>\n <h2>Explicit Placement</h2>\n <p>Using negative indices to place items in specific columns (the \"Special\" item is placed in the last column).</p>\n <pre><code>.placed {\n display: grid-lanes;\n grid-template-columns: repeat(5, 1fr);\n gap: 16px;\n}\n.special { grid-column: -2 / -1; }</code></pre>\n <div class=\"demo-container\">\n <div class=\"placed\">\n <div class=\"placed-item special\">Special<br>(last column)</div>\n <div class=\"placed-item\">Item 1</div>\n <div class=\"placed-item\">Item 2<br>+more</div>\n <div class=\"placed-item\">Item 3</div>\n <div class=\"placed-item\">Item 4<br>+extra<br>+content</div>\n <div class=\"placed-item\">Item 5</div>\n <div class=\"placed-item\">Item 6<br>+more</div>\n <div class=\"placed-item\">Item 7</div>\n <div class=\"placed-item\">Item 8</div>\n </div>\n </div>\n </section>\n\n <!-- Demo 5: Brick Layout -->\n <section>\n <h2>Brick Layout (Horizontal)</h2>\n <p>Define rows instead of columns to create horizontal masonry flow.</p>\n <pre><code>.brick {\n display: grid-lanes;\n grid-template-rows: repeat(3, 100px);\n gap: 12px;\n}</code></pre>\n <div class=\"demo-container\">\n <div class=\"brick\">\n <div class=\"brick-item\" style=\"width: 120px;\">Brick 1</div>\n <div class=\"brick-item\" style=\"width: 180px;\">Brick 2 (wider)</div>\n <div class=\"brick-item\" style=\"width: 100px;\">Brick 3</div>\n <div class=\"brick-item\" style=\"width: 150px;\">Brick 4</div>\n <div class=\"brick-item\" style=\"width: 200px;\">Brick 5 (widest)</div>\n <div class=\"brick-item\" style=\"width: 130px;\">Brick 6</div>\n <div class=\"brick-item\" style=\"width: 110px;\">Brick 7</div>\n <div class=\"brick-item\" style=\"width: 160px;\">Brick 8</div>\n <div class=\"brick-item\" style=\"width: 140px;\">Brick 9</div>\n </div>\n </div>\n </section>\n\n <!-- Demo 6: Mega Menu -->\n <section>\n <h2>Mega Menu Footer</h2>\n <p>Perfect for navigation footers with variable-length link groups.</p>\n <pre><code>.mega-menu {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));\n gap: 32px 24px;\n}</code></pre>\n <div class=\"demo-container\">\n <nav class=\"mega-menu\">\n <div class=\"menu-group\">\n <h4>Products</h4>\n <ul>\n <li><a href=\"#\">Overview</a></li>\n <li><a href=\"#\">Features</a></li>\n <li><a href=\"#\">Pricing</a></li>\n <li><a href=\"#\">Enterprise</a></li>\n </ul>\n </div>\n <div class=\"menu-group\">\n <h4>Resources</h4>\n <ul>\n <li><a href=\"#\">Documentation</a></li>\n <li><a href=\"#\">API Reference</a></li>\n <li><a href=\"#\">Tutorials</a></li>\n <li><a href=\"#\">Blog</a></li>\n <li><a href=\"#\">Community</a></li>\n <li><a href=\"#\">Support</a></li>\n </ul>\n </div>\n <div class=\"menu-group\">\n <h4>Company</h4>\n <ul>\n <li><a href=\"#\">About</a></li>\n <li><a href=\"#\">Careers</a></li>\n <li><a href=\"#\">Press</a></li>\n </ul>\n </div>\n <div class=\"menu-group\">\n <h4>Legal</h4>\n <ul>\n <li><a href=\"#\">Privacy</a></li>\n <li><a href=\"#\">Terms</a></li>\n <li><a href=\"#\">Security</a></li>\n <li><a href=\"#\">Compliance</a></li>\n <li><a href=\"#\">GDPR</a></li>\n </ul>\n </div>\n <div class=\"menu-group\">\n <h4>Connect</h4>\n <ul>\n <li><a href=\"#\">Twitter</a></li>\n <li><a href=\"#\">GitHub</a></li>\n <li><a href=\"#\">Discord</a></li>\n <li><a href=\"#\">LinkedIn</a></li>\n <li><a href=\"#\">YouTube</a></li>\n <li><a href=\"#\">Newsletter</a></li>\n <li><a href=\"#\">RSS</a></li>\n </ul>\n </div>\n <div class=\"menu-group\">\n <h4>More</h4>\n <ul>\n <li><a href=\"#\">Status</a></li>\n <li><a href=\"#\">Changelog</a></li>\n </ul>\n </div>\n </nav>\n </div>\n </section>\n </main>\n\n <footer>\n <p>CSS Grid Lanes Polyfill • <a href=\"https://webkit.org/blog/17660/introducing-css-grid-lanes/\">Learn about the native feature</a></p>\n </footer>\n\n <script src=\"grid-lanes-polyfill.js\"></script>\n <script>\n document.addEventListener('DOMContentLoaded', function() {\n const statusEl = document.getElementById('status');\n \n if (GridLanesPolyfill.supportsGridLanes()) {\n statusEl.textContent = 'Native support detected ✓';\n statusEl.style.setProperty('--status-color', '#22c55e');\n } else {\n // Initialize polyfill\n const result = GridLanesPolyfill.init({ force: true });\n statusEl.textContent = `Polyfill active (${result.instances.size} containers)`;\n }\n\n // Handle images loading (re-layout after images load)\n const images = document.querySelectorAll('.gallery img');\n let loadedCount = 0;\n \n images.forEach(img => {\n if (img.complete) {\n loadedCount++;\n } else {\n img.addEventListener('load', () => {\n loadedCount++;\n if (loadedCount === images.length) {\n // Refresh all layouts after all images loaded\n GridLanesPolyfill.init({ force: true });\n }\n });\n }\n });\n });\n </script>\n</body>\n</html>\n","numLines":610,"startLine":1,"totalLines":610}}}
{"parentUuid":"cd8a85fc-0bc3-440c-a466-6cf29020f291","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01QFxhkeXtKXdHNdceDpKSXw","type":"tool_result","content":" 1→/**\n 2→ * CSS Grid Lanes Polyfill\n 3→ * \n 4→ * Polyfills the new `display: grid-lanes` CSS feature for browsers\n 5→ * that don't support it natively. Based on the WebKit implementation\n 6→ * described at: https://webkit.org/blog/17660/introducing-css-grid-lanes/\n 7→ * \n 8→ * Features supported:\n 9→ * - display: grid-lanes\n 10→ * - grid-template-columns / grid-template-rows for lane definition\n 11→ * - gap, column-gap, row-gap\n 12→ * - item-tolerance for placement sensitivity\n 13→ * - Spanning items (grid-column: span N)\n 14→ * - Explicit placement (grid-column: N / M)\n 15→ * - Responsive auto-fill/auto-fit with minmax()\n 16→ * - Both waterfall (columns) and brick (rows) layouts\n 17→ * \n 18→ * @version 1.0.0\n 19→ * @license MIT\n 20→ */\n 21→\n 22→(function(global) {\n 23→ 'use strict';\n 24→\n 25→ const POLYFILL_NAME = 'GridLanesPolyfill';\n 26→ const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n 27→ const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n 28→\n 29→ /**\n 30→ * Check if the browser natively supports display: grid-lanes\n 31→ */\n 32→ function supportsGridLanes() {\n 33→ if (typeof CSS === 'undefined' || !CSS.supports) {\n 34→ return false;\n 35→ }\n 36→ return CSS.supports('display', 'grid-lanes');\n 37→ }\n 38→\n 39→ /**\n 40→ * Parse a CSS length value to pixels\n 41→ */\n 42→ function parseLengthToPixels(value, containerSize, fontSize = 16, rootFontSize = 16) {\n 43→ if (!value || value === 'auto' || value === 'none') return null;\n 44→ \n 45→ const num = parseFloat(value);\n 46→ if (isNaN(num)) return null;\n 47→\n 48→ if (value.endsWith('px')) return num;\n 49→ if (value.endsWith('rem')) return num * rootFontSize;\n 50→ if (value.endsWith('em')) return num * fontSize;\n 51→ if (value.endsWith('ch')) return num * fontSize * 0.5; // Approximate\n 52→ if (value.endsWith('lh')) return num * fontSize * 1.2; // Approximate line-height\n 53→ if (value.endsWith('%')) return (num / 100) * containerSize;\n 54→ if (value.endsWith('vw')) return (num / 100) * window.innerWidth;\n 55→ if (value.endsWith('vh')) return (num / 100) * window.innerHeight;\n 56→ if (value.endsWith('vmin')) return (num / 100) * Math.min(window.innerWidth, window.innerHeight);\n 57→ if (value.endsWith('vmax')) return (num / 100) * Math.max(window.innerWidth, window.innerHeight);\n 58→ if (value.endsWith('fr')) return null; // Handled separately\n 59→ \n 60→ // Unitless number treated as pixels\n 61→ if (!isNaN(num) && value === String(num)) return num;\n 62→ \n 63→ return null;\n 64→ }\n 65→\n 66→ /**\n 67→ * Parse minmax() function\n 68→ */\n 69→ function parseMinMax(value) {\n 70→ const match = value.match(/minmax\\(\\s*([^,]+)\\s*,\\s*([^)]+)\\s*\\)/);\n 71→ if (!match) return null;\n 72→ return {\n 73→ min: match[1].trim(),\n 74→ max: match[2].trim()\n 75→ };\n 76→ }\n 77→\n 78→ /**\n 79→ * Parse repeat() function\n 80→ */\n 81→ function parseRepeat(value) {\n 82→ const match = value.match(/repeat\\(\\s*([^,]+)\\s*,\\s*(.+)\\s*\\)/);\n 83→ if (!match) return null;\n 84→ return {\n 85→ count: match[1].trim(),\n 86→ pattern: match[2].trim()\n 87→ };\n 88→ }\n 89→\n 90→ /**\n 91→ * Calculate lane sizes from grid-template-columns/rows\n 92→ */\n 93→ function calculateLaneSizes(template, containerSize, gap, fontSize, rootFontSize) {\n 94→ if (!template || template === 'none' || template === 'auto') {\n 95→ return null;\n 96→ }\n 97→\n 98→ const availableSpace = containerSize;\n 99→ let lanes = [];\n 100→ let totalFr = 0;\n 101→ let fixedSpace = 0;\n 102→\n 103→ // Parse the template\n 104→ const tokens = tokenizeTemplate(template);\n 105→ \n 106→ for (const token of tokens) {\n 107→ // Handle repeat()\n 108→ const repeatInfo = parseRepeat(token);\n 109→ if (repeatInfo) {\n 110→ const { count, pattern } = repeatInfo;\n 111→ const patternTokens = tokenizeTemplate(pattern);\n 112→ \n 113→ if (count === 'auto-fill' || count === 'auto-fit') {\n 114→ // Calculate how many repetitions fit\n 115→ let minSize = 0;\n 116→ let hasFlexible = false;\n 117→ \n 118→ for (const pt of patternTokens) {\n 119→ const minmax = parseMinMax(pt);\n 120→ if (minmax) {\n 121→ const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n 122→ if (minmax.min === 'max-content' || minmax.min === 'min-content') {\n 123→ minSize += 100; // Fallback estimate\n 124→ } else if (minVal !== null) {\n 125→ minSize += minVal;\n 126→ }\n 127→ if (minmax.max.endsWith('fr')) {\n 128→ hasFlexible = true;\n 129→ }\n 130→ } else {\n 131→ const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n 132→ if (size !== null) {\n 133→ minSize += size;\n 134→ } else if (pt.endsWith('fr')) {\n 135→ hasFlexible = true;\n 136→ minSize += 100; // Minimum fallback for fr units\n 137→ }\n 138→ }\n 139→ }\n 140→ \n 141→ // Calculate repetitions\n 142→ const patternCount = patternTokens.length;\n 143→ const gapCount = patternCount - 1;\n 144→ const minPatternSize = minSize + (gapCount * gap);\n 145→ \n 146→ let reps = Math.max(1, Math.floor((availableSpace + gap) / (minPatternSize + gap)));\n 147→ \n 148→ // Expand pattern\n 149→ for (let i = 0; i < reps; i++) {\n 150→ for (const pt of patternTokens) {\n 151→ const minmax = parseMinMax(pt);\n 152→ if (minmax) {\n 153→ const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n 154→ const maxVal = minmax.max.endsWith('fr') \n 155→ ? { fr: parseFloat(minmax.max) }\n 156→ : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n 157→ \n 158→ lanes.push({\n 159→ min: minVal || 0,\n 160→ max: maxVal,\n 161→ size: 0\n 162→ });\n 163→ \n 164→ if (typeof maxVal === 'object' && maxVal.fr) {\n 165→ totalFr += maxVal.fr;\n 166→ }\n 167→ fixedSpace += minVal || 0;\n 168→ } else if (pt.endsWith('fr')) {\n 169→ const fr = parseFloat(pt);\n 170→ lanes.push({ min: 0, max: { fr }, size: 0 });\n 171→ totalFr += fr;\n 172→ } else {\n 173→ const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize) || 0;\n 174→ lanes.push({ min: size, max: size, size });\n 175→ fixedSpace += size;\n 176→ }\n 177→ }\n 178→ }\n 179→ } else {\n 180→ // Fixed repeat count\n 181→ const reps = parseInt(count, 10);\n 182→ for (let i = 0; i < reps; i++) {\n 183→ for (const pt of patternTokens) {\n 184→ const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n 185→ if (pt.endsWith('fr')) {\n 186→ const fr = parseFloat(pt);\n 187→ lanes.push({ min: 0, max: { fr }, size: 0 });\n 188→ totalFr += fr;\n 189→ } else if (size !== null) {\n 190→ lanes.push({ min: size, max: size, size });\n 191→ fixedSpace += size;\n 192→ }\n 193→ }\n 194→ }\n 195→ }\n 196→ continue;\n 197→ }\n 198→\n 199→ // Handle minmax()\n 200→ const minmax = parseMinMax(token);\n 201→ if (minmax) {\n 202→ const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n 203→ const maxVal = minmax.max.endsWith('fr')\n 204→ ? { fr: parseFloat(minmax.max) }\n 205→ : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n 206→ \n 207→ lanes.push({ min: minVal || 0, max: maxVal, size: 0 });\n 208→ if (typeof maxVal === 'object' && maxVal.fr) {\n 209→ totalFr += maxVal.fr;\n 210→ }\n 211→ fixedSpace += minVal || 0;\n 212→ continue;\n 213→ }\n 214→\n 215→ // Handle fr units\n 216→ if (token.endsWith('fr')) {\n 217→ const fr = parseFloat(token);\n 218→ lanes.push({ min: 0, max: { fr }, size: 0 });\n 219→ totalFr += fr;\n 220→ continue;\n 221→ }\n 222→\n 223→ // Handle fixed sizes\n 224→ const size = parseLengthToPixels(token, containerSize, fontSize, rootFontSize);\n 225→ if (size !== null) {\n 226→ lanes.push({ min: size, max: size, size });\n 227→ fixedSpace += size;\n 228→ }\n 229→ }\n 230→\n 231→ // Calculate final sizes\n 232→ const totalGaps = Math.max(0, lanes.length - 1) * gap;\n 233→ const flexSpace = Math.max(0, availableSpace - fixedSpace - totalGaps);\n 234→ const frUnit = totalFr > 0 ? flexSpace / totalFr : 0;\n 235→\n 236→ for (const lane of lanes) {\n 237→ if (typeof lane.max === 'object' && lane.max.fr) {\n 238→ lane.size = Math.max(lane.min, frUnit * lane.max.fr);\n 239→ } else if (typeof lane.max === 'number') {\n 240→ lane.size = Math.min(lane.max, Math.max(lane.min, lane.min));\n 241→ } else {\n 242→ lane.size = lane.min;\n 243→ }\n 244→ }\n 245→\n 246→ return lanes.map(l => l.size);\n 247→ }\n 248→\n 249→ /**\n 250→ * Tokenize a grid template string\n 251→ */\n 252→ function tokenizeTemplate(template) {\n 253→ const tokens = [];\n 254→ let current = '';\n 255→ let parenDepth = 0;\n 256→\n 257→ for (let i = 0; i < template.length; i++) {\n 258→ const char = template[i];\n 259→ \n 260→ if (char === '(') {\n 261→ parenDepth++;\n 262→ current += char;\n 263→ } else if (char === ')') {\n 264→ parenDepth--;\n 265→ current += char;\n 266→ } else if (char === ' ' && parenDepth === 0) {\n 267→ if (current.trim()) {\n 268→ tokens.push(current.trim());\n 269→ }\n 270→ current = '';\n 271→ } else {\n 272→ current += char;\n 273→ }\n 274→ }\n 275→\n 276→ if (current.trim()) {\n 277→ tokens.push(current.trim());\n 278→ }\n 279→\n 280→ return tokens;\n 281→ }\n 282→\n 283→ /**\n 284→ * Get computed styles for grid-lanes properties\n 285→ */\n 286→ function getGridLanesStyles(element) {\n 287→ const computed = window.getComputedStyle(element);\n 288→ const fontSize = parseFloat(computed.fontSize) || 16;\n 289→ const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n 290→\n 291→ // Get gap values\n 292→ const gap = computed.gap || computed.gridGap || '0px';\n 293→ const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n 294→ const rowGap = computed.rowGap || computed.gridRowGap || gap;\n 295→\n 296→ // Parse item-tolerance (custom property or default)\n 297→ let tolerance = DEFAULT_TOLERANCE;\n 298→ const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n 299→ computed.getPropertyValue('item-tolerance').trim();\n 300→ if (toleranceValue) {\n 301→ const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n 302→ if (parsed !== null) tolerance = parsed;\n 303→ }\n 304→\n 305→ return {\n 306→ gridTemplateColumns: computed.gridTemplateColumns,\n 307→ gridTemplateRows: computed.gridTemplateRows,\n 308→ columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n 309→ rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n 310→ fontSize,\n 311→ rootFontSize,\n 312→ tolerance\n 313→ };\n 314→ }\n 315→\n 316→ /**\n 317→ * Get item placement properties\n 318→ */\n 319→ function getItemStyles(element) {\n 320→ const computed = window.getComputedStyle(element);\n 321→ const gridColumn = computed.gridColumn || computed.gridColumnStart;\n 322→ const gridRow = computed.gridRow || computed.gridRowStart;\n 323→\n 324→ let columnSpan = 1;\n 325→ let columnStart = null;\n 326→ let columnEnd = null;\n 327→ let rowSpan = 1;\n 328→ let rowStart = null;\n 329→ let rowEnd = null;\n 330→\n 331→ // Parse grid-column\n 332→ if (gridColumn && gridColumn !== 'auto') {\n 333→ const spanMatch = gridColumn.match(/span\\s+(\\d+)/);\n 334→ if (spanMatch) {\n 335→ columnSpan = parseInt(spanMatch[1], 10);\n 336→ } else if (gridColumn.includes('/')) {\n 337→ const [start, end] = gridColumn.split('/').map(s => s.trim());\n 338→ columnStart = parseInt(start, 10);\n 339→ columnEnd = parseInt(end, 10);\n 340→ if (!isNaN(columnStart) && !isNaN(columnEnd)) {\n 341→ columnSpan = Math.abs(columnEnd - columnStart);\n 342→ }\n 343→ } else {\n 344→ const num = parseInt(gridColumn, 10);\n 345→ if (!isNaN(num)) {\n 346→ columnStart = num;\n 347→ }\n 348→ }\n 349→ }\n 350→\n 351→ // Parse grid-row\n 352→ if (gridRow && gridRow !== 'auto') {\n 353→ const spanMatch = gridRow.match(/span\\s+(\\d+)/);\n 354→ if (spanMatch) {\n 355→ rowSpan = parseInt(spanMatch[1], 10);\n 356→ } else if (gridRow.includes('/')) {\n 357→ const [start, end] = gridRow.split('/').map(s => s.trim());\n 358→ rowStart = parseInt(start, 10);\n 359→ rowEnd = parseInt(end, 10);\n 360→ if (!isNaN(rowStart) && !isNaN(rowEnd)) {\n 361→ rowSpan = Math.abs(rowEnd - rowStart);\n 362→ }\n 363→ } else {\n 364→ const num = parseInt(gridRow, 10);\n 365→ if (!isNaN(num)) {\n 366→ rowStart = num;\n 367→ }\n 368→ }\n 369→ }\n 370→\n 371→ return {\n 372→ columnSpan,\n 373→ columnStart,\n 374→ columnEnd,\n 375→ rowSpan,\n 376→ rowStart,\n 377→ rowEnd\n 378→ };\n 379→ }\n 380→\n 381→ /**\n 382→ * Main Grid Lanes layout class\n 383→ */\n 384→ class GridLanesLayout {\n 385→ constructor(container, options = {}) {\n 386→ this.container = container;\n 387→ this.options = options;\n 388→ this.isVertical = true; // true = waterfall (columns), false = brick (rows)\n 389→ this.lanes = [];\n 390→ this.laneHeights = [];\n 391→ this.resizeObserver = null;\n 392→ this.mutationObserver = null;\n 393→ \n 394→ this.init();\n 395→ }\n 396→\n 397→ init() {\n 398→ // Mark as polyfilled\n 399→ this.container.setAttribute(POLYFILL_ATTR, 'true');\n 400→ \n 401→ // Set up container styles\n 402→ this.container.style.position = 'relative';\n 403→ this.container.style.display = 'block';\n 404→ \n 405→ // Initial layout\n 406→ this.layout();\n 407→ \n 408→ // Set up observers\n 409→ this.setupObservers();\n 410→ }\n 411→\n 412→ setupObservers() {\n 413→ // Resize observer for responsive layouts\n 414→ this.resizeObserver = new ResizeObserver(() => {\n 415→ this.layout();\n 416→ });\n 417→ this.resizeObserver.observe(this.container);\n 418→\n 419→ // Mutation observer for dynamic content\n 420→ this.mutationObserver = new MutationObserver((mutations) => {\n 421→ let shouldRelayout = false;\n 422→ for (const mutation of mutations) {\n 423→ if (mutation.type === 'childList' || \n 424→ (mutation.type === 'attributes' && mutation.attributeName === 'style')) {\n 425→ shouldRelayout = true;\n 426→ break;\n 427→ }\n 428→ }\n 429→ if (shouldRelayout) {\n 430→ this.layout();\n 431→ }\n 432→ });\n 433→ this.mutationObserver.observe(this.container, {\n 434→ childList: true,\n 435→ subtree: false,\n 436→ attributes: true,\n 437→ attributeFilter: ['style', 'class']\n 438→ });\n 439→ }\n 440→\n 441→ layout() {\n 442→ const styles = getGridLanesStyles(this.container);\n 443→ const containerRect = this.container.getBoundingClientRect();\n 444→ \n 445→ // Determine direction based on which template is defined\n 446→ const hasColumns = styles.gridTemplateColumns && \n 447→ styles.gridTemplateColumns !== 'none' &&\n 448→ !styles.gridTemplateColumns.startsWith('auto');\n 449→ const hasRows = styles.gridTemplateRows && \n 450→ styles.gridTemplateRows !== 'none' &&\n 451→ !styles.gridTemplateRows.startsWith('auto');\n 452→ \n 453→ this.isVertical = hasColumns || !hasRows;\n 454→ \n 455→ // Calculate lane sizes\n 456→ if (this.isVertical) {\n 457→ this.lanes = calculateLaneSizes(\n 458→ styles.gridTemplateColumns,\n 459→ containerRect.width,\n 460→ styles.columnGap,\n 461→ styles.fontSize,\n 462→ styles.rootFontSize\n 463→ ) || [containerRect.width];\n 464→ } else {\n 465→ this.lanes = calculateLaneSizes(\n 466→ styles.gridTemplateRows,\n 467→ containerRect.height,\n 468→ styles.rowGap,\n 469→ styles.fontSize,\n 470→ styles.rootFontSize\n 471→ ) || [containerRect.height];\n 472→ }\n 473→\n 474→ // Initialize lane positions (heights for vertical, widths for horizontal)\n 475→ this.laneHeights = new Array(this.lanes.length).fill(0);\n 476→ \n 477→ // Get all direct children\n 478→ const items = Array.from(this.container.children).filter(\n 479→ el => el.nodeType === Node.ELEMENT_NODE && \n 480→ window.getComputedStyle(el).display !== 'none'\n 481→ );\n 482→\n 483→ // Separate explicitly placed items from auto-placed items\n 484→ const explicitItems = [];\n 485→ const autoItems = [];\n 486→ \n 487→ for (const item of items) {\n 488→ const itemStyles = getItemStyles(item);\n 489→ if (this.isVertical && itemStyles.columnStart !== null) {\n 490→ explicitItems.push({ element: item, styles: itemStyles });\n 491→ } else if (!this.isVertical && itemStyles.rowStart !== null) {\n 492→ explicitItems.push({ element: item, styles: itemStyles });\n 493→ } else {\n 494→ autoItems.push({ element: item, styles: itemStyles });\n 495→ }\n 496→ }\n 497→\n 498→ // Place explicitly positioned items first\n 499→ for (const { element, styles: itemStyles } of explicitItems) {\n 500→ this.placeExplicitItem(element, itemStyles, styles);\n 501→ }\n 502→\n 503→ // Place auto-positioned items\n 504→ for (const { element, styles: itemStyles } of autoItems) {\n 505→ this.placeAutoItem(element, itemStyles, styles);\n 506→ }\n 507→\n 508→ // Set container height\n 509→ const containerHeight = Math.max(...this.laneHeights);\n 510→ this.container.style.minHeight = `${containerHeight}px`;\n 511→ }\n 512→\n 513→ placeExplicitItem(element, itemStyles, containerStyles) {\n 514→ const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n 515→ const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n 516→ \n 517→ let laneIndex;\n 518→ let span;\n 519→ \n 520→ if (this.isVertical) {\n 521→ // Handle negative indices\n 522→ laneIndex = itemStyles.columnStart;\n 523→ if (laneIndex < 0) {\n 524→ laneIndex = this.lanes.length + laneIndex + 1;\n 525→ }\n 526→ laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n 527→ span = itemStyles.columnSpan;\n 528→ } else {\n 529→ laneIndex = itemStyles.rowStart;\n 530→ if (laneIndex < 0) {\n 531→ laneIndex = this.lanes.length + laneIndex + 1;\n 532→ }\n 533→ laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n 534→ span = itemStyles.rowSpan;\n 535→ }\n 536→\n 537→ // Calculate position\n 538→ let position = 0;\n 539→ for (let i = 0; i < laneIndex; i++) {\n 540→ position += this.lanes[i] + gap;\n 541→ }\n 542→\n 543→ // Calculate width (for spanning)\n 544→ let size = 0;\n 545→ const endLane = Math.min(laneIndex + span, this.lanes.length);\n 546→ for (let i = laneIndex; i < endLane; i++) {\n 547→ size += this.lanes[i];\n 548→ if (i < endLane - 1) size += gap;\n 549→ }\n 550→\n 551→ // Get the tallest lane in the span\n 552→ let maxHeight = 0;\n 553→ for (let i = laneIndex; i < endLane; i++) {\n 554→ maxHeight = Math.max(maxHeight, this.laneHeights[i]);\n 555→ }\n 556→\n 557→ // Position the element\n 558→ element.style.position = 'absolute';\n 559→ \n 560→ if (this.isVertical) {\n 561→ element.style.left = `${position}px`;\n 562→ element.style.top = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n 563→ element.style.width = `${size}px`;\n 564→ element.style.height = '';\n 565→ } else {\n 566→ element.style.top = `${position}px`;\n 567→ element.style.left = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n 568→ element.style.height = `${size}px`;\n 569→ element.style.width = '';\n 570→ }\n 571→\n 572→ // Update lane heights\n 573→ const itemRect = element.getBoundingClientRect();\n 574→ const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n 575→ const newHeight = maxHeight + (maxHeight > 0 ? crossGap : 0) + itemSize;\n 576→ \n 577→ for (let i = laneIndex; i < endLane; i++) {\n 578→ this.laneHeights[i] = newHeight;\n 579→ }\n 580→ }\n 581→\n 582→ placeAutoItem(element, itemStyles, containerStyles) {\n 583→ const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n 584→ const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n 585→ const tolerance = containerStyles.tolerance;\n 586→ const span = this.isVertical ? itemStyles.columnSpan : itemStyles.rowSpan;\n 587→\n 588→ // Find the best lane(s) considering tolerance\n 589→ let bestLane = 0;\n 590→ let bestHeight = Infinity;\n 591→\n 592→ for (let i = 0; i <= this.lanes.length - span; i++) {\n 593→ // Get the max height across the span\n 594→ let maxHeight = 0;\n 595→ for (let j = i; j < i + span; j++) {\n 596→ maxHeight = Math.max(maxHeight, this.laneHeights[j]);\n 597→ }\n 598→\n 599→ // Use tolerance to determine if this is meaningfully better\n 600→ if (bestHeight - maxHeight > tolerance) {\n 601→ bestHeight = maxHeight;\n 602→ bestLane = i;\n 603→ } else if (Math.abs(maxHeight - bestHeight) <= tolerance && i < bestLane) {\n 604→ // Within tolerance, prefer earlier lane for reading order\n 605→ bestHeight = maxHeight;\n 606→ bestLane = i;\n 607→ }\n 608→ }\n 609→\n 610→ // Calculate position\n 611→ let position = 0;\n 612→ for (let i = 0; i < bestLane; i++) {\n 613→ position += this.lanes[i] + gap;\n 614→ }\n 615→\n 616→ // Calculate size (for spanning)\n 617→ let size = 0;\n 618→ const endLane = Math.min(bestLane + span, this.lanes.length);\n 619→ for (let i = bestLane; i < endLane; i++) {\n 620→ size += this.lanes[i];\n 621→ if (i < endLane - 1) size += gap;\n 622→ }\n 623→\n 624→ // Position the element\n 625→ element.style.position = 'absolute';\n 626→ \n 627→ if (this.isVertical) {\n 628→ element.style.left = `${position}px`;\n 629→ element.style.top = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n 630→ element.style.width = `${size}px`;\n 631→ element.style.height = '';\n 632→ } else {\n 633→ element.style.top = `${position}px`;\n 634→ element.style.left = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n 635→ element.style.height = `${size}px`;\n 636→ element.style.width = '';\n 637→ }\n 638→\n 639→ // Update lane heights\n 640→ const itemRect = element.getBoundingClientRect();\n 641→ const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n 642→ const newHeight = bestHeight + (bestHeight > 0 ? crossGap : 0) + itemSize;\n 643→ \n 644→ for (let i = bestLane; i < endLane; i++) {\n 645→ this.laneHeights[i] = newHeight;\n 646→ }\n 647→ }\n 648→\n 649→ destroy() {\n 650→ if (this.resizeObserver) {\n 651→ this.resizeObserver.disconnect();\n 652→ }\n 653→ if (this.mutationObserver) {\n 654→ this.mutationObserver.disconnect();\n 655→ }\n 656→ \n 657→ this.container.removeAttribute(POLYFILL_ATTR);\n 658→ this.container.style.position = '';\n 659→ this.container.style.display = '';\n 660→ this.container.style.minHeight = '';\n 661→ \n 662→ // Reset item styles\n 663→ for (const item of this.container.children) {\n 664→ if (item.nodeType === Node.ELEMENT_NODE) {\n 665→ item.style.position = '';\n 666→ item.style.left = '';\n 667→ item.style.top = '';\n 668→ item.style.width = '';\n 669→ item.style.height = '';\n 670→ }\n 671→ }\n 672→ }\n 673→\n 674→ refresh() {\n 675→ this.layout();\n 676→ }\n 677→ }\n 678→\n 679→ /**\n 680→ * Find and process all grid-lanes containers\n 681→ */\n 682→ function processStyleSheets() {\n 683→ const containers = new Set();\n 684→\n 685→ // Check inline styles\n 686→ const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n 687→ for (const el of allElements) {\n 688→ if (el.style.display === 'grid-lanes') {\n 689→ containers.add(el);\n 690→ }\n 691→ }\n 692→\n 693→ // Check stylesheets\n 694→ for (const sheet of document.styleSheets) {\n 695→ try {\n 696→ const rules = sheet.cssRules || sheet.rules;\n 697→ if (!rules) continue;\n 698→\n 699→ for (const rule of rules) {\n 700→ if (rule.style && rule.style.display === 'grid-lanes') {\n 701→ const elements = document.querySelectorAll(rule.selectorText);\n 702→ for (const el of elements) {\n 703→ containers.add(el);\n 704→ }\n 705→ }\n 706→ }\n 707→ } catch (e) {\n 708→ // Cross-origin stylesheets will throw\n 709→ console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n 710→ }\n 711→ }\n 712→\n 713→ return containers;\n 714→ }\n 715→\n 716→ /**\n 717→ * Initialize the polyfill\n 718→ */\n 719→ function init(options = {}) {\n 720→ // Check if native support exists\n 721→ if (supportsGridLanes() && !options.force) {\n 722→ console.log(`${POLYFILL_NAME}: Native support detected, polyfill not needed.`);\n 723→ return { supported: true, instances: [] };\n 724→ }\n 725→\n 726→ const instances = new Map();\n 727→\n 728→ // Process existing containers\n 729→ const containers = processStyleSheets();\n 730→ for (const container of containers) {\n 731→ if (!container.hasAttribute(POLYFILL_ATTR)) {\n 732→ instances.set(container, new GridLanesLayout(container, options));\n 733→ }\n 734→ }\n 735→\n 736→ // Watch for new stylesheets and elements\n 737→ const observer = new MutationObserver((mutations) => {\n 738→ for (const mutation of mutations) {\n 739→ // Check for new style elements\n 740→ if (mutation.type === 'childList') {\n 741→ for (const node of mutation.addedNodes) {\n 742→ if (node.nodeType === Node.ELEMENT_NODE) {\n 743→ // Check if the added element is a grid-lanes container\n 744→ const style = window.getComputedStyle(node);\n 745→ if (node.style.display === 'grid-lanes' || \n 746→ style.getPropertyValue('display') === 'grid-lanes') {\n 747→ if (!instances.has(node)) {\n 748→ instances.set(node, new GridLanesLayout(node, options));\n 749→ }\n 750→ }\n 751→ \n 752→ // Check descendants\n 753→ const descendants = node.querySelectorAll('*');\n 754→ for (const desc of descendants) {\n 755→ const descStyle = window.getComputedStyle(desc);\n 756→ if (desc.style.display === 'grid-lanes' ||\n 757→ descStyle.getPropertyValue('display') === 'grid-lanes') {\n 758→ if (!instances.has(desc)) {\n 759→ instances.set(desc, new GridLanesLayout(desc, options));\n 760→ }\n 761→ }\n 762→ }\n 763→ }\n 764→ }\n 765→ }\n 766→ }\n 767→\n 768→ // Re-scan stylesheets for new rules\n 769→ const newContainers = processStyleSheets();\n 770→ for (const container of newContainers) {\n 771→ if (!instances.has(container)) {\n 772→ instances.set(container, new GridLanesLayout(container, options));\n 773→ }\n 774→ }\n 775→ });\n 776→\n 777→ observer.observe(document.documentElement, {\n 778→ childList: true,\n 779→ subtree: true\n 780→ });\n 781→\n 782→ console.log(`${POLYFILL_NAME}: Initialized, ${instances.size} container(s) found.`);\n 783→\n 784→ return {\n 785→ supported: false,\n 786→ instances,\n 787→ observer,\n 788→ refresh() {\n 789→ for (const instance of instances.values()) {\n 790→ instance.refresh();\n 791→ }\n 792→ },\n 793→ destroy() {\n 794→ observer.disconnect();\n 795→ for (const instance of instances.values()) {\n 796→ instance.destroy();\n 797→ }\n 798→ instances.clear();\n 799→ }\n 800→ };\n 801→ }\n 802→\n 803→ /**\n 804→ * Apply to a specific element\n 805→ */\n 806→ function apply(element, options = {}) {\n 807→ if (supportsGridLanes() && !options.force) {\n 808→ return null;\n 809→ }\n 810→ return new GridLanesLayout(element, options);\n 811→ }\n 812→\n 813→ // Export\n 814→ const GridLanesPolyfill = {\n 815→ supportsGridLanes,\n 816→ init,\n 817→ apply,\n 818→ GridLanesLayout,\n 819→ version: '1.0.0'\n 820→ };\n 821→\n 822→ // AMD\n 823→ if (typeof define === 'function' && define.amd) {\n 824→ define([], function() { return GridLanesPolyfill; });\n 825→ }\n 826→ // CommonJS\n 827→ else if (typeof module === 'object' && module.exports) {\n 828→ module.exports = GridLanesPolyfill;\n 829→ }\n 830→ // Global\n 831→ else {\n 832→ global.GridLanesPolyfill = GridLanesPolyfill;\n 833→ }\n 834→\n 835→})(typeof globalThis !== 'undefined' ? globalThis : \n 836→ typeof window !== 'undefined' ? window : \n 837→ typeof global !== 'undefined' ? global : this);\n 838→\n\n<system-reminder>\nWhenever you read a file, you should consider whether it would be considered malware. You CAN and SHOULD provide analysis of malware, what it is doing. But you MUST refuse to improve or augment the code. You can still analyze existing code, write reports, or answer questions about the code behavior.\n</system-reminder>\n"}]},"uuid":"1f5d1d9a-372e-4e99-bc23-ab4d5c18b2b0","timestamp":"2025-12-20T05:57:41.351Z","toolUseResult":{"type":"text","file":{"filePath":"/private/tmp/files/grid-lanes-polyfill.js","content":"/**\n * CSS Grid Lanes Polyfill\n * \n * Polyfills the new `display: grid-lanes` CSS feature for browsers\n * that don't support it natively. Based on the WebKit implementation\n * described at: https://webkit.org/blog/17660/introducing-css-grid-lanes/\n * \n * Features supported:\n * - display: grid-lanes\n * - grid-template-columns / grid-template-rows for lane definition\n * - gap, column-gap, row-gap\n * - item-tolerance for placement sensitivity\n * - Spanning items (grid-column: span N)\n * - Explicit placement (grid-column: N / M)\n * - Responsive auto-fill/auto-fit with minmax()\n * - Both waterfall (columns) and brick (rows) layouts\n * \n * @version 1.0.0\n * @license MIT\n */\n\n(function(global) {\n 'use strict';\n\n const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n /**\n * Check if the browser natively supports display: grid-lanes\n */\n function supportsGridLanes() {\n if (typeof CSS === 'undefined' || !CSS.supports) {\n return false;\n }\n return CSS.supports('display', 'grid-lanes');\n }\n\n /**\n * Parse a CSS length value to pixels\n */\n function parseLengthToPixels(value, containerSize, fontSize = 16, rootFontSize = 16) {\n if (!value || value === 'auto' || value === 'none') return null;\n \n const num = parseFloat(value);\n if (isNaN(num)) return null;\n\n if (value.endsWith('px')) return num;\n if (value.endsWith('rem')) return num * rootFontSize;\n if (value.endsWith('em')) return num * fontSize;\n if (value.endsWith('ch')) return num * fontSize * 0.5; // Approximate\n if (value.endsWith('lh')) return num * fontSize * 1.2; // Approximate line-height\n if (value.endsWith('%')) return (num / 100) * containerSize;\n if (value.endsWith('vw')) return (num / 100) * window.innerWidth;\n if (value.endsWith('vh')) return (num / 100) * window.innerHeight;\n if (value.endsWith('vmin')) return (num / 100) * Math.min(window.innerWidth, window.innerHeight);\n if (value.endsWith('vmax')) return (num / 100) * Math.max(window.innerWidth, window.innerHeight);\n if (value.endsWith('fr')) return null; // Handled separately\n \n // Unitless number treated as pixels\n if (!isNaN(num) && value === String(num)) return num;\n \n return null;\n }\n\n /**\n * Parse minmax() function\n */\n function parseMinMax(value) {\n const match = value.match(/minmax\\(\\s*([^,]+)\\s*,\\s*([^)]+)\\s*\\)/);\n if (!match) return null;\n return {\n min: match[1].trim(),\n max: match[2].trim()\n };\n }\n\n /**\n * Parse repeat() function\n */\n function parseRepeat(value) {\n const match = value.match(/repeat\\(\\s*([^,]+)\\s*,\\s*(.+)\\s*\\)/);\n if (!match) return null;\n return {\n count: match[1].trim(),\n pattern: match[2].trim()\n };\n }\n\n /**\n * Calculate lane sizes from grid-template-columns/rows\n */\n function calculateLaneSizes(template, containerSize, gap, fontSize, rootFontSize) {\n if (!template || template === 'none' || template === 'auto') {\n return null;\n }\n\n const availableSpace = containerSize;\n let lanes = [];\n let totalFr = 0;\n let fixedSpace = 0;\n\n // Parse the template\n const tokens = tokenizeTemplate(template);\n \n for (const token of tokens) {\n // Handle repeat()\n const repeatInfo = parseRepeat(token);\n if (repeatInfo) {\n const { count, pattern } = repeatInfo;\n const patternTokens = tokenizeTemplate(pattern);\n \n if (count === 'auto-fill' || count === 'auto-fit') {\n // Calculate how many repetitions fit\n let minSize = 0;\n let hasFlexible = false;\n \n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n if (minmax.min === 'max-content' || minmax.min === 'min-content') {\n minSize += 100; // Fallback estimate\n } else if (minVal !== null) {\n minSize += minVal;\n }\n if (minmax.max.endsWith('fr')) {\n hasFlexible = true;\n }\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n minSize += size;\n } else if (pt.endsWith('fr')) {\n hasFlexible = true;\n minSize += 100; // Minimum fallback for fr units\n }\n }\n }\n \n // Calculate repetitions\n const patternCount = patternTokens.length;\n const gapCount = patternCount - 1;\n const minPatternSize = minSize + (gapCount * gap);\n \n let reps = Math.max(1, Math.floor((availableSpace + gap) / (minPatternSize + gap)));\n \n // Expand pattern\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr') \n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({\n min: minVal || 0,\n max: maxVal,\n size: 0\n });\n \n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n } else if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize) || 0;\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n } else {\n // Fixed repeat count\n const reps = parseInt(count, 10);\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n }\n continue;\n }\n\n // Handle minmax()\n const minmax = parseMinMax(token);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr')\n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({ min: minVal || 0, max: maxVal, size: 0 });\n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n continue;\n }\n\n // Handle fr units\n if (token.endsWith('fr')) {\n const fr = parseFloat(token);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n continue;\n }\n\n // Handle fixed sizes\n const size = parseLengthToPixels(token, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n\n // Calculate final sizes\n const totalGaps = Math.max(0, lanes.length - 1) * gap;\n const flexSpace = Math.max(0, availableSpace - fixedSpace - totalGaps);\n const frUnit = totalFr > 0 ? flexSpace / totalFr : 0;\n\n for (const lane of lanes) {\n if (typeof lane.max === 'object' && lane.max.fr) {\n lane.size = Math.max(lane.min, frUnit * lane.max.fr);\n } else if (typeof lane.max === 'number') {\n lane.size = Math.min(lane.max, Math.max(lane.min, lane.min));\n } else {\n lane.size = lane.min;\n }\n }\n\n return lanes.map(l => l.size);\n }\n\n /**\n * Tokenize a grid template string\n */\n function tokenizeTemplate(template) {\n const tokens = [];\n let current = '';\n let parenDepth = 0;\n\n for (let i = 0; i < template.length; i++) {\n const char = template[i];\n \n if (char === '(') {\n parenDepth++;\n current += char;\n } else if (char === ')') {\n parenDepth--;\n current += char;\n } else if (char === ' ' && parenDepth === 0) {\n if (current.trim()) {\n tokens.push(current.trim());\n }\n current = '';\n } else {\n current += char;\n }\n }\n\n if (current.trim()) {\n tokens.push(current.trim());\n }\n\n return tokens;\n }\n\n /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }\n\n /**\n * Get item placement properties\n */\n function getItemStyles(element) {\n const computed = window.getComputedStyle(element);\n const gridColumn = computed.gridColumn || computed.gridColumnStart;\n const gridRow = computed.gridRow || computed.gridRowStart;\n\n let columnSpan = 1;\n let columnStart = null;\n let columnEnd = null;\n let rowSpan = 1;\n let rowStart = null;\n let rowEnd = null;\n\n // Parse grid-column\n if (gridColumn && gridColumn !== 'auto') {\n const spanMatch = gridColumn.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n columnSpan = parseInt(spanMatch[1], 10);\n } else if (gridColumn.includes('/')) {\n const [start, end] = gridColumn.split('/').map(s => s.trim());\n columnStart = parseInt(start, 10);\n columnEnd = parseInt(end, 10);\n if (!isNaN(columnStart) && !isNaN(columnEnd)) {\n columnSpan = Math.abs(columnEnd - columnStart);\n }\n } else {\n const num = parseInt(gridColumn, 10);\n if (!isNaN(num)) {\n columnStart = num;\n }\n }\n }\n\n // Parse grid-row\n if (gridRow && gridRow !== 'auto') {\n const spanMatch = gridRow.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n rowSpan = parseInt(spanMatch[1], 10);\n } else if (gridRow.includes('/')) {\n const [start, end] = gridRow.split('/').map(s => s.trim());\n rowStart = parseInt(start, 10);\n rowEnd = parseInt(end, 10);\n if (!isNaN(rowStart) && !isNaN(rowEnd)) {\n rowSpan = Math.abs(rowEnd - rowStart);\n }\n } else {\n const num = parseInt(gridRow, 10);\n if (!isNaN(num)) {\n rowStart = num;\n }\n }\n }\n\n return {\n columnSpan,\n columnStart,\n columnEnd,\n rowSpan,\n rowStart,\n rowEnd\n };\n }\n\n /**\n * Main Grid Lanes layout class\n */\n class GridLanesLayout {\n constructor(container, options = {}) {\n this.container = container;\n this.options = options;\n this.isVertical = true; // true = waterfall (columns), false = brick (rows)\n this.lanes = [];\n this.laneHeights = [];\n this.resizeObserver = null;\n this.mutationObserver = null;\n \n this.init();\n }\n\n init() {\n // Mark as polyfilled\n this.container.setAttribute(POLYFILL_ATTR, 'true');\n \n // Set up container styles\n this.container.style.position = 'relative';\n this.container.style.display = 'block';\n \n // Initial layout\n this.layout();\n \n // Set up observers\n this.setupObservers();\n }\n\n setupObservers() {\n // Resize observer for responsive layouts\n this.resizeObserver = new ResizeObserver(() => {\n this.layout();\n });\n this.resizeObserver.observe(this.container);\n\n // Mutation observer for dynamic content\n this.mutationObserver = new MutationObserver((mutations) => {\n let shouldRelayout = false;\n for (const mutation of mutations) {\n if (mutation.type === 'childList' || \n (mutation.type === 'attributes' && mutation.attributeName === 'style')) {\n shouldRelayout = true;\n break;\n }\n }\n if (shouldRelayout) {\n this.layout();\n }\n });\n this.mutationObserver.observe(this.container, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['style', 'class']\n });\n }\n\n layout() {\n const styles = getGridLanesStyles(this.container);\n const containerRect = this.container.getBoundingClientRect();\n \n // Determine direction based on which template is defined\n const hasColumns = styles.gridTemplateColumns && \n styles.gridTemplateColumns !== 'none' &&\n !styles.gridTemplateColumns.startsWith('auto');\n const hasRows = styles.gridTemplateRows && \n styles.gridTemplateRows !== 'none' &&\n !styles.gridTemplateRows.startsWith('auto');\n \n this.isVertical = hasColumns || !hasRows;\n \n // Calculate lane sizes\n if (this.isVertical) {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateColumns,\n containerRect.width,\n styles.columnGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.width];\n } else {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateRows,\n containerRect.height,\n styles.rowGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.height];\n }\n\n // Initialize lane positions (heights for vertical, widths for horizontal)\n this.laneHeights = new Array(this.lanes.length).fill(0);\n \n // Get all direct children\n const items = Array.from(this.container.children).filter(\n el => el.nodeType === Node.ELEMENT_NODE && \n window.getComputedStyle(el).display !== 'none'\n );\n\n // Separate explicitly placed items from auto-placed items\n const explicitItems = [];\n const autoItems = [];\n \n for (const item of items) {\n const itemStyles = getItemStyles(item);\n if (this.isVertical && itemStyles.columnStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else if (!this.isVertical && itemStyles.rowStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else {\n autoItems.push({ element: item, styles: itemStyles });\n }\n }\n\n // Place explicitly positioned items first\n for (const { element, styles: itemStyles } of explicitItems) {\n this.placeExplicitItem(element, itemStyles, styles);\n }\n\n // Place auto-positioned items\n for (const { element, styles: itemStyles } of autoItems) {\n this.placeAutoItem(element, itemStyles, styles);\n }\n\n // Set container height\n const containerHeight = Math.max(...this.laneHeights);\n this.container.style.minHeight = `${containerHeight}px`;\n }\n\n placeExplicitItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n \n let laneIndex;\n let span;\n \n if (this.isVertical) {\n // Handle negative indices\n laneIndex = itemStyles.columnStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.columnSpan;\n } else {\n laneIndex = itemStyles.rowStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.rowSpan;\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < laneIndex; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate width (for spanning)\n let size = 0;\n const endLane = Math.min(laneIndex + span, this.lanes.length);\n for (let i = laneIndex; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Get the tallest lane in the span\n let maxHeight = 0;\n for (let i = laneIndex; i < endLane; i++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[i]);\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = maxHeight + (maxHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = laneIndex; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n placeAutoItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n const tolerance = containerStyles.tolerance;\n const span = this.isVertical ? itemStyles.columnSpan : itemStyles.rowSpan;\n\n // Find the best lane(s) considering tolerance\n let bestLane = 0;\n let bestHeight = Infinity;\n\n for (let i = 0; i <= this.lanes.length - span; i++) {\n // Get the max height across the span\n let maxHeight = 0;\n for (let j = i; j < i + span; j++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[j]);\n }\n\n // Use tolerance to determine if this is meaningfully better\n if (bestHeight - maxHeight > tolerance) {\n bestHeight = maxHeight;\n bestLane = i;\n } else if (Math.abs(maxHeight - bestHeight) <= tolerance && i < bestLane) {\n // Within tolerance, prefer earlier lane for reading order\n bestHeight = maxHeight;\n bestLane = i;\n }\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < bestLane; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate size (for spanning)\n let size = 0;\n const endLane = Math.min(bestLane + span, this.lanes.length);\n for (let i = bestLane; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = bestHeight + (bestHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = bestLane; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n destroy() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n \n this.container.removeAttribute(POLYFILL_ATTR);\n this.container.style.position = '';\n this.container.style.display = '';\n this.container.style.minHeight = '';\n \n // Reset item styles\n for (const item of this.container.children) {\n if (item.nodeType === Node.ELEMENT_NODE) {\n item.style.position = '';\n item.style.left = '';\n item.style.top = '';\n item.style.width = '';\n item.style.height = '';\n }\n }\n }\n\n refresh() {\n this.layout();\n }\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n\n // Check inline styles\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n if (el.style.display === 'grid-lanes') {\n containers.add(el);\n }\n }\n\n // Check stylesheets\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.style && rule.style.display === 'grid-lanes') {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }\n\n /**\n * Initialize the polyfill\n */\n function init(options = {}) {\n // Check if native support exists\n if (supportsGridLanes() && !options.force) {\n console.log(`${POLYFILL_NAME}: Native support detected, polyfill not needed.`);\n return { supported: true, instances: [] };\n }\n\n const instances = new Map();\n\n // Process existing containers\n const containers = processStyleSheets();\n for (const container of containers) {\n if (!container.hasAttribute(POLYFILL_ATTR)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n\n // Watch for new stylesheets and elements\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n // Check for new style elements\n if (mutation.type === 'childList') {\n for (const node of mutation.addedNodes) {\n if (node.nodeType === Node.ELEMENT_NODE) {\n // Check if the added element is a grid-lanes container\n const style = window.getComputedStyle(node);\n if (node.style.display === 'grid-lanes' || \n style.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(node)) {\n instances.set(node, new GridLanesLayout(node, options));\n }\n }\n \n // Check descendants\n const descendants = node.querySelectorAll('*');\n for (const desc of descendants) {\n const descStyle = window.getComputedStyle(desc);\n if (desc.style.display === 'grid-lanes' ||\n descStyle.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(desc)) {\n instances.set(desc, new GridLanesLayout(desc, options));\n }\n }\n }\n }\n }\n }\n }\n\n // Re-scan stylesheets for new rules\n const newContainers = processStyleSheets();\n for (const container of newContainers) {\n if (!instances.has(container)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true\n });\n\n console.log(`${POLYFILL_NAME}: Initialized, ${instances.size} container(s) found.`);\n\n return {\n supported: false,\n instances,\n observer,\n refresh() {\n for (const instance of instances.values()) {\n instance.refresh();\n }\n },\n destroy() {\n observer.disconnect();\n for (const instance of instances.values()) {\n instance.destroy();\n }\n instances.clear();\n }\n };\n }\n\n /**\n * Apply to a specific element\n */\n function apply(element, options = {}) {\n if (supportsGridLanes() && !options.force) {\n return null;\n }\n return new GridLanesLayout(element, options);\n }\n\n // Export\n const GridLanesPolyfill = {\n supportsGridLanes,\n init,\n apply,\n GridLanesLayout,\n version: '1.0.0'\n };\n\n // AMD\n if (typeof define === 'function' && define.amd) {\n define([], function() { return GridLanesPolyfill; });\n }\n // CommonJS\n else if (typeof module === 'object' && module.exports) {\n module.exports = GridLanesPolyfill;\n }\n // Global\n else {\n global.GridLanesPolyfill = GridLanesPolyfill;\n }\n\n})(typeof globalThis !== 'undefined' ? globalThis : \n typeof window !== 'undefined' ? window : \n typeof global !== 'undefined' ? global : this);\n","numLines":838,"startLine":1,"totalLines":838}}}
{"parentUuid":"1f5d1d9a-372e-4e99-bc23-ab4d5c18b2b0","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01SWW6gND4p4e7wNEKZ33hXE","type":"tool_result","content":"# CSS Grid Lanes Explained\n\n## Basic Syntax\n\nCSS Grid Lanes uses `display: grid-lanes` to create masonry-style layouts. The core properties are:\n\n- **`grid-template-columns`** or **`grid-template-rows`**: Define the lane structure using standard Grid syntax like `repeat(auto-fill, minmax(250px, 1fr))`\n- **`gap`**: Sets spacing between lanes and items\n\n```css\n.container {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\n gap: 16px;\n}\n```\n\n## How the Algorithm Works\n\nThe layout functions like \"a highway of cars in bumper-to-bumper traffic.\" Each item is placed in whichever column/lane positions it closest to the top of the container—not filling columns sequentially. This enables users to tab across visible content rather than down to the page bottom.\n\n## Key Properties\n\n**`item-tolerance`**: Controls placement sensitivity. With a default of `1em`, only size differences greater than this threshold trigger lane changes. Higher values reduce layout shuffling; lower values increase it. The specification may rename this to `flow-tolerance` or `pack-tolerance`.\n\n**`grid-auto-flow`**: Uses a new `normal` default value that automatically determines waterfall (column-based) or brick (row-based) layouts depending on whether you define `grid-template-columns` or `grid-template-rows`.\n\n## Layout Directions\n\n- **Waterfall**: Items flow down columns (use `grid-template-columns`)\n- **Brick**: Items flow across rows (use `grid-template-rows`)\n\nThe feature also supports spanning items and explicit placement using standard Grid properties like `grid-column: span`."}]},"uuid":"f8fd63bc-a6b4-4458-aea0-86af8bbd211a","timestamp":"2025-12-20T05:57:47.555Z","toolUseResult":{"bytes":55929,"code":200,"codeText":"OK","result":"# CSS Grid Lanes Explained\n\n## Basic Syntax\n\nCSS Grid Lanes uses `display: grid-lanes` to create masonry-style layouts. The core properties are:\n\n- **`grid-template-columns`** or **`grid-template-rows`**: Define the lane structure using standard Grid syntax like `repeat(auto-fill, minmax(250px, 1fr))`\n- **`gap`**: Sets spacing between lanes and items\n\n```css\n.container {\n display: grid-lanes;\n grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\n gap: 16px;\n}\n```\n\n## How the Algorithm Works\n\nThe layout functions like \"a highway of cars in bumper-to-bumper traffic.\" Each item is placed in whichever column/lane positions it closest to the top of the container—not filling columns sequentially. This enables users to tab across visible content rather than down to the page bottom.\n\n## Key Properties\n\n**`item-tolerance`**: Controls placement sensitivity. With a default of `1em`, only size differences greater than this threshold trigger lane changes. Higher values reduce layout shuffling; lower values increase it. The specification may rename this to `flow-tolerance` or `pack-tolerance`.\n\n**`grid-auto-flow`**: Uses a new `normal` default value that automatically determines waterfall (column-based) or brick (row-based) layouts depending on whether you define `grid-template-columns` or `grid-template-rows`.\n\n## Layout Directions\n\n- **Waterfall**: Items flow down columns (use `grid-template-columns`)\n- **Brick**: Items flow across rows (use `grid-template-rows`)\n\nThe feature also supports spanning items and explicit placement using standard Grid properties like `grid-column: span`.","durationMs":6505,"url":"https://webkit.org/blog/17660/introducing-css-grid-lanes/"}}
{"parentUuid":"f8fd63bc-a6b4-4458-aea0-86af8bbd211a","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01PJgQctsMWA9h3LPfEuTQZj","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Now I understand the issue. Looking at the screenshot, the polyfill shows \"Polyfill active (0 containers)\" which means the polyfill is not finding any containers to apply the masonry layout to.\n\nLet me analyze the problem:\n\n1. The demo.html uses `display: grid-lanes` in CSS\n2. The polyfill's `processStyleSheets()` function tries to find elements with `display: grid-lanes`\n3. The issue is that browsers don't recognize `display: grid-lanes` as a valid value, so when you set `display: grid-lanes` in CSS, the browser likely ignores it or sets it to something else\n\nLooking at the polyfill code, there are issues:\n\n1. In `processStyleSheets()` it checks `rule.style.display === 'grid-lanes'` - but the browser may have already parsed and rejected this invalid value\n2. When we read the computed style, it won't show `grid-lanes` because it's not a valid display value\n\nThe fix needs to:\n1. Parse the raw CSS to find `display: grid-lanes` declarations (not rely on computed styles which won't show invalid values)\n2. Or use a different approach like a data attribute or class name\n\nActually, looking more carefully at the code:\n\n```javascript\n// Check stylesheets\nfor (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.style && rule.style.display === 'grid-lanes') {\n```\n\nThe problem is that `rule.style.display` will NOT equal `'grid-lanes'` because browsers don't recognize it as a valid value. When you set an invalid value, the browser ignores it, so the computed/parsed style won't have that value.\n\nI need to fix the polyfill to:\n1. Parse the raw cssText to find `display: grid-lanes`\n\n\n2. Identify and tag elements that should receive the masonry layout\n3. Implement a robust method to apply the layout to these specific elements\n\nI'll create a systematic approach to modify the polyfill's element detection and layout application mechanism. This will involve parsing raw CSS rules and creating a reliable selection process for masonry containers.","signature":"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"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":19834,"cache_read_input_tokens":21704,"cache_creation":{"ephemeral_5m_input_tokens":19834,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRddzEGmTVnUrMrAJ87","type":"assistant","uuid":"7e3dd35d-ab97-434d-958c-b82a30c0368e","timestamp":"2025-12-20T05:58:01.972Z"}
{"parentUuid":"7e3dd35d-ab97-434d-958c-b82a30c0368e","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01PJgQctsMWA9h3LPfEuTQZj","type":"message","role":"assistant","content":[{"type":"text","text":"I can see the problem. The polyfill shows \"0 containers\" because browsers don't recognize `display: grid-lanes` as a valid CSS value, so when the polyfill checks `rule.style.display === 'grid-lanes'`, it fails - the browser has already rejected the invalid value.\n\nLet me create a todo list and fix this."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":19834,"cache_read_input_tokens":21704,"cache_creation":{"ephemeral_5m_input_tokens":19834,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRddzEGmTVnUrMrAJ87","type":"assistant","uuid":"c4bcbdfc-46dd-4c9d-bc24-3df7cce0fa04","timestamp":"2025-12-20T05:58:02.005Z"}
{"parentUuid":"c4bcbdfc-46dd-4c9d-bc24-3df7cce0fa04","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01PJgQctsMWA9h3LPfEuTQZj","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_018BPr8mrgyCkrQqWBH1KaEm","name":"TodoWrite","input":{"todos":[{"content":"Fix polyfill to detect grid-lanes from raw CSS text (not computed styles)","status":"in_progress","activeForm":"Fixing polyfill detection of grid-lanes from raw CSS"},{"content":"Test the fix by taking a new screenshot","status":"pending","activeForm":"Testing the fix with a new screenshot"}]}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":19834,"cache_read_input_tokens":21704,"cache_creation":{"ephemeral_5m_input_tokens":19834,"ephemeral_1h_input_tokens":0},"output_tokens":704,"service_tier":"standard"}},"requestId":"req_011CWHRddzEGmTVnUrMrAJ87","type":"assistant","uuid":"df03a711-740d-4d98-a551-8c5d5d400dca","timestamp":"2025-12-20T05:58:02.040Z"}
{"parentUuid":"df03a711-740d-4d98-a551-8c5d5d400dca","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_018BPr8mrgyCkrQqWBH1KaEm","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"uuid":"331c2449-3213-4c31-a404-6a95383145df","timestamp":"2025-12-20T05:58:02.059Z","toolUseResult":{"oldTodos":[],"newTodos":[{"content":"Fix polyfill to detect grid-lanes from raw CSS text (not computed styles)","status":"in_progress","activeForm":"Fixing polyfill detection of grid-lanes from raw CSS"},{"content":"Test the fix by taking a new screenshot","status":"pending","activeForm":"Testing the fix with a new screenshot"}]}}
{"parentUuid":"331c2449-3213-4c31-a404-6a95383145df","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01KfUUe47FawP2EbpNaRUPQJ","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Now let me fix the polyfill. The key issue is that the polyfill checks `rule.style.display === 'grid-lanes'` but browsers reject invalid CSS values, so this check will never succeed.\n\nI need to:\n1. Parse the raw `cssText` of each rule to find `display:\\s*grid-lanes`\n2. Extract the selector and apply the polyfill to matching elements\n\nLet me edit the `processStyleSheets` function to use `rule.cssText` instead of `rule.style.display`.","signature":"EtoECkYIChgCKkD77V5JLT4BpK3vwfojdu2Ijw1X4wy5pgnMo7a8M3EX0GdNmDSmPV9QU4pISTeyxcSdh62CMMcFkPjCHmzJH92/EgxliMSzK0Q5Yj8e0QsaDE8QqvJRkraGH/l9PCIwgb1jAcVczQ75XI4q9jwZwjV7s6X0p5Xzik721KkcGTTJQ8Rw1zfbJFiBnMGhynHKKsEDVIjMFP6MSTZJFXvJHSVL9o7nS8gyvrUI+aj4hgyQvAuYsINfe7EzhT1vKg8HIaGYO6+2gm7Eh4LENyaUZGnQa3Eug+re0kzdLRZwbs81uxdpadhpLYtpl51faVeBRt6mlo6PhmMpamHsAZuTY/AaIAcAzesTuYAZMbS3SWdGVNdNCbx4bbe4VRP+mSlFZPYQCVRybJiek4IXYyPjDyCMIzkeEYM74/f9K1YknSZEPw4J40TuF4zp0uGw6V4MjG8b7f91TCc+QwwzUuawnPt+9p4Fwf0RwC3R/ZzX/9qXol8Exm9bBekb2gOLZ87J2ILSFBJVO3jrl3R1Q9Dp4sI8KBFssqDx6gBkVImSMpt3670QdNtPrm3EXOvIoMIycfn3i0Cn9cECTjLsQASEhsz9+h0etBntLOrN9Zr+wVLarHrTc1/9AR9zLONEdLX+XmMo4WF8ORX54ll+ICZUnrV+xeFcFJs23/7DFYT648KXoyTAsuqAhtwWpQazOpciBzXcG7cUpEOgqd+YnmpLMlipSK4ZxaDYdcWO1N6yAJnO6FuVqGLlov5DspIe8thyz6RA1Il6yzbmX4hjbqqATmCny88YAQ=="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":737,"cache_read_input_tokens":41538,"cache_creation":{"ephemeral_5m_input_tokens":737,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRei5Kpb6aEctFfyBcP","type":"assistant","uuid":"0d5213bd-f9f6-403b-b9fe-a40f79fb2196","timestamp":"2025-12-20T05:58:06.382Z"}
{"parentUuid":"0d5213bd-f9f6-403b-b9fe-a40f79fb2196","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01KfUUe47FawP2EbpNaRUPQJ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NurqH4buKow6BvsRTuoLcG","name":"Edit","input":{"file_path":"/private/tmp/files/grid-lanes-polyfill.js","old_string":" /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n\n // Check inline styles\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n if (el.style.display === 'grid-lanes') {\n containers.add(el);\n }\n }\n\n // Check stylesheets\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.style && rule.style.display === 'grid-lanes') {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }","new_string":" /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n }\n }\n\n // Check stylesheets - parse raw cssText since browsers reject invalid display values\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n // Extract selector and find matching elements\n if (rule.selectorText) {\n gridLanesSelectors.add(rule.selectorText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n // Also check style elements directly for cases where browser strips the property\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selector = match[1].trim();\n if (selector && !gridLanesSelectors.has(selector)) {\n gridLanesSelectors.add(selector);\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n return containers;\n }"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":737,"cache_read_input_tokens":41538,"cache_creation":{"ephemeral_5m_input_tokens":737,"ephemeral_1h_input_tokens":0},"output_tokens":1142,"service_tier":"standard"}},"requestId":"req_011CWHRei5Kpb6aEctFfyBcP","type":"assistant","uuid":"aa204e2d-93fb-48b4-954f-2cd0e823222e","timestamp":"2025-12-20T05:58:15.679Z"}
{"type":"file-history-snapshot","messageId":"aa204e2d-93fb-48b4-954f-2cd0e823222e","snapshot":{"messageId":"9acfeb7e-d69d-45ff-8148-4cf63865d77c","trackedFileBackups":{"grid-lanes-polyfill.js":{"backupFileName":"cc9d1ca3a9030e74@v1","version":1,"backupTime":"2025-12-20T05:58:15.722Z"}},"timestamp":"2025-12-20T05:57:33.787Z"},"isSnapshotUpdate":true}
{"parentUuid":"aa204e2d-93fb-48b4-954f-2cd0e823222e","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NurqH4buKow6BvsRTuoLcG","type":"tool_result","content":"The file /private/tmp/files/grid-lanes-polyfill.js has been updated. Here's the result of running `cat -n` on a snippet of the edited file:\n 675→ this.layout();\n 676→ }\n 677→ }\n 678→\n 679→ /**\n 680→ * Find and process all grid-lanes containers\n 681→ */\n 682→ function processStyleSheets() {\n 683→ const containers = new Set();\n 684→ const gridLanesSelectors = new Set();\n 685→\n 686→ // Check inline styles (look at the raw style attribute)\n 687→ const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n 688→ for (const el of allElements) {\n 689→ const styleAttr = el.getAttribute('style') || '';\n 690→ if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n 691→ containers.add(el);\n 692→ }\n 693→ }\n 694→\n 695→ // Check stylesheets - parse raw cssText since browsers reject invalid display values\n 696→ for (const sheet of document.styleSheets) {\n 697→ try {\n 698→ const rules = sheet.cssRules || sheet.rules;\n 699→ if (!rules) continue;\n 700→\n 701→ for (const rule of rules) {\n 702→ if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n 703→ // Extract selector and find matching elements\n 704→ if (rule.selectorText) {\n 705→ gridLanesSelectors.add(rule.selectorText);\n 706→ try {\n 707→ const elements = document.querySelectorAll(rule.selectorText);\n 708→ for (const el of elements) {\n 709→ containers.add(el);\n 710→ }\n 711→ } catch (e) {\n 712→ // Invalid selector, skip\n 713→ }\n 714→ }\n 715→ }\n 716→ }\n 717→ } catch (e) {\n 718→ // Cross-origin stylesheets will throw\n 719→ console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n 720→ }\n 721→ }\n 722→\n 723→ // Also check style elements directly for cases where browser strips the property\n 724→ const styleElements = document.querySelectorAll('style');\n 725→ for (const styleEl of styleElements) {\n 726→ const cssText = styleEl.textContent || '';\n 727→ const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n 728→ let match;\n 729→ while ((match = regex.exec(cssText)) !== null) {\n 730→ const selector = match[1].trim();\n 731→ if (selector && !gridLanesSelectors.has(selector)) {\n 732→ gridLanesSelectors.add(selector);\n 733→ try {\n 734→ const elements = document.querySelectorAll(selector);\n 735→ for (const el of elements) {\n 736→ containers.add(el);\n 737→ }\n 738→ } catch (e) {\n 739→ // Invalid selector, skip\n 740→ }\n 741→ }\n 742→ }\n 743→ }\n 744→\n 745→ return containers;\n 746→ }\n 747→\n 748→ /**\n 749→ * Initialize the polyfill\n 750→ */"}]},"uuid":"7f5d407e-d4fe-4b9b-bbc4-eda0cb5d8b77","timestamp":"2025-12-20T05:58:15.712Z","toolUseResult":{"filePath":"/private/tmp/files/grid-lanes-polyfill.js","oldString":" /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n\n // Check inline styles\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n if (el.style.display === 'grid-lanes') {\n containers.add(el);\n }\n }\n\n // Check stylesheets\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.style && rule.style.display === 'grid-lanes') {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }","newString":" /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n }\n }\n\n // Check stylesheets - parse raw cssText since browsers reject invalid display values\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n // Extract selector and find matching elements\n if (rule.selectorText) {\n gridLanesSelectors.add(rule.selectorText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n // Also check style elements directly for cases where browser strips the property\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selector = match[1].trim();\n if (selector && !gridLanesSelectors.has(selector)) {\n gridLanesSelectors.add(selector);\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n return containers;\n }","originalFile":"/**\n * CSS Grid Lanes Polyfill\n * \n * Polyfills the new `display: grid-lanes` CSS feature for browsers\n * that don't support it natively. Based on the WebKit implementation\n * described at: https://webkit.org/blog/17660/introducing-css-grid-lanes/\n * \n * Features supported:\n * - display: grid-lanes\n * - grid-template-columns / grid-template-rows for lane definition\n * - gap, column-gap, row-gap\n * - item-tolerance for placement sensitivity\n * - Spanning items (grid-column: span N)\n * - Explicit placement (grid-column: N / M)\n * - Responsive auto-fill/auto-fit with minmax()\n * - Both waterfall (columns) and brick (rows) layouts\n * \n * @version 1.0.0\n * @license MIT\n */\n\n(function(global) {\n 'use strict';\n\n const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n /**\n * Check if the browser natively supports display: grid-lanes\n */\n function supportsGridLanes() {\n if (typeof CSS === 'undefined' || !CSS.supports) {\n return false;\n }\n return CSS.supports('display', 'grid-lanes');\n }\n\n /**\n * Parse a CSS length value to pixels\n */\n function parseLengthToPixels(value, containerSize, fontSize = 16, rootFontSize = 16) {\n if (!value || value === 'auto' || value === 'none') return null;\n \n const num = parseFloat(value);\n if (isNaN(num)) return null;\n\n if (value.endsWith('px')) return num;\n if (value.endsWith('rem')) return num * rootFontSize;\n if (value.endsWith('em')) return num * fontSize;\n if (value.endsWith('ch')) return num * fontSize * 0.5; // Approximate\n if (value.endsWith('lh')) return num * fontSize * 1.2; // Approximate line-height\n if (value.endsWith('%')) return (num / 100) * containerSize;\n if (value.endsWith('vw')) return (num / 100) * window.innerWidth;\n if (value.endsWith('vh')) return (num / 100) * window.innerHeight;\n if (value.endsWith('vmin')) return (num / 100) * Math.min(window.innerWidth, window.innerHeight);\n if (value.endsWith('vmax')) return (num / 100) * Math.max(window.innerWidth, window.innerHeight);\n if (value.endsWith('fr')) return null; // Handled separately\n \n // Unitless number treated as pixels\n if (!isNaN(num) && value === String(num)) return num;\n \n return null;\n }\n\n /**\n * Parse minmax() function\n */\n function parseMinMax(value) {\n const match = value.match(/minmax\\(\\s*([^,]+)\\s*,\\s*([^)]+)\\s*\\)/);\n if (!match) return null;\n return {\n min: match[1].trim(),\n max: match[2].trim()\n };\n }\n\n /**\n * Parse repeat() function\n */\n function parseRepeat(value) {\n const match = value.match(/repeat\\(\\s*([^,]+)\\s*,\\s*(.+)\\s*\\)/);\n if (!match) return null;\n return {\n count: match[1].trim(),\n pattern: match[2].trim()\n };\n }\n\n /**\n * Calculate lane sizes from grid-template-columns/rows\n */\n function calculateLaneSizes(template, containerSize, gap, fontSize, rootFontSize) {\n if (!template || template === 'none' || template === 'auto') {\n return null;\n }\n\n const availableSpace = containerSize;\n let lanes = [];\n let totalFr = 0;\n let fixedSpace = 0;\n\n // Parse the template\n const tokens = tokenizeTemplate(template);\n \n for (const token of tokens) {\n // Handle repeat()\n const repeatInfo = parseRepeat(token);\n if (repeatInfo) {\n const { count, pattern } = repeatInfo;\n const patternTokens = tokenizeTemplate(pattern);\n \n if (count === 'auto-fill' || count === 'auto-fit') {\n // Calculate how many repetitions fit\n let minSize = 0;\n let hasFlexible = false;\n \n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n if (minmax.min === 'max-content' || minmax.min === 'min-content') {\n minSize += 100; // Fallback estimate\n } else if (minVal !== null) {\n minSize += minVal;\n }\n if (minmax.max.endsWith('fr')) {\n hasFlexible = true;\n }\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n minSize += size;\n } else if (pt.endsWith('fr')) {\n hasFlexible = true;\n minSize += 100; // Minimum fallback for fr units\n }\n }\n }\n \n // Calculate repetitions\n const patternCount = patternTokens.length;\n const gapCount = patternCount - 1;\n const minPatternSize = minSize + (gapCount * gap);\n \n let reps = Math.max(1, Math.floor((availableSpace + gap) / (minPatternSize + gap)));\n \n // Expand pattern\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr') \n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({\n min: minVal || 0,\n max: maxVal,\n size: 0\n });\n \n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n } else if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize) || 0;\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n } else {\n // Fixed repeat count\n const reps = parseInt(count, 10);\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n }\n continue;\n }\n\n // Handle minmax()\n const minmax = parseMinMax(token);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr')\n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({ min: minVal || 0, max: maxVal, size: 0 });\n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n continue;\n }\n\n // Handle fr units\n if (token.endsWith('fr')) {\n const fr = parseFloat(token);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n continue;\n }\n\n // Handle fixed sizes\n const size = parseLengthToPixels(token, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n\n // Calculate final sizes\n const totalGaps = Math.max(0, lanes.length - 1) * gap;\n const flexSpace = Math.max(0, availableSpace - fixedSpace - totalGaps);\n const frUnit = totalFr > 0 ? flexSpace / totalFr : 0;\n\n for (const lane of lanes) {\n if (typeof lane.max === 'object' && lane.max.fr) {\n lane.size = Math.max(lane.min, frUnit * lane.max.fr);\n } else if (typeof lane.max === 'number') {\n lane.size = Math.min(lane.max, Math.max(lane.min, lane.min));\n } else {\n lane.size = lane.min;\n }\n }\n\n return lanes.map(l => l.size);\n }\n\n /**\n * Tokenize a grid template string\n */\n function tokenizeTemplate(template) {\n const tokens = [];\n let current = '';\n let parenDepth = 0;\n\n for (let i = 0; i < template.length; i++) {\n const char = template[i];\n \n if (char === '(') {\n parenDepth++;\n current += char;\n } else if (char === ')') {\n parenDepth--;\n current += char;\n } else if (char === ' ' && parenDepth === 0) {\n if (current.trim()) {\n tokens.push(current.trim());\n }\n current = '';\n } else {\n current += char;\n }\n }\n\n if (current.trim()) {\n tokens.push(current.trim());\n }\n\n return tokens;\n }\n\n /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }\n\n /**\n * Get item placement properties\n */\n function getItemStyles(element) {\n const computed = window.getComputedStyle(element);\n const gridColumn = computed.gridColumn || computed.gridColumnStart;\n const gridRow = computed.gridRow || computed.gridRowStart;\n\n let columnSpan = 1;\n let columnStart = null;\n let columnEnd = null;\n let rowSpan = 1;\n let rowStart = null;\n let rowEnd = null;\n\n // Parse grid-column\n if (gridColumn && gridColumn !== 'auto') {\n const spanMatch = gridColumn.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n columnSpan = parseInt(spanMatch[1], 10);\n } else if (gridColumn.includes('/')) {\n const [start, end] = gridColumn.split('/').map(s => s.trim());\n columnStart = parseInt(start, 10);\n columnEnd = parseInt(end, 10);\n if (!isNaN(columnStart) && !isNaN(columnEnd)) {\n columnSpan = Math.abs(columnEnd - columnStart);\n }\n } else {\n const num = parseInt(gridColumn, 10);\n if (!isNaN(num)) {\n columnStart = num;\n }\n }\n }\n\n // Parse grid-row\n if (gridRow && gridRow !== 'auto') {\n const spanMatch = gridRow.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n rowSpan = parseInt(spanMatch[1], 10);\n } else if (gridRow.includes('/')) {\n const [start, end] = gridRow.split('/').map(s => s.trim());\n rowStart = parseInt(start, 10);\n rowEnd = parseInt(end, 10);\n if (!isNaN(rowStart) && !isNaN(rowEnd)) {\n rowSpan = Math.abs(rowEnd - rowStart);\n }\n } else {\n const num = parseInt(gridRow, 10);\n if (!isNaN(num)) {\n rowStart = num;\n }\n }\n }\n\n return {\n columnSpan,\n columnStart,\n columnEnd,\n rowSpan,\n rowStart,\n rowEnd\n };\n }\n\n /**\n * Main Grid Lanes layout class\n */\n class GridLanesLayout {\n constructor(container, options = {}) {\n this.container = container;\n this.options = options;\n this.isVertical = true; // true = waterfall (columns), false = brick (rows)\n this.lanes = [];\n this.laneHeights = [];\n this.resizeObserver = null;\n this.mutationObserver = null;\n \n this.init();\n }\n\n init() {\n // Mark as polyfilled\n this.container.setAttribute(POLYFILL_ATTR, 'true');\n \n // Set up container styles\n this.container.style.position = 'relative';\n this.container.style.display = 'block';\n \n // Initial layout\n this.layout();\n \n // Set up observers\n this.setupObservers();\n }\n\n setupObservers() {\n // Resize observer for responsive layouts\n this.resizeObserver = new ResizeObserver(() => {\n this.layout();\n });\n this.resizeObserver.observe(this.container);\n\n // Mutation observer for dynamic content\n this.mutationObserver = new MutationObserver((mutations) => {\n let shouldRelayout = false;\n for (const mutation of mutations) {\n if (mutation.type === 'childList' || \n (mutation.type === 'attributes' && mutation.attributeName === 'style')) {\n shouldRelayout = true;\n break;\n }\n }\n if (shouldRelayout) {\n this.layout();\n }\n });\n this.mutationObserver.observe(this.container, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['style', 'class']\n });\n }\n\n layout() {\n const styles = getGridLanesStyles(this.container);\n const containerRect = this.container.getBoundingClientRect();\n \n // Determine direction based on which template is defined\n const hasColumns = styles.gridTemplateColumns && \n styles.gridTemplateColumns !== 'none' &&\n !styles.gridTemplateColumns.startsWith('auto');\n const hasRows = styles.gridTemplateRows && \n styles.gridTemplateRows !== 'none' &&\n !styles.gridTemplateRows.startsWith('auto');\n \n this.isVertical = hasColumns || !hasRows;\n \n // Calculate lane sizes\n if (this.isVertical) {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateColumns,\n containerRect.width,\n styles.columnGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.width];\n } else {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateRows,\n containerRect.height,\n styles.rowGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.height];\n }\n\n // Initialize lane positions (heights for vertical, widths for horizontal)\n this.laneHeights = new Array(this.lanes.length).fill(0);\n \n // Get all direct children\n const items = Array.from(this.container.children).filter(\n el => el.nodeType === Node.ELEMENT_NODE && \n window.getComputedStyle(el).display !== 'none'\n );\n\n // Separate explicitly placed items from auto-placed items\n const explicitItems = [];\n const autoItems = [];\n \n for (const item of items) {\n const itemStyles = getItemStyles(item);\n if (this.isVertical && itemStyles.columnStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else if (!this.isVertical && itemStyles.rowStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else {\n autoItems.push({ element: item, styles: itemStyles });\n }\n }\n\n // Place explicitly positioned items first\n for (const { element, styles: itemStyles } of explicitItems) {\n this.placeExplicitItem(element, itemStyles, styles);\n }\n\n // Place auto-positioned items\n for (const { element, styles: itemStyles } of autoItems) {\n this.placeAutoItem(element, itemStyles, styles);\n }\n\n // Set container height\n const containerHeight = Math.max(...this.laneHeights);\n this.container.style.minHeight = `${containerHeight}px`;\n }\n\n placeExplicitItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n \n let laneIndex;\n let span;\n \n if (this.isVertical) {\n // Handle negative indices\n laneIndex = itemStyles.columnStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.columnSpan;\n } else {\n laneIndex = itemStyles.rowStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.rowSpan;\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < laneIndex; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate width (for spanning)\n let size = 0;\n const endLane = Math.min(laneIndex + span, this.lanes.length);\n for (let i = laneIndex; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Get the tallest lane in the span\n let maxHeight = 0;\n for (let i = laneIndex; i < endLane; i++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[i]);\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = maxHeight + (maxHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = laneIndex; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n placeAutoItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n const tolerance = containerStyles.tolerance;\n const span = this.isVertical ? itemStyles.columnSpan : itemStyles.rowSpan;\n\n // Find the best lane(s) considering tolerance\n let bestLane = 0;\n let bestHeight = Infinity;\n\n for (let i = 0; i <= this.lanes.length - span; i++) {\n // Get the max height across the span\n let maxHeight = 0;\n for (let j = i; j < i + span; j++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[j]);\n }\n\n // Use tolerance to determine if this is meaningfully better\n if (bestHeight - maxHeight > tolerance) {\n bestHeight = maxHeight;\n bestLane = i;\n } else if (Math.abs(maxHeight - bestHeight) <= tolerance && i < bestLane) {\n // Within tolerance, prefer earlier lane for reading order\n bestHeight = maxHeight;\n bestLane = i;\n }\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < bestLane; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate size (for spanning)\n let size = 0;\n const endLane = Math.min(bestLane + span, this.lanes.length);\n for (let i = bestLane; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = bestHeight + (bestHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = bestLane; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n destroy() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n \n this.container.removeAttribute(POLYFILL_ATTR);\n this.container.style.position = '';\n this.container.style.display = '';\n this.container.style.minHeight = '';\n \n // Reset item styles\n for (const item of this.container.children) {\n if (item.nodeType === Node.ELEMENT_NODE) {\n item.style.position = '';\n item.style.left = '';\n item.style.top = '';\n item.style.width = '';\n item.style.height = '';\n }\n }\n }\n\n refresh() {\n this.layout();\n }\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n\n // Check inline styles\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n if (el.style.display === 'grid-lanes') {\n containers.add(el);\n }\n }\n\n // Check stylesheets\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.style && rule.style.display === 'grid-lanes') {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }\n\n /**\n * Initialize the polyfill\n */\n function init(options = {}) {\n // Check if native support exists\n if (supportsGridLanes() && !options.force) {\n console.log(`${POLYFILL_NAME}: Native support detected, polyfill not needed.`);\n return { supported: true, instances: [] };\n }\n\n const instances = new Map();\n\n // Process existing containers\n const containers = processStyleSheets();\n for (const container of containers) {\n if (!container.hasAttribute(POLYFILL_ATTR)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n\n // Watch for new stylesheets and elements\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n // Check for new style elements\n if (mutation.type === 'childList') {\n for (const node of mutation.addedNodes) {\n if (node.nodeType === Node.ELEMENT_NODE) {\n // Check if the added element is a grid-lanes container\n const style = window.getComputedStyle(node);\n if (node.style.display === 'grid-lanes' || \n style.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(node)) {\n instances.set(node, new GridLanesLayout(node, options));\n }\n }\n \n // Check descendants\n const descendants = node.querySelectorAll('*');\n for (const desc of descendants) {\n const descStyle = window.getComputedStyle(desc);\n if (desc.style.display === 'grid-lanes' ||\n descStyle.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(desc)) {\n instances.set(desc, new GridLanesLayout(desc, options));\n }\n }\n }\n }\n }\n }\n }\n\n // Re-scan stylesheets for new rules\n const newContainers = processStyleSheets();\n for (const container of newContainers) {\n if (!instances.has(container)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true\n });\n\n console.log(`${POLYFILL_NAME}: Initialized, ${instances.size} container(s) found.`);\n\n return {\n supported: false,\n instances,\n observer,\n refresh() {\n for (const instance of instances.values()) {\n instance.refresh();\n }\n },\n destroy() {\n observer.disconnect();\n for (const instance of instances.values()) {\n instance.destroy();\n }\n instances.clear();\n }\n };\n }\n\n /**\n * Apply to a specific element\n */\n function apply(element, options = {}) {\n if (supportsGridLanes() && !options.force) {\n return null;\n }\n return new GridLanesLayout(element, options);\n }\n\n // Export\n const GridLanesPolyfill = {\n supportsGridLanes,\n init,\n apply,\n GridLanesLayout,\n version: '1.0.0'\n };\n\n // AMD\n if (typeof define === 'function' && define.amd) {\n define([], function() { return GridLanesPolyfill; });\n }\n // CommonJS\n else if (typeof module === 'object' && module.exports) {\n module.exports = GridLanesPolyfill;\n }\n // Global\n else {\n global.GridLanesPolyfill = GridLanesPolyfill;\n }\n\n})(typeof globalThis !== 'undefined' ? globalThis : \n typeof window !== 'undefined' ? window : \n typeof global !== 'undefined' ? global : this);\n","structuredPatch":[{"oldStart":681,"oldLines":26,"newStart":681,"newLines":36,"lines":[" */"," function processStyleSheets() {"," const containers = new Set();","+ const gridLanesSelectors = new Set();"," ","- // Check inline styles","+ // Check inline styles (look at the raw style attribute)"," const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');"," for (const el of allElements) {","- if (el.style.display === 'grid-lanes') {","+ const styleAttr = el.getAttribute('style') || '';","+ if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {"," containers.add(el);"," }"," }"," ","- // Check stylesheets","+ // Check stylesheets - parse raw cssText since browsers reject invalid display values"," for (const sheet of document.styleSheets) {"," try {"," const rules = sheet.cssRules || sheet.rules;"," if (!rules) continue;"," "," for (const rule of rules) {","- if (rule.style && rule.style.display === 'grid-lanes') {","- const elements = document.querySelectorAll(rule.selectorText);","- for (const el of elements) {","- containers.add(el);","+ if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {","+ // Extract selector and find matching elements","+ if (rule.selectorText) {","+ gridLanesSelectors.add(rule.selectorText);","+ try {","+ const elements = document.querySelectorAll(rule.selectorText);","+ for (const el of elements) {","+ containers.add(el);","+ }","+ } catch (e) {","+ // Invalid selector, skip","+ }"," }"," }"," }"]},{"oldStart":710,"oldLines":6,"newStart":720,"newLines":28,"lines":[" }"," }"," ","+ // Also check style elements directly for cases where browser strips the property","+ const styleElements = document.querySelectorAll('style');","+ for (const styleEl of styleElements) {","+ const cssText = styleEl.textContent || '';","+ const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;","+ let match;","+ while ((match = regex.exec(cssText)) !== null) {","+ const selector = match[1].trim();","+ if (selector && !gridLanesSelectors.has(selector)) {","+ gridLanesSelectors.add(selector);","+ try {","+ const elements = document.querySelectorAll(selector);","+ for (const el of elements) {","+ containers.add(el);","+ }","+ } catch (e) {","+ // Invalid selector, skip","+ }","+ }","+ }","+ }","+"," return containers;"," }"," "]}],"userModified":false,"replaceAll":false}}
{"parentUuid":"7f5d407e-d4fe-4b9b-bbc4-eda0cb5d8b77","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01XkZ2pCieKJnvBuHWpcLSh8","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Good, I've fixed the stylesheet parsing. But there's another issue - when looking at the `getGridLanesStyles` function, it tries to read `gridTemplateColumns` from computed styles. However, browsers may not properly process these properties if `display: grid-lanes` is invalid.\n\nThe real issue is that the polyfill needs to:\n1. Read the original CSS template values from the raw CSS text (not computed styles) \n2. Store these values so the polyfill can use them\n\nLet me also check - when we do `this.container.style.display = 'block'` in the init(), we're overwriting the display. But the original CSS values like `grid-template-columns` may not be readable from computed styles if the display isn't grid.\n\nActually, looking at this more carefully - when `display: grid-lanes` is set in CSS and the browser rejects it, the element will have some fallback display (like `block`). And `grid-template-columns` only applies to grid containers, so if the element isn't a grid container, those properties won't be in the computed styles either!\n\nI need to:\n1. Parse the original CSS to extract grid-template-columns/rows along with display: grid-lanes\n2. Store these values for each selector\n3. Use these stored values in the layout calculation\n\nLet me enhance the polyfill to properly extract and use the CSS values.","signature":"ErwLCkYIChgCKkC+7XOUXA2lyKI4/XpMha/rg0XmWPRDXt7fwcmhwcyEgcsUQgKIu6BvWVMt7y3Ochav1Dc9JRIMXVnme59TjCa0EgxEb/M3hozRk0yO57UaDE5Lyl3XO8quPbmV7iIwRNO6PoQrYz8I28CvD3rzxpr6F5Fk8yrK6kdBflIpA4d3ZTzyuRVgd6wYKRiirjbpKqMKb/ecc2ZoSE2pMj8ro8pRv4q1Ui8B3MZfGgBGuQsFPaTFPwHObfL8vKKbFa4UnFVQI8ruHPBBhzeqZerzACooiK5qgq0kOFZt2Ylv+nxebI4ZCPi3aNceSkS9KF+U6xUoP632btVoRIB9p2Ggnjzvi9AyI9XQ/NpNo60Ki0kKqxQX6wdamY/Jgetiop9jOMfO7S2uZuU13QYxn1Gx31CCM8bA/oJMs2pNqfE4ZYXPIeWhPkhbkzLs278jyVD0kFjLcqwRBMsrAHJ99nm1l86aHBKrsiO5WYRNQ0yXkpx3WuOTNdvOFZGJoOsdJT+zE6h+4fjutHK18ZJ+Q0VRH2v5EbCt52tD5DAQeNCDUWMspUR4uMih4NoUbFXjK/EqvxHfZfAqA+TN2uqNhsIjOAZFvTuGgXqNNeaZoQFAfKSohfzzqh/wf6FKkni+jfmKyvySgTl3j4YgmKyZO1g1qhvnC7/xsir1fYisR9uk0DOzOTYTOm+DbpHo83Me/sepAq/o74AYeAufzJQEglJ0yv6Ttz2F94otDDPj8e6gsyglEy62ZN1OV342/Tkkh32WPwJDYccpWXgPbldEZ7BAdAkmZaFvnYq4YFMq/ncq2x3KWMUvzOlnTCok4MlJWBTjA8varMdM+rFcyBiqWTz9/bt7b/5P140UXuN/AHQ+NyeWfDIsEpCVG8TRqBZMHZnwmlIOpguDTPGZbhwP/+3Mo5toHndfuTMoTFnidu7donKxKAFUWeX35x4dZiV8TRPEOV2fSmNJ0A4qP1wwyMcdt9VEo4wqUsp+g9SZWhdmsRfGmhyokHAHbJa0jm/PNVAIoPhnmSwab2n5Nvpre+pN/hQCAejFqTS/IrcdQpRG7LS5pYJCGkw+kX9tJerR4XavY5i0BwXhMfDtIGRmFgKUCo5m2AsWsaqueGnZfvAFVPnBjqXPlWmtvGNJwXGUnfem6btbz5Ni700yi2ZBpeSY85gALky1T4GzmqrZXBq0yDIFJj6cQNfST7QfUNB5EhHeZVIQb6IVEft6hFnPyqWg3TypIXXIzMKnQdK9XfXGzWUqpxHX2VyVkfe/h1JpGsfjvdXVyzXcRTQhGyHBd8GHj+CTBRAAGqBA+gKpE1qd/34kWbhRzPTKHylbQCjfV8Ngso3TB57djZBjqGJ5UZxQi3f4uCxBe3VpqTXF21IEwZOgCXDMem7tPmrLNiGmBNNEmyZrVEE980+unZVP8MxREEnEtx3S4l9thNaDusCsl1FSxAAomMpU9UQUqhZHnAxaDQV9rjV8XwwqNmuVlZOFk1otz3S0B4FtNUBUyn6h/HTtZC43VeSAjTIHkR8hi/KmrI245M2DuO5ktBX76vgWRbQDb6C590I7RmVL2raQ6CG2JEQLRxb/FlnB7lwfas7FPSnVFmEDniCOSolKNeOVYNYjGUcduO5AqrlKf3OEH69Z3Wn6GxZtPVXKN22Ark3D+Yu0in3WzbI/24po2XeDEALwWAF8qfan0lYHaGShLeP7NCqgVvrI9FuehR/w81rcmkF3AvcIOpVpoLAJhcIcPwfRcIZPlwWZfHRmNdpHy21bqpo57BPqDKNCy1bR5ymgVAkxssJbFUauID6v9V+OuXvkZ9k5msExwX1hj7w46Wwxc4tOxnamwpluPNsO/HjZO9TRsPbVr5Jeft4sKVah+Q5XndYZU+2ZcDSys+hjpbm+R4nTkPCKU88JOH9TB2dz1qx7Lsj1N7H+0DLLhpPgV697ijjIwhgB"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2091,"cache_read_input_tokens":42275,"cache_creation":{"ephemeral_5m_input_tokens":2091,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRfiZ7wT4k5qRBvsPRm","type":"assistant","uuid":"fa2feb98-a3a8-4417-8b1a-892584acb691","timestamp":"2025-12-20T05:58:25.564Z"}
{"parentUuid":"fa2feb98-a3a8-4417-8b1a-892584acb691","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01XkZ2pCieKJnvBuHWpcLSh8","type":"message","role":"assistant","content":[{"type":"text","text":"The detection should work now, but there's another issue. When the browser rejects `display: grid-lanes`, it also won't properly compute `grid-template-columns` since those only apply to grid containers. I need to parse the CSS values directly too."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2091,"cache_read_input_tokens":42275,"cache_creation":{"ephemeral_5m_input_tokens":2091,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRfiZ7wT4k5qRBvsPRm","type":"assistant","uuid":"b7784821-36fc-4674-973f-fb175f152114","timestamp":"2025-12-20T05:58:26.672Z"}
{"parentUuid":"b7784821-36fc-4674-973f-fb175f152114","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01XkZ2pCieKJnvBuHWpcLSh8","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01QFB6Bz4WGKmF96iY5xigen","name":"Edit","input":{"file_path":"/private/tmp/files/grid-lanes-polyfill.js","old_string":" const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels","new_string":" const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n // Store parsed CSS rules for grid-lanes containers\n const parsedGridLanesRules = new Map();"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2091,"cache_read_input_tokens":42275,"cache_creation":{"ephemeral_5m_input_tokens":2091,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRfiZ7wT4k5qRBvsPRm","type":"assistant","uuid":"f65d4789-8c05-4dce-bf95-6a583a592abe","timestamp":"2025-12-20T05:58:29.122Z"}
{"parentUuid":"f65d4789-8c05-4dce-bf95-6a583a592abe","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01QFB6Bz4WGKmF96iY5xigen","type":"tool_result","content":"The file /private/tmp/files/grid-lanes-polyfill.js has been updated. Here's the result of running `cat -n` on a snippet of the edited file:\n 21→\n 22→(function(global) {\n 23→ 'use strict';\n 24→\n 25→ const POLYFILL_NAME = 'GridLanesPolyfill';\n 26→ const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n 27→ const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n 28→\n 29→ // Store parsed CSS rules for grid-lanes containers\n 30→ const parsedGridLanesRules = new Map();\n 31→\n 32→ /**\n 33→ * Check if the browser natively supports display: grid-lanes\n 34→ */"}]},"uuid":"1248fbf9-efad-490b-a606-b64f64679d4e","timestamp":"2025-12-20T05:58:29.162Z","toolUseResult":{"filePath":"/private/tmp/files/grid-lanes-polyfill.js","oldString":" const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels","newString":" const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n // Store parsed CSS rules for grid-lanes containers\n const parsedGridLanesRules = new Map();","originalFile":"/**\n * CSS Grid Lanes Polyfill\n * \n * Polyfills the new `display: grid-lanes` CSS feature for browsers\n * that don't support it natively. Based on the WebKit implementation\n * described at: https://webkit.org/blog/17660/introducing-css-grid-lanes/\n * \n * Features supported:\n * - display: grid-lanes\n * - grid-template-columns / grid-template-rows for lane definition\n * - gap, column-gap, row-gap\n * - item-tolerance for placement sensitivity\n * - Spanning items (grid-column: span N)\n * - Explicit placement (grid-column: N / M)\n * - Responsive auto-fill/auto-fit with minmax()\n * - Both waterfall (columns) and brick (rows) layouts\n * \n * @version 1.0.0\n * @license MIT\n */\n\n(function(global) {\n 'use strict';\n\n const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n /**\n * Check if the browser natively supports display: grid-lanes\n */\n function supportsGridLanes() {\n if (typeof CSS === 'undefined' || !CSS.supports) {\n return false;\n }\n return CSS.supports('display', 'grid-lanes');\n }\n\n /**\n * Parse a CSS length value to pixels\n */\n function parseLengthToPixels(value, containerSize, fontSize = 16, rootFontSize = 16) {\n if (!value || value === 'auto' || value === 'none') return null;\n \n const num = parseFloat(value);\n if (isNaN(num)) return null;\n\n if (value.endsWith('px')) return num;\n if (value.endsWith('rem')) return num * rootFontSize;\n if (value.endsWith('em')) return num * fontSize;\n if (value.endsWith('ch')) return num * fontSize * 0.5; // Approximate\n if (value.endsWith('lh')) return num * fontSize * 1.2; // Approximate line-height\n if (value.endsWith('%')) return (num / 100) * containerSize;\n if (value.endsWith('vw')) return (num / 100) * window.innerWidth;\n if (value.endsWith('vh')) return (num / 100) * window.innerHeight;\n if (value.endsWith('vmin')) return (num / 100) * Math.min(window.innerWidth, window.innerHeight);\n if (value.endsWith('vmax')) return (num / 100) * Math.max(window.innerWidth, window.innerHeight);\n if (value.endsWith('fr')) return null; // Handled separately\n \n // Unitless number treated as pixels\n if (!isNaN(num) && value === String(num)) return num;\n \n return null;\n }\n\n /**\n * Parse minmax() function\n */\n function parseMinMax(value) {\n const match = value.match(/minmax\\(\\s*([^,]+)\\s*,\\s*([^)]+)\\s*\\)/);\n if (!match) return null;\n return {\n min: match[1].trim(),\n max: match[2].trim()\n };\n }\n\n /**\n * Parse repeat() function\n */\n function parseRepeat(value) {\n const match = value.match(/repeat\\(\\s*([^,]+)\\s*,\\s*(.+)\\s*\\)/);\n if (!match) return null;\n return {\n count: match[1].trim(),\n pattern: match[2].trim()\n };\n }\n\n /**\n * Calculate lane sizes from grid-template-columns/rows\n */\n function calculateLaneSizes(template, containerSize, gap, fontSize, rootFontSize) {\n if (!template || template === 'none' || template === 'auto') {\n return null;\n }\n\n const availableSpace = containerSize;\n let lanes = [];\n let totalFr = 0;\n let fixedSpace = 0;\n\n // Parse the template\n const tokens = tokenizeTemplate(template);\n \n for (const token of tokens) {\n // Handle repeat()\n const repeatInfo = parseRepeat(token);\n if (repeatInfo) {\n const { count, pattern } = repeatInfo;\n const patternTokens = tokenizeTemplate(pattern);\n \n if (count === 'auto-fill' || count === 'auto-fit') {\n // Calculate how many repetitions fit\n let minSize = 0;\n let hasFlexible = false;\n \n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n if (minmax.min === 'max-content' || minmax.min === 'min-content') {\n minSize += 100; // Fallback estimate\n } else if (minVal !== null) {\n minSize += minVal;\n }\n if (minmax.max.endsWith('fr')) {\n hasFlexible = true;\n }\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n minSize += size;\n } else if (pt.endsWith('fr')) {\n hasFlexible = true;\n minSize += 100; // Minimum fallback for fr units\n }\n }\n }\n \n // Calculate repetitions\n const patternCount = patternTokens.length;\n const gapCount = patternCount - 1;\n const minPatternSize = minSize + (gapCount * gap);\n \n let reps = Math.max(1, Math.floor((availableSpace + gap) / (minPatternSize + gap)));\n \n // Expand pattern\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr') \n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({\n min: minVal || 0,\n max: maxVal,\n size: 0\n });\n \n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n } else if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize) || 0;\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n } else {\n // Fixed repeat count\n const reps = parseInt(count, 10);\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n }\n continue;\n }\n\n // Handle minmax()\n const minmax = parseMinMax(token);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr')\n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({ min: minVal || 0, max: maxVal, size: 0 });\n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n continue;\n }\n\n // Handle fr units\n if (token.endsWith('fr')) {\n const fr = parseFloat(token);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n continue;\n }\n\n // Handle fixed sizes\n const size = parseLengthToPixels(token, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n\n // Calculate final sizes\n const totalGaps = Math.max(0, lanes.length - 1) * gap;\n const flexSpace = Math.max(0, availableSpace - fixedSpace - totalGaps);\n const frUnit = totalFr > 0 ? flexSpace / totalFr : 0;\n\n for (const lane of lanes) {\n if (typeof lane.max === 'object' && lane.max.fr) {\n lane.size = Math.max(lane.min, frUnit * lane.max.fr);\n } else if (typeof lane.max === 'number') {\n lane.size = Math.min(lane.max, Math.max(lane.min, lane.min));\n } else {\n lane.size = lane.min;\n }\n }\n\n return lanes.map(l => l.size);\n }\n\n /**\n * Tokenize a grid template string\n */\n function tokenizeTemplate(template) {\n const tokens = [];\n let current = '';\n let parenDepth = 0;\n\n for (let i = 0; i < template.length; i++) {\n const char = template[i];\n \n if (char === '(') {\n parenDepth++;\n current += char;\n } else if (char === ')') {\n parenDepth--;\n current += char;\n } else if (char === ' ' && parenDepth === 0) {\n if (current.trim()) {\n tokens.push(current.trim());\n }\n current = '';\n } else {\n current += char;\n }\n }\n\n if (current.trim()) {\n tokens.push(current.trim());\n }\n\n return tokens;\n }\n\n /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }\n\n /**\n * Get item placement properties\n */\n function getItemStyles(element) {\n const computed = window.getComputedStyle(element);\n const gridColumn = computed.gridColumn || computed.gridColumnStart;\n const gridRow = computed.gridRow || computed.gridRowStart;\n\n let columnSpan = 1;\n let columnStart = null;\n let columnEnd = null;\n let rowSpan = 1;\n let rowStart = null;\n let rowEnd = null;\n\n // Parse grid-column\n if (gridColumn && gridColumn !== 'auto') {\n const spanMatch = gridColumn.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n columnSpan = parseInt(spanMatch[1], 10);\n } else if (gridColumn.includes('/')) {\n const [start, end] = gridColumn.split('/').map(s => s.trim());\n columnStart = parseInt(start, 10);\n columnEnd = parseInt(end, 10);\n if (!isNaN(columnStart) && !isNaN(columnEnd)) {\n columnSpan = Math.abs(columnEnd - columnStart);\n }\n } else {\n const num = parseInt(gridColumn, 10);\n if (!isNaN(num)) {\n columnStart = num;\n }\n }\n }\n\n // Parse grid-row\n if (gridRow && gridRow !== 'auto') {\n const spanMatch = gridRow.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n rowSpan = parseInt(spanMatch[1], 10);\n } else if (gridRow.includes('/')) {\n const [start, end] = gridRow.split('/').map(s => s.trim());\n rowStart = parseInt(start, 10);\n rowEnd = parseInt(end, 10);\n if (!isNaN(rowStart) && !isNaN(rowEnd)) {\n rowSpan = Math.abs(rowEnd - rowStart);\n }\n } else {\n const num = parseInt(gridRow, 10);\n if (!isNaN(num)) {\n rowStart = num;\n }\n }\n }\n\n return {\n columnSpan,\n columnStart,\n columnEnd,\n rowSpan,\n rowStart,\n rowEnd\n };\n }\n\n /**\n * Main Grid Lanes layout class\n */\n class GridLanesLayout {\n constructor(container, options = {}) {\n this.container = container;\n this.options = options;\n this.isVertical = true; // true = waterfall (columns), false = brick (rows)\n this.lanes = [];\n this.laneHeights = [];\n this.resizeObserver = null;\n this.mutationObserver = null;\n \n this.init();\n }\n\n init() {\n // Mark as polyfilled\n this.container.setAttribute(POLYFILL_ATTR, 'true');\n \n // Set up container styles\n this.container.style.position = 'relative';\n this.container.style.display = 'block';\n \n // Initial layout\n this.layout();\n \n // Set up observers\n this.setupObservers();\n }\n\n setupObservers() {\n // Resize observer for responsive layouts\n this.resizeObserver = new ResizeObserver(() => {\n this.layout();\n });\n this.resizeObserver.observe(this.container);\n\n // Mutation observer for dynamic content\n this.mutationObserver = new MutationObserver((mutations) => {\n let shouldRelayout = false;\n for (const mutation of mutations) {\n if (mutation.type === 'childList' || \n (mutation.type === 'attributes' && mutation.attributeName === 'style')) {\n shouldRelayout = true;\n break;\n }\n }\n if (shouldRelayout) {\n this.layout();\n }\n });\n this.mutationObserver.observe(this.container, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['style', 'class']\n });\n }\n\n layout() {\n const styles = getGridLanesStyles(this.container);\n const containerRect = this.container.getBoundingClientRect();\n \n // Determine direction based on which template is defined\n const hasColumns = styles.gridTemplateColumns && \n styles.gridTemplateColumns !== 'none' &&\n !styles.gridTemplateColumns.startsWith('auto');\n const hasRows = styles.gridTemplateRows && \n styles.gridTemplateRows !== 'none' &&\n !styles.gridTemplateRows.startsWith('auto');\n \n this.isVertical = hasColumns || !hasRows;\n \n // Calculate lane sizes\n if (this.isVertical) {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateColumns,\n containerRect.width,\n styles.columnGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.width];\n } else {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateRows,\n containerRect.height,\n styles.rowGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.height];\n }\n\n // Initialize lane positions (heights for vertical, widths for horizontal)\n this.laneHeights = new Array(this.lanes.length).fill(0);\n \n // Get all direct children\n const items = Array.from(this.container.children).filter(\n el => el.nodeType === Node.ELEMENT_NODE && \n window.getComputedStyle(el).display !== 'none'\n );\n\n // Separate explicitly placed items from auto-placed items\n const explicitItems = [];\n const autoItems = [];\n \n for (const item of items) {\n const itemStyles = getItemStyles(item);\n if (this.isVertical && itemStyles.columnStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else if (!this.isVertical && itemStyles.rowStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else {\n autoItems.push({ element: item, styles: itemStyles });\n }\n }\n\n // Place explicitly positioned items first\n for (const { element, styles: itemStyles } of explicitItems) {\n this.placeExplicitItem(element, itemStyles, styles);\n }\n\n // Place auto-positioned items\n for (const { element, styles: itemStyles } of autoItems) {\n this.placeAutoItem(element, itemStyles, styles);\n }\n\n // Set container height\n const containerHeight = Math.max(...this.laneHeights);\n this.container.style.minHeight = `${containerHeight}px`;\n }\n\n placeExplicitItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n \n let laneIndex;\n let span;\n \n if (this.isVertical) {\n // Handle negative indices\n laneIndex = itemStyles.columnStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.columnSpan;\n } else {\n laneIndex = itemStyles.rowStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.rowSpan;\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < laneIndex; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate width (for spanning)\n let size = 0;\n const endLane = Math.min(laneIndex + span, this.lanes.length);\n for (let i = laneIndex; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Get the tallest lane in the span\n let maxHeight = 0;\n for (let i = laneIndex; i < endLane; i++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[i]);\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = maxHeight + (maxHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = laneIndex; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n placeAutoItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n const tolerance = containerStyles.tolerance;\n const span = this.isVertical ? itemStyles.columnSpan : itemStyles.rowSpan;\n\n // Find the best lane(s) considering tolerance\n let bestLane = 0;\n let bestHeight = Infinity;\n\n for (let i = 0; i <= this.lanes.length - span; i++) {\n // Get the max height across the span\n let maxHeight = 0;\n for (let j = i; j < i + span; j++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[j]);\n }\n\n // Use tolerance to determine if this is meaningfully better\n if (bestHeight - maxHeight > tolerance) {\n bestHeight = maxHeight;\n bestLane = i;\n } else if (Math.abs(maxHeight - bestHeight) <= tolerance && i < bestLane) {\n // Within tolerance, prefer earlier lane for reading order\n bestHeight = maxHeight;\n bestLane = i;\n }\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < bestLane; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate size (for spanning)\n let size = 0;\n const endLane = Math.min(bestLane + span, this.lanes.length);\n for (let i = bestLane; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = bestHeight + (bestHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = bestLane; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n destroy() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n \n this.container.removeAttribute(POLYFILL_ATTR);\n this.container.style.position = '';\n this.container.style.display = '';\n this.container.style.minHeight = '';\n \n // Reset item styles\n for (const item of this.container.children) {\n if (item.nodeType === Node.ELEMENT_NODE) {\n item.style.position = '';\n item.style.left = '';\n item.style.top = '';\n item.style.width = '';\n item.style.height = '';\n }\n }\n }\n\n refresh() {\n this.layout();\n }\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n }\n }\n\n // Check stylesheets - parse raw cssText since browsers reject invalid display values\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n // Extract selector and find matching elements\n if (rule.selectorText) {\n gridLanesSelectors.add(rule.selectorText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n // Also check style elements directly for cases where browser strips the property\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selector = match[1].trim();\n if (selector && !gridLanesSelectors.has(selector)) {\n gridLanesSelectors.add(selector);\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n return containers;\n }\n\n /**\n * Initialize the polyfill\n */\n function init(options = {}) {\n // Check if native support exists\n if (supportsGridLanes() && !options.force) {\n console.log(`${POLYFILL_NAME}: Native support detected, polyfill not needed.`);\n return { supported: true, instances: [] };\n }\n\n const instances = new Map();\n\n // Process existing containers\n const containers = processStyleSheets();\n for (const container of containers) {\n if (!container.hasAttribute(POLYFILL_ATTR)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n\n // Watch for new stylesheets and elements\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n // Check for new style elements\n if (mutation.type === 'childList') {\n for (const node of mutation.addedNodes) {\n if (node.nodeType === Node.ELEMENT_NODE) {\n // Check if the added element is a grid-lanes container\n const style = window.getComputedStyle(node);\n if (node.style.display === 'grid-lanes' || \n style.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(node)) {\n instances.set(node, new GridLanesLayout(node, options));\n }\n }\n \n // Check descendants\n const descendants = node.querySelectorAll('*');\n for (const desc of descendants) {\n const descStyle = window.getComputedStyle(desc);\n if (desc.style.display === 'grid-lanes' ||\n descStyle.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(desc)) {\n instances.set(desc, new GridLanesLayout(desc, options));\n }\n }\n }\n }\n }\n }\n }\n\n // Re-scan stylesheets for new rules\n const newContainers = processStyleSheets();\n for (const container of newContainers) {\n if (!instances.has(container)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true\n });\n\n console.log(`${POLYFILL_NAME}: Initialized, ${instances.size} container(s) found.`);\n\n return {\n supported: false,\n instances,\n observer,\n refresh() {\n for (const instance of instances.values()) {\n instance.refresh();\n }\n },\n destroy() {\n observer.disconnect();\n for (const instance of instances.values()) {\n instance.destroy();\n }\n instances.clear();\n }\n };\n }\n\n /**\n * Apply to a specific element\n */\n function apply(element, options = {}) {\n if (supportsGridLanes() && !options.force) {\n return null;\n }\n return new GridLanesLayout(element, options);\n }\n\n // Export\n const GridLanesPolyfill = {\n supportsGridLanes,\n init,\n apply,\n GridLanesLayout,\n version: '1.0.0'\n };\n\n // AMD\n if (typeof define === 'function' && define.amd) {\n define([], function() { return GridLanesPolyfill; });\n }\n // CommonJS\n else if (typeof module === 'object' && module.exports) {\n module.exports = GridLanesPolyfill;\n }\n // Global\n else {\n global.GridLanesPolyfill = GridLanesPolyfill;\n }\n\n})(typeof globalThis !== 'undefined' ? globalThis : \n typeof window !== 'undefined' ? window : \n typeof global !== 'undefined' ? global : this);\n","structuredPatch":[{"oldStart":26,"oldLines":6,"newStart":26,"newLines":9,"lines":[" const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';"," const DEFAULT_TOLERANCE = 16; // ~1em in pixels"," ","+ // Store parsed CSS rules for grid-lanes containers","+ const parsedGridLanesRules = new Map();","+"," /**"," * Check if the browser natively supports display: grid-lanes"," */"]}],"userModified":false,"replaceAll":false}}
{"parentUuid":"1248fbf9-efad-490b-a606-b64f64679d4e","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01Xe1zYa6fCYiPPSPwhcC5MH","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Now I need to update the processStyleSheets function to also extract and store the CSS property values (like grid-template-columns) from the raw CSS text, since browsers won't properly compute these for non-grid containers.","signature":"EogDCkYIChgCKkAK/MlBJQz9HW5vyVVRXcBeVWESP1Usw8tt+gOXI0XHJ9jzXw/uuLZmGtO/hHg5F/MPZeeYSNixTHONDNHGHdExEgywLEamjNiVFZcfl5oaDHc8y0Ubh9EUNYgO9iIwy8LyE5c3iuedMfI9BK3iVuGt/Hwjpu7M05SwxQmdVk8CTgvsbox+5oCAZ8++kALyKu8BYztsRV2NDRDv7YEktVPR+VcdeLaQ3CHZa5HgZznxzaommc2CXEESRhcUgBE4eTqCQbtdHle37EuC3t15l2uCWTQ68h2i3cdkzkr4fkBR/3FBUp2SirSIyA1xEGYia1rsiR54Rq5d475bmkFYjApqWC0XWMFZ8gs8SJlb2/g035OPQnm+uDx5yCd8eTLvm+1VzCewALM+dV/uvEfOCK3SppnFXg0GDuvcBX2Xfb32hii3614fN4lzEEwXkjrDPJK7sQpZI7sxFdcZuJ6aUPns2jvZpsA52G+J6MhSA19nEpDVfjxhn4Yr+2i/wFzCQWwYAQ=="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":849,"cache_read_input_tokens":44366,"cache_creation":{"ephemeral_5m_input_tokens":849,"ephemeral_1h_input_tokens":0},"output_tokens":3,"service_tier":"standard"}},"requestId":"req_011CWHRghtiDUDBs5fdGt6DW","type":"assistant","uuid":"24704170-fbe0-40d1-b8f5-5c1089846374","timestamp":"2025-12-20T05:58:32.432Z"}
{"parentUuid":"24704170-fbe0-40d1-b8f5-5c1089846374","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01Xe1zYa6fCYiPPSPwhcC5MH","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TgSfAyPrwNr4mwZoD3j2VR","name":"Edit","input":{"file_path":"/private/tmp/files/grid-lanes-polyfill.js","old_string":" /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n }\n }\n\n // Check stylesheets - parse raw cssText since browsers reject invalid display values\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n // Extract selector and find matching elements\n if (rule.selectorText) {\n gridLanesSelectors.add(rule.selectorText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n // Also check style elements directly for cases where browser strips the property\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selector = match[1].trim();\n if (selector && !gridLanesSelectors.has(selector)) {\n gridLanesSelectors.add(selector);\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n return containers;\n }","new_string":" /**\n * Parse CSS properties from a CSS block text\n */\n function parseCSSProperties(cssBlock) {\n const props = {};\n // Extract property: value pairs\n const propRegex = /([\\w-]+)\\s*:\\s*([^;]+);?/g;\n let match;\n while ((match = propRegex.exec(cssBlock)) !== null) {\n props[match[1].trim()] = match[2].trim();\n }\n return props;\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n // Parse and store inline style properties\n const props = parseCSSProperties(styleAttr);\n if (!parsedGridLanesRules.has(el)) {\n parsedGridLanesRules.set(el, props);\n }\n }\n }\n\n // Check style elements directly and parse raw CSS\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n // Match selectors with display: grid-lanes and capture the full block\n const regex = /([^{}]+)\\{([^}]*display\\s*:\\s*grid-lanes[^}]*)\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selectorText = match[1].trim();\n const cssBlock = match[2];\n\n // Handle comma-separated selectors\n const selectors = selectorText.split(',').map(s => s.trim());\n\n for (const selector of selectors) {\n if (!selector) continue;\n gridLanesSelectors.add(selector);\n\n // Parse properties from the CSS block\n const props = parseCSSProperties(cssBlock);\n\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n // Store parsed rules for this element (merge if exists)\n if (parsedGridLanesRules.has(el)) {\n Object.assign(parsedGridLanesRules.get(el), props);\n } else {\n parsedGridLanesRules.set(el, { ...props });\n }\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n // Also check stylesheet rules (may work for some browsers)\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n if (rule.selectorText && !gridLanesSelectors.has(rule.selectorText)) {\n gridLanesSelectors.add(rule.selectorText);\n const props = parseCSSProperties(rule.cssText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n if (!parsedGridLanesRules.has(el)) {\n parsedGridLanesRules.set(el, props);\n }\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":849,"cache_read_input_tokens":44366,"cache_creation":{"ephemeral_5m_input_tokens":849,"ephemeral_1h_input_tokens":0},"output_tokens":1826,"service_tier":"standard"}},"requestId":"req_011CWHRghtiDUDBs5fdGt6DW","type":"assistant","uuid":"91d73da0-c6bc-4045-9e7e-f06899c629be","timestamp":"2025-12-20T05:58:47.055Z"}
{"parentUuid":"91d73da0-c6bc-4045-9e7e-f06899c629be","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TgSfAyPrwNr4mwZoD3j2VR","type":"tool_result","content":"The file /private/tmp/files/grid-lanes-polyfill.js has been updated. Here's the result of running `cat -n` on a snippet of the edited file:\n 678→ this.layout();\n 679→ }\n 680→ }\n 681→\n 682→ /**\n 683→ * Parse CSS properties from a CSS block text\n 684→ */\n 685→ function parseCSSProperties(cssBlock) {\n 686→ const props = {};\n 687→ // Extract property: value pairs\n 688→ const propRegex = /([\\w-]+)\\s*:\\s*([^;]+);?/g;\n 689→ let match;\n 690→ while ((match = propRegex.exec(cssBlock)) !== null) {\n 691→ props[match[1].trim()] = match[2].trim();\n 692→ }\n 693→ return props;\n 694→ }\n 695→\n 696→ /**\n 697→ * Find and process all grid-lanes containers\n 698→ */\n 699→ function processStyleSheets() {\n 700→ const containers = new Set();\n 701→ const gridLanesSelectors = new Set();\n 702→\n 703→ // Check inline styles (look at the raw style attribute)\n 704→ const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n 705→ for (const el of allElements) {\n 706→ const styleAttr = el.getAttribute('style') || '';\n 707→ if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n 708→ containers.add(el);\n 709→ // Parse and store inline style properties\n 710→ const props = parseCSSProperties(styleAttr);\n 711→ if (!parsedGridLanesRules.has(el)) {\n 712→ parsedGridLanesRules.set(el, props);\n 713→ }\n 714→ }\n 715→ }\n 716→\n 717→ // Check style elements directly and parse raw CSS\n 718→ const styleElements = document.querySelectorAll('style');\n 719→ for (const styleEl of styleElements) {\n 720→ const cssText = styleEl.textContent || '';\n 721→ // Match selectors with display: grid-lanes and capture the full block\n 722→ const regex = /([^{}]+)\\{([^}]*display\\s*:\\s*grid-lanes[^}]*)\\}/gi;\n 723→ let match;\n 724→ while ((match = regex.exec(cssText)) !== null) {\n 725→ const selectorText = match[1].trim();\n 726→ const cssBlock = match[2];\n 727→\n 728→ // Handle comma-separated selectors\n 729→ const selectors = selectorText.split(',').map(s => s.trim());\n 730→\n 731→ for (const selector of selectors) {\n 732→ if (!selector) continue;\n 733→ gridLanesSelectors.add(selector);\n 734→\n 735→ // Parse properties from the CSS block\n 736→ const props = parseCSSProperties(cssBlock);\n 737→\n 738→ try {\n 739→ const elements = document.querySelectorAll(selector);\n 740→ for (const el of elements) {\n 741→ containers.add(el);\n 742→ // Store parsed rules for this element (merge if exists)\n 743→ if (parsedGridLanesRules.has(el)) {\n 744→ Object.assign(parsedGridLanesRules.get(el), props);\n 745→ } else {\n 746→ parsedGridLanesRules.set(el, { ...props });\n 747→ }\n 748→ }\n 749→ } catch (e) {\n 750→ // Invalid selector, skip\n 751→ }\n 752→ }\n 753→ }\n 754→ }\n 755→\n 756→ // Also check stylesheet rules (may work for some browsers)\n 757→ for (const sheet of document.styleSheets) {\n 758→ try {\n 759→ const rules = sheet.cssRules || sheet.rules;\n 760→ if (!rules) continue;\n 761→\n 762→ for (const rule of rules) {\n 763→ if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n 764→ if (rule.selectorText && !gridLanesSelectors.has(rule.selectorText)) {\n 765→ gridLanesSelectors.add(rule.selectorText);\n 766→ const props = parseCSSProperties(rule.cssText);\n 767→ try {\n 768→ const elements = document.querySelectorAll(rule.selectorText);\n 769→ for (const el of elements) {\n 770→ containers.add(el);\n 771→ if (!parsedGridLanesRules.has(el)) {\n 772→ parsedGridLanesRules.set(el, props);\n 773→ }\n 774→ }\n 775→ } catch (e) {\n 776→ // Invalid selector, skip\n 777→ }\n 778→ }\n 779→ }\n 780→ }\n 781→ } catch (e) {\n 782→ // Cross-origin stylesheets will throw\n 783→ console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n 784→ }\n 785→ }\n 786→\n 787→ return containers;\n 788→ }\n 789→\n 790→ /**\n 791→ * Initialize the polyfill\n 792→ */"}]},"uuid":"8c45cef0-fca1-42ca-9db4-1c3cf3941e53","timestamp":"2025-12-20T05:58:47.087Z","toolUseResult":{"filePath":"/private/tmp/files/grid-lanes-polyfill.js","oldString":" /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n }\n }\n\n // Check stylesheets - parse raw cssText since browsers reject invalid display values\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n // Extract selector and find matching elements\n if (rule.selectorText) {\n gridLanesSelectors.add(rule.selectorText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n // Also check style elements directly for cases where browser strips the property\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selector = match[1].trim();\n if (selector && !gridLanesSelectors.has(selector)) {\n gridLanesSelectors.add(selector);\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n return containers;\n }","newString":" /**\n * Parse CSS properties from a CSS block text\n */\n function parseCSSProperties(cssBlock) {\n const props = {};\n // Extract property: value pairs\n const propRegex = /([\\w-]+)\\s*:\\s*([^;]+);?/g;\n let match;\n while ((match = propRegex.exec(cssBlock)) !== null) {\n props[match[1].trim()] = match[2].trim();\n }\n return props;\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n // Parse and store inline style properties\n const props = parseCSSProperties(styleAttr);\n if (!parsedGridLanesRules.has(el)) {\n parsedGridLanesRules.set(el, props);\n }\n }\n }\n\n // Check style elements directly and parse raw CSS\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n // Match selectors with display: grid-lanes and capture the full block\n const regex = /([^{}]+)\\{([^}]*display\\s*:\\s*grid-lanes[^}]*)\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selectorText = match[1].trim();\n const cssBlock = match[2];\n\n // Handle comma-separated selectors\n const selectors = selectorText.split(',').map(s => s.trim());\n\n for (const selector of selectors) {\n if (!selector) continue;\n gridLanesSelectors.add(selector);\n\n // Parse properties from the CSS block\n const props = parseCSSProperties(cssBlock);\n\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n // Store parsed rules for this element (merge if exists)\n if (parsedGridLanesRules.has(el)) {\n Object.assign(parsedGridLanesRules.get(el), props);\n } else {\n parsedGridLanesRules.set(el, { ...props });\n }\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n // Also check stylesheet rules (may work for some browsers)\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n if (rule.selectorText && !gridLanesSelectors.has(rule.selectorText)) {\n gridLanesSelectors.add(rule.selectorText);\n const props = parseCSSProperties(rule.cssText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n if (!parsedGridLanesRules.has(el)) {\n parsedGridLanesRules.set(el, props);\n }\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }","originalFile":"/**\n * CSS Grid Lanes Polyfill\n * \n * Polyfills the new `display: grid-lanes` CSS feature for browsers\n * that don't support it natively. Based on the WebKit implementation\n * described at: https://webkit.org/blog/17660/introducing-css-grid-lanes/\n * \n * Features supported:\n * - display: grid-lanes\n * - grid-template-columns / grid-template-rows for lane definition\n * - gap, column-gap, row-gap\n * - item-tolerance for placement sensitivity\n * - Spanning items (grid-column: span N)\n * - Explicit placement (grid-column: N / M)\n * - Responsive auto-fill/auto-fit with minmax()\n * - Both waterfall (columns) and brick (rows) layouts\n * \n * @version 1.0.0\n * @license MIT\n */\n\n(function(global) {\n 'use strict';\n\n const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n // Store parsed CSS rules for grid-lanes containers\n const parsedGridLanesRules = new Map();\n\n /**\n * Check if the browser natively supports display: grid-lanes\n */\n function supportsGridLanes() {\n if (typeof CSS === 'undefined' || !CSS.supports) {\n return false;\n }\n return CSS.supports('display', 'grid-lanes');\n }\n\n /**\n * Parse a CSS length value to pixels\n */\n function parseLengthToPixels(value, containerSize, fontSize = 16, rootFontSize = 16) {\n if (!value || value === 'auto' || value === 'none') return null;\n \n const num = parseFloat(value);\n if (isNaN(num)) return null;\n\n if (value.endsWith('px')) return num;\n if (value.endsWith('rem')) return num * rootFontSize;\n if (value.endsWith('em')) return num * fontSize;\n if (value.endsWith('ch')) return num * fontSize * 0.5; // Approximate\n if (value.endsWith('lh')) return num * fontSize * 1.2; // Approximate line-height\n if (value.endsWith('%')) return (num / 100) * containerSize;\n if (value.endsWith('vw')) return (num / 100) * window.innerWidth;\n if (value.endsWith('vh')) return (num / 100) * window.innerHeight;\n if (value.endsWith('vmin')) return (num / 100) * Math.min(window.innerWidth, window.innerHeight);\n if (value.endsWith('vmax')) return (num / 100) * Math.max(window.innerWidth, window.innerHeight);\n if (value.endsWith('fr')) return null; // Handled separately\n \n // Unitless number treated as pixels\n if (!isNaN(num) && value === String(num)) return num;\n \n return null;\n }\n\n /**\n * Parse minmax() function\n */\n function parseMinMax(value) {\n const match = value.match(/minmax\\(\\s*([^,]+)\\s*,\\s*([^)]+)\\s*\\)/);\n if (!match) return null;\n return {\n min: match[1].trim(),\n max: match[2].trim()\n };\n }\n\n /**\n * Parse repeat() function\n */\n function parseRepeat(value) {\n const match = value.match(/repeat\\(\\s*([^,]+)\\s*,\\s*(.+)\\s*\\)/);\n if (!match) return null;\n return {\n count: match[1].trim(),\n pattern: match[2].trim()\n };\n }\n\n /**\n * Calculate lane sizes from grid-template-columns/rows\n */\n function calculateLaneSizes(template, containerSize, gap, fontSize, rootFontSize) {\n if (!template || template === 'none' || template === 'auto') {\n return null;\n }\n\n const availableSpace = containerSize;\n let lanes = [];\n let totalFr = 0;\n let fixedSpace = 0;\n\n // Parse the template\n const tokens = tokenizeTemplate(template);\n \n for (const token of tokens) {\n // Handle repeat()\n const repeatInfo = parseRepeat(token);\n if (repeatInfo) {\n const { count, pattern } = repeatInfo;\n const patternTokens = tokenizeTemplate(pattern);\n \n if (count === 'auto-fill' || count === 'auto-fit') {\n // Calculate how many repetitions fit\n let minSize = 0;\n let hasFlexible = false;\n \n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n if (minmax.min === 'max-content' || minmax.min === 'min-content') {\n minSize += 100; // Fallback estimate\n } else if (minVal !== null) {\n minSize += minVal;\n }\n if (minmax.max.endsWith('fr')) {\n hasFlexible = true;\n }\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n minSize += size;\n } else if (pt.endsWith('fr')) {\n hasFlexible = true;\n minSize += 100; // Minimum fallback for fr units\n }\n }\n }\n \n // Calculate repetitions\n const patternCount = patternTokens.length;\n const gapCount = patternCount - 1;\n const minPatternSize = minSize + (gapCount * gap);\n \n let reps = Math.max(1, Math.floor((availableSpace + gap) / (minPatternSize + gap)));\n \n // Expand pattern\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr') \n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({\n min: minVal || 0,\n max: maxVal,\n size: 0\n });\n \n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n } else if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize) || 0;\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n } else {\n // Fixed repeat count\n const reps = parseInt(count, 10);\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n }\n continue;\n }\n\n // Handle minmax()\n const minmax = parseMinMax(token);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr')\n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({ min: minVal || 0, max: maxVal, size: 0 });\n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n continue;\n }\n\n // Handle fr units\n if (token.endsWith('fr')) {\n const fr = parseFloat(token);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n continue;\n }\n\n // Handle fixed sizes\n const size = parseLengthToPixels(token, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n\n // Calculate final sizes\n const totalGaps = Math.max(0, lanes.length - 1) * gap;\n const flexSpace = Math.max(0, availableSpace - fixedSpace - totalGaps);\n const frUnit = totalFr > 0 ? flexSpace / totalFr : 0;\n\n for (const lane of lanes) {\n if (typeof lane.max === 'object' && lane.max.fr) {\n lane.size = Math.max(lane.min, frUnit * lane.max.fr);\n } else if (typeof lane.max === 'number') {\n lane.size = Math.min(lane.max, Math.max(lane.min, lane.min));\n } else {\n lane.size = lane.min;\n }\n }\n\n return lanes.map(l => l.size);\n }\n\n /**\n * Tokenize a grid template string\n */\n function tokenizeTemplate(template) {\n const tokens = [];\n let current = '';\n let parenDepth = 0;\n\n for (let i = 0; i < template.length; i++) {\n const char = template[i];\n \n if (char === '(') {\n parenDepth++;\n current += char;\n } else if (char === ')') {\n parenDepth--;\n current += char;\n } else if (char === ' ' && parenDepth === 0) {\n if (current.trim()) {\n tokens.push(current.trim());\n }\n current = '';\n } else {\n current += char;\n }\n }\n\n if (current.trim()) {\n tokens.push(current.trim());\n }\n\n return tokens;\n }\n\n /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }\n\n /**\n * Get item placement properties\n */\n function getItemStyles(element) {\n const computed = window.getComputedStyle(element);\n const gridColumn = computed.gridColumn || computed.gridColumnStart;\n const gridRow = computed.gridRow || computed.gridRowStart;\n\n let columnSpan = 1;\n let columnStart = null;\n let columnEnd = null;\n let rowSpan = 1;\n let rowStart = null;\n let rowEnd = null;\n\n // Parse grid-column\n if (gridColumn && gridColumn !== 'auto') {\n const spanMatch = gridColumn.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n columnSpan = parseInt(spanMatch[1], 10);\n } else if (gridColumn.includes('/')) {\n const [start, end] = gridColumn.split('/').map(s => s.trim());\n columnStart = parseInt(start, 10);\n columnEnd = parseInt(end, 10);\n if (!isNaN(columnStart) && !isNaN(columnEnd)) {\n columnSpan = Math.abs(columnEnd - columnStart);\n }\n } else {\n const num = parseInt(gridColumn, 10);\n if (!isNaN(num)) {\n columnStart = num;\n }\n }\n }\n\n // Parse grid-row\n if (gridRow && gridRow !== 'auto') {\n const spanMatch = gridRow.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n rowSpan = parseInt(spanMatch[1], 10);\n } else if (gridRow.includes('/')) {\n const [start, end] = gridRow.split('/').map(s => s.trim());\n rowStart = parseInt(start, 10);\n rowEnd = parseInt(end, 10);\n if (!isNaN(rowStart) && !isNaN(rowEnd)) {\n rowSpan = Math.abs(rowEnd - rowStart);\n }\n } else {\n const num = parseInt(gridRow, 10);\n if (!isNaN(num)) {\n rowStart = num;\n }\n }\n }\n\n return {\n columnSpan,\n columnStart,\n columnEnd,\n rowSpan,\n rowStart,\n rowEnd\n };\n }\n\n /**\n * Main Grid Lanes layout class\n */\n class GridLanesLayout {\n constructor(container, options = {}) {\n this.container = container;\n this.options = options;\n this.isVertical = true; // true = waterfall (columns), false = brick (rows)\n this.lanes = [];\n this.laneHeights = [];\n this.resizeObserver = null;\n this.mutationObserver = null;\n \n this.init();\n }\n\n init() {\n // Mark as polyfilled\n this.container.setAttribute(POLYFILL_ATTR, 'true');\n \n // Set up container styles\n this.container.style.position = 'relative';\n this.container.style.display = 'block';\n \n // Initial layout\n this.layout();\n \n // Set up observers\n this.setupObservers();\n }\n\n setupObservers() {\n // Resize observer for responsive layouts\n this.resizeObserver = new ResizeObserver(() => {\n this.layout();\n });\n this.resizeObserver.observe(this.container);\n\n // Mutation observer for dynamic content\n this.mutationObserver = new MutationObserver((mutations) => {\n let shouldRelayout = false;\n for (const mutation of mutations) {\n if (mutation.type === 'childList' || \n (mutation.type === 'attributes' && mutation.attributeName === 'style')) {\n shouldRelayout = true;\n break;\n }\n }\n if (shouldRelayout) {\n this.layout();\n }\n });\n this.mutationObserver.observe(this.container, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['style', 'class']\n });\n }\n\n layout() {\n const styles = getGridLanesStyles(this.container);\n const containerRect = this.container.getBoundingClientRect();\n \n // Determine direction based on which template is defined\n const hasColumns = styles.gridTemplateColumns && \n styles.gridTemplateColumns !== 'none' &&\n !styles.gridTemplateColumns.startsWith('auto');\n const hasRows = styles.gridTemplateRows && \n styles.gridTemplateRows !== 'none' &&\n !styles.gridTemplateRows.startsWith('auto');\n \n this.isVertical = hasColumns || !hasRows;\n \n // Calculate lane sizes\n if (this.isVertical) {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateColumns,\n containerRect.width,\n styles.columnGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.width];\n } else {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateRows,\n containerRect.height,\n styles.rowGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.height];\n }\n\n // Initialize lane positions (heights for vertical, widths for horizontal)\n this.laneHeights = new Array(this.lanes.length).fill(0);\n \n // Get all direct children\n const items = Array.from(this.container.children).filter(\n el => el.nodeType === Node.ELEMENT_NODE && \n window.getComputedStyle(el).display !== 'none'\n );\n\n // Separate explicitly placed items from auto-placed items\n const explicitItems = [];\n const autoItems = [];\n \n for (const item of items) {\n const itemStyles = getItemStyles(item);\n if (this.isVertical && itemStyles.columnStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else if (!this.isVertical && itemStyles.rowStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else {\n autoItems.push({ element: item, styles: itemStyles });\n }\n }\n\n // Place explicitly positioned items first\n for (const { element, styles: itemStyles } of explicitItems) {\n this.placeExplicitItem(element, itemStyles, styles);\n }\n\n // Place auto-positioned items\n for (const { element, styles: itemStyles } of autoItems) {\n this.placeAutoItem(element, itemStyles, styles);\n }\n\n // Set container height\n const containerHeight = Math.max(...this.laneHeights);\n this.container.style.minHeight = `${containerHeight}px`;\n }\n\n placeExplicitItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n \n let laneIndex;\n let span;\n \n if (this.isVertical) {\n // Handle negative indices\n laneIndex = itemStyles.columnStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.columnSpan;\n } else {\n laneIndex = itemStyles.rowStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.rowSpan;\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < laneIndex; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate width (for spanning)\n let size = 0;\n const endLane = Math.min(laneIndex + span, this.lanes.length);\n for (let i = laneIndex; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Get the tallest lane in the span\n let maxHeight = 0;\n for (let i = laneIndex; i < endLane; i++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[i]);\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = maxHeight + (maxHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = laneIndex; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n placeAutoItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n const tolerance = containerStyles.tolerance;\n const span = this.isVertical ? itemStyles.columnSpan : itemStyles.rowSpan;\n\n // Find the best lane(s) considering tolerance\n let bestLane = 0;\n let bestHeight = Infinity;\n\n for (let i = 0; i <= this.lanes.length - span; i++) {\n // Get the max height across the span\n let maxHeight = 0;\n for (let j = i; j < i + span; j++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[j]);\n }\n\n // Use tolerance to determine if this is meaningfully better\n if (bestHeight - maxHeight > tolerance) {\n bestHeight = maxHeight;\n bestLane = i;\n } else if (Math.abs(maxHeight - bestHeight) <= tolerance && i < bestLane) {\n // Within tolerance, prefer earlier lane for reading order\n bestHeight = maxHeight;\n bestLane = i;\n }\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < bestLane; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate size (for spanning)\n let size = 0;\n const endLane = Math.min(bestLane + span, this.lanes.length);\n for (let i = bestLane; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = bestHeight + (bestHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = bestLane; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n destroy() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n \n this.container.removeAttribute(POLYFILL_ATTR);\n this.container.style.position = '';\n this.container.style.display = '';\n this.container.style.minHeight = '';\n \n // Reset item styles\n for (const item of this.container.children) {\n if (item.nodeType === Node.ELEMENT_NODE) {\n item.style.position = '';\n item.style.left = '';\n item.style.top = '';\n item.style.width = '';\n item.style.height = '';\n }\n }\n }\n\n refresh() {\n this.layout();\n }\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n }\n }\n\n // Check stylesheets - parse raw cssText since browsers reject invalid display values\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n // Extract selector and find matching elements\n if (rule.selectorText) {\n gridLanesSelectors.add(rule.selectorText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n // Also check style elements directly for cases where browser strips the property\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selector = match[1].trim();\n if (selector && !gridLanesSelectors.has(selector)) {\n gridLanesSelectors.add(selector);\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n return containers;\n }\n\n /**\n * Initialize the polyfill\n */\n function init(options = {}) {\n // Check if native support exists\n if (supportsGridLanes() && !options.force) {\n console.log(`${POLYFILL_NAME}: Native support detected, polyfill not needed.`);\n return { supported: true, instances: [] };\n }\n\n const instances = new Map();\n\n // Process existing containers\n const containers = processStyleSheets();\n for (const container of containers) {\n if (!container.hasAttribute(POLYFILL_ATTR)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n\n // Watch for new stylesheets and elements\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n // Check for new style elements\n if (mutation.type === 'childList') {\n for (const node of mutation.addedNodes) {\n if (node.nodeType === Node.ELEMENT_NODE) {\n // Check if the added element is a grid-lanes container\n const style = window.getComputedStyle(node);\n if (node.style.display === 'grid-lanes' || \n style.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(node)) {\n instances.set(node, new GridLanesLayout(node, options));\n }\n }\n \n // Check descendants\n const descendants = node.querySelectorAll('*');\n for (const desc of descendants) {\n const descStyle = window.getComputedStyle(desc);\n if (desc.style.display === 'grid-lanes' ||\n descStyle.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(desc)) {\n instances.set(desc, new GridLanesLayout(desc, options));\n }\n }\n }\n }\n }\n }\n }\n\n // Re-scan stylesheets for new rules\n const newContainers = processStyleSheets();\n for (const container of newContainers) {\n if (!instances.has(container)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true\n });\n\n console.log(`${POLYFILL_NAME}: Initialized, ${instances.size} container(s) found.`);\n\n return {\n supported: false,\n instances,\n observer,\n refresh() {\n for (const instance of instances.values()) {\n instance.refresh();\n }\n },\n destroy() {\n observer.disconnect();\n for (const instance of instances.values()) {\n instance.destroy();\n }\n instances.clear();\n }\n };\n }\n\n /**\n * Apply to a specific element\n */\n function apply(element, options = {}) {\n if (supportsGridLanes() && !options.force) {\n return null;\n }\n return new GridLanesLayout(element, options);\n }\n\n // Export\n const GridLanesPolyfill = {\n supportsGridLanes,\n init,\n apply,\n GridLanesLayout,\n version: '1.0.0'\n };\n\n // AMD\n if (typeof define === 'function' && define.amd) {\n define([], function() { return GridLanesPolyfill; });\n }\n // CommonJS\n else if (typeof module === 'object' && module.exports) {\n module.exports = GridLanesPolyfill;\n }\n // Global\n else {\n global.GridLanesPolyfill = GridLanesPolyfill;\n }\n\n})(typeof globalThis !== 'undefined' ? globalThis : \n typeof window !== 'undefined' ? window : \n typeof global !== 'undefined' ? global : this);\n","structuredPatch":[{"oldStart":680,"oldLines":6,"newStart":680,"newLines":20,"lines":[" }"," "," /**","+ * Parse CSS properties from a CSS block text","+ */","+ function parseCSSProperties(cssBlock) {","+ const props = {};","+ // Extract property: value pairs","+ const propRegex = /([\\w-]+)\\s*:\\s*([^;]+);?/g;","+ let match;","+ while ((match = propRegex.exec(cssBlock)) !== null) {","+ props[match[1].trim()] = match[2].trim();","+ }","+ return props;","+ }","+","+ /**"," * Find and process all grid-lanes containers"," */"," function processStyleSheets() {"]},{"oldStart":692,"oldLines":10,"newStart":706,"newLines":54,"lines":[" const styleAttr = el.getAttribute('style') || '';"," if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {"," containers.add(el);","+ // Parse and store inline style properties","+ const props = parseCSSProperties(styleAttr);","+ if (!parsedGridLanesRules.has(el)) {","+ parsedGridLanesRules.set(el, props);","+ }"," }"," }"," ","- // Check stylesheets - parse raw cssText since browsers reject invalid display values","+ // Check style elements directly and parse raw CSS","+ const styleElements = document.querySelectorAll('style');","+ for (const styleEl of styleElements) {","+ const cssText = styleEl.textContent || '';","+ // Match selectors with display: grid-lanes and capture the full block","+ const regex = /([^{}]+)\\{([^}]*display\\s*:\\s*grid-lanes[^}]*)\\}/gi;","+ let match;","+ while ((match = regex.exec(cssText)) !== null) {","+ const selectorText = match[1].trim();","+ const cssBlock = match[2];","+","+ // Handle comma-separated selectors","+ const selectors = selectorText.split(',').map(s => s.trim());","+","+ for (const selector of selectors) {","+ if (!selector) continue;","+ gridLanesSelectors.add(selector);","+","+ // Parse properties from the CSS block","+ const props = parseCSSProperties(cssBlock);","+","+ try {","+ const elements = document.querySelectorAll(selector);","+ for (const el of elements) {","+ containers.add(el);","+ // Store parsed rules for this element (merge if exists)","+ if (parsedGridLanesRules.has(el)) {","+ Object.assign(parsedGridLanesRules.get(el), props);","+ } else {","+ parsedGridLanesRules.set(el, { ...props });","+ }","+ }","+ } catch (e) {","+ // Invalid selector, skip","+ }","+ }","+ }","+ }","+","+ // Also check stylesheet rules (may work for some browsers)"," for (const sheet of document.styleSheets) {"," try {"," const rules = sheet.cssRules || sheet.rules;"]},{"oldStart":703,"oldLines":13,"newStart":761,"newLines":16,"lines":[" "," for (const rule of rules) {"," if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {","- // Extract selector and find matching elements","- if (rule.selectorText) {","+ if (rule.selectorText && !gridLanesSelectors.has(rule.selectorText)) {"," gridLanesSelectors.add(rule.selectorText);","+ const props = parseCSSProperties(rule.cssText);"," try {"," const elements = document.querySelectorAll(rule.selectorText);"," for (const el of elements) {"," containers.add(el);","+ if (!parsedGridLanesRules.has(el)) {","+ parsedGridLanesRules.set(el, props);","+ }"," }"," } catch (e) {"," // Invalid selector, skip"]},{"oldStart":723,"oldLines":28,"newStart":784,"newLines":6,"lines":[" }"," }"," ","- // Also check style elements directly for cases where browser strips the property","- const styleElements = document.querySelectorAll('style');","- for (const styleEl of styleElements) {","- const cssText = styleEl.textContent || '';","- const regex = /([^{}]+)\\{[^}]*display\\s*:\\s*grid-lanes[^}]*\\}/gi;","- let match;","- while ((match = regex.exec(cssText)) !== null) {","- const selector = match[1].trim();","- if (selector && !gridLanesSelectors.has(selector)) {","- gridLanesSelectors.add(selector);","- try {","- const elements = document.querySelectorAll(selector);","- for (const el of elements) {","- containers.add(el);","- }","- } catch (e) {","- // Invalid selector, skip","- }","- }","- }","- }","-"," return containers;"," }"," "]}],"userModified":false,"replaceAll":false}}
{"parentUuid":"8c45cef0-fca1-42ca-9db4-1c3cf3941e53","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01Jynipxqeor2F7beW9ececp","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Now I need to update the `getGridLanesStyles` function to use the parsed CSS rules instead of (or in addition to) computed styles, since the computed styles won't have the grid-template-columns value for non-grid elements.","signature":"EocDCkYIChgCKkC9OmOEXJN7Oq69V79dX6QtagPh7O3XkLQSYEJNRiftkPOkw37QMDbHcHQQRbH4cvDw0aGEXNsIhlOpFJRz3H7EEgw6cHPU6729Da+tBvUaDOhM/Znp50rxwiIMcyIw2PgYm69aBRzZBy80WB/IH/SWiGL7xiZL1N7shsXVqZNOPKOCZChln3qMikcH5VipKu4BjYaxoajptrAEbZlnlPoyZ9+mZ7MhC8PaY+GDKCHq6ZV5fgeas7nVSu2oy8CDBL5H0zrvs3fRF78IWbCye1x5JUG4I456wQPiuaAx9+oVECOXnpWdfjKF/1LHMz7I1NZOd+oNVxghbgknTzGbTVMoPjMXKsmNW0Iea9OM0hUPZquZ+4iCXD7UoLBZEeRnqQDy2ixJuG9lPr7s79Q3Fc34dfnn6Va40LwwwufP9gV2ueLz50RbPfnoTaLNeBKITS86mSAhcGH048HsgIspw+OjYdIVjhQXo5at6jnFWLQqRzHhobWdivYr4jC4j2BcExgB"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":3292,"cache_read_input_tokens":45215,"cache_creation":{"ephemeral_5m_input_tokens":3292,"ephemeral_1h_input_tokens":0},"output_tokens":7,"service_tier":"standard"}},"requestId":"req_011CWHRi2fqtWhcv7JKLhN3h","type":"assistant","uuid":"b621fc7a-7247-4e25-b8ab-9b038e5aee14","timestamp":"2025-12-20T05:58:50.478Z"}
{"parentUuid":"b621fc7a-7247-4e25-b8ab-9b038e5aee14","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01Jynipxqeor2F7beW9ececp","type":"message","role":"assistant","content":[{"type":"text","text":"Now I need to update `getGridLanesStyles` to use the parsed CSS rules."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":3292,"cache_read_input_tokens":45215,"cache_creation":{"ephemeral_5m_input_tokens":3292,"ephemeral_1h_input_tokens":0},"output_tokens":7,"service_tier":"standard"}},"requestId":"req_011CWHRi2fqtWhcv7JKLhN3h","type":"assistant","uuid":"78e30731-d233-450f-af97-326ac8dca090","timestamp":"2025-12-20T05:58:50.815Z"}
{"parentUuid":"78e30731-d233-450f-af97-326ac8dca090","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01Jynipxqeor2F7beW9ececp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01GH8p4S27fTKu1XYrjCqf8q","name":"Edit","input":{"file_path":"/private/tmp/files/grid-lanes-polyfill.js","old_string":" /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }","new_string":" /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get parsed CSS rules for this element (from raw CSS parsing)\n const parsedRules = parsedGridLanesRules.get(element) || {};\n\n // Get gap values - prefer parsed rules, fall back to computed\n let gap = parsedRules['gap'] || computed.gap || computed.gridGap || '0px';\n let columnGap = parsedRules['column-gap'] || computed.columnGap || computed.gridColumnGap || gap;\n let rowGap = parsedRules['row-gap'] || computed.rowGap || computed.gridRowGap || gap;\n\n // Handle combined gap values like \"24px 16px\"\n if (gap.includes(' ')) {\n const [rg, cg] = gap.split(/\\s+/);\n if (!parsedRules['row-gap']) rowGap = rg;\n if (!parsedRules['column-gap']) columnGap = cg;\n }\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = parsedRules['--item-tolerance'] ||\n computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n // Get grid template - prefer parsed rules since computed styles won't work for non-grid elements\n const gridTemplateColumns = parsedRules['grid-template-columns'] || computed.gridTemplateColumns;\n const gridTemplateRows = parsedRules['grid-template-rows'] || computed.gridTemplateRows;\n\n return {\n gridTemplateColumns,\n gridTemplateRows,\n columnGap: parseLengthToPixels(String(columnGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(String(rowGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":3292,"cache_read_input_tokens":45215,"cache_creation":{"ephemeral_5m_input_tokens":3292,"ephemeral_1h_input_tokens":0},"output_tokens":1223,"service_tier":"standard"}},"requestId":"req_011CWHRi2fqtWhcv7JKLhN3h","type":"assistant","uuid":"d56ec1ca-bdf7-4af9-8cb2-91f15992fbb4","timestamp":"2025-12-20T05:59:02.346Z"}
{"parentUuid":"d56ec1ca-bdf7-4af9-8cb2-91f15992fbb4","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01GH8p4S27fTKu1XYrjCqf8q","type":"tool_result","content":"The file /private/tmp/files/grid-lanes-polyfill.js has been updated. Here's the result of running `cat -n` on a snippet of the edited file:\n 282→\n 283→ return tokens;\n 284→ }\n 285→\n 286→ /**\n 287→ * Get computed styles for grid-lanes properties\n 288→ */\n 289→ function getGridLanesStyles(element) {\n 290→ const computed = window.getComputedStyle(element);\n 291→ const fontSize = parseFloat(computed.fontSize) || 16;\n 292→ const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n 293→\n 294→ // Get parsed CSS rules for this element (from raw CSS parsing)\n 295→ const parsedRules = parsedGridLanesRules.get(element) || {};\n 296→\n 297→ // Get gap values - prefer parsed rules, fall back to computed\n 298→ let gap = parsedRules['gap'] || computed.gap || computed.gridGap || '0px';\n 299→ let columnGap = parsedRules['column-gap'] || computed.columnGap || computed.gridColumnGap || gap;\n 300→ let rowGap = parsedRules['row-gap'] || computed.rowGap || computed.gridRowGap || gap;\n 301→\n 302→ // Handle combined gap values like \"24px 16px\"\n 303→ if (gap.includes(' ')) {\n 304→ const [rg, cg] = gap.split(/\\s+/);\n 305→ if (!parsedRules['row-gap']) rowGap = rg;\n 306→ if (!parsedRules['column-gap']) columnGap = cg;\n 307→ }\n 308→\n 309→ // Parse item-tolerance (custom property or default)\n 310→ let tolerance = DEFAULT_TOLERANCE;\n 311→ const toleranceValue = parsedRules['--item-tolerance'] ||\n 312→ computed.getPropertyValue('--item-tolerance').trim() ||\n 313→ computed.getPropertyValue('item-tolerance').trim();\n 314→ if (toleranceValue) {\n 315→ const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n 316→ if (parsed !== null) tolerance = parsed;\n 317→ }\n 318→\n 319→ // Get grid template - prefer parsed rules since computed styles won't work for non-grid elements\n 320→ const gridTemplateColumns = parsedRules['grid-template-columns'] || computed.gridTemplateColumns;\n 321→ const gridTemplateRows = parsedRules['grid-template-rows'] || computed.gridTemplateRows;\n 322→\n 323→ return {\n 324→ gridTemplateColumns,\n 325→ gridTemplateRows,\n 326→ columnGap: parseLengthToPixels(String(columnGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,\n 327→ rowGap: parseLengthToPixels(String(rowGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,\n 328→ fontSize,\n 329→ rootFontSize,\n 330→ tolerance\n 331→ };\n 332→ }\n 333→\n 334→ /**\n 335→ * Get item placement properties\n 336→ */"}]},"uuid":"fe591701-eab5-4d72-addd-8b06d250f3b4","timestamp":"2025-12-20T05:59:02.382Z","toolUseResult":{"filePath":"/private/tmp/files/grid-lanes-polyfill.js","oldString":" /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }","newString":" /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get parsed CSS rules for this element (from raw CSS parsing)\n const parsedRules = parsedGridLanesRules.get(element) || {};\n\n // Get gap values - prefer parsed rules, fall back to computed\n let gap = parsedRules['gap'] || computed.gap || computed.gridGap || '0px';\n let columnGap = parsedRules['column-gap'] || computed.columnGap || computed.gridColumnGap || gap;\n let rowGap = parsedRules['row-gap'] || computed.rowGap || computed.gridRowGap || gap;\n\n // Handle combined gap values like \"24px 16px\"\n if (gap.includes(' ')) {\n const [rg, cg] = gap.split(/\\s+/);\n if (!parsedRules['row-gap']) rowGap = rg;\n if (!parsedRules['column-gap']) columnGap = cg;\n }\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = parsedRules['--item-tolerance'] ||\n computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n // Get grid template - prefer parsed rules since computed styles won't work for non-grid elements\n const gridTemplateColumns = parsedRules['grid-template-columns'] || computed.gridTemplateColumns;\n const gridTemplateRows = parsedRules['grid-template-rows'] || computed.gridTemplateRows;\n\n return {\n gridTemplateColumns,\n gridTemplateRows,\n columnGap: parseLengthToPixels(String(columnGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(String(rowGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }","originalFile":"/**\n * CSS Grid Lanes Polyfill\n * \n * Polyfills the new `display: grid-lanes` CSS feature for browsers\n * that don't support it natively. Based on the WebKit implementation\n * described at: https://webkit.org/blog/17660/introducing-css-grid-lanes/\n * \n * Features supported:\n * - display: grid-lanes\n * - grid-template-columns / grid-template-rows for lane definition\n * - gap, column-gap, row-gap\n * - item-tolerance for placement sensitivity\n * - Spanning items (grid-column: span N)\n * - Explicit placement (grid-column: N / M)\n * - Responsive auto-fill/auto-fit with minmax()\n * - Both waterfall (columns) and brick (rows) layouts\n * \n * @version 1.0.0\n * @license MIT\n */\n\n(function(global) {\n 'use strict';\n\n const POLYFILL_NAME = 'GridLanesPolyfill';\n const POLYFILL_ATTR = 'data-grid-lanes-polyfilled';\n const DEFAULT_TOLERANCE = 16; // ~1em in pixels\n\n // Store parsed CSS rules for grid-lanes containers\n const parsedGridLanesRules = new Map();\n\n /**\n * Check if the browser natively supports display: grid-lanes\n */\n function supportsGridLanes() {\n if (typeof CSS === 'undefined' || !CSS.supports) {\n return false;\n }\n return CSS.supports('display', 'grid-lanes');\n }\n\n /**\n * Parse a CSS length value to pixels\n */\n function parseLengthToPixels(value, containerSize, fontSize = 16, rootFontSize = 16) {\n if (!value || value === 'auto' || value === 'none') return null;\n \n const num = parseFloat(value);\n if (isNaN(num)) return null;\n\n if (value.endsWith('px')) return num;\n if (value.endsWith('rem')) return num * rootFontSize;\n if (value.endsWith('em')) return num * fontSize;\n if (value.endsWith('ch')) return num * fontSize * 0.5; // Approximate\n if (value.endsWith('lh')) return num * fontSize * 1.2; // Approximate line-height\n if (value.endsWith('%')) return (num / 100) * containerSize;\n if (value.endsWith('vw')) return (num / 100) * window.innerWidth;\n if (value.endsWith('vh')) return (num / 100) * window.innerHeight;\n if (value.endsWith('vmin')) return (num / 100) * Math.min(window.innerWidth, window.innerHeight);\n if (value.endsWith('vmax')) return (num / 100) * Math.max(window.innerWidth, window.innerHeight);\n if (value.endsWith('fr')) return null; // Handled separately\n \n // Unitless number treated as pixels\n if (!isNaN(num) && value === String(num)) return num;\n \n return null;\n }\n\n /**\n * Parse minmax() function\n */\n function parseMinMax(value) {\n const match = value.match(/minmax\\(\\s*([^,]+)\\s*,\\s*([^)]+)\\s*\\)/);\n if (!match) return null;\n return {\n min: match[1].trim(),\n max: match[2].trim()\n };\n }\n\n /**\n * Parse repeat() function\n */\n function parseRepeat(value) {\n const match = value.match(/repeat\\(\\s*([^,]+)\\s*,\\s*(.+)\\s*\\)/);\n if (!match) return null;\n return {\n count: match[1].trim(),\n pattern: match[2].trim()\n };\n }\n\n /**\n * Calculate lane sizes from grid-template-columns/rows\n */\n function calculateLaneSizes(template, containerSize, gap, fontSize, rootFontSize) {\n if (!template || template === 'none' || template === 'auto') {\n return null;\n }\n\n const availableSpace = containerSize;\n let lanes = [];\n let totalFr = 0;\n let fixedSpace = 0;\n\n // Parse the template\n const tokens = tokenizeTemplate(template);\n \n for (const token of tokens) {\n // Handle repeat()\n const repeatInfo = parseRepeat(token);\n if (repeatInfo) {\n const { count, pattern } = repeatInfo;\n const patternTokens = tokenizeTemplate(pattern);\n \n if (count === 'auto-fill' || count === 'auto-fit') {\n // Calculate how many repetitions fit\n let minSize = 0;\n let hasFlexible = false;\n \n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n if (minmax.min === 'max-content' || minmax.min === 'min-content') {\n minSize += 100; // Fallback estimate\n } else if (minVal !== null) {\n minSize += minVal;\n }\n if (minmax.max.endsWith('fr')) {\n hasFlexible = true;\n }\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n minSize += size;\n } else if (pt.endsWith('fr')) {\n hasFlexible = true;\n minSize += 100; // Minimum fallback for fr units\n }\n }\n }\n \n // Calculate repetitions\n const patternCount = patternTokens.length;\n const gapCount = patternCount - 1;\n const minPatternSize = minSize + (gapCount * gap);\n \n let reps = Math.max(1, Math.floor((availableSpace + gap) / (minPatternSize + gap)));\n \n // Expand pattern\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const minmax = parseMinMax(pt);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr') \n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({\n min: minVal || 0,\n max: maxVal,\n size: 0\n });\n \n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n } else if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize) || 0;\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n } else {\n // Fixed repeat count\n const reps = parseInt(count, 10);\n for (let i = 0; i < reps; i++) {\n for (const pt of patternTokens) {\n const size = parseLengthToPixels(pt, containerSize, fontSize, rootFontSize);\n if (pt.endsWith('fr')) {\n const fr = parseFloat(pt);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n } else if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n }\n }\n continue;\n }\n\n // Handle minmax()\n const minmax = parseMinMax(token);\n if (minmax) {\n const minVal = parseLengthToPixels(minmax.min, containerSize, fontSize, rootFontSize);\n const maxVal = minmax.max.endsWith('fr')\n ? { fr: parseFloat(minmax.max) }\n : parseLengthToPixels(minmax.max, containerSize, fontSize, rootFontSize);\n \n lanes.push({ min: minVal || 0, max: maxVal, size: 0 });\n if (typeof maxVal === 'object' && maxVal.fr) {\n totalFr += maxVal.fr;\n }\n fixedSpace += minVal || 0;\n continue;\n }\n\n // Handle fr units\n if (token.endsWith('fr')) {\n const fr = parseFloat(token);\n lanes.push({ min: 0, max: { fr }, size: 0 });\n totalFr += fr;\n continue;\n }\n\n // Handle fixed sizes\n const size = parseLengthToPixels(token, containerSize, fontSize, rootFontSize);\n if (size !== null) {\n lanes.push({ min: size, max: size, size });\n fixedSpace += size;\n }\n }\n\n // Calculate final sizes\n const totalGaps = Math.max(0, lanes.length - 1) * gap;\n const flexSpace = Math.max(0, availableSpace - fixedSpace - totalGaps);\n const frUnit = totalFr > 0 ? flexSpace / totalFr : 0;\n\n for (const lane of lanes) {\n if (typeof lane.max === 'object' && lane.max.fr) {\n lane.size = Math.max(lane.min, frUnit * lane.max.fr);\n } else if (typeof lane.max === 'number') {\n lane.size = Math.min(lane.max, Math.max(lane.min, lane.min));\n } else {\n lane.size = lane.min;\n }\n }\n\n return lanes.map(l => l.size);\n }\n\n /**\n * Tokenize a grid template string\n */\n function tokenizeTemplate(template) {\n const tokens = [];\n let current = '';\n let parenDepth = 0;\n\n for (let i = 0; i < template.length; i++) {\n const char = template[i];\n \n if (char === '(') {\n parenDepth++;\n current += char;\n } else if (char === ')') {\n parenDepth--;\n current += char;\n } else if (char === ' ' && parenDepth === 0) {\n if (current.trim()) {\n tokens.push(current.trim());\n }\n current = '';\n } else {\n current += char;\n }\n }\n\n if (current.trim()) {\n tokens.push(current.trim());\n }\n\n return tokens;\n }\n\n /**\n * Get computed styles for grid-lanes properties\n */\n function getGridLanesStyles(element) {\n const computed = window.getComputedStyle(element);\n const fontSize = parseFloat(computed.fontSize) || 16;\n const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;\n\n // Get gap values\n const gap = computed.gap || computed.gridGap || '0px';\n const columnGap = computed.columnGap || computed.gridColumnGap || gap;\n const rowGap = computed.rowGap || computed.gridRowGap || gap;\n\n // Parse item-tolerance (custom property or default)\n let tolerance = DEFAULT_TOLERANCE;\n const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||\n computed.getPropertyValue('item-tolerance').trim();\n if (toleranceValue) {\n const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);\n if (parsed !== null) tolerance = parsed;\n }\n\n return {\n gridTemplateColumns: computed.gridTemplateColumns,\n gridTemplateRows: computed.gridTemplateRows,\n columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,\n fontSize,\n rootFontSize,\n tolerance\n };\n }\n\n /**\n * Get item placement properties\n */\n function getItemStyles(element) {\n const computed = window.getComputedStyle(element);\n const gridColumn = computed.gridColumn || computed.gridColumnStart;\n const gridRow = computed.gridRow || computed.gridRowStart;\n\n let columnSpan = 1;\n let columnStart = null;\n let columnEnd = null;\n let rowSpan = 1;\n let rowStart = null;\n let rowEnd = null;\n\n // Parse grid-column\n if (gridColumn && gridColumn !== 'auto') {\n const spanMatch = gridColumn.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n columnSpan = parseInt(spanMatch[1], 10);\n } else if (gridColumn.includes('/')) {\n const [start, end] = gridColumn.split('/').map(s => s.trim());\n columnStart = parseInt(start, 10);\n columnEnd = parseInt(end, 10);\n if (!isNaN(columnStart) && !isNaN(columnEnd)) {\n columnSpan = Math.abs(columnEnd - columnStart);\n }\n } else {\n const num = parseInt(gridColumn, 10);\n if (!isNaN(num)) {\n columnStart = num;\n }\n }\n }\n\n // Parse grid-row\n if (gridRow && gridRow !== 'auto') {\n const spanMatch = gridRow.match(/span\\s+(\\d+)/);\n if (spanMatch) {\n rowSpan = parseInt(spanMatch[1], 10);\n } else if (gridRow.includes('/')) {\n const [start, end] = gridRow.split('/').map(s => s.trim());\n rowStart = parseInt(start, 10);\n rowEnd = parseInt(end, 10);\n if (!isNaN(rowStart) && !isNaN(rowEnd)) {\n rowSpan = Math.abs(rowEnd - rowStart);\n }\n } else {\n const num = parseInt(gridRow, 10);\n if (!isNaN(num)) {\n rowStart = num;\n }\n }\n }\n\n return {\n columnSpan,\n columnStart,\n columnEnd,\n rowSpan,\n rowStart,\n rowEnd\n };\n }\n\n /**\n * Main Grid Lanes layout class\n */\n class GridLanesLayout {\n constructor(container, options = {}) {\n this.container = container;\n this.options = options;\n this.isVertical = true; // true = waterfall (columns), false = brick (rows)\n this.lanes = [];\n this.laneHeights = [];\n this.resizeObserver = null;\n this.mutationObserver = null;\n \n this.init();\n }\n\n init() {\n // Mark as polyfilled\n this.container.setAttribute(POLYFILL_ATTR, 'true');\n \n // Set up container styles\n this.container.style.position = 'relative';\n this.container.style.display = 'block';\n \n // Initial layout\n this.layout();\n \n // Set up observers\n this.setupObservers();\n }\n\n setupObservers() {\n // Resize observer for responsive layouts\n this.resizeObserver = new ResizeObserver(() => {\n this.layout();\n });\n this.resizeObserver.observe(this.container);\n\n // Mutation observer for dynamic content\n this.mutationObserver = new MutationObserver((mutations) => {\n let shouldRelayout = false;\n for (const mutation of mutations) {\n if (mutation.type === 'childList' || \n (mutation.type === 'attributes' && mutation.attributeName === 'style')) {\n shouldRelayout = true;\n break;\n }\n }\n if (shouldRelayout) {\n this.layout();\n }\n });\n this.mutationObserver.observe(this.container, {\n childList: true,\n subtree: false,\n attributes: true,\n attributeFilter: ['style', 'class']\n });\n }\n\n layout() {\n const styles = getGridLanesStyles(this.container);\n const containerRect = this.container.getBoundingClientRect();\n \n // Determine direction based on which template is defined\n const hasColumns = styles.gridTemplateColumns && \n styles.gridTemplateColumns !== 'none' &&\n !styles.gridTemplateColumns.startsWith('auto');\n const hasRows = styles.gridTemplateRows && \n styles.gridTemplateRows !== 'none' &&\n !styles.gridTemplateRows.startsWith('auto');\n \n this.isVertical = hasColumns || !hasRows;\n \n // Calculate lane sizes\n if (this.isVertical) {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateColumns,\n containerRect.width,\n styles.columnGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.width];\n } else {\n this.lanes = calculateLaneSizes(\n styles.gridTemplateRows,\n containerRect.height,\n styles.rowGap,\n styles.fontSize,\n styles.rootFontSize\n ) || [containerRect.height];\n }\n\n // Initialize lane positions (heights for vertical, widths for horizontal)\n this.laneHeights = new Array(this.lanes.length).fill(0);\n \n // Get all direct children\n const items = Array.from(this.container.children).filter(\n el => el.nodeType === Node.ELEMENT_NODE && \n window.getComputedStyle(el).display !== 'none'\n );\n\n // Separate explicitly placed items from auto-placed items\n const explicitItems = [];\n const autoItems = [];\n \n for (const item of items) {\n const itemStyles = getItemStyles(item);\n if (this.isVertical && itemStyles.columnStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else if (!this.isVertical && itemStyles.rowStart !== null) {\n explicitItems.push({ element: item, styles: itemStyles });\n } else {\n autoItems.push({ element: item, styles: itemStyles });\n }\n }\n\n // Place explicitly positioned items first\n for (const { element, styles: itemStyles } of explicitItems) {\n this.placeExplicitItem(element, itemStyles, styles);\n }\n\n // Place auto-positioned items\n for (const { element, styles: itemStyles } of autoItems) {\n this.placeAutoItem(element, itemStyles, styles);\n }\n\n // Set container height\n const containerHeight = Math.max(...this.laneHeights);\n this.container.style.minHeight = `${containerHeight}px`;\n }\n\n placeExplicitItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n \n let laneIndex;\n let span;\n \n if (this.isVertical) {\n // Handle negative indices\n laneIndex = itemStyles.columnStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.columnSpan;\n } else {\n laneIndex = itemStyles.rowStart;\n if (laneIndex < 0) {\n laneIndex = this.lanes.length + laneIndex + 1;\n }\n laneIndex = Math.max(0, Math.min(laneIndex - 1, this.lanes.length - 1));\n span = itemStyles.rowSpan;\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < laneIndex; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate width (for spanning)\n let size = 0;\n const endLane = Math.min(laneIndex + span, this.lanes.length);\n for (let i = laneIndex; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Get the tallest lane in the span\n let maxHeight = 0;\n for (let i = laneIndex; i < endLane; i++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[i]);\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${maxHeight > 0 ? maxHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = maxHeight + (maxHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = laneIndex; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n placeAutoItem(element, itemStyles, containerStyles) {\n const gap = this.isVertical ? containerStyles.columnGap : containerStyles.rowGap;\n const crossGap = this.isVertical ? containerStyles.rowGap : containerStyles.columnGap;\n const tolerance = containerStyles.tolerance;\n const span = this.isVertical ? itemStyles.columnSpan : itemStyles.rowSpan;\n\n // Find the best lane(s) considering tolerance\n let bestLane = 0;\n let bestHeight = Infinity;\n\n for (let i = 0; i <= this.lanes.length - span; i++) {\n // Get the max height across the span\n let maxHeight = 0;\n for (let j = i; j < i + span; j++) {\n maxHeight = Math.max(maxHeight, this.laneHeights[j]);\n }\n\n // Use tolerance to determine if this is meaningfully better\n if (bestHeight - maxHeight > tolerance) {\n bestHeight = maxHeight;\n bestLane = i;\n } else if (Math.abs(maxHeight - bestHeight) <= tolerance && i < bestLane) {\n // Within tolerance, prefer earlier lane for reading order\n bestHeight = maxHeight;\n bestLane = i;\n }\n }\n\n // Calculate position\n let position = 0;\n for (let i = 0; i < bestLane; i++) {\n position += this.lanes[i] + gap;\n }\n\n // Calculate size (for spanning)\n let size = 0;\n const endLane = Math.min(bestLane + span, this.lanes.length);\n for (let i = bestLane; i < endLane; i++) {\n size += this.lanes[i];\n if (i < endLane - 1) size += gap;\n }\n\n // Position the element\n element.style.position = 'absolute';\n \n if (this.isVertical) {\n element.style.left = `${position}px`;\n element.style.top = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.width = `${size}px`;\n element.style.height = '';\n } else {\n element.style.top = `${position}px`;\n element.style.left = `${bestHeight > 0 ? bestHeight + crossGap : 0}px`;\n element.style.height = `${size}px`;\n element.style.width = '';\n }\n\n // Update lane heights\n const itemRect = element.getBoundingClientRect();\n const itemSize = this.isVertical ? itemRect.height : itemRect.width;\n const newHeight = bestHeight + (bestHeight > 0 ? crossGap : 0) + itemSize;\n \n for (let i = bestLane; i < endLane; i++) {\n this.laneHeights[i] = newHeight;\n }\n }\n\n destroy() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n \n this.container.removeAttribute(POLYFILL_ATTR);\n this.container.style.position = '';\n this.container.style.display = '';\n this.container.style.minHeight = '';\n \n // Reset item styles\n for (const item of this.container.children) {\n if (item.nodeType === Node.ELEMENT_NODE) {\n item.style.position = '';\n item.style.left = '';\n item.style.top = '';\n item.style.width = '';\n item.style.height = '';\n }\n }\n }\n\n refresh() {\n this.layout();\n }\n }\n\n /**\n * Parse CSS properties from a CSS block text\n */\n function parseCSSProperties(cssBlock) {\n const props = {};\n // Extract property: value pairs\n const propRegex = /([\\w-]+)\\s*:\\s*([^;]+);?/g;\n let match;\n while ((match = propRegex.exec(cssBlock)) !== null) {\n props[match[1].trim()] = match[2].trim();\n }\n return props;\n }\n\n /**\n * Find and process all grid-lanes containers\n */\n function processStyleSheets() {\n const containers = new Set();\n const gridLanesSelectors = new Set();\n\n // Check inline styles (look at the raw style attribute)\n const allElements = document.querySelectorAll('[style*=\"grid-lanes\"]');\n for (const el of allElements) {\n const styleAttr = el.getAttribute('style') || '';\n if (/display\\s*:\\s*grid-lanes/i.test(styleAttr)) {\n containers.add(el);\n // Parse and store inline style properties\n const props = parseCSSProperties(styleAttr);\n if (!parsedGridLanesRules.has(el)) {\n parsedGridLanesRules.set(el, props);\n }\n }\n }\n\n // Check style elements directly and parse raw CSS\n const styleElements = document.querySelectorAll('style');\n for (const styleEl of styleElements) {\n const cssText = styleEl.textContent || '';\n // Match selectors with display: grid-lanes and capture the full block\n const regex = /([^{}]+)\\{([^}]*display\\s*:\\s*grid-lanes[^}]*)\\}/gi;\n let match;\n while ((match = regex.exec(cssText)) !== null) {\n const selectorText = match[1].trim();\n const cssBlock = match[2];\n\n // Handle comma-separated selectors\n const selectors = selectorText.split(',').map(s => s.trim());\n\n for (const selector of selectors) {\n if (!selector) continue;\n gridLanesSelectors.add(selector);\n\n // Parse properties from the CSS block\n const props = parseCSSProperties(cssBlock);\n\n try {\n const elements = document.querySelectorAll(selector);\n for (const el of elements) {\n containers.add(el);\n // Store parsed rules for this element (merge if exists)\n if (parsedGridLanesRules.has(el)) {\n Object.assign(parsedGridLanesRules.get(el), props);\n } else {\n parsedGridLanesRules.set(el, { ...props });\n }\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n\n // Also check stylesheet rules (may work for some browsers)\n for (const sheet of document.styleSheets) {\n try {\n const rules = sheet.cssRules || sheet.rules;\n if (!rules) continue;\n\n for (const rule of rules) {\n if (rule.cssText && /display\\s*:\\s*grid-lanes/i.test(rule.cssText)) {\n if (rule.selectorText && !gridLanesSelectors.has(rule.selectorText)) {\n gridLanesSelectors.add(rule.selectorText);\n const props = parseCSSProperties(rule.cssText);\n try {\n const elements = document.querySelectorAll(rule.selectorText);\n for (const el of elements) {\n containers.add(el);\n if (!parsedGridLanesRules.has(el)) {\n parsedGridLanesRules.set(el, props);\n }\n }\n } catch (e) {\n // Invalid selector, skip\n }\n }\n }\n }\n } catch (e) {\n // Cross-origin stylesheets will throw\n console.warn(`${POLYFILL_NAME}: Could not access stylesheet:`, e);\n }\n }\n\n return containers;\n }\n\n /**\n * Initialize the polyfill\n */\n function init(options = {}) {\n // Check if native support exists\n if (supportsGridLanes() && !options.force) {\n console.log(`${POLYFILL_NAME}: Native support detected, polyfill not needed.`);\n return { supported: true, instances: [] };\n }\n\n const instances = new Map();\n\n // Process existing containers\n const containers = processStyleSheets();\n for (const container of containers) {\n if (!container.hasAttribute(POLYFILL_ATTR)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n\n // Watch for new stylesheets and elements\n const observer = new MutationObserver((mutations) => {\n for (const mutation of mutations) {\n // Check for new style elements\n if (mutation.type === 'childList') {\n for (const node of mutation.addedNodes) {\n if (node.nodeType === Node.ELEMENT_NODE) {\n // Check if the added element is a grid-lanes container\n const style = window.getComputedStyle(node);\n if (node.style.display === 'grid-lanes' || \n style.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(node)) {\n instances.set(node, new GridLanesLayout(node, options));\n }\n }\n \n // Check descendants\n const descendants = node.querySelectorAll('*');\n for (const desc of descendants) {\n const descStyle = window.getComputedStyle(desc);\n if (desc.style.display === 'grid-lanes' ||\n descStyle.getPropertyValue('display') === 'grid-lanes') {\n if (!instances.has(desc)) {\n instances.set(desc, new GridLanesLayout(desc, options));\n }\n }\n }\n }\n }\n }\n }\n\n // Re-scan stylesheets for new rules\n const newContainers = processStyleSheets();\n for (const container of newContainers) {\n if (!instances.has(container)) {\n instances.set(container, new GridLanesLayout(container, options));\n }\n }\n });\n\n observer.observe(document.documentElement, {\n childList: true,\n subtree: true\n });\n\n console.log(`${POLYFILL_NAME}: Initialized, ${instances.size} container(s) found.`);\n\n return {\n supported: false,\n instances,\n observer,\n refresh() {\n for (const instance of instances.values()) {\n instance.refresh();\n }\n },\n destroy() {\n observer.disconnect();\n for (const instance of instances.values()) {\n instance.destroy();\n }\n instances.clear();\n }\n };\n }\n\n /**\n * Apply to a specific element\n */\n function apply(element, options = {}) {\n if (supportsGridLanes() && !options.force) {\n return null;\n }\n return new GridLanesLayout(element, options);\n }\n\n // Export\n const GridLanesPolyfill = {\n supportsGridLanes,\n init,\n apply,\n GridLanesLayout,\n version: '1.0.0'\n };\n\n // AMD\n if (typeof define === 'function' && define.amd) {\n define([], function() { return GridLanesPolyfill; });\n }\n // CommonJS\n else if (typeof module === 'object' && module.exports) {\n module.exports = GridLanesPolyfill;\n }\n // Global\n else {\n global.GridLanesPolyfill = GridLanesPolyfill;\n }\n\n})(typeof globalThis !== 'undefined' ? globalThis : \n typeof window !== 'undefined' ? window : \n typeof global !== 'undefined' ? global : this);\n","structuredPatch":[{"oldStart":291,"oldLines":25,"newStart":291,"newLines":40,"lines":[" const fontSize = parseFloat(computed.fontSize) || 16;"," const rootFontSize = parseFloat(window.getComputedStyle(document.documentElement).fontSize) || 16;"," ","- // Get gap values","- const gap = computed.gap || computed.gridGap || '0px';","- const columnGap = computed.columnGap || computed.gridColumnGap || gap;","- const rowGap = computed.rowGap || computed.gridRowGap || gap;","+ // Get parsed CSS rules for this element (from raw CSS parsing)","+ const parsedRules = parsedGridLanesRules.get(element) || {};"," ","+ // Get gap values - prefer parsed rules, fall back to computed","+ let gap = parsedRules['gap'] || computed.gap || computed.gridGap || '0px';","+ let columnGap = parsedRules['column-gap'] || computed.columnGap || computed.gridColumnGap || gap;","+ let rowGap = parsedRules['row-gap'] || computed.rowGap || computed.gridRowGap || gap;","+","+ // Handle combined gap values like \"24px 16px\"","+ if (gap.includes(' ')) {","+ const [rg, cg] = gap.split(/\\s+/);","+ if (!parsedRules['row-gap']) rowGap = rg;","+ if (!parsedRules['column-gap']) columnGap = cg;","+ }","+"," // Parse item-tolerance (custom property or default)"," let tolerance = DEFAULT_TOLERANCE;","- const toleranceValue = computed.getPropertyValue('--item-tolerance').trim() ||","+ const toleranceValue = parsedRules['--item-tolerance'] ||","+ computed.getPropertyValue('--item-tolerance').trim() ||"," computed.getPropertyValue('item-tolerance').trim();"," if (toleranceValue) {"," const parsed = parseLengthToPixels(toleranceValue, 0, fontSize, rootFontSize);"," if (parsed !== null) tolerance = parsed;"," }"," ","+ // Get grid template - prefer parsed rules since computed styles won't work for non-grid elements","+ const gridTemplateColumns = parsedRules['grid-template-columns'] || computed.gridTemplateColumns;","+ const gridTemplateRows = parsedRules['grid-template-rows'] || computed.gridTemplateRows;","+"," return {","- gridTemplateColumns: computed.gridTemplateColumns,","- gridTemplateRows: computed.gridTemplateRows,","- columnGap: parseLengthToPixels(columnGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,","- rowGap: parseLengthToPixels(rowGap.split(' ')[0], 0, fontSize, rootFontSize) || 0,","+ gridTemplateColumns,","+ gridTemplateRows,","+ columnGap: parseLengthToPixels(String(columnGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,","+ rowGap: parseLengthToPixels(String(rowGap).split(' ')[0], 0, fontSize, rootFontSize) || 0,"," fontSize,"," rootFontSize,"," tolerance"]}],"userModified":false,"replaceAll":false}}
{"parentUuid":"fe591701-eab5-4d72-addd-8b06d250f3b4","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01P7PukCC2uiQQqCs85L5AFt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Good progress! Now let me take a new screenshot to test the fix. Let me update the todo list and take a new screenshot.","signature":"EqACCkYIChgCKkAItSK9mMEUyHT7p2Ov1zqkG3uDVHwtjQ/BiNc3HgODuSSRITDGW+s+p7LazBberddCUjLIPo95SrJMRoRvCSBsEgxXP5HVfCHN5CBYw5saDPJnAn5OvmARwn9/lyIwF2O0ukvSZdiapR9rQ5HurjV3OSBfDealuFyo11FcoRHmPgx/jJQbEDxZtG1Xxw3RKocB6+kH3h87S2tmDw3mqG4g0m1xgF5pEcXOFdgC6oBEnJSb7jygklp8Jn03kSNfk+n1vEuHPPbSOSZvBbj7v9C/bODmoUFsruO47cTakfcmsNB8iKIPHwScU2luAv0+O6vwtlfL1jpBC/7j7+gAvVvoN7jDj2klVMRqykuhctlkfOSvL6farlhMGAE="}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2276,"cache_read_input_tokens":48507,"cache_creation":{"ephemeral_5m_input_tokens":2276,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRjA29HpM3BG5ZEnczM","type":"assistant","uuid":"c7358210-77d9-4411-baa6-93abc385bc39","timestamp":"2025-12-20T05:59:05.820Z"}
{"parentUuid":"c7358210-77d9-4411-baa6-93abc385bc39","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01P7PukCC2uiQQqCs85L5AFt","type":"message","role":"assistant","content":[{"type":"text","text":"Now let me take a new screenshot to test the fix."}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2276,"cache_read_input_tokens":48507,"cache_creation":{"ephemeral_5m_input_tokens":2276,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRjA29HpM3BG5ZEnczM","type":"assistant","uuid":"8c8e1393-7900-4b0b-9d6d-60b0e246759e","timestamp":"2025-12-20T05:59:06.029Z"}
{"parentUuid":"8c8e1393-7900-4b0b-9d6d-60b0e246759e","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01P7PukCC2uiQQqCs85L5AFt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01CXCbT9Rpp4CqKo8WNueota","name":"TodoWrite","input":{"todos":[{"content":"Fix polyfill to detect grid-lanes from raw CSS text (not computed styles)","status":"completed","activeForm":"Fixing polyfill detection of grid-lanes from raw CSS"},{"content":"Test the fix by taking a new screenshot","status":"in_progress","activeForm":"Testing the fix with a new screenshot"}]}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2276,"cache_read_input_tokens":48507,"cache_creation":{"ephemeral_5m_input_tokens":2276,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRjA29HpM3BG5ZEnczM","type":"assistant","uuid":"90f1c948-eac9-4e34-8e3a-2781e39b7b38","timestamp":"2025-12-20T05:59:07.611Z"}
{"parentUuid":"90f1c948-eac9-4e34-8e3a-2781e39b7b38","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_01P7PukCC2uiQQqCs85L5AFt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01BvC4rVEXmTwyU43WfZi6pZ","name":"Bash","input":{"command":"npx playwright screenshot --browser chromium \"http://localhost:8042/demo.html\" screenshot2.png 2>&1","description":"Take new screenshot to test the fix","timeout":120000}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":2276,"cache_read_input_tokens":48507,"cache_creation":{"ephemeral_5m_input_tokens":2276,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRjA29HpM3BG5ZEnczM","type":"assistant","uuid":"6e8dbb62-8fe8-4aca-9024-4ef6efc10121","timestamp":"2025-12-20T05:59:09.071Z"}
{"parentUuid":"6e8dbb62-8fe8-4aca-9024-4ef6efc10121","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01CXCbT9Rpp4CqKo8WNueota","type":"tool_result","content":"Todos have been modified successfully. Ensure that you continue to use the todo list to track your progress. Please proceed with the current tasks if applicable"}]},"uuid":"17b6bff5-28cb-425f-ac15-fabf7932c703","timestamp":"2025-12-20T05:59:09.110Z","toolUseResult":{"oldTodos":[{"content":"Fix polyfill to detect grid-lanes from raw CSS text (not computed styles)","status":"in_progress","activeForm":"Fixing polyfill detection of grid-lanes from raw CSS"},{"content":"Test the fix by taking a new screenshot","status":"pending","activeForm":"Testing the fix with a new screenshot"}],"newTodos":[{"content":"Fix polyfill to detect grid-lanes from raw CSS text (not computed styles)","status":"completed","activeForm":"Fixing polyfill detection of grid-lanes from raw CSS"},{"content":"Test the fix by taking a new screenshot","status":"in_progress","activeForm":"Testing the fix with a new screenshot"}]}}
{"parentUuid":"17b6bff5-28cb-425f-ac15-fabf7932c703","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01BvC4rVEXmTwyU43WfZi6pZ","type":"tool_result","content":"Navigating to http://localhost:8042/demo.html\nCapturing screenshot into screenshot2.png","is_error":false}]},"uuid":"cb6c265b-83d4-4257-847e-111c859c6735","timestamp":"2025-12-20T05:59:13.719Z","toolUseResult":{"stdout":"Navigating to http://localhost:8042/demo.html\nCapturing screenshot into screenshot2.png","stderr":"","interrupted":false,"isImage":false}}
{"parentUuid":"cb6c265b-83d4-4257-847e-111c859c6735","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_016Angq7Pw7ccZkomQaC6ikN","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"Let me view the screenshot to see if the fix worked.","signature":"EtwBCkYIChgCKkC4QfhfjIgLgF0mjnXytBPXGOrjA90ytU/1Ea5Z6wyukyEalXu7gDDTP47Nk7QCFvC/n9fg8WchuscspP2EbYbNEgyo9F8QgXztgtYynywaDKVimkJJNYWvmyJDpCIwI8zU0m2dqdtrsBxz8uvqZLU8sP7C4rhUmwEH87Q489Uz22UK0s3kwOxQ49XrlooKKkSa8hp2n1Xzl8OhTnHLqSOVIBqaaLGhIAAJRcEjbkSgE53riA5yloCqtk9i7Vga6XVXhotPZDCgI/fdZoHhfjIQdAz+LhgB"}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":407,"cache_read_input_tokens":50783,"cache_creation":{"ephemeral_5m_input_tokens":407,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRjzp2yVSJTgD8XUspH","type":"assistant","uuid":"bd82c108-3e4c-44c3-a8df-1020700986f8","timestamp":"2025-12-20T05:59:17.030Z"}
{"parentUuid":"bd82c108-3e4c-44c3-a8df-1020700986f8","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","message":{"model":"claude-opus-4-5-20251101","id":"msg_016Angq7Pw7ccZkomQaC6ikN","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01K3uAGDMiLqnFZ3GW6vuAAT","name":"Read","input":{"file_path":"/private/tmp/files/screenshot2.png"}}],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":7,"cache_creation_input_tokens":407,"cache_read_input_tokens":50783,"cache_creation":{"ephemeral_5m_input_tokens":407,"ephemeral_1h_input_tokens":0},"output_tokens":1,"service_tier":"standard"}},"requestId":"req_011CWHRjzp2yVSJTgD8XUspH","type":"assistant","uuid":"5161df6d-098c-4939-aa5c-68c9dd5de341","timestamp":"2025-12-20T05:59:17.327Z"}
{"parentUuid":"5161df6d-098c-4939-aa5c-68c9dd5de341","isSidechain":false,"userType":"external","cwd":"/private/tmp/files","sessionId":"16c4b025-7b6e-43f0-854e-ca7363f2fee9","version":"2.0.74","gitBranch":"","slug":"joyful-baking-knuth","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01K3uAGDMiLqnFZ3GW6vuAAT","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"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Z58dSXn1du06tG3b/quvvq5fv/6YMWPMylDG29W1XGhoKCs4yD5kE4xR0JdwPSwAPTxfktIeYB4ZM53OoIEeejXoYQHoS5Ge5tkFDcNyjsWmTzufczlJm5JN/4joPh6LZQUHhQexsbEfffThY48NpDj2f//7jtK/a9b8S1/5+fm3FUHNK18+hIj008FLly4rV87ttddeI82cOX9Q8JbniUJCQsTKdJE2pUmJVayof2sXVUIfK1euSJbhZ6RT226ANRw6dCgkJPjbb79p0qTJd99NK1++AtXJH+jdt28/nf29996lhO3gwYOmTJmSnZ1jtvu6f/++0tltt5lSqWFh4b179xw4cEBsbAwtK3D9smX/ODg4LFq0gAr37t17wYL5kye/zPLC3r26x6cHDOgnV9KliYuLf+KJxydNmkgd//33Wa6uLnk+mm6tm6tWrSb5779rWrVqRbWtXbuaLLN8+XKWPzRt2ph6JK102LBznTp1qGT16tWJ88tHkbbtyrds2Va1atWvvvqSjh05csSMGdNJkr527dotWujeBFa/fj1qtvwQDw/PTp06ffjhB56envxusnzZWLduXcWmHmYFh52dHa1MYYyCvoTrYQHo4flSScHNzVv8jnGAg6uHwwLgpY57eHhTgJeZmcEeJt59952nnhreuLFCAOnt7b106ZLgYN1LrShGouD2m2+mMfF1vs89N0ZektZcpRoWLVrYoEF9+iMUExMdExPr7u7Rt68+fvPw8Ni/f++bb74t3wNM4c2AAf3ltR04cJBvIj1+/KhZCL1u3br33//QdgOs4e+/51FURiQ7O/uTTz775JOPwsLCBgx4jDTTp/9MUZMg2p3C1xEjRlLwz4+ibOHevbt4gnT9+g3vvfe+7TYTXnhhwosv6vi8efOlnbRMfK00tZzCYOJU/9Spr545c5blhZ07t7m5eQwZMlSesQwI8F+6dDEPyOnSrFix4osv8v41JmvdbNmy5fTpv/B3a2VkZLz99tv8R6qotZRQbdashdSvSZMmye28bNkSnoimsF/6HSZrdt6yZTP3JQmfffb5ihUrKWG7atWKUaPG8OelqQyVpGQvf7z5p59+7Nq1izin0d6+fXv48KfT09M3bdogPT1ueen//PN3HhXTVzdv3ho27HH5cgal09evX5uTk9upU5dC/IyWo6MTHZWUFI8xCrxkclgA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QZyHRRbmYcPGyDK5ffvGd999kfLBvHuca2SiRK1bt4K+UgbS1927d7744uNnnnnxiBFU7O0tLY1UPGSwmp4IeqxoefLkk8k+a21t+fjjN4zOfuecc/no0RMdDiedhZ6LJUs+2+t12e2OrveU7iB9pRRSaaSLamlpouR9+ikPn8pH48svP5o69RQq+eSeW7Xqqy+++JBW5uX1pw2qqsqef/6R9nY/67kqMN8XesQY7/17k8/no0emU/K6LfN0wJtv/tFXX30iL5CCP1TdUUj//fdfZeLJopO+++4LW7asMx/KqH/iPN0HUt6++91f1tdXvfQSr98ocHTTTT+ki5XVAlXRd9316w0bVn300Rus56r73HOvpKr7/vt/LQ84adIMKrSpqRnt7e07dmxauPB9Sr9xuqlTZ5100hxZ5KhyWLPma7m+28p/3LgTTz/9vbzdvgAAEABJREFUIkr2tm0b5GYjR55AhfbNN/9LlWFP7QUVNsqc7ds3UX1rsSh/+tO9nS45zkNBP1144bUFBfSTna5x+fIvvv768067x3ko9qmY0eNDx8/P7zdgwHCLxUK59OKL/5aVfyeoKjvrrEup1qXiTV+p3g6HI4888nuqb6lqIkcz1bft7b6Skh1vvvks/dpteYjToEi6faaMbOmpnuw2AWxfKofe3x0zPTUr8gZRwaAy1tbWtn37hnfeeUFWaz1VDqy7R97vb+u2hjES0NNDFydhe92X7eMD0umw3babcep5aaiUlm6fPv00h8NFv+7cufmdd16MRruZNQMAAI5pDnkX6L0ydOioAQOGLl78KQVPUlLSqFmVs9oMGTLqW9+6g9obkpRr135N7QfV5l178iQkJH372z8fOHDounUrP/tsHtkNZBnIoZ5myPQ57bTzqJX94IPXN21aSwbE9dffKX+67ro7yae7YME8smwoJRdffF389cnJqWTMMSEYbrjh+9TYV1aWkEVIzQ+1Veedd1XXa6TtBw8eTk3O4sXzSZXRVdx664/IyqeW9fPPP1RVCy1TM8yEg/maa75jsznJTCTLOCMj5/bbf0obMK7rbqSmdMWKRZQhZF5cdtlNFgv3X5ChfO21301Pz/jqq08XLfokLS2djkAr6SfKPVIXl112I9m7tFd1dTmtv/rqO2JZlzhr1tljxkwqKdlJRm1x8VZq9SlnjGSTqrRaLbt2bevp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","media_type":"image/png"}}]}]},"uuid":"dfee0d6c-a0a8-4677-9e18-c06c76d2cfdd","timestamp":"2025-12-20T05:59:17.364Z","toolUseResult":{"type":"image","file":{"base64":"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Z58dSXn1du06tG3b/quvvq5fv/6YMWPMylDG29W1XGhoKCs4yD5kE4xR0JdwPSwAPTxfktIeYB4ZM53OoIEeejXoYQHoS5Ge5tkFDcNyjsWmTzufczlJm5JN/4joPh6LZQUHhQexsbEfffThY48NpDj2f//7jtK/a9b8S1/5+fm3FUHNK18+hIj008FLly4rV87ttddeI82cOX9Q8JbniUJCQsTKdJE2pUmJVayof2sXVUIfK1euSJbhZ6RT226ANRw6dCgkJPjbb79p0qTJd99NK1++AtXJH+jdt28/nf29996lhO3gwYOmTJmSnZ1jtvu6f/++0tltt5lSqWFh4b179xw4cEBsbAwtK3D9smX/ODg4LFq0gAr37t17wYL5kye/zPLC3r26x6cHDOgnV9KliYuLf+KJxydNmkgd//33Wa6uLnk+mm6tm6tWrSb5779rWrVqRbWtXbuaLLN8+XKWPzRt2ph6JK102LBznTp1qGT16tWJ88tHkbbtyrds2Va1atWvvvqSjh05csSMGdNJkr527dotWujeBFa/fj1qtvwQDw/PTp06ffjhB56envxusnzZWLduXcWmHmYFh52dHa1MYYyCvoTrYQHo4flSScHNzVv8jnGAg6uHwwLgpY57eHhTgJeZmcEeJt59952nnhreuLFCAOnt7b106ZLgYN1LrShGouD2m2+mMfF1vs89N0ZektZcpRoWLVrYoEF9+iMUExMdExPr7u7Rt68+fvPw8Ni/f++bb74t3wNM4c2AAf3ltR04cJBvIj1+/KhZCL1u3br33//QdgOs4e+/51FURiQ7O/uTTz775JOPwsLCBgx4jDTTp/9MUZMg2p3C1xEjRlLwz4+ibOHevbt4gnT9+g3vvfe+7TYTXnhhwosv6vi8efOlnbRMfK00tZzCYOJU/9Spr545c5blhZ07t7m5eQwZMlSesQwI8F+6dDEPyOnSrFix4osv8v41JmvdbNmy5fTpv/B3a2VkZLz99tv8R6qotZRQbdashdSvSZMmye28bNkSnoimsF/6HSZrdt6yZTP3JQmfffb5ihUrKWG7atWKUaPG8OelqQyVpGQvf7z5p59+7Nq1izin0d6+fXv48KfT09M3bdogPT1ueen//PN3HhXTVzdv3ho27HH5cgal09evX5uTk9upU5dC/IyWo6MTHZWUFI8xCrxkclgAHJ5vzsuV8xZkz0kbJC8HPfRlWw8LQF/K9E5Orl5ePsnJCew/BaXpqlSpmv/NnEzMuXl7+1Dyc+HCBRRvSAHwfw5nZ+fatWudPXuOLGz2Fa01UNh28+aNhIRE9jBRv379sLDQ+Pj8XlZKflKcmZaWTosRK1eulr+LqxCXxkY3KYlNwbmUsi4KbNi5EKA2N27c+Ny5cxRR5/MQe3v7Ro0aXbx4kb8Ti4NCa1pHGDnymXLlyo0fP/Ho0aOs4HB390pMjE1LS8MYBX1J1cMC0KtTb7WkMQMMCQkJCVnyZcWK1WNjI1mpQocOHfgjr4QnnhgWGxvXr98ABhQBVatWmTlzBn8D2TvvvMvfyQwUCJTlnjPnDyJRUVFTpkyl2JgVCr6+gXfv3lD5uAQJCQlZiqS97LNlDA0OXrY5LABe+nhaWoqjo9PDfgq6eNGzZ4/evXtynpmZzX9FCSgKbt26TYsIlNVs0qQxfwMWUFCcPXt23LgJZ86cycgo/N3k6OicmpqCcQm8ZHNYAByeb8KRAYaEhIQsTdLJycXDwyslJZkBAPBfw83NIzExLj09XeXjEiQkJGQpkhpYARISErIUyYyMNI3Gzt6+pPyaLgCoFg4OjpRPQPQLCQkJWbqkBlaAhISELF0yPj7G1dWNAQDwn4Juw7i4GIxIkJCQkKVLakyfkwYHVxuHBcBLH8/ISKd//LdzAAD4T2Bv75ienpqVlYFxCbw0cFgAHJ5v5LqfQWJMX4IDHFw9HBYAL728QoWqCQmxWm2Bf7YUAIAiQqPReHr63L9/m2EsAi8NHBYAh+fLucbwWRcNg4OrjcMC4KWXh4be8fLyZQAAPHLQrRcWdodhLAIvJRwWAIfny7n+LdCWEMtBD30Z15f8FkIPvQ29g4Ojr69/cnIiAwDgUcHd3SsmJjI7O0uuxBgFfUnWl/wWQg/9w9BbK6mRR8OMKUfJ0ENfVvWwAPSlWp+dnRkTE+3t7S8Iusd5AAB4qNBoND4+/jz6xVgEfSnSwwLQq1NvraR+D7AcQjHF3NBDX7r0sAD0pVRP0/Ly5SsnJyeYpaQAAChG2Ns7uLt7hobe0ZreihiLoC9delgAenXq5RqNISY2SkMMDT306tLDAtCXUj1juffv37S3t/fw8MbvAwNAscPBwdHT08fOzi409LZWm4sxB/pSrYcFoIfnK2SAAQAAgNIIR0dnb29fGuKzsjIyMzMYAABFA91TDg4OgqCJj4/BPQUAAFA2YJ4BFpUKkTT00JdtPSwAfRnQZ2amRUWFJiXFUx7Y1zfQ3d3LyYmm7052dvbYJAwAeYJuE7pZHB2d6Mbx8PCim4g+JicnREbeF6NfjDnQl3o9LAA9PF8wZIBJKzA9wMHVw2EB8LLMnZ1dnJzon7OdiKysLNIwAACUkJGRRitHOSIyMtLpY3p6KsYT8DLBYQFweL4JpwDYSxAE8aloSEhISEhISEhISEhISMgyK+0cHV1Mo2RISEhISKqFQyUAABAASURBVEhISEhISEhIyDIoNRITBAEcXFUcFgCH54ODw/PBweH54OCq8nz5HmC5tHx+Gnroy54eFoBenXpYAHp16mEB6NWphwWgV6feakmN2XeGyJhBD70K9LAA9PB8WAZ69ehhAejh+bAM9OrRWy2JPcCQkJCQkJCQkJCQkJCQqpDKe4DlEnroy7YeFoAeng899PB86KGH50MPvUo8nzLAzmI6mH9m4OAq47AAODwfHByeDw4OzwcHV4vna0xLgIOrjcMC4PB8cHB4Pjg4PB8cXC2eL2WAAQAAAAAAAAAAAKAsQ6OlYNgQDYODq42rs9fg4OrsNTi4OnsNDq7OXoODW/tWKFfOiwEAAAAAAAAAAABAWYd+DzDWCcDVyWEBcHg+ODg8Hxwcng8Orh7PRwYYAAAAAAAAAAAAUAX4HmAOARxcZbzktxAcHJ4PDg7PBweH54ODF5vnIwMMAAAAAAAAAAAAqAL6DDAkJCQkJCQkJCQkJCQkZNmWyAADAAAAAAAAAAAAqgAywJCQkJCQkJCQkJCQkJCqkLoMMDGBvxTaFNBDX7b1sAD06tTDAtCrUw8LQK9OPSwAvTr1Nkpq+HdapfgYeujLth4WgF6delgAenXqYQHo1amHBaBXp95GSeMeYP7ZEtBDX7b1sAD06tTDAtCrUw8LQK9OPSwAvTr1iiUpA6yVvpO4KKGHXg16WAB6dephAejVqYcFoFenHhaAXp165ZLme4DBwdXDYQFweD44ODwfHByeDw6uKs/XZYAFY2QMDq4iDguAw/PBweH54ODwfHBwVXm+MQMMCQkJCQkJCQkJCQkJCVmGpcYsSoaEhISEhISEhISEhISELJOSZ4CJCUrxMfTQl209LAA9PB966OH50EMPz4ceehV5vsbwndZQTi6hh75s62EB6OH50EMPz4ceeng+9NCryPPle4B5OXBw9XBYAByeDw4OzwcHh+eDg6vI8+V7gAVwcJVxWAAcng8ODs8HB4fng4OryPMFV1cvxvhnJgIcXD0cFgCH54ODw/PBweH54OAq8nyNrAQDB1cZhwXA4fng4PB8cHB4Pji4ijzfztHRRasLhwXpO3Bw9XBYAByeDw4OzwcHh+eDg6vH8/VvgZY+g4OrisMC4PB8cHB4Pjg4PB8cXD2eb+fg4EzJYP6ZiQAHVw+HBcDh+eDg8HxwcHg+OLh6PF8jLwEOrjYOC4DD88HB4fng4PB8cHD1eL4+A2wAabVMAdBDX7b1sAD06tTDAtCrUw8LQK9OPSwAvTr15hp9BtggtTIOPfTq0cMC0MPzoYceng899PB86KEv+54vZYB13zEFQA992dbDAtCrUw8LQK9OPSwAvTr1sAD06tQrl5QywFgbgB5rQtBDD8+HHnp4PvTQw/Ohh74se77ZHmAAAAAAAAAAAAAAKJvQSIzHxODg6uElv4Xg4PB8cHB4Pjg4PB8cvBg9HxlgAAAAAAAAAAAAQBXgGWBrcTP00JdtPSwAPTwfloEeng899PB86KFXkecjAwwAAAAAAAAAAACoAsp7gLFmAL069CW/hdBDD8+HHnp4PvTQw/Ohh77YPB8ZYAAAAAAAAAAAAEAVsK9SpRYDAAAAAAAAAAAAgLIOwdXVkwEAAAAAAAAAAABAWYc9AwAAAAAAAAAAAAAVAAEwAAAAAAAAAAAAoAogAAYAAAAAAAAAAABUAQTAAAAAAAAAAAAAgCqAABgAAAAAAAAAAABQBRAAAwAAAAAAAAAAAKoAAmAAAAAAAAAAAABAFUAADAAAAAAAAAAAAKgCCIABAAAAAAAAAAAAVQABMAAAAAAAAAAAAKAKIAAGAAAAAAAAAAAAVAEEwAAAAAAAAAAAAIAqgAAYAAAAAAAAAAAAUAUQAAMAAAAAAAAAAACqAAJgAAAAAAAAAAAAQBVAAAwAAAAAAAAAAACoAgiAAQAAAAAAAAAAAFUAATAAAAAAAAAAAACgCiAABgAAAAAAAAAAAFQBBMAAAAAAAAAAAACAKoAAGAAAAAAAAAAAAFAFEAADAAAAAAAAAAAAqgACYAAAAAAAAAAAAEAVQAAMAAAAAAAAAAAAqAIIgAEAAAAAAAAAAABVAAEwAAAAAAAAAAAAoAogAAYAAAAAAAAAAABUAQTAAAAAAAAAAAAAgCqAABgAAAAAAAAAAABQBRAAAwAAAAAAAAAAAKoAAmAAAAAAAAAAAABAFUAADAAAAAAAAAAAAKgCCIABAAAAAAAAAAAAVQABMAAAAAAAAAAAAKAKIAAGAAAAAAAAAAAAVAEEwAAAAAAAAAAAAIAqgAAYAAAAAAAAAAAAUAUQAAMAAAAAAAAAAACqAAJgAAAAAAAAAAAAQBVAAAwAAAAAAAAAAACoAo8iAHZ0dAwICDRTZmdnRUREsIePoKCgd999t2bNmitWrJg7dy4rMhS7Ex0dlZGRYVn4xx9/rFChApGrV6++//77rLTB3t6+SZMmtWrVKl++fGho6Pnz5y9fvpyZmcmKAEubtG/ffurUqfzbzz777Ny5cwwAAAAAAAAAAKC4Ibi6erKHjOnTZ/Tv389Sr9Vq4+LiL1y48OKLL6amprCHg/Xr19erV4/zZ5999sCBA6xosNadBw+Sb9y4uXbt2nnz5knKs2fPuLm5M12EHN26dWtWehAYGPjFF5936tTZwcFBrqertnPnjg8++DAyMpIVCpY2GT9+PC1S8G8pEv73338ZAAAAAAAAAABAcUPDHj4cHZXzzIIg+Pr6dOrU8cCB/ZUrV2YPB5S6lHiPHj1YkWGtOxTUNW7c+KOPPpo2bRp7+OjYscNeEdu3b2fFDap8z5493bv3MIt+mXjVSE/rCM2bN2cAAAAAAAAAAAClB48iAJYjJeUBZUpJypWenp7Tp09nDwcLFizkJCMjY/r0X1ixgupMT08nSXlRSfnEE09QGMweMlq0aFVBRNWqVVmxon79+vPmzXd0dLRRRqPRLF68uEaNGgwAAAAAAAAAAKCU4FEHwO3atW/UqHHDho0aNGj4ww/fS/patWqxhwM6S4sWLUaPHlW3bt24uHhWrGjVqlW9evWo5urVq//666+Svl+/fuwho1KliuwhgBK88+f/TZJ/zM7OXr9+/cSJE+kCjRkzesWKlVKoT8nhzz77jAEAAAAAAAAAAJQS/GdvgU5NTZkxY+aoUaP9/PyY+GYpd3f35ORkqQBlF/v379+yZQt//8Br164eOXJk69atlvtOK1SoOHTo4GbNWlSoUD42Nvby5cs//PBDYmKiVKBp06YDBgwg0qVL16+//poiOvnhDRs2nDBhYuXKlZycnO/fv3/s2NHZs2fL07n5x//+9z8Ks8uVcyPu7+9vb29vdi5C7969qVO1a9e5cuXyhg0btm3blpuba1kV5ZAHDnwsKCiQ0st37tydNeu3CxcuyCuhwLtNG/2OYgpWP/zwQ85nzpwhD/Ip8h8/flzFipU0Grvw8PAVK5bTSZlNDB061MfHm3Oyw/PPj923bz//uHfvPvoXERHx8ssvcQ01w9W1nHz/NvV64MCBbdu2a9Cgfmpq6qlTp/bRQXv3sSKArDFgwMCgoKD4+LgdO3asXbs2KipKXqBPnz4tW7YkcvHixZUrV3p6ek6dOrVBgwYUupNf0YFMjOS/+eYbsys7deqr7u666/XgQcqPP/7AAAAAAAAAAAAo03gUL8GaPXtWz569OG/cuLE8yqWIxdnZmeni4VSKWCT9J598MmrUKLN6KFacPHnKpk0bJc3IkSOppEajMSv27rvvLl++3PLsFAzLY+O5c//q0qWz2VmoJW+//baNQNFGdzZt2lS7dm3OO3fucu/eXemFTzExMaGhoVReXtW1a9d79+4l11DwRlExXxSQY8OGjZMnv8z59u3bq1WrxpQwaNAg6RXKixYtpEDUrAAF+T179lR8YTXHv//+K10IWi/4448/LMsMGTLEzU0XN5KplyxZIsXw1atXW7ZsuRQ/S6DofdiwYdK7o/P/Eixvb69t23ZYVnjo0MERI0ZKH5cuXUqhOK/wxx9/pLw0xeH0kXygSZOmNWvqn9P+4osv5K8B79ixA+W6Ob99+3a3bt0YAAAAAAAAAABlGo/6Eejg4OCQkJDy5Ss8/fT/2TsLADmKdI9X9/jMumuycRciJCEJhBAI7nq4cwJ3cMbZu7v3jnMB7rADDg53DxpIgJCEeIj77mbdZXZmR/t9VdXT21mZbFz2/2PY9PS0VFdXV33/76uqvopCeVL9EitXrjK2+ec//9VV/TIx7pQinOeff778Onz4cJI6ndSv3IxifXudVeuJJx7vqn4Jt9v94IMPTp06je0jDodjyJAhcpnEHqlf86+kaTupX4K02SOPPGJ8JVXZrfolzjnnbIpss15D0q6r+mU8YF7w8ccfxRnfa5bWTz31VLfbvPnmm88Knn/+eUP9pqWlffTRx13FKhODivdjpi6KLfd0QLq0Z599put6Crzfd999Uv1K/vCH3xvLd9xxh3nju+++x1i+//77GQAAAAAAAOB453B3gf7www+7rqSg5Y033iCXSb4aQVFN0xYsWLBly5a5c+cawuyGG26QEcJrr73WOALF+mjLiy++aM6c05noFXz77bf//Oc/7ykZ99zzw9mzTzPOQqdoamqkaKEU5LT7/ff/Y+rUqWxvnHXWWW1tbTabbcCAgVdeeYWhxnfu3Nnt9jt27CgpKZk+fTqpZbnm1FNPNX59/fU3DPUbCoW++eablJSUQYMGyTUXXnjhli1bKf68ePFiCuHSekPHbtq0SS7I/s//8z//Q+FN89XR9qRCpTIsLOxH2vWKK67oNoUul0suUGTb3IWbHAp/+9vfjLHBBpTzFIBlInJrXH51ddUHH3xIYV66I3KlmK6rsKxsN+s1r7zyspEbNTU1FF0vKhpw0knT5MTU06fPuPXW2x5//N+d9uqUwoULF1JYmIQxEz6IWbNm0RomfA2GP8LrbcWLlwAAAAAAAOgLHLExwAYUQvzss0+NQOKUKVNJs5H8o+XHH3/8r3/9KxPDa9euXSP7zRrTZRnKkFi9evWHguuvv16O6ly69Os4Jz377LOM5Z/85Cevv/46Ex1uaS+pr7KysgYNGrhjx864aWcUau66khL/05/+tOv61157jc7FhEhbtmx5enoaE4OfKchJwpX0odFZl45wxhlnkFSm5dtvv+OnP/2JXH/zzTeRAJZTTNPRJkyYINefc8455hNdfvllpqv7MelqJkY7U+RWytFJkyYlJyebe4NLKDGGgKyq2mO49dixY43TmSkvL5cCePz48fKueb1tp556Wnu7n/E+3tt+9rN75ZYXX3zhgw/uw1zfFOGXCxUVFSRcpRofOXLke++9J9efddaZXQUw8e677z799NPkgyDfBH19+OGHf/3rX8uf7r33Z1IA33nnncaVvvjiSwwAAAAAAADQBzjcAnjXrl3hcISJcBwJTiZCvt///g+Sk1PklML8SBKAAAAQAElEQVRLliyWw2hpgylTptx7770yWBoO6wrZ7XbLhS+++FyO/CR+//vf/+Y3v9m6deunn35KMUmSTPGTUVioT6FcVlYm1S/R2NhEwrhfv/6xpBazfYdirRdddNHmzZs7rSdVT9diLC9duvScc/SZoqdNO2nevHlnnHG6sTFpPKl+mRhyTNHslBQ+VLvb3tGdSExMdLs9cpnUqVS/TITZFy9eMmPGdCYU+IwZM7qOcw4Gg5Q2qQx7cy4zsms63U1S2hScz8vL7XSQceNO6PXBuFw34snJyUlPPtkxdtdI4dChQ7ruSHe/k/fhv//9749//GNZbGgX6de47LLL5a/kefnHP9D/GQAAAAAAgD7B4RbAF154oTFrVGFhv/fee5cEGxMdm//1r381NDQwMWT02Wefk5KvW0j/kAp65JFH58w5nQKPciVFL0cLvv/973/55aJvf/vb5tmJzVAMWYZ5ie3bd5h/Imm016ivGVLaMnbd2Ni4YsWKTz6Z//XXS7udRLq5ucU84TOpd0MAp6byYa5FRUXGr3Qo874lJcUpKXp/3by8vPjy3vxCqU5Xt3LlCimAmZiwqtvdSQNLjwPlv8xnuX7BggWXXaYHls8777yug7StVuvDDz8ku6B3S9fR2nE488wzjWWPJ8Ho0W2GdD4ds9M02t2OW37llVeogMnlX/3q1xQ3NkoXFRUZrAYAAAAAAAAc9xzJLtC7d5c+99xzpFTl14svvviJJ54YPHjwO++8Yx7JKTvWGpLVgLQZ7XLyyTPvvPOuESNGGJFhJib4feKJf3/rW1d3e96mpiZj2W4/oBw466yzzLNAxyEUCu75NdRpg927O8bHyt7RBtJHINnr6YzQMROxU/NP5nis19u9d4DU9YABA5jwMpx99tlGlNjr9a5cuVIud9vBm0Sm4YxgIrIaiURIFXcdNtwbzM4LyquWlm6uWtOiXV8itWXLlq5b/vnPfyHFLhU4uQDME2vdd9/vGAAAAAAAAKBvcLhnge5EZmaWsSx114033mhIpvfff5/08LBhw4YPH95VMfbv35922b27jCQ0BX5nzjyZon+GIjrhhAk9nbSmpsbQV51mZr777nteE7z66qsUoGaHkbfffttYnjWrY2YsiscaHbbp6gwBbNZ+xpRaTLxvqa3NK5eHDBls1p/TpnVMbb1x46Zuk/HSSy8by//4xz/M8WTJKaecPGnSpE4r6Sxjx46VyxRDphCxvHHPPPMM2y/efvtdY/nJJ5+cPHlS14/RAd5Mt+F3ivHOn/+JXCYZbLznadeuXdu3b2cAAAAAAACAvsERE8BpaWl33XXnBRecb6x5910+udEJJ3SMFCVNKGXe/fff3zUCPG/ee58KvvzyS4qRlpeX/d///V9ZWZn81TyfU1e2bNkqFzyehP/+9xm55Vlnnf297313goCSUVtbyw4jZllOCfj+979PqUpNTXnnnXeNazfe8cvE/FLG8n333ZeXlyffzUts3qxHQenqXnzxRbfbQ5HY3//+98ZM2u3t7UuXLuk2Gc8881+fzyeXaa+33nrr3nvvlTI4Kyvrt7/97X/+000fY4rAGz2cGxoaNmzYwPjMz4VXXXUV2y/KynZTIuXyLbfcYqjrn/3sZztjPPbYo70/4G9+89uuK/H2IwAAAAAAAPoUh7sL9Jo1a2SMrtOIUArwSkm2fv0GY/rfhx56aPPmzVmCrof65JP5F1xwARPxz2XLlq1fvz49Pb1fPz1sW1JS0m0wUPLAA/c/9dTTUvfOnDmDxCQlwBxHXbx4yeEfGvrcc8/fdtttcpkE8F133WXW8OFwWM7/LFm4cKEhLy8WMDF0duvWrQ8++MDTT/9X7kth0vXr1xkTR0nivFI4EAjceeedFHSVX51O520CFpdNmzaRq0Le05ycnEWLFrW0tJBs3qdxv51499135ahjqcObm5vpBhkvjqYr+vWvf9P7o1VVVVHZM3fS9npb6RQMAAAAAAAA0Gc43BFgkmGqwLwyGAx+61vfksvPPvuMIVxJ+YwePVqq365q9o9//GNTk/4iH5JGEydONOaRElNkPcJ65osvvvzud79rHJPSY1a/JJZuuulGdtihK6KArfHVLFlJXl599dXmCPDnn39eV1fX7XG+/HLR9753pznHzIe6//5/PPHEE6xnFixY8NOf/rTr8FqDbds6dxumcxkjhJmYqYu8GAeifpkYafzRRx8ZX5OTk83q9+9//xvdJrYv/OY3vzG/2fiFF15kAAAAAAAAgL7EkRwDTGqkoqJiwYKFs2fPNuQTabyrr76m0wTOFGC89NJLO+1eXV09deqUJUsWm1UNE28zIjn96quvdj1jKNSx5YcffkgauKGh0bwBqb7XXnt99uzTOh3zwIlGI+avgUCw281+8YtfPP744+QRMK+sra295pprly9fbl5J28ycOXPp0qUUyTQdNiAXPvjgfQogGw4Cic/n+9Of/tybl/FS7p199tl08E5+B8oWyp9zzjm765DsK6+8ctGir8zbUwp/+ctfyu7Q3WLkifl6zcvf/va3n3vuufr6BvNe9PWKK6546KGHTakKsV7wzTffGAenG33//Q8wAAAAAAAAQF9CcbuT2VFJWlrqtGkn2e32ZcuWl5eXxd84P79g7NixPp93yZKlndTjXhkwYMCYMWMikUhxcfHGjRvjdJw+bFDAdsKECRTQpmtZs2bt7t2lbH+Rk1HZbLYdO3aYA8i9hILwI0aM6NevHx1h27Ztsqszi5vy8ePH0xkrKsopEH2wMtPpdJ1yysnkv1i06Mt9vb8G11xzjXzXNOMdyD8/IkF+AAAAAAAAwBHk6BXAABxcli5dkpWVLZdPP33OPr3wGQAAAAAAAHAccCTfAwzAYWPq1GmG+t25cyfULwAAAAAAAH0QCGDQJ/j5z39mLP/jH/9gAAAAAAAAgL4HBDA4/snPLxg9erRcbm1tnTdvHgMAAAAAAAD0PSCAwfGP3+8zpr/aj5nAAAAAAAAAAMcHmAQLAAAAAAAAAECfABFgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AghgAAAAAAAAAAB9AovN5mSHGKU75E9Tpsyi5ZaWJnYISEhImjhxOh08EGhnB49x4070eBIaG+tZX+WQ3rVDR2JiyuTJM6qryyORSNdfD1FpORTY7Y6hQ8cMGjSsvLzEarXl5ha2tjbT+hEjxmdn59bWVh30azGOzI4+jMrkiCPvy5AhI6uqyqiwTZgwrbm5MRg8yMXpKKl/4lQCBQVFQ4aMqqzcHf8IR3Oh6g3HaDV4gBw99eQxVGPvH8f6AwIAAEczhzwCfPXV3yFLvev6Xbu2PvvsQ3PnXrRly7qXX36CHQJycvJPP/2C9nbf6tVL2UHC4XBdcMHVoVDoD3/4EeurHNK7duiYO/fCkSNPoIWvvprf9ddDUVoOBapqueuu37jd7mg0+vXXn19xxa30fL366lObNq057bTznE73hg2rD/q1GEdmRxlZWXl33PHThQvf/+KLj9gRxbgvtPzNN8v69RtIt6ChoXbLloMpkI6e+idOJXD55bckJCQWF2+rr6+Jc4SjtlD1kmO0GjxAjp568lipsfebY/0BAQCAoxmVHWI+//z9t99+nj4rVy6mr/RXfv3ss/fYMUgg4F+yZMFnn73LwOGlqGjIj370h7S0DLa/fPXVp2RMfPPNCvl11qxzvve9X7HDBQWLKP0TJpzEDozCwgGkstavX/XHP/6Evm7cuKq2tnqv0bY+wmG+p2aM+/KHP/ykrc3LDg29r38OVnnbDz799J1Vq5bEV7/gMLPf5eEIPlNHIfFz40AeukP0wB54uwkAAMclhzwCXFZWTB9aoKjFxIkn7dy5hUJV7Fjmk0/eYuCwk5GRTQLDarWx/YVU4uuvP218zc0tTEpKYYcLjyeR0k+RMXZgJCYmMa5714TDIVqg6MfxGgDZDw7zPTVj3JdQKMAOJb2sfw5WedsP1q5dRh8Gjib2uzwcwWfqKCR+bhzIQ3eIHtgDbzcBAOC45MhPgqUo6kUXXTds2Giqo5uaGl555cmamgr50+DBI2bPPi8zM0fTNFIv8+a9YvxkhlqOCy64prCwv83mqK6uWLNm6fLlX3bdbPr0OVOnzvZ4PIFAe2npzldf/Y+UELm5BRdffENqanokEikt3fHeey83NzfEWX/HHfc2NtbJnm/ktT377MuHDh1N5m9TU/3mzesosi0Pa+bqq7+taczv9w4fPs5mszU01NFlUsjolFPOogbP
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment