ai-heatmap 1.14.2 → 1.14.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/init.mjs CHANGED
@@ -99,22 +99,9 @@ copyFileSync(
99
99
 
100
100
  // Create public/ with config
101
101
  mkdirSync(resolve(targetDir, "public"), { recursive: true });
102
- const defaultConfig = {
103
- colorScheme: "light",
104
- theme: "",
105
- blockSize: 16,
106
- blockMargin: 4,
107
- blockRadius: 3,
108
- bg: "",
109
- textColor: "",
110
- start: "",
111
- end: "",
112
- stats: true,
113
- weekday: true,
114
- };
115
- writeFileSync(
102
+ copyFileSync(
103
+ resolve(templateRoot, "public/heatmap.config.json"),
116
104
  resolve(targetDir, "public/heatmap.config.json"),
117
- JSON.stringify(defaultConfig, null, 2),
118
105
  );
119
106
 
120
107
  // README.md
@@ -147,7 +134,7 @@ readmeLines.push(
147
134
  "",
148
135
  "## Dynamic SVG (by Vercel)",
149
136
  "",
150
- `![AI Heatmap](https://${repoName}.vercel.app/api/heatmap?theme=blue)`,
137
+ `![AI Heatmap](https://${repoName}.vercel.app/api/heatmap?theme=blue&colorScheme=dark)`,
151
138
  "",
152
139
  "```bash",
153
140
  "npx --yes ai-heatmap@latest deploy",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ai-heatmap",
3
- "version": "1.14.2",
3
+ "version": "1.14.4",
4
4
  "description": "AI usage cost heatmap powered by ccusage + react-activity-calendar",
5
5
  "type": "module",
6
6
  "bin": {
@@ -8,11 +8,6 @@
8
8
  "textColor": "",
9
9
  "start": "",
10
10
  "end": "",
11
- "stats": {
12
- "dailyAvg": true,
13
- "weeklyAvg": true,
14
- "peak": true,
15
- "activeDays": true
16
- },
11
+ "stats": true,
17
12
  "weekday": true
18
13
  }
@@ -1,6 +1,6 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="1132" height="466" viewBox="0 0 1132 466">
2
- <rect width="100%" height="100%" fill="transparent" rx="6"/>
3
- <style>text{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;fill:#24292f}.month{font-size:10px}.day{font-size:10px}.legend-label{font-size:10px;fill:#666}.total{font-size:11px;font-weight:600}.stat{font-size:11px;fill:#666}.stat-val{font-size:11px;font-weight:600;fill:#24292f}.bar-label{font-size:11px;fill:#666}.bar-val{font-size:10px;fill:#666}.section-title{font-size:12px;font-weight:600}</style>
2
+ <rect width="100%" height="100%" fill="#0d1117" rx="6"/>
3
+ <style>text{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;fill:#c9d1d9}.month{font-size:10px}.day{font-size:10px}.legend-label{font-size:10px;fill:#8b949e}.total{font-size:11px;font-weight:600}.stat{font-size:11px;fill:#8b949e}.stat-val{font-size:11px;font-weight:600;fill:#c9d1d9}.bar-label{font-size:11px;fill:#8b949e}.bar-val{font-size:10px;fill:#8b949e}.section-title{font-size:12px;font-weight:600}</style>
4
4
  <text x="52" y="30" class="month">Feb</text>
5
5
  <text x="92" y="30" class="month">Mar</text>
6
6
  <text x="192" y="30" class="month">Apr</text>
@@ -17,381 +17,381 @@
17
17
  <text x="16" y="74" class="day">Mon</text>
18
18
  <text x="16" y="114" class="day">Wed</text>
19
19
  <text x="16" y="154" class="day">Fri</text>
20
- <rect x="52" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-19 (Wed)&#10;No data</title></rect>
21
- <rect x="52" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-20 (Thu)&#10;No data</title></rect>
22
- <rect x="52" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-21 (Fri)&#10;No data</title></rect>
23
- <rect x="52" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-22 (Sat)&#10;No data</title></rect>
24
- <rect x="72" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-23 (Sun)&#10;No data</title></rect>
25
- <rect x="72" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-24 (Mon)&#10;No data</title></rect>
26
- <rect x="72" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-25 (Tue)&#10;No data</title></rect>
27
- <rect x="72" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-26 (Wed)&#10;No data</title></rect>
28
- <rect x="72" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-27 (Thu)&#10;No data</title></rect>
29
- <rect x="72" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-02-28 (Fri)&#10;No data</title></rect>
30
- <rect x="72" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-01 (Sat)&#10;No data</title></rect>
31
- <rect x="92" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-02 (Sun)&#10;No data</title></rect>
32
- <rect x="92" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-03 (Mon)&#10;No data</title></rect>
33
- <rect x="92" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-04 (Tue)&#10;No data</title></rect>
34
- <rect x="92" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-05 (Wed)&#10;No data</title></rect>
35
- <rect x="92" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-06 (Thu)&#10;No data</title></rect>
36
- <rect x="92" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-07 (Fri)&#10;No data</title></rect>
37
- <rect x="92" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-08 (Sat)&#10;No data</title></rect>
38
- <rect x="112" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-09 (Sun)&#10;No data</title></rect>
39
- <rect x="112" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-10 (Mon)&#10;No data</title></rect>
40
- <rect x="112" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-11 (Tue)&#10;No data</title></rect>
41
- <rect x="112" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-12 (Wed)&#10;No data</title></rect>
42
- <rect x="112" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-13 (Thu)&#10;No data</title></rect>
43
- <rect x="112" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-14 (Fri)&#10;No data</title></rect>
44
- <rect x="112" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-15 (Sat)&#10;No data</title></rect>
45
- <rect x="132" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-16 (Sun)&#10;No data</title></rect>
46
- <rect x="132" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-17 (Mon)&#10;No data</title></rect>
47
- <rect x="132" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-18 (Tue)&#10;No data</title></rect>
48
- <rect x="132" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-19 (Wed)&#10;No data</title></rect>
49
- <rect x="132" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-20 (Thu)&#10;No data</title></rect>
50
- <rect x="132" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-21 (Fri)&#10;No data</title></rect>
51
- <rect x="132" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-22 (Sat)&#10;No data</title></rect>
52
- <rect x="152" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-23 (Sun)&#10;No data</title></rect>
53
- <rect x="152" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-24 (Mon)&#10;No data</title></rect>
54
- <rect x="152" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-25 (Tue)&#10;No data</title></rect>
55
- <rect x="152" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-26 (Wed)&#10;No data</title></rect>
56
- <rect x="152" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-27 (Thu)&#10;No data</title></rect>
57
- <rect x="152" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-28 (Fri)&#10;No data</title></rect>
58
- <rect x="152" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-29 (Sat)&#10;No data</title></rect>
59
- <rect x="172" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-30 (Sun)&#10;No data</title></rect>
60
- <rect x="172" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-03-31 (Mon)&#10;No data</title></rect>
61
- <rect x="172" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-01 (Tue)&#10;No data</title></rect>
62
- <rect x="172" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-02 (Wed)&#10;No data</title></rect>
63
- <rect x="172" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-03 (Thu)&#10;No data</title></rect>
64
- <rect x="172" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-04 (Fri)&#10;No data</title></rect>
65
- <rect x="172" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-05 (Sat)&#10;No data</title></rect>
66
- <rect x="192" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-06 (Sun)&#10;No data</title></rect>
67
- <rect x="192" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-07 (Mon)&#10;No data</title></rect>
68
- <rect x="192" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-08 (Tue)&#10;No data</title></rect>
69
- <rect x="192" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-09 (Wed)&#10;No data</title></rect>
70
- <rect x="192" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-10 (Thu)&#10;No data</title></rect>
71
- <rect x="192" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-11 (Fri)&#10;No data</title></rect>
72
- <rect x="192" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-12 (Sat)&#10;No data</title></rect>
73
- <rect x="212" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-13 (Sun)&#10;No data</title></rect>
74
- <rect x="212" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-14 (Mon)&#10;No data</title></rect>
75
- <rect x="212" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-15 (Tue)&#10;No data</title></rect>
76
- <rect x="212" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-16 (Wed)&#10;No data</title></rect>
77
- <rect x="212" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-17 (Thu)&#10;No data</title></rect>
78
- <rect x="212" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-18 (Fri)&#10;No data</title></rect>
79
- <rect x="212" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-19 (Sat)&#10;No data</title></rect>
80
- <rect x="232" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-20 (Sun)&#10;No data</title></rect>
81
- <rect x="232" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-21 (Mon)&#10;No data</title></rect>
82
- <rect x="232" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-22 (Tue)&#10;No data</title></rect>
83
- <rect x="232" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-23 (Wed)&#10;No data</title></rect>
84
- <rect x="232" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-24 (Thu)&#10;No data</title></rect>
85
- <rect x="232" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-25 (Fri)&#10;No data</title></rect>
86
- <rect x="232" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-26 (Sat)&#10;No data</title></rect>
87
- <rect x="252" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-27 (Sun)&#10;No data</title></rect>
88
- <rect x="252" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-28 (Mon)&#10;No data</title></rect>
89
- <rect x="252" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-29 (Tue)&#10;No data</title></rect>
90
- <rect x="252" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-04-30 (Wed)&#10;No data</title></rect>
91
- <rect x="252" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-01 (Thu)&#10;No data</title></rect>
92
- <rect x="252" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-02 (Fri)&#10;No data</title></rect>
93
- <rect x="252" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-03 (Sat)&#10;No data</title></rect>
94
- <rect x="272" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-04 (Sun)&#10;No data</title></rect>
95
- <rect x="272" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-05 (Mon)&#10;No data</title></rect>
96
- <rect x="272" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-06 (Tue)&#10;No data</title></rect>
97
- <rect x="272" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-07 (Wed)&#10;No data</title></rect>
98
- <rect x="272" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-08 (Thu)&#10;No data</title></rect>
99
- <rect x="272" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-09 (Fri)&#10;No data</title></rect>
100
- <rect x="272" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-10 (Sat)&#10;No data</title></rect>
101
- <rect x="292" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-11 (Sun)&#10;No data</title></rect>
102
- <rect x="292" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-12 (Mon)&#10;No data</title></rect>
103
- <rect x="292" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-13 (Tue)&#10;No data</title></rect>
104
- <rect x="292" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-14 (Wed)&#10;No data</title></rect>
105
- <rect x="292" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-15 (Thu)&#10;No data</title></rect>
106
- <rect x="292" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-16 (Fri)&#10;No data</title></rect>
107
- <rect x="292" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-17 (Sat)&#10;No data</title></rect>
108
- <rect x="312" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-18 (Sun)&#10;No data</title></rect>
109
- <rect x="312" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-19 (Mon)&#10;No data</title></rect>
110
- <rect x="312" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-20 (Tue)&#10;No data</title></rect>
111
- <rect x="312" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-21 (Wed)&#10;No data</title></rect>
112
- <rect x="312" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-22 (Thu)&#10;No data</title></rect>
113
- <rect x="312" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-23 (Fri)&#10;No data</title></rect>
114
- <rect x="312" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-24 (Sat)&#10;No data</title></rect>
115
- <rect x="332" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-25 (Sun)&#10;No data</title></rect>
116
- <rect x="332" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-26 (Mon)&#10;No data</title></rect>
117
- <rect x="332" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-27 (Tue)&#10;No data</title></rect>
118
- <rect x="332" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-28 (Wed)&#10;No data</title></rect>
119
- <rect x="332" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-29 (Thu)&#10;No data</title></rect>
120
- <rect x="332" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-30 (Fri)&#10;No data</title></rect>
121
- <rect x="332" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-05-31 (Sat)&#10;No data</title></rect>
122
- <rect x="352" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-01 (Sun)&#10;No data</title></rect>
123
- <rect x="352" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-02 (Mon)&#10;No data</title></rect>
124
- <rect x="352" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-03 (Tue)&#10;No data</title></rect>
125
- <rect x="352" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-04 (Wed)&#10;No data</title></rect>
126
- <rect x="352" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-05 (Thu)&#10;No data</title></rect>
127
- <rect x="352" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-06 (Fri)&#10;No data</title></rect>
128
- <rect x="352" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-07 (Sat)&#10;No data</title></rect>
129
- <rect x="372" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-08 (Sun)&#10;No data</title></rect>
130
- <rect x="372" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-09 (Mon)&#10;No data</title></rect>
131
- <rect x="372" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-10 (Tue)&#10;No data</title></rect>
132
- <rect x="372" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-11 (Wed)&#10;No data</title></rect>
133
- <rect x="372" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-12 (Thu)&#10;No data</title></rect>
134
- <rect x="372" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-13 (Fri)&#10;No data</title></rect>
135
- <rect x="372" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-14 (Sat)&#10;No data</title></rect>
136
- <rect x="392" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-15 (Sun)&#10;No data</title></rect>
137
- <rect x="392" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-16 (Mon)&#10;No data</title></rect>
138
- <rect x="392" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-17 (Tue)&#10;No data</title></rect>
139
- <rect x="392" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-18 (Wed)&#10;No data</title></rect>
140
- <rect x="392" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-19 (Thu)&#10;No data</title></rect>
141
- <rect x="392" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-20 (Fri)&#10;No data</title></rect>
142
- <rect x="392" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-21 (Sat)&#10;No data</title></rect>
143
- <rect x="412" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-22 (Sun)&#10;No data</title></rect>
144
- <rect x="412" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-23 (Mon)&#10;No data</title></rect>
145
- <rect x="412" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-24 (Tue)&#10;No data</title></rect>
146
- <rect x="412" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-25 (Wed)&#10;No data</title></rect>
147
- <rect x="412" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-26 (Thu)&#10;No data</title></rect>
148
- <rect x="412" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-27 (Fri)&#10;No data</title></rect>
149
- <rect x="412" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-28 (Sat)&#10;No data</title></rect>
150
- <rect x="432" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-29 (Sun)&#10;No data</title></rect>
151
- <rect x="432" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-06-30 (Mon)&#10;No data</title></rect>
152
- <rect x="432" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-01 (Tue)&#10;No data</title></rect>
153
- <rect x="432" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-02 (Wed)&#10;No data</title></rect>
154
- <rect x="432" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-03 (Thu)&#10;No data</title></rect>
155
- <rect x="432" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-04 (Fri)&#10;No data</title></rect>
156
- <rect x="432" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-05 (Sat)&#10;No data</title></rect>
157
- <rect x="452" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-06 (Sun)&#10;No data</title></rect>
158
- <rect x="452" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-07 (Mon)&#10;No data</title></rect>
159
- <rect x="452" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-08 (Tue)&#10;No data</title></rect>
160
- <rect x="452" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-09 (Wed)&#10;No data</title></rect>
161
- <rect x="452" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-10 (Thu)&#10;No data</title></rect>
162
- <rect x="452" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-11 (Fri)&#10;No data</title></rect>
163
- <rect x="452" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-12 (Sat)&#10;No data</title></rect>
164
- <rect x="472" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-13 (Sun)&#10;No data</title></rect>
165
- <rect x="472" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-14 (Mon)&#10;No data</title></rect>
166
- <rect x="472" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-15 (Tue)&#10;No data</title></rect>
167
- <rect x="472" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-16 (Wed)&#10;No data</title></rect>
168
- <rect x="472" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-17 (Thu)&#10;No data</title></rect>
169
- <rect x="472" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-18 (Fri)&#10;No data</title></rect>
170
- <rect x="472" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-19 (Sat)&#10;No data</title></rect>
171
- <rect x="492" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-20 (Sun)&#10;No data</title></rect>
172
- <rect x="492" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-21 (Mon)&#10;No data</title></rect>
173
- <rect x="492" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-22 (Tue)&#10;No data</title></rect>
174
- <rect x="492" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-23 (Wed)&#10;No data</title></rect>
175
- <rect x="492" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-24 (Thu)&#10;No data</title></rect>
176
- <rect x="492" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-25 (Fri)&#10;No data</title></rect>
177
- <rect x="492" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-26 (Sat)&#10;No data</title></rect>
178
- <rect x="512" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-27 (Sun)&#10;No data</title></rect>
179
- <rect x="512" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-28 (Mon)&#10;No data</title></rect>
180
- <rect x="512" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-29 (Tue)&#10;No data</title></rect>
181
- <rect x="512" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-30 (Wed)&#10;No data</title></rect>
182
- <rect x="512" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-07-31 (Thu)&#10;No data</title></rect>
183
- <rect x="512" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-01 (Fri)&#10;No data</title></rect>
184
- <rect x="512" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-02 (Sat)&#10;No data</title></rect>
185
- <rect x="532" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-03 (Sun)&#10;No data</title></rect>
186
- <rect x="532" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-04 (Mon)&#10;No data</title></rect>
187
- <rect x="532" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-05 (Tue)&#10;No data</title></rect>
188
- <rect x="532" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-06 (Wed)&#10;No data</title></rect>
189
- <rect x="532" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-07 (Thu)&#10;No data</title></rect>
190
- <rect x="532" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-08 (Fri)&#10;No data</title></rect>
191
- <rect x="532" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-09 (Sat)&#10;No data</title></rect>
192
- <rect x="552" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-10 (Sun)&#10;No data</title></rect>
193
- <rect x="552" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-11 (Mon)&#10;No data</title></rect>
194
- <rect x="552" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-12 (Tue)&#10;No data</title></rect>
195
- <rect x="552" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-13 (Wed)&#10;No data</title></rect>
196
- <rect x="552" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-14 (Thu)&#10;No data</title></rect>
197
- <rect x="552" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-15 (Fri)&#10;No data</title></rect>
198
- <rect x="552" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-16 (Sat)&#10;No data</title></rect>
199
- <rect x="572" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-17 (Sun)&#10;No data</title></rect>
200
- <rect x="572" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-18 (Mon)&#10;No data</title></rect>
201
- <rect x="572" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-19 (Tue)&#10;No data</title></rect>
202
- <rect x="572" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-20 (Wed)&#10;No data</title></rect>
203
- <rect x="572" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-21 (Thu)&#10;No data</title></rect>
204
- <rect x="572" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-22 (Fri)&#10;No data</title></rect>
205
- <rect x="572" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-23 (Sat)&#10;No data</title></rect>
206
- <rect x="592" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-24 (Sun)&#10;No data</title></rect>
207
- <rect x="592" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-25 (Mon)&#10;No data</title></rect>
208
- <rect x="592" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-26 (Tue)&#10;No data</title></rect>
209
- <rect x="592" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-27 (Wed)&#10;No data</title></rect>
210
- <rect x="592" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-28 (Thu)&#10;No data</title></rect>
211
- <rect x="592" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-29 (Fri)&#10;No data</title></rect>
212
- <rect x="592" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-30 (Sat)&#10;No data</title></rect>
213
- <rect x="612" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-08-31 (Sun)&#10;No data</title></rect>
214
- <rect x="612" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-01 (Mon)&#10;No data</title></rect>
215
- <rect x="612" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-02 (Tue)&#10;No data</title></rect>
216
- <rect x="612" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-03 (Wed)&#10;No data</title></rect>
217
- <rect x="612" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-04 (Thu)&#10;No data</title></rect>
218
- <rect x="612" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-05 (Fri)&#10;No data</title></rect>
219
- <rect x="612" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-06 (Sat)&#10;No data</title></rect>
220
- <rect x="632" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-07 (Sun)&#10;No data</title></rect>
221
- <rect x="632" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-08 (Mon)&#10;No data</title></rect>
222
- <rect x="632" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-09 (Tue)&#10;No data</title></rect>
223
- <rect x="632" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-10 (Wed)&#10;No data</title></rect>
224
- <rect x="632" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-11 (Thu)&#10;No data</title></rect>
225
- <rect x="632" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-12 (Fri)&#10;No data</title></rect>
226
- <rect x="632" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-13 (Sat)&#10;No data</title></rect>
227
- <rect x="652" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-14 (Sun)&#10;No data</title></rect>
228
- <rect x="652" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-15 (Mon)&#10;No data</title></rect>
229
- <rect x="652" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-16 (Tue)&#10;No data</title></rect>
230
- <rect x="652" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-17 (Wed)&#10;No data</title></rect>
231
- <rect x="652" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-18 (Thu)&#10;No data</title></rect>
232
- <rect x="652" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-19 (Fri)&#10;No data</title></rect>
233
- <rect x="652" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-20 (Sat)&#10;No data</title></rect>
234
- <rect x="672" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-21 (Sun)&#10;No data</title></rect>
235
- <rect x="672" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-22 (Mon)&#10;No data</title></rect>
236
- <rect x="672" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-23 (Tue)&#10;No data</title></rect>
237
- <rect x="672" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-24 (Wed)&#10;No data</title></rect>
238
- <rect x="672" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-25 (Thu)&#10;No data</title></rect>
239
- <rect x="672" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-26 (Fri)&#10;No data</title></rect>
240
- <rect x="672" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-27 (Sat)&#10;No data</title></rect>
241
- <rect x="692" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-28 (Sun)&#10;No data</title></rect>
242
- <rect x="692" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-29 (Mon)&#10;No data</title></rect>
243
- <rect x="692" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-09-30 (Tue)&#10;No data</title></rect>
244
- <rect x="692" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-01 (Wed)&#10;No data</title></rect>
245
- <rect x="692" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-02 (Thu)&#10;No data</title></rect>
246
- <rect x="692" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-03 (Fri)&#10;No data</title></rect>
247
- <rect x="692" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-04 (Sat)&#10;No data</title></rect>
248
- <rect x="712" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-05 (Sun)&#10;No data</title></rect>
249
- <rect x="712" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-06 (Mon)&#10;No data</title></rect>
250
- <rect x="712" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-07 (Tue)&#10;No data</title></rect>
251
- <rect x="712" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-08 (Wed)&#10;No data</title></rect>
252
- <rect x="712" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-09 (Thu)&#10;No data</title></rect>
253
- <rect x="712" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-10 (Fri)&#10;No data</title></rect>
254
- <rect x="712" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-11 (Sat)&#10;No data</title></rect>
255
- <rect x="732" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-12 (Sun)&#10;No data</title></rect>
256
- <rect x="732" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-13 (Mon)&#10;No data</title></rect>
257
- <rect x="732" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-14 (Tue)&#10;No data</title></rect>
258
- <rect x="732" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-15 (Wed)&#10;No data</title></rect>
259
- <rect x="732" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-16 (Thu)&#10;No data</title></rect>
260
- <rect x="732" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-17 (Fri)&#10;No data</title></rect>
261
- <rect x="732" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-18 (Sat)&#10;No data</title></rect>
262
- <rect x="752" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-19 (Sun)&#10;No data</title></rect>
263
- <rect x="752" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-20 (Mon)&#10;No data</title></rect>
264
- <rect x="752" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-21 (Tue)&#10;No data</title></rect>
265
- <rect x="752" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-22 (Wed)&#10;No data</title></rect>
266
- <rect x="752" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-23 (Thu)&#10;No data</title></rect>
267
- <rect x="752" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-24 (Fri)&#10;No data</title></rect>
268
- <rect x="752" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-25 (Sat)&#10;No data</title></rect>
269
- <rect x="772" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-26 (Sun)&#10;No data</title></rect>
270
- <rect x="772" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-27 (Mon)&#10;No data</title></rect>
271
- <rect x="772" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-28 (Tue)&#10;No data</title></rect>
272
- <rect x="772" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-29 (Wed)&#10;No data</title></rect>
273
- <rect x="772" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-30 (Thu)&#10;No data</title></rect>
274
- <rect x="772" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-10-31 (Fri)&#10;No data</title></rect>
275
- <rect x="772" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-01 (Sat)&#10;No data</title></rect>
276
- <rect x="792" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-02 (Sun)&#10;No data</title></rect>
277
- <rect x="792" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-03 (Mon)&#10;No data</title></rect>
278
- <rect x="792" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-04 (Tue)&#10;No data</title></rect>
279
- <rect x="792" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-05 (Wed)&#10;No data</title></rect>
280
- <rect x="792" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-06 (Thu)&#10;No data</title></rect>
281
- <rect x="792" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-07 (Fri)&#10;No data</title></rect>
282
- <rect x="792" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-08 (Sat)&#10;No data</title></rect>
283
- <rect x="812" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-09 (Sun)&#10;No data</title></rect>
284
- <rect x="812" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-10 (Mon)&#10;No data</title></rect>
285
- <rect x="812" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-11 (Tue)&#10;No data</title></rect>
286
- <rect x="812" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-12 (Wed)&#10;No data</title></rect>
287
- <rect x="812" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-13 (Thu)&#10;No data</title></rect>
288
- <rect x="812" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-14 (Fri)&#10;No data</title></rect>
289
- <rect x="812" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-15 (Sat)&#10;No data</title></rect>
290
- <rect x="832" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-16 (Sun)&#10;No data</title></rect>
291
- <rect x="832" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-17 (Mon)&#10;No data</title></rect>
292
- <rect x="832" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-18 (Tue)&#10;No data</title></rect>
293
- <rect x="832" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-19 (Wed)&#10;No data</title></rect>
294
- <rect x="832" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-20 (Thu)&#10;No data</title></rect>
295
- <rect x="832" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-21 (Fri)&#10;No data</title></rect>
296
- <rect x="832" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-22 (Sat)&#10;No data</title></rect>
297
- <rect x="852" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-23 (Sun)&#10;No data</title></rect>
298
- <rect x="852" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-24 (Mon)&#10;No data</title></rect>
299
- <rect x="852" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-25 (Tue)&#10;No data</title></rect>
300
- <rect x="852" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-26 (Wed)&#10;No data</title></rect>
301
- <rect x="852" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-27 (Thu)&#10;No data</title></rect>
302
- <rect x="852" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-28 (Fri)&#10;No data</title></rect>
303
- <rect x="852" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-29 (Sat)&#10;No data</title></rect>
304
- <rect x="872" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-11-30 (Sun)&#10;No data</title></rect>
305
- <rect x="872" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-01 (Mon)&#10;No data</title></rect>
306
- <rect x="872" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-02 (Tue)&#10;No data</title></rect>
307
- <rect x="872" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-03 (Wed)&#10;No data</title></rect>
308
- <rect x="872" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-04 (Thu)&#10;No data</title></rect>
309
- <rect x="872" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-05 (Fri)&#10;No data</title></rect>
310
- <rect x="872" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-06 (Sat)&#10;No data</title></rect>
311
- <rect x="892" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-07 (Sun)&#10;No data</title></rect>
312
- <rect x="892" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-08 (Mon)&#10;No data</title></rect>
313
- <rect x="892" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-09 (Tue)&#10;No data</title></rect>
314
- <rect x="892" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-10 (Wed)&#10;No data</title></rect>
315
- <rect x="892" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-11 (Thu)&#10;No data</title></rect>
316
- <rect x="892" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-12 (Fri)&#10;No data</title></rect>
317
- <rect x="892" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-13 (Sat)&#10;No data</title></rect>
318
- <rect x="912" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-14 (Sun)&#10;No data</title></rect>
319
- <rect x="912" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-15 (Mon)&#10;No data</title></rect>
320
- <rect x="912" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-16 (Tue)&#10;No data</title></rect>
321
- <rect x="912" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-17 (Wed)&#10;No data</title></rect>
322
- <rect x="912" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-18 (Thu)&#10;No data</title></rect>
323
- <rect x="912" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-19 (Fri)&#10;No data</title></rect>
324
- <rect x="912" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-20 (Sat)&#10;No data</title></rect>
325
- <rect x="932" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-21 (Sun)&#10;No data</title></rect>
326
- <rect x="932" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-22 (Mon)&#10;No data</title></rect>
327
- <rect x="932" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-23 (Tue)&#10;No data</title></rect>
328
- <rect x="932" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-24 (Wed)&#10;No data</title></rect>
329
- <rect x="932" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-25 (Thu)&#10;No data</title></rect>
330
- <rect x="932" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-26 (Fri)&#10;No data</title></rect>
331
- <rect x="932" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-27 (Sat)&#10;No data</title></rect>
332
- <rect x="952" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-28 (Sun)&#10;No data</title></rect>
333
- <rect x="952" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-29 (Mon)&#10;No data</title></rect>
334
- <rect x="952" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-30 (Tue)&#10;No data</title></rect>
335
- <rect x="952" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2025-12-31 (Wed)&#10;No data</title></rect>
336
- <rect x="952" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-01 (Thu)&#10;No data</title></rect>
337
- <rect x="952" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-02 (Fri)&#10;No data</title></rect>
338
- <rect x="952" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-03 (Sat)&#10;No data</title></rect>
339
- <rect x="972" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-04 (Sun)&#10;No data</title></rect>
340
- <rect x="972" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-05 (Mon)&#10;No data</title></rect>
341
- <rect x="972" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-06 (Tue)&#10;No data</title></rect>
342
- <rect x="972" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-07 (Wed)&#10;No data</title></rect>
343
- <rect x="972" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-08 (Thu)&#10;No data</title></rect>
344
- <rect x="972" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-09 (Fri)&#10;No data</title></rect>
345
- <rect x="972" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-10 (Sat)&#10;No data</title></rect>
346
- <rect x="992" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-11 (Sun)&#10;No data</title></rect>
347
- <rect x="992" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-12 (Mon)&#10;No data</title></rect>
348
- <rect x="992" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-13 (Tue)&#10;No data</title></rect>
349
- <rect x="992" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-14 (Wed)&#10;No data</title></rect>
350
- <rect x="992" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-15 (Thu)&#10;No data</title></rect>
351
- <rect x="992" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-16 (Fri)&#10;No data</title></rect>
352
- <rect x="992" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-17 (Sat)&#10;No data</title></rect>
353
- <rect x="1012" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-18 (Sun)&#10;No data</title></rect>
354
- <rect x="1012" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-19 (Mon)&#10;No data</title></rect>
355
- <rect x="1012" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-20 (Tue)&#10;No data</title></rect>
356
- <rect x="1012" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-21 (Wed)&#10;No data</title></rect>
357
- <rect x="1012" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-22 (Thu)&#10;No data</title></rect>
358
- <rect x="1012" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-23 (Fri)&#10;No data</title></rect>
359
- <rect x="1012" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-24 (Sat)&#10;No data</title></rect>
360
- <rect x="1032" y="40" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-25 (Sun)&#10;No data</title></rect>
361
- <rect x="1032" y="60" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-26 (Mon)&#10;No data</title></rect>
362
- <rect x="1032" y="80" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-27 (Tue)&#10;No data</title></rect>
363
- <rect x="1032" y="100" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-28 (Wed)&#10;No data</title></rect>
364
- <rect x="1032" y="120" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-29 (Thu)&#10;No data</title></rect>
365
- <rect x="1032" y="140" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-30 (Fri)&#10;No data</title></rect>
366
- <rect x="1032" y="160" width="16" height="16" rx="3" fill="#ebedf0"><title>2026-01-31 (Sat)&#10;No data</title></rect>
367
- <rect x="1052" y="40" width="16" height="16" rx="3" fill="#c6e48b"><title>2026-02-01 (Sun)&#10;Cost: $27.90&#10;In: 4,991 / Out: 1,218&#10;Total: 39,141,520&#10;Cache hit: 96%&#10;claude-opus-4-5-20251101: $27.63&#10;claude-sonnet-4-5-20250929: $0.27</title></rect>
368
- <rect x="1052" y="60" width="16" height="16" rx="3" fill="#196127"><title>2026-02-02 (Mon)&#10;Cost: $136.12&#10;In: 16,907 / Out: 6,208&#10;Total: 153,981,637&#10;Cache hit: 90%&#10;claude-opus-4-5-20251101: $91.93&#10;claude-sonnet-4-5-20250929: $43.52&#10;claude-haiku-4-5-20251001: $0.67</title></rect>
369
- <rect x="1052" y="80" width="16" height="16" rx="3" fill="#7bc96f"><title>2026-02-03 (Tue)&#10;Cost: $59.67&#10;In: 8,196 / Out: 3,859&#10;Total: 67,570,780&#10;Cache hit: 92%&#10;claude-opus-4-5-20251101: $55.66&#10;claude-sonnet-4-5-20250929: $3.08&#10;claude-haiku-4-5-20251001: $0.94</title></rect>
370
- <rect x="1052" y="100" width="16" height="16" rx="3" fill="#196127"><title>2026-02-04 (Wed)&#10;Cost: $123.34&#10;In: 31,675 / Out: 8,687&#10;Total: 168,834,147&#10;Cache hit: 91%&#10;claude-opus-4-5-20251101: $66.30&#10;claude-sonnet-4-5-20250929: $54.96&#10;claude-haiku-4-5-20251001: $2.09</title></rect>
371
- <rect x="1052" y="120" width="16" height="16" rx="3" fill="#196127"><title>2026-02-05 (Thu)&#10;Cost: $120.81&#10;In: 13,181 / Out: 17,691&#10;Total: 127,651,583&#10;Cache hit: 89%&#10;claude-opus-4-5-20251101: $83.19&#10;claude-sonnet-4-5-20250929: $37.40&#10;claude-haiku-4-5-20251001: $0.22</title></rect>
372
- <rect x="1052" y="140" width="16" height="16" rx="3" fill="#196127"><title>2026-02-06 (Fri)&#10;Cost: $134.48&#10;In: 10,421 / Out: 41,354&#10;Total: 187,092,162&#10;Cache hit: 95%&#10;claude-opus-4-6: $84.35&#10;claude-opus-4-5-20251101: $30.01&#10;claude-sonnet-4-5-20250929: $19.19&#10;claude-haiku-4-5-20251001: $0.93</title></rect>
373
- <rect x="1052" y="160" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-07 (Sat)&#10;Cost: $101.17&#10;In: 10,331 / Out: 19,797&#10;Total: 114,348,109&#10;Cache hit: 89%&#10;claude-opus-4-6: $61.69&#10;claude-sonnet-4-5-20250929: $38.21&#10;claude-haiku-4-5-20251001: $1.27</title></rect>
374
- <rect x="1072" y="40" width="16" height="16" rx="3" fill="#196127"><title>2026-02-08 (Sun)&#10;Cost: $126.57&#10;In: 9,773 / Out: 28,122&#10;Total: 131,570,471&#10;Cache hit: 88%&#10;claude-opus-4-6: $84.63&#10;claude-sonnet-4-5-20250929: $41.43&#10;claude-haiku-4-5-20251001: $0.51</title></rect>
375
- <rect x="1072" y="60" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-09 (Mon)&#10;Cost: $96.71&#10;In: 7,851 / Out: 48,808&#10;Total: 126,643,382&#10;Cache hit: 94%&#10;claude-opus-4-6: $79.77&#10;claude-sonnet-4-5-20250929: $16.53&#10;claude-haiku-4-5-20251001: $0.41</title></rect>
376
- <rect x="1072" y="80" width="16" height="16" rx="3" fill="#196127"><title>2026-02-10 (Tue)&#10;Cost: $108.43&#10;In: 6,438 / Out: 26,366&#10;Total: 150,681,738&#10;Cache hit: 95%&#10;claude-opus-4-6: $95.89&#10;claude-sonnet-4-5-20250929: $11.85&#10;claude-haiku-4-5-20251001: $0.68</title></rect>
377
- <rect x="1072" y="100" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-11 (Wed)&#10;Cost: $74.32&#10;In: 10,895 / Out: 12,358&#10;Total: 93,013,129&#10;Cache hit: 92%&#10;claude-opus-4-6: $54.09&#10;claude-sonnet-4-5-20250929: $19.97&#10;claude-haiku-4-5-20251001: $0.26</title></rect>
378
- <rect x="1072" y="120" width="16" height="16" rx="3" fill="#196127"><title>2026-02-12 (Thu)&#10;Cost: $141.43&#10;In: 32,806 / Out: 15,244&#10;Total: 258,726,747&#10;Cache hit: 94%&#10;claude-sonnet-4-5-20250929: $111.88&#10;claude-opus-4-6: $28.67&#10;claude-haiku-4-5-20251001: $0.88</title></rect>
379
- <rect x="1072" y="140" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-13 (Fri)&#10;Cost: $99.42&#10;In: 19,685 / Out: 10,882&#10;Total: 186,473,069&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $98.00&#10;claude-opus-4-6: $1.19&#10;claude-haiku-4-5-20251001: $0.23</title></rect>
380
- <rect x="1072" y="160" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-14 (Sat)&#10;Cost: $101.46&#10;In: 18,373 / Out: 5,401&#10;Total: 188,184,796&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $97.33&#10;claude-opus-4-6: $4.12</title></rect>
381
- <rect x="1092" y="40" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-15 (Sun)&#10;Cost: $94.65&#10;In: 21,968 / Out: 5,227&#10;Total: 176,449,521&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $93.03&#10;claude-opus-4-6: $1.57&#10;claude-haiku-4-5-20251001: $0.04</title></rect>
382
- <rect x="1092" y="60" width="16" height="16" rx="3" fill="#7bc96f"><title>2026-02-16 (Mon)&#10;Cost: $69.87&#10;In: 13,911 / Out: 3,745&#10;Total: 131,466,709&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $69.07&#10;claude-haiku-4-5-20251001: $0.79</title></rect>
383
- <rect x="1092" y="80" width="16" height="16" rx="3" fill="#239a3b"><title>2026-02-17 (Tue)&#10;Cost: $77.63&#10;In: 13,509 / Out: 6,714&#10;Total: 113,500,001&#10;Cache hit: 90%&#10;claude-sonnet-4-5-20250929: $64.59&#10;claude-opus-4-6: $12.57&#10;claude-haiku-4-5-20251001: $0.47</title></rect>
384
- <rect x="1092" y="100" width="16" height="16" rx="3" fill="#196127"><title>2026-02-18 (Wed)&#10;Cost: $123.06&#10;In: 5,888 / Out: 34,283&#10;Total: 144,050,754&#10;Cache hit: 93%&#10;claude-opus-4-6: $119.33&#10;claude-sonnet-4-5-20250929: $2.50&#10;claude-haiku-4-5-20251001: $0.86&#10;claude-sonnet-4-6: $0.36</title></rect>
20
+ <rect x="52" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-19 (Wed)&#10;No data</title></rect>
21
+ <rect x="52" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-20 (Thu)&#10;No data</title></rect>
22
+ <rect x="52" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-21 (Fri)&#10;No data</title></rect>
23
+ <rect x="52" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-22 (Sat)&#10;No data</title></rect>
24
+ <rect x="72" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-23 (Sun)&#10;No data</title></rect>
25
+ <rect x="72" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-24 (Mon)&#10;No data</title></rect>
26
+ <rect x="72" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-25 (Tue)&#10;No data</title></rect>
27
+ <rect x="72" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-26 (Wed)&#10;No data</title></rect>
28
+ <rect x="72" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-27 (Thu)&#10;No data</title></rect>
29
+ <rect x="72" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-02-28 (Fri)&#10;No data</title></rect>
30
+ <rect x="72" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-01 (Sat)&#10;No data</title></rect>
31
+ <rect x="92" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-02 (Sun)&#10;No data</title></rect>
32
+ <rect x="92" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-03 (Mon)&#10;No data</title></rect>
33
+ <rect x="92" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-04 (Tue)&#10;No data</title></rect>
34
+ <rect x="92" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-05 (Wed)&#10;No data</title></rect>
35
+ <rect x="92" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-06 (Thu)&#10;No data</title></rect>
36
+ <rect x="92" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-07 (Fri)&#10;No data</title></rect>
37
+ <rect x="92" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-08 (Sat)&#10;No data</title></rect>
38
+ <rect x="112" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-09 (Sun)&#10;No data</title></rect>
39
+ <rect x="112" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-10 (Mon)&#10;No data</title></rect>
40
+ <rect x="112" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-11 (Tue)&#10;No data</title></rect>
41
+ <rect x="112" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-12 (Wed)&#10;No data</title></rect>
42
+ <rect x="112" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-13 (Thu)&#10;No data</title></rect>
43
+ <rect x="112" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-14 (Fri)&#10;No data</title></rect>
44
+ <rect x="112" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-15 (Sat)&#10;No data</title></rect>
45
+ <rect x="132" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-16 (Sun)&#10;No data</title></rect>
46
+ <rect x="132" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-17 (Mon)&#10;No data</title></rect>
47
+ <rect x="132" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-18 (Tue)&#10;No data</title></rect>
48
+ <rect x="132" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-19 (Wed)&#10;No data</title></rect>
49
+ <rect x="132" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-20 (Thu)&#10;No data</title></rect>
50
+ <rect x="132" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-21 (Fri)&#10;No data</title></rect>
51
+ <rect x="132" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-22 (Sat)&#10;No data</title></rect>
52
+ <rect x="152" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-23 (Sun)&#10;No data</title></rect>
53
+ <rect x="152" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-24 (Mon)&#10;No data</title></rect>
54
+ <rect x="152" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-25 (Tue)&#10;No data</title></rect>
55
+ <rect x="152" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-26 (Wed)&#10;No data</title></rect>
56
+ <rect x="152" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-27 (Thu)&#10;No data</title></rect>
57
+ <rect x="152" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-28 (Fri)&#10;No data</title></rect>
58
+ <rect x="152" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-29 (Sat)&#10;No data</title></rect>
59
+ <rect x="172" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-30 (Sun)&#10;No data</title></rect>
60
+ <rect x="172" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-03-31 (Mon)&#10;No data</title></rect>
61
+ <rect x="172" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-01 (Tue)&#10;No data</title></rect>
62
+ <rect x="172" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-02 (Wed)&#10;No data</title></rect>
63
+ <rect x="172" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-03 (Thu)&#10;No data</title></rect>
64
+ <rect x="172" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-04 (Fri)&#10;No data</title></rect>
65
+ <rect x="172" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-05 (Sat)&#10;No data</title></rect>
66
+ <rect x="192" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-06 (Sun)&#10;No data</title></rect>
67
+ <rect x="192" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-07 (Mon)&#10;No data</title></rect>
68
+ <rect x="192" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-08 (Tue)&#10;No data</title></rect>
69
+ <rect x="192" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-09 (Wed)&#10;No data</title></rect>
70
+ <rect x="192" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-10 (Thu)&#10;No data</title></rect>
71
+ <rect x="192" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-11 (Fri)&#10;No data</title></rect>
72
+ <rect x="192" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-12 (Sat)&#10;No data</title></rect>
73
+ <rect x="212" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-13 (Sun)&#10;No data</title></rect>
74
+ <rect x="212" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-14 (Mon)&#10;No data</title></rect>
75
+ <rect x="212" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-15 (Tue)&#10;No data</title></rect>
76
+ <rect x="212" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-16 (Wed)&#10;No data</title></rect>
77
+ <rect x="212" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-17 (Thu)&#10;No data</title></rect>
78
+ <rect x="212" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-18 (Fri)&#10;No data</title></rect>
79
+ <rect x="212" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-19 (Sat)&#10;No data</title></rect>
80
+ <rect x="232" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-20 (Sun)&#10;No data</title></rect>
81
+ <rect x="232" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-21 (Mon)&#10;No data</title></rect>
82
+ <rect x="232" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-22 (Tue)&#10;No data</title></rect>
83
+ <rect x="232" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-23 (Wed)&#10;No data</title></rect>
84
+ <rect x="232" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-24 (Thu)&#10;No data</title></rect>
85
+ <rect x="232" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-25 (Fri)&#10;No data</title></rect>
86
+ <rect x="232" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-26 (Sat)&#10;No data</title></rect>
87
+ <rect x="252" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-27 (Sun)&#10;No data</title></rect>
88
+ <rect x="252" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-28 (Mon)&#10;No data</title></rect>
89
+ <rect x="252" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-29 (Tue)&#10;No data</title></rect>
90
+ <rect x="252" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-04-30 (Wed)&#10;No data</title></rect>
91
+ <rect x="252" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-01 (Thu)&#10;No data</title></rect>
92
+ <rect x="252" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-02 (Fri)&#10;No data</title></rect>
93
+ <rect x="252" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-03 (Sat)&#10;No data</title></rect>
94
+ <rect x="272" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-04 (Sun)&#10;No data</title></rect>
95
+ <rect x="272" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-05 (Mon)&#10;No data</title></rect>
96
+ <rect x="272" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-06 (Tue)&#10;No data</title></rect>
97
+ <rect x="272" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-07 (Wed)&#10;No data</title></rect>
98
+ <rect x="272" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-08 (Thu)&#10;No data</title></rect>
99
+ <rect x="272" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-09 (Fri)&#10;No data</title></rect>
100
+ <rect x="272" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-10 (Sat)&#10;No data</title></rect>
101
+ <rect x="292" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-11 (Sun)&#10;No data</title></rect>
102
+ <rect x="292" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-12 (Mon)&#10;No data</title></rect>
103
+ <rect x="292" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-13 (Tue)&#10;No data</title></rect>
104
+ <rect x="292" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-14 (Wed)&#10;No data</title></rect>
105
+ <rect x="292" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-15 (Thu)&#10;No data</title></rect>
106
+ <rect x="292" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-16 (Fri)&#10;No data</title></rect>
107
+ <rect x="292" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-17 (Sat)&#10;No data</title></rect>
108
+ <rect x="312" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-18 (Sun)&#10;No data</title></rect>
109
+ <rect x="312" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-19 (Mon)&#10;No data</title></rect>
110
+ <rect x="312" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-20 (Tue)&#10;No data</title></rect>
111
+ <rect x="312" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-21 (Wed)&#10;No data</title></rect>
112
+ <rect x="312" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-22 (Thu)&#10;No data</title></rect>
113
+ <rect x="312" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-23 (Fri)&#10;No data</title></rect>
114
+ <rect x="312" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-24 (Sat)&#10;No data</title></rect>
115
+ <rect x="332" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-25 (Sun)&#10;No data</title></rect>
116
+ <rect x="332" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-26 (Mon)&#10;No data</title></rect>
117
+ <rect x="332" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-27 (Tue)&#10;No data</title></rect>
118
+ <rect x="332" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-28 (Wed)&#10;No data</title></rect>
119
+ <rect x="332" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-29 (Thu)&#10;No data</title></rect>
120
+ <rect x="332" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-30 (Fri)&#10;No data</title></rect>
121
+ <rect x="332" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-05-31 (Sat)&#10;No data</title></rect>
122
+ <rect x="352" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-01 (Sun)&#10;No data</title></rect>
123
+ <rect x="352" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-02 (Mon)&#10;No data</title></rect>
124
+ <rect x="352" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-03 (Tue)&#10;No data</title></rect>
125
+ <rect x="352" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-04 (Wed)&#10;No data</title></rect>
126
+ <rect x="352" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-05 (Thu)&#10;No data</title></rect>
127
+ <rect x="352" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-06 (Fri)&#10;No data</title></rect>
128
+ <rect x="352" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-07 (Sat)&#10;No data</title></rect>
129
+ <rect x="372" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-08 (Sun)&#10;No data</title></rect>
130
+ <rect x="372" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-09 (Mon)&#10;No data</title></rect>
131
+ <rect x="372" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-10 (Tue)&#10;No data</title></rect>
132
+ <rect x="372" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-11 (Wed)&#10;No data</title></rect>
133
+ <rect x="372" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-12 (Thu)&#10;No data</title></rect>
134
+ <rect x="372" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-13 (Fri)&#10;No data</title></rect>
135
+ <rect x="372" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-14 (Sat)&#10;No data</title></rect>
136
+ <rect x="392" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-15 (Sun)&#10;No data</title></rect>
137
+ <rect x="392" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-16 (Mon)&#10;No data</title></rect>
138
+ <rect x="392" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-17 (Tue)&#10;No data</title></rect>
139
+ <rect x="392" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-18 (Wed)&#10;No data</title></rect>
140
+ <rect x="392" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-19 (Thu)&#10;No data</title></rect>
141
+ <rect x="392" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-20 (Fri)&#10;No data</title></rect>
142
+ <rect x="392" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-21 (Sat)&#10;No data</title></rect>
143
+ <rect x="412" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-22 (Sun)&#10;No data</title></rect>
144
+ <rect x="412" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-23 (Mon)&#10;No data</title></rect>
145
+ <rect x="412" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-24 (Tue)&#10;No data</title></rect>
146
+ <rect x="412" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-25 (Wed)&#10;No data</title></rect>
147
+ <rect x="412" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-26 (Thu)&#10;No data</title></rect>
148
+ <rect x="412" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-27 (Fri)&#10;No data</title></rect>
149
+ <rect x="412" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-28 (Sat)&#10;No data</title></rect>
150
+ <rect x="432" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-29 (Sun)&#10;No data</title></rect>
151
+ <rect x="432" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-06-30 (Mon)&#10;No data</title></rect>
152
+ <rect x="432" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-01 (Tue)&#10;No data</title></rect>
153
+ <rect x="432" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-02 (Wed)&#10;No data</title></rect>
154
+ <rect x="432" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-03 (Thu)&#10;No data</title></rect>
155
+ <rect x="432" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-04 (Fri)&#10;No data</title></rect>
156
+ <rect x="432" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-05 (Sat)&#10;No data</title></rect>
157
+ <rect x="452" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-06 (Sun)&#10;No data</title></rect>
158
+ <rect x="452" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-07 (Mon)&#10;No data</title></rect>
159
+ <rect x="452" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-08 (Tue)&#10;No data</title></rect>
160
+ <rect x="452" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-09 (Wed)&#10;No data</title></rect>
161
+ <rect x="452" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-10 (Thu)&#10;No data</title></rect>
162
+ <rect x="452" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-11 (Fri)&#10;No data</title></rect>
163
+ <rect x="452" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-12 (Sat)&#10;No data</title></rect>
164
+ <rect x="472" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-13 (Sun)&#10;No data</title></rect>
165
+ <rect x="472" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-14 (Mon)&#10;No data</title></rect>
166
+ <rect x="472" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-15 (Tue)&#10;No data</title></rect>
167
+ <rect x="472" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-16 (Wed)&#10;No data</title></rect>
168
+ <rect x="472" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-17 (Thu)&#10;No data</title></rect>
169
+ <rect x="472" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-18 (Fri)&#10;No data</title></rect>
170
+ <rect x="472" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-19 (Sat)&#10;No data</title></rect>
171
+ <rect x="492" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-20 (Sun)&#10;No data</title></rect>
172
+ <rect x="492" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-21 (Mon)&#10;No data</title></rect>
173
+ <rect x="492" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-22 (Tue)&#10;No data</title></rect>
174
+ <rect x="492" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-23 (Wed)&#10;No data</title></rect>
175
+ <rect x="492" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-24 (Thu)&#10;No data</title></rect>
176
+ <rect x="492" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-25 (Fri)&#10;No data</title></rect>
177
+ <rect x="492" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-26 (Sat)&#10;No data</title></rect>
178
+ <rect x="512" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-27 (Sun)&#10;No data</title></rect>
179
+ <rect x="512" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-28 (Mon)&#10;No data</title></rect>
180
+ <rect x="512" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-29 (Tue)&#10;No data</title></rect>
181
+ <rect x="512" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-30 (Wed)&#10;No data</title></rect>
182
+ <rect x="512" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-07-31 (Thu)&#10;No data</title></rect>
183
+ <rect x="512" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-01 (Fri)&#10;No data</title></rect>
184
+ <rect x="512" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-02 (Sat)&#10;No data</title></rect>
185
+ <rect x="532" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-03 (Sun)&#10;No data</title></rect>
186
+ <rect x="532" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-04 (Mon)&#10;No data</title></rect>
187
+ <rect x="532" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-05 (Tue)&#10;No data</title></rect>
188
+ <rect x="532" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-06 (Wed)&#10;No data</title></rect>
189
+ <rect x="532" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-07 (Thu)&#10;No data</title></rect>
190
+ <rect x="532" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-08 (Fri)&#10;No data</title></rect>
191
+ <rect x="532" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-09 (Sat)&#10;No data</title></rect>
192
+ <rect x="552" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-10 (Sun)&#10;No data</title></rect>
193
+ <rect x="552" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-11 (Mon)&#10;No data</title></rect>
194
+ <rect x="552" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-12 (Tue)&#10;No data</title></rect>
195
+ <rect x="552" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-13 (Wed)&#10;No data</title></rect>
196
+ <rect x="552" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-14 (Thu)&#10;No data</title></rect>
197
+ <rect x="552" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-15 (Fri)&#10;No data</title></rect>
198
+ <rect x="552" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-16 (Sat)&#10;No data</title></rect>
199
+ <rect x="572" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-17 (Sun)&#10;No data</title></rect>
200
+ <rect x="572" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-18 (Mon)&#10;No data</title></rect>
201
+ <rect x="572" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-19 (Tue)&#10;No data</title></rect>
202
+ <rect x="572" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-20 (Wed)&#10;No data</title></rect>
203
+ <rect x="572" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-21 (Thu)&#10;No data</title></rect>
204
+ <rect x="572" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-22 (Fri)&#10;No data</title></rect>
205
+ <rect x="572" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-23 (Sat)&#10;No data</title></rect>
206
+ <rect x="592" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-24 (Sun)&#10;No data</title></rect>
207
+ <rect x="592" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-25 (Mon)&#10;No data</title></rect>
208
+ <rect x="592" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-26 (Tue)&#10;No data</title></rect>
209
+ <rect x="592" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-27 (Wed)&#10;No data</title></rect>
210
+ <rect x="592" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-28 (Thu)&#10;No data</title></rect>
211
+ <rect x="592" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-29 (Fri)&#10;No data</title></rect>
212
+ <rect x="592" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-30 (Sat)&#10;No data</title></rect>
213
+ <rect x="612" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-08-31 (Sun)&#10;No data</title></rect>
214
+ <rect x="612" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-01 (Mon)&#10;No data</title></rect>
215
+ <rect x="612" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-02 (Tue)&#10;No data</title></rect>
216
+ <rect x="612" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-03 (Wed)&#10;No data</title></rect>
217
+ <rect x="612" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-04 (Thu)&#10;No data</title></rect>
218
+ <rect x="612" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-05 (Fri)&#10;No data</title></rect>
219
+ <rect x="612" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-06 (Sat)&#10;No data</title></rect>
220
+ <rect x="632" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-07 (Sun)&#10;No data</title></rect>
221
+ <rect x="632" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-08 (Mon)&#10;No data</title></rect>
222
+ <rect x="632" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-09 (Tue)&#10;No data</title></rect>
223
+ <rect x="632" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-10 (Wed)&#10;No data</title></rect>
224
+ <rect x="632" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-11 (Thu)&#10;No data</title></rect>
225
+ <rect x="632" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-12 (Fri)&#10;No data</title></rect>
226
+ <rect x="632" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-13 (Sat)&#10;No data</title></rect>
227
+ <rect x="652" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-14 (Sun)&#10;No data</title></rect>
228
+ <rect x="652" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-15 (Mon)&#10;No data</title></rect>
229
+ <rect x="652" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-16 (Tue)&#10;No data</title></rect>
230
+ <rect x="652" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-17 (Wed)&#10;No data</title></rect>
231
+ <rect x="652" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-18 (Thu)&#10;No data</title></rect>
232
+ <rect x="652" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-19 (Fri)&#10;No data</title></rect>
233
+ <rect x="652" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-20 (Sat)&#10;No data</title></rect>
234
+ <rect x="672" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-21 (Sun)&#10;No data</title></rect>
235
+ <rect x="672" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-22 (Mon)&#10;No data</title></rect>
236
+ <rect x="672" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-23 (Tue)&#10;No data</title></rect>
237
+ <rect x="672" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-24 (Wed)&#10;No data</title></rect>
238
+ <rect x="672" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-25 (Thu)&#10;No data</title></rect>
239
+ <rect x="672" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-26 (Fri)&#10;No data</title></rect>
240
+ <rect x="672" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-27 (Sat)&#10;No data</title></rect>
241
+ <rect x="692" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-28 (Sun)&#10;No data</title></rect>
242
+ <rect x="692" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-29 (Mon)&#10;No data</title></rect>
243
+ <rect x="692" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-09-30 (Tue)&#10;No data</title></rect>
244
+ <rect x="692" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-01 (Wed)&#10;No data</title></rect>
245
+ <rect x="692" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-02 (Thu)&#10;No data</title></rect>
246
+ <rect x="692" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-03 (Fri)&#10;No data</title></rect>
247
+ <rect x="692" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-04 (Sat)&#10;No data</title></rect>
248
+ <rect x="712" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-05 (Sun)&#10;No data</title></rect>
249
+ <rect x="712" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-06 (Mon)&#10;No data</title></rect>
250
+ <rect x="712" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-07 (Tue)&#10;No data</title></rect>
251
+ <rect x="712" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-08 (Wed)&#10;No data</title></rect>
252
+ <rect x="712" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-09 (Thu)&#10;No data</title></rect>
253
+ <rect x="712" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-10 (Fri)&#10;No data</title></rect>
254
+ <rect x="712" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-11 (Sat)&#10;No data</title></rect>
255
+ <rect x="732" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-12 (Sun)&#10;No data</title></rect>
256
+ <rect x="732" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-13 (Mon)&#10;No data</title></rect>
257
+ <rect x="732" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-14 (Tue)&#10;No data</title></rect>
258
+ <rect x="732" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-15 (Wed)&#10;No data</title></rect>
259
+ <rect x="732" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-16 (Thu)&#10;No data</title></rect>
260
+ <rect x="732" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-17 (Fri)&#10;No data</title></rect>
261
+ <rect x="732" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-18 (Sat)&#10;No data</title></rect>
262
+ <rect x="752" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-19 (Sun)&#10;No data</title></rect>
263
+ <rect x="752" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-20 (Mon)&#10;No data</title></rect>
264
+ <rect x="752" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-21 (Tue)&#10;No data</title></rect>
265
+ <rect x="752" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-22 (Wed)&#10;No data</title></rect>
266
+ <rect x="752" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-23 (Thu)&#10;No data</title></rect>
267
+ <rect x="752" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-24 (Fri)&#10;No data</title></rect>
268
+ <rect x="752" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-25 (Sat)&#10;No data</title></rect>
269
+ <rect x="772" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-26 (Sun)&#10;No data</title></rect>
270
+ <rect x="772" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-27 (Mon)&#10;No data</title></rect>
271
+ <rect x="772" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-28 (Tue)&#10;No data</title></rect>
272
+ <rect x="772" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-29 (Wed)&#10;No data</title></rect>
273
+ <rect x="772" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-30 (Thu)&#10;No data</title></rect>
274
+ <rect x="772" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-10-31 (Fri)&#10;No data</title></rect>
275
+ <rect x="772" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-01 (Sat)&#10;No data</title></rect>
276
+ <rect x="792" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-02 (Sun)&#10;No data</title></rect>
277
+ <rect x="792" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-03 (Mon)&#10;No data</title></rect>
278
+ <rect x="792" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-04 (Tue)&#10;No data</title></rect>
279
+ <rect x="792" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-05 (Wed)&#10;No data</title></rect>
280
+ <rect x="792" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-06 (Thu)&#10;No data</title></rect>
281
+ <rect x="792" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-07 (Fri)&#10;No data</title></rect>
282
+ <rect x="792" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-08 (Sat)&#10;No data</title></rect>
283
+ <rect x="812" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-09 (Sun)&#10;No data</title></rect>
284
+ <rect x="812" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-10 (Mon)&#10;No data</title></rect>
285
+ <rect x="812" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-11 (Tue)&#10;No data</title></rect>
286
+ <rect x="812" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-12 (Wed)&#10;No data</title></rect>
287
+ <rect x="812" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-13 (Thu)&#10;No data</title></rect>
288
+ <rect x="812" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-14 (Fri)&#10;No data</title></rect>
289
+ <rect x="812" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-15 (Sat)&#10;No data</title></rect>
290
+ <rect x="832" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-16 (Sun)&#10;No data</title></rect>
291
+ <rect x="832" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-17 (Mon)&#10;No data</title></rect>
292
+ <rect x="832" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-18 (Tue)&#10;No data</title></rect>
293
+ <rect x="832" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-19 (Wed)&#10;No data</title></rect>
294
+ <rect x="832" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-20 (Thu)&#10;No data</title></rect>
295
+ <rect x="832" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-21 (Fri)&#10;No data</title></rect>
296
+ <rect x="832" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-22 (Sat)&#10;No data</title></rect>
297
+ <rect x="852" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-23 (Sun)&#10;No data</title></rect>
298
+ <rect x="852" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-24 (Mon)&#10;No data</title></rect>
299
+ <rect x="852" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-25 (Tue)&#10;No data</title></rect>
300
+ <rect x="852" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-26 (Wed)&#10;No data</title></rect>
301
+ <rect x="852" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-27 (Thu)&#10;No data</title></rect>
302
+ <rect x="852" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-28 (Fri)&#10;No data</title></rect>
303
+ <rect x="852" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-29 (Sat)&#10;No data</title></rect>
304
+ <rect x="872" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-11-30 (Sun)&#10;No data</title></rect>
305
+ <rect x="872" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-01 (Mon)&#10;No data</title></rect>
306
+ <rect x="872" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-02 (Tue)&#10;No data</title></rect>
307
+ <rect x="872" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-03 (Wed)&#10;No data</title></rect>
308
+ <rect x="872" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-04 (Thu)&#10;No data</title></rect>
309
+ <rect x="872" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-05 (Fri)&#10;No data</title></rect>
310
+ <rect x="872" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-06 (Sat)&#10;No data</title></rect>
311
+ <rect x="892" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-07 (Sun)&#10;No data</title></rect>
312
+ <rect x="892" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-08 (Mon)&#10;No data</title></rect>
313
+ <rect x="892" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-09 (Tue)&#10;No data</title></rect>
314
+ <rect x="892" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-10 (Wed)&#10;No data</title></rect>
315
+ <rect x="892" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-11 (Thu)&#10;No data</title></rect>
316
+ <rect x="892" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-12 (Fri)&#10;No data</title></rect>
317
+ <rect x="892" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-13 (Sat)&#10;No data</title></rect>
318
+ <rect x="912" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-14 (Sun)&#10;No data</title></rect>
319
+ <rect x="912" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-15 (Mon)&#10;No data</title></rect>
320
+ <rect x="912" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-16 (Tue)&#10;No data</title></rect>
321
+ <rect x="912" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-17 (Wed)&#10;No data</title></rect>
322
+ <rect x="912" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-18 (Thu)&#10;No data</title></rect>
323
+ <rect x="912" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-19 (Fri)&#10;No data</title></rect>
324
+ <rect x="912" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-20 (Sat)&#10;No data</title></rect>
325
+ <rect x="932" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-21 (Sun)&#10;No data</title></rect>
326
+ <rect x="932" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-22 (Mon)&#10;No data</title></rect>
327
+ <rect x="932" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-23 (Tue)&#10;No data</title></rect>
328
+ <rect x="932" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-24 (Wed)&#10;No data</title></rect>
329
+ <rect x="932" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-25 (Thu)&#10;No data</title></rect>
330
+ <rect x="932" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-26 (Fri)&#10;No data</title></rect>
331
+ <rect x="932" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-27 (Sat)&#10;No data</title></rect>
332
+ <rect x="952" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-28 (Sun)&#10;No data</title></rect>
333
+ <rect x="952" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-29 (Mon)&#10;No data</title></rect>
334
+ <rect x="952" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-30 (Tue)&#10;No data</title></rect>
335
+ <rect x="952" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2025-12-31 (Wed)&#10;No data</title></rect>
336
+ <rect x="952" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-01 (Thu)&#10;No data</title></rect>
337
+ <rect x="952" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-02 (Fri)&#10;No data</title></rect>
338
+ <rect x="952" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-03 (Sat)&#10;No data</title></rect>
339
+ <rect x="972" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-04 (Sun)&#10;No data</title></rect>
340
+ <rect x="972" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-05 (Mon)&#10;No data</title></rect>
341
+ <rect x="972" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-06 (Tue)&#10;No data</title></rect>
342
+ <rect x="972" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-07 (Wed)&#10;No data</title></rect>
343
+ <rect x="972" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-08 (Thu)&#10;No data</title></rect>
344
+ <rect x="972" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-09 (Fri)&#10;No data</title></rect>
345
+ <rect x="972" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-10 (Sat)&#10;No data</title></rect>
346
+ <rect x="992" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-11 (Sun)&#10;No data</title></rect>
347
+ <rect x="992" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-12 (Mon)&#10;No data</title></rect>
348
+ <rect x="992" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-13 (Tue)&#10;No data</title></rect>
349
+ <rect x="992" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-14 (Wed)&#10;No data</title></rect>
350
+ <rect x="992" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-15 (Thu)&#10;No data</title></rect>
351
+ <rect x="992" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-16 (Fri)&#10;No data</title></rect>
352
+ <rect x="992" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-17 (Sat)&#10;No data</title></rect>
353
+ <rect x="1012" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-18 (Sun)&#10;No data</title></rect>
354
+ <rect x="1012" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-19 (Mon)&#10;No data</title></rect>
355
+ <rect x="1012" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-20 (Tue)&#10;No data</title></rect>
356
+ <rect x="1012" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-21 (Wed)&#10;No data</title></rect>
357
+ <rect x="1012" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-22 (Thu)&#10;No data</title></rect>
358
+ <rect x="1012" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-23 (Fri)&#10;No data</title></rect>
359
+ <rect x="1012" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-24 (Sat)&#10;No data</title></rect>
360
+ <rect x="1032" y="40" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-25 (Sun)&#10;No data</title></rect>
361
+ <rect x="1032" y="60" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-26 (Mon)&#10;No data</title></rect>
362
+ <rect x="1032" y="80" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-27 (Tue)&#10;No data</title></rect>
363
+ <rect x="1032" y="100" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-28 (Wed)&#10;No data</title></rect>
364
+ <rect x="1032" y="120" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-29 (Thu)&#10;No data</title></rect>
365
+ <rect x="1032" y="140" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-30 (Fri)&#10;No data</title></rect>
366
+ <rect x="1032" y="160" width="16" height="16" rx="3" fill="#161b22"><title>2026-01-31 (Sat)&#10;No data</title></rect>
367
+ <rect x="1052" y="40" width="16" height="16" rx="3" fill="#0e4429"><title>2026-02-01 (Sun)&#10;Cost: $27.90&#10;In: 4,991 / Out: 1,218&#10;Total: 39,141,520&#10;Cache hit: 96%&#10;claude-opus-4-5-20251101: $27.63&#10;claude-sonnet-4-5-20250929: $0.27</title></rect>
368
+ <rect x="1052" y="60" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-02 (Mon)&#10;Cost: $136.12&#10;In: 16,907 / Out: 6,208&#10;Total: 153,981,637&#10;Cache hit: 90%&#10;claude-opus-4-5-20251101: $91.93&#10;claude-sonnet-4-5-20250929: $43.52&#10;claude-haiku-4-5-20251001: $0.67</title></rect>
369
+ <rect x="1052" y="80" width="16" height="16" rx="3" fill="#006d32"><title>2026-02-03 (Tue)&#10;Cost: $59.67&#10;In: 8,196 / Out: 3,859&#10;Total: 67,570,780&#10;Cache hit: 92%&#10;claude-opus-4-5-20251101: $55.66&#10;claude-sonnet-4-5-20250929: $3.08&#10;claude-haiku-4-5-20251001: $0.94</title></rect>
370
+ <rect x="1052" y="100" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-04 (Wed)&#10;Cost: $123.34&#10;In: 31,675 / Out: 8,687&#10;Total: 168,834,147&#10;Cache hit: 91%&#10;claude-opus-4-5-20251101: $66.30&#10;claude-sonnet-4-5-20250929: $54.96&#10;claude-haiku-4-5-20251001: $2.09</title></rect>
371
+ <rect x="1052" y="120" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-05 (Thu)&#10;Cost: $120.81&#10;In: 13,181 / Out: 17,691&#10;Total: 127,651,583&#10;Cache hit: 89%&#10;claude-opus-4-5-20251101: $83.19&#10;claude-sonnet-4-5-20250929: $37.40&#10;claude-haiku-4-5-20251001: $0.22</title></rect>
372
+ <rect x="1052" y="140" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-06 (Fri)&#10;Cost: $134.48&#10;In: 10,421 / Out: 41,354&#10;Total: 187,092,162&#10;Cache hit: 95%&#10;claude-opus-4-6: $84.35&#10;claude-opus-4-5-20251101: $30.01&#10;claude-sonnet-4-5-20250929: $19.19&#10;claude-haiku-4-5-20251001: $0.93</title></rect>
373
+ <rect x="1052" y="160" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-07 (Sat)&#10;Cost: $101.17&#10;In: 10,331 / Out: 19,797&#10;Total: 114,348,109&#10;Cache hit: 89%&#10;claude-opus-4-6: $61.69&#10;claude-sonnet-4-5-20250929: $38.21&#10;claude-haiku-4-5-20251001: $1.27</title></rect>
374
+ <rect x="1072" y="40" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-08 (Sun)&#10;Cost: $126.57&#10;In: 9,773 / Out: 28,122&#10;Total: 131,570,471&#10;Cache hit: 88%&#10;claude-opus-4-6: $84.63&#10;claude-sonnet-4-5-20250929: $41.43&#10;claude-haiku-4-5-20251001: $0.51</title></rect>
375
+ <rect x="1072" y="60" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-09 (Mon)&#10;Cost: $96.71&#10;In: 7,851 / Out: 48,808&#10;Total: 126,643,382&#10;Cache hit: 94%&#10;claude-opus-4-6: $79.77&#10;claude-sonnet-4-5-20250929: $16.53&#10;claude-haiku-4-5-20251001: $0.41</title></rect>
376
+ <rect x="1072" y="80" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-10 (Tue)&#10;Cost: $108.43&#10;In: 6,438 / Out: 26,366&#10;Total: 150,681,738&#10;Cache hit: 95%&#10;claude-opus-4-6: $95.89&#10;claude-sonnet-4-5-20250929: $11.85&#10;claude-haiku-4-5-20251001: $0.68</title></rect>
377
+ <rect x="1072" y="100" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-11 (Wed)&#10;Cost: $74.32&#10;In: 10,895 / Out: 12,358&#10;Total: 93,013,129&#10;Cache hit: 92%&#10;claude-opus-4-6: $54.09&#10;claude-sonnet-4-5-20250929: $19.97&#10;claude-haiku-4-5-20251001: $0.26</title></rect>
378
+ <rect x="1072" y="120" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-12 (Thu)&#10;Cost: $141.43&#10;In: 32,806 / Out: 15,244&#10;Total: 258,726,747&#10;Cache hit: 94%&#10;claude-sonnet-4-5-20250929: $111.88&#10;claude-opus-4-6: $28.67&#10;claude-haiku-4-5-20251001: $0.88</title></rect>
379
+ <rect x="1072" y="140" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-13 (Fri)&#10;Cost: $99.42&#10;In: 19,685 / Out: 10,882&#10;Total: 186,473,069&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $98.00&#10;claude-opus-4-6: $1.19&#10;claude-haiku-4-5-20251001: $0.23</title></rect>
380
+ <rect x="1072" y="160" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-14 (Sat)&#10;Cost: $101.46&#10;In: 18,373 / Out: 5,401&#10;Total: 188,184,796&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $97.33&#10;claude-opus-4-6: $4.12</title></rect>
381
+ <rect x="1092" y="40" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-15 (Sun)&#10;Cost: $94.65&#10;In: 21,968 / Out: 5,227&#10;Total: 176,449,521&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $93.03&#10;claude-opus-4-6: $1.57&#10;claude-haiku-4-5-20251001: $0.04</title></rect>
382
+ <rect x="1092" y="60" width="16" height="16" rx="3" fill="#006d32"><title>2026-02-16 (Mon)&#10;Cost: $69.87&#10;In: 13,911 / Out: 3,745&#10;Total: 131,466,709&#10;Cache hit: 93%&#10;claude-sonnet-4-5-20250929: $69.07&#10;claude-haiku-4-5-20251001: $0.79</title></rect>
383
+ <rect x="1092" y="80" width="16" height="16" rx="3" fill="#26a641"><title>2026-02-17 (Tue)&#10;Cost: $77.63&#10;In: 13,509 / Out: 6,714&#10;Total: 113,500,001&#10;Cache hit: 90%&#10;claude-sonnet-4-5-20250929: $64.59&#10;claude-opus-4-6: $12.57&#10;claude-haiku-4-5-20251001: $0.47</title></rect>
384
+ <rect x="1092" y="100" width="16" height="16" rx="3" fill="#39d353"><title>2026-02-18 (Wed)&#10;Cost: $123.06&#10;In: 5,888 / Out: 34,283&#10;Total: 144,050,754&#10;Cache hit: 93%&#10;claude-opus-4-6: $119.33&#10;claude-sonnet-4-5-20250929: $2.50&#10;claude-haiku-4-5-20251001: $0.86&#10;claude-sonnet-4-6: $0.36</title></rect>
385
385
  <text x="956" y="205" class="legend-label">Less</text>
386
- <rect x="996" y="190" width="16" height="16" rx="3" fill="#ebedf0"/>
387
- <rect x="1016" y="190" width="16" height="16" rx="3" fill="#c6e48b"/>
388
- <rect x="1036" y="190" width="16" height="16" rx="3" fill="#7bc96f"/>
389
- <rect x="1056" y="190" width="16" height="16" rx="3" fill="#239a3b"/>
390
- <rect x="1076" y="190" width="16" height="16" rx="3" fill="#196127"/>
386
+ <rect x="996" y="190" width="16" height="16" rx="3" fill="#161b22"/>
387
+ <rect x="1016" y="190" width="16" height="16" rx="3" fill="#0e4429"/>
388
+ <rect x="1036" y="190" width="16" height="16" rx="3" fill="#006d32"/>
389
+ <rect x="1056" y="190" width="16" height="16" rx="3" fill="#26a641"/>
390
+ <rect x="1076" y="190" width="16" height="16" rx="3" fill="#39d353"/>
391
391
  <text x="1096" y="205" class="legend-label">More</text>
392
392
  <text x="52" y="205" class="total">💰 Total: $1,817.04 across 365 days (2025~2026)</text>
393
393
 
394
- <line x1="16" y1="220" x2="1116" y2="220" stroke="#d0d7de" stroke-width="1"/>
394
+ <line x1="16" y1="220" x2="1116" y2="220" stroke="#30363d" stroke-width="1"/>
395
395
  <text x="16" y="238" class="stat">Daily avg: <tspan class="stat-val">$100.95</tspan></text>
396
396
  <text x="216" y="238" class="stat">Weekly avg: <tspan class="stat-val">$605.68</tspan></text>
397
397
  <text x="16" y="256" class="stat">Peak: <tspan class="stat-val">$141.43</tspan> (2026-02-12)</text>
@@ -399,12 +399,12 @@
399
399
 
400
400
 
401
401
  <text x="16" y="276" class="section-title">Avg by weekday</text>
402
- <text x="16" y="302" class="bar-label">Sun</text><rect x="52" y="292" width="633.3129957291031" height="14" rx="3" fill="#239a3b" opacity="0.85"/><text x="691.3129957291031" y="303" class="bar-val">$83.04</text>
403
- <text x="16" y="324" class="bar-label">Mon</text><rect x="52" y="314" width="769.5241000610126" height="14" rx="3" fill="#196127" opacity="0.85"/><text x="827.5241000610126" y="325" class="bar-val">$100.90</text>
404
- <text x="16" y="346" class="bar-label">Tue</text><rect x="52" y="336" width="624.6949359365467" height="14" rx="3" fill="#239a3b" opacity="0.85"/><text x="682.6949359365467" y="347" class="bar-val">$81.91</text>
405
- <text x="16" y="368" class="bar-label">Wed</text><rect x="52" y="358" width="815.3345535895871" height="14" rx="3" fill="#196127" opacity="0.85"/><text x="873.3345535895871" y="369" class="bar-val">$106.91</text>
406
- <text x="16" y="390" class="bar-label">Thu</text><rect x="52" y="380" width="1000" height="14" rx="3" fill="#196127" opacity="0.85"/><text x="1058" y="391" class="bar-val">$131.12</text>
407
- <text x="16" y="412" class="bar-label">Fri</text><rect x="52" y="402" width="891.9310555216595" height="14" rx="3" fill="#196127" opacity="0.85"/><text x="949.9310555216595" y="413" class="bar-val">$116.95</text>
408
- <text x="16" y="434" class="bar-label">Sat</text><rect x="52" y="424" width="772.689139719341" height="14" rx="3" fill="#196127" opacity="0.85"/><text x="830.689139719341" y="435" class="bar-val">$101.32</text>
402
+ <text x="16" y="302" class="bar-label">Sun</text><rect x="52" y="292" width="633.3129957291031" height="14" rx="3" fill="#26a641" opacity="0.85"/><text x="691.3129957291031" y="303" class="bar-val">$83.04</text>
403
+ <text x="16" y="324" class="bar-label">Mon</text><rect x="52" y="314" width="769.5241000610126" height="14" rx="3" fill="#39d353" opacity="0.85"/><text x="827.5241000610126" y="325" class="bar-val">$100.90</text>
404
+ <text x="16" y="346" class="bar-label">Tue</text><rect x="52" y="336" width="624.6949359365467" height="14" rx="3" fill="#26a641" opacity="0.85"/><text x="682.6949359365467" y="347" class="bar-val">$81.91</text>
405
+ <text x="16" y="368" class="bar-label">Wed</text><rect x="52" y="358" width="815.3345535895871" height="14" rx="3" fill="#39d353" opacity="0.85"/><text x="873.3345535895871" y="369" class="bar-val">$106.91</text>
406
+ <text x="16" y="390" class="bar-label">Thu</text><rect x="52" y="380" width="1000" height="14" rx="3" fill="#39d353" opacity="0.85"/><text x="1058" y="391" class="bar-val">$131.12</text>
407
+ <text x="16" y="412" class="bar-label">Fri</text><rect x="52" y="402" width="891.9310555216595" height="14" rx="3" fill="#39d353" opacity="0.85"/><text x="949.9310555216595" y="413" class="bar-val">$116.95</text>
408
+ <text x="16" y="434" class="bar-label">Sat</text><rect x="52" y="424" width="772.689139719341" height="14" rx="3" fill="#39d353" opacity="0.85"/><text x="830.689139719341" y="435" class="bar-val">$101.32</text>
409
409
 
410
410
  </svg>