diff --git a/.gitattributes b/.gitattributes
index a6344aac8c09253b3b630fb776ae94478aa0275b..cc7c7d584611ad701ca9d2e81d715e53cf02ba9a 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -33,3 +33,133 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
+videos/0111.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0112.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0113.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0121.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0122.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0123.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0131.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0132.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0133.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0211.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0212.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0213.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0221.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0222.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0223.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0231.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0232.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0233.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0311.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0312.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0313.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0321.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0322.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0323.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0331.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0332.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0333.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0411.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0412.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0413.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0421.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0422.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0423.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0431.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0432.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0433.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0511.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0512.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0513.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0521.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0522.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0523.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0531.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0532.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0533.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0611.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0612.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0613.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0621.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0622.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0623.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0631.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0632.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0633.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0711.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0712.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0713.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0721.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0722.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0723.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0731.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0732.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0733.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0811.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0812.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0813.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0821.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0822.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0823.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0831.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0832.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0833.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0911.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0912.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0913.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0921.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0922.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0931.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0932.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/0933.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1011.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1012.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1013.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1021.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1022.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1023.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1031.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1032.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1033.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1111.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1112.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1113.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1121.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1122.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1123.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1131.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1132.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1133.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1211.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1212.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1213.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1221.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1222.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1223.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1231.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1232.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1233.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1311.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1312.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1313.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1321.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1322.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1323.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1331.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1332.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1333.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1411.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1412.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1413.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1421.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1422.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1423.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1431.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1432.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1433.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1511.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1512.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1521.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1522.mp4 filter=lfs diff=lfs merge=lfs -text
+videos/1523.mp4 filter=lfs diff=lfs merge=lfs -text
diff --git a/assets/.DS_Store b/assets/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..64da131df7fbf11a7b791128714dfa3cd552d5a5
Binary files /dev/null and b/assets/.DS_Store differ
diff --git a/assets/css/codebook.css b/assets/css/codebook.css
new file mode 100644
index 0000000000000000000000000000000000000000..a29d6f57960eea1cb5cd15b23e55bbf9cff7e09b
--- /dev/null
+++ b/assets/css/codebook.css
@@ -0,0 +1,320 @@
+/* ============================================
+ Codebook Specific Styles
+ ============================================ */
+
+body {
+ padding: 20px;
+}
+
+.app {
+ max-width: 1200px;
+ display: grid;
+ grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
+ gap: 0;
+ background: linear-gradient(145deg, #020617, #020617);
+ border-radius: 24px;
+ border: 1px solid var(--border);
+ box-shadow: var(--shadow-soft);
+ overflow: hidden;
+ padding: 0;
+}
+
+@media (max-width: 900px) {
+ .app {
+ grid-template-columns: 1fr;
+ }
+}
+
+.sidebar {
+ border-right: 1px solid var(--border);
+ background: radial-gradient(circle at top left, #020617 0, #030712 60%);
+ padding: 18px 18px 16px;
+ display: flex;
+ flex-direction: column;
+ gap: 14px;
+}
+
+@media (max-width: 900px) {
+ .sidebar {
+ border-right: none;
+ border-bottom: 1px solid var(--border);
+ }
+}
+
+.app-title {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ gap: 12px;
+}
+
+.app-title h1 {
+ font-size: 18px;
+ letter-spacing: 0.02em;
+ margin: 0;
+}
+
+.app-title span {
+ display: inline-flex;
+ align-items: center;
+ gap: 6px;
+ padding: 4px 10px;
+ border-radius: 999px;
+ background: var(--accent-soft);
+ color: var(--accent);
+ font-size: 11px;
+ text-transform: uppercase;
+ letter-spacing: 0.09em;
+}
+
+.nav-links {
+ display: flex;
+ gap: 6px;
+ flex-wrap: wrap;
+}
+
+.search-box {
+ position: relative;
+}
+
+.search-box input {
+ padding: 8px 30px 8px 12px;
+ font-size: 13px;
+}
+
+.search-icon {
+ position: absolute;
+ right: 9px;
+ top: 50%;
+ transform: translateY(-50%);
+ font-size: 13px;
+ color: var(--text-muted);
+}
+
+.category-list {
+ margin-top: 8px;
+ padding: 0;
+ list-style: none;
+ overflow-y: auto;
+ min-height: 0;
+ flex: 1;
+}
+
+.category-item {
+ border-radius: var(--radius-sm);
+ padding: 8px 10px;
+ margin-bottom: 4px;
+ cursor: pointer;
+ border: 1px solid transparent;
+ transition: background 0.12s ease, border-color 0.12s ease, transform 0.05s ease;
+ display: flex;
+ flex-direction: column;
+ gap: 2px;
+}
+
+.category-item:hover {
+ background: rgba(15, 23, 42, 0.9);
+ border-color: #1e293b;
+ transform: translateY(-1px);
+}
+
+.category-item.active {
+ background: var(--accent-soft);
+ border-color: var(--accent);
+}
+
+.cat-name {
+ font-size: 13px;
+ font-weight: 600;
+}
+
+.cat-family {
+ font-size: 11px;
+ color: var(--text-muted);
+}
+
+.cat-meta {
+ margin-top: 2px;
+ font-size: 10px;
+ color: var(--text-muted);
+ display: flex;
+ justify-content: flex-end;
+ width: 100%;
+ text-align: right;
+}
+
+.main {
+ padding: 18px 20px 16px;
+ display: flex;
+ flex-direction: column;
+ gap: 16px;
+}
+
+.header-row h2 {
+ margin: 0;
+ font-size: 18px;
+}
+
+.tag-row {
+ display: flex;
+ gap: 6px;
+ flex-wrap: wrap;
+}
+
+.tag {
+ font-size: 10px;
+ padding: 3px 8px;
+ border-radius: 999px;
+ background: #020617;
+ border: 1px solid var(--border);
+ color: var(--text-muted);
+ text-transform: uppercase;
+ letter-spacing: 0.06em;
+}
+
+.tag.kind-safety {
+ border-color: #f97316;
+ color: #fed7aa;
+}
+
+.tag.kind-timing {
+ border-color: #22c55e;
+ color: #bbf7d0;
+}
+
+.tag.kind-effort {
+ border-color: #eab308;
+ color: #fef3c7;
+}
+
+.tag.kind-lowlevel {
+ border-color: #a855f7;
+ color: #e9d5ff;
+}
+
+.definition-card,
+.temporal-card,
+.video-card {
+ padding: 14px 14px 12px;
+}
+
+.definition-card p {
+ margin: 0 0 6px;
+ font-size: 13px;
+ line-height: 1.5;
+}
+
+.subheading {
+ font-size: 11px;
+ text-transform: uppercase;
+ letter-spacing: 0.12em;
+ color: var(--text-muted);
+ margin-bottom: 4px;
+}
+
+.bullet-list {
+ margin: 3px 0 0;
+ padding-left: 16px;
+ font-size: 12px;
+ color: var(--text-muted);
+}
+
+.temporal-grid {
+ display: grid;
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+ gap: 10px;
+}
+
+@media (max-width: 600px) {
+ .temporal-grid {
+ grid-template-columns: 1fr;
+ }
+}
+
+.temporal-block {
+ border-radius: 12px;
+ background: rgba(15, 23, 42, 0.9);
+ border: 1px solid var(--border);
+ padding: 8px 10px;
+ font-size: 12px;
+}
+
+.temporal-block strong {
+ display: block;
+ font-size: 11px;
+ text-transform: uppercase;
+ letter-spacing: 0.13em;
+ color: var(--text-muted);
+ margin-bottom: 2px;
+}
+
+.video-header {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ gap: 10px;
+ margin-bottom: 6px;
+}
+
+.video-header span {
+ font-size: 11px;
+ color: var(--text-muted);
+}
+
+.video-wrapper {
+ position: relative;
+ border-radius: 14px;
+ background: #020617;
+ border: 1px solid var(--border);
+ padding: 12px;
+}
+
+.video-grid {
+ display: grid;
+ gap: 12px;
+ grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
+}
+
+.video-item {
+ display: flex;
+ flex-direction: column;
+ gap: 6px;
+}
+
+.video-item video {
+ width: 100%;
+ border-radius: 12px;
+ border: 1px solid var(--border);
+ background: #000;
+ max-height: 240px;
+ object-fit: cover;
+}
+
+.video-label {
+ font-size: 11px;
+ color: var(--text-muted);
+ text-align: center;
+}
+
+.empty-video {
+ padding: 26px 14px;
+ text-align: center;
+ font-size: 13px;
+ color: var(--text-muted);
+}
+
+.hint {
+ font-size: 11px;
+ color: var(--text-muted);
+ margin-top: 6px;
+}
+
+.kbd {
+ display: inline-block;
+ border-radius: 4px;
+ border: 1px solid var(--border);
+ padding: 1px 5px;
+ font-size: 10px;
+ background: #020617;
+ margin: 0 1px;
+}
\ No newline at end of file
diff --git a/assets/css/homepage.css b/assets/css/homepage.css
new file mode 100644
index 0000000000000000000000000000000000000000..bd24588f7a75afde6e0a96224c439f354cb7e60e
--- /dev/null
+++ b/assets/css/homepage.css
@@ -0,0 +1,162 @@
+/* ============================================
+ Homepage Specific Styles
+ ============================================ */
+
+.home-body {
+ padding: 32px 18px;
+}
+
+.home-app {
+ max-width: 1200px;
+ gap: 28px;
+}
+
+.home-header {
+ display: flex;
+ gap: 24px;
+ justify-content: space-between;
+ align-items: flex-start;
+ flex-wrap: wrap;
+}
+
+.home-header h1 {
+ font-size: 28px;
+}
+
+.lead {
+ margin: 8px 0 0;
+ color: var(--text-muted);
+ max-width: 600px;
+ line-height: 1.4;
+}
+
+.header-actions {
+ display: flex;
+ gap: 10px;
+}
+
+.btn {
+ display: inline-flex;
+ align-items: center;
+ gap: 6px;
+ border-radius: 999px;
+ padding: 10px 18px;
+ font-size: 13px;
+ text-decoration: none;
+ border: 1px solid var(--accent);
+ color: var(--bg);
+ background: var(--accent);
+ font-weight: 600;
+}
+
+.btn.ghost {
+ background: transparent;
+ color: var(--accent);
+}
+
+.toolbar {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 16px;
+ align-items: center;
+ justify-content: space-between;
+}
+
+.search {
+ flex: 1;
+ min-width: 240px;
+ border-radius: 999px;
+ border: 1px solid var(--border);
+ background: rgba(15, 23, 42, 0.9);
+ display: flex;
+ align-items: center;
+ padding: 6px 14px;
+ color: var(--text-muted);
+}
+
+.search input {
+ flex: 1;
+ border: none;
+ background: transparent;
+ color: var(--text);
+ font-size: 14px;
+ outline: none;
+ padding: 6px;
+}
+
+.failure-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
+ gap: 18px;
+}
+
+.failure-card {
+ border-radius: var(--radius-lg);
+ border: 1px solid var(--border);
+ background: radial-gradient(circle at top left, #0b1120 0, #020617 60%);
+ padding: 16px;
+ display: flex;
+ flex-direction: column;
+ gap: 12px;
+ position: relative;
+ cursor: pointer;
+ transition: transform 0.15s ease, border-color 0.15s ease;
+}
+
+.failure-card:hover {
+ transform: translateY(-3px);
+ border-color: var(--accent);
+}
+
+.failure-card h3 {
+ margin: 0;
+ font-size: 16px;
+}
+
+.failure-card p {
+ margin: 0;
+ color: var(--text-muted);
+ font-size: 13px;
+ line-height: 1.4;
+}
+
+.meta-row {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 12px;
+ color: var(--text-muted);
+}
+
+.tooltip {
+ position: absolute;
+ inset: 0;
+ padding: 16px;
+ border-radius: var(--radius-lg);
+ background: rgba(2, 6, 23, 0.95);
+ border: 1px solid var(--accent);
+ opacity: 0;
+ pointer-events: none;
+ transition: opacity 0.15s ease;
+ font-size: 13px;
+ line-height: 1.5;
+}
+
+.failure-card:hover .tooltip {
+ opacity: 1;
+}
+
+.empty-state {
+ border-radius: 16px;
+ padding: 24px;
+ text-align: center;
+ border: 1px dashed #334155;
+ color: var(--text-muted);
+}
+
+@media (max-width: 640px) {
+ .header-actions {
+ width: 100%;
+ justify-content: flex-start;
+ }
+}
\ No newline at end of file
diff --git a/assets/css/shared.css b/assets/css/shared.css
new file mode 100644
index 0000000000000000000000000000000000000000..83ca45a5d904f6839ad712ddc0a13368bfde9de0
--- /dev/null
+++ b/assets/css/shared.css
@@ -0,0 +1,184 @@
+/* ============================================
+ Shared Theme Variables & Base Styles
+ ============================================ */
+
+:root {
+ --bg: #0f172a;
+ --bg-alt: #111827;
+ --card: #020617;
+ --accent: #38bdf8;
+ --accent-soft: rgba(56, 189, 248, 0.1);
+ --text: #e5e7eb;
+ --text-muted: #9ca3af;
+ --border: #1f2937;
+ --radius-lg: 18px;
+ --radius-sm: 12px;
+ --shadow-soft: 0 18px 40px rgba(15, 23, 42, 0.7);
+}
+
+* {
+ box-sizing: border-box;
+}
+
+body {
+ margin: 0;
+ min-height: 100vh;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
+ background: radial-gradient(circle at top left, #0f172a 0, #020617 55%);
+ color: var(--text);
+ display: flex;
+ align-items: stretch;
+ justify-content: center;
+}
+
+/* Common Components */
+.eyebrow {
+ text-transform: uppercase;
+ letter-spacing: 0.18em;
+ font-size: 11px;
+ color: var(--accent);
+ margin: 0 0 6px;
+}
+
+.nav-link {
+ font-size: 11px;
+ padding: 6px 10px;
+ border-radius: 999px;
+ border: 1px solid var(--border);
+ color: var(--text-muted);
+ text-decoration: none;
+ transition: all 0.12s ease;
+ display: inline-flex;
+ align-items: center;
+ gap: 4px;
+}
+
+.nav-link:hover {
+ background: rgba(15, 23, 42, 0.9);
+ border-color: var(--accent);
+ color: var(--accent);
+ transform: translateY(-1px);
+}
+
+.search-box {
+ flex: 1;
+ min-width: 260px;
+ position: relative;
+}
+
+.search-box input {
+ width: 100%;
+ border-radius: 999px;
+ border: 1px solid var(--border);
+ background: rgba(15, 23, 42, 0.9);
+ color: var(--text);
+ padding: 10px 42px 10px 16px;
+ font-size: 14px;
+ outline: none;
+}
+
+.search-box input::placeholder {
+ color: var(--text-muted);
+}
+
+.search-box span {
+ position: absolute;
+ right: 16px;
+ top: 50%;
+ transform: translateY(-50%);
+ color: var(--text-muted);
+ font-size: 14px;
+}
+
+.badge {
+ border-radius: 999px;
+ padding: 6px 12px;
+ border: 1px solid var(--accent);
+ background: var(--accent-soft);
+ color: var(--accent);
+ font-size: 12px;
+ font-weight: 600;
+}
+
+.pill {
+ font-size: 11px;
+ padding: 4px 8px;
+ border-radius: 999px;
+ border: 1px solid var(--border);
+ color: var(--text-muted);
+ cursor: default;
+}
+
+.pill.primary {
+ border-color: var(--accent);
+ color: var(--accent);
+ background: var(--accent-soft);
+}
+
+.pill-row {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 6px;
+}
+
+/* Card Styles */
+.card {
+ border-radius: var(--radius-lg);
+ border: 1px solid var(--border);
+ background: radial-gradient(circle at top left, #020617 0, #020617 60%);
+ padding: 16px;
+}
+
+.table-card {
+ border-radius: var(--radius-lg);
+ border: 1px solid var(--border);
+ background: radial-gradient(circle at top left, #020617 0, #020617 60%);
+ padding: 16px;
+ overflow-x: auto;
+}
+
+/* App Container */
+.app {
+ width: 100%;
+ max-width: 1200px;
+ background: rgba(2, 6, 23, 0.94);
+ border-radius: 28px;
+ border: 1px solid var(--border);
+ box-shadow: var(--shadow-soft);
+ padding: 28px;
+ display: flex;
+ flex-direction: column;
+ gap: 24px;
+}
+
+/* Header Row */
+.header-row {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 16px;
+ justify-content: space-between;
+ align-items: flex-start;
+}
+
+.header-row h1 {
+ margin: 0;
+ font-size: 26px;
+}
+
+.note {
+ color: var(--text-muted);
+ max-width: 640px;
+ line-height: 1.4;
+ margin-top: 6px;
+}
+
+/* Responsive */
+@media (max-width: 640px) {
+ body {
+ padding: 16px;
+ }
+
+ .app {
+ padding: 20px;
+ }
+}
\ No newline at end of file
diff --git a/assets/css/table.css b/assets/css/table.css
new file mode 100644
index 0000000000000000000000000000000000000000..a193137203b9d6f7b746af75577099f2b2f111f1
--- /dev/null
+++ b/assets/css/table.css
@@ -0,0 +1,101 @@
+/* ============================================
+ Table/Comparison Viewer Specific Styles
+ ============================================ */
+
+body {
+ padding: 24px;
+}
+
+.app {
+ max-width: 1400px;
+}
+
+.search-row {
+ display: flex;
+ align-items: center;
+ gap: 16px;
+ flex-wrap: wrap;
+}
+
+table {
+ border-collapse: separate;
+ border-spacing: 0;
+ width: 100%;
+ color: var(--text);
+ font-size: 13px;
+}
+
+th,
+td {
+ padding: 10px 12px;
+ border: 1px solid rgba(148, 163, 184, 0.15);
+ background: rgba(15, 23, 42, 0.35);
+}
+
+th {
+ background: rgba(56, 189, 248, 0.1);
+ color: var(--text);
+ text-transform: uppercase;
+ letter-spacing: 0.08em;
+ font-size: 11px;
+}
+
+tr:nth-child(even) td {
+ background: rgba(148, 163, 184, 0.08);
+}
+
+tr:hover td {
+ background: rgba(56, 189, 248, 0.05);
+}
+
+tr.group-border td {
+ border-top: 2px solid var(--accent);
+}
+
+.color-strip {
+ width: 4px;
+ border-radius: 2px;
+ margin-right: 8px;
+ flex-shrink: 0;
+ height: 100%;
+}
+
+.filename-wrapper {
+ display: flex;
+ align-items: center;
+}
+
+.video-cell {
+ padding: 8px;
+ max-width: 200px;
+}
+
+.video-cell video {
+ width: 100%;
+ max-width: 180px;
+ border-radius: 8px;
+ border: 1px solid var(--border);
+ background: #000;
+ display: block;
+}
+
+.video-cell video:hover {
+ border-color: var(--accent);
+}
+
+iframe.video-embed {
+ width: 320px;
+ height: 180px;
+ border-radius: 8px;
+ border: 1px solid var(--border);
+ background: #000;
+}
+
+@media (max-width: 640px) {
+ iframe.video-embed {
+ width: 100%;
+ max-width: 320px;
+ height: auto;
+ aspect-ratio: 16 / 9;
+ }
+}
\ No newline at end of file
diff --git a/assets/js/codebook.js b/assets/js/codebook.js
new file mode 100644
index 0000000000000000000000000000000000000000..107bcce7f5e2f653bac8ab105662892f0c0f7962
--- /dev/null
+++ b/assets/js/codebook.js
@@ -0,0 +1,390 @@
+// ---------- Configuration: update this object with your actual clips ----------
+
+const FAILURES = [
+ {
+ id: "safety-conflict",
+ name: "Safety Conflict",
+ family: "Safety / Physical interaction",
+ kindTags: ["safety"],
+ definition:
+ "Unintended physical contact between the participant and the robot that is not part of an intended handover or workspace layout.",
+ notes: [
+ "Includes bumps, blocking motions, and collisions that force the human to change their action.",
+ "Exclude deliberate, safe handovers or touches that are part of the designed interaction."
+ ],
+ onset: "First frame where human and robot body make unintended contact.",
+ offset:
+ "First frame after contact stops and no body part is touching the robot.",
+ examples: [
+ {
+ label: "Collision at shelf",
+ src: "../videos/0211.mp4"
+ }
+ ]
+ },
+ {
+ id: "safety-avoidance",
+ name: "Safety Avoidance",
+ family: "Safety / Near-contact",
+ kindTags: ["safety"],
+ definition:
+ "The participant visibly alters their motion to avoid potential contact with the robot, even though no contact occurs.",
+ notes: [
+ "Typical cues: pulling a hand back, yielding space, or pausing until the robot has moved away.",
+ "Exclude idle waiting driven by task uncertainty or expectation that the robot will act."
+ ],
+ onset:
+ "First frame where the avoidance motion begins because the robot is near.",
+ offset: "Treated as a point event at onset (no explicit offset).",
+ examples: [
+ {
+ label: "Human backs away from robot arm",
+ src: "../videos/0212.mp4"
+ }
+ ]
+ },
+ {
+ id: "passive-wait",
+ name: "Passive Wait",
+ family: "Temporal coordination",
+ kindTags: ["timing"],
+ definition:
+ "The participant is idle while the task could progress, deviating from the optimal pattern where both collaborators work in parallel.",
+ notes: [
+ "Includes waiting for the robot to finish a retrieval when an independent human action is available.",
+ "Exclude justified waits where no meaningful human action is possible."
+ ],
+ onset:
+ "First frame where the human becomes still and stops task-relevant motion while work is available.",
+ offset:
+ "First frame where the human resumes task-relevant action (e.g., reaching, moving an item).",
+ examples: [
+ {
+ label: "Human waits for robot to finish placing bottle",
+ src: "../videos/0213.mp4"
+ },
+ {
+ label: "Delayed start on second bottle",
+ src: "../videos/0221.mp4"
+ }
+ ]
+ },
+ {
+ id: "redundant-retrieval",
+ name: "Redundant Retrieval",
+ family: "Task efficiency",
+ kindTags: ["effort"],
+ definition:
+ "Duplicate retrieval of the same item by both agents, resulting in wasted effort.",
+ notes: [
+ "Typical pattern: both reach for the same bottle or box; the second retrieval is unnecessary.",
+ "Exclude cases where the second retrieval corrects an earlier error."
+ ],
+ onset:
+ "First frame where the second agent initiates the duplicate retrieval (reach or grasp toward an item already retrieved).",
+ offset: "Treated as a point event at initiation of the duplicate action.",
+ examples: [
+ {
+ label: "Both agents grab the same bottle",
+ src: "../videos/0222.mp4"
+ }
+ ]
+ },
+ {
+ id: "task-model-uncertainty",
+ name: "Task Model Uncertainty",
+ family: "High-level coordination",
+ kindTags: ["timing", "effort"],
+ definition:
+ "The participant appears unsure about what to do next because they do not fully understand or recall the task sequence.",
+ notes: [
+ "Includes hesitating with a box in the wrong location or looking between possible targets without acting.",
+ "Exclude waiting driven primarily by expectation that the robot will act (see Capability Miscalibration)."
+ ],
+ onset:
+ "First clear cue of uncertainty, such as the box remaining in a non-ready location or the hand hovering without committing.",
+ offset:
+ "Frame where the participant resolves the uncertainty by taking a concrete task action or clearly abandoning the attempt.",
+ examples: [
+ {
+ label: "Uncertain where to place the box",
+ src: "../videos/0223.mp4"
+ }
+ ]
+ },
+ {
+ id: "capability-miscalibration",
+ name: "Capability Miscalibration",
+ family: "High-level coordination",
+ kindTags: ["timing"],
+ definition:
+ "The participant overestimates or misunderstands the robot’s capabilities and waits for it to perform an action it cannot or will not perform.",
+ notes: [
+ "Example: human waits for the robot to verify or move the box to the ready area, then eventually moves it themselves.",
+ "Driven by incorrect beliefs about what the robot is responsible for."
+ ],
+ onset:
+ "First idle frame where the only apparent reason to wait is the expectation that the robot will perform the action.",
+ offset:
+ "First frame where the participant abandons that expectation and proceeds themselves (e.g., moves the box).",
+ examples: [
+ {
+ label: "Human expects robot to move box",
+ src: "../videos/0231.mp4"
+ }
+ ]
+ },
+ {
+ id: "missed-grab",
+ name: "Missed Grab",
+ family: "Low-level control",
+ kindTags: ["lowlevel"],
+ definition:
+ "The human or robot attempts to grasp a bottle but fails; the hand or gripper closes without securing the item.",
+ notes: [
+ "Requires a clear grasp attempt followed by failure to take control of the object.",
+ "Often followed by a corrective re-grasp."
+ ],
+ onset: "Frame where the hand or gripper closes without the bottle.",
+ offset:
+ "Frame where the agent begins the corrective action or repeats the grasp.",
+ examples: [
+ {
+ label: "Robot closes gripper on empty space",
+ src: "../videos/0232.mp4"
+ }
+ ]
+ },
+ {
+ id: "slippage",
+ name: "Slippage",
+ family: "Low-level control",
+ kindTags: ["lowlevel"],
+ definition:
+ "The bottle unintentionally slips out of the human’s or robot’s grasp during transport or manipulation.",
+ notes: [
+ "Includes full drops and partial slips that require recovery.",
+ "Exclude deliberate placement or release of the bottle."
+ ],
+ onset:
+ "First frame where the bottle starts to slip relative to the hand or gripper.",
+ offset:
+ "Frame where the bottle comes to rest or is successfully re-captured.",
+ examples: [
+ {
+ label: "Bottle dropped during handover",
+ src: "../videos/0233.mp4"
+ }
+ ]
+ }
+];
+
+// ---------- UI logic ----------
+
+let categoryList, searchInput, detailName, familyLabel, tagRow;
+let detailDefinition, detailNotes, detailOnset, detailOffset;
+let videoGrid, noVideoMessage;
+let activeId = null;
+
+function initElements() {
+ categoryList = document.getElementById("categoryList");
+ searchInput = document.getElementById("searchInput");
+ detailName = document.getElementById("detailName");
+ familyLabel = document.getElementById("familyLabel");
+ tagRow = document.getElementById("tagRow");
+ detailDefinition = document.getElementById("detailDefinition");
+ detailNotes = document.getElementById("detailNotes");
+ detailOnset = document.getElementById("detailOnset");
+ detailOffset = document.getElementById("detailOffset");
+ videoGrid = document.getElementById("videoGrid");
+ noVideoMessage = document.getElementById("noVideoMessage");
+}
+
+function kindToLabel(kind) {
+ switch (kind) {
+ case "safety":
+ return { text: "Safety", cls: "kind-safety" };
+ case "timing":
+ return { text: "Timing / Coordination", cls: "kind-timing" };
+ case "effort":
+ return { text: "Task Effort", cls: "kind-effort" };
+ case "lowlevel":
+ return { text: "Execution", cls: "kind-lowlevel" };
+ default:
+ return { text: "Other", cls: "" };
+ }
+}
+
+function renderSidebar(filter = "") {
+ categoryList.innerHTML = "";
+ const lower = filter.trim().toLowerCase();
+
+ FAILURES.forEach((f, idx) => {
+ const haystack = `${f.name} ${f.family}`.toLowerCase();
+ if (lower && !haystack.includes(lower)) return;
+
+ const li = document.createElement("li");
+ li.className = "category-item";
+ li.dataset.id = f.id;
+
+ if (activeId === null && idx === 0) {
+ activeId = f.id;
+ }
+ if (f.id === activeId) {
+ li.classList.add("active");
+ }
+
+ const name = document.createElement("div");
+ name.className = "cat-name";
+ name.textContent = f.name;
+
+ const fam = document.createElement("div");
+ fam.className = "cat-family";
+ fam.textContent = f.family;
+
+ const meta = document.createElement("div");
+ meta.className = "cat-meta";
+ meta.innerHTML =
+ `${f.kindTags.map(k => kindToLabel(k).text).join(" · ")} `;
+
+ li.appendChild(name);
+ li.appendChild(fam);
+ li.appendChild(meta);
+ li.addEventListener("click", () => {
+ activeId = f.id;
+ updateActiveCategory();
+ updateSidebarActive();
+ });
+ categoryList.appendChild(li);
+ });
+}
+
+function updateSidebarActive() {
+ [...categoryList.children].forEach(li => {
+ li.classList.toggle("active", li.dataset.id === activeId);
+ });
+}
+
+function updateActiveCategory() {
+ const f = FAILURES.find(x => x.id === activeId);
+ if (!f) return;
+
+ detailName.textContent = f.name;
+ familyLabel.textContent = f.family || "";
+
+ // tags
+ tagRow.innerHTML = "";
+ f.kindTags.forEach(kind => {
+ const info = kindToLabel(kind);
+ const t = document.createElement("div");
+ t.className = `tag ${info.cls ? "kind-" + kind : ""}`;
+ t.textContent = info.text;
+ tagRow.appendChild(t);
+ });
+
+ // definition and notes
+ detailDefinition.textContent = f.definition;
+ detailNotes.innerHTML = "";
+ (f.notes || []).forEach(n => {
+ const li = document.createElement("li");
+ li.textContent = n;
+ detailNotes.appendChild(li);
+ });
+
+ detailOnset.textContent = f.onset || "—";
+ detailOffset.textContent = f.offset || "—";
+
+ renderVideos(f.examples || []);
+}
+
+function renderVideos(examples) {
+ videoGrid.innerHTML = "";
+ const count = examples.length;
+
+ if (!count) {
+ videoGrid.style.display = "none";
+ noVideoMessage.style.display = "block";
+ return;
+ }
+
+ videoGrid.style.display = "grid";
+ noVideoMessage.style.display = "none";
+
+ examples.forEach((ex, idx) => {
+ const wrapper = document.createElement("div");
+ wrapper.className = "video-item";
+
+ const video = document.createElement("video");
+ video.src = ex.src;
+ video.controls = true;
+ video.loop = true;
+ video.muted = true;
+ video.autoplay = true;
+ video.playsInline = true;
+ video.preload = "metadata";
+ video.setAttribute("muted", "");
+ video.setAttribute("autoplay", "");
+
+ video.addEventListener("canplay", () => {
+ const playPromise = video.play();
+ if (playPromise) {
+ playPromise.catch(() => { });
+ }
+ });
+
+ const label = document.createElement("div");
+ label.className = "video-label";
+ label.textContent = ex.label || `Example ${idx + 1}`;
+
+ wrapper.appendChild(video);
+ wrapper.appendChild(label);
+ videoGrid.appendChild(wrapper);
+ });
+
+ // Ensure autoplay kick-starts even if canplay has already fired.
+ requestAnimationFrame(() => {
+ videoGrid.querySelectorAll("video").forEach(video => {
+ const playPromise = video.play();
+ if (playPromise) {
+ playPromise.catch(() => { });
+ }
+ });
+ });
+}
+
+function setupEventListeners() {
+ searchInput.addEventListener("input", e => {
+ renderSidebar(e.target.value);
+ updateActiveCategory();
+ });
+
+ document.addEventListener("keydown", e => {
+ if (!["ArrowLeft", "ArrowRight"].includes(e.key)) return;
+ const filteredIds = [...categoryList.children].map(li => li.dataset.id);
+ const idx = filteredIds.indexOf(activeId);
+ if (idx === -1) return;
+ const nextIdx =
+ e.key === "ArrowRight"
+ ? Math.min(filteredIds.length - 1, idx + 1)
+ : Math.max(0, idx - 1);
+ activeId = filteredIds[nextIdx];
+ updateActiveCategory();
+ updateSidebarActive();
+ });
+}
+
+// Initialize when DOM is ready
+if (document.readyState === 'loading') {
+ document.addEventListener('DOMContentLoaded', () => {
+ initElements();
+ setupEventListeners();
+ renderSidebar();
+ updateActiveCategory();
+ });
+} else {
+ initElements();
+ setupEventListeners();
+ renderSidebar();
+ updateActiveCategory();
+}
+
diff --git a/assets/js/homepage.js b/assets/js/homepage.js
new file mode 100644
index 0000000000000000000000000000000000000000..7ead20be1e7f4184cc622cf515da6b749025ee47
--- /dev/null
+++ b/assets/js/homepage.js
@@ -0,0 +1,143 @@
+const NEUTRAL_LABELS = new Set(["Time", "Success", "Failure"]);
+
+const FAILURE_DETAILS = {
+ "Safety Conflict":
+ "Unintended physical contact between the human and robot outside the designed workflow.",
+ "Safety Avoidance":
+ "Human visibly alters their trajectory to avoid potential contact with the robot.",
+ "Passive Wait":
+ "Human remains idle while useful work is available because they defer to the robot.",
+ "Redundant Retrieval":
+ "Both agents retrieve the same item, wasting effort through duplication.",
+ "Task Model Uncertainty":
+ "Human hesitates due to uncertainty about the next task step or target.",
+ "Capability Miscalibration":
+ "Human waits for a robot capability that does not exist or will not execute.",
+ "Missed Grab":
+ "Human or robot attempts to grasp an item but fails to secure it.",
+ Slippage:
+ "Bottle unintentionally slips from grasp during motion, requiring recovery."
+};
+
+const kindColors = {
+ Safety: "#f97316",
+ Timing: "#22c55e",
+ Effort: "#eab308",
+ Execution: "#a855f7"
+};
+
+const searchInput = document.getElementById("searchFail");
+const grid = document.getElementById("failureGrid");
+const emptyState = document.getElementById("emptyState");
+const totalCount = document.getElementById("totalCount");
+const videoCount = document.getElementById("videoCount");
+
+async function loadCSV() {
+ const response = await fetch("data/combined_rater_with_embed.csv?_=" + Date.now());
+ const text = await response.text();
+ return text
+ .trim()
+ .split("\n")
+ .map(line => line.split(","));
+}
+
+function formatLabel(label) {
+ return label
+ .split("_")
+ .map(piece => piece.charAt(0).toUpperCase() + piece.slice(1))
+ .join(" ");
+}
+
+function deriveKind(label) {
+ if (/safety/i.test(label)) return "Safety";
+ if (/tim|wait|uncertainty|capability/i.test(label)) return "Timing";
+ if (/effort|redundant/i.test(label)) return "Effort";
+ return "Execution";
+}
+
+function renderFailures(rows) {
+ const header = rows[0];
+ // CSV format: filename,video_id,embed_url,label,rater,start,end
+ const failures = new Map();
+
+ for (let i = 1; i < rows.length; i++) {
+ const [filename, video_id, embed_url, rawLabel, rater, start, end] = rows[i];
+ if (!rawLabel || NEUTRAL_LABELS.has(rawLabel.trim())) continue;
+ const label = rawLabel.trim();
+
+ if (!failures.has(label)) {
+ failures.set(label, {
+ label,
+ videos: new Set(),
+ occurrences: 0
+ });
+ }
+
+ const entry = failures.get(label);
+ entry.videos.add(filename);
+ // Count occurrences where start and end are provided
+ if (start && end && start !== "NA" && end !== "NA") {
+ entry.occurrences += 1;
+ }
+ }
+
+ const failureList = Array.from(failures.values()).sort((a, b) =>
+ a.label.localeCompare(b.label)
+ );
+
+ totalCount.textContent = `${failureList.length} failures`;
+ const totalVideos = failureList.reduce(
+ (sum, item) => sum + item.videos.size,
+ 0
+ );
+ videoCount.textContent = `${totalVideos} videos impacted`;
+
+ function applyFilter(term) {
+ const lower = term.trim().toLowerCase();
+ let any = false;
+ grid.innerHTML = "";
+
+ failureList.forEach(item => {
+ if (lower && !item.label.toLowerCase().includes(lower)) {
+ return;
+ }
+
+ any = true;
+ const pretty = formatLabel(item.label);
+ const kind = deriveKind(item.label);
+ const definition =
+ FAILURE_DETAILS[pretty] ||
+ FAILURE_DETAILS[item.label] ||
+ "No description recorded yet.";
+
+ const card = document.createElement("article");
+ card.className = "failure-card";
+ card.innerHTML = `
+
+ ${kind}
+ ${item.videos.size} videos
+
+ ${pretty}
+ ${definition}
+
+ ${definition}
+
+ `;
+ card.addEventListener("click", () => {
+ window.location.href = "codebook/codebook.html#" + encodeURIComponent(item.label);
+ });
+ grid.appendChild(card);
+ });
+
+ emptyState.hidden = any;
+ }
+
+ applyFilter("");
+ searchInput.addEventListener("input", e => applyFilter(e.target.value));
+}
+
+loadCSV().then(renderFailures).catch(err => {
+ grid.innerHTML = `Failed to load CSV: ${err.message}
`;
+ emptyState.hidden = true;
+});
+
diff --git a/codebook.html b/codebook.html
new file mode 100644
index 0000000000000000000000000000000000000000..644f2ef947102fd0a6e6d983f91f394c2957404a
--- /dev/null
+++ b/codebook.html
@@ -0,0 +1,101 @@
+
+
+
+
+
+ Human–Robot Collaboration Failure Codebook
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Definition
+
+ Click a failure type in the left panel to view its definition, temporal
+ coding rules, and example clips.
+
+
+
+
+
+ Temporal coding rules
+
+
+ Onset (start frame)
+
+ Onset instructions will appear here after you select a category.
+
+
+
+ Offset (end frame)
+
+ Offset instructions will appear here after you select a category.
+
+
+
+
+
+
+
+
+
+
+ No example clips configured for this category yet.
+ Add them in FAILURES in the page source.
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/combine_raters.py b/combine_raters.py
new file mode 100644
index 0000000000000000000000000000000000000000..5d2f3a48bbd904b9ce3d628c3e01eb91ab1da4ee
--- /dev/null
+++ b/combine_raters.py
@@ -0,0 +1,191 @@
+import pandas as pd
+import json
+import re
+
+# -----------------------------------------------------
+# CONFIG: Rater files mapping
+# -----------------------------------------------------
+RATER_FILES = {
+ "Vidhi": "data/Vidhi_50.csv",
+ "Grant": "data/Grant_50.csv",
+ "Amanuel": "data/Amanuel_50.csv"
+}
+
+OUTPUT_CSV = "combined_rater_with_embed.csv"
+
+
+def extract_video_id(filename):
+ """Extract numeric ID from filename '0111.mp4' → '0111'."""
+ m = re.match(r"(\d+)", filename)
+ return m.group(1) if m else None
+
+
+def parse_video_labels(field):
+ """Parse JSON-like videoLabels field."""
+ try:
+ items = json.loads(field)
+ except:
+ return []
+
+ out = []
+ for entry in items:
+ labels = entry.get("timelinelabels") or entry.get("timelineLabels") or []
+ ranges = entry.get("ranges") or []
+
+ if not labels or not ranges:
+ continue
+
+ label = labels[0]
+ for r in ranges:
+ out.append({
+ "label": label,
+ "start": r.get("start"),
+ "end": r.get("end")
+ })
+ return out
+
+
+records = []
+
+for rater_name, csv_path in RATER_FILES.items():
+ df = pd.read_csv(csv_path)
+
+ for _, row in df.iterrows():
+ filename = row["filename"]
+ vid_id = extract_video_id(filename)
+
+ # Local video file path
+ video_path = f"videos/{filename}"
+
+ labels = parse_video_labels(row["videoLabels"])
+
+ if not labels:
+ records.append({
+ "filename": filename,
+ "video_id": vid_id,
+ "video_path": video_path,
+ "label": None,
+ "rater": rater_name,
+ "start": None,
+ "end": None
+ })
+ else:
+ for lab in labels:
+ records.append({
+ "filename": filename,
+ "video_id": vid_id,
+ "video_path": video_path,
+ "label": lab["label"],
+ "rater": rater_name,
+ "start": lab["start"],
+ "end": lab["end"]
+ })
+
+combined = pd.DataFrame(records)
+combined.to_csv(OUTPUT_CSV, index=False)
+
+print(f"✅ CSV created → {OUTPUT_CSV}")
+
+
+
+# import pandas as pd
+# import json
+# import re
+# import os
+# from pathlib import Path
+
+# # -----------------------------------------------------
+# # CONFIG: Rater files mapping
+# # -----------------------------------------------------
+# RATER_FILES = {
+# "Vidhi": "Vidhi_50.csv",
+# "Grant": "Grant_50.csv",
+# "Amanuel": "Amanuel_50.csv"
+# }
+
+# # -----------------------------------------------------
+# # Mapping of video IDs to SharePoint UniqueIds for embed
+# # -----------------------------------------------------
+# VIDEO_GUID_MAP = {
+# "0111": "113fef3c-1567-4941-a655-d6bf6ce32a0b",
+# "0112": "8787ea09-b54e-4346-a6a2-c40e9c9c1ea4",
+# "0113": "03c0579a-a676-40ae-8f73-cc93d3099156",
+# # Add further mappings here:
+# # "0112": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
+# # "0113": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
+# }
+
+# # Base embed URL pattern
+# EMBED_URL_TEMPLATE = (
+# "https://usfedu.sharepoint.com/teams/RARELabGRP-robot-learning/"
+# "_layouts/15/embed.aspx?UniqueId={GUID}&embed=%7B%22ust%22%3Afalse%2C%22hv%22%3A%22CopyEmbedCode%22%7D"
+# )
+
+# OUTPUT_CSV = "combined_rater_with_embed.csv"
+
+
+# def extract_video_id(filename):
+# """
+# Extract numeric id from filename like '0111.mp4' → '0111'
+# """
+# m = re.match(r"(\d+)", filename)
+# return m.group(1) if m else None
+
+
+# def parse_video_labels(field):
+# """
+# Parse the videoLabels JSON-like field, return list of dicts:
+# { "label": ..., "start": ..., "end": ... }
+# """
+# try:
+# items = json.loads(field)
+# except:
+# return []
+# out = []
+# for entry in items:
+# labels = entry.get("timelinelabels") or entry.get("timelineLabels") or []
+# ranges = entry.get("ranges") or []
+# if not labels or not ranges:
+# continue
+# label = labels[0]
+# for r in ranges:
+# s = r.get("start")
+# e = r.get("end")
+# out.append({"label": label, "start": s, "end": e})
+# return out
+
+
+# records = []
+# for rater_name, csv_path in RATER_FILES.items():
+# df = pd.read_csv(csv_path)
+# for _, row in df.iterrows():
+# filename = row["filename"]
+# vid_id = extract_video_id(filename)
+# guid = VIDEO_GUID_MAP.get(vid_id)
+# embed_url = EMBED_URL_TEMPLATE.format(GUID=guid) if guid else ""
+# labels = parse_video_labels(row["videoLabels"])
+# if not labels:
+# records.append({
+# "filename": filename,
+# "video_id": vid_id,
+# "embed_url": embed_url,
+# "label": None,
+# "rater": rater_name,
+# "start": None,
+# "end": None
+# })
+# else:
+# for lab in labels:
+# records.append({
+# "filename": filename,
+# "video_id": vid_id,
+# "embed_url": embed_url,
+# "label": lab["label"],
+# "rater": rater_name,
+# "start": lab["start"],
+# "end": lab["end"]
+# })
+
+# combined = pd.DataFrame(records)
+# combined.to_csv(OUTPUT_CSV, index=False)
+# print(f"✅ Saved combined CSV with embed links → {OUTPUT_CSV}")
diff --git a/combined_rater_with_embed.csv b/combined_rater_with_embed.csv
new file mode 100644
index 0000000000000000000000000000000000000000..394b4d3558d88aa4c70ed327c5c01b220b7cc338
--- /dev/null
+++ b/combined_rater_with_embed.csv
@@ -0,0 +1,395 @@
+filename,video_id,video_path,label,rater,start,end
+0111.mp4,0111,videos/0111.mp4,Time,Vidhi,656,656
+0111.mp4,0111,videos/0111.mp4,Sucess,Vidhi,656,656
+0112.mp4,0112,videos/0112.mp4,Time,Vidhi,364,364
+0112.mp4,0112,videos/0112.mp4,Sucess,Vidhi,364,364
+0113.mp4,0113,videos/0113.mp4,Time,Vidhi,315,315
+0113.mp4,0113,videos/0113.mp4,Sucess,Vidhi,315,315
+0121.mp4,0121,videos/0121.mp4,Time,Vidhi,436,436
+0121.mp4,0121,videos/0121.mp4,Sucess,Vidhi,436,436
+0122.mp4,0122,videos/0122.mp4,Safety Conflict,Vidhi,237,251
+0122.mp4,0122,videos/0122.mp4,Time,Vidhi,448,448
+0122.mp4,0122,videos/0122.mp4,Sucess,Vidhi,448,448
+0123.mp4,0123,videos/0123.mp4,Passive Wait,Vidhi,7,187
+0123.mp4,0123,videos/0123.mp4,Safety Avoidance,Vidhi,236,236
+0123.mp4,0123,videos/0123.mp4,Time,Vidhi,411,411
+0123.mp4,0123,videos/0123.mp4,Sucess,Vidhi,411,411
+0131.mp4,0131,videos/0131.mp4,Missed Grab,Vidhi,234,980
+0131.mp4,0131,videos/0131.mp4,Passive Wait,Vidhi,6,1051
+0131.mp4,0131,videos/0131.mp4,Time,Vidhi,1160,1160
+0131.mp4,0131,videos/0131.mp4,Sucess,Vidhi,1160,1160
+0132.mp4,0132,videos/0132.mp4,Passive Wait,Vidhi,6,562
+0132.mp4,0132,videos/0132.mp4,Time,Vidhi,681,681
+0132.mp4,0132,videos/0132.mp4,Sucess,Vidhi,681,681
+0133.mp4,0133,videos/0133.mp4,Passive Wait,Vidhi,6,1059
+0133.mp4,0133,videos/0133.mp4,Slippage,Vidhi,207,619
+0133.mp4,0133,videos/0133.mp4,Lack Capability Reminder,Vidhi,1110,1110
+0133.mp4,0133,videos/0133.mp4,Time,Vidhi,1197,1197
+0133.mp4,0133,videos/0133.mp4,Sucess,Vidhi,1197,1197
+0211.mp4,0211,videos/0211.mp4,Time,Vidhi,263,263
+0211.mp4,0211,videos/0211.mp4,Sucess,Vidhi,263,263
+0212.mp4,0212,videos/0212.mp4,Time,Vidhi,447,447
+0212.mp4,0212,videos/0212.mp4,Sucess,Vidhi,447,447
+0213.mp4,0213,videos/0213.mp4,Missed Grab,Vidhi,355,509
+0213.mp4,0213,videos/0213.mp4,Time,Vidhi,641,641
+0213.mp4,0213,videos/0213.mp4,Sucess,Vidhi,641,641
+0221.mp4,0221,videos/0221.mp4,Passive Wait,Vidhi,7,307
+0221.mp4,0221,videos/0221.mp4,Missed Grab,Vidhi,107,152
+0221.mp4,0221,videos/0221.mp4,Time,Vidhi,360,360
+0221.mp4,0221,videos/0221.mp4,Sucess,Vidhi,360,360
+0222.mp4,0222,videos/0222.mp4,Passive Wait,Vidhi,6,380
+0222.mp4,0222,videos/0222.mp4,Time,Vidhi,466,466
+0222.mp4,0222,videos/0222.mp4,Sucess,Vidhi,466,466
+0223.mp4,0223,videos/0223.mp4,Passive Wait,Vidhi,6,374
+0223.mp4,0223,videos/0223.mp4,Time,Vidhi,441,441
+0223.mp4,0223,videos/0223.mp4,Sucess,Vidhi,441,441
+0231.mp4,0231,videos/0231.mp4,Passive Wait,Vidhi,6,366
+0231.mp4,0231,videos/0231.mp4,Time,Vidhi,409,409
+0231.mp4,0231,videos/0231.mp4,Sucess,Vidhi,409,409
+0232.mp4,0232,videos/0232.mp4,Passive Wait,Vidhi,6,537
+0232.mp4,0232,videos/0232.mp4,Time,Vidhi,605,605
+0232.mp4,0232,videos/0232.mp4,Sucess,Vidhi,605,605
+0233.mp4,0233,videos/0233.mp4,Missed Grab,Vidhi,151,322
+0233.mp4,0233,videos/0233.mp4,Time,Vidhi,770,770
+0233.mp4,0233,videos/0233.mp4,Failure,Vidhi,770,770
+0311.mp4,0311,videos/0311.mp4,Time,Vidhi,381,381
+0311.mp4,0311,videos/0311.mp4,Sucess,Vidhi,381,381
+0312.mp4,0312,videos/0312.mp4,Missed Grab,Vidhi,354,789
+0312.mp4,0312,videos/0312.mp4,Passive Wait,Vidhi,7,1042
+0312.mp4,0312,videos/0312.mp4,Time,Vidhi,1092,1092
+0312.mp4,0312,videos/0312.mp4,Sucess,Vidhi,1092,1092
+0313.mp4,0313,videos/0313.mp4,Passive Wait,Vidhi,6,676
+0313.mp4,0313,videos/0313.mp4,Time,Vidhi,728,728
+0313.mp4,0313,videos/0313.mp4,Sucess,Vidhi,728,728
+0321.mp4,0321,videos/0321.mp4,Passive Wait,Vidhi,6,388
+0321.mp4,0321,videos/0321.mp4,Time,Vidhi,450,450
+0321.mp4,0321,videos/0321.mp4,Sucess,Vidhi,450,450
+0322.mp4,0322,videos/0322.mp4,Passive Wait,Vidhi,6,393
+0322.mp4,0322,videos/0322.mp4,Time,Vidhi,474,474
+0322.mp4,0322,videos/0322.mp4,Sucess,Vidhi,474,474
+0323.mp4,0323,videos/0323.mp4,Passive Wait,Vidhi,6,367
+0323.mp4,0323,videos/0323.mp4,Time,Vidhi,427,427
+0323.mp4,0323,videos/0323.mp4,Sucess,Vidhi,427,427
+0331.mp4,0331,videos/0331.mp4,Passive Wait,Vidhi,6,276
+0331.mp4,0331,videos/0331.mp4,Time,Vidhi,477,477
+0331.mp4,0331,videos/0331.mp4,Sucess,Vidhi,477,477
+0332.mp4,0332,videos/0332.mp4,Passive Wait,Vidhi,6,189
+0332.mp4,0332,videos/0332.mp4,Time,Vidhi,293,293
+0332.mp4,0332,videos/0332.mp4,Sucess,Vidhi,293,293
+0333.mp4,0333,videos/0333.mp4,Missed Grab,Vidhi,144,338
+0333.mp4,0333,videos/0333.mp4,Passive Wait,Vidhi,6,310
+0333.mp4,0333,videos/0333.mp4,Time,Vidhi,484,484
+0333.mp4,0333,videos/0333.mp4,Sucess,Vidhi,484,484
+0411.mp4,0411,videos/0411.mp4,Passive Wait,Vidhi,163,1162
+0411.mp4,0411,videos/0411.mp4,Missed Grab,Vidhi,395,903
+0411.mp4,0411,videos/0411.mp4,Time,Vidhi,1214,1214
+0411.mp4,0411,videos/0411.mp4,Sucess,Vidhi,1214,1214
+0412.mp4,0412,videos/0412.mp4,Time,Vidhi,380,380
+0412.mp4,0412,videos/0412.mp4,Sucess,Vidhi,380,380
+0413.mp4,0413,videos/0413.mp4,Time,Vidhi,917,917
+0413.mp4,0413,videos/0413.mp4,Sucess,Vidhi,917,917
+0421.mp4,0421,videos/0421.mp4,Passive Wait,Vidhi,6,113
+0421.mp4,0421,videos/0421.mp4,Sucess,Vidhi,399,399
+0421.mp4,0421,videos/0421.mp4,Time,Vidhi,399,399
+0422.mp4,0422,videos/0422.mp4,Time,Vidhi,833,833
+0422.mp4,0422,videos/0422.mp4,Failure,Vidhi,833,833
+0423.mp4,0423,videos/0423.mp4,Passive Wait,Vidhi,7,374
+0423.mp4,0423,videos/0423.mp4,Time,Vidhi,412,412
+0423.mp4,0423,videos/0423.mp4,Sucess,Vidhi,412,412
+0431.mp4,0431,videos/0431.mp4,Missed Grab,Vidhi,186,498
+0431.mp4,0431,videos/0431.mp4,Safety Conflict,Vidhi,423,472
+0431.mp4,0431,videos/0431.mp4,Passive Wait,Vidhi,7,536
+0431.mp4,0431,videos/0431.mp4,Time,Vidhi,690,690
+0431.mp4,0431,videos/0431.mp4,Sucess,Vidhi,690,690
+0432.mp4,0432,videos/0432.mp4,Time,Vidhi,294,294
+0432.mp4,0432,videos/0432.mp4,Sucess,Vidhi,294,294
+0433.mp4,0433,videos/0433.mp4,Passive Wait,Vidhi,6,444
+0433.mp4,0433,videos/0433.mp4,Time,Vidhi,72,444
+0433.mp4,0433,videos/0433.mp4,Failure,Vidhi,444,444
+0511.mp4,0511,videos/0511.mp4,Safety Avoidance,Vidhi,542,542
+0511.mp4,0511,videos/0511.mp4,Time,Vidhi,675,675
+0511.mp4,0511,videos/0511.mp4,Sucess,Vidhi,675,675
+0512.mp4,0512,videos/0512.mp4,Time,Vidhi,666,666
+0512.mp4,0512,videos/0512.mp4,Sucess,Vidhi,666,666
+0513.mp4,0513,videos/0513.mp4,Time,Vidhi,505,505
+0513.mp4,0513,videos/0513.mp4,Sucess,Vidhi,505,505
+0521.mp4,0521,videos/0521.mp4,Passive Wait,Vidhi,1,603
+0521.mp4,0521,videos/0521.mp4,Time,Vidhi,613,613
+0521.mp4,0521,videos/0521.mp4,Failure,Vidhi,613,613
+0522.mp4,0522,videos/0522.mp4,Passive Wait,Vidhi,6,366
+0522.mp4,0522,videos/0522.mp4,Time,Vidhi,414,414
+0522.mp4,0522,videos/0522.mp4,Sucess,Vidhi,414,414
+0523.mp4,0523,videos/0523.mp4,Missed Grab,Vidhi,152,571
+0523.mp4,0523,videos/0523.mp4,Passive Wait,Vidhi,6,919
+0523.mp4,0523,videos/0523.mp4,Time,Vidhi,994,994
+0523.mp4,0523,videos/0523.mp4,Sucess,Vidhi,994,994
+0531.mp4,0531,videos/0531.mp4,Passive Wait,Vidhi,6,594
+0531.mp4,0531,videos/0531.mp4,Time,Vidhi,612,612
+0531.mp4,0531,videos/0531.mp4,Failure,Vidhi,612,612
+0532.mp4,0532,videos/0532.mp4,Passive Wait,Vidhi,6,615
+0532.mp4,0532,videos/0532.mp4,Time,Vidhi,639,639
+0532.mp4,0532,videos/0532.mp4,Failure,Vidhi,639,639
+0533.mp4,0533,videos/0533.mp4,Time,Vidhi,337,337
+0533.mp4,0533,videos/0533.mp4,Failure,Vidhi,72,72
+0611.mp4,0611,videos/0611.mp4,Missed Grab,Vidhi,440,629
+0611.mp4,0611,videos/0611.mp4,Time,Vidhi,764,764
+0611.mp4,0611,videos/0611.mp4,Sucess,Vidhi,764,764
+0612.mp4,0612,videos/0612.mp4,Passive Wait,Vidhi,6,209
+0612.mp4,0612,videos/0612.mp4,Time,Vidhi,305,305
+0612.mp4,0612,videos/0612.mp4,Sucess,Vidhi,305,305
+0613.mp4,0613,videos/0613.mp4,Passive Wait,Vidhi,6,218
+0613.mp4,0613,videos/0613.mp4,Sucess,Vidhi,267,267
+0613.mp4,0613,videos/0613.mp4,Time,Vidhi,267,267
+0621.mp4,0621,videos/0621.mp4,Passive Wait,Vidhi,7,271
+0621.mp4,0621,videos/0621.mp4,Time,Vidhi,373,373
+0621.mp4,0621,videos/0621.mp4,Sucess,Vidhi,373,373
+0622.mp4,0622,videos/0622.mp4,Passive Wait,Vidhi,6,360
+0622.mp4,0622,videos/0622.mp4,Time,Vidhi,426,426
+0622.mp4,0622,videos/0622.mp4,Sucess,Vidhi,426,426
+0111.mp4,0111,videos/0111.mp4,Time,Grant,686,686
+0111.mp4,0111,videos/0111.mp4,Sucess,Grant,686,686
+0112.mp4,0112,videos/0112.mp4,Sucess,Grant,376,376
+0112.mp4,0112,videos/0112.mp4,Time,Grant,376,376
+0113.mp4,0113,videos/0113.mp4,Time,Grant,339,339
+0113.mp4,0113,videos/0113.mp4,Sucess,Grant,339,339
+0121.mp4,0121,videos/0121.mp4,Time,Grant,475,475
+0121.mp4,0121,videos/0121.mp4,Sucess,Grant,475,475
+0122.mp4,0122,videos/0122.mp4,Safety Avoidance,Grant,215,255
+0122.mp4,0122,videos/0122.mp4,Time,Grant,448,448
+0122.mp4,0122,videos/0122.mp4,Sucess,Grant,448,448
+0123.mp4,0123,videos/0123.mp4,Time,Grant,394,394
+0123.mp4,0123,videos/0123.mp4,Sucess,Grant,394,394
+0131.mp4,0131,videos/0131.mp4,Time,Grant,1,1189
+0131.mp4,0131,videos/0131.mp4,Missed Grab,Grant,247,945
+0131.mp4,0131,videos/0131.mp4,Drop Out of Box,Grant,409,409
+0132.mp4,0132,videos/0132.mp4,Time,Grant,1,718
+0132.mp4,0132,videos/0132.mp4,Passive Wait,Grant,1,564
+0133.mp4,0133,videos/0133.mp4,Time,Grant,1,1253
+0133.mp4,0133,videos/0133.mp4,Passive Wait,Grant,1,1062
+0133.mp4,0133,videos/0133.mp4,Slippage,Grant,211,471
+0211.mp4,0211,videos/0211.mp4,Failure,Grant,262,262
+0211.mp4,0211,videos/0211.mp4,Time,Grant,262,262
+0212.mp4,0212,videos/0212.mp4,Time,Grant,469,469
+0212.mp4,0212,videos/0212.mp4,Sucess,Grant,469,469
+0213.mp4,0213,videos/0213.mp4,Slippage,Grant,337,337
+0213.mp4,0213,videos/0213.mp4,Missed Grab,Grant,337,337
+0213.mp4,0213,videos/0213.mp4,Time,Grant,659,659
+0213.mp4,0213,videos/0213.mp4,Sucess,Grant,659,659
+0221.mp4,0221,videos/0221.mp4,Time,Grant,391,391
+0221.mp4,0221,videos/0221.mp4,Sucess,Grant,391,391
+0222.mp4,0222,videos/0222.mp4,Failure,Grant,465,465
+0222.mp4,0222,videos/0222.mp4,Time,Grant,465,465
+0223.mp4,0223,videos/0223.mp4,Time,Grant,462,462
+0223.mp4,0223,videos/0223.mp4,Sucess,Grant,462,462
+0231.mp4,0231,videos/0231.mp4,Sucess,Grant,1,1
+0231.mp4,0231,videos/0231.mp4,Time,Grant,1,444
+0231.mp4,0231,videos/0231.mp4,Passive Wait,Grant,1,369
+0232.mp4,0232,videos/0232.mp4,Sucess,Grant,2,2
+0232.mp4,0232,videos/0232.mp4,Time,Grant,2,647
+0232.mp4,0232,videos/0232.mp4,Passive Wait,Grant,1,539
+0233.mp4,0233,videos/0233.mp4,Sucess,Grant,1,1
+0233.mp4,0233,videos/0233.mp4,Time,Grant,1,808
+0233.mp4,0233,videos/0233.mp4,Passive Wait,Grant,1,747
+0233.mp4,0233,videos/0233.mp4,Missed Grab,Grant,149,327
+0311.mp4,0311,videos/0311.mp4,Sucess,Grant,404,404
+0311.mp4,0311,videos/0311.mp4,Time,Grant,404,404
+0312.mp4,0312,videos/0312.mp4,Missed Grab,Grant,322,750
+0312.mp4,0312,videos/0312.mp4,Passive Wait,Grant,1,1043
+0312.mp4,0312,videos/0312.mp4,Sucess,Grant,1108,1108
+0312.mp4,0312,videos/0312.mp4,Time,Grant,1108,1108
+0313.mp4,0313,videos/0313.mp4,Passive Wait,Grant,1,677
+0313.mp4,0313,videos/0313.mp4,Sucess,Grant,755,755
+0313.mp4,0313,videos/0313.mp4,Time,Grant,755,755
+0321.mp4,0321,videos/0321.mp4,Sucess,Grant,465,465
+0321.mp4,0321,videos/0321.mp4,Time,Grant,465,465
+0322.mp4,0322,videos/0322.mp4,Time,Grant,495,495
+0322.mp4,0322,videos/0322.mp4,Sucess,Grant,495,495
+0323.mp4,0323,videos/0323.mp4,Sucess,Grant,445,445
+0323.mp4,0323,videos/0323.mp4,Time,Grant,445,445
+0331.mp4,0331,videos/0331.mp4,Time,Grant,1,503
+0331.mp4,0331,videos/0331.mp4,Sucess,Grant,1,1
+0331.mp4,0331,videos/0331.mp4,Passive Wait,Grant,1,278
+0332.mp4,0332,videos/0332.mp4,Sucess,Grant,1,1
+0332.mp4,0332,videos/0332.mp4,Time,Grant,1,328
+0333.mp4,0333,videos/0333.mp4,Time,Grant,1,497
+0333.mp4,0333,videos/0333.mp4,Sucess,Grant,1,1
+0333.mp4,0333,videos/0333.mp4,Passive Wait,Grant,1,313
+0333.mp4,0333,videos/0333.mp4,Missed Grab,Grant,142,350
+0411.mp4,0411,videos/0411.mp4,Passive Wait,Grant,1,1162
+0411.mp4,0411,videos/0411.mp4,Sucess,Grant,1224,1224
+0411.mp4,0411,videos/0411.mp4,Time,Grant,1224,1224
+0412.mp4,0412,videos/0412.mp4,Sucess,Grant,406,406
+0412.mp4,0412,videos/0412.mp4,Time,Grant,406,406
+0413.mp4,0413,videos/0413.mp4,Sucess,Grant,944,944
+0413.mp4,0413,videos/0413.mp4,Time,Grant,944,944
+0413.mp4,0413,videos/0413.mp4,Lack Test Guidance,Grant,1,250
+0421.mp4,0421,videos/0421.mp4,Safety Avoidance,Grant,197,210
+0421.mp4,0421,videos/0421.mp4,Lack Test Guidance,Grant,398,398
+0421.mp4,0421,videos/0421.mp4,Failure,Grant,398,398
+0421.mp4,0421,videos/0421.mp4,Time,Grant,398,398
+0422.mp4,0422,videos/0422.mp4,Drop Out of Box,Grant,267,267
+0422.mp4,0422,videos/0422.mp4,Lack Test Guidance,Grant,711,711
+0422.mp4,0422,videos/0422.mp4,Failure,Grant,885,885
+0422.mp4,0422,videos/0422.mp4,Time,Grant,885,885
+0423.mp4,0423,videos/0423.mp4,Passive Wait,Grant,1,374
+0423.mp4,0423,videos/0423.mp4,Time,Grant,432,432
+0423.mp4,0423,videos/0423.mp4,Sucess,Grant,432,432
+0431.mp4,0431,videos/0431.mp4,Passive Wait,Grant,1,541
+0431.mp4,0431,videos/0431.mp4,Time,Grant,1,699
+0431.mp4,0431,videos/0431.mp4,Sucess,Grant,1,1
+0431.mp4,0431,videos/0431.mp4,Missed Grab,Grant,191,505
+0432.mp4,0432,videos/0432.mp4,Time,Grant,328,328
+0432.mp4,0432,videos/0432.mp4,Sucess,Grant,328,328
+0433.mp4,0433,videos/0433.mp4,Lack Test Guidance,Grant,1,444
+0511.mp4,0511,videos/0511.mp4,Sucess,Grant,685,685
+0511.mp4,0511,videos/0511.mp4,Time,Grant,685,685
+0511.mp4,0511,videos/0511.mp4,Lack Capability Reminder,Grant,590,590
+0512.mp4,0512,videos/0512.mp4,Time,Grant,674,674
+0512.mp4,0512,videos/0512.mp4,Sucess,Grant,674,674
+0513.mp4,0513,videos/0513.mp4,Time,Grant,514,514
+0513.mp4,0513,videos/0513.mp4,Sucess,Grant,514,514
+0521.mp4,0521,videos/0521.mp4,Time,Grant,619,619
+0521.mp4,0521,videos/0521.mp4,Sucess,Grant,619,619
+0522.mp4,0522,videos/0522.mp4,Passive Wait,Grant,1,366
+0522.mp4,0522,videos/0522.mp4,Time,Grant,418,418
+0522.mp4,0522,videos/0522.mp4,Sucess,Grant,418,418
+0523.mp4,0523,videos/0523.mp4,Missed Grab,Grant,164,164
+0523.mp4,0523,videos/0523.mp4,Missed Grab,Grant,297,297
+0523.mp4,0523,videos/0523.mp4,Missed Grab,Grant,376,376
+0523.mp4,0523,videos/0523.mp4,Missed Grab,Grant,494,494
+0523.mp4,0523,videos/0523.mp4,Passive Wait,Grant,1,923
+0523.mp4,0523,videos/0523.mp4,Time,Grant,1010,1010
+0523.mp4,0523,videos/0523.mp4,Sucess,Grant,1010,1010
+0531.mp4,0531,videos/0531.mp4,Time,Grant,629,629
+0531.mp4,0531,videos/0531.mp4,Sucess,Grant,629,629
+0532.mp4,0532,videos/0532.mp4,Time,Grant,663,663
+0532.mp4,0532,videos/0532.mp4,Sucess,Grant,663,663
+0533.mp4,0533,videos/0533.mp4,Failure,Grant,337,337
+0533.mp4,0533,videos/0533.mp4,Time,Grant,337,337
+0611.mp4,0611,videos/0611.mp4,Safety Avoidance,Grant,54,136
+0611.mp4,0611,videos/0611.mp4,Time,Grant,777,777
+0611.mp4,0611,videos/0611.mp4,Sucess,Grant,777,777
+0612.mp4,0612,videos/0612.mp4,Time,Grant,320,320
+0612.mp4,0612,videos/0612.mp4,Sucess,Grant,320,320
+0613.mp4,0613,videos/0613.mp4,Time,Grant,292,292
+0613.mp4,0613,videos/0613.mp4,Sucess,Grant,292,292
+0621.mp4,0621,videos/0621.mp4,Time,Grant,380,380
+0621.mp4,0621,videos/0621.mp4,Sucess,Grant,380,380
+0622.mp4,0622,videos/0622.mp4,Time,Grant,431,431
+0622.mp4,0622,videos/0622.mp4,Sucess,Grant,431,431
+0111.mp4,0111,videos/0111.mp4,Time,Amanuel,701,701
+0111.mp4,0111,videos/0111.mp4,Sucess,Amanuel,190,190
+0112.mp4,0112,videos/0112.mp4,Time,Amanuel,388,388
+0112.mp4,0112,videos/0112.mp4,Sucess,Amanuel,2,2
+0113.mp4,0113,videos/0113.mp4,Time,Amanuel,369,369
+0113.mp4,0113,videos/0113.mp4,Failure,Amanuel,4,4
+0113.mp4,0113,videos/0113.mp4,Redundant Retrieval,Amanuel,100,100
+0121.mp4,0121,videos/0121.mp4,Time,Amanuel,459,459
+0121.mp4,0121,videos/0121.mp4,Sucess,Amanuel,442,442
+0122.mp4,0122,videos/0122.mp4,Safety Avoidance,Amanuel,200,200
+0122.mp4,0122,videos/0122.mp4,Time,Amanuel,448,448
+0122.mp4,0122,videos/0122.mp4,Sucess,Amanuel,2,2
+0123.mp4,0123,videos/0123.mp4,Time,Amanuel,461,461
+0123.mp4,0123,videos/0123.mp4,Sucess,Amanuel,2,2
+0131.mp4,0131,videos/0131.mp4,Time,Amanuel,1179,1179
+0131.mp4,0131,videos/0131.mp4,Sucess,Amanuel,3,3
+0131.mp4,0131,videos/0131.mp4,Missed Grab,Amanuel,190,280
+0132.mp4,0132,videos/0132.mp4,Time,Amanuel,698,698
+0132.mp4,0132,videos/0132.mp4,Redundant Retrieval,Amanuel,600,600
+0132.mp4,0132,videos/0132.mp4,Failure,Amanuel,3,3
+0133.mp4,0133,videos/0133.mp4,Time,Amanuel,1261,1261
+0133.mp4,0133,videos/0133.mp4,Sucess,Amanuel,2,2
+0133.mp4,0133,videos/0133.mp4,Slippage,Amanuel,180,247
+0211.mp4,0211,videos/0211.mp4,Redundant Retrieval,Amanuel,1,1
+0211.mp4,0211,videos/0211.mp4,Failure,Amanuel,5,5
+0212.mp4,0212,videos/0212.mp4,Redundant Retrieval,Amanuel,100,100
+0212.mp4,0212,videos/0212.mp4,Failure,Amanuel,3,3
+0213.mp4,0213,videos/0213.mp4,Time,Amanuel,667,667
+0213.mp4,0213,videos/0213.mp4,Sucess,Amanuel,3,3
+0221.mp4,0221,videos/0221.mp4,Time,Amanuel,387,387
+0221.mp4,0221,videos/0221.mp4,Sucess,Amanuel,3,3
+0222.mp4,0222,videos/0222.mp4,Passive Wait,Amanuel,1,422
+0222.mp4,0222,videos/0222.mp4,Time,Amanuel,466,466
+0222.mp4,0222,videos/0222.mp4,Sucess,Amanuel,3,3
+0223.mp4,0223,videos/0223.mp4,Time,Amanuel,516,516
+0223.mp4,0223,videos/0223.mp4,Sucess,Amanuel,9,9
+0223.mp4,0223,videos/0223.mp4,Passive Wait,Amanuel,1,381
+0231.mp4,0231,videos/0231.mp4,Passive Wait,Amanuel,1,380
+0231.mp4,0231,videos/0231.mp4,Time,Amanuel,437,437
+0231.mp4,0231,videos/0231.mp4,Sucess,Amanuel,19,19
+0232.mp4,0232,videos/0232.mp4,Passive Wait,Amanuel,1,549
+0232.mp4,0232,videos/0232.mp4,Time,Amanuel,644,644
+0232.mp4,0232,videos/0232.mp4,Sucess,Amanuel,6,6
+0233.mp4,0233,videos/0233.mp4,Missed Grab,Amanuel,60,194
+0233.mp4,0233,videos/0233.mp4,Time,Amanuel,805,805
+0233.mp4,0233,videos/0233.mp4,Sucess,Amanuel,27,27
+0311.mp4,0311,videos/0311.mp4,Time,Amanuel,468,468
+0311.mp4,0311,videos/0311.mp4,Sucess,Amanuel,30,30
+0312.mp4,0312,videos/0312.mp4,Time,Amanuel,1116,1116
+0312.mp4,0312,videos/0312.mp4,Sucess,Amanuel,1105,1105
+0313.mp4,0313,videos/0313.mp4,Time,Amanuel,773,773
+0313.mp4,0313,videos/0313.mp4,Sucess,Amanuel,25,25
+0321.mp4,0321,videos/0321.mp4,Passive Wait,Amanuel,1,403
+0321.mp4,0321,videos/0321.mp4,Time,Amanuel,530,530
+0321.mp4,0321,videos/0321.mp4,Sucess,Amanuel,17,17
+0322.mp4,0322,videos/0322.mp4,Passive Wait,Amanuel,1,401
+0322.mp4,0322,videos/0322.mp4,Time,Amanuel,497,497
+0322.mp4,0322,videos/0322.mp4,Sucess,Amanuel,24,24
+0323.mp4,0323,videos/0323.mp4,Passive Wait,Amanuel,1,374
+0323.mp4,0323,videos/0323.mp4,Time,Amanuel,442,442
+0323.mp4,0323,videos/0323.mp4,Sucess,Amanuel,19,19
+0331.mp4,0331,videos/0331.mp4,Passive Wait,Amanuel,1,385
+0331.mp4,0331,videos/0331.mp4,Time,Amanuel,505,505
+0331.mp4,0331,videos/0331.mp4,Sucess,Amanuel,8,8
+0332.mp4,0332,videos/0332.mp4,Failure,Amanuel,8,8
+0332.mp4,0332,videos/0332.mp4,Redundant Retrieval,Amanuel,174,174
+0333.mp4,0333,videos/0333.mp4,Redundant Retrieval,Amanuel,300,300
+0333.mp4,0333,videos/0333.mp4,Failure,Amanuel,4,4
+0411.mp4,0411,videos/0411.mp4,Time,Amanuel,1250,1250
+0411.mp4,0411,videos/0411.mp4,Sucess,Amanuel,4,4
+0412.mp4,0412,videos/0412.mp4,Time,Amanuel,409,409
+0412.mp4,0412,videos/0412.mp4,Sucess,Amanuel,23,23
+0413.mp4,0413,videos/0413.mp4,Time,Amanuel,952,952
+0413.mp4,0413,videos/0413.mp4,Sucess,Amanuel,16,16
+0421.mp4,0421,videos/0421.mp4,Time,Amanuel,399,399
+0421.mp4,0421,videos/0421.mp4,Sucess,Amanuel,15,15
+0422.mp4,0422,videos/0422.mp4,Failure,Amanuel,8,8
+0422.mp4,0422,videos/0422.mp4,Drop Out of Box,Amanuel,745,745
+0423.mp4,0423,videos/0423.mp4,Time,Amanuel,443,443
+0423.mp4,0423,videos/0423.mp4,Sucess,Amanuel,10,10
+0431.mp4,0431,videos/0431.mp4,Time,Amanuel,713,713
+0431.mp4,0431,videos/0431.mp4,Missed Grab,Amanuel,185,230
+0431.mp4,0431,videos/0431.mp4,Sucess,Amanuel,12,12
+0432.mp4,0432,videos/0432.mp4,Redundant Retrieval,Amanuel,100,100
+0432.mp4,0432,videos/0432.mp4,Failure,Amanuel,6,6
+0433.mp4,0433,videos/0433.mp4,Failure,Amanuel,387,387
+0511.mp4,0511,videos/0511.mp4,Time,Amanuel,701,701
+0511.mp4,0511,videos/0511.mp4,Sucess,Amanuel,152,152
+0512.mp4,0512,videos/0512.mp4,Redundant Retrieval,Amanuel,529,529
+0512.mp4,0512,videos/0512.mp4,Failure,Amanuel,6,6
+0513.mp4,0513,videos/0513.mp4,Redundant Retrieval,Amanuel,401,401
+0513.mp4,0513,videos/0513.mp4,Failure,Amanuel,12,12
+0521.mp4,0521,videos/0521.mp4,Time,Amanuel,626,626
+0521.mp4,0521,videos/0521.mp4,Sucess,Amanuel,10,10
+0522.mp4,0522,videos/0522.mp4,Time,Amanuel,432,432
+0522.mp4,0522,videos/0522.mp4,Sucess,Amanuel,20,20
+0523.mp4,0523,videos/0523.mp4,Missed Grab,Amanuel,400,500
+0523.mp4,0523,videos/0523.mp4,Failure,Amanuel,980,980
+0523.mp4,0523,videos/0523.mp4,Redundant Retrieval,Amanuel,900,958
+0531.mp4,0531,videos/0531.mp4,Time,Amanuel,719,719
+0531.mp4,0531,videos/0531.mp4,Sucess,Amanuel,12,12
+0532.mp4,0532,videos/0532.mp4,Time,Amanuel,676,676
+0532.mp4,0532,videos/0532.mp4,Sucess,Amanuel,16,16
+0533.mp4,0533,videos/0533.mp4,Time,Amanuel,337,337
+0533.mp4,0533,videos/0533.mp4,Sucess,Amanuel,8,8
+0611.mp4,0611,videos/0611.mp4,Failure,Amanuel,71,71
+0611.mp4,0611,videos/0611.mp4,Redundant Retrieval,Amanuel,600,600
+0612.mp4,0612,videos/0612.mp4,Time,Amanuel,342,342
+0612.mp4,0612,videos/0612.mp4,Sucess,Amanuel,14,14
+0613.mp4,0613,videos/0613.mp4,Time,Amanuel,283,283
+0613.mp4,0613,videos/0613.mp4,Sucess,Amanuel,21,21
+0621.mp4,0621,videos/0621.mp4,Redundant Retrieval,Amanuel,200,200
+0621.mp4,0621,videos/0621.mp4,Failure,Amanuel,5,5
+0622.mp4,0622,videos/0622.mp4,Time,Amanuel,488,488
+0622.mp4,0622,videos/0622.mp4,Sucess,Amanuel,9,9
+0622.mp4,0622,videos/0622.mp4,Passive Wait,Amanuel,1,380
diff --git a/data/Amanuel_50.csv b/data/Amanuel_50.csv
new file mode 100644
index 0000000000000000000000000000000000000000..2b0290f2464f8943fbef905be3a32d050b1f527c
--- /dev/null
+++ b/data/Amanuel_50.csv
@@ -0,0 +1,53 @@
+"annotation_id","annotator","condition","created_at","filename","id","lead_time","participant","run","updated_at","video","videoLabels"
+11,"1",1,"2025-11-05T15:35:43.593173Z","0111.mp4",1,604.343,"01",1,"2025-11-05T15:36:09.633186Z","/data/local-files/?d=hrc_dataset/videos/0111.mp4","[{""ranges"":[{""start"":701,""end"":701}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":190,""end"":190}],""timelinelabels"":[""Sucess""]}]"
+12,"1",1,"2025-11-05T15:44:04.834276Z","0112.mp4",2,46.636,"01",2,"2025-11-05T15:44:13.792620Z","/data/local-files/?d=hrc_dataset/videos/0112.mp4","[{""ranges"":[{""start"":388,""end"":388}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":2,""end"":2}],""timelinelabels"":[""Sucess""]}]"
+13,"1",1,"2025-11-05T15:44:39.019755Z","0113.mp4",3,210.298,"01",3,"2025-11-05T15:47:51.346130Z","/data/local-files/?d=hrc_dataset/videos/0113.mp4","[{""ranges"":[{""start"":369,""end"":369}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":4,""end"":4}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":100,""end"":100}],""timelinelabels"":[""Redundant Retrieval""]}]"
+14,"1",2,"2025-11-05T15:48:38.407293Z","0121.mp4",4,73.813,"01",1,"2025-11-05T15:49:14.216567Z","/data/local-files/?d=hrc_dataset/videos/0121.mp4","[{""ranges"":[{""start"":459,""end"":459}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":442,""end"":442}],""timelinelabels"":[""Sucess""]}]"
+15,"1",2,"2025-11-05T15:51:34.996263Z","0122.mp4",5,171.083,"01",2,"2025-11-05T15:53:23.542340Z","/data/local-files/?d=hrc_dataset/videos/0122.mp4","[{""ranges"":[{""start"":200,""end"":200}],""timelinelabels"":[""Safety Avoidance""]},{""ranges"":[{""start"":448,""end"":448}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":2,""end"":2}],""timelinelabels"":[""Sucess""]}]"
+16,"1",2,"2025-11-05T15:53:51.648419Z","0123.mp4",6,33.542,"01",3,"2025-11-05T15:54:01.131825Z","/data/local-files/?d=hrc_dataset/videos/0123.mp4","[{""ranges"":[{""start"":461,""end"":461}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":2,""end"":2}],""timelinelabels"":[""Sucess""]}]"
+17,"1",3,"2025-11-05T16:19:19.252652Z","0131.mp4",7,193.47199999999998,"01",1,"2025-11-05T16:21:41.057798Z","/data/local-files/?d=hrc_dataset/videos/0131.mp4","[{""ranges"":[{""start"":1179,""end"":1179}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":3,""end"":3}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":190,""end"":280}],""timelinelabels"":[""Missed Grab""]}]"
+18,"1",3,"2025-11-05T16:24:35.738022Z","0132.mp4",8,202.553,"01",2,"2025-11-05T16:25:10.479626Z","/data/local-files/?d=hrc_dataset/videos/0132.mp4","[{""ranges"":[{""start"":698,""end"":698}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":600,""end"":600}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":3,""end"":3}],""timelinelabels"":[""Failure""]}]"
+19,"1",3,"2025-11-05T16:26:27.641391Z","0133.mp4",9,151.038,"01",3,"2025-11-05T16:28:06.060085Z","/data/local-files/?d=hrc_dataset/videos/0133.mp4","[{""ranges"":[{""start"":1261,""end"":1261}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":2,""end"":2}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":180,""end"":247}],""timelinelabels"":[""Slippage""]}]"
+20,"1",1,"2025-11-05T16:30:40.078811Z","0211.mp4",10,155.46099999999998,"02",1,"2025-11-05T16:30:47.522303Z","/data/local-files/?d=hrc_dataset/videos/0211.mp4","[{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":5,""end"":5}],""timelinelabels"":[""Failure""]}]"
+21,"1",1,"2025-11-05T16:34:41.478353Z","0212.mp4",11,102.20400000000001,"02",2,"2025-11-05T16:34:57.185384Z","/data/local-files/?d=hrc_dataset/videos/0212.mp4","[{""ranges"":[{""start"":100,""end"":100}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":3,""end"":3}],""timelinelabels"":[""Failure""]}]"
+22,"1",1,"2025-11-05T16:36:05.545563Z","0213.mp4",12,69.335,"02",3,"2025-11-05T16:36:12.315853Z","/data/local-files/?d=hrc_dataset/videos/0213.mp4","[{""ranges"":[{""start"":667,""end"":667}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":3,""end"":3}],""timelinelabels"":[""Sucess""]}]"
+23,"1",2,"2025-11-05T16:36:57.657246Z","0221.mp4",13,44.403,"02",1,"2025-11-05T16:37:04.755582Z","/data/local-files/?d=hrc_dataset/videos/0221.mp4","[{""ranges"":[{""start"":387,""end"":387}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":3,""end"":3}],""timelinelabels"":[""Sucess""]}]"
+24,"1",2,"2025-11-05T16:37:58.910886Z","0222.mp4",14,123.11300000000001,"02",2,"2025-11-05T16:39:12.866969Z","/data/local-files/?d=hrc_dataset/videos/0222.mp4","[{""ranges"":[{""start"":1,""end"":422}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":466,""end"":466}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":3,""end"":3}],""timelinelabels"":[""Sucess""]}]"
+25,"1",2,"2025-11-05T16:39:44.005457Z","0223.mp4",15,80.241,"02",3,"2025-11-05T16:40:35.752386Z","/data/local-files/?d=hrc_dataset/videos/0223.mp4","[{""ranges"":[{""start"":516,""end"":516}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":9,""end"":9}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":381}],""timelinelabels"":[""Passive Wait""]}]"
+26,"1",3,"2025-11-05T16:41:25.883690Z","0231.mp4",16,72.09100000000001,"02",1,"2025-11-05T16:41:57.295635Z","/data/local-files/?d=hrc_dataset/videos/0231.mp4","[{""ranges"":[{""start"":1,""end"":380}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":437,""end"":437}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":19,""end"":19}],""timelinelabels"":[""Sucess""]}]"
+27,"1",3,"2025-11-05T16:42:40.400904Z","0232.mp4",17,78.417,"02",2,"2025-11-05T16:43:20.453635Z","/data/local-files/?d=hrc_dataset/videos/0232.mp4","[{""ranges"":[{""start"":1,""end"":549}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":644,""end"":644}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":6,""end"":6}],""timelinelabels"":[""Sucess""]}]"
+28,"1",3,"2025-11-05T16:46:56.128804Z","0233.mp4",18,222.11700000000002,"02",3,"2025-11-05T16:47:42.160662Z","/data/local-files/?d=hrc_dataset/videos/0233.mp4","[{""ranges"":[{""start"":60,""end"":194}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":805,""end"":805}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":27,""end"":27}],""timelinelabels"":[""Sucess""]}]"
+29,"1",1,"2025-11-05T16:48:48.124290Z","0311.mp4",19,68.634,"03",1,"2025-11-05T16:48:53.289115Z","/data/local-files/?d=hrc_dataset/videos/0311.mp4","[{""ranges"":[{""start"":468,""end"":468}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":30,""end"":30}],""timelinelabels"":[""Sucess""]}]"
+30,"1",1,"2025-11-05T16:49:59.943341Z","0312.mp4",20,399.317,"03",2,"2025-11-05T16:55:45.802210Z","/data/local-files/?d=hrc_dataset/videos/0312.mp4","[{""ranges"":[{""start"":1116,""end"":1116}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1105,""end"":1105}],""timelinelabels"":[""Sucess""]}]"
+31,"1",1,"2025-11-05T17:01:22.720354Z","0313.mp4",21,52.944,"03",3,"2025-11-05T17:01:27.819946Z","/data/local-files/?d=hrc_dataset/videos/0313.mp4","[{""ranges"":[{""start"":773,""end"":773}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":25,""end"":25}],""timelinelabels"":[""Sucess""]}]"
+32,"1",2,"2025-11-05T17:02:36.362584Z","0321.mp4",22,76.285,"03",1,"2025-11-05T17:03:17.388583Z","/data/local-files/?d=hrc_dataset/videos/0321.mp4","[{""ranges"":[{""start"":1,""end"":403}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":530,""end"":530}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":17,""end"":17}],""timelinelabels"":[""Sucess""]}]"
+33,"1",2,"2025-11-05T17:04:03.384384Z","0322.mp4",23,76.62100000000001,"03",2,"2025-11-05T17:04:37.264832Z","/data/local-files/?d=hrc_dataset/videos/0322.mp4","[{""ranges"":[{""start"":1,""end"":401}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":497,""end"":497}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":24,""end"":24}],""timelinelabels"":[""Sucess""]}]"
+34,"1",2,"2025-11-05T17:05:15.266395Z","0323.mp4",24,103.42699999999999,"03",3,"2025-11-05T17:06:26.181192Z","/data/local-files/?d=hrc_dataset/videos/0323.mp4","[{""ranges"":[{""start"":1,""end"":374}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":442,""end"":442}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":19,""end"":19}],""timelinelabels"":[""Sucess""]}]"
+35,"1",3,"2025-11-05T17:07:06.620954Z","0331.mp4",25,84.684,"03",1,"2025-11-05T17:07:52.962991Z","/data/local-files/?d=hrc_dataset/videos/0331.mp4","[{""ranges"":[{""start"":1,""end"":385}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":505,""end"":505}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":8,""end"":8}],""timelinelabels"":[""Sucess""]}]"
+36,"1",3,"2025-11-05T17:09:12.869229Z","0332.mp4",26,228.30899999999997,"03",2,"2025-11-05T17:11:48.364884Z","/data/local-files/?d=hrc_dataset/videos/0332.mp4","[{""ranges"":[{""start"":8,""end"":8}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":174,""end"":174}],""timelinelabels"":[""Redundant Retrieval""]}]"
+37,"1",3,"2025-11-05T17:12:35.876016Z","0333.mp4",27,52.510000000000005,"03",3,"2025-11-05T17:12:42.601109Z","/data/local-files/?d=hrc_dataset/videos/0333.mp4","[{""ranges"":[{""start"":300,""end"":300}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":4,""end"":4}],""timelinelabels"":[""Failure""]}]"
+38,"1",1,"2025-11-05T17:13:41.387601Z","0411.mp4",28,56.686,"04",1,"2025-11-05T17:13:50.571677Z","/data/local-files/?d=hrc_dataset/videos/0411.mp4","[{""ranges"":[{""start"":1250,""end"":1250}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":4,""end"":4}],""timelinelabels"":[""Sucess""]}]"
+39,"1",1,"2025-11-05T17:14:29.913459Z","0412.mp4",29,25.62,"04",2,"2025-11-05T17:14:34.951066Z","/data/local-files/?d=hrc_dataset/videos/0412.mp4","[{""ranges"":[{""start"":409,""end"":409}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":23,""end"":23}],""timelinelabels"":[""Sucess""]}]"
+40,"1",1,"2025-11-05T17:15:14.179978Z","0413.mp4",30,43.092999999999996,"04",3,"2025-11-05T17:15:20.190733Z","/data/local-files/?d=hrc_dataset/videos/0413.mp4","[{""ranges"":[{""start"":952,""end"":952}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":16,""end"":16}],""timelinelabels"":[""Sucess""]}]"
+41,"1",2,"2025-11-05T17:15:53.567741Z","0421.mp4",31,37.878,"04",1,"2025-11-05T17:15:59.662277Z","/data/local-files/?d=hrc_dataset/videos/0421.mp4","[{""ranges"":[{""start"":399,""end"":399}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":15,""end"":15}],""timelinelabels"":[""Sucess""]}]"
+42,"1",2,"2025-11-05T17:17:03.942585Z","0422.mp4",32,96.54400000000001,"04",2,"2025-11-05T17:17:38.206462Z","/data/local-files/?d=hrc_dataset/videos/0422.mp4","[{""ranges"":[{""start"":8,""end"":8}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":745,""end"":745}],""timelinelabels"":[""Drop Out of Box""]}]"
+43,"1",2,"2025-11-05T17:18:35.337287Z","0423.mp4",33,41.993,"04",3,"2025-11-05T17:18:40.231060Z","/data/local-files/?d=hrc_dataset/videos/0423.mp4","[{""ranges"":[{""start"":443,""end"":443}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":10,""end"":10}],""timelinelabels"":[""Sucess""]}]"
+44,"1",3,"2025-11-05T17:19:32.923480Z","0431.mp4",34,83.46600000000001,"04",1,"2025-11-05T17:20:25.457793Z","/data/local-files/?d=hrc_dataset/videos/0431.mp4","[{""ranges"":[{""start"":713,""end"":713}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":185,""end"":230}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":12,""end"":12}],""timelinelabels"":[""Sucess""]}]"
+45,"1",3,"2025-11-05T17:21:32.658048Z","0432.mp4",35,70.586,"04",2,"2025-11-05T17:21:37.875963Z","/data/local-files/?d=hrc_dataset/videos/0432.mp4","[{""ranges"":[{""start"":100,""end"":100}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":6,""end"":6}],""timelinelabels"":[""Failure""]}]"
+46,"1",3,"2025-11-05T17:22:42.115729Z","0433.mp4",36,58.594,"04",3,"2025-11-05T17:22:42.115755Z","/data/local-files/?d=hrc_dataset/videos/0433.mp4","[{""ranges"":[{""start"":387,""end"":387}],""timelinelabels"":[""Failure""]}]"
+47,"1",1,"2025-11-05T17:23:14.091606Z","0511.mp4",37,40.203,"05",1,"2025-11-05T17:23:25.499279Z","/data/local-files/?d=hrc_dataset/videos/0511.mp4","[{""ranges"":[{""start"":701,""end"":701}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":152,""end"":152}],""timelinelabels"":[""Sucess""]}]"
+48,"1",1,"2025-11-05T17:25:09.434578Z","0512.mp4",38,101.311,"05",2,"2025-11-05T17:25:14.183175Z","/data/local-files/?d=hrc_dataset/videos/0512.mp4","[{""ranges"":[{""start"":529,""end"":529}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":6,""end"":6}],""timelinelabels"":[""Failure""]}]"
+49,"1",1,"2025-11-05T17:26:31.959539Z","0513.mp4",39,50.964,"05",3,"2025-11-05T17:26:37.120067Z","/data/local-files/?d=hrc_dataset/videos/0513.mp4","[{""ranges"":[{""start"":401,""end"":401}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":12,""end"":12}],""timelinelabels"":[""Failure""]}]"
+50,"1",2,"2025-11-05T17:27:05.751676Z","0521.mp4",40,31.529,"05",1,"2025-11-05T17:27:10.148877Z","/data/local-files/?d=hrc_dataset/videos/0521.mp4","[{""ranges"":[{""start"":626,""end"":626}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":10,""end"":10}],""timelinelabels"":[""Sucess""]}]"
+51,"1",2,"2025-11-05T17:27:53.702560Z","0522.mp4",41,27.972,"05",2,"2025-11-05T17:28:01.939533Z","/data/local-files/?d=hrc_dataset/videos/0522.mp4","[{""ranges"":[{""start"":432,""end"":432}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":20,""end"":20}],""timelinelabels"":[""Sucess""]}]"
+52,"1",2,"2025-11-05T17:29:35.863634Z","0523.mp4",42,239.739,"05",3,"2025-11-05T17:32:18.710890Z","/data/local-files/?d=hrc_dataset/videos/0523.mp4","[{""ranges"":[{""start"":400,""end"":500}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":980,""end"":980}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":900,""end"":958}],""timelinelabels"":[""Redundant Retrieval""]}]"
+53,"1",3,"2025-11-05T17:33:45.125058Z","0531.mp4",43,63.6,"05",1,"2025-11-05T17:33:49.962615Z","/data/local-files/?d=hrc_dataset/videos/0531.mp4","[{""ranges"":[{""start"":719,""end"":719}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":12,""end"":12}],""timelinelabels"":[""Sucess""]}]"
+54,"1",3,"2025-11-05T17:34:39.724986Z","0532.mp4",44,33.394,"05",2,"2025-11-05T17:34:45.190865Z","/data/local-files/?d=hrc_dataset/videos/0532.mp4","[{""ranges"":[{""start"":676,""end"":676}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":16,""end"":16}],""timelinelabels"":[""Sucess""]}]"
+55,"1",3,"2025-11-05T17:35:13.659289Z","0533.mp4",45,35.777,"05",3,"2025-11-05T17:35:23.285688Z","/data/local-files/?d=hrc_dataset/videos/0533.mp4","[{""ranges"":[{""start"":337,""end"":337}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":8,""end"":8}],""timelinelabels"":[""Sucess""]}]"
+56,"1",1,"2025-11-05T17:36:05.720504Z","0611.mp4",46,83.655,"06",1,"2025-11-05T17:36:55.071348Z","/data/local-files/?d=hrc_dataset/videos/0611.mp4","[{""ranges"":[{""start"":71,""end"":71}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":600,""end"":600}],""timelinelabels"":[""Redundant Retrieval""]}]"
+57,"1",1,"2025-11-05T17:37:14.606448Z","0612.mp4",47,21.884999999999998,"06",2,"2025-11-05T17:37:19.439810Z","/data/local-files/?d=hrc_dataset/videos/0612.mp4","[{""ranges"":[{""start"":342,""end"":342}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":14,""end"":14}],""timelinelabels"":[""Sucess""]}]"
+58,"1",1,"2025-11-05T17:37:39.366531Z","0613.mp4",48,20.167,"06",3,"2025-11-05T17:37:43.135464Z","/data/local-files/?d=hrc_dataset/videos/0613.mp4","[{""ranges"":[{""start"":283,""end"":283}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":21,""end"":21}],""timelinelabels"":[""Sucess""]}]"
+59,"1",2,"2025-11-05T17:38:53.225511Z","0621.mp4",49,70.029,"06",1,"2025-11-05T17:38:56.979523Z","/data/local-files/?d=hrc_dataset/videos/0621.mp4","[{""ranges"":[{""start"":200,""end"":200}],""timelinelabels"":[""Redundant Retrieval""]},{""ranges"":[{""start"":5,""end"":5}],""timelinelabels"":[""Failure""]}]"
+60,"1",2,"2025-11-05T17:40:29.700860Z","0622.mp4",50,206.845,"06",2,"2025-11-05T17:42:55.254536Z","/data/local-files/?d=hrc_dataset/videos/0622.mp4","[{""ranges"":[{""start"":488,""end"":488}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":9,""end"":9}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":380}],""timelinelabels"":[""Passive Wait""]}]"
+
+
diff --git a/data/Grant_50.csv b/data/Grant_50.csv
new file mode 100644
index 0000000000000000000000000000000000000000..636b9746d10e65c9b40c6c533e8acd8cfb447065
--- /dev/null
+++ b/data/Grant_50.csv
@@ -0,0 +1,51 @@
+"annotation_id","annotator","condition","created_at","filename","id","lead_time","participant","run","updated_at","video","videoLabels"
+90,"1",1,"2025-11-05T16:29:47.039665Z","0111.mp4",9243,29.129,"01",1,"2025-11-05T16:29:47.039675Z","/data/local-files/?d=hrc_dataset/videos/0111.mp4","[{""ranges"":[{""start"":686,""end"":686}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":686,""end"":686}],""timelinelabels"":[""Sucess""]}]"
+91,"1",1,"2025-11-05T16:29:47.039730Z","0112.mp4",9244,25.674,"01",2,"2025-11-05T16:29:47.039738Z","/data/local-files/?d=hrc_dataset/videos/0112.mp4","[{""ranges"":[{""start"":376,""end"":376}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":376,""end"":376}],""timelinelabels"":[""Time""]}]"
+92,"1",1,"2025-11-05T16:29:47.039774Z","0113.mp4",9245,18.054,"01",3,"2025-11-05T16:29:47.039779Z","/data/local-files/?d=hrc_dataset/videos/0113.mp4","[{""ranges"":[{""start"":339,""end"":339}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":339,""end"":339}],""timelinelabels"":[""Sucess""]}]"
+93,"1",2,"2025-11-05T16:29:47.039819Z","0121.mp4",9246,64.664,"01",1,"2025-11-05T16:29:47.039824Z","/data/local-files/?d=hrc_dataset/videos/0121.mp4","[{""ranges"":[{""start"":475,""end"":475}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":475,""end"":475}],""timelinelabels"":[""Sucess""]}]"
+94,"1",2,"2025-11-05T16:29:47.039860Z","0122.mp4",9247,113.23,"01",2,"2025-11-05T16:29:47.039865Z","/data/local-files/?d=hrc_dataset/videos/0122.mp4","[{""ranges"":[{""start"":215,""end"":255}],""timelinelabels"":[""Safety Avoidance""]},{""ranges"":[{""start"":448,""end"":448}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":448,""end"":448}],""timelinelabels"":[""Sucess""]}]"
+95,"1",2,"2025-11-05T16:29:47.039899Z","0123.mp4",9248,30.427,"01",3,"2025-11-05T16:29:47.039905Z","/data/local-files/?d=hrc_dataset/videos/0123.mp4","[{""ranges"":[{""start"":394,""end"":394}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":394,""end"":394}],""timelinelabels"":[""Sucess""]}]"
+96,"1",3,"2025-11-05T16:29:47.039940Z","0131.mp4",9249,189.16,"01",1,"2025-11-05T16:29:47.039945Z","/data/local-files/?d=hrc_dataset/videos/0131.mp4","[{""ranges"":[{""start"":1,""end"":1189}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":247,""end"":945}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":409,""end"":409}],""timelinelabels"":[""Drop Out of Box""]}]"
+97,"1",3,"2025-11-05T16:29:47.039982Z","0132.mp4",9250,90.035,"01",2,"2025-11-05T16:29:47.039987Z","/data/local-files/?d=hrc_dataset/videos/0132.mp4","[{""ranges"":[{""start"":1,""end"":718}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":564}],""timelinelabels"":[""Passive Wait""]}]"
+98,"1",3,"2025-11-05T16:29:47.040023Z","0133.mp4",9251,333.21700000000004,"01",3,"2025-11-05T16:29:47.040030Z","/data/local-files/?d=hrc_dataset/videos/0133.mp4","[{""ranges"":[{""start"":1,""end"":1253}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":1062}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":211,""end"":471}],""timelinelabels"":[""Slippage""]}]"
+99,"1",1,"2025-11-05T16:29:47.040062Z","0211.mp4",9252,28.754,"02",1,"2025-11-05T16:29:47.040070Z","/data/local-files/?d=hrc_dataset/videos/0211.mp4","[{""ranges"":[{""start"":262,""end"":262}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":262,""end"":262}],""timelinelabels"":[""Time""]}]"
+100,"1",1,"2025-11-05T16:29:47.040103Z","0212.mp4",9253,23.475,"02",2,"2025-11-05T16:29:47.040108Z","/data/local-files/?d=hrc_dataset/videos/0212.mp4","[{""ranges"":[{""start"":469,""end"":469}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":469,""end"":469}],""timelinelabels"":[""Sucess""]}]"
+101,"1",1,"2025-11-05T16:29:47.040149Z","0213.mp4",9254,68.293,"02",3,"2025-11-05T16:29:47.040154Z","/data/local-files/?d=hrc_dataset/videos/0213.mp4","[{""ranges"":[{""start"":337,""end"":337}],""timelinelabels"":[""Slippage""]},{""ranges"":[{""start"":337,""end"":337}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":659,""end"":659}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":659,""end"":659}],""timelinelabels"":[""Sucess""]}]"
+102,"1",2,"2025-11-05T16:29:47.040190Z","0221.mp4",9255,30.29,"02",1,"2025-11-05T16:29:47.040195Z","/data/local-files/?d=hrc_dataset/videos/0221.mp4","[{""ranges"":[{""start"":391,""end"":391}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":391,""end"":391}],""timelinelabels"":[""Sucess""]}]"
+103,"1",2,"2025-11-05T16:29:47.040228Z","0222.mp4",9256,75.555,"02",2,"2025-11-05T16:29:47.040241Z","/data/local-files/?d=hrc_dataset/videos/0222.mp4","[{""ranges"":[{""start"":465,""end"":465}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":465,""end"":465}],""timelinelabels"":[""Time""]}]"
+104,"1",2,"2025-11-05T16:29:47.040276Z","0223.mp4",9257,35.644,"02",3,"2025-11-05T16:29:47.040281Z","/data/local-files/?d=hrc_dataset/videos/0223.mp4","[{""ranges"":[{""start"":462,""end"":462}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":462,""end"":462}],""timelinelabels"":[""Sucess""]}]"
+105,"1",3,"2025-11-05T16:29:47.040316Z","0231.mp4",9258,753.997,"02",1,"2025-11-05T16:29:47.040321Z","/data/local-files/?d=hrc_dataset/videos/0231.mp4","[{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":444}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":369}],""timelinelabels"":[""Passive Wait""]}]"
+106,"1",3,"2025-11-05T16:29:47.040360Z","0232.mp4",9259,161.24,"02",2,"2025-11-05T16:29:47.040365Z","/data/local-files/?d=hrc_dataset/videos/0232.mp4","[{""ranges"":[{""start"":2,""end"":2}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":2,""end"":647}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":539}],""timelinelabels"":[""Passive Wait""]}]"
+107,"1",3,"2025-11-05T16:29:47.040406Z","0233.mp4",9260,185.113,"02",3,"2025-11-05T16:29:47.040411Z","/data/local-files/?d=hrc_dataset/videos/0233.mp4","[{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":808}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":747}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":149,""end"":327}],""timelinelabels"":[""Missed Grab""]}]"
+108,"1",1,"2025-11-05T16:29:47.040443Z","0311.mp4",9261,24.205,"03",1,"2025-11-05T16:29:47.040448Z","/data/local-files/?d=hrc_dataset/videos/0311.mp4","[{""ranges"":[{""start"":404,""end"":404}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":404,""end"":404}],""timelinelabels"":[""Time""]}]"
+109,"1",1,"2025-11-05T16:29:47.040488Z","0312.mp4",9262,122.68,"03",2,"2025-11-05T16:29:47.040495Z","/data/local-files/?d=hrc_dataset/videos/0312.mp4","[{""ranges"":[{""start"":322,""end"":750}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":1,""end"":1043}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":1108,""end"":1108}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1108,""end"":1108}],""timelinelabels"":[""Time""]}]"
+110,"1",1,"2025-11-05T16:29:47.040534Z","0313.mp4",9263,67.939,"03",3,"2025-11-05T16:29:47.040539Z","/data/local-files/?d=hrc_dataset/videos/0313.mp4","[{""ranges"":[{""start"":1,""end"":677}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":755,""end"":755}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":755,""end"":755}],""timelinelabels"":[""Time""]}]"
+111,"1",2,"2025-11-05T16:29:47.040575Z","0321.mp4",9264,47.996,"03",1,"2025-11-05T16:29:47.040580Z","/data/local-files/?d=hrc_dataset/videos/0321.mp4","[{""ranges"":[{""start"":465,""end"":465}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":465,""end"":465}],""timelinelabels"":[""Time""]}]"
+112,"1",2,"2025-11-05T16:29:47.040616Z","0322.mp4",9265,76.403,"03",2,"2025-11-05T16:29:47.040621Z","/data/local-files/?d=hrc_dataset/videos/0322.mp4","[{""ranges"":[{""start"":495,""end"":495}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":495,""end"":495}],""timelinelabels"":[""Sucess""]}]"
+113,"1",2,"2025-11-05T16:29:47.040653Z","0323.mp4",9266,110.495,"03",3,"2025-11-05T16:29:47.040659Z","/data/local-files/?d=hrc_dataset/videos/0323.mp4","[{""ranges"":[{""start"":445,""end"":445}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":445,""end"":445}],""timelinelabels"":[""Time""]}]"
+114,"1",3,"2025-11-05T16:29:47.040693Z","0331.mp4",9267,105.46600000000001,"03",1,"2025-11-05T16:29:47.040698Z","/data/local-files/?d=hrc_dataset/videos/0331.mp4","[{""ranges"":[{""start"":1,""end"":503}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":278}],""timelinelabels"":[""Passive Wait""]}]"
+115,"1",3,"2025-11-05T16:29:47.040732Z","0332.mp4",9268,59.45,"03",2,"2025-11-05T16:29:47.040737Z","/data/local-files/?d=hrc_dataset/videos/0332.mp4","[{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":328}],""timelinelabels"":[""Time""]}]"
+116,"1",3,"2025-11-05T16:29:47.040774Z","0333.mp4",9269,111.812,"03",3,"2025-11-05T16:29:47.040779Z","/data/local-files/?d=hrc_dataset/videos/0333.mp4","[{""ranges"":[{""start"":1,""end"":497}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1,""end"":313}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":142,""end"":350}],""timelinelabels"":[""Missed Grab""]}]"
+117,"1",1,"2025-11-05T16:29:47.040813Z","0411.mp4",9270,84.616,"04",1,"2025-11-05T16:29:47.040818Z","/data/local-files/?d=hrc_dataset/videos/0411.mp4","[{""ranges"":[{""start"":1,""end"":1162}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":1224,""end"":1224}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":1224,""end"":1224}],""timelinelabels"":[""Time""]}]"
+118,"1",1,"2025-11-05T16:29:47.040853Z","0412.mp4",9271,26.123,"04",2,"2025-11-05T16:29:47.040858Z","/data/local-files/?d=hrc_dataset/videos/0412.mp4","[{""ranges"":[{""start"":406,""end"":406}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":406,""end"":406}],""timelinelabels"":[""Time""]}]"
+119,"1",1,"2025-11-05T16:29:47.040892Z","0413.mp4",9272,96.965,"04",3,"2025-11-05T16:29:47.040897Z","/data/local-files/?d=hrc_dataset/videos/0413.mp4","[{""ranges"":[{""start"":944,""end"":944}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":944,""end"":944}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":250}],""timelinelabels"":[""Lack Test Guidance""]}]"
+120,"1",2,"2025-11-05T16:29:47.040935Z","0421.mp4",9273,90.023,"04",1,"2025-11-05T16:29:47.040939Z","/data/local-files/?d=hrc_dataset/videos/0421.mp4","[{""ranges"":[{""start"":197,""end"":210}],""timelinelabels"":[""Safety Avoidance""]},{""ranges"":[{""start"":398,""end"":398}],""timelinelabels"":[""Lack Test Guidance""]},{""ranges"":[{""start"":398,""end"":398}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":398,""end"":398}],""timelinelabels"":[""Time""]}]"
+121,"1",2,"2025-11-05T16:29:47.040981Z","0422.mp4",9274,59.239,"04",2,"2025-11-05T16:29:47.040986Z","/data/local-files/?d=hrc_dataset/videos/0422.mp4","[{""ranges"":[{""start"":267,""end"":267}],""timelinelabels"":[""Drop Out of Box""]},{""ranges"":[{""start"":711,""end"":711}],""timelinelabels"":[""Lack Test Guidance""]},{""ranges"":[{""start"":885,""end"":885}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":885,""end"":885}],""timelinelabels"":[""Time""]}]"
+122,"1",2,"2025-11-05T16:29:47.041023Z","0423.mp4",9275,41.24,"04",3,"2025-11-05T16:29:47.041028Z","/data/local-files/?d=hrc_dataset/videos/0423.mp4","[{""ranges"":[{""start"":1,""end"":374}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":432,""end"":432}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":432,""end"":432}],""timelinelabels"":[""Sucess""]}]"
+123,"1",3,"2025-11-05T16:29:47.041065Z","0431.mp4",9276,119.577,"04",1,"2025-11-05T16:29:47.041070Z","/data/local-files/?d=hrc_dataset/videos/0431.mp4","[{""ranges"":[{""start"":1,""end"":541}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":1,""end"":699}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1,""end"":1}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":191,""end"":505}],""timelinelabels"":[""Missed Grab""]}]"
+124,"1",3,"2025-11-05T16:29:47.041106Z","0432.mp4",9277,28.65,"04",2,"2025-11-05T16:29:47.041110Z","/data/local-files/?d=hrc_dataset/videos/0432.mp4","[{""ranges"":[{""start"":328,""end"":328}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":328,""end"":328}],""timelinelabels"":[""Sucess""]}]"
+125,"1",3,"2025-11-05T16:29:47.041140Z","0433.mp4",9278,70.383,"04",3,"2025-11-05T16:29:47.041145Z","/data/local-files/?d=hrc_dataset/videos/0433.mp4","[{""ranges"":[{""start"":1,""end"":444}],""timelinelabels"":[""Lack Test Guidance""]}]"
+126,"1",1,"2025-11-05T16:34:22.002895Z","0511.mp4",9279,100.207,"05",1,"2025-11-05T16:34:22.002911Z","/data/local-files/?d=hrc_dataset/videos/0511.mp4","[{""ranges"":[{""start"":685,""end"":685}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":685,""end"":685}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":590,""end"":590}],""timelinelabels"":[""Lack Capability Reminder""]}]"
+127,"1",1,"2025-11-05T16:35:54.026131Z","0512.mp4",9280,32.147,"05",2,"2025-11-05T16:35:54.026146Z","/data/local-files/?d=hrc_dataset/videos/0512.mp4","[{""ranges"":[{""start"":674,""end"":674}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":674,""end"":674}],""timelinelabels"":[""Sucess""]}]"
+128,"1",1,"2025-11-05T16:36:10.508386Z","0513.mp4",9281,15.295,"05",3,"2025-11-05T16:36:10.508410Z","/data/local-files/?d=hrc_dataset/videos/0513.mp4","[{""ranges"":[{""start"":514,""end"":514}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":514,""end"":514}],""timelinelabels"":[""Sucess""]}]"
+129,"1",2,"2025-11-05T16:36:31.423855Z","0521.mp4",9282,19.807,"05",1,"2025-11-05T16:36:31.423871Z","/data/local-files/?d=hrc_dataset/videos/0521.mp4","[{""ranges"":[{""start"":619,""end"":619}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":619,""end"":619}],""timelinelabels"":[""Sucess""]}]"
+130,"1",2,"2025-11-05T16:37:40.228228Z","0522.mp4",9283,67.609,"05",2,"2025-11-05T16:37:40.228246Z","/data/local-files/?d=hrc_dataset/videos/0522.mp4","[{""ranges"":[{""start"":1,""end"":366}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":418,""end"":418}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":418,""end"":418}],""timelinelabels"":[""Sucess""]}]"
+131,"1",2,"2025-11-05T16:40:06.788954Z","0523.mp4",9284,145.075,"05",3,"2025-11-05T16:40:06.788973Z","/data/local-files/?d=hrc_dataset/videos/0523.mp4","[{""ranges"":[{""start"":164,""end"":164}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":297,""end"":297}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":376,""end"":376}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":494,""end"":494}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":1,""end"":923}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":1010,""end"":1010}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1010,""end"":1010}],""timelinelabels"":[""Sucess""]}]"
+132,"1",3,"2025-11-05T16:40:36.806415Z","0531.mp4",9285,28.24,"05",1,"2025-11-05T16:40:36.806432Z","/data/local-files/?d=hrc_dataset/videos/0531.mp4","[{""ranges"":[{""start"":629,""end"":629}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":629,""end"":629}],""timelinelabels"":[""Sucess""]}]"
+133,"1",3,"2025-11-05T16:41:06.488434Z","0532.mp4",9286,28.266,"05",2,"2025-11-05T16:41:06.488457Z","/data/local-files/?d=hrc_dataset/videos/0532.mp4","[{""ranges"":[{""start"":663,""end"":663}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":663,""end"":663}],""timelinelabels"":[""Sucess""]}]"
+134,"1",3,"2025-11-05T16:41:30.439684Z","0533.mp4",9287,22.331,"05",3,"2025-11-05T16:41:30.439768Z","/data/local-files/?d=hrc_dataset/videos/0533.mp4","[{""ranges"":[{""start"":337,""end"":337}],""timelinelabels"":[""Failure""]},{""ranges"":[{""start"":337,""end"":337}],""timelinelabels"":[""Time""]}]"
+135,"1",1,"2025-11-05T16:43:09.797102Z","0611.mp4",9288,98.149,"06",1,"2025-11-05T16:43:09.797135Z","/data/local-files/?d=hrc_dataset/videos/0611.mp4","[{""ranges"":[{""start"":54,""end"":136}],""timelinelabels"":[""Safety Avoidance""]},{""ranges"":[{""start"":777,""end"":777}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":777,""end"":777}],""timelinelabels"":[""Sucess""]}]"
+136,"1",1,"2025-11-05T16:43:31.954184Z","0612.mp4",9289,20.082,"06",2,"2025-11-05T16:43:31.954198Z","/data/local-files/?d=hrc_dataset/videos/0612.mp4","[{""ranges"":[{""start"":320,""end"":320}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":320,""end"":320}],""timelinelabels"":[""Sucess""]}]"
+137,"1",1,"2025-11-05T16:43:47.953147Z","0613.mp4",9290,14.976,"06",3,"2025-11-05T16:43:47.953167Z","/data/local-files/?d=hrc_dataset/videos/0613.mp4","[{""ranges"":[{""start"":292,""end"":292}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":292,""end"":292}],""timelinelabels"":[""Sucess""]}]"
+138,"1",2,"2025-11-05T16:44:38.837847Z","0621.mp4",9291,21.028,"06",1,"2025-11-05T16:44:38.837863Z","/data/local-files/?d=hrc_dataset/videos/0621.mp4","[{""ranges"":[{""start"":380,""end"":380}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":380,""end"":380}],""timelinelabels"":[""Sucess""]}]"
+139,"1",2,"2025-11-05T16:45:06.010041Z","0622.mp4",9292,26.113,"06",2,"2025-11-05T16:45:06.010057Z","/data/local-files/?d=hrc_dataset/videos/0622.mp4","[{""ranges"":[{""start"":431,""end"":431}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":431,""end"":431}],""timelinelabels"":[""Sucess""]}]"
diff --git a/data/Vidhi_50.csv b/data/Vidhi_50.csv
new file mode 100644
index 0000000000000000000000000000000000000000..065195fee32d255df3f088c5d275014768671789
--- /dev/null
+++ b/data/Vidhi_50.csv
@@ -0,0 +1,51 @@
+"annotation_id","annotator","condition","created_at","filename","id","lead_time","participant","run","updated_at","video","videoLabels"
+19,"1",1,"2025-11-05T16:37:31.870964Z","0111.mp4",1,84.327,"01",1,"2025-11-05T16:37:31.870974Z","/data/local-files/?d=hrc_dataset/videos/0111.mp4","[{""ranges"":[{""start"":656,""end"":656}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":656,""end"":656}],""timelinelabels"":[""Sucess""]}]"
+20,"1",1,"2025-11-05T16:38:20.068038Z","0112.mp4",2,46.242,"01",2,"2025-11-05T16:38:20.068048Z","/data/local-files/?d=hrc_dataset/videos/0112.mp4","[{""ranges"":[{""start"":364,""end"":364}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":364,""end"":364}],""timelinelabels"":[""Sucess""]}]"
+21,"1",1,"2025-11-05T16:38:54.326410Z","0113.mp4",3,32.659,"01",3,"2025-11-05T16:38:54.326423Z","/data/local-files/?d=hrc_dataset/videos/0113.mp4","[{""ranges"":[{""start"":315,""end"":315}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":315,""end"":315}],""timelinelabels"":[""Sucess""]}]"
+22,"1",2,"2025-11-05T16:39:56.222461Z","0121.mp4",4,59.963,"01",1,"2025-11-05T16:39:56.222470Z","/data/local-files/?d=hrc_dataset/videos/0121.mp4","[{""ranges"":[{""start"":436,""end"":436}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":436,""end"":436}],""timelinelabels"":[""Sucess""]}]"
+23,"1",2,"2025-11-05T16:41:48.637484Z","0122.mp4",5,144.574,"01",2,"2025-11-05T16:42:24.243987Z","/data/local-files/?d=hrc_dataset/videos/0122.mp4","[{""ranges"":[{""start"":237,""end"":251}],""timelinelabels"":[""Safety Conflict""]},{""ranges"":[{""start"":448,""end"":448}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":448,""end"":448}],""timelinelabels"":[""Sucess""]}]"
+24,"1",2,"2025-11-05T16:43:39.655877Z","0123.mp4",6,134.622,"01",3,"2025-11-05T16:44:40.892306Z","/data/local-files/?d=hrc_dataset/videos/0123.mp4","[{""ranges"":[{""start"":7,""end"":187}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":236,""end"":236}],""timelinelabels"":[""Safety Avoidance""]},{""ranges"":[{""start"":411,""end"":411}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":411,""end"":411}],""timelinelabels"":[""Sucess""]}]"
+25,"1",3,"2025-11-05T16:46:30.544473Z","0131.mp4",7,192.15099999999998,"01",1,"2025-11-05T16:48:22.744299Z","/data/local-files/?d=hrc_dataset/videos/0131.mp4","[{""ranges"":[{""start"":234,""end"":980}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":6,""end"":1051}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":1160,""end"":1160}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1160,""end"":1160}],""timelinelabels"":[""Sucess""]}]"
+26,"1",3,"2025-11-05T16:49:04.872167Z","0132.mp4",8,65.487,"01",2,"2025-11-05T16:49:30.368732Z","/data/local-files/?d=hrc_dataset/videos/0132.mp4","[{""ranges"":[{""start"":6,""end"":562}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":681,""end"":681}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":681,""end"":681}],""timelinelabels"":[""Sucess""]}]"
+27,"1",3,"2025-11-05T16:51:19.699550Z","0133.mp4",9,207.348,"01",3,"2025-11-05T17:14:23.477311Z","/data/local-files/?d=hrc_dataset/videos/0133.mp4","[{""ranges"":[{""start"":6,""end"":1059}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":207,""end"":619}],""timelinelabels"":[""Slippage""]},{""ranges"":[{""start"":1110,""end"":1110}],""timelinelabels"":[""Lack Capability Reminder""]},{""ranges"":[{""start"":1197,""end"":1197}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1197,""end"":1197}],""timelinelabels"":[""Sucess""]}]"
+28,"1",1,"2025-11-05T16:54:31.659557Z","0211.mp4",10,42.1,"02",1,"2025-11-05T16:54:31.659568Z","/data/local-files/?d=hrc_dataset/videos/0211.mp4","[{""ranges"":[{""start"":263,""end"":263}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":263,""end"":263}],""timelinelabels"":[""Sucess""]}]"
+29,"1",1,"2025-11-05T16:55:06.590145Z","0212.mp4",11,33.223,"02",2,"2025-11-05T16:55:06.590155Z","/data/local-files/?d=hrc_dataset/videos/0212.mp4","[{""ranges"":[{""start"":447,""end"":447}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":447,""end"":447}],""timelinelabels"":[""Sucess""]}]"
+30,"1",1,"2025-11-05T16:56:51.362959Z","0213.mp4",12,266.994,"02",3,"2025-11-05T16:59:49.410526Z","/data/local-files/?d=hrc_dataset/videos/0213.mp4","[{""ranges"":[{""start"":355,""end"":509}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":641,""end"":641}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":641,""end"":641}],""timelinelabels"":[""Sucess""]}]"
+31,"1",2,"2025-11-05T17:05:47.229094Z","0221.mp4",13,119.77799999999999,"02",1,"2025-11-05T17:06:41.340243Z","/data/local-files/?d=hrc_dataset/videos/0221.mp4","[{""ranges"":[{""start"":7,""end"":307}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":107,""end"":152}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":360,""end"":360}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":360,""end"":360}],""timelinelabels"":[""Sucess""]}]"
+32,"1",2,"2025-11-05T17:10:10.603127Z","0222.mp4",14,232.496,"02",2,"2025-11-05T17:10:35.759270Z","/data/local-files/?d=hrc_dataset/videos/0222.mp4","[{""ranges"":[{""start"":6,""end"":380}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":466,""end"":466}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":466,""end"":466}],""timelinelabels"":[""Sucess""]}]"
+33,"1",2,"2025-11-05T17:11:29.381546Z","0223.mp4",15,79.26599999999999,"02",3,"2025-11-05T17:12:00.254042Z","/data/local-files/?d=hrc_dataset/videos/0223.mp4","[{""ranges"":[{""start"":6,""end"":374}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":441,""end"":441}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":441,""end"":441}],""timelinelabels"":[""Sucess""]}]"
+34,"1",3,"2025-11-05T17:12:28.813782Z","0231.mp4",16,54.209,"02",1,"2025-11-05T17:12:55.962022Z","/data/local-files/?d=hrc_dataset/videos/0231.mp4","[{""ranges"":[{""start"":6,""end"":366}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":409,""end"":409}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":409,""end"":409}],""timelinelabels"":[""Sucess""]}]"
+35,"1",3,"2025-11-05T17:13:46.590712Z","0232.mp4",17,68.02799999999999,"02",2,"2025-11-05T17:14:44.740591Z","/data/local-files/?d=hrc_dataset/videos/0232.mp4","[{""ranges"":[{""start"":6,""end"":537}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":605,""end"":605}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":605,""end"":605}],""timelinelabels"":[""Sucess""]}]"
+36,"1",3,"2025-11-05T17:15:49.417783Z","0233.mp4",18,131.55200000000002,"02",3,"2025-11-05T17:16:57.823696Z","/data/local-files/?d=hrc_dataset/videos/0233.mp4","[{""ranges"":[{""start"":151,""end"":322}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":770,""end"":770}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":770,""end"":770}],""timelinelabels"":[""Failure""]}]"
+37,"1",1,"2025-11-05T17:18:05.517582Z","0311.mp4",19,38.922,"03",1,"2025-11-05T17:18:05.517596Z","/data/local-files/?d=hrc_dataset/videos/0311.mp4","[{""ranges"":[{""start"":381,""end"":381}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":381,""end"":381}],""timelinelabels"":[""Sucess""]}]"
+38,"1",1,"2025-11-05T17:19:03.291600Z","0312.mp4",20,106.93700000000001,"03",2,"2025-11-05T17:19:54.609944Z","/data/local-files/?d=hrc_dataset/videos/0312.mp4","[{""ranges"":[{""start"":354,""end"":789}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":7,""end"":1042}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":1092,""end"":1092}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1092,""end"":1092}],""timelinelabels"":[""Sucess""]}]"
+39,"1",1,"2025-11-05T17:21:06.355206Z","0313.mp4",21,96.924,"03",3,"2025-11-05T17:21:34.798512Z","/data/local-files/?d=hrc_dataset/videos/0313.mp4","[{""ranges"":[{""start"":6,""end"":676}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":728,""end"":728}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":728,""end"":728}],""timelinelabels"":[""Sucess""]}]"
+40,"1",2,"2025-11-05T17:22:31.946719Z","0321.mp4",22,63.647000000000006,"03",1,"2025-11-05T17:22:49.880924Z","/data/local-files/?d=hrc_dataset/videos/0321.mp4","[{""ranges"":[{""start"":6,""end"":388}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":450,""end"":450}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":450,""end"":450}],""timelinelabels"":[""Sucess""]}]"
+41,"1",2,"2025-11-05T17:23:16.957414Z","0322.mp4",23,59.741,"03",2,"2025-11-05T17:23:51.335695Z","/data/local-files/?d=hrc_dataset/videos/0322.mp4","[{""ranges"":[{""start"":6,""end"":393}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":474,""end"":474}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":474,""end"":474}],""timelinelabels"":[""Sucess""]}]"
+42,"1",2,"2025-11-05T17:24:48.541620Z","0323.mp4",24,63.988,"03",3,"2025-11-05T17:25:23.395971Z","/data/local-files/?d=hrc_dataset/videos/0323.mp4","[{""ranges"":[{""start"":6,""end"":367}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":427,""end"":427}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":427,""end"":427}],""timelinelabels"":[""Sucess""]}]"
+43,"1",3,"2025-11-05T17:26:08.818495Z","0331.mp4",25,74.002,"03",1,"2025-11-05T17:26:39.680916Z","/data/local-files/?d=hrc_dataset/videos/0331.mp4","[{""ranges"":[{""start"":6,""end"":276}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":477,""end"":477}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":477,""end"":477}],""timelinelabels"":[""Sucess""]}]"
+44,"1",3,"2025-11-05T17:33:11.356085Z","0332.mp4",26,421.09299999999996,"03",2,"2025-11-05T17:33:43.535469Z","/data/local-files/?d=hrc_dataset/videos/0332.mp4","[{""ranges"":[{""start"":6,""end"":189}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":293,""end"":293}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":293,""end"":293}],""timelinelabels"":[""Sucess""]}]"
+45,"1",3,"2025-11-05T17:34:31.098846Z","0333.mp4",27,82.52799999999999,"03",3,"2025-11-05T17:35:14.288154Z","/data/local-files/?d=hrc_dataset/videos/0333.mp4","[{""ranges"":[{""start"":144,""end"":338}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":6,""end"":310}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":484,""end"":484}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":484,""end"":484}],""timelinelabels"":[""Sucess""]}]"
+46,"1",1,"2025-11-05T17:37:43.534349Z","0411.mp4",28,167.622,"04",1,"2025-11-05T17:38:04.561189Z","/data/local-files/?d=hrc_dataset/videos/0411.mp4","[{""ranges"":[{""start"":163,""end"":1162}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":395,""end"":903}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":1214,""end"":1214}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":1214,""end"":1214}],""timelinelabels"":[""Sucess""]}]"
+47,"1",1,"2025-11-05T17:38:59.974384Z","0412.mp4",29,53.416,"04",2,"2025-11-05T17:38:59.974398Z","/data/local-files/?d=hrc_dataset/videos/0412.mp4","[{""ranges"":[{""start"":380,""end"":380}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":380,""end"":380}],""timelinelabels"":[""Sucess""]}]"
+48,"1",1,"2025-11-05T17:40:21.575580Z","0413.mp4",30,79.86,"04",3,"2025-11-05T17:40:21.575589Z","/data/local-files/?d=hrc_dataset/videos/0413.mp4","[{""ranges"":[{""start"":917,""end"":917}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":917,""end"":917}],""timelinelabels"":[""Sucess""]}]"
+49,"1",2,"2025-11-05T17:49:21.803396Z","0421.mp4",31,575.383,"04",1,"2025-11-05T17:50:00.578857Z","/data/local-files/?d=hrc_dataset/videos/0421.mp4","[{""ranges"":[{""start"":6,""end"":113}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":399,""end"":399}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":399,""end"":399}],""timelinelabels"":[""Time""]}]"
+50,"1",2,"2025-11-05T17:51:46.939313Z","0422.mp4",32,104.687,"04",2,"2025-11-05T17:51:46.939325Z","/data/local-files/?d=hrc_dataset/videos/0422.mp4","[{""ranges"":[{""start"":833,""end"":833}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":833,""end"":833}],""timelinelabels"":[""Failure""]}]"
+51,"1",2,"2025-11-05T18:40:26.780635Z","0423.mp4",33,2945.9049999999997,"04",3,"2025-11-05T18:40:54.604040Z","/data/local-files/?d=hrc_dataset/videos/0423.mp4","[{""ranges"":[{""start"":7,""end"":374}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":412,""end"":412}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":412,""end"":412}],""timelinelabels"":[""Sucess""]}]"
+52,"1",3,"2025-11-05T18:41:57.942759Z","0431.mp4",34,147.947,"04",1,"2025-11-05T18:43:24.774242Z","/data/local-files/?d=hrc_dataset/videos/0431.mp4","[{""ranges"":[{""start"":186,""end"":498}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":423,""end"":472}],""timelinelabels"":[""Safety Conflict""]},{""ranges"":[{""start"":7,""end"":536}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":690,""end"":690}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":690,""end"":690}],""timelinelabels"":[""Sucess""]}]"
+53,"1",3,"2025-11-05T18:44:02.652473Z","0432.mp4",35,36.455,"04",2,"2025-11-05T18:44:02.652484Z","/data/local-files/?d=hrc_dataset/videos/0432.mp4","[{""ranges"":[{""start"":294,""end"":294}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":294,""end"":294}],""timelinelabels"":[""Sucess""]}]"
+54,"1",3,"2025-11-05T18:44:43.538870Z","0433.mp4",36,75.54499999999999,"04",3,"2025-11-05T18:45:20.140086Z","/data/local-files/?d=hrc_dataset/videos/0433.mp4","[{""ranges"":[{""start"":6,""end"":444}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":72,""end"":444}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":444,""end"":444}],""timelinelabels"":[""Failure""]}]"
+55,"1",1,"2025-11-05T18:46:27.075522Z","0511.mp4",37,64.977,"05",1,"2025-11-05T18:46:27.075531Z","/data/local-files/?d=hrc_dataset/videos/0511.mp4","[{""ranges"":[{""start"":542,""end"":542}],""timelinelabels"":[""Safety Avoidance""]},{""ranges"":[{""start"":675,""end"":675}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":675,""end"":675}],""timelinelabels"":[""Sucess""]}]"
+56,"1",1,"2025-11-05T18:47:07.890638Z","0512.mp4",38,38.065,"05",2,"2025-11-05T18:47:07.890651Z","/data/local-files/?d=hrc_dataset/videos/0512.mp4","[{""ranges"":[{""start"":666,""end"":666}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":666,""end"":666}],""timelinelabels"":[""Sucess""]}]"
+57,"1",1,"2025-11-05T18:47:48.140836Z","0513.mp4",39,30.84,"05",3,"2025-11-05T18:47:48.140846Z","/data/local-files/?d=hrc_dataset/videos/0513.mp4","[{""ranges"":[{""start"":505,""end"":505}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":505,""end"":505}],""timelinelabels"":[""Sucess""]}]"
+58,"1",2,"2025-11-05T18:48:25.544523Z","0521.mp4",40,66.736,"05",1,"2025-11-05T18:48:56.577139Z","/data/local-files/?d=hrc_dataset/videos/0521.mp4","[{""ranges"":[{""start"":1,""end"":603}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":613,""end"":613}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":613,""end"":613}],""timelinelabels"":[""Failure""]}]"
+59,"1",2,"2025-11-05T18:49:35.633697Z","0522.mp4",41,64.025,"05",2,"2025-11-05T18:50:02.989663Z","/data/local-files/?d=hrc_dataset/videos/0522.mp4","[{""ranges"":[{""start"":6,""end"":366}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":414,""end"":414}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":414,""end"":414}],""timelinelabels"":[""Sucess""]}]"
+60,"1",2,"2025-11-05T18:52:59.136591Z","0523.mp4",42,236.539,"05",3,"2025-11-05T18:54:01.770586Z","/data/local-files/?d=hrc_dataset/videos/0523.mp4","[{""ranges"":[{""start"":152,""end"":571}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":6,""end"":919}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":994,""end"":994}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":994,""end"":994}],""timelinelabels"":[""Sucess""]}]"
+61,"1",3,"2025-11-05T18:55:00.563275Z","0531.mp4",43,58.634,"05",1,"2025-11-05T18:55:22.064549Z","/data/local-files/?d=hrc_dataset/videos/0531.mp4","[{""ranges"":[{""start"":6,""end"":594}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":612,""end"":612}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":612,""end"":612}],""timelinelabels"":[""Failure""]}]"
+62,"1",3,"2025-11-05T18:55:57.813665Z","0532.mp4",44,73.59700000000001,"05",2,"2025-11-05T18:56:38.388847Z","/data/local-files/?d=hrc_dataset/videos/0532.mp4","[{""ranges"":[{""start"":6,""end"":615}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":639,""end"":639}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":639,""end"":639}],""timelinelabels"":[""Failure""]}]"
+63,"1",3,"2025-11-05T18:57:18.373168Z","0533.mp4",45,44.432,"05",3,"2025-11-05T18:57:24.509529Z","/data/local-files/?d=hrc_dataset/videos/0533.mp4","[{""ranges"":[{""start"":337,""end"":337}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":72,""end"":72}],""timelinelabels"":[""Failure""]}]"
+64,"1",1,"2025-11-05T18:58:44.391532Z","0611.mp4",46,104.239,"06",1,"2025-11-05T18:59:10.759010Z","/data/local-files/?d=hrc_dataset/videos/0611.mp4","[{""ranges"":[{""start"":440,""end"":629}],""timelinelabels"":[""Missed Grab""]},{""ranges"":[{""start"":764,""end"":764}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":764,""end"":764}],""timelinelabels"":[""Sucess""]}]"
+65,"1",1,"2025-11-05T18:59:48.167641Z","0612.mp4",47,56.545,"06",2,"2025-11-05T19:00:17.290876Z","/data/local-files/?d=hrc_dataset/videos/0612.mp4","[{""ranges"":[{""start"":6,""end"":209}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":305,""end"":305}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":305,""end"":305}],""timelinelabels"":[""Sucess""]}]"
+66,"1",1,"2025-11-05T19:00:44.107390Z","0613.mp4",48,60.307,"06",3,"2025-11-05T19:01:19.396378Z","/data/local-files/?d=hrc_dataset/videos/0613.mp4","[{""ranges"":[{""start"":6,""end"":218}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":267,""end"":267}],""timelinelabels"":[""Sucess""]},{""ranges"":[{""start"":267,""end"":267}],""timelinelabels"":[""Time""]}]"
+67,"1",2,"2025-11-05T19:02:24.690458Z","0621.mp4",49,101.69399999999999,"06",1,"2025-11-05T19:03:03.966390Z","/data/local-files/?d=hrc_dataset/videos/0621.mp4","[{""ranges"":[{""start"":7,""end"":271}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":373,""end"":373}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":373,""end"":373}],""timelinelabels"":[""Sucess""]}]"
+68,"1",2,"2025-11-05T19:03:29.172852Z","0622.mp4",50,54.753,"06",2,"2025-11-05T19:04:00.351499Z","/data/local-files/?d=hrc_dataset/videos/0622.mp4","[{""ranges"":[{""start"":6,""end"":360}],""timelinelabels"":[""Passive Wait""]},{""ranges"":[{""start"":426,""end"":426}],""timelinelabels"":[""Time""]},{""ranges"":[{""start"":426,""end"":426}],""timelinelabels"":[""Sucess""]}]"
diff --git a/index.html b/index.html
index b0c4b3666032a737f3903db53e6a8a9272483e28..ebf01350d6a30e71f8cab8b26ce602b49b844b2b 100644
--- a/index.html
+++ b/index.html
@@ -1,19 +1,51 @@
-
-
-
-
-
- My static Space
-
-
-
-
-
Welcome to your static Space!
-
You can modify this app directly by editing index.html in the Files and versions tab.
-
- Also don't forget to check the
- Spaces documentation .
-
-
-
-
+
+
+
+
+
+ HRC Failure Overview
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ No failures match your search.
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/rater_table.html b/rater_table.html
new file mode 100644
index 0000000000000000000000000000000000000000..e0d9f820e421884b1522c5ee80d5074b1d0388d0
--- /dev/null
+++ b/rater_table.html
@@ -0,0 +1,286 @@
+
+
+
+
+
+ Rater Comparison with Videos
+
+
+
+
+
+
+
+
+
+
+
+
+ 🔍
+
+
+
+
+
+
+
+ Filename
+ Label
+ Amanuel
+ Grant
+ Vidhi
+ Video
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/videos/0111.mp4 b/videos/0111.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e1741a5d2015caaa48a7568fdad948c9a5237f89
--- /dev/null
+++ b/videos/0111.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c4070ac8a93dd4ea96ae39cf421a5e1e82a13e6c11b4db6e0b35065c792ca2ab
+size 9909237
diff --git a/videos/0112.mp4 b/videos/0112.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..568db36d18ac0c61b2ee291142726b600232e812
--- /dev/null
+++ b/videos/0112.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2e462b4907b08d06124861ad57df637f02d210a4acf6303cf7ecfc1c1e5cc102
+size 6022206
diff --git a/videos/0113.mp4 b/videos/0113.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e9e2dbc00b3e0c0de6c63aea9f276f3cb1cbeb5c
--- /dev/null
+++ b/videos/0113.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:282214c1ad4c2e1cc70670d96a098bdb821657c8c20d4c5b9bc4f6bcdf7f6fbc
+size 5781678
diff --git a/videos/0121.mp4 b/videos/0121.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..526ca279c8e4dc4a056014653df4c02c2136587c
--- /dev/null
+++ b/videos/0121.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:08ad9f11c6de9066cb1ad10c4cb083b124b79f2d73c6a7c9ac681db25789699f
+size 1963171
diff --git a/videos/0122.mp4 b/videos/0122.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..56b703868b37f4b99b3e2488e216bbc0f9ecc1a5
--- /dev/null
+++ b/videos/0122.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6df80f5ca67eb80709f3e3f2a366ec3a8ca6e36c8e5e237ef085fe55a4e412ec
+size 1452178
diff --git a/videos/0123.mp4 b/videos/0123.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..a017b50974fbadf74f630382326428cbd14bc06d
--- /dev/null
+++ b/videos/0123.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:18216cd801f4e6e260255c280688d8efa57d026e5ab0a73e32874dc2f72b96f5
+size 1741161
diff --git a/videos/0131.mp4 b/videos/0131.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e4b9f15399a0dcb2fb4be328b18d2ef4d36616d5
--- /dev/null
+++ b/videos/0131.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8c7e0f806e4119e105e139f3c8e7ae96d1739f5d635ce06840e8f1caaaf57630
+size 18938194
diff --git a/videos/0132.mp4 b/videos/0132.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..23dc3cf98c069be0c021111ff2b8b822fee58023
--- /dev/null
+++ b/videos/0132.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1821fd9d1c6a71a31a81973b9a2ea33109899578cda247f6578859d24988f71c
+size 10429012
diff --git a/videos/0133.mp4 b/videos/0133.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..6e94034d3fee6da6447eeaeb06fcb5151748b273
--- /dev/null
+++ b/videos/0133.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:206fd135e40070ca5951f37872d534fbb13db871062e50f981025a75364ec821
+size 18630111
diff --git a/videos/0211.mp4 b/videos/0211.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..6b23de56e15d6bc82f4c6c39622ccf357c2b059d
--- /dev/null
+++ b/videos/0211.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:460acc235d0b5c56caaaad90916fb0064409262ba1a87a9ce8f1c99cd9ab8173
+size 3783278
diff --git a/videos/0212.mp4 b/videos/0212.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..ff4c13e9a41af25f622d3f508cc1f08f987aaf15
--- /dev/null
+++ b/videos/0212.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:44a96ec5d4f5c2d2829696ec625917d27de07555b895782f28b1d6e25eed75f9
+size 7889903
diff --git a/videos/0213.mp4 b/videos/0213.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..5b6881aba7d4f44e9820ce7cebb9d79092e126f7
--- /dev/null
+++ b/videos/0213.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:85f922e149c5b1730be1d70a8981c6ed689125de519c50a8bbb5f364d20f221b
+size 9332472
diff --git a/videos/0221.mp4 b/videos/0221.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..c2bb0526685f13d97dbd0f080bacf4199dcc4f1b
--- /dev/null
+++ b/videos/0221.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:27d478d86943fdb4d040881eb72d06866c7f0cc79a4195e45a452fc7759e775b
+size 1254218
diff --git a/videos/0222.mp4 b/videos/0222.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..ce43395cfae23a9dfc49b9c32db6dcd0cc3e004f
--- /dev/null
+++ b/videos/0222.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7485e675ec51f31fa9fb5a262ae5f520750887e9867a11c241f6f6ae232ea991
+size 1383595
diff --git a/videos/0223.mp4 b/videos/0223.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..0bba5353c42aafeddbb72a9cceb219e2598964db
--- /dev/null
+++ b/videos/0223.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:201c90fc84c382db16c62ff5386659c9f585b42db9b46787213d4cd7b263c8bd
+size 1606531
diff --git a/videos/0231.mp4 b/videos/0231.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..010866c48d58c0fe1a61e9a3be5d32c2fd66b127
--- /dev/null
+++ b/videos/0231.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6d63ea1e1ed3bda35df7eebd54af5f9094bc8ca8bb706bf48e8230e4fe73c6ac
+size 6239567
diff --git a/videos/0232.mp4 b/videos/0232.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f84a125cf039df46c7c622955b87096b96cc8382
--- /dev/null
+++ b/videos/0232.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b4639be665d74f3b16d57ef5190e4ebd27ad0ee8a06c2577cc09d6bae396a164
+size 8768180
diff --git a/videos/0233.mp4 b/videos/0233.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..b992758c142fcc4ca29826d0ac2c9200c62e5940
--- /dev/null
+++ b/videos/0233.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:89495c74b20a48c8eb8bd2f5e0e0de868a6a7a6b06731863f149d57522830160
+size 11323737
diff --git a/videos/0311.mp4 b/videos/0311.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..3396b2c1c7c730257b7aea87d1656650546f59de
--- /dev/null
+++ b/videos/0311.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:99d8428e26520aee079413f3f2e8cbe49f433c9698f38a9d3f9b2ab90fb64b24
+size 13135732
diff --git a/videos/0312.mp4 b/videos/0312.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..12e8547ec27383990b2a133291494986a994e208
--- /dev/null
+++ b/videos/0312.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4a94a29c484896096ce2d486d5d85d39af5021ba3586d48c9536877c799b8033
+size 17181529
diff --git a/videos/0313.mp4 b/videos/0313.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..3e75a9f88410fad17b5ba6eaec48a48f711517dd
--- /dev/null
+++ b/videos/0313.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1388a8c845f8cfcc0d6d3cf02b9ca638a8dba8a92900dac4529ec981aedffb4c
+size 11655634
diff --git a/videos/0321.mp4 b/videos/0321.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..bf1b9b305c2e834c32aef691a5fa2ba9ea3c4fa3
--- /dev/null
+++ b/videos/0321.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d6e01938469bf03688c30b5328042246d77bc4d5604b5d917349f74427e94f72
+size 1474001
diff --git a/videos/0322.mp4 b/videos/0322.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..2026f5e2d4327d8770b89efdf57ea5de5a607a25
--- /dev/null
+++ b/videos/0322.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9c5ef651c62c5185475f00c49a53bc025ff4047678a30354bf4994e8725ab8d6
+size 1511791
diff --git a/videos/0323.mp4 b/videos/0323.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..0e0e8ac24d559b9bd7a4118e098cd11c5db04598
--- /dev/null
+++ b/videos/0323.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:70221365cafc2b5f2ef336a38c0059a6f90a4e0f8fb8c5e23793d42fcd353e07
+size 1524591
diff --git a/videos/0331.mp4 b/videos/0331.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8811a4cd711bd913b77591c0bb1e0734a47babeb
--- /dev/null
+++ b/videos/0331.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d3e291f7a4024411687071eb89108d40c34ae59357f155e70a5f99758d00fecb
+size 6881286
diff --git a/videos/0332.mp4 b/videos/0332.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..4b2b687a2c31055fd6678edfe839fdf8bbc3ecd2
--- /dev/null
+++ b/videos/0332.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d78db1b0393e20b7bd7660136077dbac8a21c8aa0853c8c278172452e30905b2
+size 5636096
diff --git a/videos/0333.mp4 b/videos/0333.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8a1b88cfaf355773537b4c218fa8487027e8d8e4
--- /dev/null
+++ b/videos/0333.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:06a00f9298d7ce9b0b0dee66a1c84133a36991312c390079d8b72b9a75f0dc07
+size 8167180
diff --git a/videos/0411.mp4 b/videos/0411.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..c58cc53895af6f5056fdedc17b7e6d4ae25c7c2d
--- /dev/null
+++ b/videos/0411.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0dc19c1d35f4ceadb31ba28a953391ed05a73509a08b8d4c2b572db51b1be4bf
+size 18814519
diff --git a/videos/0412.mp4 b/videos/0412.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..a8b112cf6d925dbbd1d0c92bf5b8fac8e86de2ca
--- /dev/null
+++ b/videos/0412.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0c1da0d7019007a5240a1438a58c6f9ad2b291dae92601fdd143a087ccba6789
+size 6157249
diff --git a/videos/0413.mp4 b/videos/0413.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..c7263d1bd62e9026c2125a3b3b849757bfd92620
--- /dev/null
+++ b/videos/0413.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6a172449640fc812d67112e7b86a3d299daba99a9535e266385344607c548abb
+size 14036709
diff --git a/videos/0421.mp4 b/videos/0421.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..811ea48a9af0c58e98280a6f8de8135ef86f857c
--- /dev/null
+++ b/videos/0421.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7ff6d5b0cae5e9f7e2efecf077c4b99a6b1c74205dd272d4747b78a893c34ac2
+size 1300912
diff --git a/videos/0422.mp4 b/videos/0422.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..c94cc6b0fea677282c17e1253aaf604d8dd4fca2
--- /dev/null
+++ b/videos/0422.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c10c3d4e94eadfd3bb796558cb1d6142e5f50c4f2dd45f8ca178b1e8a3af00be
+size 2245773
diff --git a/videos/0423.mp4 b/videos/0423.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e4bb56b88f806deb75ed6ca4e6350dd54d17d61a
--- /dev/null
+++ b/videos/0423.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3ccbf0e03b5b1b6f5e64dbac3dfab733152965729cf587f78d5626962034791c
+size 1556573
diff --git a/videos/0431.mp4 b/videos/0431.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..c51ff5eb35ede93d7e43270e3c0e85be051653cb
--- /dev/null
+++ b/videos/0431.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c61ca2fdd8da25339ddfa2e1df2f8825c9eb9bda1edf7c804960bb49e22252b7
+size 12088065
diff --git a/videos/0432.mp4 b/videos/0432.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..2b6e63c17100d11841056fcb8569d41cb9cc6bf5
--- /dev/null
+++ b/videos/0432.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b1bfbed109345ebdb9a4aac5f15f1fe971295ab864300b2a05e13fe672b7a95b
+size 5685207
diff --git a/videos/0433.mp4 b/videos/0433.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..59ca5b687558bc00813e2ddce1e9c795a21ea6cc
--- /dev/null
+++ b/videos/0433.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:14bb8f88eab896ac5e45a11d044f4dae6769505a746a6ea4d5764f44c8adfb06
+size 6096045
diff --git a/videos/0511.mp4 b/videos/0511.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..9d4fc14c6e8f5c8d9a632de96d5eb0b92cadb6bd
--- /dev/null
+++ b/videos/0511.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1de965fa726e13c1712a9ef9ceea55bb1cf48371a8b81c33c31d2c4fe6a9a991
+size 10465169
diff --git a/videos/0512.mp4 b/videos/0512.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..6618ed42e0bdf7c327c9aa3833cec79e706a7bcb
--- /dev/null
+++ b/videos/0512.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9ed8129d8945d7454e0e9cf999c1bbfc591d7f63d475c48d8104aca14680f048
+size 10506351
diff --git a/videos/0513.mp4 b/videos/0513.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..3cff72fbec2a8c2812cdadbecb7eaf068deee882
--- /dev/null
+++ b/videos/0513.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:07f80006bfd2b489e9a743385b9b3380814cc3fe6e6c170b14d0a8dfdfd5a798
+size 7947658
diff --git a/videos/0521.mp4 b/videos/0521.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..bde8d4adb636461f7a9d07f55f0f3c81b83de358
--- /dev/null
+++ b/videos/0521.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:04392c6cbc5ce48de9af00bf9ca6b3a11a1fb5622b44a8cc5743e04e2578a8fe
+size 2678223
diff --git a/videos/0522.mp4 b/videos/0522.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..527a1a64571b694a89493c38c3491bcebb1776f9
--- /dev/null
+++ b/videos/0522.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:416fab3f0d93635905cc603ac45e9c16e051c7a915878887e4f13f2bf3af79db
+size 1602980
diff --git a/videos/0523.mp4 b/videos/0523.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8397c29097f223a32c415a378a76c71cef1147ff
--- /dev/null
+++ b/videos/0523.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ce51bfa2476cc5113c4c4353359c93ea33d5eda6381085f80d8a8c8ad6260566
+size 2873292
diff --git a/videos/0531.mp4 b/videos/0531.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..1b322869d7c2db19a1df0137f588c7a54a02348a
--- /dev/null
+++ b/videos/0531.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:eb5c6809e2231c07ac71ac19b073bed3157651b55c6d3f8ca4bf5f295b4402a6
+size 10651361
diff --git a/videos/0532.mp4 b/videos/0532.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..608e1f34161121ea68d0cbe66055b2d28dc59da0
--- /dev/null
+++ b/videos/0532.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ba366445bc07f844e9e0c5583f1e200f45625ce15803a8b9d2c20b1a3a187342
+size 9970223
diff --git a/videos/0533.mp4 b/videos/0533.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..6bd7b637b7fbf19cc02e4f44eddfc8c0ac2664bf
--- /dev/null
+++ b/videos/0533.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:625490a4a4d96006ec71dcb3dbb5deb74ee408c91a98254adc25dc57c033097e
+size 4746361
diff --git a/videos/0611.mp4 b/videos/0611.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..14afb1f3cbdcad59bc79462c49d0c8bd8fc1b447
--- /dev/null
+++ b/videos/0611.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2be96f2531aa87facf016e826193b57ea880ee788476b0a21ff76ba2ba730099
+size 11615671
diff --git a/videos/0612.mp4 b/videos/0612.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..fe5699d4bfe7efb318fa93314413728d15efc4ee
--- /dev/null
+++ b/videos/0612.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:81dca49d28d1bed850b3dcef1256e60fd2332151c3f04b6d916851dd30224910
+size 5787409
diff --git a/videos/0613.mp4 b/videos/0613.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..82ecc265169658b45cb8ea7ba626400cd461472c
--- /dev/null
+++ b/videos/0613.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9787b0cbcdd9adde722d4b4eb5d483ab0de1d180679886a31e7129f5ee4fe510
+size 4371768
diff --git a/videos/0621.mp4 b/videos/0621.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8917466cc24146f87cbacf2863e7af7246c99219
--- /dev/null
+++ b/videos/0621.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7d9cc3894cf72e7fb591b9ab01624a5d803d08b6ee78a637e61077b30ea3d570
+size 2392438
diff --git a/videos/0622.mp4 b/videos/0622.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..bee4724ce5ca3e82c277ba7242375de62beec262
--- /dev/null
+++ b/videos/0622.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ce1bf82470e1efa119c8267a8d916d9b865cc5601837bc4304055fb619da9eac
+size 1801024
diff --git a/videos/0623.mp4 b/videos/0623.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..bff0b3ca465b7d32466859f3f08dcc8971dbaa6e
--- /dev/null
+++ b/videos/0623.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:220648fa8e982884cb967f26e44e6671c37a19fba52fc4d9ce55ea9f73d0bab0
+size 1171842
diff --git a/videos/0631.mp4 b/videos/0631.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..91f435325c7ea3eef233ce534954a24b6bf2efcc
--- /dev/null
+++ b/videos/0631.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b968f9e0526b7bf57ea456f97c610552af6a7aa2d5099c15775cd0302be3193e
+size 5807954
diff --git a/videos/0632.mp4 b/videos/0632.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..1257a3882b636c9b71a194494dd6aaa14054a2ef
--- /dev/null
+++ b/videos/0632.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:79c308537d7fdfb1f548eabd6cd6d58b1ea9b7734fc9b9e3cde30a040bc86380
+size 4994203
diff --git a/videos/0633.mp4 b/videos/0633.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..eb3e7b3194c78606fca01b46940b458d3a5c0d9a
--- /dev/null
+++ b/videos/0633.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0c945d3037f9443ff6c43eaae37f03e21d4c1d50442fe638bd5628a27aa83e04
+size 7726520
diff --git a/videos/0711.mp4 b/videos/0711.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..064a50406bde5f04c4c0e5487132be5203c4a384
--- /dev/null
+++ b/videos/0711.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:44dc0f57a705b67e9d4ae2ee72e7ece4c79768692ea8361ea57ad2363ecbe18c
+size 3592769
diff --git a/videos/0712.mp4 b/videos/0712.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..7d84b11021e9d84375195f3de3afe2d0ee990d30
--- /dev/null
+++ b/videos/0712.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ab16adcdbd0662da33854f6e4cd163d137e3ff064fad071867b2401287428591
+size 9598356
diff --git a/videos/0713.mp4 b/videos/0713.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8ba5dff5125cc986798232dafd0d1d507e8d473e
--- /dev/null
+++ b/videos/0713.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a9327a892e2d94e21913d3cc7f4b53b70512abbead4d5a8a1b4f19c180a51f21
+size 23550083
diff --git a/videos/0721.mp4 b/videos/0721.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..d6de7e499ee6992445e82fc484768cd00ee7ef14
--- /dev/null
+++ b/videos/0721.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fb3d32d34ade998886b11cec4705c68b7b94a07fd2e2059ae9b16da27c3f00fa
+size 2615066
diff --git a/videos/0722.mp4 b/videos/0722.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..37e50249556f477ba53b13dfa43e0ea558ba6448
--- /dev/null
+++ b/videos/0722.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2ac43c082c00d4ead522da39e3eacef68ff0b3452fac5b603601e277410b60e5
+size 1168371
diff --git a/videos/0723.mp4 b/videos/0723.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..bff0b3ca465b7d32466859f3f08dcc8971dbaa6e
--- /dev/null
+++ b/videos/0723.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:220648fa8e982884cb967f26e44e6671c37a19fba52fc4d9ce55ea9f73d0bab0
+size 1171842
diff --git a/videos/0731.mp4 b/videos/0731.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..7b1a64b98bf968adf62f2d6e8999c35619df24fa
--- /dev/null
+++ b/videos/0731.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a3213a63aaea93d606aa80590978eed5609230b001bba71a7a77cd7d24af6b8f
+size 5145706
diff --git a/videos/0732.mp4 b/videos/0732.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e81f93eb1dd98c2a5b7f8e7aed6c9c2fa85dbae1
--- /dev/null
+++ b/videos/0732.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:382733df8f8d4a91b77b96ae6438ce0806889dfa41d8409a90e9c472b7fa5caf
+size 7234014
diff --git a/videos/0733.mp4 b/videos/0733.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..44fd62dad3a4e209522f902dec48f1473a8cbeeb
--- /dev/null
+++ b/videos/0733.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b0183f5b7991c03770a88fe79ab3b6fd70e822e2b9f9b1494f4499b9370690d0
+size 11043101
diff --git a/videos/0811.mp4 b/videos/0811.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..dde7ffbb270ce0c4688dc7ed6be1e03755de6a8e
--- /dev/null
+++ b/videos/0811.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7936b6b3f36b23c406856db433b9fad52e199653590d945c9a1c3e73c2c5c70a
+size 7963547
diff --git a/videos/0812.mp4 b/videos/0812.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..945b487530a480d110505fa2924f0d1a929b5a11
--- /dev/null
+++ b/videos/0812.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:749f764364147d1de79d860adbe110034dca42d254626e57854b7c1805b1d7ba
+size 7601078
diff --git a/videos/0813.mp4 b/videos/0813.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..9ff6e0598dcce3931d0559b043ee4c7cd6a6abea
--- /dev/null
+++ b/videos/0813.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a57507e2c1f2827830071e104d6d385d27323f90aed9d5862ffef5d75a42fa45
+size 8152211
diff --git a/videos/0821.mp4 b/videos/0821.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..3076f98e7a26b65624c5de1115031bb84fab5a3e
--- /dev/null
+++ b/videos/0821.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f5156fdc5658d59e256fdc2e73ca090936a5a987596824ea97865baa2e4c3520
+size 1278257
diff --git a/videos/0822.mp4 b/videos/0822.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..aa05ead4b4bf11056b7a39c1c39a5d15363287ed
--- /dev/null
+++ b/videos/0822.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:16cf24bdda8683946987bbc30a3dd490ee26dac473847b4a8f98ae8abe3482eb
+size 1591648
diff --git a/videos/0823.mp4 b/videos/0823.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..cb47e75685df301b1d568461d9106a962542eef4
--- /dev/null
+++ b/videos/0823.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:dfa1aa3c16bce4c6d9711e117ca75204bb16d050ce0e15a0b0f3eb6344298649
+size 1437961
diff --git a/videos/0831.mp4 b/videos/0831.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e73b0b3804e43c6b6adb101cff55cc0681110099
--- /dev/null
+++ b/videos/0831.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9c5ca2641ac63335475b72270c5d010a7ee910df140052ba510c355d6bc815fd
+size 3160631
diff --git a/videos/0832.mp4 b/videos/0832.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f9303386783ed8c497d86d80866418b024cd4753
--- /dev/null
+++ b/videos/0832.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:40d85d1f9dbe429ce93239f556de4334be6e59b239b1e4becd8e94e7daf5e6a8
+size 1690761
diff --git a/videos/0833.mp4 b/videos/0833.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..559970098e4f9836ea429af5286088fea6e10ce7
--- /dev/null
+++ b/videos/0833.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7c9b531be6a0388150f3437d8444b3b3df83024943845650f10ca027241c9496
+size 2781286
diff --git a/videos/0911.mp4 b/videos/0911.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..fc1294583afb69e9a0fd5fdbdd3c9fb30b338143
--- /dev/null
+++ b/videos/0911.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:58c466a4f6db409f0cff8cd8bfad92e90bbd6aa6aca0e701a48f53a757688789
+size 8637041
diff --git a/videos/0912.mp4 b/videos/0912.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..38d87ca3c4e7613b3ba205a8cf9af9c54d79f387
--- /dev/null
+++ b/videos/0912.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8824f78c5d9cb68e39a179962d3081ddf72bda2d62233616b805b05e58eef3c8
+size 6020430
diff --git a/videos/0913.mp4 b/videos/0913.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..2d3b70a6601872645376ef5888e01a106f67e333
--- /dev/null
+++ b/videos/0913.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8939a5a60219f48ab397370b04443e7154df9cdeea3eebd760ce45385cac60a8
+size 4883185
diff --git a/videos/0921.mp4 b/videos/0921.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..6fe5994f461cedd4d252b2b0a297f60a91ac0bb3
--- /dev/null
+++ b/videos/0921.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:656569bd04093fa37552f5d6c600c630933ba21fea71817b0e5bba255da76759
+size 1362033
diff --git a/videos/0922.mp4 b/videos/0922.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..1cc636674769599a2c519ec060057713d86a45d7
--- /dev/null
+++ b/videos/0922.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:566e945b707db1e858750940ad81b829cd87fad661af452feee6fe42152c0b44
+size 1392673
diff --git a/videos/0931.mp4 b/videos/0931.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..40e61fce6fee6aaf4e93ec220d9551f8f4d25965
--- /dev/null
+++ b/videos/0931.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5662af52c1b0c49fcb12e870a6a2cc7caa6ef0ee2fa67d10b743efbb813de143
+size 4523720
diff --git a/videos/0932.mp4 b/videos/0932.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f9e4d5f2ff1571286a2852e1d7e1808db7e0580e
--- /dev/null
+++ b/videos/0932.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fa342d2b63eceb8f9019375b320d41f21ace7cb12f60cbbc5c553082b30158d4
+size 1388994
diff --git a/videos/0933.mp4 b/videos/0933.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..6101a90544242bab5867d6c7727831a1a2d09103
--- /dev/null
+++ b/videos/0933.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9c22b76740056384a037c1c3fc79e6cb7dbd039f498422a0556ad723aaa02fc4
+size 7224161
diff --git a/videos/1011.mp4 b/videos/1011.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f330e9b62c5fbcf9304bbe6b8d727187d83f045c
--- /dev/null
+++ b/videos/1011.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:889fdfaa3d0c81e8ffe5dfb0b287d4a0a732ca7fac37e4aee670d482c9bde550
+size 3644796
diff --git a/videos/1012.mp4 b/videos/1012.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..5e46df3ee25688d5c856e8437462c637cbef6099
--- /dev/null
+++ b/videos/1012.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6609d69ee03d68b77e80ae89cca7a51149f51011a401dd7eb557ad92171f6029
+size 10979341
diff --git a/videos/1013.mp4 b/videos/1013.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..450d0f776af6264011d1df9e951a9d0846bfb08f
--- /dev/null
+++ b/videos/1013.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:911d046956d1c7ab18477062e4308e18cb5cfd01768ba6eab83d77326397d8ea
+size 26984949
diff --git a/videos/1021.mp4 b/videos/1021.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..ab0fbd3439911aaf09d82592e8e9b9ef24f276e4
--- /dev/null
+++ b/videos/1021.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d89b3ebafecca2bc10436f92505cb10ed51b02384661ff3cd0918a7c64865005
+size 2481473
diff --git a/videos/1022.mp4 b/videos/1022.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..10c4153c448fbdca2f535a3d9c2d3e28335aea33
--- /dev/null
+++ b/videos/1022.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7e9e38c10ef6d9de2f41c19294fc67375f9f7a8ff3f8a07e726d1e9be14ba095
+size 2039500
diff --git a/videos/1023.mp4 b/videos/1023.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..e8a39be5ddf248d5ad13643865f8018c48cd8aaf
--- /dev/null
+++ b/videos/1023.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a1581573385d0b6a119c4a095328a0233939c849f4b171c1db8beb01948c5615
+size 1950079
diff --git a/videos/1031.mp4 b/videos/1031.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..0a63769adba38c3f466ed525621f31da3996e293
--- /dev/null
+++ b/videos/1031.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d62e7d656ecfbb7088969d458950fd7c09266d0d70d83436a4a72c6a2ea7e6e7
+size 1656476
diff --git a/videos/1032.mp4 b/videos/1032.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f827160e25894d3bb6c6007b42e26138ad96f197
--- /dev/null
+++ b/videos/1032.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a8050d87209314e6c7b74538c1fb77343736c21dba5f8c6203485cb86b71a89e
+size 1634195
diff --git a/videos/1033.mp4 b/videos/1033.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..4fdf75f947b4c6196627a51863922ddd696cdb48
--- /dev/null
+++ b/videos/1033.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a67cff4354e8620a9741287c20c0336bc280552f97e64256757130ac0f5283b9
+size 1649598
diff --git a/videos/1111.mp4 b/videos/1111.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..fda2acc7c6c15c4869f2cf6793ea066385e7da73
--- /dev/null
+++ b/videos/1111.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8d36ef9956651c1ec0215f3a4813b1bf34c5870c25dbb2239a4bcf65b2b48180
+size 3022332
diff --git a/videos/1112.mp4 b/videos/1112.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..1320ec51c9c64a1476e18b6a264ba18fbfdc622c
--- /dev/null
+++ b/videos/1112.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d0bbcae5f799b23e1b4ef75d2ab8813c859601d1548a01d1458c6bc6fa4b1236
+size 2391632
diff --git a/videos/1113.mp4 b/videos/1113.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..0c7789ff1fa4dc237268f015b10ddead4f5334d0
--- /dev/null
+++ b/videos/1113.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8a093d9cb233e8016081436b52b1a4dcc19e6afc39c916be437df877fd157c44
+size 3444155
diff --git a/videos/1121.mp4 b/videos/1121.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..b6eeb31d6585874832ae76eb64e4a67ebebad607
--- /dev/null
+++ b/videos/1121.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:07b05049ac189053056fd2e666854c76e803c36b25ac75bf30cba9677d9426f0
+size 1155708
diff --git a/videos/1122.mp4 b/videos/1122.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..b1de47a1cce978ae973ad71e736b2d28fde1a741
--- /dev/null
+++ b/videos/1122.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:abd4042dc0235dc593fa192c661d409d771a531d63a56dfe11b29e70fbf2b505
+size 1282362
diff --git a/videos/1123.mp4 b/videos/1123.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..7830389c6d6d9f46523e76caacb57e8e038b2e7e
--- /dev/null
+++ b/videos/1123.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c46058b04d351fed4a0367d10062f8d85157b0111417ddf95bcbad13a0208a68
+size 1220104
diff --git a/videos/1131.mp4 b/videos/1131.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..2751968c80199e4a304ed85071c01e6ef20603b7
--- /dev/null
+++ b/videos/1131.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:644e1a2f3249ebd8744b0ebb6b926c816de7592c5e2d0408c362ea55f5a9e301
+size 810808
diff --git a/videos/1132.mp4 b/videos/1132.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..08241ccacf9ba51f365735b361d3411b75d34ed4
--- /dev/null
+++ b/videos/1132.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1f62f582a0594ee32afc0e840c279a98eb0a52040b2ec29d43f08123f369f1c8
+size 1671273
diff --git a/videos/1133.mp4 b/videos/1133.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..13dbc36117a327bd65ff29812a9ea15d5c12a882
--- /dev/null
+++ b/videos/1133.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b1985fa0288767752561d35446d05e20f43b85c9784dc5faa884ebe28643310a
+size 11189778
diff --git a/videos/1211.mp4 b/videos/1211.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..b5ca2cf9b5442ad5fd45863b7fc6badb5685487e
--- /dev/null
+++ b/videos/1211.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5d90f24b1b1e4c14e5d44a773fdb021e940ca409317ab51fb8dc76e8981fc33f
+size 3627482
diff --git a/videos/1212.mp4 b/videos/1212.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..7a9a916157d4bac8437799c95060107bd0e0897f
--- /dev/null
+++ b/videos/1212.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5fddb665b285042099f58aeb07d0e2429653f2011b8bb7b29b37965f9b518bd6
+size 2133421
diff --git a/videos/1213.mp4 b/videos/1213.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..aea4f2dcadbeb2a8fa55984ec2b031deaf7d3795
--- /dev/null
+++ b/videos/1213.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:441aeea1974940105b3622477f5aface36c2378888f4db7d49cc41006d7d17c7
+size 2230491
diff --git a/videos/1221.mp4 b/videos/1221.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8cc311723416c497ed9ac91dabd81e08b0d9d139
--- /dev/null
+++ b/videos/1221.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:05c5e94ea9363a4ca78bb7eaf8bc3ea86dc785e2cb3ec32011d7b58c2864c3bd
+size 1294607
diff --git a/videos/1222.mp4 b/videos/1222.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..34c3cea896cce7a75383d6a74466dee2d405583a
--- /dev/null
+++ b/videos/1222.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:838735b4e2917f2e43877246c8a24c50c73cfbcdd2053bca42abb280732ba83e
+size 1189481
diff --git a/videos/1223.mp4 b/videos/1223.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..78edc34a811539bcac624dae2e4c543165f98b7c
--- /dev/null
+++ b/videos/1223.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e4fa3f1fb19aff7bc293f6233950857c3be4215e03c549ae8d093bce50c23ae6
+size 1417870
diff --git a/videos/1231.mp4 b/videos/1231.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..43b9ba74a629ede6d27519aff3d49ff78c059ffc
--- /dev/null
+++ b/videos/1231.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c03beb4bafd639a382f4856006e4f729bffe4bd4f4fa127b577f2b7756d071ba
+size 1379573
diff --git a/videos/1232.mp4 b/videos/1232.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..dd6d99cc434ae531eec02ffb7e5f79ba525fe7e2
--- /dev/null
+++ b/videos/1232.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e2816e7e40168bf9777a20b8e78c2a7a432f6c7bd087ebe86f43ed03ebabbbdf
+size 1795994
diff --git a/videos/1233.mp4 b/videos/1233.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..3b923f7f8814b55852a988e68169389fc268dbef
--- /dev/null
+++ b/videos/1233.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:670c005992e4840557777f01fe95e8d9a17a105c86974fc1ee0358d2fd1b416c
+size 1262525
diff --git a/videos/1311.mp4 b/videos/1311.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..c4ddaa74e5e0a053c886775fe3a4493f0f412d15
--- /dev/null
+++ b/videos/1311.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:de5c67c19cdec6404e8172873862782944a13c9783867521985898f47dda346b
+size 13138604
diff --git a/videos/1312.mp4 b/videos/1312.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..7c4decc78ee33d20515efb99300526d78e19dabe
--- /dev/null
+++ b/videos/1312.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d6634d23c0f531a4b675ba1a2486b67544c7dc0f055e40501d5449de7742f8d7
+size 3723327
diff --git a/videos/1313.mp4 b/videos/1313.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..2f6b957d201a33ba2faf04350e01a317771836d6
--- /dev/null
+++ b/videos/1313.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2f607f7436c21d5a5b5b76d158e29c0d6a5ddc1df242853ac8f31046446d719a
+size 2000765
diff --git a/videos/1321.mp4 b/videos/1321.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..00bf96f615992e9f850496a7cc81948ddf7d1f1b
--- /dev/null
+++ b/videos/1321.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c9ed1c979e1190dd415891512f9629f6ee059da25e4c96c70008c3f7abb85b12
+size 3642306
diff --git a/videos/1322.mp4 b/videos/1322.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..00d7fd8febff63e9f70cbadfeb191e7606475dde
--- /dev/null
+++ b/videos/1322.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c33f45fe09c7b25208125f4f61cb79a518bf3c2842f288c67fba230f67d49e04
+size 1743530
diff --git a/videos/1323.mp4 b/videos/1323.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..08d139afd725021032aaca15ddcdd2f18381d0b3
--- /dev/null
+++ b/videos/1323.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b5b3410953c058a5aa185493849d918bd09015d28ab08ed8a52e7f2fb3e7bf95
+size 1276929
diff --git a/videos/1331.mp4 b/videos/1331.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..7f9fd88e355bacba2dc4e465580a175106873900
--- /dev/null
+++ b/videos/1331.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4f0323fa83e19660c97a5dff5fa8f6d0be77f848f5790d8d4283b3cc9896d255
+size 1632284
diff --git a/videos/1332.mp4 b/videos/1332.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..a04969f29d4cb340c33a455990e3988680d49040
--- /dev/null
+++ b/videos/1332.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:846cd7e5c372dc09eb06d799008bbdeb60adb8802c038ee01a2a6b9ba83f4b62
+size 4984837
diff --git a/videos/1333.mp4 b/videos/1333.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..4e243f974e9d5b66bf44a7f821b944d32f30be79
--- /dev/null
+++ b/videos/1333.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5022142db62a08d6bd5c0fc7f9d73fd05435c9e7c483aaaa6a3b9795187b0b44
+size 10697507
diff --git a/videos/1411.mp4 b/videos/1411.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..0c4d55782088ef6827a9c28ae4cedcd22fcafba1
--- /dev/null
+++ b/videos/1411.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7980511b35833289d2b13c827f03610f0c389b6e98405143c5565cb7de5de38a
+size 2148347
diff --git a/videos/1412.mp4 b/videos/1412.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..be5ef82affda62ba7f18430ec34925d0a6b57f87
--- /dev/null
+++ b/videos/1412.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:67ec466e9844daf8a675c1a8125e5d5ea5a182f36a49ac480152bfbf84117a7d
+size 11357140
diff --git a/videos/1413.mp4 b/videos/1413.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f55c28ce6f1a26b5835d6dd4c9fd247a333092ba
--- /dev/null
+++ b/videos/1413.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e8f0137545d4f825a1e685bdceeff19f2e240f6aaff6091b691ea08da2e2d35a
+size 8294429
diff --git a/videos/1421.mp4 b/videos/1421.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..471e2b233d2931a1658ce65b0fe2ec80d396cc51
--- /dev/null
+++ b/videos/1421.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:49d492f92bf8f6af91f5ffa5a4b81609bbb1f4ec4c56e4b95114e08b5904a381
+size 1563248
diff --git a/videos/1422.mp4 b/videos/1422.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..dac0b6aac863635295741a10517d6e3f3713516c
--- /dev/null
+++ b/videos/1422.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2b81a4b1ddf252e08a7f2a4fa6cd648167c0c9158c524dcc65c502ccda78584c
+size 1834404
diff --git a/videos/1423.mp4 b/videos/1423.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..9a9d25bab842bec3f6ea3323a76907d411b920d3
--- /dev/null
+++ b/videos/1423.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3c1f8ef5efc8ad4df5ce20a2470e85eb185103f55b9ac42e185e880a1ed3e1a9
+size 1537060
diff --git a/videos/1431.mp4 b/videos/1431.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..8aa8a7f443f2a7d795a2240e47ba98da77482156
--- /dev/null
+++ b/videos/1431.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3e7027e38f322f2b11323ca75f2912e21b3ac740b9d0a0bcea06ae07e1152c84
+size 5286688
diff --git a/videos/1432.mp4 b/videos/1432.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..3fa17d819e5b6ed84cfdc4a4f18211dd00e2e90c
--- /dev/null
+++ b/videos/1432.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5aee61835196fccc92965aca71cf59e6a2d86ef1f1b8782cf62f367a667594e5
+size 6391351
diff --git a/videos/1433.mp4 b/videos/1433.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..f315e1608dfc99bdce81e25d93c413e098756e5c
--- /dev/null
+++ b/videos/1433.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e62195e199e63674b4185cde12c344df68bb7dbf6c860e73d50abb19858a7aab
+size 13747486
diff --git a/videos/1511.mp4 b/videos/1511.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..d97f27517d1f3a044cd9ab7dc6212df0f6d0db2a
--- /dev/null
+++ b/videos/1511.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:70b5c148830da4055c6f5f6e2bafdf435177e6350887845c9382d0abafecd867
+size 7069441
diff --git a/videos/1512.mp4 b/videos/1512.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..81d3e99b1116ae1141ad4616ef4f7d5b226e6253
--- /dev/null
+++ b/videos/1512.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5cb168bea6c687e8b13a6e1b2061e2edfe62e3de9f2e1ec1133699b2dd31d644
+size 16605599
diff --git a/videos/1521.mp4 b/videos/1521.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..fc8d53959a245db6e3b70fd0a5fd4a9eb27bcb44
--- /dev/null
+++ b/videos/1521.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ff2e772362a1a9e9740e58a084b2705e95eb6e9772cfdebf1ed1295d15c76049
+size 2411128
diff --git a/videos/1522.mp4 b/videos/1522.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..38c7a3a217685c808b7de27de2adbd8c56cd8945
--- /dev/null
+++ b/videos/1522.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:80bff453212e8e5318e71cb7b256fd2c557a37ac15bcfa76fdccb125c64e0091
+size 2416181
diff --git a/videos/1523.mp4 b/videos/1523.mp4
new file mode 100644
index 0000000000000000000000000000000000000000..fb2b04aeadde583f2865893597dadda5d0c554fd
--- /dev/null
+++ b/videos/1523.mp4
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:d5778b49931793363904e395c4e42149476eb33c5d1a61347c590038219693ad
+size 2295307