LadyPary commited on
Commit
d9abcd0
·
verified ·
1 Parent(s): 1b70833

Upload folder using huggingface_hub

Browse files
Files changed (49) hide show
  1. Helper.py +79 -0
  2. README.md +4 -8
  3. Soap.AI_files/Blocks-xuLVTZz4.css +1 -0
  4. Soap.AI_files/Button-CTZL5Nos.css +1 -0
  5. Soap.AI_files/Example-B5CSTz0f.css +1 -0
  6. Soap.AI_files/Example-Cj3ii62O.css +1 -0
  7. Soap.AI_files/Example-D7K5RtQ2.css +1 -0
  8. Soap.AI_files/Example-DikqVAPo.css +1 -0
  9. Soap.AI_files/Example-kFjxihe2.css +1 -0
  10. Soap.AI_files/Image-B8dFOee4.css +1 -0
  11. Soap.AI_files/ImageUploader-B7bPUstM.css +1 -0
  12. Soap.AI_files/Index-B0JJ6p9c.css +1 -0
  13. Soap.AI_files/Index-B2S_zKCm.css +1 -0
  14. Soap.AI_files/Index-BAQumg2K.css +1 -0
  15. Soap.AI_files/Index-BGmqBTg_.css +1 -0
  16. Soap.AI_files/Index-Btj90uky.css +1 -0
  17. Soap.AI_files/Index-C-7D3Y3j.css +1 -0
  18. Soap.AI_files/Index-COkUHsKJ.css +1 -0
  19. Soap.AI_files/Index-CptIZeFZ.css +1 -0
  20. Soap.AI_files/Index-D-1bCrLQ.css +1 -0
  21. Soap.AI_files/Index-D8o7u_T6.css +1 -0
  22. Soap.AI_files/Index-DHlElFN7.css +1 -0
  23. Soap.AI_files/ModifyUpload-RL_SHQmd.css +1 -0
  24. Soap.AI_files/Textbox-D8IAzrZj.css +1 -0
  25. Soap.AI_files/Video-DJw86Ppo.css +1 -0
  26. Soap.AI_files/analytics.js +96 -0
  27. Soap.AI_files/css2 +126 -0
  28. Soap.AI_files/css2(1) +90 -0
  29. Soap.AI_files/iframeResizer.contentWindow.min.js +9 -0
  30. Soap.AI_files/index-C2tw9baX.css +1 -0
  31. Soap.AI_files/index-CgvweMVN.css +1 -0
  32. Soap.AI_files/index-DQnOSUE6.js +4 -0
  33. Soap.AI_files/js +0 -0
  34. Soap.AI_files/js(1) +0 -0
  35. Soap.AI_files/theme.css +420 -0
  36. Soap.AI_files/translateSandbox.html +48 -0
  37. __pycache__/Helper.cpython-39.pyc +0 -0
  38. __pycache__/demo.cpython-39.pyc +0 -0
  39. __pycache__/demo2.cpython-39.pyc +0 -0
  40. __pycache__/gradio_test.cpython-39.pyc +0 -0
  41. __pycache__/hardCodedData.cpython-39.pyc +0 -0
  42. __pycache__/newDemo.cpython-39.pyc +0 -0
  43. __pycache__/test.cpython-39.pyc +0 -0
  44. __pycache__/test2.cpython-39.pyc +0 -0
  45. avatar.webp +0 -0
  46. hardCodedData.py +98 -0
  47. newDemo.py +357 -0
  48. requirements.txt +5 -0
  49. style.css +50 -0
Helper.py ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import re
2
+
3
+ # table
4
+ css = """
5
+ .scrollable-table {
6
+ max-height: 300px;
7
+ overflow-y: auto;
8
+ border: 1px solid #ccc;
9
+ padding: 10px;
10
+
11
+ }
12
+ .scrollable-table table {
13
+ width: 100%;
14
+ border-collapse: collapse;
15
+ background-color: #FFFFFF;
16
+
17
+ }
18
+ .scrollable-table th, .scrollable-table td {
19
+ border: 1px solid #ddd;
20
+ padding: 8px;
21
+ text-align: left;
22
+ color: #000000
23
+
24
+ }
25
+ .scrollable-table th {
26
+ background-color: #EAF2FF;
27
+ color: #3366CC;
28
+ }
29
+ """
30
+
31
+ def parse_transcript(transcript):
32
+ # Regex to match the timestamps and the text
33
+ pattern = re.compile(r'(\d{2}:\d{2})\s+(.+?)(?=\d{2}:\d{2}|$)', re.DOTALL)
34
+ matches = pattern.findall(transcript)
35
+
36
+ timestamps = []
37
+ texts = []
38
+
39
+ for match in matches:
40
+ timestamps.append(match[0])
41
+ texts.append(match[1].strip())
42
+
43
+ return timestamps, texts
44
+
45
+ def create_transcript_table(timestamps, transcript_text):
46
+ table_html = '<div class="scrollable-table">\n'
47
+ table_html += '<table>\n'
48
+ table_html += ' <thead>\n'
49
+ table_html += ' <tr>\n'
50
+ table_html += ' <th>Timestamp</th>\n'
51
+ table_html += ' <th>Transcript</th>\n'
52
+ table_html += ' </tr>\n'
53
+ table_html += ' </thead>\n'
54
+ table_html += ' <tbody>\n'
55
+ for ts, text in zip(timestamps, transcript_text):
56
+ table_html += ' <tr>\n'
57
+ table_html += f' <td>{ts}</td>\n'
58
+ table_html += f' <td>{text}</td>\n'
59
+ table_html += ' </tr>\n'
60
+ table_html += ' </tbody>\n'
61
+ table_html += '</table>\n'
62
+ return table_html
63
+
64
+ def filter_transcript():
65
+ timestamps = [
66
+ "15.0 - 17.0",
67
+ "38.08 - 39.50"
68
+ ]
69
+ transcript_text = [
70
+ "Sad (prompt; 1st)",
71
+ "Because he fell (no prompt; 2nd)"
72
+ ]
73
+ return timestamps, transcript_text
74
+
75
+ # Guidance Generation Function
76
+ def generate_guidance():
77
+ guidance_text = """ Engagement: Student may display behaviors such as rocking when showing engagement.
78
+ Impact factors: Weather (e.g., raining) can impact student’s performance."""
79
+ return guidance_text
README.md CHANGED
@@ -1,12 +1,8 @@
1
  ---
2
  title: SOAP
3
- emoji: 👀
4
- colorFrom: pink
5
- colorTo: indigo
6
  sdk: gradio
7
- sdk_version: 4.37.2
8
- app_file: app.py
9
- pinned: false
10
  ---
11
-
12
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
  title: SOAP
3
+ app_file: newDemo.py
 
 
4
  sdk: gradio
5
+ sdk_version: 4.31.0
 
 
6
  ---
7
+ # SOAPdemo
8
+ SOAP demo by Qingxiao/Parisa/Aditya
Soap.AI_files/Blocks-xuLVTZz4.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .wrap.svelte-e1ha0f.svelte-e1ha0f{padding:var(--size-6)}.attention.svelte-e1ha0f.svelte-e1ha0f{font-weight:var(--weight-bold);font-size:var(--text-lg)}.attention.svelte-e1ha0f code.svelte-e1ha0f{border:none;background:none;color:var(--color-accent);font-weight:var(--weight-bold)}button.svelte-e1ha0f.svelte-e1ha0f{position:absolute;top:var(--size-5);right:var(--size-6);width:var(--size-4);color:var(--body-text-color)}button.svelte-e1ha0f.svelte-e1ha0f:hover{color:var(--color-accent)}@media (min-width: 768px){button.svelte-e1ha0f.svelte-e1ha0f{top:var(--size-6)}}h2.svelte-3n2nxs.svelte-3n2nxs{display:flex;color:var(--body-text-color);font-weight:var(--weight-semibold);gap:var(--size-4)}h2.svelte-3n2nxs img.svelte-3n2nxs{margin-right:var(--size-2);width:var(--size-4);display:inline-block}.url.svelte-3n2nxs.svelte-3n2nxs{color:var(--color-accent);font-weight:400}button.svelte-3n2nxs.svelte-3n2nxs{position:absolute;top:var(--size-5);right:var(--size-6);width:var(--size-4);color:var(--body-text-color)}button.svelte-3n2nxs.svelte-3n2nxs:hover{color:var(--color-accent)}@media (min-width: 768px){button.svelte-3n2nxs.svelte-3n2nxs{top:var(--size-6)}h2.svelte-3n2nxs img.svelte-3n2nxs{width:var(--size-5)}}.counts.svelte-3n2nxs.svelte-3n2nxs{margin-top:auto;margin-right:var(--size-8);margin-bottom:auto;margin-left:auto;color:var(--body-text-color);font-weight:var(--weight-light)}.hr.svelte-1yt946s{border:0;height:1px;background:var(--color-accent-soft);margin-bottom:12px}.code.svelte-1yt946s{font-family:var(--font-mono);display:inline}.highlight.svelte-1yt946s{background:var(--color-accent-soft);color:var(--color-accent);padding:var(--size-1)}.desc.svelte-1yt946s{color:var(--body-text-color-subdued);font-size:var(--text-lg);margin-top:var(--size-1)}h4.svelte-1yt946s{display:flex;align-items:center;margin-top:var(--size-6);margin-bottom:var(--size-3);color:var(--body-text-color);font-weight:var(--weight-bold)}.toggle-icon.svelte-1yt946s{display:flex;align-items:center;margin-right:var(--size-2);border-radius:var(--radius-full);background:var(--color-grey-300);width:12px;height:4px}.toggle-dot.svelte-1yt946s{border-radius:var(--radius-full);background:var(--color-grey-700);width:6px;height:6px;margin-right:auto}code.svelte-hq8ezf pre.svelte-hq8ezf{overflow-x:auto;color:var(--body-text-color);font-family:var(--font-mono);tab-size:2}code.svelte-hq8ezf.svelte-hq8ezf{position:relative;display:block}.copy.svelte-hq8ezf.svelte-hq8ezf{position:absolute;top:0;right:0;margin-top:-5px;margin-right:-5px}h3.svelte-41kcm6{color:var(--body-text-color);font-weight:var(--section-header-text-weight);font-size:var(--text-lg)}.post.svelte-41kcm6{margin-right:var(--size-2);border:1px solid var(--border-color-accent);border-radius:var(--radius-sm);background:var(--color-accent-soft);padding-right:var(--size-1);padding-bottom:var(--size-1);padding-left:var(--size-1);color:var(--color-accent);font-weight:var(--weight-semibold)}code.svelte-114qcyq pre.svelte-114qcyq{overflow-x:auto;color:var(--body-text-color);font-family:var(--font-mono);tab-size:2}.token.string.svelte-114qcyq.svelte-114qcyq{display:contents;color:var(--color-accent-base)}code.svelte-114qcyq.svelte-114qcyq{position:relative;display:block}.copy.svelte-114qcyq.svelte-114qcyq{position:absolute;top:0;right:0;margin-top:-5px;margin-right:-5px}.container.svelte-114qcyq.svelte-114qcyq{display:flex;flex-direction:column;gap:var(--spacing-xxl);margin-top:var(--size-3);margin-bottom:var(--size-3)}.desc.svelte-114qcyq.svelte-114qcyq{color:var(--body-text-color-subdued)}.api-name.svelte-114qcyq.svelte-114qcyq{color:var(--color-accent)}code.svelte-j71ub0 pre.svelte-j71ub0{overflow-x:auto;color:var(--body-text-color);font-family:var(--font-mono);tab-size:2}.token.string.svelte-j71ub0.svelte-j71ub0{display:contents;color:var(--color-accent-base)}code.svelte-j71ub0.svelte-j71ub0{position:relative;display:block}.copy.svelte-j71ub0.svelte-j71ub0{position:absolute;top:0;right:0;margin-top:-5px;margin-right:-5px}.container.svelte-j71ub0.svelte-j71ub0{display:flex;flex-direction:column;gap:var(--spacing-xxl);margin-top:var(--size-3);margin-bottom:var(--size-3)}.api-name.svelte-j71ub0.svelte-j71ub0{color:var(--color-accent)}.hr.svelte-16h224k{border:0;height:1px;background:var(--color-accent-soft)}.code.svelte-16h224k{font-family:var(--font-mono);margin-right:10px}.highlight.svelte-16h224k{background:var(--color-accent-soft);color:var(--color-accent);padding:var(--size-1)}.desc.svelte-16h224k{color:var(--body-text-color-subdued);font-size:var(--text-lg)}h4.svelte-16h224k{display:flex;align-items:center;margin-top:var(--size-6);margin-bottom:var(--size-3);color:var(--body-text-color);font-weight:var(--weight-bold)}.toggle-icon.svelte-16h224k{display:flex;align-items:center;margin-right:var(--size-2);border-radius:var(--radius-full);background:var(--color-grey-300);width:12px;height:4px}.toggle-dot.svelte-16h224k{border-radius:var(--radius-full);background:var(--color-grey-700);width:6px;height:6px;margin-left:auto}.banner-wrap.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{position:relative;border-bottom:1px solid var(--border-color-primary);padding:var(--size-4) var(--size-6);font-size:var(--text-md)}@media (min-width: 768px){.banner-wrap.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{font-size:var(--text-xl)}}.docs-wrap.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{display:flex;flex-direction:column;gap:var(--spacing-xxl)}.endpoint.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{border-radius:var(--radius-md);background:var(--background-fill-primary);padding:var(--size-6);padding-top:var(--size-1);font-size:var(--text-md)}.client-doc.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{padding-top:var(--size-6);padding-right:var(--size-6);padding-left:var(--size-6);font-size:var(--text-md)}.library.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{border:1px solid var(--border-color-accent);border-radius:var(--radius-sm);background:var(--color-accent-soft);padding:0px var(--size-1);color:var(--color-accent);font-size:var(--text-md);text-decoration:none}.snippets.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{display:flex;align-items:center;margin-bottom:var(--size-4)}.snippets.svelte-17lxwht>.svelte-17lxwht+.svelte-17lxwht{margin-left:var(--size-2)}.snippet.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{display:flex;align-items:center;border:1px solid var(--border-color-primary);border-radius:var(--radius-md);padding:var(--size-1) var(--size-1-5);color:var(--body-text-color-subdued);color:var(--body-text-color);line-height:1;user-select:none;text-transform:capitalize}.current-lang.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{border:1px solid var(--body-text-color-subdued);color:var(--body-text-color)}.inactive-lang.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{cursor:pointer;color:var(--body-text-color-subdued)}.inactive-lang.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht:hover,.inactive-lang.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht:focus{box-shadow:var(--shadow-drop);color:var(--body-text-color)}.snippet.svelte-17lxwht img.svelte-17lxwht.svelte-17lxwht{margin-right:var(--size-1-5);width:var(--size-3)}.endpoint-container.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{margin-top:var(--size-3);margin-bottom:var(--size-3);border:1px solid var(--body-text-color);border-radius:var(--radius-xl);padding:var(--size-3);padding-top:0}a.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{text-decoration:underline}p.padded.svelte-17lxwht.svelte-17lxwht.svelte-17lxwht{padding:15px 0;font-size:var(--text-lg)}#api-recorder.svelte-3xfzl5{border:1px solid var(--color-accent);background-color:var(--color-accent-soft);padding:0px var(--size-2);border-radius:var(--size-1);cursor:pointer;color:var(--body-text-color)}.message.svelte-3xfzl5{font-style:italic}.api-name.svelte-3xfzl5{font-size:var(--text-md);font-family:var(--font-mono)}.wrap.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{display:flex;flex-grow:1;flex-direction:column;width:var(--size-full);font-weight:var(--body-text-weight);font-size:var(--body-text-size)}.contain.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{display:flex;flex-direction:column}footer.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{display:flex;justify-content:center;margin-top:var(--size-4);color:var(--body-text-color-subdued)}footer.svelte-1rjryqp>.svelte-1rjryqp+.svelte-1rjryqp{margin-left:var(--size-2)}.show-api.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{display:flex;align-items:center}.show-api.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp:hover{color:var(--body-text-color)}.show-api.svelte-1rjryqp img.svelte-1rjryqp.svelte-1rjryqp{margin-right:var(--size-1);margin-left:var(--size-2);width:var(--size-3)}.built-with.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{display:flex;align-items:center}.built-with.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp:hover{color:var(--body-text-color)}.built-with.svelte-1rjryqp img.svelte-1rjryqp.svelte-1rjryqp{margin-right:var(--size-1);margin-left:var(--size-1);margin-bottom:1px;width:var(--size-4)}.api-docs.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{display:flex;position:fixed;top:0;right:0;z-index:var(--layer-top);background:#00000080;width:var(--size-screen);height:var(--size-screen-h)}.backdrop.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{flex:1 1 0%;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.api-docs-wrap.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{box-shadow:var(--shadow-drop-lg);background:var(--background-fill-primary);overflow-x:hidden;overflow-y:auto}@media (min-width: 768px){.api-docs-wrap.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg);width:950px}}@media (min-width: 1536px){.api-docs-wrap.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{width:1150px}}#api-recorder-container.svelte-1rjryqp.svelte-1rjryqp.svelte-1rjryqp{position:fixed;left:10px;bottom:10px;z-index:1000}
Soap.AI_files/Button-CTZL5Nos.css ADDED
@@ -0,0 +1 @@
 
 
1
+ button.svelte-cmf5ev,a.svelte-cmf5ev{display:inline-flex;justify-content:center;align-items:center;transition:var(--button-transition);box-shadow:var(--button-shadow);padding:var(--size-0-5) var(--size-2);text-align:center}button.svelte-cmf5ev:hover,button[disabled].svelte-cmf5ev,a.svelte-cmf5ev:hover,a.disabled.svelte-cmf5ev{box-shadow:var(--button-shadow-hover)}button.svelte-cmf5ev:active,a.svelte-cmf5ev:active{box-shadow:var(--button-shadow-active)}button[disabled].svelte-cmf5ev,a.disabled.svelte-cmf5ev{opacity:.5;filter:grayscale(30%);cursor:not-allowed}.hidden.svelte-cmf5ev{display:none}.primary.svelte-cmf5ev{border:var(--button-border-width) solid var(--button-primary-border-color);background:var(--button-primary-background-fill);color:var(--button-primary-text-color)}.primary.svelte-cmf5ev:hover,.primary[disabled].svelte-cmf5ev{border-color:var(--button-primary-border-color-hover);background:var(--button-primary-background-fill-hover);color:var(--button-primary-text-color-hover)}.secondary.svelte-cmf5ev{border:var(--button-border-width) solid var(--button-secondary-border-color);background:var(--button-secondary-background-fill);color:var(--button-secondary-text-color)}.secondary.svelte-cmf5ev:hover,.secondary[disabled].svelte-cmf5ev{border-color:var(--button-secondary-border-color-hover);background:var(--button-secondary-background-fill-hover);color:var(--button-secondary-text-color-hover)}.stop.svelte-cmf5ev{border:var(--button-border-width) solid var(--button-cancel-border-color);background:var(--button-cancel-background-fill);color:var(--button-cancel-text-color)}.stop.svelte-cmf5ev:hover,.stop[disabled].svelte-cmf5ev{border-color:var(--button-cancel-border-color-hover);background:var(--button-cancel-background-fill-hover);color:var(--button-cancel-text-color-hover)}.sm.svelte-cmf5ev{border-radius:var(--button-small-radius);padding:var(--button-small-padding);font-weight:var(--button-small-text-weight);font-size:var(--button-small-text-size)}.lg.svelte-cmf5ev{border-radius:var(--button-large-radius);padding:var(--button-large-padding);font-weight:var(--button-large-text-weight);font-size:var(--button-large-text-size)}.button-icon.svelte-cmf5ev{width:var(--text-xl);height:var(--text-xl);margin-right:var(--spacing-xl)}
Soap.AI_files/Example-B5CSTz0f.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .container.svelte-1de9zxs{flex:none;max-width:none}.container.svelte-1de9zxs video{width:var(--size-full);height:var(--size-full);object-fit:cover}.container.svelte-1de9zxs:hover,.container.selected.svelte-1de9zxs{border-color:var(--border-color-accent)}.container.table.svelte-1de9zxs{margin:0 auto;border:2px solid var(--border-color-primary);border-radius:var(--radius-lg);overflow:hidden;width:var(--size-20);height:var(--size-20);object-fit:cover}.container.gallery.svelte-1de9zxs{height:var(--size-20);max-height:var(--size-20);object-fit:cover}
Soap.AI_files/Example-Cj3ii62O.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .gallery.svelte-1viwdyg{padding:var(--size-1) var(--size-2)}div.svelte-1viwdyg{overflow:hidden;min-width:var(--local-text-width);white-space:nowrap}
Soap.AI_files/Example-D7K5RtQ2.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .gallery.svelte-1ayixqk{padding:var(--size-1) var(--size-2)}
Soap.AI_files/Example-DikqVAPo.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .container.svelte-a9zvka img{width:100%;height:100%}.container.selected.svelte-a9zvka{border-color:var(--border-color-accent)}.border.table.svelte-a9zvka{border:2px solid var(--border-color-primary)}.container.table.svelte-a9zvka{margin:0 auto;border-radius:var(--radius-lg);overflow:hidden;width:var(--size-20);height:var(--size-20);object-fit:cover}.container.gallery.svelte-a9zvka{width:var(--size-20);max-width:var(--size-20);object-fit:cover}
Soap.AI_files/Example-kFjxihe2.css ADDED
@@ -0,0 +1 @@
 
 
1
+ @font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(./KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(./KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(./KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(./KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(./KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(./KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(./KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(./KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(./KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(./KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(./KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(./KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(./KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(./KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(./KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(./KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(./KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(./KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(./KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(./KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(./KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(./KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(./KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(./KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(./KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(./KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(./KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(./KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(./KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(./KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(./KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(./KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(./KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(./KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(./KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(./KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(./KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(./KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(./KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(./KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.gradio-container-4-31-0 .katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.gradio-container-4-31-0 .katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.gradio-container-4-31-0 .katex .katex-version:after{content:"0.16.10"}.gradio-container-4-31-0 .katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.gradio-container-4-31-0 .katex .katex-html>.newline{display:block}.gradio-container-4-31-0 .katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.gradio-container-4-31-0 .katex .base,.gradio-container-4-31-0 .katex .strut{display:inline-block}.gradio-container-4-31-0 .katex .textbf{font-weight:700}.gradio-container-4-31-0 .katex .textit{font-style:italic}.gradio-container-4-31-0 .katex .textrm{font-family:KaTeX_Main}.gradio-container-4-31-0 .katex .textsf{font-family:KaTeX_SansSerif}.gradio-container-4-31-0 .katex .texttt{font-family:KaTeX_Typewriter}.gradio-container-4-31-0 .katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.gradio-container-4-31-0 .katex .mathit{font-family:KaTeX_Main;font-style:italic}.gradio-container-4-31-0 .katex .mathrm{font-style:normal}.gradio-container-4-31-0 .katex .mathbf{font-family:KaTeX_Main;font-weight:700}.gradio-container-4-31-0 .katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.gradio-container-4-31-0 .katex .amsrm,.gradio-container-4-31-0 .katex .mathbb,.gradio-container-4-31-0 .katex .textbb{font-family:KaTeX_AMS}.gradio-container-4-31-0 .katex .mathcal{font-family:KaTeX_Caligraphic}.gradio-container-4-31-0 .katex .mathfrak,.gradio-container-4-31-0 .katex .textfrak{font-family:KaTeX_Fraktur}.gradio-container-4-31-0 .katex .mathboldfrak,.gradio-container-4-31-0 .katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.gradio-container-4-31-0 .katex .mathtt{font-family:KaTeX_Typewriter}.gradio-container-4-31-0 .katex .mathscr,.gradio-container-4-31-0 .katex .textscr{font-family:KaTeX_Script}.gradio-container-4-31-0 .katex .mathsf,.gradio-container-4-31-0 .katex .textsf{font-family:KaTeX_SansSerif}.gradio-container-4-31-0 .katex .mathboldsf,.gradio-container-4-31-0 .katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.gradio-container-4-31-0 .katex .mathitsf,.gradio-container-4-31-0 .katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.gradio-container-4-31-0 .katex .mainrm{font-family:KaTeX_Main;font-style:normal}.gradio-container-4-31-0 .katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.gradio-container-4-31-0 .katex .vlist-r{display:table-row}.gradio-container-4-31-0 .katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.gradio-container-4-31-0 .katex .vlist>span{display:block;height:0;position:relative}.gradio-container-4-31-0 .katex .vlist>span>span{display:inline-block}.gradio-container-4-31-0 .katex .vlist>span>.pstrut{overflow:hidden;width:0}.gradio-container-4-31-0 .katex .vlist-t2{margin-right:-2px}.gradio-container-4-31-0 .katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.gradio-container-4-31-0 .katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.gradio-container-4-31-0 .katex .hbox{width:100%}.gradio-container-4-31-0 .katex .hbox,.gradio-container-4-31-0 .katex .thinbox{display:inline-flex;flex-direction:row}.gradio-container-4-31-0 .katex .thinbox{max-width:0;width:0}.gradio-container-4-31-0 .katex .msupsub{text-align:left}.gradio-container-4-31-0 .katex .mfrac>span>span{text-align:center}.gradio-container-4-31-0 .katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.gradio-container-4-31-0 .katex .hdashline,.gradio-container-4-31-0 .katex .hline,.gradio-container-4-31-0 .katex .mfrac .frac-line,.gradio-container-4-31-0 .katex .overline .overline-line,.gradio-container-4-31-0 .katex .rule,.gradio-container-4-31-0 .katex .underline .underline-line{min-height:1px}.gradio-container-4-31-0 .katex .mspace{display:inline-block}.gradio-container-4-31-0 .katex .clap,.gradio-container-4-31-0 .katex .llap,.gradio-container-4-31-0 .katex .rlap{position:relative;width:0}.gradio-container-4-31-0 .katex .clap>.inner,.gradio-container-4-31-0 .katex .llap>.inner,.gradio-container-4-31-0 .katex .rlap>.inner{position:absolute}.gradio-container-4-31-0 .katex .clap>.fix,.gradio-container-4-31-0 .katex .llap>.fix,.gradio-container-4-31-0 .katex .rlap>.fix{display:inline-block}.gradio-container-4-31-0 .katex .llap>.inner{right:0}.gradio-container-4-31-0 .katex .clap>.inner,.gradio-container-4-31-0 .katex .rlap>.inner{left:0}.gradio-container-4-31-0 .katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.gradio-container-4-31-0 .katex .rule{border:0 solid;display:inline-block;position:relative}.gradio-container-4-31-0 .katex .hline,.gradio-container-4-31-0 .katex .overline .overline-line,.gradio-container-4-31-0 .katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.gradio-container-4-31-0 .katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.gradio-container-4-31-0 .katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size1,.gradio-container-4-31-0 .katex .sizing.reset-size1.size1{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size2,.gradio-container-4-31-0 .katex .sizing.reset-size1.size2{font-size:1.2em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size3,.gradio-container-4-31-0 .katex .sizing.reset-size1.size3{font-size:1.4em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size4,.gradio-container-4-31-0 .katex .sizing.reset-size1.size4{font-size:1.6em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size5,.gradio-container-4-31-0 .katex .sizing.reset-size1.size5{font-size:1.8em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size6,.gradio-container-4-31-0 .katex .sizing.reset-size1.size6{font-size:2em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size7,.gradio-container-4-31-0 .katex .sizing.reset-size1.size7{font-size:2.4em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size8,.gradio-container-4-31-0 .katex .sizing.reset-size1.size8{font-size:2.88em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size9,.gradio-container-4-31-0 .katex .sizing.reset-size1.size9{font-size:3.456em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size10,.gradio-container-4-31-0 .katex .sizing.reset-size1.size10{font-size:4.148em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size1.size11,.gradio-container-4-31-0 .katex .sizing.reset-size1.size11{font-size:4.976em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size1,.gradio-container-4-31-0 .katex .sizing.reset-size2.size1{font-size:.83333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size2,.gradio-container-4-31-0 .katex .sizing.reset-size2.size2{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size3,.gradio-container-4-31-0 .katex .sizing.reset-size2.size3{font-size:1.16666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size4,.gradio-container-4-31-0 .katex .sizing.reset-size2.size4{font-size:1.33333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size5,.gradio-container-4-31-0 .katex .sizing.reset-size2.size5{font-size:1.5em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size6,.gradio-container-4-31-0 .katex .sizing.reset-size2.size6{font-size:1.66666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size7,.gradio-container-4-31-0 .katex .sizing.reset-size2.size7{font-size:2em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size8,.gradio-container-4-31-0 .katex .sizing.reset-size2.size8{font-size:2.4em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size9,.gradio-container-4-31-0 .katex .sizing.reset-size2.size9{font-size:2.88em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size10,.gradio-container-4-31-0 .katex .sizing.reset-size2.size10{font-size:3.45666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size2.size11,.gradio-container-4-31-0 .katex .sizing.reset-size2.size11{font-size:4.14666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size1,.gradio-container-4-31-0 .katex .sizing.reset-size3.size1{font-size:.71428571em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size2,.gradio-container-4-31-0 .katex .sizing.reset-size3.size2{font-size:.85714286em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size3,.gradio-container-4-31-0 .katex .sizing.reset-size3.size3{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size4,.gradio-container-4-31-0 .katex .sizing.reset-size3.size4{font-size:1.14285714em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size5,.gradio-container-4-31-0 .katex .sizing.reset-size3.size5{font-size:1.28571429em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size6,.gradio-container-4-31-0 .katex .sizing.reset-size3.size6{font-size:1.42857143em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size7,.gradio-container-4-31-0 .katex .sizing.reset-size3.size7{font-size:1.71428571em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size8,.gradio-container-4-31-0 .katex .sizing.reset-size3.size8{font-size:2.05714286em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size9,.gradio-container-4-31-0 .katex .sizing.reset-size3.size9{font-size:2.46857143em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size10,.gradio-container-4-31-0 .katex .sizing.reset-size3.size10{font-size:2.96285714em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size3.size11,.gradio-container-4-31-0 .katex .sizing.reset-size3.size11{font-size:3.55428571em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size1,.gradio-container-4-31-0 .katex .sizing.reset-size4.size1{font-size:.625em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size2,.gradio-container-4-31-0 .katex .sizing.reset-size4.size2{font-size:.75em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size3,.gradio-container-4-31-0 .katex .sizing.reset-size4.size3{font-size:.875em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size4,.gradio-container-4-31-0 .katex .sizing.reset-size4.size4{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size5,.gradio-container-4-31-0 .katex .sizing.reset-size4.size5{font-size:1.125em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size6,.gradio-container-4-31-0 .katex .sizing.reset-size4.size6{font-size:1.25em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size7,.gradio-container-4-31-0 .katex .sizing.reset-size4.size7{font-size:1.5em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size8,.gradio-container-4-31-0 .katex .sizing.reset-size4.size8{font-size:1.8em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size9,.gradio-container-4-31-0 .katex .sizing.reset-size4.size9{font-size:2.16em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size10,.gradio-container-4-31-0 .katex .sizing.reset-size4.size10{font-size:2.5925em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size4.size11,.gradio-container-4-31-0 .katex .sizing.reset-size4.size11{font-size:3.11em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size1,.gradio-container-4-31-0 .katex .sizing.reset-size5.size1{font-size:.55555556em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size2,.gradio-container-4-31-0 .katex .sizing.reset-size5.size2{font-size:.66666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size3,.gradio-container-4-31-0 .katex .sizing.reset-size5.size3{font-size:.77777778em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size4,.gradio-container-4-31-0 .katex .sizing.reset-size5.size4{font-size:.88888889em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size5,.gradio-container-4-31-0 .katex .sizing.reset-size5.size5{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size6,.gradio-container-4-31-0 .katex .sizing.reset-size5.size6{font-size:1.11111111em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size7,.gradio-container-4-31-0 .katex .sizing.reset-size5.size7{font-size:1.33333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size8,.gradio-container-4-31-0 .katex .sizing.reset-size5.size8{font-size:1.6em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size9,.gradio-container-4-31-0 .katex .sizing.reset-size5.size9{font-size:1.92em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size10,.gradio-container-4-31-0 .katex .sizing.reset-size5.size10{font-size:2.30444444em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size5.size11,.gradio-container-4-31-0 .katex .sizing.reset-size5.size11{font-size:2.76444444em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size1,.gradio-container-4-31-0 .katex .sizing.reset-size6.size1{font-size:.5em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size2,.gradio-container-4-31-0 .katex .sizing.reset-size6.size2{font-size:.6em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size3,.gradio-container-4-31-0 .katex .sizing.reset-size6.size3{font-size:.7em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size4,.gradio-container-4-31-0 .katex .sizing.reset-size6.size4{font-size:.8em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size5,.gradio-container-4-31-0 .katex .sizing.reset-size6.size5{font-size:.9em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size6,.gradio-container-4-31-0 .katex .sizing.reset-size6.size6{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size7,.gradio-container-4-31-0 .katex .sizing.reset-size6.size7{font-size:1.2em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size8,.gradio-container-4-31-0 .katex .sizing.reset-size6.size8{font-size:1.44em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size9,.gradio-container-4-31-0 .katex .sizing.reset-size6.size9{font-size:1.728em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size10,.gradio-container-4-31-0 .katex .sizing.reset-size6.size10{font-size:2.074em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size6.size11,.gradio-container-4-31-0 .katex .sizing.reset-size6.size11{font-size:2.488em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size1,.gradio-container-4-31-0 .katex .sizing.reset-size7.size1{font-size:.41666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size2,.gradio-container-4-31-0 .katex .sizing.reset-size7.size2{font-size:.5em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size3,.gradio-container-4-31-0 .katex .sizing.reset-size7.size3{font-size:.58333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size4,.gradio-container-4-31-0 .katex .sizing.reset-size7.size4{font-size:.66666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size5,.gradio-container-4-31-0 .katex .sizing.reset-size7.size5{font-size:.75em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size6,.gradio-container-4-31-0 .katex .sizing.reset-size7.size6{font-size:.83333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size7,.gradio-container-4-31-0 .katex .sizing.reset-size7.size7{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size8,.gradio-container-4-31-0 .katex .sizing.reset-size7.size8{font-size:1.2em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size9,.gradio-container-4-31-0 .katex .sizing.reset-size7.size9{font-size:1.44em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size10,.gradio-container-4-31-0 .katex .sizing.reset-size7.size10{font-size:1.72833333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size7.size11,.gradio-container-4-31-0 .katex .sizing.reset-size7.size11{font-size:2.07333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size1,.gradio-container-4-31-0 .katex .sizing.reset-size8.size1{font-size:.34722222em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size2,.gradio-container-4-31-0 .katex .sizing.reset-size8.size2{font-size:.41666667em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size3,.gradio-container-4-31-0 .katex .sizing.reset-size8.size3{font-size:.48611111em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size4,.gradio-container-4-31-0 .katex .sizing.reset-size8.size4{font-size:.55555556em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size5,.gradio-container-4-31-0 .katex .sizing.reset-size8.size5{font-size:.625em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size6,.gradio-container-4-31-0 .katex .sizing.reset-size8.size6{font-size:.69444444em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size7,.gradio-container-4-31-0 .katex .sizing.reset-size8.size7{font-size:.83333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size8,.gradio-container-4-31-0 .katex .sizing.reset-size8.size8{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size9,.gradio-container-4-31-0 .katex .sizing.reset-size8.size9{font-size:1.2em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size10,.gradio-container-4-31-0 .katex .sizing.reset-size8.size10{font-size:1.44027778em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size8.size11,.gradio-container-4-31-0 .katex .sizing.reset-size8.size11{font-size:1.72777778em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size1,.gradio-container-4-31-0 .katex .sizing.reset-size9.size1{font-size:.28935185em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size2,.gradio-container-4-31-0 .katex .sizing.reset-size9.size2{font-size:.34722222em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size3,.gradio-container-4-31-0 .katex .sizing.reset-size9.size3{font-size:.40509259em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size4,.gradio-container-4-31-0 .katex .sizing.reset-size9.size4{font-size:.46296296em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size5,.gradio-container-4-31-0 .katex .sizing.reset-size9.size5{font-size:.52083333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size6,.gradio-container-4-31-0 .katex .sizing.reset-size9.size6{font-size:.5787037em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size7,.gradio-container-4-31-0 .katex .sizing.reset-size9.size7{font-size:.69444444em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size8,.gradio-container-4-31-0 .katex .sizing.reset-size9.size8{font-size:.83333333em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size9,.gradio-container-4-31-0 .katex .sizing.reset-size9.size9{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size10,.gradio-container-4-31-0 .katex .sizing.reset-size9.size10{font-size:1.20023148em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size9.size11,.gradio-container-4-31-0 .katex .sizing.reset-size9.size11{font-size:1.43981481em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size1,.gradio-container-4-31-0 .katex .sizing.reset-size10.size1{font-size:.24108004em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size2,.gradio-container-4-31-0 .katex .sizing.reset-size10.size2{font-size:.28929605em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size3,.gradio-container-4-31-0 .katex .sizing.reset-size10.size3{font-size:.33751205em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size4,.gradio-container-4-31-0 .katex .sizing.reset-size10.size4{font-size:.38572806em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size5,.gradio-container-4-31-0 .katex .sizing.reset-size10.size5{font-size:.43394407em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size6,.gradio-container-4-31-0 .katex .sizing.reset-size10.size6{font-size:.48216008em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size7,.gradio-container-4-31-0 .katex .sizing.reset-size10.size7{font-size:.57859209em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size8,.gradio-container-4-31-0 .katex .sizing.reset-size10.size8{font-size:.69431051em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size9,.gradio-container-4-31-0 .katex .sizing.reset-size10.size9{font-size:.83317261em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size10,.gradio-container-4-31-0 .katex .sizing.reset-size10.size10{font-size:1em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size10.size11,.gradio-container-4-31-0 .katex .sizing.reset-size10.size11{font-size:1.19961427em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size1,.gradio-container-4-31-0 .katex .sizing.reset-size11.size1{font-size:.20096463em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size2,.gradio-container-4-31-0 .katex .sizing.reset-size11.size2{font-size:.24115756em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size3,.gradio-container-4-31-0 .katex .sizing.reset-size11.size3{font-size:.28135048em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size4,.gradio-container-4-31-0 .katex .sizing.reset-size11.size4{font-size:.32154341em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size5,.gradio-container-4-31-0 .katex .sizing.reset-size11.size5{font-size:.36173633em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size6,.gradio-container-4-31-0 .katex .sizing.reset-size11.size6{font-size:.40192926em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size7,.gradio-container-4-31-0 .katex .sizing.reset-size11.size7{font-size:.48231511em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size8,.gradio-container-4-31-0 .katex .sizing.reset-size11.size8{font-size:.57877814em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size9,.gradio-container-4-31-0 .katex .sizing.reset-size11.size9{font-size:.69453376em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size10,.gradio-container-4-31-0 .katex .sizing.reset-size11.size10{font-size:.83360129em}.gradio-container-4-31-0 .katex .fontsize-ensurer.reset-size11.size11,.gradio-container-4-31-0 .katex .sizing.reset-size11.size11{font-size:1em}.gradio-container-4-31-0 .katex .delimsizing.size1{font-family:KaTeX_Size1}.gradio-container-4-31-0 .katex .delimsizing.size2{font-family:KaTeX_Size2}.gradio-container-4-31-0 .katex .delimsizing.size3{font-family:KaTeX_Size3}.gradio-container-4-31-0 .katex .delimsizing.size4{font-family:KaTeX_Size4}.gradio-container-4-31-0 .katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.gradio-container-4-31-0 .katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.gradio-container-4-31-0 .katex .nulldelimiter{display:inline-block;width:.12em}.gradio-container-4-31-0 .katex .delimcenter,.gradio-container-4-31-0 .katex .op-symbol{position:relative}.gradio-container-4-31-0 .katex .op-symbol.small-op{font-family:KaTeX_Size1}.gradio-container-4-31-0 .katex .op-symbol.large-op{font-family:KaTeX_Size2}.gradio-container-4-31-0 .katex .accent>.vlist-t,.gradio-container-4-31-0 .katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.gradio-container-4-31-0 .katex .overlay{display:block}.gradio-container-4-31-0 .katex .mtable .vertical-separator{display:inline-block;min-width:1px}.gradio-container-4-31-0 .katex .mtable .arraycolsep{display:inline-block}.gradio-container-4-31-0 .katex .mtable .col-align-c>.vlist-t{text-align:center}.gradio-container-4-31-0 .katex .mtable .col-align-l>.vlist-t{text-align:left}.gradio-container-4-31-0 .katex .mtable .col-align-r>.vlist-t{text-align:right}.gradio-container-4-31-0 .katex .svg-align{text-align:left}.gradio-container-4-31-0 .katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.gradio-container-4-31-0 .katex svg path{stroke:none}.gradio-container-4-31-0 .katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.gradio-container-4-31-0 .katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.gradio-container-4-31-0 .katex .stretchy:after,.gradio-container-4-31-0 .katex .stretchy:before{content:""}.gradio-container-4-31-0 .katex .hide-tail{overflow:hidden;position:relative;width:100%}.gradio-container-4-31-0 .katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.gradio-container-4-31-0 .katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.gradio-container-4-31-0 .katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.gradio-container-4-31-0 .katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.gradio-container-4-31-0 .katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.gradio-container-4-31-0 .katex .x-arrow-pad{padding:0 .5em}.gradio-container-4-31-0 .katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.gradio-container-4-31-0 .katex .mover,.gradio-container-4-31-0 .katex .munder,.gradio-container-4-31-0 .katex .x-arrow{text-align:center}.gradio-container-4-31-0 .katex .boxpad{padding:0 .3em}.gradio-container-4-31-0 .katex .fbox,.gradio-container-4-31-0 .katex .fcolorbox{border:.04em solid;box-sizing:border-box}.gradio-container-4-31-0 .katex .cancel-pad{padding:0 .2em}.gradio-container-4-31-0 .katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.gradio-container-4-31-0 .katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.gradio-container-4-31-0 .katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.gradio-container-4-31-0 .katex .anglpad{padding:0 .03889em}.gradio-container-4-31-0 .katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.gradio-container-4-31-0 .katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.gradio-container-4-31-0 .katex .mtr-glue{width:50%}.gradio-container-4-31-0 .katex .cd-vert-arrow{display:inline-block;position:relative}.gradio-container-4-31-0 .katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.gradio-container-4-31-0 .katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.gradio-container-4-31-0 .katex-display{display:block;margin:1em 0;text-align:center}.gradio-container-4-31-0 .katex-display>.katex{display:block;text-align:center;white-space:nowrap}.gradio-container-4-31-0 .katex-display>.katex>.katex-html{display:block;position:relative}.gradio-container-4-31-0 .katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.gradio-container-4-31-0 .katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.gradio-container-4-31-0 .katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.gradio-container-4-31-0 Tables */ table,.gradio-container-4-31-0 tr,.gradio-container-4-31-0 td,.gradio-container-4-31-0 th{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);padding:var(--spacing-xl)}.gradio-container-4-31-0 .md code,.gradio-container-4-31-0 .md pre{background:none;font-family:var(--font-mono);font-size:var(--text-sm);text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;tab-size:2;hyphens:none}.gradio-container-4-31-0 .md pre[class*=language-]::selection,.gradio-container-4-31-0 .md pre[class*=language-] ::selection,.gradio-container-4-31-0 .md code[class*=language-]::selection,.gradio-container-4-31-0 .md code[class*=language-] ::selection{text-shadow:none;background:#b3d4fc}.gradio-container-4-31-0 .md pre{padding:1em;margin:.5em 0;overflow:auto;position:relative;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);box-shadow:none;border:none;border-radius:var(--radius-md);background:var(--code-background-fill);padding:var(--spacing-lg) var(--spacing-xl);font-family:var(--font-mono);text-shadow:none;border-radius:var(--radius-sm);white-space:nowrap;display:block;white-space:pre}.gradio-container-4-31-0 .md :not(pre)>code{padding:.1em;border-radius:var(--radius-xs);white-space:normal;background:var(--code-background-fill);border:1px solid var(--panel-border-color);padding:var(--spacing-xxs) var(--spacing-xs)}.gradio-container-4-31-0 .md .token.comment,.gradio-container-4-31-0 .md .token.prolog,.gradio-container-4-31-0 .md .token.doctype,.gradio-container-4-31-0 .md .token.cdata{color:#708090}.gradio-container-4-31-0 .md .token.punctuation{color:#999}.gradio-container-4-31-0 .md .token.namespace{opacity:.7}.gradio-container-4-31-0 .md .token.property,.gradio-container-4-31-0 .md .token.tag,.gradio-container-4-31-0 .md .token.boolean,.gradio-container-4-31-0 .md .token.number,.gradio-container-4-31-0 .md .token.constant,.gradio-container-4-31-0 .md .token.symbol,.gradio-container-4-31-0 .md .token.deleted{color:#905}.gradio-container-4-31-0 .md .token.selector,.gradio-container-4-31-0 .md .token.attr-name,.gradio-container-4-31-0 .md .token.string,.gradio-container-4-31-0 .md .token.char,.gradio-container-4-31-0 .md .token.builtin,.gradio-container-4-31-0 .md .token.inserted{color:#690}.gradio-container-4-31-0 .md .token.atrule,.gradio-container-4-31-0 .md .token.attr-value,.gradio-container-4-31-0 .md .token.keyword{color:#07a}.gradio-container-4-31-0 .md .token.function,.gradio-container-4-31-0 .md .token.class-name{color:#dd4a68}.gradio-container-4-31-0 .md .token.regex,.gradio-container-4-31-0 .md .token.important,.gradio-container-4-31-0 .md .token.variable{color:#e90}.gradio-container-4-31-0 .md .token.important,.gradio-container-4-31-0 .md .token.bold{font-weight:700}.gradio-container-4-31-0 .md .token.italic{font-style:italic}.gradio-container-4-31-0 .md .token.entity{cursor:help}.dark .md .token.comment,.dark .md .token.prolog,.dark .md .token.cdata{color:#5c6370}.dark .md .token.doctype,.dark .md .token.punctuation,.dark .md .token.entity{color:#abb2bf}.dark .md .token.attr-name,.dark .md .token.class-name,.dark .md .token.boolean,.dark .md .token.constant,.dark .md .token.number,.dark .md .token.atrule{color:#d19a66}.dark .md .token.keyword{color:#c678dd}.dark .md .token.property,.dark .md .token.tag,.dark .md .token.symbol,.dark .md .token.deleted,.dark .md .token.important{color:#e06c75}.dark .md .token.selector,.dark .md .token.string,.dark .md .token.char,.dark .md .token.builtin,.dark .md .token.inserted,.dark .md .token.regex,.dark .md .token.attr-value,.dark .md .token.attr-value>.token.punctuation{color:#98c379}.dark .md .token.variable,.dark .md .token.operator,.dark .md .token.function{color:#61afef}.dark .md .token.url{color:#56b6c2}span.svelte-1k4ye9u div[class*=code_wrap]{position:relative}span.svelte-1k4ye9u span.katex{font-size:var(--text-lg);direction:ltr}span.svelte-1k4ye9u div[class*=code_wrap]>button{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);z-index:1;cursor:pointer;border-bottom-left-radius:var(--radius-sm);padding:5px;padding:var(--spacing-md);width:25px;height:25px}span.svelte-1k4ye9u code>button>span{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:12px;height:12px}span.svelte-1k4ye9u .check{position:absolute;top:0;right:0;opacity:0;z-index:var(--layer-top);transition:opacity .2s;background:var(--background-fill-primary);padding:var(--size-1);width:100%;height:100%;color:var(--body-text-color)}span.svelte-1k4ye9u pre{position:relative}span.svelte-1k4ye9u:not(.chatbot) ul{list-style-position:inside}span.svelte-1k4ye9u:not(.chatbot) ol{list-style-position:inside}span.svelte-1k4ye9u p:not(:first-child){margin-top:var(--spacing-xxl)}span.svelte-1k4ye9u .md-header-anchor{margin-left:-25px;padding-right:8px;line-height:1;color:var(--body-text-color-subdued);opacity:0}span.svelte-1k4ye9u h1:hover .md-header-anchor,span.svelte-1k4ye9u h2:hover .md-header-anchor,span.svelte-1k4ye9u h3:hover .md-header-anchor,span.svelte-1k4ye9u h4:hover .md-header-anchor,span.svelte-1k4ye9u h5:hover .md-header-anchor,span.svelte-1k4ye9u h6:hover .md-header-anchor{opacity:1}span.md.svelte-1k4ye9u .md-header-anchor>svg{color:var(--body-text-color-subdued)}span.svelte-1k4ye9u h1,span.svelte-1k4ye9u h2,span.svelte-1k4ye9u h3,span.svelte-1k4ye9u h4,span.svelte-1k4ye9u h5,span.svelte-1k4ye9u h6{display:flex;align-items:center;white-space-collapse:break-spaces}.prose.svelte-1k4ye9u :last-child{margin-bottom:0}.gallery.svelte-1ayixqk{padding:var(--size-1) var(--size-2)}
Soap.AI_files/Image-B8dFOee4.css ADDED
@@ -0,0 +1 @@
 
 
1
+ img.svelte-1pijsyv{object-fit:cover}
Soap.AI_files/ImageUploader-B7bPUstM.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .image-container.svelte-1l6wqyv img,button.svelte-1l6wqyv{width:var(--size-full);height:var(--size-full);object-fit:contain;display:block;border-radius:var(--radius-lg)}.selectable.svelte-1l6wqyv{cursor:crosshair}.icon-buttons.svelte-1l6wqyv{display:flex;position:absolute;top:6px;right:6px;gap:var(--size-1)}button.svelte-qbrfs{cursor:pointer;width:var(--size-full)}.wrap.svelte-qbrfs{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:var(--size-60);color:var(--block-label-text-color);height:100%;padding-top:var(--size-3)}.icon-wrap.svelte-qbrfs{width:30px;margin-bottom:var(--spacing-lg)}@media (min-width: 768px){.wrap.svelte-qbrfs{font-size:var(--text-lg)}}.wrap.svelte-1aa1mud.svelte-1aa1mud{position:relative;width:var(--size-full);height:var(--size-full)}.hide.svelte-1aa1mud.svelte-1aa1mud{display:none}video.svelte-1aa1mud.svelte-1aa1mud{width:var(--size-full);height:var(--size-full);object-fit:cover}.button-wrap.svelte-1aa1mud.svelte-1aa1mud{position:absolute;background-color:var(--block-background-fill);border:1px solid var(--border-color-primary);padding:var(--size-1-5);display:flex;bottom:var(--size-2);left:50%;transform:translate(-50%);box-shadow:var(--shadow-drop-lg);border-radius:var(--radius-xl);line-height:var(--size-3);color:var(--button-secondary-text-color)}@media (min-width: 768px){button.svelte-1aa1mud.svelte-1aa1mud{bottom:var(--size-4)}}@media (min-width: 1280px){button.svelte-1aa1mud.svelte-1aa1mud{bottom:var(--size-8)}}.icon.svelte-1aa1mud.svelte-1aa1mud{opacity:.8;width:18px;height:18px;display:flex;justify-content:space-between;align-items:center}.red.svelte-1aa1mud.svelte-1aa1mud{fill:red;stroke:red}.flip.svelte-1aa1mud.svelte-1aa1mud{transform:scaleX(-1)}.select-wrap.svelte-1aa1mud.svelte-1aa1mud{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--button-secondary-text-color);background-color:transparent;width:95%;font-size:var(--text-md);position:absolute;bottom:var(--size-2);background-color:var(--block-background-fill);box-shadow:var(--shadow-drop-lg);border-radius:var(--radius-xl);z-index:var(--layer-top);border:1px solid var(--border-color-primary);text-align:left;line-height:var(--size-4);white-space:nowrap;text-overflow:ellipsis;left:50%;transform:translate(-50%);max-width:var(--size-52)}.select-wrap.svelte-1aa1mud>option.svelte-1aa1mud{padding:.25rem .5rem;border-bottom:1px solid var(--border-color-accent);padding-right:var(--size-8);text-overflow:ellipsis;overflow:hidden}.select-wrap.svelte-1aa1mud>option.svelte-1aa1mud:hover{background-color:var(--color-accent)}.select-wrap.svelte-1aa1mud>option.svelte-1aa1mud:last-child{border:none}.inset-icon.svelte-1aa1mud.svelte-1aa1mud{position:absolute;top:5px;right:-6.5px;width:var(--size-10);height:var(--size-5);opacity:.8}@media (min-width: 768px){.wrap.svelte-1aa1mud.svelte-1aa1mud{font-size:var(--text-lg)}}div.svelte-s6ybro{display:flex;position:absolute;top:var(--size-2);right:var(--size-2);justify-content:flex-end;gap:var(--spacing-sm);z-index:var(--layer-5)}.image-frame.svelte-rrgd5g img{width:var(--size-full);height:var(--size-full);object-fit:cover}.image-frame.svelte-rrgd5g{object-fit:cover;width:100%;height:100%}.upload-container.svelte-rrgd5g{height:100%;flex-shrink:1;max-height:100%}.image-container.svelte-rrgd5g{display:flex;height:100%;flex-direction:column;justify-content:center;align-items:center;max-height:100%}.selectable.svelte-rrgd5g{cursor:crosshair}
Soap.AI_files/Index-B0JJ6p9c.css ADDED
@@ -0,0 +1 @@
 
 
1
+ div.svelte-sfqy0y{display:flex;flex-direction:inherit;flex-wrap:wrap;gap:var(--form-gap-width);box-shadow:var(--block-shadow);border:var(--block-border-width) solid var(--border-color-primary);border-radius:var(--block-radius);background:var(--border-color-primary);overflow-y:hidden}div.svelte-sfqy0y .block{box-shadow:none!important;border-width:0px!important;border-radius:0!important}.hidden.svelte-sfqy0y{display:none}
Soap.AI_files/Index-B2S_zKCm.css ADDED
@@ -0,0 +1 @@
 
 
1
+ div.svelte-1yrv54 .math.inline{fill:var(--body-text-color);display:inline-block;vertical-align:middle;padding:var(--size-1-5) -var(--size-1);color:var(--body-text-color)}div.svelte-1yrv54 .math.inline svg{display:inline;margin-bottom:.22em}div.svelte-1yrv54{max-width:100%}.min.svelte-1yrv54{min-height:var(--size-24)}.hide.svelte-1yrv54{display:none}div.svelte-1ed2p3z{transition:.15s}.pending.svelte-1ed2p3z{opacity:.2}
Soap.AI_files/Index-BAQumg2K.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .options.svelte-y6qw75{--window-padding:var(--size-8);position:fixed;z-index:var(--layer-top);margin-left:0;box-shadow:var(--shadow-drop-lg);border-radius:var(--container-radius);background:var(--background-fill-primary);min-width:fit-content;max-width:inherit;overflow:auto;color:var(--body-text-color);list-style:none}.item.svelte-y6qw75{display:flex;cursor:pointer;padding:var(--size-2);word-break:break-word}.item.svelte-y6qw75:hover,.active.svelte-y6qw75{background:var(--background-fill-secondary)}.inner-item.svelte-y6qw75{padding-right:var(--size-1)}.hide.svelte-y6qw75{visibility:hidden}.icon-wrap.svelte-1scun43.svelte-1scun43.svelte-1scun43{color:var(--body-text-color);margin-right:var(--size-2);width:var(--size-5)}label.svelte-1scun43.svelte-1scun43.svelte-1scun43:not(.container),label.svelte-1scun43:not(.container) .wrap.svelte-1scun43.svelte-1scun43,label.svelte-1scun43:not(.container) .wrap-inner.svelte-1scun43.svelte-1scun43,label.svelte-1scun43:not(.container) .secondary-wrap.svelte-1scun43.svelte-1scun43,label.svelte-1scun43:not(.container) .token.svelte-1scun43.svelte-1scun43,label.svelte-1scun43:not(.container) input.svelte-1scun43.svelte-1scun43{height:100%}.container.svelte-1scun43 .wrap.svelte-1scun43.svelte-1scun43{box-shadow:var(--input-shadow);border:var(--input-border-width) solid var(--border-color-primary)}.wrap.svelte-1scun43.svelte-1scun43.svelte-1scun43{position:relative;border-radius:var(--input-radius);background:var(--input-background-fill)}.wrap.svelte-1scun43.svelte-1scun43.svelte-1scun43:focus-within{box-shadow:var(--input-shadow-focus);border-color:var(--input-border-color-focus)}.wrap-inner.svelte-1scun43.svelte-1scun43.svelte-1scun43{display:flex;position:relative;flex-wrap:wrap;align-items:center;gap:var(--checkbox-label-gap);padding:var(--checkbox-label-padding)}.token.svelte-1scun43.svelte-1scun43.svelte-1scun43{display:flex;align-items:center;transition:var(--button-transition);cursor:pointer;box-shadow:var(--checkbox-label-shadow);border:var(--checkbox-label-border-width) solid var(--checkbox-label-border-color);border-radius:var(--button-small-radius);background:var(--checkbox-label-background-fill);padding:var(--checkbox-label-padding);color:var(--checkbox-label-text-color);font-weight:var(--checkbox-label-text-weight);font-size:var(--checkbox-label-text-size);line-height:var(--line-md);word-break:break-word}.token.svelte-1scun43>.svelte-1scun43+.svelte-1scun43{margin-left:var(--size-2)}.token-remove.svelte-1scun43.svelte-1scun43.svelte-1scun43{fill:var(--body-text-color);display:flex;justify-content:center;align-items:center;cursor:pointer;border:var(--checkbox-border-width) solid var(--border-color-primary);border-radius:var(--radius-full);background:var(--background-fill-primary);padding:var(--size-0-5);width:16px;height:16px;flex-shrink:0}.secondary-wrap.svelte-1scun43.svelte-1scun43.svelte-1scun43{display:flex;flex:1 1 0%;align-items:center;border:none;min-width:min-content}input.svelte-1scun43.svelte-1scun43.svelte-1scun43{margin:var(--spacing-sm);outline:none;border:none;background:inherit;width:var(--size-full);color:var(--body-text-color);font-size:var(--input-text-size)}input.svelte-1scun43.svelte-1scun43.svelte-1scun43:disabled{-webkit-text-fill-color:var(--body-text-color);-webkit-opacity:1;opacity:1;cursor:not-allowed}.remove-all.svelte-1scun43.svelte-1scun43.svelte-1scun43{margin-left:var(--size-1);width:20px;height:20px}.subdued.svelte-1scun43.svelte-1scun43.svelte-1scun43{color:var(--body-text-color-subdued)}input[readonly].svelte-1scun43.svelte-1scun43.svelte-1scun43{cursor:pointer}.icon-wrap.svelte-1sk0pyu.svelte-1sk0pyu{position:absolute;top:50%;transform:translateY(-50%);right:var(--size-5);color:var(--body-text-color);width:var(--size-5);pointer-events:none}.container.svelte-1sk0pyu.svelte-1sk0pyu{height:100%}.container.svelte-1sk0pyu .wrap.svelte-1sk0pyu{box-shadow:var(--input-shadow);border:var(--input-border-width) solid var(--border-color-primary)}.wrap.svelte-1sk0pyu.svelte-1sk0pyu{position:relative;border-radius:var(--input-radius);background:var(--input-background-fill)}.wrap.svelte-1sk0pyu.svelte-1sk0pyu:focus-within{box-shadow:var(--input-shadow-focus);border-color:var(--input-border-color-focus)}.wrap-inner.svelte-1sk0pyu.svelte-1sk0pyu{display:flex;position:relative;flex-wrap:wrap;align-items:center;gap:var(--checkbox-label-gap);padding:var(--checkbox-label-padding);height:100%}.secondary-wrap.svelte-1sk0pyu.svelte-1sk0pyu{display:flex;flex:1 1 0%;align-items:center;border:none;min-width:min-content;height:100%}input.svelte-1sk0pyu.svelte-1sk0pyu{margin:var(--spacing-sm);outline:none;border:none;background:inherit;width:var(--size-full);color:var(--body-text-color);font-size:var(--input-text-size);height:100%}input.svelte-1sk0pyu.svelte-1sk0pyu:disabled{-webkit-text-fill-color:var(--body-text-color);-webkit-opacity:1;opacity:1;cursor:not-allowed}.subdued.svelte-1sk0pyu.svelte-1sk0pyu{color:var(--body-text-color-subdued)}input[readonly].svelte-1sk0pyu.svelte-1sk0pyu{cursor:pointer}
Soap.AI_files/Index-BGmqBTg_.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .min.svelte-1ybaih5{min-height:var(--size-24)}.hide.svelte-1ybaih5{display:none}div.svelte-1ed2p3z{transition:.15s}.pending.svelte-1ed2p3z{opacity:.2}
Soap.AI_files/Index-Btj90uky.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .gradio-container-4-31-0{display:flex;position:relative;flex-direction:column;padding:0;min-height:1px;overflow:hidden;color:var(--button-secondary-text-color)}.embed-container.svelte-182fdeq.svelte-182fdeq{margin:var(--size-4) 0px;border:1px solid var(--button-secondary-border-color);border-radius:var(--embed-radius)}.with-info.svelte-182fdeq.svelte-182fdeq{padding-bottom:var(--size-7)}.embed-container.svelte-182fdeq>.main.svelte-182fdeq{padding:var(--size-4)}.app.svelte-182fdeq>.main.svelte-182fdeq{display:flex;flex-grow:1;flex-direction:column}.app.svelte-182fdeq.svelte-182fdeq{position:relative;margin:auto;padding:var(--size-4) var(--size-8);width:100%;height:100%}@media (min-width: 640px){.app.svelte-182fdeq.svelte-182fdeq{max-width:640px}}@media (min-width: 768px){.app.svelte-182fdeq.svelte-182fdeq{max-width:768px}}@media (min-width: 1024px){.app.svelte-182fdeq.svelte-182fdeq{max-width:1024px}}@media (min-width: 1280px){.app.svelte-182fdeq.svelte-182fdeq{max-width:1280px}}@media (min-width: 1536px){.app.svelte-182fdeq.svelte-182fdeq{max-width:1536px}}.info.svelte-182fdeq.svelte-182fdeq{display:flex;position:absolute;bottom:0;justify-content:flex-start;border-top:1px solid var(--button-secondary-border-color);padding:var(--size-1) var(--size-5);width:100%;color:var(--body-text-color-subdued);font-size:var(--text-md);white-space:nowrap}.info.svelte-182fdeq>span.svelte-182fdeq{word-wrap:break-word;-break:keep-all;display:block;word-break:keep-all}.info.svelte-182fdeq>span.svelte-182fdeq:nth-child(1){margin-right:4px;min-width:0px;max-width:max-content;overflow:hidden;color:var(--body-text-color);text-overflow:ellipsis;white-space:nowrap}.info.svelte-182fdeq>span.svelte-182fdeq:nth-child(2){margin-right:3px}.info.svelte-182fdeq>span.svelte-182fdeq:nth-child(2),.info.svelte-182fdeq>span.svelte-182fdeq:nth-child(3){width:max-content}.info.svelte-182fdeq>span.svelte-182fdeq:nth-child(3){align-self:flex-end;justify-self:flex-end;margin-left:auto;text-align:right}.info.svelte-182fdeq>span.svelte-182fdeq:nth-child(1){flex-shrink:9}.hidden-title.svelte-182fdeq.svelte-182fdeq{position:absolute;left:var(--size-5);opacity:0;background:var(--button-secondary-background-fill);padding-right:4px}.info.svelte-182fdeq a.svelte-182fdeq{color:var(--body-text-color)}.title.svelte-182fdeq.svelte-182fdeq{font-size:var(--text-sm);font-family:var(--font-mono)}.hf.svelte-182fdeq.svelte-182fdeq{margin-left:5px}.space-logo.svelte-182fdeq img.svelte-182fdeq{display:inline-block;margin-bottom:4px;height:12px}a.svelte-182fdeq.svelte-182fdeq:hover{text-decoration:underline}svg.svelte-zyxd38.svelte-zyxd38{width:var(--size-20);height:var(--size-20)}svg.svelte-zyxd38 path.svelte-zyxd38{fill:var(--loader-color)}div.svelte-zyxd38.svelte-zyxd38{z-index:var(--layer-2)}.margin.svelte-zyxd38.svelte-zyxd38{margin:var(--size-4)}.block.svelte-12cmxck{position:relative;margin:0;box-shadow:var(--block-shadow);border-width:var(--block-border-width);border-color:var(--block-border-color);border-radius:var(--block-radius);background:var(--block-background-fill);width:100%;line-height:var(--line-sm)}.block.border_focus.svelte-12cmxck{border-color:var(--color-accent)}.block.border_contrast.svelte-12cmxck{border-color:var(--body-text-color)}.padded.svelte-12cmxck{padding:var(--block-padding)}.hidden.svelte-12cmxck{display:none}.hide-container.svelte-12cmxck{margin:0;box-shadow:none;--block-border-width:0;background:transparent;padding:0;overflow:visible}div.svelte-e8n7p6{margin-bottom:var(--spacing-lg);color:var(--block-info-text-color);font-weight:var(--block-info-text-weight);font-size:var(--block-info-text-size);line-height:var(--line-sm)}span.has-info.svelte-1gfkn6j{margin-bottom:var(--spacing-xs)}span.svelte-1gfkn6j:not(.has-info){margin-bottom:var(--spacing-lg)}span.svelte-1gfkn6j{display:inline-block;position:relative;z-index:var(--layer-4);border:solid var(--block-title-border-width) var(--block-title-border-color);border-radius:var(--block-title-radius);background:var(--block-title-background-fill);padding:var(--block-title-padding);color:var(--block-title-text-color);font-weight:var(--block-title-text-weight);font-size:var(--block-title-text-size);line-height:var(--line-sm)}.hide.svelte-1gfkn6j{margin:0;height:0}label.svelte-1b6s6s{display:inline-flex;align-items:center;z-index:var(--layer-2);box-shadow:var(--block-label-shadow);border:var(--block-label-border-width) solid var(--border-color-primary);border-top:none;border-left:none;border-radius:var(--block-label-radius);background:var(--block-label-background-fill);padding:var(--block-label-padding);pointer-events:none;color:var(--block-label-text-color);font-weight:var(--block-label-text-weight);font-size:var(--block-label-text-size);line-height:var(--line-sm)}.gr-group label.svelte-1b6s6s{border-top-left-radius:0}label.float.svelte-1b6s6s{position:absolute;top:var(--block-label-margin);left:var(--block-label-margin)}label.svelte-1b6s6s:not(.float){position:static;margin-top:var(--block-label-margin);margin-left:var(--block-label-margin)}.hide.svelte-1b6s6s{height:0}span.svelte-1b6s6s{opacity:.8;margin-right:var(--size-2);width:calc(var(--block-label-text-size) - 1px);height:calc(var(--block-label-text-size) - 1px)}.hide-label.svelte-1b6s6s{box-shadow:none;border-width:0;background:transparent;overflow:visible}button.svelte-rk35yg{display:flex;justify-content:center;align-items:center;gap:1px;z-index:var(--layer-2);border-radius:var(--radius-sm);color:var(--block-label-text-color);border:1px solid transparent}button[disabled].svelte-rk35yg{opacity:.5;box-shadow:none}button[disabled].svelte-rk35yg:hover{cursor:not-allowed}.padded.svelte-rk35yg{padding:2px;background:var(--bg-color);box-shadow:var(--shadow-drop);border:1px solid var(--button-secondary-border-color)}button.svelte-rk35yg:hover,button.highlight.svelte-rk35yg{cursor:pointer;color:var(--color-accent)}.padded.svelte-rk35yg:hover{border:2px solid var(--button-secondary-border-color-hover);padding:1px;color:var(--block-label-text-color)}span.svelte-rk35yg{padding:0 1px;font-size:10px}div.svelte-rk35yg{padding:2px;display:flex;align-items:flex-end}.small.svelte-rk35yg{width:14px;height:14px}.medium.svelte-rk35yg{width:20px;height:20px}.large.svelte-rk35yg{width:22px;height:22px}.pending.svelte-rk35yg{animation:svelte-rk35yg-flash .5s infinite}@keyframes svelte-rk35yg-flash{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.transparent.svelte-rk35yg{background:transparent;border:none;box-shadow:none}.empty.svelte-1oiin9d{display:flex;justify-content:center;align-items:center;margin-top:calc(0px - var(--size-6));height:var(--size-full)}.icon.svelte-1oiin9d{opacity:.5;height:var(--size-5);color:var(--body-text-color)}.small.svelte-1oiin9d{min-height:calc(var(--size-32) - 20px)}.large.svelte-1oiin9d{min-height:calc(var(--size-64) - 20px)}.unpadded_box.svelte-1oiin9d{margin-top:0}.small_parent.svelte-1oiin9d{min-height:100%!important}.dropdown-arrow.svelte-xjn76a{fill:currentColor}.wrap.svelte-b0hvie{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:var(--size-60);color:var(--block-label-text-color);line-height:var(--line-md);height:100%;padding-top:var(--size-3)}.or.svelte-b0hvie{color:var(--body-text-color-subdued);display:flex}.icon-wrap.svelte-b0hvie{width:30px;margin-bottom:var(--spacing-lg)}@media (min-width: 768px){.wrap.svelte-b0hvie{font-size:var(--text-lg)}}.hovered.svelte-b0hvie{color:var(--color-accent)}div.svelte-1ua59x3{border-top:1px solid transparent;display:flex;max-height:100%;justify-content:center;align-items:center;gap:var(--spacing-sm);height:auto;align-items:flex-end;color:var(--block-label-text-color);flex-shrink:0}.show_border.svelte-1ua59x3{border-top:1px solid var(--block-border-color);margin-top:var(--spacing-xxl);box-shadow:var(--shadow-drop)}.source-selection.svelte-1ebruwp{display:flex;align-items:center;justify-content:center;border-top:1px solid var(--border-color-primary);width:95%;bottom:0;left:0;right:0;margin-left:auto;margin-right:auto}.icon.svelte-1ebruwp{width:22px;height:22px;margin:var(--spacing-lg) var(--spacing-xs);padding:var(--spacing-xs);color:var(--neutral-400);border-radius:var(--radius-md)}.selected.svelte-1ebruwp{color:var(--color-accent)}.icon.svelte-1ebruwp:hover,.icon.svelte-1ebruwp:focus{color:var(--color-accent)}.wrap.svelte-137ftxg.svelte-137ftxg{display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:var(--layer-top);transition:opacity .1s ease-in-out;border-radius:var(--block-radius);background:var(--block-background-fill);padding:0 var(--size-6);max-height:var(--size-screen-h);overflow:hidden}.wrap.center.svelte-137ftxg.svelte-137ftxg{top:0;right:0;left:0}.wrap.default.svelte-137ftxg.svelte-137ftxg{inset:0}.hide.svelte-137ftxg.svelte-137ftxg{opacity:0;pointer-events:none}.generating.svelte-137ftxg.svelte-137ftxg{animation:svelte-137ftxg-pulse 2s cubic-bezier(.4,0,.6,1) infinite;border:2px solid var(--color-accent);background:transparent;z-index:var(--layer-1)}.translucent.svelte-137ftxg.svelte-137ftxg{background:none}@keyframes svelte-137ftxg-pulse{0%,to{opacity:1}50%{opacity:.5}}.loading.svelte-137ftxg.svelte-137ftxg{z-index:var(--layer-2);color:var(--body-text-color)}.eta-bar.svelte-137ftxg.svelte-137ftxg{position:absolute;inset:0;transform-origin:left;opacity:.8;z-index:var(--layer-1);transition:10ms;background:var(--background-fill-secondary)}.progress-bar-wrap.svelte-137ftxg.svelte-137ftxg{border:1px solid var(--border-color-primary);background:var(--background-fill-primary);width:55.5%;height:var(--size-4)}.progress-bar.svelte-137ftxg.svelte-137ftxg{transform-origin:left;background-color:var(--loader-color);width:var(--size-full);height:var(--size-full)}.progress-level.svelte-137ftxg.svelte-137ftxg{display:flex;flex-direction:column;align-items:center;gap:1;z-index:var(--layer-2);width:var(--size-full)}.progress-level-inner.svelte-137ftxg.svelte-137ftxg{margin:var(--size-2) auto;color:var(--body-text-color);font-size:var(--text-sm);font-family:var(--font-mono)}.meta-text.svelte-137ftxg.svelte-137ftxg{position:absolute;top:0;right:0;z-index:var(--layer-2);padding:var(--size-1) var(--size-2);font-size:var(--text-sm);font-family:var(--font-mono)}.meta-text-center.svelte-137ftxg.svelte-137ftxg{display:flex;position:absolute;top:0;right:0;justify-content:center;align-items:center;transform:translateY(var(--size-6));z-index:var(--layer-2);padding:var(--size-1) var(--size-2);font-size:var(--text-sm);font-family:var(--font-mono);text-align:center}.error.svelte-137ftxg.svelte-137ftxg{box-shadow:var(--shadow-drop);border:solid 1px var(--error-border-color);border-radius:var(--radius-full);background:var(--error-background-fill);padding-right:var(--size-4);padding-left:var(--size-4);color:var(--error-text-color);font-weight:var(--weight-semibold);font-size:var(--text-lg);line-height:var(--line-lg);font-family:var(--font)}.minimal.svelte-137ftxg .progress-text.svelte-137ftxg{background:var(--block-background-fill)}.border.svelte-137ftxg.svelte-137ftxg{border:1px solid var(--border-color-primary)}.clear-status.svelte-137ftxg.svelte-137ftxg{position:absolute;display:flex;top:var(--size-2);right:var(--size-2);justify-content:flex-end;gap:var(--spacing-sm);z-index:var(--layer-1)}.toast-body.svelte-z3l7qj{display:flex;position:relative;right:0;left:0;align-items:center;margin:var(--size-6) var(--size-4);margin:auto;border-radius:var(--container-radius);overflow:hidden;pointer-events:auto}.toast-body.error.svelte-z3l7qj{border:1px solid var(--color-red-700);background:var(--color-red-50)}.dark .toast-body.error.svelte-z3l7qj{border:1px solid var(--color-red-500);background-color:var(--color-grey-950)}.toast-body.warning.svelte-z3l7qj{border:1px solid var(--color-yellow-700);background:var(--color-yellow-50)}.dark .toast-body.warning.svelte-z3l7qj{border:1px solid var(--color-yellow-500);background-color:var(--color-grey-950)}.toast-body.info.svelte-z3l7qj{border:1px solid var(--color-grey-700);background:var(--color-grey-50)}.dark .toast-body.info.svelte-z3l7qj{border:1px solid var(--color-grey-500);background-color:var(--color-grey-950)}.toast-title.svelte-z3l7qj{display:flex;align-items:center;font-weight:var(--weight-bold);font-size:var(--text-lg);line-height:var(--line-sm);text-transform:capitalize}.toast-title.error.svelte-z3l7qj{color:var(--color-red-700)}.dark .toast-title.error.svelte-z3l7qj{color:var(--color-red-50)}.toast-title.warning.svelte-z3l7qj{color:var(--color-yellow-700)}.dark .toast-title.warning.svelte-z3l7qj{color:var(--color-yellow-50)}.toast-title.info.svelte-z3l7qj{color:var(--color-grey-700)}.dark .toast-title.info.svelte-z3l7qj{color:var(--color-grey-50)}.toast-close.svelte-z3l7qj{margin:0 var(--size-3);border-radius:var(--size-3);padding:0px var(--size-1-5);font-size:var(--size-5);line-height:var(--size-5)}.toast-close.error.svelte-z3l7qj{color:var(--color-red-700)}.dark .toast-close.error.svelte-z3l7qj{color:var(--color-red-500)}.toast-close.warning.svelte-z3l7qj{color:var(--color-yellow-700)}.dark .toast-close.warning.svelte-z3l7qj{color:var(--color-yellow-500)}.toast-close.info.svelte-z3l7qj{color:var(--color-grey-700)}.dark .toast-close.info.svelte-z3l7qj{color:var(--color-grey-500)}.toast-text.svelte-z3l7qj{font-size:var(--text-lg)}.toast-text.error.svelte-z3l7qj{color:var(--color-red-700)}.dark .toast-text.error.svelte-z3l7qj{color:var(--color-red-50)}.toast-text.warning.svelte-z3l7qj{color:var(--color-yellow-700)}.dark .toast-text.warning.svelte-z3l7qj{color:var(--color-yellow-50)}.toast-text.info.svelte-z3l7qj{color:var(--color-grey-700)}.dark .toast-text.info.svelte-z3l7qj{color:var(--color-grey-50)}.toast-details.svelte-z3l7qj{margin:var(--size-3) var(--size-3) var(--size-3) 0;width:100%}.toast-icon.svelte-z3l7qj{display:flex;position:absolute;position:relative;flex-shrink:0;justify-content:center;align-items:center;margin:var(--size-2);border-radius:var(--radius-full);padding:var(--size-1);padding-left:calc(var(--size-1) - 1px);width:35px;height:35px}.toast-icon.error.svelte-z3l7qj{color:var(--color-red-700)}.dark .toast-icon.error.svelte-z3l7qj{color:var(--color-red-500)}.toast-icon.warning.svelte-z3l7qj{color:var(--color-yellow-700)}.dark .toast-icon.warning.svelte-z3l7qj{color:var(--color-yellow-500)}.toast-icon.info.svelte-z3l7qj{color:var(--color-grey-700)}.dark .toast-icon.info.svelte-z3l7qj{color:var(--color-grey-500)}@keyframes svelte-z3l7qj-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.timer.svelte-z3l7qj{position:absolute;bottom:0;left:0;transform-origin:0 0;animation:svelte-z3l7qj-countdown 10s linear forwards;width:100%;height:var(--size-1)}.timer.error.svelte-z3l7qj{background:var(--color-red-700)}.dark .timer.error.svelte-z3l7qj{background:var(--color-red-500)}.timer.warning.svelte-z3l7qj{background:var(--color-yellow-700)}.dark .timer.warning.svelte-z3l7qj{background:var(--color-yellow-500)}.timer.info.svelte-z3l7qj{background:var(--color-grey-700)}.dark .timer.info.svelte-z3l7qj{background:var(--color-grey-500)}.toast-wrap.svelte-pu0yf1{display:flex;position:fixed;top:var(--size-4);right:var(--size-4);flex-direction:column;align-items:end;gap:var(--size-2);z-index:var(--layer-top);width:calc(100% - var(--size-8))}@media (min-width: 640px){.toast-wrap.svelte-pu0yf1{width:calc(var(--size-96) + var(--size-10))}}.error.svelte-y6l4b.svelte-y6l4b{position:relative;padding:var(--size-4);color:var(--body-text-color);text-align:center}.error.svelte-y6l4b>.svelte-y6l4b{margin-top:var(--size-4)}a.svelte-y6l4b.svelte-y6l4b{color:var(--link-text-color)}a.svelte-y6l4b.svelte-y6l4b:hover{color:var(--link-text-color-hover);text-decoration:underline}a.svelte-y6l4b.svelte-y6l4b:visited{color:var(--link-text-color-visited)}a.svelte-y6l4b.svelte-y6l4b:active{color:var(--link-text-color-active)}
Soap.AI_files/Index-C-7D3Y3j.css ADDED
@@ -0,0 +1 @@
 
 
1
+ div.svelte-iyf88w{border:var(--block-border-width) solid var(--border-color-primary);background:var(--border-color-primary);border-radius:var(--block-radius);display:flex;flex-direction:column;gap:var(--form-gap-width);overflow:hidden}div.svelte-iyf88w>*:not(.absolute){border:none;border-radius:0}.hide.svelte-iyf88w{display:none}
Soap.AI_files/Index-COkUHsKJ.css ADDED
@@ -0,0 +1 @@
 
 
1
+ div.svelte-15lo0d8{display:flex;flex-wrap:wrap;gap:var(--layout-gap);width:var(--size-full)}.hide.svelte-15lo0d8{display:none}.compact.svelte-15lo0d8>*,.compact.svelte-15lo0d8 .box{border-radius:0}.compact.svelte-15lo0d8,.panel.svelte-15lo0d8{border-radius:var(--container-radius);background:var(--background-fill-secondary);padding:var(--size-2)}.unequal-height.svelte-15lo0d8{align-items:flex-start}.stretch.svelte-15lo0d8{align-items:stretch}div.svelte-15lo0d8>*,div.svelte-15lo0d8>.form>*{flex:1 1 0%;flex-wrap:wrap;min-width:min(160px,100%)}
Soap.AI_files/Index-CptIZeFZ.css ADDED
@@ -0,0 +1 @@
 
 
1
+ div.svelte-vt1mxs{display:flex;position:relative;flex-direction:column}div.svelte-vt1mxs>*,div.svelte-vt1mxs>.form>*{width:var(--size-full)}.gap.svelte-vt1mxs{gap:var(--layout-gap)}.hide.svelte-vt1mxs{display:none}.compact.svelte-vt1mxs>*,.compact.svelte-vt1mxs .box{border-radius:0}.compact.svelte-vt1mxs,.panel.svelte-vt1mxs{border:solid var(--panel-border-width) var(--panel-border-color);border-radius:var(--container-radius);background:var(--panel-background-fill);padding:var(--spacing-lg)}
Soap.AI_files/Index-D-1bCrLQ.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .altair.svelte-uqj0um canvas{max-width:100%;padding:6px}.altair.svelte-uqj0um .vega-embed{padding:0!important}.altair.svelte-uqj0um .vega-actions{right:0!important}.gradio-bokeh.svelte-uqj0um.svelte-uqj0um{display:flex;justify-content:center}.layout.svelte-uqj0um.svelte-uqj0um{display:flex;flex-direction:column;justify-content:center;align-items:center;width:var(--size-full);height:var(--size-full);color:var(--body-text-color)}.altair.svelte-uqj0um.svelte-uqj0um{display:flex;flex-direction:column;justify-content:center;align-items:center;width:var(--size-full);height:var(--size-full)}.caption.svelte-uqj0um.svelte-uqj0um{font-size:var(--text-sm);margin-bottom:6px}.matplotlib.svelte-uqj0um img.svelte-uqj0um{object-fit:contain}
Soap.AI_files/Index-D8o7u_T6.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .wrap.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2{display:flex;flex-wrap:wrap;gap:var(--checkbox-label-gap)}label.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2{display:flex;align-items:center;transition:var(--button-transition);cursor:pointer;box-shadow:var(--checkbox-label-shadow);border:var(--checkbox-label-border-width) solid var(--checkbox-label-border-color);border-radius:var(--button-small-radius);background:var(--checkbox-label-background-fill);padding:var(--checkbox-label-padding);color:var(--checkbox-label-text-color);font-weight:var(--checkbox-label-text-weight);font-size:var(--checkbox-label-text-size);line-height:var(--line-md)}label.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:hover{background:var(--checkbox-label-background-fill-hover)}label.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:focus{background:var(--checkbox-label-background-fill-focus)}label.selected.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2{background:var(--checkbox-label-background-fill-selected);color:var(--checkbox-label-text-color-selected)}label.svelte-1k4wjf2>.svelte-1k4wjf2+.svelte-1k4wjf2{margin-left:var(--size-2)}input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2{--ring-color:transparent;position:relative;box-shadow:var(--checkbox-shadow);border:var(--checkbox-border-width) solid var(--checkbox-border-color);border-radius:var(--checkbox-border-radius);background-color:var(--checkbox-background-color);line-height:var(--line-sm)}input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:checked,input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:checked:hover,input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:checked:focus{border-color:var(--checkbox-border-color-selected);background-image:var(--checkbox-check);background-color:var(--checkbox-background-color-selected)}input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:checked:focus{border-color:var(--checkbox-border-color-focus);background-image:var(--checkbox-check);background-color:var(--checkbox-background-color-selected)}input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:hover{border-color:var(--checkbox-border-color-hover);background-color:var(--checkbox-background-color-hover)}input.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2:not(:checked):focus{border-color:var(--checkbox-border-color-focus)}input[disabled].svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2,.disabled.svelte-1k4wjf2.svelte-1k4wjf2.svelte-1k4wjf2{cursor:not-allowed}
Soap.AI_files/Index-DHlElFN7.css ADDED
@@ -0,0 +1 @@
 
 
1
+ button.svelte-rvlubk{position:relative;top:0;right:0;cursor:pointer;color:var(--body-text-color-subdued);margin-right:5px}button.svelte-rvlubk:hover{color:var(--body-text-color)}.action.svelte-rvlubk{width:15px;height:14px}button.svelte-3snf3m{position:relative;top:0;right:0;cursor:pointer;color:var(--body-text-color-subdued);width:17px;height:17px;margin-right:5px}button.svelte-3snf3m:hover,button.svelte-3snf3m:focus{color:var(--body-text-color)}.pending.svelte-1gpwetz{background:var(--color-accent-soft);display:flex;flex-direction:row;justify-content:center;align-items:center;align-self:center;gap:2px;width:100%;height:var(--size-16)}.dot-flashing.svelte-1gpwetz{animation:svelte-1gpwetz-flash 1s infinite ease-in-out;border-radius:5px;background-color:var(--body-text-color);width:7px;height:7px;color:var(--body-text-color)}@keyframes svelte-1gpwetz-flash{0%,to{opacity:0}50%{opacity:1}}.dot-flashing.svelte-1gpwetz:nth-child(1){animation-delay:0s}.dot-flashing.svelte-1gpwetz:nth-child(2){animation-delay:.33s}.dot-flashing.svelte-1gpwetz:nth-child(3){animation-delay:.66s}.placeholder-container.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{display:flex;justify-content:center;align-items:center;height:100%}.bubble-wrap.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{padding:var(--block-padding);width:100%;overflow-y:auto}.panel-wrap.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{width:100%;overflow-y:auto}.message-wrap.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{display:flex;flex-direction:column;justify-content:space-between}.bubble-gap.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{gap:calc(var(--spacing-xxl) + var(--spacing-lg))}.message-wrap.svelte-gutj6d>div.svelte-gutj6d .svelte-gutj6d:not(.avatar-container) img{border-radius:13px;margin:var(--size-2);width:400px;max-width:30vw;max-height:auto}.message-wrap.svelte-gutj6d>div.svelte-gutj6d p:not(:first-child){margin-top:var(--spacing-xxl)}.message.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{position:relative;display:flex;flex-direction:column;align-self:flex-end;background:var(--background-fill-secondary);width:calc(100% - var(--spacing-xxl));color:var(--body-text-color);font-size:var(--chatbot-body-text-size);overflow-wrap:break-word;overflow-x:hidden;padding-right:calc(var(--spacing-xxl) + var(--spacing-md));padding:calc(var(--spacing-xxl) + var(--spacing-sm))}.message.svelte-gutj6d .prose{font-size:var(--chatbot-body-text-size)}.message-bubble-border.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{border-width:1px;border-radius:var(--radius-xxl)}.message-fit.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{width:fit-content!important}.panel-full-width.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{padding:calc(var(--spacing-xxl) * 2);width:100%}.message-markdown-disabled.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{white-space:pre-line}@media (max-width: 480px){.panel-full-width.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{padding:calc(var(--spacing-xxl) * 2)}}.user.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{align-self:flex-start;border-bottom-right-radius:0;text-align:right}.bot.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{border-bottom-left-radius:0;text-align:left}.bot.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{border-color:var(--border-color-primary);background:var(--background-fill-secondary)}.user.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{border-color:var(--border-color-accent-subdued);background-color:var(--color-accent-soft)}.message-row.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{display:flex;flex-direction:row;position:relative}.message-row.panel.user-row.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{background:var(--color-accent-soft)}.message-row.panel.bot-row.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{background:var(--background-fill-secondary)}.message-row.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d:last-of-type{margin-bottom:var(--spacing-xxl)}.user-row.bubble.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{flex-direction:row;justify-content:flex-end}@media (max-width: 480px){.user-row.bubble.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{align-self:flex-end}.bot-row.bubble.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{align-self:flex-start}.message.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{width:auto}}.avatar-container.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{align-self:flex-end;position:relative;justify-content:center;width:35px;height:35px;flex-shrink:0;bottom:0}.user-row.bubble.svelte-gutj6d>.avatar-container.svelte-gutj6d.svelte-gutj6d{order:2;margin-left:10px}.bot-row.bubble.svelte-gutj6d>.avatar-container.svelte-gutj6d.svelte-gutj6d{margin-right:10px}.panel.svelte-gutj6d>.avatar-container.svelte-gutj6d.svelte-gutj6d{margin-left:25px;align-self:center}.avatar-container.svelte-gutj6d img{width:100%;height:100%;object-fit:cover;border-radius:50%}.message-buttons-user.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d,.message-buttons-bot.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{border-radius:var(--radius-md);display:flex;align-items:center;height:var(--size-7);align-self:self-end;position:absolute;bottom:-15px;margin:2px;padding-left:5px;z-index:1}.message-buttons-bot.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{left:10px}.message-buttons-user.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{right:5px}.message-buttons-bot.message-buttons-bubble.with-avatar.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{left:50px}.message-buttons-user.message-buttons-bubble.with-avatar.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{right:50px}.message-buttons-bubble.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{border:1px solid var(--border-color-accent);background:var(--background-fill-secondary)}.message-buttons-panel.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{left:unset;right:0;top:0}.share-button.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{position:absolute;top:4px;right:6px}.selectable.svelte-gutj6d.svelte-gutj6d.svelte-gutj6d{cursor:pointer}@keyframes svelte-gutj6d-dot-flashing{0%{opacity:.8}50%{opacity:.5}to{opacity:.8}}.message-wrap.svelte-gutj6d .message.svelte-gutj6d a{color:var(--color-text-link);text-decoration:underline}.message-wrap.svelte-gutj6d .bot.svelte-gutj6d table,.message-wrap.svelte-gutj6d .bot.svelte-gutj6d tr,.message-wrap.svelte-gutj6d .bot.svelte-gutj6d td,.message-wrap.svelte-gutj6d .bot.svelte-gutj6d th{border:1px solid var(--border-color-primary)}.message-wrap.svelte-gutj6d .user.svelte-gutj6d table,.message-wrap.svelte-gutj6d .user.svelte-gutj6d tr,.message-wrap.svelte-gutj6d .user.svelte-gutj6d td,.message-wrap.svelte-gutj6d .user.svelte-gutj6d th{border:1px solid var(--border-color-accent)}.message-wrap.svelte-gutj6d ol,.message-wrap.svelte-gutj6d ul{padding-inline-start:2em}.message-wrap.svelte-gutj6d span.katex{font-size:var(--text-lg);direction:ltr}.message-wrap.svelte-gutj6d div[class*=code_wrap]>button{position:absolute;top:var(--spacing-md);right:var(--spacing-md);z-index:1;cursor:pointer;border-bottom-left-radius:var(--radius-sm);padding:5px;padding:var(--spacing-md);width:25px;height:25px}.message-wrap.svelte-gutj6d code>button>span{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:12px;height:12px}.message-wrap.svelte-gutj6d .check{position:absolute;top:0;right:0;opacity:0;z-index:var(--layer-top);transition:opacity .2s;background:var(--background-fill-primary);padding:var(--size-1);width:100%;height:100%;color:var(--body-text-color)}.message-wrap.svelte-gutj6d pre{position:relative}.wrapper.svelte-nab2ao{display:flex;position:relative;flex-direction:column;align-items:start;width:100%;height:100%}
Soap.AI_files/ModifyUpload-RL_SHQmd.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .wrap.svelte-1vsfomn.svelte-1vsfomn{overflow-y:auto;transition:opacity .5s ease-in-out;background:var(--block-background-fill);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--size-40);width:var(--size-full)}.wrap.svelte-1vsfomn.svelte-1vsfomn:after{content:"";position:absolute;top:0;left:0;width:var(--upload-progress-width);height:100%;transition:all .5s ease-in-out;z-index:1}.uploading.svelte-1vsfomn.svelte-1vsfomn{font-size:var(--text-lg);font-family:var(--font);z-index:2}.file-name.svelte-1vsfomn.svelte-1vsfomn{margin:var(--spacing-md);font-size:var(--text-lg);color:var(--body-text-color-subdued)}.file.svelte-1vsfomn.svelte-1vsfomn{font-size:var(--text-md);z-index:2;display:flex;align-items:center}.file.svelte-1vsfomn progress.svelte-1vsfomn{display:inline;height:var(--size-1);width:100%;transition:all .5s ease-in-out;color:var(--color-accent);border:none}.file.svelte-1vsfomn progress[value].svelte-1vsfomn::-webkit-progress-value{background-color:var(--color-accent);border-radius:20px}.file.svelte-1vsfomn progress[value].svelte-1vsfomn::-webkit-progress-bar{background-color:var(--border-color-accent);border-radius:20px}.progress-bar.svelte-1vsfomn.svelte-1vsfomn{width:14px;height:14px;border-radius:50%;background:radial-gradient(closest-side,var(--block-background-fill) 64%,transparent 53% 100%),conic-gradient(var(--color-accent) var(--upload-progress-width),var(--border-color-accent) 0);transition:all .5s ease-in-out}button.svelte-j5bxrl{cursor:pointer;width:var(--size-full)}.hidden.svelte-j5bxrl{display:none;height:0!important;position:absolute;width:0;flex-grow:0}.center.svelte-j5bxrl{display:flex;justify-content:center}.flex.svelte-j5bxrl{display:flex;flex-direction:column;justify-content:center;align-items:center}.disable_click.svelte-j5bxrl{cursor:default}input.svelte-j5bxrl{display:none}div.svelte-19sk1im{display:flex;top:var(--size-2);right:var(--size-2);justify-content:flex-end;gap:var(--spacing-sm);z-index:var(--layer-1)}.not-absolute.svelte-19sk1im{margin:var(--size-1)}
Soap.AI_files/Textbox-D8IAzrZj.css ADDED
@@ -0,0 +1 @@
 
 
1
+ label.svelte-1f354aw.svelte-1f354aw{display:block;width:100%}input.svelte-1f354aw.svelte-1f354aw,textarea.svelte-1f354aw.svelte-1f354aw{display:block;position:relative;outline:none!important;box-shadow:var(--input-shadow);background:var(--input-background-fill);padding:var(--input-padding);width:100%;color:var(--body-text-color);font-weight:var(--input-text-weight);font-size:var(--input-text-size);line-height:var(--line-sm);border:none}label.svelte-1f354aw.svelte-1f354aw:not(.container),label.svelte-1f354aw:not(.container)>input.svelte-1f354aw,label.svelte-1f354aw:not(.container)>textarea.svelte-1f354aw{height:100%}.container.svelte-1f354aw>input.svelte-1f354aw,.container.svelte-1f354aw>textarea.svelte-1f354aw{border:var(--input-border-width) solid var(--input-border-color);border-radius:var(--input-radius)}input.svelte-1f354aw.svelte-1f354aw:disabled,textarea.svelte-1f354aw.svelte-1f354aw:disabled{-webkit-text-fill-color:var(--body-text-color);-webkit-opacity:1;opacity:1}input.svelte-1f354aw.svelte-1f354aw:focus,textarea.svelte-1f354aw.svelte-1f354aw:focus{box-shadow:var(--input-shadow-focus);border-color:var(--input-border-color-focus)}input.svelte-1f354aw.svelte-1f354aw::placeholder,textarea.svelte-1f354aw.svelte-1f354aw::placeholder{color:var(--input-placeholder-color)}button.svelte-1f354aw.svelte-1f354aw{display:flex;position:absolute;top:var(--block-label-margin);right:var(--block-label-margin);align-items:center;box-shadow:var(--shadow-drop);border:1px solid var(--color-border-primary);border-top:none;border-right:none;border-radius:var(--block-label-right-radius);background:var(--block-label-background-fill);padding:5px;width:22px;height:22px;overflow:hidden;color:var(--block-label-color);font:var(--font-sans);font-size:var(--button-small-text-size)}
Soap.AI_files/Video-DJw86Ppo.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .overlay.svelte-1y0s5gv{position:absolute;background-color:#0006;width:100%;height:100%}.hidden.svelte-1y0s5gv{display:none}.load-wrap.svelte-1y0s5gv{display:flex;justify-content:center;align-items:center;height:100%}.loader.svelte-1y0s5gv{display:flex;position:relative;background-color:var(--border-color-accent-subdued);animation:svelte-1y0s5gv-shadowPulse 2s linear infinite;box-shadow:-24px 0 var(--border-color-accent-subdued),24px 0 var(--border-color-accent-subdued);margin:var(--spacing-md);border-radius:50%;width:10px;height:10px;scale:.5}@keyframes svelte-1y0s5gv-shadowPulse{33%{box-shadow:-24px 0 var(--border-color-accent-subdued),24px 0 #fff;background:#fff}66%{box-shadow:-24px 0 #fff,24px 0 #fff;background:var(--border-color-accent-subdued)}to{box-shadow:-24px 0 #fff,24px 0 var(--border-color-accent-subdued);background:#fff}}
Soap.AI_files/analytics.js ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function(){/*
2
+
3
+ Copyright The Closure Library Authors.
4
+ SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ var n=this||self,p=function(a,b){a=a.split(".");var c=n;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}:c[d]=b};function q(){for(var a=r,b={},c=0;c<a.length;++c)b[a[c]]=c;return b}function u(){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZ";a+=a.toLowerCase()+"0123456789-_";return a+"."}var r,v;
7
+ function aa(a){function b(k){for(;d<a.length;){var m=a.charAt(d++),l=v[m];if(null!=l)return l;if(!/^[\s\xa0]*$/.test(m))throw Error("Unknown base64 encoding at char: "+m);}return k}r=r||u();v=v||q();for(var c="",d=0;;){var e=b(-1),f=b(0),h=b(64),g=b(64);if(64===g&&-1===e)return c;c+=String.fromCharCode(e<<2|f>>4);64!=h&&(c+=String.fromCharCode(f<<4&240|h>>2),64!=g&&(c+=String.fromCharCode(h<<6&192|g)))}};var w={},y=function(a){w.TAGGING=w.TAGGING||[];w.TAGGING[a]=!0};var ba=Array.isArray,ca=function(a,b){if(a&&ba(a))for(var c=0;c<a.length;c++)if(a[c]&&b(a[c]))return a[c]},z=function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])},A=function(a){for(var b in a)if(a.hasOwnProperty(b))return!0;return!1};var B=function(a){this.j=a};B.prototype.toString=function(){return this.j.toString()};var C=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;new B("about:invalid#zClosurez");new B("about:blank");var D=function(){this.i=""};D.prototype.toString=function(){return this.i.toString()};new D;var E=function(){this.h=""};E.prototype.toString=function(){return this.h.toString()};new E;var F=function(){this.g=n.trustedTypes&&n.trustedTypes.emptyHTML||""};F.prototype.toString=function(){return this.g.toString()};new F;var G=window,H=window.history,I=document,J=navigator,K=function(){var a={},b=G.google_tag_data;G.google_tag_data=void 0===b?a:b;return G.google_tag_data},L=function(a,b){I.addEventListener?I.addEventListener(a,b,!1):I.attachEvent&&I.attachEvent("on"+a,b)};var da=function(a){var b=M();b.pending||(b.pending=[]);ca(b.pending,function(c){return c.target.ctid===a.ctid&&c.target.isDestination===a.isDestination})||b.pending.push({target:a,onLoad:void 0})},ea=function(){this.container={};this.destination={};this.canonical={};this.pending=[]},M=function(){var a=K(),b=a.tidr;b||(b=new ea,a.tidr=b);return b};var N=/:[0-9]+$/,Q=function(a,b){b&&(b=String(b).toLowerCase());if("protocol"===b||"port"===b)a.protocol=O(a.protocol)||O(G.location.protocol);"port"===b?a.port=String(Number(a.hostname?a.port:G.location.port)||("http"===a.protocol?80:"https"===a.protocol?443:"")):"host"===b&&(a.hostname=(a.hostname||G.location.hostname).replace(N,"").toLowerCase());return P(a,b)},P=function(a,b,c){var d=O(a.protocol);b&&(b=String(b).toLowerCase());switch(b){case "url_no_fragment":c="";a&&a.href&&(c=a.href.indexOf("#"),
8
+ c=0>c?a.href:a.href.substr(0,c));a=c;break;case "protocol":a=d;break;case "host":a=a.hostname.replace(N,"").toLowerCase();c&&(c=/^www\d*\./.exec(a))&&c[0]&&(a=a.substr(c[0].length));break;case "port":a=String(Number(a.port)||("http"===d?80:"https"===d?443:""));break;case "path":a.pathname||a.hostname||y(1);a="/"===a.pathname.substr(0,1)?a.pathname:"/"+a.pathname;a=a.split("/");0<=[].indexOf(a[a.length-1])&&(a[a.length-1]="");a=a.join("/");break;case "query":a=a.search.replace("?","");break;case "extension":a=
9
+ a.pathname.split(".");a=1<a.length?a[a.length-1]:"";a=a.split("/")[0];break;case "fragment":a=a.hash.replace("#","");break;default:a=a&&a.href}return a},O=function(a){return a?a.replace(":","").toLowerCase():""},R=function(a){var b=I.createElement("a");a&&(b.href=a);var c=b.pathname;"/"!==c[0]&&(a||y(1),c="/"+c);a=b.hostname.replace(N,"");return{href:b.href,protocol:b.protocol,host:b.host,hostname:a,pathname:c,search:b.search,hash:b.hash,port:b.port}};var S;var U=function(){var a=fa,b=ha,c=T(),d=function(h){a(h.target||h.srcElement||{})},e=function(h){b(h.target||h.srcElement||{})};if(!c.init){L("mousedown",d);L("keyup",d);L("submit",e);var f=HTMLFormElement.prototype.submit;HTMLFormElement.prototype.submit=function(){b(this);f.call(this)};c.init=!0}},ia=function(a,b,c,d,e){a={callback:a,domains:b,fragment:2===c,placement:c,forms:d,sameHost:e};T().decorators.push(a)},V=function(a,b,c){for(var d=T().decorators,e={},f=0;f<d.length;++f){var h=d[f],g;if(g=
10
+ !c||h.forms)a:{g=h.domains;var k=a,m=!!h.sameHost;if(g&&(m||k!==I.location.hostname))for(var l=0;l<g.length;l++)if(g[l]instanceof RegExp){if(g[l].test(k)){g=!0;break a}}else if(0<=k.indexOf(g[l])||m&&0<=g[l].indexOf(k)){g=!0;break a}g=!1}g&&(g=h.placement,void 0==g&&(g=h.fragment?2:1),g===b&&z(e,h.callback()))}return e};function T(){var a=K(),b=a.gl;b&&b.decorators||(b={decorators:[]},a.gl=b);return b};var ja=/(.*?)\*(.*?)\*(.*)/,ka=/([^?#]+)(\?[^#]*)?(#.*)?/;function W(a){return new RegExp("(.*?)(^|&)"+a+"=([^&]*)&?(.*)")}
11
+ var X=function(a){var b=[],c;for(c in a)if(a.hasOwnProperty(c)){var d=a[c];if(void 0!==d&&d===d&&null!==d&&"[object Object]"!==d.toString()){b.push(c);var e=b,f=e.push;d=String(d);r=r||u();v=v||q();for(var h=[],g=0;g<d.length;g+=3){var k=g+1<d.length,m=g+2<d.length,l=d.charCodeAt(g),t=k?d.charCodeAt(g+1):0,x=m?d.charCodeAt(g+2):0,ra=l>>2;l=(l&3)<<4|t>>4;t=(t&15)<<2|x>>6;x&=63;m||(x=64,k||(t=64));h.push(r[ra],r[l],r[t],r[x])}f.call(e,h.join(""))}}a=b.join("*");return["1",la(a),a].join("*")};
12
+ function la(a,b){a=[J.userAgent,(new Date).getTimezoneOffset(),J.userLanguage||J.language,Math.floor((new Date(Date.now())).getTime()/60/1E3)-(void 0===b?0:b),a].join("*");if(!(b=S)){b=Array(256);for(var c=0;256>c;c++){for(var d=c,e=0;8>e;e++)d=d&1?d>>>1^3988292384:d>>>1;b[c]=d}}S=b;b=4294967295;for(c=0;c<a.length;c++)b=b>>>8^S[(b^a.charCodeAt(c))&255];return((b^-1)>>>0).toString(36)}
13
+ function ma(a){return function(b){var c=R(G.location.href),d=c.search.replace("?","");a:{var e=d.split("&");for(var f=0;f<e.length;f++){var h=e[f].split("=");if("_gl"===decodeURIComponent(h[0]).replace(/\+/g," ")){e=h.slice(1).join("=");break a}}e=void 0}b.query=na(e||"")||{};e=Q(c,"fragment");f=e.match(W("_gl"));b.fragment=na(f&&f[3]||"")||{};a&&oa(c,d,e)}}function pa(a,b){if(a=W(a).exec(b)){var c=a[2],d=a[4];b=a[1];d&&(b=b+c+d)}return b}
14
+ function oa(a,b,c){function d(f,h){f=pa("_gl",f);f.length&&(f=h+f);return f}if(H&&H.replaceState){var e=W("_gl");if(e.test(b)||e.test(c))a=Q(a,"path"),b=d(b,"?"),c=d(c,"#"),H.replaceState({},void 0,""+a+b+c)}}
15
+ var na=function(a){try{a:{if(a){b:{for(var b=0;3>b;++b){var c=ja.exec(a);if(c){var d=c;break b}a=decodeURIComponent(a)}d=void 0}if(d&&"1"===d[1]){var e=d[2],f=d[3];b:{for(d=0;3>d;++d)if(e===la(f,d)){var h=!0;break b}h=!1}if(h){var g=f;break a}y(7)}}g=void 0}e=g;if(void 0!==e){g={};var k=e?e.split("*"):[];for(e=0;e+1<k.length;e+=2){var m=k[e],l=aa(k[e+1]);g[m]=l}y(6);return g}}catch(t){y(8)}};
16
+ function Y(a,b,c,d){function e(k){k=pa(a,k);var m=k.charAt(k.length-1);k&&"&"!==m&&(k+="&");return k+g}d=void 0===d?!1:d;var f=ka.exec(c);if(!f)return"";c=f[1];var h=f[2]||"";f=f[3]||"";var g=a+"="+b;d?f="#"+e(f.substring(1)):h="?"+e(h.substring(1));return""+c+h+f}function qa(a,b){var c="FORM"===(a.tagName||"").toUpperCase(),d=V(b,1,c),e=V(b,2,c);b=V(b,3,c);A(d)&&(d=X(d),c?sa("_gl",d,a):Z("_gl",d,a,!1));!c&&A(e)&&(c=X(e),Z("_gl",c,a,!0));for(var f in b)b.hasOwnProperty(f)&&ta(f,b[f],a)}
17
+ function ta(a,b,c,d){if(c.tagName){if("a"===c.tagName.toLowerCase())return Z(a,b,c,d);if("form"===c.tagName.toLowerCase())return sa(a,b,c)}if("string"==typeof c)return Y(a,b,c,d)}function Z(a,b,c,d){c.href&&(a=Y(a,b,c.href,void 0===d?!1:d),C.test(a)&&(c.href=a))}
18
+ function sa(a,b,c){if(c&&c.action){var d=(c.method||"").toLowerCase();if("get"===d){d=c.childNodes||[];for(var e=!1,f=0;f<d.length;f++){var h=d[f];if(h.name===a){h.setAttribute("value",b);e=!0;break}}e||(d=I.createElement("input"),d.setAttribute("type","hidden"),d.setAttribute("name",a),d.setAttribute("value",b),c.appendChild(d))}else"post"===d&&(a=Y(a,b,c.action),C.test(a)&&(c.action=a))}}
19
+ function fa(a){try{a:{for(var b=100;a&&0<b;){if(a.href&&a.nodeName.match(/^a(?:rea)?$/i)){var c=a;break a}a=a.parentNode;b--}c=null}if(c){var d=c.protocol;"http:"!==d&&"https:"!==d||qa(c,c.hostname)}}catch(e){}}function ha(a){try{if(a.action){var b=Q(R(a.action),"host");qa(a,b)}}catch(c){}};p("google_tag_data.glBridge.auto",function(a,b,c,d){U();ia(a,b,"fragment"===c?2:1,!!d,!1)});p("google_tag_data.glBridge.passthrough",function(a,b,c){U();ia(a,[P(G.location,"host",!0)],b,!!c,!0)});p("google_tag_data.glBridge.decorate",function(a,b,c){a=X(a);return ta("_gl",a,b,!!c)});p("google_tag_data.glBridge.generate",X);p("google_tag_data.glBridge.get",function(a,b){var c=ma(!!b);b=T();b.data||(b.data={query:{},fragment:{}},c(b.data));c={};if(b=b.data)z(c,b.query),a&&z(c,b.fragment);return c});
20
+ p("google_tag_data.tcBridge.registerUa",function(a,b){a=a+"_"+b;var c=M(),d=c.destination[a];d?(d.state=2,d.containers=[],d.destinations=[b]):c.destination[a]={state:2,containers:[],destinations:[b]}});p("google_tag_data.tcBridge.setSideload",function(a,b,c){a={ctid:a+"_"+c,isDestination:!0};M().container[b]={state:1,context:{source:5,fromContainerExecution:!0},parent:a};da({ctid:b,isDestination:!1})});})(window);
21
+ (function(){function La(a){var b=1,c;if(a)for(b=0,c=a.length-1;0<=c;c--){var d=a.charCodeAt(c);b=(b<<6&268435455)+d+(d<<14);d=b&266338304;b=0!=d?b^d>>21:b}return b};var $c=function(a){this.C=a||[]};$c.prototype.set=function(a){this.C[a]=!0};$c.prototype.get=function(a){return this.C[a]};$c.prototype.encode=function(){for(var a=[],b=0;b<this.C.length;b++)this.C[b]&&(a[Math.floor(b/6)]^=1<<b%6);for(b=0;b<a.length;b++)a[b]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".charAt(a[b]||0);return a.join("")+"~"};var ha=window.GoogleAnalyticsObject,wa;if(wa=void 0!=ha)wa=-1<(ha.constructor+"").indexOf("String");var ya;if(ya=wa){var fc=window.GoogleAnalyticsObject;ya=fc?fc.replace(/^[\s\xa0]+|[\s\xa0]+$/g,""):""}var gb=ya||"ga",jd=/^(?:utma\.)?\d+\.\d+$/,kd=/^amp-[\w.-]{22,64}$/,Ba=!1;var vd=new $c;function J(a){vd.set(a)}var Td=function(a){a=Dd(a);a=new $c(a);for(var b=vd.C.slice(),c=0;c<a.C.length;c++)b[c]=b[c]||a.C[c];return(new $c(b)).encode()},Dd=function(a){a=a.get(Gd);ka(a)||(a=[]);return a};var ea=function(a){return"function"==typeof a},ka=function(a){return"[object Array]"==Object.prototype.toString.call(Object(a))},qa=function(a){return void 0!=a&&-1<(a.constructor+"").indexOf("String")},D=function(a,b){return 0==a.indexOf(b)},sa=function(a){return a?a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,""):""},ra=function(){for(var a=O.navigator.userAgent+(M.cookie?M.cookie:"")+(M.referrer?M.referrer:""),b=a.length,c=O.history.length;0<c;)a+=c--^b++;return[hd()^La(a)&2147483647,Math.round((new Date).getTime()/
22
+ 1E3)].join(".")},ta=function(a){var b=M.createElement("img");b.width=1;b.height=1;b.src=a;return b},ua=function(){},K=function(a){if(encodeURIComponent instanceof Function)return encodeURIComponent(a);J(28);return a},L=function(a,b,c,d){try{a.addEventListener?a.addEventListener(b,c,!!d):a.attachEvent&&a.attachEvent("on"+b,c)}catch(e){J(27)}},f=/^[\w\-:/.?=&%!\[\]]+$/,Nd=/^[\w+/_-]+[=]{0,2}$/,ff=null,Id=function(a,b,c,d,e){if(!ff){ff={createScriptURL:function(ca){return ca},createHTML:function(ca){return ca}};
23
+ try{ff=window.trustedTypes.createPolicy("google-analytics",ff)}catch(ca){}}if(a){var g=M.querySelector&&M.querySelector("script[nonce]")||null;g=g?g.nonce||g.getAttribute&&g.getAttribute("nonce")||"":"";c?(e=d="",b&&f.test(b)&&(d=' id="'+b+'"'),g&&Nd.test(g)&&(e=' nonce="'+g+'"'),f.test(a)&&M.write(ff.createHTML("<script"+d+e+' src="'+a+'">\x3c/script>'))):(c=M.createElement("script"),c.type="text/javascript",c.async=!0,c.src=ff.createScriptURL(a),d&&(c.onload=d),e&&(c.onerror=e),b&&(c.id=b),g&&c.setAttribute("nonce",
24
+ g),a=M.getElementsByTagName("script")[0],a.parentNode.insertBefore(c,a))}},be=function(a,b){return E(M.location[b?"href":"search"],a)},E=function(a,b){return(a=a.match("(?:&|#|\\?)"+K(b).replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1")+"=([^&#]*)"))&&2==a.length?a[1]:""},xa=function(){var a=""+M.location.hostname;return 0==a.indexOf("www.")?a.substring(4):a},de=function(a,b){var c=a.indexOf(b);if(5==c||6==c)if(a=a.charAt(c+b.length),"/"==a||"?"==a||""==a||":"==a)return!0;return!1},of=function(a,b){var c=
25
+ M.referrer;if(/^(https?|android-app):\/\//i.test(c)){if(a)return c;a="//"+M.location.hostname;if(!de(c,a))return b&&(b=a.replace(/\./g,"-")+".cdn.ampproject.org",de(c,b))?void 0:c}},za=function(a,b){if(1==b.length&&null!=b[0]&&"object"===typeof b[0])return b[0];for(var c={},d=Math.min(a.length+1,b.length),e=0;e<d;e++)if("object"===typeof b[e]){for(var g in b[e])b[e].hasOwnProperty(g)&&(c[g]=b[e][g]);break}else e<a.length&&(c[a[e]]=b[e]);return c},Ee=function(a,b){for(var c=0;c<a.length;c++)if(b==
26
+ a[c])return!0;return!1};var ee=function(){this.oa=[];this.ea={};this.m={}};ee.prototype.set=function(a,b,c){this.oa.push(a);c?this.m[":"+a]=b:this.ea[":"+a]=b};ee.prototype.get=function(a){return this.m.hasOwnProperty(":"+a)?this.m[":"+a]:this.ea[":"+a]};ee.prototype.map=function(a){for(var b=0;b<this.oa.length;b++){var c=this.oa[b],d=this.get(c);d&&a(c,d)}};var O=window,M=document,jf=document.currentScript?document.currentScript.src:"",va=function(a,b){return setTimeout(a,b)};var Qa=window,Za=document,G=function(a){var b=Qa._gaUserPrefs;if(b&&b.ioo&&b.ioo()||Za.documentElement.hasAttribute("data-google-analytics-opt-out")||a&&!0===Qa["ga-disable-"+a])return!0;try{var c=Qa.external;if(c&&c._gaUserPrefs&&"oo"==c._gaUserPrefs)return!0}catch(g){}a=[];b=String(Za.cookie).split(";");for(c=0;c<b.length;c++){var d=b[c].split("="),e=d[0].replace(/^\s*|\s*$/g,"");e&&"AMP_TOKEN"==e&&((d=d.slice(1).join("=").replace(/^\s*|\s*$/g,""))&&(d=decodeURIComponent(d)),a.push(d))}for(b=0;b<
27
+ a.length;b++)if("$OPT_OUT"==a[b])return!0;return Za.getElementById("__gaOptOutExtension")?!0:!1};var Ca=function(a){var b=[],c=M.cookie.split(";");a=new RegExp("^\\s*"+a+"=\\s*(.*?)\\s*$");for(var d=0;d<c.length;d++){var e=c[d].match(a);e&&b.push(e[1])}return b},zc=function(a,b,c,d,e,g,ca){e=G(e)?!1:eb.test(M.location.hostname)||"/"==c&&vc.test(d)?!1:!0;if(!e)return!1;b&&1200<b.length&&(b=b.substring(0,1200));c=a+"="+b+"; path="+c+"; ";g&&(c+="expires="+(new Date((new Date).getTime()+g)).toGMTString()+"; ");d&&"none"!==d&&(c+="domain="+d+";");ca&&(c+=ca+";");d=M.cookie;M.cookie=c;if(!(d=d!=M.cookie))a:{a=
28
+ Ca(a);for(d=0;d<a.length;d++)if(b==a[d]){d=!0;break a}d=!1}return d},Cc=function(a){return encodeURIComponent?encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"):a},vc=/^(www\.)?google(\.com?)?(\.[a-z]{2})?$/,eb=/(^|\.)doubleclick\.net$/i;var Oe=function(a){var b=[],c=M.cookie.split(";");a=new RegExp("^\\s*"+(a||"_gac")+"_(UA-\\d+-\\d+)=\\s*(.+?)\\s*$");for(var d=0;d<c.length;d++){var e=c[d].match(a);e&&b.push({ja:e[1],value:e[2],timestamp:Number(e[2].split(".")[1])||0})}b.sort(function(g,ca){return ca.timestamp-g.timestamp});return b};
29
+ function df(a,b,c){b=Oe(b);var d={};if(!b||!b.length)return d;for(var e=0;e<b.length;e++){var g=b[e].value.split(".");if("1"!==g[0]||c&&3>g.length||!c&&3!==g.length)a&&(a.na=!0);else if(Number(g[1])){d[b[e].ja]?a&&(a.pa=!0):d[b[e].ja]=[];var ca={version:g[0],timestamp:1E3*Number(g[1]),qa:g[2]};c&&3<g.length&&(ca.labels=g.slice(3));d[b[e].ja].push(ca)}}return d};var Fa,Ga,fb,Ab,ja=/^https?:\/\/[^/]*cdn\.ampproject\.org\//,Ue=/^(?:www\.|m\.|amp\.)+/,Ub=[],da=function(a){if(ye(a[Kd])){if(void 0===Ab){var b;if(b=(b=De.get())&&b._ga||void 0)Ab=b,J(81)}if(void 0!==Ab)return a[Q]||(a[Q]=Ab),!1}if(a[Kd]){J(67);if(a[ac]&&"cookie"!=a[ac])return!1;if(void 0!==Ab)a[Q]||(a[Q]=Ab);else{a:{b=String(a[W]||xa());var c=String(a[Yb]||"/"),d=Ca(String(a[U]||"_ga"));b=na(d,b,c);if(!b||jd.test(b))b=!0;else if(b=Ca("AMP_TOKEN"),0==b.length)b=!0;else{if(1==b.length&&(b=decodeURIComponent(b[0]),
30
+ "$RETRIEVING"==b||"$OPT_OUT"==b||"$ERROR"==b||"$NOT_FOUND"==b)){b=!0;break a}b=!1}}if(b&&tc(ic,String(a[Na])))return!0}}return!1},ic=function(){Z.D([ua])},tc=function(a,b){var c=Ca("AMP_TOKEN");if(1<c.length)return J(55),!1;c=decodeURIComponent(c[0]||"");if("$OPT_OUT"==c||"$ERROR"==c||G(b))return J(62),!1;if(!ja.test(M.referrer)&&"$NOT_FOUND"==c)return J(68),!1;if(void 0!==Ab)return J(56),va(function(){a(Ab)},0),!0;if(Fa)return Ub.push(a),!0;if("$RETRIEVING"==c)return J(57),va(function(){tc(a,b)},
31
+ 1E4),!0;Fa=!0;c&&"$"!=c[0]||(xc("$RETRIEVING",3E4),setTimeout(Mc,3E4),c="");return Pc(c,b)?(Ub.push(a),!0):!1},Pc=function(a,b,c){if(!window.JSON)return J(58),!1;var d=O.XMLHttpRequest;if(!d)return J(59),!1;var e=new d;if(!("withCredentials"in e))return J(60),!1;e.open("POST",(c||"https://ampcid.google.com/v1/publisher:getClientId")+"?key=AIzaSyA65lEHUEizIsNtlbNo-l2K18dT680nsaM",!0);e.withCredentials=!0;e.setRequestHeader("Content-Type","text/plain");e.onload=function(){Fa=!1;if(4==e.readyState){try{200!=
32
+ e.status&&(J(61),Qc("","$ERROR",3E4));var g=JSON.parse(e.responseText);g.optOut?(J(63),Qc("","$OPT_OUT",31536E6)):g.clientId?Qc(g.clientId,g.securityToken,31536E6):!c&&g.alternateUrl?(Ga&&clearTimeout(Ga),Fa=!0,Pc(a,b,g.alternateUrl)):(J(64),Qc("","$NOT_FOUND",36E5))}catch(ca){J(65),Qc("","$ERROR",3E4)}e=null}};d={originScope:"AMP_ECID_GOOGLE"};a&&(d.securityToken=a);e.send(JSON.stringify(d));Ga=va(function(){J(66);Qc("","$ERROR",3E4)},1E4);return!0},Mc=function(){Fa=!1},xc=function(a,b){if(void 0===
33
+ fb){fb="";for(var c=id(),d=0;d<c.length;d++){var e=c[d];if(zc("AMP_TOKEN",encodeURIComponent(a),"/",e,"",b)){fb=e;return}}}zc("AMP_TOKEN",encodeURIComponent(a),"/",fb,"",b)},Qc=function(a,b,c){Ga&&clearTimeout(Ga);b&&xc(b,c);Ab=a;b=Ub;Ub=[];for(c=0;c<b.length;c++)b[c](a)},ye=function(a){a:{if(ja.test(M.referrer)){var b=M.location.hostname.replace(Ue,"");b:{var c=M.referrer;c=c.replace(/^https?:\/\//,"");var d=c.replace(/^[^/]+/,"").split("/"),e=d[2];d=(d="s"==e?d[3]:e)?decodeURIComponent(d):d;if(!d){if(0==
34
+ c.indexOf("xn--")){c="";break b}(c=c.match(/(.*)\.cdn\.ampproject\.org\/?$/))&&2==c.length&&(d=c[1].replace(/-/g,".").replace(/\.\./g,"-"))}c=d?d.replace(Ue,""):""}(d=b===c)||(c="."+c,d=b.substring(b.length-c.length,b.length)===c);if(d){b=!0;break a}else J(78)}b=!1}return b&&!1!==a};var bd=function(a){return(a?"https:":Ba||"https:"==M.location.protocol?"https:":"http:")+"//www.google-analytics.com"},Ge=function(a){switch(a){default:case 1:return"https://www.google-analytics.com/gtm/js?id=";case 2:return"https://www.googletagmanager.com/gtag/js?id="}},Da=function(a){this.name="len";this.message=a+"-8192"},ba=function(a,b,c){c=c||ua;if(2036>=b.length)wc(a,b,c);else if(8192>=b.length)x(a,b,c)||wd(a,b,c)||wc(a,b,c);else throw ge("len",b.length),new Da(b.length);},pe=function(a,b,
35
+ c,d){d=d||ua;wd(a+"?"+b,"",d,c)},wc=function(a,b,c){var d=ta(a+"?"+b);d.onload=d.onerror=function(){d.onload=null;d.onerror=null;c()}},wd=function(a,b,c,d){var e=O.XMLHttpRequest;if(!e)return!1;var g=new e;if(!("withCredentials"in g))return!1;a=a.replace(/^http:/,"https:");g.open("POST",a,!0);g.withCredentials=!0;g.setRequestHeader("Content-Type","text/plain");g.onreadystatechange=function(){if(4==g.readyState){if(d&&"text/plain"===g.getResponseHeader("Content-Type"))try{Ea(d,g.responseText,c)}catch(ca){ge("xhr",
36
+ "rsp"),c()}else c();g=null}};g.send(b);return!0},Ea=function(a,b,c){if(1>b.length)ge("xhr","ver","0"),c();else if(3<a.count++)ge("xhr","tmr",""+a.count),c();else{var d=b.charAt(0);if("1"===d)oc(a,b.substring(1),c);else if(a.V&&"2"===d){var e=b.substring(1).split(","),g=0;b=function(){++g===e.length&&c()};for(d=0;d<e.length;d++)oc(a,e[d],b)}else ge("xhr","ver",String(b.length)),c()}},oc=function(a,b,c){if(0===b.length)c();else{var d=b.charAt(0);switch(d){case "d":pe("https://stats.g.doubleclick.net/j/collect",
37
+ a.U,a,c);break;case "g":wc("https://www.google.com/ads/ga-audiences",a.google,c);(b=b.substring(1))&&(/^[a-z.]{1,6}$/.test(b)?wc("https://www.google.%/ads/ga-audiences".replace("%",b),a.google,ua):ge("tld","bcc",b));break;case "G":if(a.V){a.V("G-"+b.substring(1));c();break}case "x":if(a.V){a.V();c();break}case "c":if(a.V){a.V(b.substring(1));c();break}default:ge("xhr","brc",d),c()}}},x=function(a,b,c){return O.navigator.sendBeacon?O.navigator.sendBeacon(a,b)?(c(),!0):!1:!1},ge=function(a,b,c){1<=
38
+ 100*Math.random()||G("?")||(a=["t=error","_e="+a,"_v=j101","sr=1"],b&&a.push("_f="+b),c&&a.push("_m="+K(c.substring(0,100))),a.push("aip=1"),a.push("z="+hd()),wc(bd(!0)+"/u/d",a.join("&"),ua))};var qc=function(){return O.gaData=O.gaData||{}},h=function(a){var b=qc();return b[a]=b[a]||{}};var Ha=function(){this.M=[]};Ha.prototype.add=function(a){this.M.push(a)};Ha.prototype.D=function(a){try{for(var b=0;b<this.M.length;b++){var c=a.get(this.M[b]);c&&ea(c)&&c.call(O,a)}}catch(d){}b=a.get(Ia);b!=ua&&ea(b)&&(a.set(Ia,ua,!0),setTimeout(b,10))};function Ja(a){if(100!=a.get(Ka)&&La(P(a,Q))%1E4>=100*R(a,Ka))throw"abort";}function Ma(a){if(G(P(a,Na)))throw"abort";}function Oa(){var a=M.location.protocol;if("http:"!=a&&"https:"!=a)throw"abort";}
39
+ function pf(a){var b=!1,c=!1;if(vd.get(89)){c=!0;var d=a.get(kb),e=M.location;if(e){var g=e.pathname||"";"/"!=g.charAt(0)&&(g="/"+g);e=e.protocol+"//"+e.hostname+g+e.search;d&&0===d.indexOf(e)||(b=!0)}}!c&&vd.get(90)&&(c=!0,d=a.get(lb),e=of(!!a.get(ec),!!a.get(Kd)),d!==e&&(b=!0));!c&&vd.get(91)&&(c=!0,a.get(qf)!==M.title&&(b=!0));return c&&!b}
40
+ function Pa(a){try{O.navigator.sendBeacon?J(42):O.XMLHttpRequest&&"withCredentials"in new O.XMLHttpRequest&&J(40)}catch(c){}a.set(ld,Td(a),!0);a.set(Ac,R(a,Ac)+1);var b=[];ue.map(function(c,d){d.F&&(c=a.get(c),void 0!=c&&c!=d.defaultValue&&("boolean"==typeof c&&(c*=1),b.push(d.F+"="+K(""+c))))});!1===a.get(xe)&&b.push("npa=1");b.push("z="+Bd());pf(a)&&J(109);a.set(Ra,b.join("&"),!0)}
41
+ function Sa(a){var b=P(a,fa);!b&&a.get(Vd)&&(b="beacon");var c=P(a,gd),d=P(a,oe),e=c||(d||bd(!1)+"")+"/collect",g=a.Z(Ia),ca=P(a,Ra),l=P(a,Na);switch(P(a,ad)){case "d":e=c||(d||bd(!1)+"")+"/j/collect";b=a.get(qe)||void 0;pe(e,ca,b,g);break;default:b?(g=g||ua,"image"==b?wc(e,ca,g):"xhr"==b&&wd(e,ca,g)||"beacon"==b&&x(e,ca,g)||ba(e,ca,g)):ba(e,ca,g)}ca=h(l);g=ca.hitcount;ca.hitcount=g?g+1:1;ca.first_hit||(ca.first_hit=(new Date).getTime());delete h(l).pending_experiments;a.set(Ia,ua,!0);if(rf(a))if(ca=
42
+ P(a,Na),l=sf[ca])for(ca=0;ca<l.length;++ca)(g=tf(l[ca]).q)&&30>g.length&&g.push&&g.push(uf(a));else vf[ca]=vf[ca]||[],30>vf[ca].length&&vf[ca].push(uf(a))}function Hc(a){qc().expId&&a.set(Nc,qc().expId);qc().expVar&&a.set(Oc,qc().expVar);var b=P(a,Na);if(b=h(b).pending_experiments){var c=[];for(d in b)b.hasOwnProperty(d)&&b[d]&&c.push(encodeURIComponent(d)+"."+encodeURIComponent(b[d]));var d=c.join("!")}else d=void 0;d&&((b=a.get(m))&&(d=b+"!"+d),a.set(m,d,!0))}
43
+ function cd(){if(O.navigator&&"preview"==O.navigator.loadPurpose)throw"abort";}function yd(a){var b=O.gaDevIds||[];if(ka(b)){var c=a.get("&did");qa(c)&&0<c.length&&(b=b.concat(c.split(",")));c=[];for(var d=0;d<b.length;d++)Ee(c,b[d])||c.push(b[d]);0!=c.length&&a.set("&did",c.join(","),!0)}}function vb(a){if(!a.get(Na))throw"abort";}
44
+ function Pe(a){try{if(!a.get(Qe)&&(a.set(Qe,!0),!a.get("&gtm"))){var b=void 0,c=void 0;lf(be("gtm_debug"))&&(b=2);!b&&D(M.referrer,"https://tagassistant.google.com/")&&(b=3);!b&&Ee(M.cookie.split("; "),"__TAG_ASSISTANT=x")&&(b=4);b||(c=M.documentElement.getAttribute("data-tag-assistant-present"),lf(c)&&(b=5));if(b){O["google.tagmanager.debugui2.queue"]||(O["google.tagmanager.debugui2.queue"]=[],Id("https://www.google-analytics.com/debug/bootstrap?id="+a.get(Na)+"&src=LEGACY&cond="+b));var d=M.currentScript;
45
+ O["google.tagmanager.debugui2.queue"].push({messageType:"LEGACY_CONTAINER_STARTING",data:{id:a.get(Na),scriptSource:d&&d.src||""}})}}}catch(e){}}function lf(a){if(null==a||0===a.length)return!1;a=Number(a);var b=Date.now();return a<b+3E5&&a>b-9E5};var hd=function(){return Math.round(2147483647*Math.random())},Bd=function(){try{var a=new Uint32Array(1);O.crypto.getRandomValues(a);return a[0]&2147483647}catch(b){return hd()}};function Ta(a){var b=R(a,Ua);500<=b&&J(15);var c=P(a,Va);if("transaction"!=c&&"item"!=c){c=R(a,Wa);var d=(new Date).getTime(),e=R(a,Xa);0==e&&a.set(Xa,d);e=Math.round(2*(d-e)/1E3);0<e&&(c=Math.min(c+e,20),a.set(Xa,d));if(0>=c)throw"abort";a.set(Wa,--c)}a.set(Ua,++b)};var Ya=function(){this.data=new ee};Ya.prototype.get=function(a){var b=$a(a),c=this.data.get(a);b&&void 0==c&&(c=ea(b.defaultValue)?b.defaultValue():b.defaultValue);return b&&b.Z?b.Z(this,a,c):c};var P=function(a,b){a=a.get(b);return void 0==a?"":""+a},R=function(a,b){a=a.get(b);return void 0==a||""===a?0:Number(a)};Ya.prototype.Z=function(a){return(a=this.get(a))&&ea(a)?a:ua};
46
+ Ya.prototype.set=function(a,b,c){if(a)if("object"===typeof a)for(var d in a)a.hasOwnProperty(d)&&ab(this,d,a[d],c);else ab(this,a,b,c)};
47
+ var ab=function(a,b,c,d){if(void 0!=c)switch(b){case Na:wb.test(c)}var e=$a(b);e&&e.o?e.o(a,b,c,d):a.data.set(b,c,d)},gf={hitPayload:88,location:89,referrer:90,title:91,buildHitTask:93,sendHitTask:94,displayFeaturesTask:95,customTask:97,cookieName:98,cookieDomain:99,cookiePath:100,cookieExpires:101,cookieUpdate:102,cookieFlags:103,storage:104,_x_19:105,transportUrl:106,allowAdFeatures:107,sampleRate:108};
48
+ function hf(a,b){var c=gf[a];c&&J(c);"displayFeaturesTask"===a&&void 0==b&&J(96);/.*Task$/.test(a)&&J(92)}function mf(a,b){if(a)if("object"===typeof a)for(var c in a)a.hasOwnProperty(c)&&hf(c,b);else hf(a,b)};var ue=new ee,ve=[],bb=function(a,b,c,d,e){this.name=a;this.F=b;this.Z=d;this.o=e;this.defaultValue=c};function $a(a){var b=ue.get(a);if(!b)for(var c=0;c<ve.length;c++){var d=ve[c],e=d[0].exec(a);if(e){b=d[1](e);ue.set(b.name,b);break}}return b}function yc(a){var b;ue.map(function(c,d){d.F==a&&(b=d)});return b&&b.name}function S(a,b,c,d,e){a=new bb(a,b,c,d,e);ue.set(a.name,a);return a.name}function cb(a,b){ve.push([new RegExp("^"+a+"$"),b])}function T(a,b,c){return S(a,b,c,void 0,db)}
49
+ function db(){};var hb=T("apiVersion","v"),ib=T("clientVersion","_v");S("anonymizeIp","aip");var jb=S("adSenseId","a"),Va=S("hitType","t"),Ia=S("hitCallback"),Ra=S("hitPayload");S("nonInteraction","ni");S("currencyCode","cu");S("dataSource","ds");var Vd=S("useBeacon",void 0,!1),fa=S("transport");S("sessionControl","sc","");S("sessionGroup","sg");S("queueTime","qt");var Ac=S("_s","_s"),Ie=S("_no_slc");S("screenName","cd");var kb=S("location","dl",""),lb=S("referrer","dr"),mb=S("page","dp","");S("hostname","dh");
50
+ var nb=S("language","ul"),ob=S("encoding","de"),qf=S("title","dt",function(){return M.title||void 0});cb("contentGroup([0-9]+)",function(a){return new bb(a[0],"cg"+a[1])});var pb=S("screenColors","sd"),qb=S("screenResolution","sr"),rb=S("viewportSize","vp"),sb=S("javaEnabled","je"),tb=S("flashVersion","fl");S("campaignId","ci");S("campaignName","cn");S("campaignSource","cs");S("campaignMedium","cm");S("campaignKeyword","ck");S("campaignContent","cc");
51
+ var ub=S("eventCategory","ec"),xb=S("eventAction","ea"),yb=S("eventLabel","el"),zb=S("eventValue","ev"),Bb=S("socialNetwork","sn"),Cb=S("socialAction","sa"),Db=S("socialTarget","st"),Eb=S("l1","plt"),Fb=S("l2","pdt"),Gb=S("l3","dns"),Hb=S("l4","rrt"),Ib=S("l5","srt"),Jb=S("l6","tcp"),Kb=S("l7","dit"),Lb=S("l8","clt"),Ve=S("l9","_gst"),We=S("l10","_gbt"),Xe=S("l11","_cst"),Ye=S("l12","_cbt"),Mb=S("timingCategory","utc"),Nb=S("timingVar","utv"),Ob=S("timingLabel","utl"),Pb=S("timingValue","utt");
52
+ S("appName","an");S("appVersion","av","");S("appId","aid","");S("appInstallerId","aiid","");S("exDescription","exd");S("exFatal","exf");var Nc=S("expId","xid"),Oc=S("expVar","xvar"),m=S("exp","exp"),Rc=S("_utma","_utma"),Sc=S("_utmz","_utmz"),Tc=S("_utmht","_utmht"),Ua=S("_hc",void 0,0),Xa=S("_ti",void 0,0),Wa=S("_to",void 0,20);cb("dimension([0-9]+)",function(a){return new bb(a[0],"cd"+a[1])});cb("metric([0-9]+)",function(a){return new bb(a[0],"cm"+a[1])});S("linkerParam",void 0,void 0,Bc,db);
53
+ var Ze=T("_cd2l",void 0,!1),ld=S("usage","_u"),Gd=S("_um");S("forceSSL",void 0,void 0,function(){return Ba},function(a,b,c){J(34);Ba=!!c});var ed=S("_j1","jid"),ia=S("_j2","gjid");cb("\\&(.*)",function(a){var b=new bb(a[0],a[1]),c=yc(a[0].substring(1));c&&(b.Z=function(d){return d.get(c)},b.o=function(d,e,g,ca){d.set(c,g,ca)},b.F=void 0);return b});
54
+ var Qb=T("_oot"),dd=S("previewTask"),Rb=S("checkProtocolTask"),md=S("validationTask"),Sb=S("checkStorageTask"),Uc=S("historyImportTask"),Tb=S("samplerTask"),Vb=S("_rlt"),Wb=S("buildHitTask"),Xb=S("sendHitTask"),Vc=S("ceTask"),zd=S("devIdTask"),Cd=S("timingTask"),Ld=S("displayFeaturesTask"),oa=S("customTask"),ze=S("fpsCrossDomainTask"),Re=T("_cta"),V=T("name"),Q=T("clientId","cid"),n=T("clientIdTime"),xd=T("storedClientId"),Ad=S("userId","uid"),Na=T("trackingId","tid"),U=T("cookieName",void 0,"_ga"),
55
+ W=T("cookieDomain"),Yb=T("cookiePath",void 0,"/"),Zb=T("cookieExpires",void 0,63072E3),Hd=T("cookieUpdate",void 0,!0),Be=T("cookieFlags",void 0,""),$b=T("legacyCookieDomain"),Wc=T("legacyHistoryImport",void 0,!0),ac=T("storage",void 0,"cookie"),bc=T("allowLinker",void 0,!1),cc=T("allowAnchor",void 0,!0),Ka=T("sampleRate","sf",100),dc=T("siteSpeedSampleRate",void 0,1),ec=T("alwaysSendReferrer",void 0,!1),I=T("_gid","_gid"),la=T("_gcn"),Kd=T("useAmpClientId"),ce=T("_gclid"),fe=T("_gt"),he=T("_ge",void 0,
56
+ 7776E6),ie=T("_gclsrc"),je=T("storeGac",void 0,!0),oe=S("_x_19"),Ae=S("_fplc","_fplc"),F=T("_cs"),Je=T("_useUp",void 0,!1),Le=S("up","up"),Qe=S("_tac",void 0,!1),Se=T("_gbraid"),Te=T("_gbt"),bf=T("_gbe",void 0,7776E6),gd=S("transportUrl"),Md=S("_r","_r"),Od=S("_slc","_slc"),qe=S("_dp"),ad=S("_jt",void 0,"n"),Ud=S("allowAdFeatures",void 0,!0),xe=S("allowAdPersonalizationSignals",void 0,!0);
57
+ function X(a,b,c,d){b[a]=function(){try{return d&&J(d),c.apply(this,arguments)}catch(e){throw ge("exc",a,e&&e.name),e;}}};var Ed=function(a){if("cookie"==a.get(ac))return a=Ca("FPLC"),0<a.length?a[0]:void 0},Fe=function(a){var b;if(b=P(a,oe)&&a.get(Ze))b=De.get(a.get(cc)),b=!(b&&b._fplc);b&&!Ed(a)&&a.set(Ae,"0")};var aa=function(a){var b=Math.min(R(a,dc),100);return La(P(a,Q))%100>=b?!1:!0},gc=function(a){var b={};if(Ec(b)||Fc(b)){var c=b[Eb];void 0==c||Infinity==c||isNaN(c)||(0<c?(Y(b,Gb),Y(b,Jb),Y(b,Ib),Y(b,Fb),Y(b,Hb),Y(b,Kb),Y(b,Lb),Y(b,Ve),Y(b,We),Y(b,Xe),Y(b,Ye),va(function(){a(b)},10)):L(O,"load",function(){gc(a)},!1))}},Ec=function(a){var b=O.performance||O.webkitPerformance;b=b&&b.timing;if(!b)return!1;var c=b.navigationStart;if(0==c)return!1;a[Eb]=b.loadEventStart-c;a[Gb]=b.domainLookupEnd-b.domainLookupStart;
58
+ a[Jb]=b.connectEnd-b.connectStart;a[Ib]=b.responseStart-b.requestStart;a[Fb]=b.responseEnd-b.responseStart;a[Hb]=b.fetchStart-c;a[Kb]=b.domInteractive-c;a[Lb]=b.domContentLoadedEventStart-c;a[Ve]=N.L-c;a[We]=N.ya-c;O.google_tag_manager&&O.google_tag_manager._li&&(b=O.google_tag_manager._li,a[Xe]=b.cst,a[Ye]=b.cbt);return!0},Fc=function(a){if(O.top!=O)return!1;var b=O.external,c=b&&b.onloadT;b&&!b.isValidLoadTime&&(c=void 0);2147483648<c&&(c=void 0);0<c&&b.setPageReadyTime();if(void 0==c)return!1;
59
+ a[Eb]=c;return!0},Y=function(a,b){var c=a[b];if(isNaN(c)||Infinity==c||0>c)a[b]=void 0},Fd=function(a){return function(b){if("pageview"==b.get(Va)&&!a.I){a.I=!0;var c=aa(b),d=0<E(P(b,kb),"gclid").length,e=0<E(P(b,kb),"wbraid").length;(c||d||e)&&gc(function(g){c&&a.send("timing",g);(d||e)&&a.send("adtiming",g)})}}};var hc=!1,mc=function(a){if("cookie"==P(a,ac)){if(a.get(Hd)||P(a,xd)!=P(a,Q)){var b=1E3*R(a,Zb);ma(a,Q,U,b);a.data.set(xd,P(a,Q))}(a.get(Hd)||uc(a)!=P(a,I))&&ma(a,I,la,864E5);if(a.get(je)){if(b=P(a,ce)){var c=Math.min(R(a,he),1E3*R(a,Zb));c=0===c?0:Math.min(c,1E3*R(a,fe)+c-(new Date).getTime());a.data.set(he,c);var d={},e=P(a,fe),g=P(a,ie),ca=kc(P(a,Yb)),l=lc(P(a,W)),k=P(a,Na),w=P(a,Be);g&&"aw.ds"!=g?d&&(d.ua=!0):(b=["1",e,Cc(b)].join("."),0<=c&&(d&&(d.ta=!0),zc("_gac_"+Cc(k),b,ca,l,k,c,w)));le(d)}}else J(75);
60
+ a.get(je)&&(b=P(a,Se))&&(c=Math.min(R(a,bf),1E3*R(a,Zb)),c=0===c?0:Math.min(c,1E3*R(a,Te)+c-(new Date).getTime()),a.data.set(bf,c),d={},w=P(a,Te),ca=kc(P(a,Yb)),l=lc(P(a,W)),k=P(a,Na),a=P(a,Be),b=["1",w,Cc(b)].join("."),0<=c&&(d&&(d.ta=!0),zc("_gac_gb_"+Cc(k),b,ca,l,k,c,a)),ef(d))}},ma=function(a,b,c,d){var e=nd(a,b);if(e){c=P(a,c);var g=kc(P(a,Yb)),ca=lc(P(a,W)),l=P(a,Be),k=P(a,Na);if("auto"!=ca)zc(c,e,g,ca,k,d,l)&&(hc=!0);else{J(32);for(var w=id(),Ce=0;Ce<w.length;Ce++)if(ca=w[Ce],a.data.set(W,
61
+ ca),e=nd(a,b),zc(c,e,g,ca,k,d,l)){hc=!0;return}a.data.set(W,"auto")}}},uc=function(a){var b=Ca(P(a,la));return Xd(a,b)},nc=function(a){if("cookie"==P(a,ac)&&!hc&&(mc(a),!hc))throw"abort";},Yc=function(a){if(a.get(Wc)){var b=P(a,W),c=P(a,$b)||xa(),d=Xc("__utma",c,b);d&&(J(19),a.set(Tc,(new Date).getTime(),!0),a.set(Rc,d.R),(b=Xc("__utmz",c,b))&&d.hash==b.hash&&a.set(Sc,b.R))}},nd=function(a,b){b=Cc(P(a,b));var c=lc(P(a,W)).split(".").length;a=jc(P(a,Yb));1<a&&(c+="-"+a);return b?["GA1",c,b].join("."):
62
+ ""},Xd=function(a,b){return na(b,P(a,W),P(a,Yb))},na=function(a,b,c){if(!a||1>a.length)J(12);else{for(var d=[],e=0;e<a.length;e++){var g=a[e];var ca=g.split(".");var l=ca.shift();("GA1"==l||"1"==l)&&1<ca.length?(g=ca.shift().split("-"),1==g.length&&(g[1]="1"),g[0]*=1,g[1]*=1,ca={H:g,s:ca.join(".")}):ca=kd.test(g)?{H:[0,0],s:g}:void 0;ca&&d.push(ca)}if(1==d.length)return J(13),d[0].s;if(0==d.length)J(12);else{J(14);d=Gc(d,lc(b).split(".").length,0);if(1==d.length)return d[0].s;d=Gc(d,jc(c),1);1<d.length&&
63
+ J(41);return d[0]&&d[0].s}}},Gc=function(a,b,c){for(var d=[],e=[],g,ca=0;ca<a.length;ca++){var l=a[ca];l.H[c]==b?d.push(l):void 0==g||l.H[c]<g?(e=[l],g=l.H[c]):l.H[c]==g&&e.push(l)}return 0<d.length?d:e},lc=function(a){return 0==a.indexOf(".")?a.substr(1):a},id=function(){var a=[],b=xa().split(".");if(4==b.length){var c=b[b.length-1];if(parseInt(c,10)==c)return["none"]}for(c=b.length-2;0<=c;c--)a.push(b.slice(c).join("."));b=M.location.hostname;eb.test(b)||vc.test(b)||a.push("none");return a},kc=
64
+ function(a){if(!a)return"/";1<a.length&&a.lastIndexOf("/")==a.length-1&&(a=a.substr(0,a.length-1));0!=a.indexOf("/")&&(a="/"+a);return a},jc=function(a){a=kc(a);return"/"==a?1:a.split("/").length},le=function(a){a.ta&&J(77);a.na&&J(74);a.pa&&J(73);a.ua&&J(69)},ef=function(a){a.ta&&J(85);a.na&&J(86);a.pa&&J(87)};function Xc(a,b,c){"none"==b&&(b="");var d=[],e=Ca(a);a="__utma"==a?6:2;for(var g=0;g<e.length;g++){var ca=(""+e[g]).split(".");ca.length>=a&&d.push({hash:ca[0],R:e[g],O:ca})}if(0!=d.length)return 1==d.length?d[0]:Zc(b,d)||Zc(c,d)||Zc(null,d)||d[0]}function Zc(a,b){if(null==a)var c=a=1;else c=La(a),a=La(D(a,".")?a.substring(1):"."+a);for(var d=0;d<b.length;d++)if(b[d].hash==c||b[d].hash==a)return b[d]};var Jc=new RegExp(/^https?:\/\/([^\/:]+)/),De=O.google_tag_data.glBridge,Kc=RegExp("(.*)([?&#])(?:_ga=[^&#]*)(?:&?)(.*)"),od=RegExp("(.*)([?&#])(?:_gac=[^&#]*)(?:&?)(.*)");function Bc(a){if(a.get(Ze))return J(35),De.generate($e(a));var b=P(a,Q),c=P(a,I)||"";b="_ga=2."+K(pa(c+b,0)+"."+c+"-"+b);(a=af(a))?(J(44),a="&_gac=1."+K([pa(a.qa,0),a.timestamp,a.qa].join("."))):a="";return b+a}
65
+ function Ic(a,b){var c=new Date,d=O.navigator,e=d.plugins||[];a=[a,d.userAgent,c.getTimezoneOffset(),c.getYear(),c.getDate(),c.getHours(),c.getMinutes()+b];for(b=0;b<e.length;++b)a.push(e[b].description);return La(a.join("."))}function pa(a,b){var c=new Date,d=O.navigator,e=c.getHours()+Math.floor((c.getMinutes()+b)/60);return La([a,d.userAgent,d.language||"",c.getTimezoneOffset(),c.getYear(),c.getDate()+Math.floor(e/24),(24+e)%24,(60+c.getMinutes()+b)%60].join("."))}
66
+ var Dc=function(a){J(48);this.target=a;this.T=!1};Dc.prototype.ca=function(a,b){if(a){if(this.target.get(Ze))return De.decorate($e(this.target),a,b);if(a.tagName){if("a"==a.tagName.toLowerCase()){a.href&&(a.href=qd(this,a.href,b));return}if("form"==a.tagName.toLowerCase())return rd(this,a)}if("string"==typeof a)return qd(this,a,b)}};
67
+ var qd=function(a,b,c){var d=Kc.exec(b);d&&3<=d.length&&(b=d[1]+(d[3]?d[2]+d[3]:""));(d=od.exec(b))&&3<=d.length&&(b=d[1]+(d[3]?d[2]+d[3]:""));a=a.target.get("linkerParam");d=b.indexOf("?");var e=b.indexOf("#");b=c?b+((-1==e?"#":"&")+a):-1==e?b+((-1===d?"?":"&")+a):b.substring(0,e)+(-1===d||d>e?"?":"&")+a+b.substring(e);b=b.replace(/&+_ga=/,"&_ga=");return b=b.replace(RegExp("&+_gac="),"&_gac=")},rd=function(a,b){if(b&&b.action)if("get"==b.method.toLowerCase()){a=a.target.get("linkerParam").split("&");
68
+ for(var c=0;c<a.length;c++){var d=a[c].split("="),e=d[1];d=d[0];for(var g=b.childNodes||[],ca=!1,l=0;l<g.length;l++)if(g[l].name==d){g[l].setAttribute("value",e);ca=!0;break}ca||(g=M.createElement("input"),g.setAttribute("type","hidden"),g.setAttribute("name",d),g.setAttribute("value",e),b.appendChild(g))}}else"post"==b.method.toLowerCase()&&(b.action=qd(a,b.action))};
69
+ Dc.prototype.S=function(a,b,c){function d(g){try{g=g||O.event;a:{var ca=g.target||g.srcElement;for(g=100;ca&&0<g;){if(ca.href&&ca.nodeName.match(/^a(?:rea)?$/i)){var l=ca;break a}ca=ca.parentNode;g--}l={}}("http:"==l.protocol||"https:"==l.protocol)&&sd(a,l.hostname||"")&&l.href&&(l.href=qd(e,l.href,b))}catch(k){J(26)}}var e=this;this.target.get(Ze)?De.auto(function(){return $e(e.target)},a,b?"fragment":"",c):(this.T||(this.T=!0,L(M,"mousedown",d,!1),L(M,"keyup",d,!1)),c&&L(M,"submit",function(g){g=
70
+ g||O.event;if((g=g.target||g.srcElement)&&g.action){var ca=g.action.match(Jc);ca&&sd(a,ca[1])&&rd(e,g)}}))};Dc.prototype.$=function(a){if(a){var b=this,c=b.target.get(F);void 0!==c&&De.passthrough(function(){if(c("analytics_storage"))return{};var d={};return d._ga=b.target.get(Q),d._up="1",d},1,!0)}};function sd(a,b){if(b==M.location.hostname)return!1;for(var c=0;c<a.length;c++)if(a[c]instanceof RegExp){if(a[c].test(b))return!0}else if(0<=b.indexOf(a[c]))return!0;return!1}
71
+ function ke(a,b){return b!=Ic(a,0)&&b!=Ic(a,-1)&&b!=Ic(a,-2)&&b!=pa(a,0)&&b!=pa(a,-1)&&b!=pa(a,-2)}function $e(a){var b=af(a),c={};c._ga=a.get(Q);c._gid=a.get(I)||void 0;c._gac=b?[b.qa,b.timestamp].join("."):void 0;b=a.get(Ae);a=Ed(a);return c._fplc=b&&"0"!==b?b:a,c}function af(a){function b(e){return void 0==e||""===e?0:Number(e)}var c=a.get(ce);if(c&&a.get(je)){var d=b(a.get(fe));if(1E3*d+b(a.get(he))<=(new Date).getTime())J(76);else return{timestamp:d,qa:c}}};var p=/^(GTM|OPT)-[A-Z0-9]+$/,q=/;_gaexp=[^;]*/g,r=/;((__utma=)|([^;=]+=GAX?\d+\.))[^;]*/g,Aa=/^https?:\/\/[\w\-.]+\.google.com(:\d+)?\/optimize\/opt-launch\.html\?.*$/,nf=0,wf={},t=function(a){function b(d,e){e&&(c+="&"+d+"="+K(e))}var c=Ge(a.type)+K(a.id);"dataLayer"!=a.B&&b("l",a.B);b("cx",a.context);b("t",a.target);b("cid",a.clientId);b("cidt",a.ka);b("gac",a.la);b("aip",a.ia);a.sa&&b("_slc","1");a.sync&&b("m","sync");b("cycle",a.G);a.qa&&b("gclid",a.qa);Aa.test(M.referrer)&&b("cb",String(hd()));
72
+ return c},He=function(a,b){var c=(new Date).getTime();O[a.B]=O[a.B]||[];wf[a.B]||(wf[a.B]=!0,c={"gtm.start":c},a.sync||(c.event="gtm.js"),O[a.B].push(c));2===a.type&&function(d,e,g){O[a.B].push(arguments)}("config",a.id,b)},Ke=function(a,b,c,d){c=c||{};var e=O.google_tag_data.tcBridge;if(p.test(b))var g=1;else{var ca=b.split("-");1<ca.length&&"GTM"!==ca[0]&&"UA"!==ca[0]&&(g=2)}if(g){ca={id:b,type:g,B:c.dataLayer||"dataLayer",G:!1};var l=void 0;a.get("&gtm")==b&&(ca.G=!0);switch(g){case 1:ca.ia=!!a.get("anonymizeIp");
73
+ ca.sync=d;b=String(a.get("name"));"t0"!=b&&(ca.target=b);G(String(a.get("trackingId")))||(ca.clientId=String(a.get(Q)),ca.ka=Number(a.get(n)),b=c.palindrome?r:q,b=(b=M.cookie.replace(/^|(; +)/g,";").match(b))?b.sort().join("").substring(1):void 0,ca.la=b,ca.qa=E(P(a,kb),"gclid"));break;case 2:if(20<=nf)return;nf++;ca.context="c";l={};l=(l.is_legacy_loaded=!0,l);ca.sa=!0;e.registerUa(a.get("name"),a.get("trackingId"));e.setSideload(a.get("name"),b,a.get("trackingId"))}He(ca,l);return t(ca)}};var Jd=function(a,b){b||(b=(b=P(a,V))&&"t0"!=b?Wd.test(b)?"_gat_"+Cc(P(a,Na)):"_gat_"+Cc(b):"_gat");this.Y=b},Rd=function(a,b){var c=b.get(Wb);b.set(Wb,function(e){Pd(a,e,ed);Pd(a,e,ia);var g=c(e);Qd(a,e);return g});var d=b.get(Xb);b.set(Xb,function(e){var g=d(e);if(se(e)){J(80);var ca={U:re(e,1),google:re(e,2),count:0};pe("https://stats.g.doubleclick.net/j/collect",ca.U,ca);e.set(ed,"",!0)}return g})},Pd=function(a,b,c){!1===b.get(Ud)||b.get(c)||("1"==Ca(a.Y)[0]?b.set(c,"",!0):b.set(c,""+hd(),!0))},
74
+ Qd=function(a,b){se(b)&&zc(a.Y,"1",P(b,Yb),P(b,W),P(b,Na),6E4,P(b,Be))},se=function(a){return!!a.get(ed)&&!1!==a.get(Ud)},Ne=function(a){return!H[P(a,Na)]&&rf(a)},re=function(a,b){var c=new ee,d=function(g){$a(g).F&&c.set($a(g).F,a.get(g))};d(hb);d(ib);d(Na);d(Q);d(ed);1==b&&(d(Ad),d(ia),d(I));!1===a.get(xe)&&c.set("npa","1");c.set($a(ld).F,Td(a));var e="";c.map(function(g,ca){e+=K(g)+"=";e+=K(""+ca)+"&"});e+="z="+hd();1==b?e="t=dc&aip=1&_r=3&"+e:2==b&&(e="t=sr&aip=1&_r=4&slf_rd=1&"+e);return e},
75
+ Me=function(a){if(Ne(a)){var b=P(a,Na);H[b]=!0;return function(c){if(c&&!H[c]){var d=Ke(a,c);if(d){var e=0<d.indexOf("&_slc=1");H[c]=!0;sf[b]||(sf[b]=[]);e&&(sf[b].push(c),tf(c,vf[b]));Id(d)}}}}},Wd=/^gtm\d+$/;var fd=function(a,b){a=a.model;if(!a.get("dcLoaded")){var c=new $c(Dd(a));c.set(29);a.set(Gd,c.C);b=b||{};var d;b[U]&&(d=Cc(b[U]));b=new Jd(a,d);Rd(b,a);a.set("dcLoaded",!0)}};var Sd=function(a){var b="cookie"!=a.get(ac)?!1:!0;if(b){b=new Jd(a);var c=a.get("dcLoaded");c||(Pd(b,a,ed),Pd(b,a,ia),Qd(b,a));b=!c&&se(a);c=Ne(a);b&&a.set(Md,1,!0);c&&a.set(Od,1,!0);if(b||c)a.set(ad,"d",!0),J(79),a.set(qe,{U:re(a,1),google:re(a,2),V:Me(a),count:0},!0)}};var Lc=function(){var a=O.gaGlobal=O.gaGlobal||{};return a.hid=a.hid||hd()};var wb=/^(UA|YT|MO|GP)-(\d+)-(\d+)$/,pc=function(a){function b(e,g){d.model.data.set(e,g);a.hasOwnProperty(e)&&hf(e,g)}function c(e,g){d.model.data.set(e,g);d.filters.add(e)}var d=this;this.model=new Ya;this.filters=new Ha;b(V,a[V]);b(Na,sa(a[Na]));b(U,a[U]);b(W,a[W]||xa());b(Yb,a[Yb]);b(Zb,a[Zb]);b(Hd,a[Hd]);b(Be,a[Be]);b($b,a[$b]);b(Wc,a[Wc]);b(bc,a[bc]);b(cc,a[cc]);b(Ka,a[Ka]);b(dc,a[dc]);b(ec,a[ec]);b(ac,a[ac]);b(Ad,a[Ad]);b(n,a[n]);b(Kd,a[Kd]);b(je,a[je]);b(Ze,a[Ze]);b(oe,a[oe]);b(Je,a[Je]);
76
+ b(F,a[F]);b(hb,1);b(ib,"j101");c(Re,Pe);c(Qb,Ma);c(oa,ua);c(dd,cd);c(Rb,Oa);c(md,vb);c(Sb,nc);c(Uc,Yc);c(Tb,Ja);c(Vb,Ta);c(Vc,Hc);c(zd,yd);c(Ld,Sd);c(ze,Fe);c(Wb,Pa);c(Xb,Sa);c(Cd,Fd(this));pd(this.model);td(this.model,a[Q]);this.model.set(jb,Lc())};pc.prototype.get=function(a){return this.model.get(a)};pc.prototype.set=function(a,b){this.model.set(a,b);mf(a,b)};
77
+ pc.prototype.send=function(a){if(!(1>arguments.length)){if("string"===typeof arguments[0]){var b=arguments[0];var c=[].slice.call(arguments,1)}else b=arguments[0]&&arguments[0][Va],c=arguments;b&&(c=za(me[b]||[],c),c[Va]=b,mf(c),this.model.set(c,void 0,!0),this.filters.D(this.model),this.model.data.m={})}};pc.prototype.ma=function(a,b){var c=this;u(a,c,b)||(v(a,function(){u(a,c,b)}),y(String(c.get(V)),a,void 0,b,!0))};
78
+ function td(a,b){var c=P(a,U);a.data.set(la,"_ga"==c?"_gid":c+"_gid");if("cookie"==P(a,ac)){hc=!1;c=Ca(P(a,U));c=Xd(a,c);if(!c){c=P(a,W);var d=P(a,$b)||xa();c=Xc("__utma",d,c);void 0!=c?(J(10),c=c.O[1]+"."+c.O[2]):c=void 0}c&&(hc=!0);if(d=c&&!a.get(Hd))if(d=c.split("."),2!=d.length)d=!1;else if(d=Number(d[1])){var e=R(a,Zb);d=d+e<(new Date).getTime()/1E3}else d=!1;d&&(c=void 0);c&&(a.data.set(xd,c),a.data.set(Q,c),(c=uc(a))&&a.data.set(I,c));a.get(je)&&(c=a.get(ce),d=a.get(ie),!c||d&&"aw.ds"!=d)&&
79
+ (c={},d=(M?df(c):{})[P(a,Na)],le(c),d&&0!=d.length&&(c=d[0],a.data.set(fe,c.timestamp/1E3),a.data.set(ce,c.qa)));a.get(je)&&(c=a.get(Se),d={},e=(M?df(d,"_gac_gb",!0):{})[P(a,Na)],ef(d),e&&0!=e.length&&(d=e[0],e=d.qa,c&&c!==e||(d.labels&&d.labels.length&&(e+="."+d.labels.join(".")),a.data.set(Te,d.timestamp/1E3),a.data.set(Se,e))))}if(a.get(Hd)){c=be("_ga",!!a.get(cc));var g=be("_gl",!!a.get(cc));d=De.get(a.get(cc));e=d._ga;g&&0<g.indexOf("_ga*")&&!e&&J(30);if(b||!a.get(Je))g=!1;else if(g=a.get(F),
80
+ void 0===g||g("analytics_storage"))g=!1;else{J(84);a.data.set(Le,1);if(g=d._up)if(g=Jc.exec(M.referrer)){g=g[1];var ca=M.location.hostname;g=ca===g||0<=ca.indexOf("."+g)||0<=g.indexOf("."+ca)?!0:!1}else g=!1;g=g?!0:!1}ca=d.gclid;var l=d._gac;if(c||e||ca||l)if(c&&e&&J(36),a.get(bc)||ye(a.get(Kd))||g){if(e&&(J(38),a.data.set(Q,e),d._gid&&(J(51),a.data.set(I,d._gid))),ca?(J(82),a.data.set(ce,ca),d.gclsrc&&a.data.set(ie,d.gclsrc)):l&&(e=l.split("."))&&2===e.length&&(J(37),a.data.set(ce,e[0]),a.data.set(fe,
81
+ e[1])),(d=d._fplc)&&P(a,oe)&&(J(83),a.data.set(Ae,d)),c)b:if(d=c.indexOf("."),-1==d)J(22);else{e=c.substring(0,d);g=c.substring(d+1);d=g.indexOf(".");c=g.substring(0,d);g=g.substring(d+1);if("1"==e){if(d=g,ke(d,c)){J(23);break b}}else if("2"==e){d=g.indexOf("-");e="";0<d?(e=g.substring(0,d),d=g.substring(d+1)):d=g.substring(1);if(ke(e+d,c)){J(53);break b}e&&(J(2),a.data.set(I,e))}else{J(22);break b}J(11);a.data.set(Q,d);if(c=be("_gac",!!a.get(cc)))c=c.split("."),"1"!=c[0]||4!=c.length?J(72):ke(c[3],
82
+ c[1])?J(71):(a.data.set(ce,c[3]),a.data.set(fe,c[2]),J(70))}}else J(21)}b&&(J(9),a.data.set(Q,K(b)));a.get(Q)||(b=(b=O.gaGlobal)&&b.from_cookie&&"cookie"!==P(a,ac)?void 0:(b=b&&b.vid)&&-1!==b.search(jd)?b:void 0,b?(J(17),a.data.set(Q,b)):(J(8),a.data.set(Q,ra())));a.get(I)||(J(3),a.data.set(I,ra()));mc(a);b=O.gaGlobal=O.gaGlobal||{};c=P(a,Q);a=c===P(a,xd);if(void 0==b.vid||a&&!b.from_cookie)b.vid=c,b.from_cookie=a}
83
+ function pd(a){var b=O.navigator,c=O.screen,d=M.location;a.set(lb,of(!!a.get(ec),!!a.get(Kd)));if(d){var e=d.pathname||"";"/"!=e.charAt(0)&&(J(31),e="/"+e);a.set(kb,d.protocol+"//"+d.hostname+e+d.search)}c&&a.set(qb,c.width+"x"+c.height);c&&a.set(pb,c.colorDepth+"-bit");c=M.documentElement;var g=(e=M.body)&&e.clientWidth&&e.clientHeight,ca=[];c&&c.clientWidth&&c.clientHeight&&("CSS1Compat"===M.compatMode||!g)?ca=[c.clientWidth,c.clientHeight]:g&&(ca=[e.clientWidth,e.clientHeight]);c=0>=ca[0]||0>=
84
+ ca[1]?"":ca.join("x");a.set(rb,c);c=a.set;var l;if((e=(e=O.navigator)?e.plugins:null)&&e.length)for(g=0;g<e.length&&!l;g++)ca=e[g],-1<ca.name.indexOf("Shockwave Flash")&&(l=ca.description);if(!l)try{var k=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");l=k.GetVariable("$version")}catch(w){}if(!l)try{k=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"),l="WIN 6,0,21,0",k.AllowScriptAccess="always",l=k.GetVariable("$version")}catch(w){}if(!l)try{k=new ActiveXObject("ShockwaveFlash.ShockwaveFlash"),
85
+ l=k.GetVariable("$version")}catch(w){}l&&(k=l.match(/[\d]+/g))&&3<=k.length&&(l=k[0]+"."+k[1]+" r"+k[2]);c.call(a,tb,l||void 0);a.set(ob,M.characterSet||M.charset);a.set(sb,b&&"function"===typeof b.javaEnabled&&b.javaEnabled()||!1);a.set(nb,(b&&(b.language||b.browserLanguage)||"").toLowerCase());a.data.set(ce,be("gclid",!0));a.data.set(ie,be("gclsrc",!0));a.data.set(fe,Math.round((new Date).getTime()/1E3));a.get(ce)||(a.data.set(Se,be("wbraid",!0)),a.data.set(Te,Math.round((new Date).getTime()/1E3)));
86
+ if(d&&a.get(cc)&&(b=M.location.hash)){b=b.split(/[?&#]+/);d=[];for(l=0;l<b.length;++l)(D(b[l],"utm_id")||D(b[l],"utm_campaign")||D(b[l],"utm_source")||D(b[l],"utm_medium")||D(b[l],"utm_term")||D(b[l],"utm_content")||D(b[l],"gclid")||D(b[l],"dclid")||D(b[l],"gclsrc")||D(b[l],"wbraid"))&&d.push(b[l]);0<d.length&&(b="#"+d.join("&"),a.set(kb,a.get(kb)+b))}}var me={pageview:[mb],event:[ub,xb,yb,zb],social:[Bb,Cb,Db],timing:[Mb,Nb,Pb,Ob]};var rc=function(a){if("prerender"==M.visibilityState)return!1;a();return!0},z=function(a){if(!rc(a)){J(16);var b=!1,c=function(){if(!b&&rc(a)){b=!0;var d=M;d.removeEventListener?d.removeEventListener("visibilitychange",c,!1):d.detachEvent&&d.detachEvent("onvisibilitychange",c)}};L(M,"visibilitychange",c)}};var te=/^(?:(\w+)\.)?(?:(\w+):)?(\w+)$/,sc=function(a){if(ea(a[0]))this.u=a[0];else{var b=te.exec(a[0]);null!=b&&4==b.length&&(this.da=b[1]||"t0",this.K=b[2]||"",this.methodName=b[3],this.aa=[].slice.call(a,1),this.K||(this.A="create"==this.methodName,this.i="require"==this.methodName,this.g="provide"==this.methodName,this.ba="remove"==this.methodName),this.i&&(3<=this.aa.length?(this.X=this.aa[1],this.W=this.aa[2]):this.aa[1]&&(qa(this.aa[1])?this.X=this.aa[1]:this.W=this.aa[1])));b=a[1];a=a[2];
87
+ if(!this.methodName)throw"abort";if(this.i&&(!qa(b)||""==b))throw"abort";if(this.g&&(!qa(b)||""==b||!ea(a)))throw"abort";if(ud(this.da)||ud(this.K))throw"abort";if(this.g&&"t0"!=this.da)throw"abort";}};function ud(a){return 0<=a.indexOf(".")||0<=a.indexOf(":")};var Yd,Zd,$d,A;Yd=new ee;$d=new ee;A=new ee;Zd={ec:45,ecommerce:46,linkid:47};
88
+ var u=function(a,b,c){b==N||b.get(V);var d=Yd.get(a);if(!ea(d))return!1;b.plugins_=b.plugins_||new ee;if(b.plugins_.get(a))return!0;b.plugins_.set(a,new d(b,c||{}));return!0},y=function(a,b,c,d,e){if(!ea(Yd.get(b))&&!$d.get(b)){Zd.hasOwnProperty(b)&&J(Zd[b]);var g=void 0;if(p.test(b)){J(52);a=N.j(a);if(!a)return!0;c=Ke(a.model,b,d,e);g=function(){Z.D(["provide",b,function(){}]);var l=O[d&&d.dataLayer||"dataLayer"];l&&l.hide&&ea(l.hide.end)&&l.hide[b]&&(l.hide.end(),l.hide.end=void 0)}}!c&&Zd.hasOwnProperty(b)?
89
+ (J(39),c=b+".js"):J(43);if(c){var ca;d&&(ca=d[oe]);qa(ca)||(ca=void 0);a=ae(cf(c,ca));!ca||ne(a.protocol)&&B(a)||(a=ae(cf(c)));ne(a.protocol)&&B(a)&&(Id(a.url,void 0,e,void 0,g),$d.set(b,!0))}}},v=function(a,b){var c=A.get(a)||[];c.push(b);A.set(a,c)},C=function(a,b){Yd.set(a,b);b=A.get(a)||[];for(var c=0;c<b.length;c++)b[c]();A.set(a,[])},B=function(a){var b=ae(M.location.href);if(D(a.url,Ge(1))||D(a.url,Ge(2)))return!0;if(a.query||0<=a.url.indexOf("?")||0<=a.path.indexOf("://"))return!1;if(a.host==
90
+ b.host&&a.port==b.port||jf&&(b=M.createElement("a"),b.href=jf,b=kf(b),a.host===b[0]&&a.port===b[1]))return!0;b="http:"==a.protocol?80:443;return"www.google-analytics.com"==a.host&&(a.port||b)==b&&D(a.path,"/plugins/")?!0:!1},ne=function(a){var b=M.location.protocol;return"https:"==a||a==b?!0:"http:"!=a?!1:"http:"==b},kf=function(a){var b=a.hostname||"",c=0<=b.indexOf("]");b=b.split(c?"]":":")[0].toLowerCase();c&&(b+="]");c=(a.protocol||"").toLowerCase();c=1*a.port||("http:"==c?80:"https:"==c?443:
91
+ "");a=a.pathname||"";D(a,"/")||(a="/"+a);return[b,""+c,a]},ae=function(a){var b=M.createElement("a");b.href=M.location.href;var c=(b.protocol||"").toLowerCase(),d=kf(b),e=b.search||"",g=c+"//"+d[0]+(d[1]?":"+d[1]:"");D(a,"//")?a=c+a:D(a,"/")?a=g+a:!a||D(a,"?")?a=g+d[2]+(a||e):0>a.split("/")[0].indexOf(":")&&(a=g+d[2].substring(0,d[2].lastIndexOf("/"))+"/"+a);b.href=a;c=kf(b);return{protocol:(b.protocol||"").toLowerCase(),host:c[0],port:c[1],path:c[2],query:b.search||"",url:a||""}},cf=function(a,b){return a&&
92
+ 0<=a.indexOf("/")?a:(b||bd(!1))+"/plugins/ua/"+a};var Z={ga:function(){Z.fa=[]}};Z.ga();Z.D=function(a){var b=Z.J.apply(Z,arguments);b=Z.fa.concat(b);for(Z.fa=[];0<b.length&&!Z.v(b[0])&&!(b.shift(),0<Z.fa.length););Z.fa=Z.fa.concat(b)};Z.ra=function(a){N.q&&(300===N.q.length&&(N.q.shift(),N.qd++),N.q.push(a))};Z.J=function(a){for(var b=[],c=0;c<arguments.length;c++){var d=void 0;try{d=new sc(arguments[c]),d.g?C(d.aa[0],d.aa[1]):(d.i&&(d.ha=y(d.da,d.aa[0],d.X,d.W)),b.push(d)),Z.ra(arguments[c])}catch(e){}}return b};
93
+ Z.v=function(a){try{if(a.u)a.u.call(O,N.j("t0"));else{var b=a.da==gb?N:N.j(a.da);if(a.A){if("t0"==a.da&&(b=N.create.apply(N,a.aa),null===b))return!0}else if(a.ba)N.remove(a.da);else if(b)if(a.i){if(a.ha&&(a.ha=y(a.da,a.aa[0],a.X,a.W)),!u(a.aa[0],b,a.W))return!0}else if(a.K){var c=a.methodName,d=a.aa,e=b.plugins_.get(a.K);e[c].apply(e,d)}else b[a.methodName].apply(b,a.aa)}}catch(g){}};var H={},sf={},vf={};function tf(a,b){var c=O.google_tag_data;c||(c=O.google_tag_data={});var d=c.slq;d||(d=c.slq={});c=d[a];c||(c={},c=d[a]=(c.q=b?b.slice():[],c));return c}function uf(a){return{allowAdFeatures:a.get(Ud),allowAdPersonalizationSignals:a.get(xe),cookieDomain:P(a,W),cookieExpires:a.get(Zb),cookieFlags:P(a,Be),cookieName:P(a,U),cookiePath:P(a,Yb),cookieUpdate:a.get(Hd),hitPayload:P(a,Ra)}}
94
+ function rf(a){return void 0===a.get(Ie)&&void 0===a.get(fa)&&void 0===a.get(gd)&&void 0===a.get(oe)};var N=function(a){J(1);Z.D.apply(Z,[arguments])};N.h={};N.P=[];N.L=0;N.ya=0;N.answer=42;var we=[Na,W,V];N.create=function(a){var b=za(we,[].slice.call(arguments));b[V]||(b[V]="t0");var c=""+b[V];if(N.h[c])return N.h[c];if(da(b))return null;b=new pc(b);N.h[c]=b;N.P.push(b);c=qc().tracker_created;if(ea(c))try{c(b)}catch(d){}return b};N.remove=function(a){for(var b=0;b<N.P.length;b++)if(N.P[b].get(V)==a){N.P.splice(b,1);N.h[a]=null;break}};N.j=function(a){return N.h[a]};N.getAll=function(){return N.P.slice(0)};
95
+ N.N=function(){"ga"!=gb&&J(49);var a=O[gb];if(!a||42!=a.answer){N.L=a&&a.l;N.ya=1*new Date;N.loaded=!0;var b=a&&a.q,c=ka(b);a=[];c?a=b.slice(0):J(50);N.q=c?b:[];N.q.splice(0);N.qd=0;b=O[gb]=N;X("create",b,b.create);X("remove",b,b.remove);X("getByName",b,b.j,5);X("getAll",b,b.getAll,6);b=pc.prototype;X("get",b,b.get,7);X("set",b,b.set,4);X("send",b,b.send);X("requireSync",b,b.ma);b=Ya.prototype;X("get",b,b.get);X("set",b,b.set);if("https:"!=M.location.protocol&&!Ba){a:{b=M.getElementsByTagName("script");
96
+ for(c=0;c<b.length&&100>c;c++){var d=b[c].src;if(d&&0==d.indexOf(bd(!0)+"/analytics")){b=!0;break a}}b=!1}b&&(Ba=!0)}(O.gaplugins=O.gaplugins||{}).Linker=Dc;b=Dc.prototype;C("linker",Dc);X("decorate",b,b.ca,20);X("autoLink",b,b.S,25);X("passthrough",b,b.$,25);C("displayfeatures",fd);C("adfeatures",fd);Z.D.apply(N,a)}};var xf=N.N,yf=O[gb];yf&&yf.r?xf():z(xf);z(function(){Z.D(["provide","render",ua])});})(window);
Soap.AI_files/css2 ADDED
@@ -0,0 +1,126 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* cyrillic-ext */
2
+ @font-face {
3
+ font-family: 'Source Sans Pro';
4
+ font-style: normal;
5
+ font-weight: 400;
6
+ font-display: swap;
7
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lujVj9_mf.woff2) format('woff2');
8
+ unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
9
+ }
10
+ /* cyrillic */
11
+ @font-face {
12
+ font-family: 'Source Sans Pro';
13
+ font-style: normal;
14
+ font-weight: 400;
15
+ font-display: swap;
16
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qPK7lujVj9_mf.woff2) format('woff2');
17
+ unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
18
+ }
19
+ /* greek-ext */
20
+ @font-face {
21
+ font-family: 'Source Sans Pro';
22
+ font-style: normal;
23
+ font-weight: 400;
24
+ font-display: swap;
25
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNK7lujVj9_mf.woff2) format('woff2');
26
+ unicode-range: U+1F00-1FFF;
27
+ }
28
+ /* greek */
29
+ @font-face {
30
+ font-family: 'Source Sans Pro';
31
+ font-style: normal;
32
+ font-weight: 400;
33
+ font-display: swap;
34
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qO67lujVj9_mf.woff2) format('woff2');
35
+ unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
36
+ }
37
+ /* vietnamese */
38
+ @font-face {
39
+ font-family: 'Source Sans Pro';
40
+ font-style: normal;
41
+ font-weight: 400;
42
+ font-display: swap;
43
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lujVj9_mf.woff2) format('woff2');
44
+ unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
45
+ }
46
+ /* latin-ext */
47
+ @font-face {
48
+ font-family: 'Source Sans Pro';
49
+ font-style: normal;
50
+ font-weight: 400;
51
+ font-display: swap;
52
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lujVj9_mf.woff2) format('woff2');
53
+ unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
54
+ }
55
+ /* latin */
56
+ @font-face {
57
+ font-family: 'Source Sans Pro';
58
+ font-style: normal;
59
+ font-weight: 400;
60
+ font-display: swap;
61
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7lujVj9w.woff2) format('woff2');
62
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
63
+ }
64
+ /* cyrillic-ext */
65
+ @font-face {
66
+ font-family: 'Source Sans Pro';
67
+ font-style: normal;
68
+ font-weight: 600;
69
+ font-display: swap;
70
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhdu3cOWxy40.woff2) format('woff2');
71
+ unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
72
+ }
73
+ /* cyrillic */
74
+ @font-face {
75
+ font-family: 'Source Sans Pro';
76
+ font-style: normal;
77
+ font-weight: 600;
78
+ font-display: swap;
79
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwkxdu3cOWxy40.woff2) format('woff2');
80
+ unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
81
+ }
82
+ /* greek-ext */
83
+ @font-face {
84
+ font-family: 'Source Sans Pro';
85
+ font-style: normal;
86
+ font-weight: 600;
87
+ font-display: swap;
88
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmxdu3cOWxy40.woff2) format('woff2');
89
+ unicode-range: U+1F00-1FFF;
90
+ }
91
+ /* greek */
92
+ @font-face {
93
+ font-family: 'Source Sans Pro';
94
+ font-style: normal;
95
+ font-weight: 600;
96
+ font-display: swap;
97
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlBdu3cOWxy40.woff2) format('woff2');
98
+ unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
99
+ }
100
+ /* vietnamese */
101
+ @font-face {
102
+ font-family: 'Source Sans Pro';
103
+ font-style: normal;
104
+ font-weight: 600;
105
+ font-display: swap;
106
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBdu3cOWxy40.woff2) format('woff2');
107
+ unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
108
+ }
109
+ /* latin-ext */
110
+ @font-face {
111
+ font-family: 'Source Sans Pro';
112
+ font-style: normal;
113
+ font-weight: 600;
114
+ font-display: swap;
115
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRdu3cOWxy40.woff2) format('woff2');
116
+ unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
117
+ }
118
+ /* latin */
119
+ @font-face {
120
+ font-family: 'Source Sans Pro';
121
+ font-style: normal;
122
+ font-weight: 600;
123
+ font-display: swap;
124
+ src: url(https://fonts.gstatic.com/s/sourcesanspro/v22/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu3cOWxw.woff2) format('woff2');
125
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
126
+ }
Soap.AI_files/css2(1) ADDED
@@ -0,0 +1,90 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* cyrillic-ext */
2
+ @font-face {
3
+ font-family: 'IBM Plex Mono';
4
+ font-style: normal;
5
+ font-weight: 400;
6
+ font-display: swap;
7
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n1iIq131nj-otFQ.woff2) format('woff2');
8
+ unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
9
+ }
10
+ /* cyrillic */
11
+ @font-face {
12
+ font-family: 'IBM Plex Mono';
13
+ font-style: normal;
14
+ font-weight: 400;
15
+ font-display: swap;
16
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n1isq131nj-otFQ.woff2) format('woff2');
17
+ unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
18
+ }
19
+ /* vietnamese */
20
+ @font-face {
21
+ font-family: 'IBM Plex Mono';
22
+ font-style: normal;
23
+ font-weight: 400;
24
+ font-display: swap;
25
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n1iAq131nj-otFQ.woff2) format('woff2');
26
+ unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
27
+ }
28
+ /* latin-ext */
29
+ @font-face {
30
+ font-family: 'IBM Plex Mono';
31
+ font-style: normal;
32
+ font-weight: 400;
33
+ font-display: swap;
34
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n1iEq131nj-otFQ.woff2) format('woff2');
35
+ unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
36
+ }
37
+ /* latin */
38
+ @font-face {
39
+ font-family: 'IBM Plex Mono';
40
+ font-style: normal;
41
+ font-weight: 400;
42
+ font-display: swap;
43
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n1i8q131nj-o.woff2) format('woff2');
44
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
45
+ }
46
+ /* cyrillic-ext */
47
+ @font-face {
48
+ font-family: 'IBM Plex Mono';
49
+ font-style: normal;
50
+ font-weight: 600;
51
+ font-display: swap;
52
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl1FgsAXHNlYzg.woff2) format('woff2');
53
+ unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
54
+ }
55
+ /* cyrillic */
56
+ @font-face {
57
+ font-family: 'IBM Plex Mono';
58
+ font-style: normal;
59
+ font-weight: 600;
60
+ font-display: swap;
61
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlRFgsAXHNlYzg.woff2) format('woff2');
62
+ unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
63
+ }
64
+ /* vietnamese */
65
+ @font-face {
66
+ font-family: 'IBM Plex Mono';
67
+ font-style: normal;
68
+ font-weight: 600;
69
+ font-display: swap;
70
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl9FgsAXHNlYzg.woff2) format('woff2');
71
+ unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
72
+ }
73
+ /* latin-ext */
74
+ @font-face {
75
+ font-family: 'IBM Plex Mono';
76
+ font-style: normal;
77
+ font-weight: 600;
78
+ font-display: swap;
79
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl5FgsAXHNlYzg.woff2) format('woff2');
80
+ unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
81
+ }
82
+ /* latin */
83
+ @font-face {
84
+ font-family: 'IBM Plex Mono';
85
+ font-style: normal;
86
+ font-weight: 600;
87
+ font-display: swap;
88
+ src: url(https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlBFgsAXHNk.woff2) format('woff2');
89
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
90
+ }
Soap.AI_files/iframeResizer.contentWindow.min.js ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ /*! iFrame Resizer (iframeSizer.contentWindow.min.js) - v4.3.11 - 2024-04-22
2
+ * Desc: Include this file in any page being loaded into an iframe
3
+ * to force the iframe to resize to the content size.
4
+ * Requires: iframeResizer.min.js on host page.
5
+ * Copyright: (c) 2024 David J. Bradshaw - dave@bradshaw.net
6
+ * License: MIT
7
+ */
8
+ !function(a){if("undefined"!=typeof window){var r=!0,P="",u=0,c="",s=null,D="",d=!1,j={resize:1,click:1},l=128,q=!0,f=1,n="bodyOffset",m=n,H=!0,W="",h={},g=32,B=null,p=!1,v=!1,y="[iFrameSizer]",J=y.length,w="",U={max:1,min:1,bodyScroll:1,documentElementScroll:1},b="child",V=!0,X=window.parent,T="*",E=0,i=!1,Y=null,O=16,S=1,K="scroll",M=K,Q=window,G=function(){x("onMessage function not defined")},Z=function(){},$=function(){},_={height:function(){return x("Custom height calculation function not defined"),document.documentElement.offsetHeight},width:function(){return x("Custom width calculation function not defined"),document.body.scrollWidth}},ee={},te=!1;try{var ne=Object.create({},{passive:{get:function(){te=!0}}});window.addEventListener("test",ae,ne),window.removeEventListener("test",ae,ne)}catch(e){}var oe,o,I,ie,N,A,C={bodyOffset:function(){return document.body.offsetHeight+ye("marginTop")+ye("marginBottom")},offset:function(){return C.bodyOffset()},bodyScroll:function(){return document.body.scrollHeight},custom:function(){return _.height()},documentElementOffset:function(){return document.documentElement.offsetHeight},documentElementScroll:function(){return document.documentElement.scrollHeight},max:function(){return Math.max.apply(null,e(C))},min:function(){return Math.min.apply(null,e(C))},grow:function(){return C.max()},lowestElement:function(){return Math.max(C.bodyOffset()||C.documentElementOffset(),we("bottom",Te()))},taggedElement:function(){return be("bottom","data-iframe-height")}},z={bodyScroll:function(){return document.body.scrollWidth},bodyOffset:function(){return document.body.offsetWidth},custom:function(){return _.width()},documentElementScroll:function(){return document.documentElement.scrollWidth},documentElementOffset:function(){return document.documentElement.offsetWidth},scroll:function(){return Math.max(z.bodyScroll(),z.documentElementScroll())},max:function(){return Math.max.apply(null,e(z))},min:function(){return Math.min.apply(null,e(z))},rightMostElement:function(){return we("right",Te())},taggedElement:function(){return be("right","data-iframe-width")}},re=(oe=Ee,N=null,A=0,function(){var e=Date.now(),t=O-(e-(A=A||e));return o=this,I=arguments,t<=0||O<t?(N&&(clearTimeout(N),N=null),A=e,ie=oe.apply(o,I),N||(o=I=null)):N=N||setTimeout(Oe,t),ie});"iframeResizer"in window||(window.iframeChildListener=function(e){Ne({data:e,sameDomian:!0})},R(window,"message",Ne),R(window,"readystatechange",Ae),Ae())}function ae(){}function R(e,t,n,o){e.addEventListener(t,n,!!te&&(o||{}))}function ue(e){return e.charAt(0).toUpperCase()+e.slice(1)}function ce(e){return y+"["+w+"] "+e}function k(e){p&&"object"==typeof window.console&&console.log(ce(e))}function x(e){"object"==typeof window.console&&console.warn(ce(e))}function se(){function e(e){return"true"===e}function t(e,t){return"function"==typeof e&&(k("Setup custom "+t+"CalcMethod"),_[t]=e,e="custom"),e}{var n;n=W.slice(J).split(":"),w=n[0],u=a===n[1]?u:Number(n[1]),d=a===n[2]?d:e(n[2]),p=a===n[3]?p:e(n[3]),g=a===n[4]?g:Number(n[4]),r=a===n[6]?r:e(n[6]),c=n[7],m=a===n[8]?m:n[8],P=n[9],D=n[10],E=a===n[11]?E:Number(n[11]),h.enable=a!==n[12]&&e(n[12]),b=a===n[13]?b:n[13],M=a===n[14]?M:n[14],v=a===n[15]?v:e(n[15]),k("Initialising iFrame ("+window.location.href+")"),"iFrameResizer"in window&&Object===window.iFrameResizer.constructor&&(n=window.iFrameResizer,k("Reading data from page: "+JSON.stringify(n)),Object.keys(n).forEach(de,n),G="onMessage"in n?n.onMessage:G,Z="onReady"in n?n.onReady:Z,T="targetOrigin"in n?n.targetOrigin:T,m="heightCalculationMethod"in n?n.heightCalculationMethod:m,M="widthCalculationMethod"in n?n.widthCalculationMethod:M,m=t(m,"height"),M=t(M,"width"))}function o(e){F(0,0,e.type,e.screenY+":"+e.screenX)}function i(e,t){k("Add event listener: "+t),R(window.document,e,o)}k("TargetOrigin for parent set to: "+T),le("margin",function(e,t){-1!==t.indexOf("-")&&(x("Negative CSS value ignored for "+e),t="");return t}("margin",c=a===c?u+"px":c)),le("background",P),le("padding",D),(n=document.createElement("div")).style.clear="both",n.style.display="block",n.style.height="0",document.body.appendChild(n),he(),ge(),document.documentElement.style.height="",document.body.style.height="",k('HTML & body height set to "auto"'),k("Enable public methods"),Q.parentIFrame={autoResize:function(e){return!0===e&&!1===r?(r=!0,pe()):!1===e&&!0===r&&(r=!1,fe("remove"),null!==s&&s.disconnect(),clearInterval(B)),F(0,0,"autoResize",JSON.stringify(r)),r},close:function(){F(0,0,"close")},getId:function(){return w},getPageInfo:function(e){"function"==typeof e?($=e,F(0,0,"pageInfo")):($=function(){},F(0,0,"pageInfoStop"))},moveToAnchor:function(e){h.findTarget(e)},reset:function(){Ie("parentIFrame.reset")},scrollTo:function(e,t){F(t,e,"scrollTo")},scrollToOffset:function(e,t){F(t,e,"scrollToOffset")},sendMessage:function(e,t){F(0,0,"message",JSON.stringify(e),t)},setHeightCalculationMethod:function(e){m=e,he()},setWidthCalculationMethod:function(e){M=e,ge()},setTargetOrigin:function(e){k("Set targetOrigin: "+e),T=e},size:function(e,t){L("size","parentIFrame.size("+((e||"")+(t?","+t:""))+")",e,t)}},!0===v&&(i("mouseenter","Mouse Enter"),i("mouseleave","Mouse Leave")),pe(),h=function(){function n(e){var e=e.getBoundingClientRect(),t={x:window.pageXOffset===a?document.documentElement.scrollLeft:window.pageXOffset,y:window.pageYOffset===a?document.documentElement.scrollTop:window.pageYOffset};return{x:parseInt(e.left,10)+parseInt(t.x,10),y:parseInt(e.top,10)+parseInt(t.y,10)}}function o(e){var e=e.split("#")[1]||e,t=decodeURIComponent(e),t=document.getElementById(t)||document.getElementsByName(t)[0];a===t?(k("In page link (#"+e+") not found in iFrame, so sending to parent"),F(0,0,"inPageLink","#"+e)):(t=n(t=t),k("Moving to in page link (#"+e+") at x: "+t.x+" y: "+t.y),F(t.y,t.x,"scrollToOffset"))}function e(){var e=window.location.hash,t=window.location.href;""!==e&&"#"!==e&&o(t)}function t(){Array.prototype.forEach.call(document.querySelectorAll('a[href^="#"]'),function(e){"#"!==e.getAttribute("href")&&R(e,"click",function(e){e.preventDefault(),o(this.getAttribute("href"))})})}function i(){Array.prototype.forEach&&document.querySelectorAll?(k("Setting up location.hash handlers"),t(),R(window,"hashchange",e),setTimeout(e,l)):x("In page linking not fully supported in this browser! (See README.md for IE8 workaround)")}h.enable?i():k("In page linking not enabled");return{findTarget:o}}(),L("init","Init message from host page"),Z()}function de(e){var t=e.split("Callback");2===t.length&&(this[t="on"+t[0].charAt(0).toUpperCase()+t[0].slice(1)]=this[e],delete this[e],x("Deprecated: '"+e+"' has been renamed '"+t+"'. The old method will be removed in the next major version."))}function le(e,t){a!==t&&""!==t&&"null"!==t&&k("Body "+e+' set to "'+(document.body.style[e]=t)+'"')}function t(n){var e={add:function(e){function t(){L(n.eventName,n.eventType)}ee[e]=t,R(window,e,t,{passive:!0})},remove:function(e){var t=ee[e];delete ee[e],window.removeEventListener(e,t,!1)}};n.eventNames&&Array.prototype.map?(n.eventName=n.eventNames[0],n.eventNames.map(e[n.method])):e[n.method](n.eventName),k(ue(n.method)+" event listener: "+n.eventType)}function fe(e){t({method:e,eventType:"Animation Start",eventNames:["animationstart","webkitAnimationStart"]}),t({method:e,eventType:"Animation Iteration",eventNames:["animationiteration","webkitAnimationIteration"]}),t({method:e,eventType:"Animation End",eventNames:["animationend","webkitAnimationEnd"]}),t({method:e,eventType:"Input",eventName:"input"}),t({method:e,eventType:"Mouse Up",eventName:"mouseup"}),t({method:e,eventType:"Mouse Down",eventName:"mousedown"}),t({method:e,eventType:"Orientation Change",eventName:"orientationchange"}),t({method:e,eventType:"Print",eventNames:["afterprint","beforeprint"]}),t({method:e,eventType:"Ready State Change",eventName:"readystatechange"}),t({method:e,eventType:"Touch Start",eventName:"touchstart"}),t({method:e,eventType:"Touch End",eventName:"touchend"}),t({method:e,eventType:"Touch Cancel",eventName:"touchcancel"}),t({method:e,eventType:"Transition Start",eventNames:["transitionstart","webkitTransitionStart","MSTransitionStart","oTransitionStart","otransitionstart"]}),t({method:e,eventType:"Transition Iteration",eventNames:["transitioniteration","webkitTransitionIteration","MSTransitionIteration","oTransitionIteration","otransitioniteration"]}),t({method:e,eventType:"Transition End",eventNames:["transitionend","webkitTransitionEnd","MSTransitionEnd","oTransitionEnd","otransitionend"]}),"child"===b&&t({method:e,eventType:"IFrame Resized",eventName:"resize"})}function me(e,t,n,o){return t!==e&&(e in n||(x(e+" is not a valid option for "+o+"CalculationMethod."),e=t),k(o+' calculation method set to "'+e+'"')),e}function he(){m=me(m,n,C,"height")}function ge(){M=me(M,K,z,"width")}function pe(){var e;!0===r?(fe("add"),e=g<0,window.MutationObserver||window.WebKitMutationObserver?e?ve():s=function(){function t(e){function t(e){!1===e.complete&&(k("Attach listeners to "+e.src),e.addEventListener("load",i,!1),e.addEventListener("error",r,!1),u.push(e))}"attributes"===e.type&&"src"===e.attributeName?t(e.target):"childList"===e.type&&Array.prototype.forEach.call(e.target.querySelectorAll("img"),t)}function o(e){k("Remove listeners from "+e.src),e.removeEventListener("load",i,!1),e.removeEventListener("error",r,!1),u.splice(u.indexOf(e),1)}function n(e,t,n){o(e.target),L(t,n+": "+e.target.src)}function i(e){n(e,"imageLoad","Image loaded")}function r(e){n(e,"imageLoadFailed","Image load failed")}function a(e){L("mutationObserver","mutationObserver: "+e[0].target+" "+e[0].type),e.forEach(t)}var u=[],c=window.MutationObserver||window.WebKitMutationObserver,s=function(){var e=document.querySelector("body");return s=new c(a),k("Create body MutationObserver"),s.observe(e,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}),s}();return{disconnect:function(){"disconnect"in s&&(k("Disconnect body MutationObserver"),s.disconnect(),u.forEach(o))}}}():(k("MutationObserver not supported in this browser!"),ve())):k("Auto Resize disabled")}function ve(){0!==g&&(k("setInterval: "+g+"ms"),B=setInterval(function(){L("interval","setInterval: "+g)},Math.abs(g)))}function ye(e,t){return t=t||document.body,t=null===(t=document.defaultView.getComputedStyle(t,null))?0:t[e],parseInt(t,10)}function we(e,t){for(var n,o=t.length,i=0,r=ue(e),a=Date.now(),u=0;u<o;u++)i<(n=t[u].getBoundingClientRect()[e]+ye("margin"+r,t[u]))&&(i=n);return a=Date.now()-a,k("Parsed "+o+" HTML elements"),k("Element position calculated in "+a+"ms"),O/2<(a=a)&&k("Event throttle increased to "+(O=2*a)+"ms"),i}function e(e){return[e.bodyOffset(),e.bodyScroll(),e.documentElementOffset(),e.documentElementScroll()]}function be(e,t){var n=document.querySelectorAll("["+t+"]");return 0===n.length&&(x("No tagged elements ("+t+") found on page"),document.querySelectorAll("body *")),we(e,n)}function Te(){return document.querySelectorAll("body *")}function Ee(e,t,n,o){function i(){e in{init:1,interval:1,size:1}||!(m in U||d&&M in U)?e in{interval:1}||k("No change in size detected"):Ie(t)}function r(e,t){return!(Math.abs(e-t)<=E)}n=a===n?C[m]():n,o=a===o?z[M]():o,r(f,n)||d&&r(S,o)||"init"===e?(Se(),F(f=n,S=o,e)):i()}function Oe(){A=Date.now(),N=null,ie=oe.apply(o,I),N||(o=I=null)}function L(e,t,n,o){i&&e in j?k("Trigger event cancelled: "+e):(e in{reset:1,resetPage:1,init:1}||k("Trigger event: "+t),("init"===e?Ee:re)(e,t,n,o))}function Se(){i||(i=!0,k("Trigger event lock on")),clearTimeout(Y),Y=setTimeout(function(){i=!1,k("Trigger event lock off"),k("--")},l)}function Me(e){f=C[m](),S=z[M](),F(f,S,e)}function Ie(e){var t=m;m=n,k("Reset trigger event: "+e),Se(),Me("reset"),m=t}function F(e,t,n,o,i){!0===V&&(a===i?i=T:k("Message targetOrigin: "+i),k("Sending message to host page ("+(e=w+":"+(e+":"+t)+":"+n+(a===o?"":":"+o))+")"),X.postMessage(y+e,i))}function Ne(t){var n={init:function(){W=t.data,X=t.source,se(),q=!1,setTimeout(function(){H=!1},l)},reset:function(){H?k("Page reset ignored by init"):(k("Page size reset by host page"),Me("resetPage"))},resize:function(){L("resizeParent","Parent window requested size check")},moveToAnchor:function(){h.findTarget(i())},inPageLink:function(){this.moveToAnchor()},pageInfo:function(){var e=i();k("PageInfoFromParent called from parent: "+e),$(JSON.parse(e)),k(" --")},message:function(){var e=i();k("onMessage called from parent: "+e),G(JSON.parse(e)),k(" --")}};function o(){return t.data.split("]")[1].split(":")[0]}function i(){return t.data.slice(t.data.indexOf(":")+1)}function r(){return t.data.split(":")[2]in{true:1,false:1}}function e(){var e=o();e in n?n[e]():("undefined"==typeof module||!module.exports)&&"iFrameResize"in window||window.jQuery!==a&&"iFrameResize"in window.jQuery.prototype||r()||x("Unexpected message ("+t.data+")")}y===(""+t.data).slice(0,J)&&(!1===q?e():r()?n.init():k('Ignored message of type "'+o()+'". Received before initialization.'))}function Ae(){"loading"!==document.readyState&&window.parent.postMessage("[iFrameResizerChild]Ready","*")}}();
9
+ //# sourceMappingURL=iframeResizer.contentWindow.map
Soap.AI_files/index-C2tw9baX.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .gradio-container-4-31-0,.gradio-container-4-31-0 *,.gradio-container-4-31-0 :before,.gradio-container-4-31-0 :after{box-sizing:border-box;border-width:0;border-style:solid}.gradio-container-4-31-0 html{-webkit-text-size-adjust:100%;line-height:1.5;font-family:var(--font-sans);-moz-tab-size:4;tab-size:2}body{margin:0;line-height:inherit}.gradio-container-4-31-0 hr{border-top-width:1px;height:0;color:inherit}.gradio-container-4-31-0 abbr:where([title]){text-decoration:underline dotted}.gradio-container-4-31-0 h1,.gradio-container-4-31-0 h2,.gradio-container-4-31-0 h3,.gradio-container-4-31-0 h4,.gradio-container-4-31-0 h5,.gradio-container-4-31-0 h6{font-weight:inherit;font-size:inherit}.gradio-container-4-31-0 a{color:inherit;text-decoration:inherit}.gradio-container-4-31-0 b,.gradio-container-4-31-0 strong{font-weight:bolder}.gradio-container-4-31-0 code,.gradio-container-4-31-0 kbd,.gradio-container-4-31-0 samp,.gradio-container-4-31-0 pre{font-family:-var(--font-mono)}.gradio-container-4-31-0 small{font-size:80%}.gradio-container-4-31-0 sub,.gradio-container-4-31-0 sup{position:relative;vertical-align:baseline;font-size:75%;line-height:0}.gradio-container-4-31-0 sub{bottom:-.25em}.gradio-container-4-31-0 sup{top:-.5em}.gradio-container-4-31-0 table{border-color:inherit;text-indent:0}.gradio-container-4-31-0 button,.gradio-container-4-31-0 input,.gradio-container-4-31-0 optgroup,.gradio-container-4-31-0 select,.gradio-container-4-31-0 textarea{margin:0;padding:0;color:inherit;font-weight:inherit;font-size:100%;line-height:inherit;font-family:inherit}.gradio-container-4-31-0 button,.gradio-container-4-31-0 select{text-transform:none}.gradio-container-4-31-0 button,.gradio-container-4-31-0 [type=button],.gradio-container-4-31-0 [type=reset],.gradio-container-4-31-0 [type=submit]{-webkit-appearance:button;background-image:none;background-color:transparent}.gradio-container-4-31-0 :-moz-focusring{outline:auto}.gradio-container-4-31-0 :-moz-ui-invalid{box-shadow:none}.gradio-container-4-31-0 progress{vertical-align:baseline}.gradio-container-4-31-0 ::-webkit-inner-spin-button,.gradio-container-4-31-0 ::-webkit-outer-spin-button{height:auto}.gradio-container-4-31-0 [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.gradio-container-4-31-0 ::-webkit-search-decoration{-webkit-appearance:none}.gradio-container-4-31-0 ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.gradio-container-4-31-0 summary{display:list-item}.gradio-container-4-31-0 blockquote,.gradio-container-4-31-0 dl,.gradio-container-4-31-0 dd,.gradio-container-4-31-0 h1,.gradio-container-4-31-0 h2,.gradio-container-4-31-0 h3,.gradio-container-4-31-0 h4,.gradio-container-4-31-0 h5,.gradio-container-4-31-0 h6,.gradio-container-4-31-0 hr,.gradio-container-4-31-0 figure,.gradio-container-4-31-0 p,.gradio-container-4-31-0 pre{margin:0}.gradio-container-4-31-0 fieldset{margin:0;padding:0}.gradio-container-4-31-0 legend{padding:0}.gradio-container-4-31-0 ol,.gradio-container-4-31-0 ul,.gradio-container-4-31-0 menu{margin:0;padding:0}.gradio-container-4-31-0 textarea{resize:vertical}.gradio-container-4-31-0 input::placeholder,.gradio-container-4-31-0 textarea::placeholder{opacity:1;color:--color-var(--color-grey-400)}.gradio-container-4-31-0 button,.gradio-container-4-31-0 [role=button]{cursor:pointer}.gradio-container-4-31-0 :disabled{cursor:default}.gradio-container-4-31-0 img,.gradio-container-4-31-0 svg,.gradio-container-4-31-0 video,.gradio-container-4-31-0 canvas,.gradio-container-4-31-0 audio,.gradio-container-4-31-0 iframe,.gradio-container-4-31-0 embed,.gradio-container-4-31-0 object{display:block;vertical-align:middle}.gradio-container-4-31-0 img,.gradio-container-4-31-0 video{max-width:100%;height:auto;margin:0}.gradio-container-4-31-0 [hidden]{display:none}.gradio-container-4-31-0 [type=text],.gradio-container-4-31-0 [type=email],.gradio-container-4-31-0 [type=url],.gradio-container-4-31-0 [type=password],.gradio-container-4-31-0 [type=number],.gradio-container-4-31-0 [type=date],.gradio-container-4-31-0 [type=datetime-local],.gradio-container-4-31-0 [type=month],.gradio-container-4-31-0 [type=search],.gradio-container-4-31-0 [type=tel],.gradio-container-4-31-0 [type=time],.gradio-container-4-31-0 [type=week],.gradio-container-4-31-0 [multiple],.gradio-container-4-31-0 textarea,.gradio-container-4-31-0 select{--tw-shadow: 0 0 #0000;appearance:none;border-width:1px;border-color:#6b7280;border-radius:0;background-color:#fff;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem}.gradio-container-4-31-0 [type=checkbox],.gradio-container-4-31-0 [type=radio]{color-adjust:exact;display:inline-block;flex-shrink:0;vertical-align:middle;appearance:none;border-width:1px;background-origin:border-box;padding:0;width:1rem;height:1rem;color:#2563eb;user-select:none}.gradio-container-4-31-0 [type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}.gradio-container-4-31-0 [type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}.gradio-container-4-31-0 select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-size:1.5em 1.5em;background-repeat:no-repeat;padding-right:2.5rem}.gradio-container-4-31-0 [type=checkbox]:checked,.gradio-container-4-31-0 [type=radio]:checked{background-position:center;background-size:100% 100%;background-repeat:no-repeat}.gradio-container-4-31-0 [type=checkbox]:checked:hover,.gradio-container-4-31-0 [type=checkbox]:checked:focus,.gradio-container-4-31-0 [type=radio]:checked:hover,.gradio-container-4-31-0 [type=radio]:checked:focus{border-color:transparent}.gradio-container-4-31-0 [type=checkbox]:focus-visible,.gradio-container-4-31-0 [type=radio]:focus-visible{outline:none}gradio-lite{display:flex}gradio-lite:not(:defined){display:none}.gradio-container-4-31-0 .scroll-hide{-ms-overflow-style:none;scrollbar-width:none}.gradio-container-4-31-0 .sr-only{clip:rect(0,0,0,0);position:absolute;margin:-1px;border-width:0;padding:0;width:1px;height:1px;overflow:hidden;white-space:nowrap}.gradio-container-4-31-0 .scroll-hide::-webkit-scrollbar{display:none}.gradio-container-4-31-0{-webkit-text-size-adjust:100%;line-height:1.5;font-family:var(--font);-moz-tab-size:4;tab-size:4}.gradio-container-4-31-0 .cropper-container{position:relative;-ms-touch-action:none;touch-action:none;font-size:0;line-height:0;direction:ltr;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.gradio-container-4-31-0 .cropper-container img{display:block;image-orientation:0deg;width:100%;min-width:0!important;max-width:none!important;height:100%;min-height:0!important;max-height:none!important}.gradio-container-4-31-0 .cropper-wrap-box,.gradio-container-4-31-0 .cropper-canvas,.gradio-container-4-31-0 .cropper-drag-box,.gradio-container-4-31-0 .cropper-crop-box,.gradio-container-4-31-0 .cropper-modal{position:absolute;inset:0}.gradio-container-4-31-0 .cropper-wrap-box,.gradio-container-4-31-0 .cropper-canvas{overflow:hidden}.gradio-container-4-31-0 .cropper-drag-box{opacity:0;background-color:#fff}.gradio-container-4-31-0 .cropper-modal{opacity:.5;background-color:#000}.gradio-container-4-31-0 .cropper-view-box{display:block;outline:1px solid #39f;outline-color:#3399ffbf;width:100%;height:100%;overflow:hidden}.gradio-container-4-31-0 .cropper-dashed{display:block;position:absolute;opacity:.5;border:0 dashed #eee}.gradio-container-4-31-0 .cropper-dashed.dashed-h{top:calc(100% / 3);left:0;border-top-width:1px;border-bottom-width:1px;width:100%;height:calc(100% / 3)}.gradio-container-4-31-0 .cropper-dashed.dashed-v{top:0;left:calc(100% / 3);border-right-width:1px;border-left-width:1px;width:calc(100% / 3);height:100%}.gradio-container-4-31-0 .cropper-center{display:block;position:absolute;top:50%;left:50%;opacity:.75;width:0;height:0}.gradio-container-4-31-0 .cropper-center:before,.gradio-container-4-31-0 .cropper-center:after{display:block;position:absolute;background-color:#eee;content:" "}.gradio-container-4-31-0 .cropper-center:before{top:0;left:-3px;width:7px;height:1px}.gradio-container-4-31-0 .cropper-center:after{top:-3px;left:0;width:1px;height:7px}.gradio-container-4-31-0 .cropper-face,.gradio-container-4-31-0 .cropper-line,.gradio-container-4-31-0 .cropper-point{display:block;position:absolute;opacity:.1;width:100%;height:100%}.gradio-container-4-31-0 .cropper-face{top:0;left:0;background-color:#fff}.gradio-container-4-31-0 .cropper-line{background-color:#39f}.gradio-container-4-31-0 .cropper-line.line-e{top:0;right:-3px;cursor:ew-resize;width:5px}.gradio-container-4-31-0 .cropper-line.line-n{top:-3px;left:0;cursor:ns-resize;height:5px}.gradio-container-4-31-0 .cropper-line.line-w{top:0;left:-3px;cursor:ew-resize;width:5px}.gradio-container-4-31-0 .cropper-line.line-s{bottom:-3px;left:0;cursor:ns-resize;height:5px}.gradio-container-4-31-0 .cropper-point{opacity:.75;background-color:#39f;width:5px;height:5px}.gradio-container-4-31-0 .cropper-point.point-e{top:50%;right:-3px;cursor:ew-resize;margin-top:-3px}.gradio-container-4-31-0 .cropper-point.point-n{top:-3px;left:50%;cursor:ns-resize;margin-left:-3px}.gradio-container-4-31-0 .cropper-point.point-w{top:50%;left:-3px;cursor:ew-resize;margin-top:-3px}.gradio-container-4-31-0 .cropper-point.point-s{bottom:-3px;left:50%;cursor:s-resize;margin-left:-3px}.gradio-container-4-31-0 .cropper-point.point-ne{top:-3px;right:-3px;cursor:nesw-resize}.gradio-container-4-31-0 .cropper-point.point-nw{top:-3px;left:-3px;cursor:nwse-resize}.gradio-container-4-31-0 .cropper-point.point-sw{bottom:-3px;left:-3px;cursor:nesw-resize}.gradio-container-4-31-0 .cropper-point.point-se{right:-3px;bottom:-3px;opacity:1;cursor:nwse-resize;width:20px;height:20px}@media (min-width: 768px){.gradio-container-4-31-0 .cropper-point.point-se{width:15px;height:15px}}@media (min-width: 992px){.gradio-container-4-31-0 .cropper-point.point-se{width:10px;height:10px}}@media (min-width: 1200px){.gradio-container-4-31-0 .cropper-point.point-se{opacity:.75;width:5px;height:5px}}.gradio-container-4-31-0 .cropper-point.point-se:before{display:block;position:absolute;right:-50%;bottom:-50%;opacity:0;background-color:#39f;width:200%;height:200%;content:" "}.gradio-container-4-31-0 .cropper-invisible{opacity:0}.gradio-container-4-31-0 .cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.gradio-container-4-31-0 .cropper-hide{display:block;position:absolute;width:0;height:0}.gradio-container-4-31-0 .cropper-hidden{display:none!important}.gradio-container-4-31-0 .cropper-move{cursor:move}.gradio-container-4-31-0 .cropper-crop{cursor:crosshair}.gradio-container-4-31-0 .cropper-disabled .cropper-drag-box,.gradio-container-4-31-0 .cropper-disabled .cropper-face,.gradio-container-4-31-0 .cropper-disabled .cropper-line,.gradio-container-4-31-0 .cropper-disabled .cropper-point{cursor:not-allowed}:root{--scale-0: 1rem;--scale-1: 1.125rem;--scale-2: 1.25rem;--scale-3: 1.5rem;--scale-4: 1.875rem;--scale-5: 2.25rem;--scale-6: 3rem;--scale-7: 3.75rem;--scale-8: 4.5rem;--scale-9: 6rem;--scale-10: 8rem;--scale-000: .75rem;--scale-00: .875rem;--scale-fluid-0: clamp(.875rem, .8rem + .25vw, 1rem);--scale-fluid-1: clamp(1rem, .925rem + .25vw, 1.125rem);--scale-fluid-2: clamp(1.125rem, 1.05rem + .25vw, 1.25rem);--scale-fluid-3: clamp(1.25rem, 1.1rem + .5vw, 1.5rem);--scale-fluid-4: clamp(1.5rem, 1.275rem + .75vw, 1.875rem);--scale-fluid-5: clamp(1.875rem, 1.65rem + .75vw, 2.25rem);--scale-fluid-6: clamp(2.25rem, 1.8rem + 1.5vw, 3rem);--scale-fluid-7: clamp(3rem, 2.55rem + 1.5vw, 3.75rem);--scale-fluid-8: clamp(3.75rem, 3.3rem + 1.5vw, 4.5rem);--scale-fluid-9: clamp(4.5rem, 3.6rem + 3vw, 6rem);--scale-fluid-10: clamp(6rem, 4.8rem + 4vw, 8rem);--scale-fluid-000: clamp(.625rem, .55rem + .25vw, .75rem);--scale-fluid-00: clamp(.75rem, .675rem + .25vw, .875rem);--font-sans: Source Sans Pro, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: IBM Plex Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--weight-black: 900;--line-none: 1;--line-xs: 1.125;--line-sm: 1.4;--line-md: 1.5;--line-lg: 1.625;--line-xl: 2;--letter-xs: -.05em;--letter-sm: -.025em;--letter-none: 0em;--letter-lg: .025em;--letter-xl: .05em;--prose-xs: 45ch;--prose-sm: 55ch;--prose-md: 65ch;--prose-lg: 75ch;--prose-xl: 85ch;--size-1: 4px;--size-2: 8px;--size-3: 12px;--size-4: 16px;--size-5: 20px;--size-6: 24px;--size-7: 28px;--size-8: 32px;--size-9: 36px;--size-10: 40px;--size-11: 44px;--size-12: 48px;--size-14: 56px;--size-16: 64px;--size-20: 80px;--size-24: 96px;--size-28: 112px;--size-32: 128px;--size-36: 144px;--size-40: 160px;--size-44: 176px;--size-48: 192px;--size-52: 208px;--size-56: 224px;--size-60: 240px;--size-64: 256px;--size-72: 288px;--size-80: 320px;--size-96: 384px;--size-px: 1px;--size-full: 100%;--size-screen: 100vw;--size-min: min-content;--size-max: max-content;--size-0-5: 2px;--size-1-5: 6px;--size-2-5: 10px;--size-screen-h: 100vh;--width-xs: 480px;--width-sm: 640px;--width-md: 768px;--width-lg: 1024px;--width-xl: 1280px;--ratio-square: 1/1;--ratio-portrait: 3/4;--ratio-landscape: 4/3;--ratio-tall: 2/3;--ratio-wide: 3/2;--ratio-widescreen: 16/9;--ratio-golden: 1.618/1;--radius-100: 100%;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--radius-2xl: 16px;--radius-3xl: 22px;--blur-xs: blur(4px);--blur-sm: blur(8px);--blur-md: blur(16px);--blur-lg: blur(24px);--blur-xl: blur(40px);--layer-1: 10;--layer-2: 20;--layer-3: 30;--layer-4: 40;--layer-5: 50;--layer-below: -1;--layer-top: 2147483647;--shadow-xs: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-sm: 0 4px 6px -2px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .06);--shadow-md: 0 12px 16px -4px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 24px -4px rgba(0, 0, 0, .1), 0 8px 8px -4px rgba(0, 0, 0, .04);--shadow-xl: 0 24px 48px -12px rgba(0, 0, 0, .25);--ease-in-sine: cubic-bezier(.47, 0, .745, .715);--ease-out-sine: cubic-bezier(.39, .575, .565, 1);--ease-in-out-sine: cubic-bezier(.445, .05, .55, .95);--ease-in-quad: cubic-bezier(.55, .085, .68, .53);--ease-out-quad: cubic-bezier(.25, .46, .45, .94);--ease-in-out-quad: cubic-bezier(.455, .03, .515, .955);--ease-in-cubic: cubic-bezier(.55, .055, .675, .19);--ease-out-cubic: cubic-bezier(.215, .61, .355, 1);--ease-in-out-cubic: cubic-bezier(.645, .045, .355, 1);--ease-in-quart: cubic-bezier(.895, .03, .685, .22);--ease-out-quart: cubic-bezier(.165, .84, .44, 1);--ease-in-out-quart: cubic-bezier(.77, 0, .175, 1);--ease-in-quint: cubic-bezier(.755, .05, .855, .06);--ease-out-quint: cubic-bezier(.23, 1, .32, 1);--ease-in-out-quint: cubic-bezier(.86, 0, .07, 1);--ease-in-expo: cubic-bezier(.95, .05, .795, .035);--ease-out-expo: cubic-bezier(.19, 1, .22, 1);--ease-in-out-expo: cubic-bezier(1, 0, 0, 1);--ease-in-circ: cubic-bezier(.6, .04, .98, .335);--ease-out-circ: cubic-bezier(.075, .82, .165, 1);--ease-in-out-circ: cubic-bezier(.785, .135, .15, .86);--ease-in-back: cubic-bezier(.6, -.28, .735, .045);--ease-out-back: cubic-bezier(.175, .885, .32, 1.275);--ease-in-out-back: cubic-bezier(.68, -.55, .265, 1.55);--easing-standard: cubic-bezier(.4, 0, .2, 1);--easing-accelerate: cubic-bezier(.4, 0, 1, 1);--easing-decelerate: cubic-bezier(0, 0, .2, 1);--elevation-1: 0 1px 2px 0 rgba(0, 0, 0, .05);--elevation-2: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--elevation-3: 0 4px 6px -2px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .06);--elevation-4: 0 12px 16px -4px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--elevation-5: 0 20px 24px -4px rgba(0, 0, 0, .1), 0 8px 8px -4px rgba(0, 0, 0, .04);--elevation-6: 0 24px 48px -12px rgba(0, 0, 0, .25);--elevation-7: 0 32px 64px -12px rgba(0, 0, 0, .2);--color-grey-50: #f9fafb;--color-grey-100: #f3f4f6;--color-grey-200: #e5e7eb;--color-grey-300: #d1d5db;--color-grey-400: #9ca3af;--color-grey-500: #6b7280;--color-grey-600: #4b5563;--color-grey-700: #374151;--color-grey-800: #1f2937;--color-grey-900: #111827;--color-black: #14141b;--color-grey: #6b7280;--color-red-300: #fca5a5;--color-red-500: #ef4444;--color-red-700: #b91c1c;--color-red: #ef4444;--color-green-300: #86efac;--color-green-500: #22c55e;--color-green-700: #15803d;--color-green: #22c55e;--color-blue-300: #93c5fd;--color-blue-500: #0ea5e9;--color-blue-700: #1d4ed8;--color-blue: #0ea5e9;--color-pink-300: #fbb6ce;--color-pink-500: #ed64a6;--color-pink-700: #d53f8c;--color-pink: var(--color-pink-500);--color-purple-300: #b794f4;--color-purple-500: #805ad5;--color-purple-700: #6b46c1;--color-purple: var(--color-purple-500);--color-teal-300: #81e6d9;--color-teal-500: #38b2ac;--color-teal-700: #2c7a7b;--color-teal: var(--color-teal-500);--color-yellow-300: #fde047;--color-yellow-500: #eab308;--color-yellow-700: #a16207;--color-yellow: #eab308;--color-orange-300: #ffb066;--color-orange-500: #ff7c00;--color-orange-700: #ce6400;--color-orange: #f97316;--color-brown-300: #a1887f;--color-brown-500: #795548;--color-brown-700: #5d4037;--color-brown: var(--color-brown-500);--color-blue-10: #fafcff;--color-blue-50: #eff6ff;--color-blue-100: #dbeafe;--color-blue-200: #bfdbfe;--color-blue-400: #60a5fa;--color-blue-600: #2563eb;--color-blue-800: #1e40af;--color-blue-900: #1e3a8a;--color-blue-950: #1c366b;--color-grey-10: #fdfdfe;--color-grey-950: #0b0f19;--color-red-10: #fffbfb;--color-red-50: #fef2f2;--color-red-100: #fee2e2;--color-red-200: #fecaca;--color-red-400: #f87171;--color-red-600: #dc2626;--color-red-800: #991b1b;--color-red-900: #7f1d1d;--color-red-950: #63171a;--color-green-10: #f9fefc;--color-green-50: #ecfdf5;--color-green-100: #d1fae5;--color-green-200: #bbf7d0;--color-green-400: #4ade80;--color-green-600: #16a34a;--color-green-800: #166534;--color-green-900: #14532d;--color-green-950: #134227;--color-orange-10: #fffbf6;--color-orange-50: #fff2e5;--color-orange-100: #ffe5cc;--color-orange-200: #ffd8b4;--color-orange-400: #ff9633;--color-orange-600: #ee7400;--color-orange-800: #a45000;--color-orange-900: #5c2d00;--color-orange-950: #3c1f00;--color-yellow-10: #fffef8;--color-yellow-50: #fffbeb;--color-yellow-100: #fff9c2;--color-yellow-200: #fef08a;--color-yellow-400: #facc15;--color-yellow-600: #ca8a04;--color-yellow-800: #854d0e;--color-yellow-900: #713f12;--color-yellow-950: #633112;--grid-2: repeat(2, minmax(0, 1fr));--grid-3: repeat(3, minmax(0, 1fr));--grid-4: repeat(4, minmax(0, 1fr));--grid-5: repeat(5, minmax(0, 1fr));--grid-6: repeat(6, minmax(0, 1fr));--grid-7: repeat(7, minmax(0, 1fr));--grid-8: repeat(8, minmax(0, 1fr));--grid-9: repeat(9, minmax(0, 1fr));--grid-10: repeat(10, minmax(0, 1fr));--grid-11: repeat(11, minmax(0, 1fr));--grid-12: repeat(12, minmax(0, 1fr));--grid-page-width: var(--width-xl);--grid-page-gutter: 5vw;--grid-page-main: 2 / 3;--grid-page: minmax(var(--grid-page-gutter), 1fr) minmax(0, var(--grid-page-width)) minmax(var(--grid-page-gutter), 1fr)}.gradio-container-4-31-0 .prose{font-weight:var(--prose-text-weight);font-size:var(--text-md)}.gradio-container-4-31-0 .prose *{color:var(--body-text-color)}.gradio-container-4-31-0 .prose p{margin-bottom:var(--spacing-sm);line-height:var(--line-lg)}.gradio-container-4-31-0 .prose h1,.gradio-container-4-31-0 .prose h2,.gradio-container-4-31-0 .prose h3,.gradio-container-4-31-0 .prose h4,.gradio-container-4-31-0 .prose h5{margin:var(--spacing-xxl) 0 var(--spacing-lg);font-weight:var(--prose-header-text-weight);line-height:1.3;color:var(--body-text-color)}.gradio-container-4-31-0 .prose>*:first-child{margin-top:0}.gradio-container-4-31-0 .prose h1{margin-top:0;font-size:var(--text-xxl)}.gradio-container-4-31-0 .prose h2{font-size:var(--text-xl)}.gradio-container-4-31-0 .prose h3{font-size:var(--text-lg)}.gradio-container-4-31-0 .prose h4{font-size:1.1em}.gradio-container-4-31-0 .prose h5{font-size:1.05em}.gradio-container-4-31-0 .prose ul{list-style:circle inside}.gradio-container-4-31-0 .prose ol{list-style:decimal inside}.gradio-container-4-31-0 .prose ul>p,.gradio-container-4-31-0 .prose li>p{display:inline-block}.gradio-container-4-31-0 .prose ol,.gradio-container-4-31-0 .prose ul{margin-top:0;padding-left:0}.gradio-container-4-31-0 .prose ul ul,.gradio-container-4-31-0 .prose ul ol,.gradio-container-4-31-0 .prose ol ol,.gradio-container-4-31-0 .prose ol ul{margin:.5em 0;font-size:90%}.gradio-container-4-31-0 .prose li{margin-bottom:.5em}.gradio-container-4-31-0 .prose th,.gradio-container-4-31-0 .prose td{border-bottom:1px solid #e1e1e1;padding:12px 15px;text-align:left}.gradio-container-4-31-0 .prose button,.gradio-container-4-31-0 .prose .button,.gradio-container-4-31-0 .prose input,.gradio-container-4-31-0 .prose textarea,.gradio-container-4-31-0 .prose select,.gradio-container-4-31-0 .prose fieldset{margin-bottom:var(--spacing-sm)}.gradio-container-4-31-0 .prose pre,.gradio-container-4-31-0 .prose blockquote,.gradio-container-4-31-0 .prose dl,.gradio-container-4-31-0 .prose figure,.gradio-container-4-31-0 .prose table,.gradio-container-4-31-0 .prose p,.gradio-container-4-31-0 .prose ul,.gradio-container-4-31-0 .prose ol,.gradio-container-4-31-0 .prose form{margin-bottom:var(--spacing-md)}.gradio-container-4-31-0 .prose a{color:var(--link-text-color);text-decoration:underline}.gradio-container-4-31-0 .prose a:visited{color:var(--link-text-color-visited)}.gradio-container-4-31-0 .prose a:hover{color:var(--link-text-color-hover)}.gradio-container-4-31-0 .prose a:active{color:var(--link-text-color-active)}.gradio-container-4-31-0 .prose hr{margin-top:3em;margin-bottom:3.5em;border-width:0;border-top:1px solid #e1e1e1}.gradio-container-4-31-0 .prose blockquote{margin:var(--size-6) 0!important;border-left:5px solid var(--border-color-primary);padding-left:var(--size-2)}.gradio-container-4-31-0 .prose:last-child{margin-bottom:0!important}
Soap.AI_files/index-CgvweMVN.css ADDED
@@ -0,0 +1 @@
 
 
1
+ .load-wrap.svelte-10c4beq{display:flex;justify-content:center;align-items:center;height:100%}.loader.svelte-10c4beq{display:flex;position:relative;background-color:var(--border-color-accent-subdued);animation:svelte-10c4beq-shadowPulse 2s linear infinite;box-shadow:-24px 0 var(--border-color-accent-subdued),24px 0 var(--border-color-accent-subdued);margin:var(--spacing-md);border-radius:50%;width:10px;height:10px;scale:.5}@keyframes svelte-10c4beq-shadowPulse{33%{box-shadow:-24px 0 var(--border-color-accent-subdued),24px 0 #fff;background:#fff}66%{box-shadow:-24px 0 #fff,24px 0 #fff;background:var(--border-color-accent-subdued)}to{box-shadow:-24px 0 #fff,24px 0 var(--border-color-accent-subdued);background:#fff}}.container.svelte-10c4beq{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:var(--spacing-lg) var(--spacing-lg) 0 var(--spacing-lg)}#timeline.svelte-10c4beq{display:flex;height:var(--size-10);flex:1;position:relative}img.svelte-10c4beq{flex:1 1 auto;min-width:0;object-fit:cover;height:var(--size-12);border:1px solid var(--block-border-color);user-select:none;z-index:1}.handle.svelte-10c4beq{width:3px;background-color:var(--color-accent);cursor:ew-resize;height:var(--size-12);z-index:3;position:absolute}.opaque-layer.svelte-10c4beq{background-color:#e6672840;border:1px solid var(--color-accent);height:var(--size-12);position:absolute;z-index:2}.container.svelte-sxyn79.svelte-sxyn79{width:100%}time.svelte-sxyn79.svelte-sxyn79{color:var(--color-accent);font-weight:700;padding-left:var(--spacing-xs)}.timeline-wrapper.svelte-sxyn79.svelte-sxyn79{display:flex;align-items:center;justify-content:center;width:100%}.settings-wrapper.svelte-sxyn79.svelte-sxyn79{display:flex;justify-self:self-end}.text-button.svelte-sxyn79.svelte-sxyn79{border:1px solid var(--neutral-400);border-radius:var(--radius-sm);font-weight:300;font-size:var(--size-3);text-align:center;color:var(--neutral-400);height:var(--size-5);font-weight:700;padding:0 5px;margin-left:5px}.hidden.svelte-sxyn79.svelte-sxyn79{display:none}.text-button.svelte-sxyn79.svelte-sxyn79:hover,.text-button.svelte-sxyn79.svelte-sxyn79:focus{color:var(--color-accent);border-color:var(--color-accent)}.controls.svelte-sxyn79.svelte-sxyn79{display:grid;grid-template-columns:1fr 1fr;margin:var(--spacing-lg);overflow:hidden;text-align:left}@media (max-width: 320px){.controls.svelte-sxyn79.svelte-sxyn79{display:flex;flex-wrap:wrap}.controls.svelte-sxyn79 .svelte-sxyn79{margin:var(--spacing-sm)}.controls.svelte-sxyn79 .text-button.svelte-sxyn79{margin-left:0}}.action.svelte-sxyn79.svelte-sxyn79{width:var(--size-5);color:var(--neutral-400);margin-left:var(--spacing-md)}.action.svelte-sxyn79.svelte-sxyn79:disabled{cursor:not-allowed;color:var(--border-color-accent-subdued)}.action.svelte-sxyn79.svelte-sxyn79:disabled:hover{color:var(--border-color-accent-subdued)}.icon.svelte-sxyn79.svelte-sxyn79:hover,.icon.svelte-sxyn79.svelte-sxyn79:focus{color:var(--color-accent)}.container.svelte-sxyn79.svelte-sxyn79{display:flex;flex-direction:column}span.svelte-euo1cw.svelte-euo1cw{text-shadow:0 0 8px rgba(0,0,0,.5)}progress.svelte-euo1cw.svelte-euo1cw{margin-right:var(--size-3);border-radius:var(--radius-sm);width:var(--size-full);height:var(--size-2)}progress.svelte-euo1cw.svelte-euo1cw::-webkit-progress-bar{border-radius:2px;background-color:#fff3;overflow:hidden}progress.svelte-euo1cw.svelte-euo1cw::-webkit-progress-value{background-color:#ffffffe6}.mirror.svelte-euo1cw.svelte-euo1cw{transform:scaleX(-1)}.mirror-wrap.svelte-euo1cw.svelte-euo1cw{position:relative;height:100%;width:100%}.controls.svelte-euo1cw.svelte-euo1cw{position:absolute;bottom:0;opacity:0;transition:.5s;margin:var(--size-2);border-radius:var(--radius-md);background:var(--color-grey-800);padding:var(--size-2) var(--size-1);width:calc(100% - .75rem);width:calc(100% - var(--size-2) * 2)}.wrap.svelte-euo1cw:hover .controls.svelte-euo1cw{opacity:1}.inner.svelte-euo1cw.svelte-euo1cw{display:flex;justify-content:space-between;align-items:center;padding-right:var(--size-2);padding-left:var(--size-2);width:var(--size-full);height:var(--size-full)}.icon.svelte-euo1cw.svelte-euo1cw{display:flex;justify-content:center;cursor:pointer;width:var(--size-6);color:#fff}.time.svelte-euo1cw.svelte-euo1cw{flex-shrink:0;margin-right:var(--size-3);margin-left:var(--size-3);color:#fff;font-size:var(--text-sm);font-family:var(--font-mono)}.wrap.svelte-euo1cw.svelte-euo1cw{position:relative;background-color:var(--background-fill-secondary);height:var(--size-full);width:var(--size-full);border-radius:var(--radius-xl)}.wrap.svelte-euo1cw video{height:var(--size-full);width:var(--size-full)}.file-name.svelte-1cs6pot{padding:var(--size-6);font-size:var(--text-xxl);word-break:break-all}.file-size.svelte-1cs6pot{padding:var(--size-2);font-size:var(--text-xl)}.upload-container.svelte-1cs6pot{height:100%}.video-container.svelte-1cs6pot{display:flex;height:100%;flex-direction:column;justify-content:center;align-items:center}.icon-buttons.svelte-rvdo70{display:flex;position:absolute;top:6px;right:6px;gap:var(--size-1)}
Soap.AI_files/index-DQnOSUE6.js ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ const __vite__fileDeps=["./eventsource-CfQQVHjX.js","./_commonjsHelpers-BosuxZz1.js","./url-BybKzMWq.js","./__vite-browser-external-DFe-p4yY.js","./wrapper-CviSselG-DCvi549i.js","./Index-DT6VPx-K.js","./Index-Btj90uky.css"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]);
2
+ import*as Z from"./svelte/svelte.js";(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))r(n);new MutationObserver(n=>{for(const o of n)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&r(i)}).observe(document,{childList:!0,subtree:!0});function t(n){const o={};return n.integrity&&(o.integrity=n.integrity),n.referrerPolicy&&(o.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?o.credentials="include":n.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(n){if(n.ep)return;n.ep=!0;const o=t(n);fetch(n.href,o)}})();const Oe="modulepreload",Ae=function(e,s){return new URL(e,s).href},le={},J=function(s,t,r){let n=Promise.resolve();if(t&&t.length>0){const o=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),c=i?.nonce||i?.getAttribute("nonce");n=Promise.all(t.map(u=>{if(u=Ae(u,r),u in le)return;le[u]=!0;const l=u.endsWith(".css"),f=l?'[rel="stylesheet"]':"";if(!!r)for(let g=o.length-1;g>=0;g--){const v=o[g];if(v.href===u&&(!l||v.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${u}"]${f}`))return;const p=document.createElement("link");if(p.rel=l?"stylesheet":Oe,l||(p.as="script",p.crossOrigin=""),p.href=u,c&&p.setAttribute("nonce",c),document.head.appendChild(p),l)return new Promise((g,v)=>{p.addEventListener("load",g),p.addEventListener("error",()=>v(new Error(`Unable to preload CSS for ${u}`)))})}))}return n.then(()=>s()).catch(o=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=o,window.dispatchEvent(i),!i.defaultPrevented)throw o})};var Ce=Object.defineProperty,ke=(e,s,t)=>s in e?Ce(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,_=(e,s,t)=>(ke(e,typeof s!="symbol"?s+"":s,t),t),ee=new Intl.Collator(0,{numeric:1}).compare;function de(e,s,t){return e=e.split("."),s=s.split("."),ee(e[0],s[0])||ee(e[1],s[1])||(s[2]=s.slice(2).join("."),t=/[.-]/.test(e[2]=e.slice(2).join(".")),t==/[.-]/.test(s[2])?ee(e[2],s[2]):t?-1:1)}const Pe="upload",Te="config",Re="info",Ne="runtime",De="sleeptime",je="https://gradio-space-api-fetcher-v2.hf.space/api",_e="This application is currently busy. Please try again. ",I="Connection errored out. ",B="Could not resolve app config. ",qe="Could not get space status. ",xe="Could not get API info. ",Le="Space metadata could not be loaded. ";function me(e,s,t){return s.startsWith("http://")||s.startsWith("https://")?t?e:s:e+s}async function Ie(e,s){try{return(await(await fetch(`https://huggingface.co/api/spaces/${e}/jwt`,{headers:{Authorization:`Bearer ${s}`}})).json()).token||!1}catch{return!1}}function Ue(e){let s={};return e.forEach(({api_name:t},r)=>{t&&(s[t]=r)}),s}async function ze(e){const s=this.options.hf_token?{Authorization:`Bearer ${this.options.hf_token}`}:{};if(s["Content-Type"]="application/json",typeof window<"u"&&window.gradio_config&&location.origin!=="http://localhost:9876"&&!window.gradio_config.dev_mode){const t=window.gradio_config.root,r=window.gradio_config;let n=me(e,r.root,!1);return r.root=n,{...r,path:t}}else if(e){const t=await this.fetch(`${e}/${Te}`,{headers:s});if(t?.status===200){let r=await t.json();return r.path=r.path??"",r.root=e,r}throw new Error(B)}throw new Error(B)}function te(e){if(e.startsWith("http")){const{protocol:s,host:t}=new URL(e);return t.endsWith("hf.space")?{ws_protocol:"wss",host:t,http_protocol:s}:{ws_protocol:s==="https:"?"wss":"ws",http_protocol:s,host:t}}else if(e.startsWith("file:"))return{ws_protocol:"ws",http_protocol:"http:",host:"lite.local"};return{ws_protocol:"wss",http_protocol:"https:",host:e}}const ge=/^[^\/]*\/[^\/]*$/,Be=/.*hf\.space\/{0,1}$/;async function we(e,s){const t={};s&&(t.Authorization=`Bearer ${s}`);const r=e.trim();if(ge.test(r))try{const o=(await(await fetch(`https://huggingface.co/api/spaces/${r}/host`,{headers:t})).json()).host;return{space_id:e,...te(o)}}catch(n){throw new Error("Space metadata could not be loaded. "+n.message)}if(Be.test(r)){const{ws_protocol:n,http_protocol:o,host:i}=te(r);return{space_id:i.replace(".hf.space",""),ws_protocol:n,http_protocol:o,host:i}}return{space_id:!1,...te(r)}}function Fe(e,s,t){const r={named_endpoints:{},unnamed_endpoints:{}};return Object.keys(e).forEach(n=>{(n==="named_endpoints"||n==="unnamed_endpoints")&&(r[n]={},Object.entries(e[n]).forEach(([o,{parameters:i,returns:c}])=>{const u=s.dependencies.findIndex(a=>a.api_name===o)||t[o.replace("/","")]||-1,l=u!==-1?s.dependencies[u].types:{continuous:!1,generator:!1},f=(a,p,g,v)=>({...a,description:Ge(a.type,g),type:Me(a.type,p,g,v)||""});r[n][o]={parameters:i.map(a=>f(a,a.component,a.serializer,"parameter")),returns:c.map(a=>f(a,a.component,a.serializer,"return")),type:l}}))}),r}function Me(e,s,t,r){switch(e.type){case"string":return"string";case"boolean":return"boolean";case"number":return"number"}if(t==="JSONSerializable"||t==="StringSerializable")return"any";if(t==="ListStringSerializable")return"string[]";if(s==="Image")return r==="parameter"?"Blob | File | Buffer":"string";if(t==="FileSerializable")return e?.type==="array"?r==="parameter"?"(Blob | File | Buffer)[]":"{ name: string; data: string; size?: number; is_file?: boolean; orig_name?: string}[]":r==="parameter"?"Blob | File | Buffer":"{ name: string; data: string; size?: number; is_file?: boolean; orig_name?: string}";if(t==="GallerySerializable")return r==="parameter"?"[(Blob | File | Buffer), (string | null)][]":"[{ name: string; data: string; size?: number; is_file?: boolean; orig_name?: string}, (string | null))][]"}function Ge(e,s){return s==="GallerySerializable"?"array of [file, label] tuples":s==="ListStringSerializable"?"array of strings":s==="FileSerializable"?"array of files or single file":e.description}function se(e,s){switch(e.msg){case"send_data":return{type:"data"};case"send_hash":return{type:"hash"};case"queue_full":return{type:"update",status:{queue:!0,message:_e,stage:"error",code:e.code,success:e.success}};case"heartbeat":return{type:"heartbeat"};case"unexpected_error":return{type:"unexpected_error",status:{queue:!0,message:e.message,stage:"error",success:!1}};case"estimation":return{type:"update",status:{queue:!0,stage:s||"pending",code:e.code,size:e.queue_size,position:e.rank,eta:e.rank_eta,success:e.success}};case"progress":return{type:"update",status:{queue:!0,stage:"pending",code:e.code,progress_data:e.progress_data,success:e.success}};case"log":return{type:"log",data:e};case"process_generating":return{type:"generating",status:{queue:!0,message:e.success?null:e.output.error,stage:e.success?"generating":"error",code:e.code,progress_data:e.progress_data,eta:e.average_duration},data:e.success?e.output:null};case"process_completed":return"error"in e.output?{type:"update",status:{queue:!0,message:e.output.error,stage:"error",code:e.code,success:e.success}}:{type:"complete",status:{queue:!0,message:e.success?void 0:e.output.error,stage:e.success?"complete":"error",code:e.code,progress_data:e.progress_data},data:e.success?e.output:null};case"process_starts":return{type:"update",status:{queue:!0,stage:"pending",code:e.code,size:e.rank,position:0,success:e.success,eta:e.eta}}}return{type:"none",status:{stage:"error",queue:!0}}}const Je=(e,s)=>{const t=Object.values(s.named_endpoints).flatMap(o=>o.parameters);if(Array.isArray(e))return e.length>t.length&&console.warn("Too many arguments provided for the endpoint."),e;const r=[],n=Object.keys(e);return t.forEach((o,i)=>{if(e.hasOwnProperty(o.parameter_name))r[i]=e[o.parameter_name];else if(o.parameter_has_default)r[i]=o.parameter_default;else throw new Error(`No value provided for required parameter: ${o.parameter_name}`)}),n.forEach(o=>{if(!t.some(i=>i.parameter_name===o))throw new Error(`Parameter \`${o}\` is not a valid keyword argument. Please refer to the API for usage.`)}),r.forEach((o,i)=>{if(o===void 0&&!t[i].parameter_has_default)throw new Error(`No value provided for required parameter: ${t[i].parameter_name}`)}),r};async function We(){if(this.api_info)return this.api_info;const{hf_token:e}=this.options,{config:s}=this,t={"Content-Type":"application/json"};if(e&&(t.Authorization=`Bearer ${e}`),!!s)try{let r;if(de(s?.version||"2.0.0","3.30")<0?r=await this.fetch(je,{method:"POST",body:JSON.stringify({serialize:!1,config:JSON.stringify(s)}),headers:t}):r=await this.fetch(`${s?.root}/${Re}`,{headers:t}),!r.ok)throw new Error(I);let n=await r.json();return"api"in n&&(n=n.api),n.named_endpoints["/predict"]&&!n.unnamed_endpoints[0]&&(n.unnamed_endpoints[0]=n.named_endpoints["/predict"]),Fe(n,s,this.api_map)}catch(r){""+r.message}}async function He(e,s,t){var r;const n={};(r=this==null?void 0:this.options)!=null&&r.hf_token&&(n.Authorization=`Bearer ${this.options.hf_token}`);const o=1e3,i=[];let c;for(let u=0;u<s.length;u+=o){const l=s.slice(u,u+o),f=new FormData;l.forEach(p=>{f.append("files",p)});try{const p=t?`${e}/upload?upload_id=${t}`:`${e}/${Pe}`;c=await this.fetch(p,{method:"POST",body:f,headers:n})}catch(p){throw new Error(I+p.message)}if(!c.ok){const p=await c.text();return{error:`HTTP ${c.status}: ${p}`}}const a=await c.json();a&&i.push(...a)}return{files:i}}async function Ke(e,s,t,r){let n=(Array.isArray(e)?e:[e]).map(i=>i.blob);const o=n.filter(i=>i.size>(r??1/0));if(o.length)throw new Error(`File size exceeds the maximum allowed size of ${r} bytes: ${o.map(i=>i.name).join(", ")}`);return await Promise.all(await this.upload_files(s,n,t).then(async i=>{if(i.error)throw new Error(i.error);return i.files?i.files.map((c,u)=>new ce({...e[u],path:c,url:s+"/file="+c})):[]}))}async function _t(e,s){return e.map(t=>new ce({path:t.name,orig_name:t.name,blob:t,size:t.size,mime_type:t.type,is_stream:s}))}class ce{constructor({path:s,url:t,orig_name:r,size:n,blob:o,is_stream:i,mime_type:c,alt_text:u}){_(this,"path"),_(this,"url"),_(this,"orig_name"),_(this,"size"),_(this,"blob"),_(this,"is_stream"),_(this,"mime_type"),_(this,"alt_text"),_(this,"meta",{_type:"gradio.FileData"}),this.path=s,this.url=t,this.orig_name=r,this.size=n,this.blob=t?void 0:o,this.is_stream=i,this.mime_type=c,this.alt_text=u}}function ue(e,s,t){for(;t.length>1;){const n=t.shift();if(typeof n=="string"||typeof n=="number")e=e[n];else throw new Error("Invalid key type")}const r=t.shift();if(typeof r=="string"||typeof r=="number")e[r]=s;else throw new Error("Invalid key type")}async function ne(e,s=void 0,t=[],r=!1,n=void 0){if(Array.isArray(e)){let o=[];return await Promise.all(e.map(async i=>{var c;let u=t.slice();u.push(i);const l=await ne(e[i],r?((c=n?.parameters[i])==null?void 0:c.component)||void 0:s,u,!1,n);o=o.concat(l)})),o}else{if(globalThis.Buffer&&e instanceof globalThis.Buffer||e instanceof Blob)return[{path:t,blob:s==="Image"?!1:new oe([e]),type:s}];if(typeof e=="object"&&e!==null){let o=[];for(const i of Object.keys(e)){const c=[...t,i],u=e[i];o=o.concat(await ne(u,void 0,c,!1,n))}return!o.length&&!(e instanceof Blob||e instanceof ArrayBuffer||e instanceof Uint8Array)?[{path:t,blob:new oe([JSON.stringify(e)]),type:typeof e}]:o}}return[]}function Ve(e,s){var t,r;return((r=(t=s?.dependencies)==null?void 0:t[e])==null?void 0:r.queue)!==null?!s.dependencies[e].queue:!s.enable_queue}function Ye(e,s){return new Promise((t,r)=>{const n=new MessageChannel;n.port1.onmessage=({data:o})=>{n.port1.close(),t(o)},window.parent.postMessage(e,s,[n.port2])})}async function Qe(e,s,t){const r=this,n=await ne(s,void 0,[],!0,t);return(await Promise.all(n.map(async({path:i,blob:c,type:u})=>{if(!c)return{path:i,type:u};const l=await r.upload_files(e,[c]),f=l.files&&l.files[0];return{path:i,file_url:f,type:u,name:c instanceof File?c?.name:void 0}}))).forEach(({path:i,file_url:c,type:u,name:l})=>{if(u==="Gallery")ue(s,c,i);else if(c){const f=new ce({path:c,orig_name:l});ue(s,f,i)}}),s}async function Xe(e,s,t){const r={"Content-Type":"application/json"};this.options.hf_token&&(r.Authorization=`Bearer ${this.options.hf_token}`);try{var n=await this.fetch(e,{method:"POST",body:JSON.stringify(s),headers:{...r,...t}})}catch{return[{error:I},500]}let o,i;try{o=await n.json(),i=n.status}catch(c){o={error:`Could not parse server response: ${c}`},i=500}return[o,i]}async function Ze(e,s){let t=!1,r=!1,n;if(!this.config)throw new Error("Could not resolve app config");if(typeof e=="number")n=this.config.dependencies[e];else{const o=e.replace(/^\//,"");n=this.config.dependencies[this.api_map[o]]}if(n?.types.continuous)throw new Error("Cannot call predict on this function as it may run forever. Use submit instead");return new Promise(async(o,i)=>{const c=this.submit(e,s);let u;c.on("data",l=>{r&&(c.destroy(),o(l)),t=!0,u=l}).on("status",l=>{l.stage==="error"&&i(l),l.stage==="complete"&&(r=!0,t&&(c.destroy(),o(u)))})})}async function re(e,s,t){let r=s==="subdomain"?`https://huggingface.co/api/spaces/by-subdomain/${e}`:`https://huggingface.co/api/spaces/${e}`,n,o;try{if(n=await fetch(r),o=n.status,o!==200)throw new Error;n=await n.json()}catch{t({status:"error",load_status:"error",message:qe,detail:"NOT_FOUND"});return}if(!n||o!==200)return;const{runtime:{stage:i},id:c}=n;switch(i){case"STOPPED":case"SLEEPING":t({status:"sleeping",load_status:"pending",message:"Space is asleep. Waking it up...",detail:i}),setTimeout(()=>{re(e,s,t)},1e3);break;case"PAUSED":t({status:"paused",load_status:"error",message:"This space has been paused by the author. If you would like to try this demo, consider duplicating the space.",detail:i,discussions_enabled:await pe(c)});break;case"RUNNING":case"RUNNING_BUILDING":t({status:"running",load_status:"complete",message:"",detail:i});break;case"BUILDING":t({status:"building",load_status:"pending",message:"Space is building...",detail:i}),setTimeout(()=>{re(e,s,t)},1e3);break;default:t({status:"space_error",load_status:"error",message:"This space is experiencing an issue.",detail:i,discussions_enabled:await pe(c)});break}}const et=/^(?=[^]*\b[dD]iscussions{0,1}\b)(?=[^]*\b[dD]isabled\b)[^]*$/;async function pe(e){try{const t=(await fetch(`https://huggingface.co/api/spaces/${e}/discussions`,{method:"HEAD"})).headers.get("x-error-message");return!(t&&et.test(t))}catch{return!1}}async function tt(e,s){const t={};s&&(t.Authorization=`Bearer ${s}`);try{const r=await fetch(`https://huggingface.co/api/spaces/${e}/${Ne}`,{headers:t});if(r.status!==200)throw new Error("Space hardware could not be obtained.");const{hardware:n}=await r.json();return n.current}catch(r){throw new Error(r.message)}}async function st(e,s,t){const r={};t&&(r.Authorization=`Bearer ${t}`);const n={seconds:s};try{const o=await fetch(`https://huggingface.co/api/spaces/${e}/${De}`,{method:"POST",headers:{"Content-Type":"application/json",...r},body:JSON.stringify(n)});if(o.status!==200)throw new Error("Could not set sleep timeout on duplicated Space. Please visit *ADD HF LINK TO SETTINGS* to set a timeout manually to reduce billing charges.");return await o.json()}catch(o){throw new Error(o.message)}}const he=["cpu-basic","cpu-upgrade","cpu-xl","t4-small","t4-medium","a10g-small","a10g-large","a10g-largex2","a10g-largex4","a100-large","zero-a10g","h100","h100x8"];async function nt(e,s){const{hf_token:t,private:r,hardware:n,timeout:o}=s;if(n&&!he.includes(n))throw new Error(`Invalid hardware type provided. Valid types are: ${he.map(p=>`"${p}"`).join(",")}.`);const i={Authorization:`Bearer ${t}`,"Content-Type":"application/json"},c=(await(await fetch("https://huggingface.co/api/whoami-v2",{headers:i})).json()).name,u=e.split("/")[1],l={repository:`${c}/${u}`};r&&(l.private=!0);let f;try{n||(f=await tt(e,t))}catch(p){throw Error(Le+p.message)}const a=n||f||"cpu-basic";l.hardware=a;try{const p=await fetch(`https://huggingface.co/api/spaces/${e}/duplicate`,{method:"POST",headers:i,body:JSON.stringify(l)});if(p.status===409)try{return await H.connect(`${c}/${u}`,s)}catch(v){throw console.error("Failed to connect Client instance:",v),v}else if(p.status!==200)throw new Error(p.statusText);const g=await p.json();return await st(`${c}/${u}`,o||300,t),await H.connect(rt(g.url),s)}catch(p){throw new Error(p)}}function rt(e){const s=/https:\/\/huggingface.co\/spaces\/([^/]+\/[^/]+)/,t=e.match(s);if(t)return t[1]}async function ot(){let{event_callbacks:e,unclosed_events:s,pending_stream_messages:t,stream_status:r,config:n,jwt:o}=this;if(!n)throw new Error("Could not resolve app config");r.open=!0;let i=null,c=new URLSearchParams({session_hash:this.session_hash}).toString(),u=new URL(`${n.root}/queue/data?${c}`);if(o&&u.searchParams.set("__sign",o),i=await this.stream(u),!i){console.warn("Cannot connect to SSE endpoint: "+u.toString());return}i.onmessage=async function(l){let f=JSON.parse(l.data);if(f.msg==="close_stream"){W(r,i);return}const a=f.event_id;if(!a)await Promise.all(Object.keys(e).map(p=>e[p](f)));else if(e[a]&&n){f.msg==="process_completed"&&["sse","sse_v1","sse_v2","sse_v2.1"].includes(n.protocol)&&(s.delete(a),s.size===0&&W(r,i));let p=e[a];typeof window<"u"?window.setTimeout(p,0,f):setImmediate(p,f)}else t[a]||(t[a]=[]),t[a].push(f)},i.onerror=async function(){await Promise.all(Object.keys(e).map(l=>e[l]({msg:"unexpected_error",message:I}))),W(r,i)}}function W(e,s){e&&s&&(e.open=!1,s?.close())}function it(e,s,t){!e[s]?(e[s]=[],t.data.forEach((n,o)=>{e[s][o]=n})):t.data.forEach((n,o)=>{let i=at(e[s][o],n);e[s][o]=i,t.data[o]=i})}function at(e,s){return s.forEach(([t,r,n])=>{e=ct(e,r,t,n)}),e}function ct(e,s,t,r){if(s.length===0){if(t==="replace")return r;if(t==="append")return e+r;throw new Error(`Unsupported action: ${t}`)}let n=e;for(let i=0;i<s.length-1;i++)n=n[s[i]];const o=s[s.length-1];switch(t){case"replace":n[o]=r;break;case"append":n[o]+=r;break;case"add":Array.isArray(n)?n.splice(Number(o),0,r):n[o]=r;break;case"delete":Array.isArray(n)?n.splice(Number(o),1):delete n[o];break;default:throw new Error(`Unknown action: ${t}`)}return e}function lt(e,s,t,r){try{let n=function(w){const A=z[w.type]||[];A?.forEach(m=>m(w))},o=function(w,E){const A=z,m=A[w]||[];return A[w]=m,m?.push(E),{on:o,off:i,cancel:Q,destroy:c}},i=function(w,E){const A=z;let m=A[w]||[];return m=m?.filter(j=>j!==E),A[w]=m,{on:o,off:i,cancel:Q,destroy:c}},c=function(){var w;for(const E in z)z&&((w=z[E])==null||w.forEach(A=>{i(E,A)}))};const{hf_token:u}=this.options,{fetch:l,app_reference:f,config:a,session_hash:p,api_info:g,api_map:v,stream_status:U,pending_stream_messages:F,pending_diff_streams:M,event_callbacks:K,unclosed_events:ve,post_data:V}=this;if(!g)throw new Error("No API found");if(!a)throw new Error("Could not resolve app config");let{fn_index:h,endpoint_info:Se,dependency:Ee}=ut(g,e,v,a),$e=Je(s,g),$,k,R=a.protocol??"ws";const d=typeof e=="number"?"/predict":e;let G,S=null,O=!1;const z={};let Y={},L=typeof window<"u"?new URLSearchParams(window.location.search).toString():"";async function Q(){const w={stage:"complete",queue:!1,time:new Date};O=w,n({...w,type:"status",endpoint:d,fn_index:h});let E={};R==="ws"?($&&$.readyState===0?$.addEventListener("open",()=>{$.close()}):$.close(),E={fn_index:h,session_hash:p}):(k?.close(),E={event_id:S});try{if(!a)throw new Error("Could not resolve app config");await l(`${a.root}/reset`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify(E)})}catch{console.warn("The `/reset` endpoint could not be called. Subsequent endpoint results may be unreliable.")}}return this.handle_blob(a.root,$e,Se).then(async w=>{var E;if(G={data:w||[],event_data:t,fn_index:h,trigger_id:r},Ve(h,a))n({type:"status",endpoint:d,stage:"pending",queue:!1,fn_index:h,time:new Date}),V(`${a.root}/run${d.startsWith("/")?d:`/${d}`}${L?"?"+L:""}`,{...G,session_hash:p}).then(([m,j])=>{const N=m.data;j==200?(n({type:"data",endpoint:d,fn_index:h,data:N,time:new Date,event_data:t,trigger_id:r}),n({type:"status",endpoint:d,fn_index:h,stage:"complete",eta:m.average_duration,queue:!1,time:new Date})):n({type:"status",stage:"error",endpoint:d,fn_index:h,message:m.error,queue:!1,time:new Date})}).catch(m=>{n({type:"status",stage:"error",message:m.message,endpoint:d,fn_index:h,queue:!1,time:new Date})});else if(R=="ws"){const{ws_protocol:m,host:j}=await we(f,u);n({type:"status",stage:"pending",queue:!0,endpoint:d,fn_index:h,time:new Date});let N=new URL(`${m}://${me(j,a.path,!0)}/queue/join${L?"?"+L:""}`);this.jwt&&N.searchParams.set("__sign",this.jwt),$=new WebSocket(N),$.onclose=T=>{T.wasClean||n({type:"status",stage:"error",broken:!0,message:I,queue:!0,endpoint:d,fn_index:h,time:new Date})},$.onmessage=function(T){const P=JSON.parse(T.data),{type:b,status:C,data:D}=se(P,Y[h]);if(b==="update"&&C&&!O)n({type:"status",endpoint:d,fn_index:h,time:new Date,...C}),C.stage==="error"&&$.close();else if(b==="hash"){$.send(JSON.stringify({fn_index:h,session_hash:p}));return}else b==="data"?$.send(JSON.stringify({...G,session_hash:p})):b==="complete"?O=C:b==="log"?n({type:"log",log:D.log,level:D.level,endpoint:d,fn_index:h}):b==="generating"&&n({type:"status",time:new Date,...C,stage:C?.stage,queue:!0,endpoint:d,fn_index:h});D&&(n({type:"data",time:new Date,data:D.data,endpoint:d,fn_index:h,event_data:t,trigger_id:r}),O&&(n({type:"status",time:new Date,...O,stage:C?.stage,queue:!0,endpoint:d,fn_index:h}),$.close()))},de(a.version||"2.0.0","3.6")<0&&addEventListener("open",()=>$.send(JSON.stringify({hash:p})))}else if(R=="sse"){n({type:"status",stage:"pending",queue:!0,endpoint:d,fn_index:h,time:new Date});var A=new URLSearchParams({fn_index:h.toString(),session_hash:p}).toString();let m=new URL(`${a.root}/queue/join?${L?L+"&":""}${A}`);if(this.jwt&&m.searchParams.set("__sign",this.jwt),k=await this.stream(m),!k)return Promise.reject(new Error("Cannot connect to SSE endpoint: "+m.toString()));k.onmessage=async function(j){const N=JSON.parse(j.data),{type:T,status:P,data:b}=se(N,Y[h]);if(T==="update"&&P&&!O)n({type:"status",endpoint:d,fn_index:h,time:new Date,...P}),P.stage==="error"&&k?.close();else if(T==="data"){S=N.event_id;let[C,D]=await V(`${a.root}/queue/data`,{...G,session_hash:p,event_id:S});D!==200&&(n({type:"status",stage:"error",message:I,queue:!0,endpoint:d,fn_index:h,time:new Date}),k?.close())}else T==="complete"?O=P:T==="log"?n({type:"log",log:b.log,level:b.level,endpoint:d,fn_index:h}):T==="generating"&&n({type:"status",time:new Date,...P,stage:P?.stage,queue:!0,endpoint:d,fn_index:h});b&&(n({type:"data",time:new Date,data:b.data,endpoint:d,fn_index:h,event_data:t,trigger_id:r}),O&&(n({type:"status",time:new Date,...O,stage:P?.stage,queue:!0,endpoint:d,fn_index:h}),k?.close()))}}else if(R=="sse_v1"||R=="sse_v2"||R=="sse_v2.1"||R=="sse_v3"){n({type:"status",stage:"pending",queue:!0,endpoint:d,fn_index:h,time:new Date});let m="";typeof window<"u"&&(m=(E=window?.location)==null?void 0:E.hostname);const N=m.includes(".dev.")?`https://moon-${m.split(".")[1]}.dev.spaces.huggingface.tech`:"https://huggingface.co";(Ee.zerogpu&&window.parent!=window&&a.space_id?Ye("zerogpu-headers",N):Promise.resolve(null)).then(b=>V(`${a.root}/queue/join?${L}`,{...G,session_hash:p},b)).then(async([b,C])=>{if(C===503)n({type:"status",stage:"error",message:_e,queue:!0,endpoint:d,fn_index:h,time:new Date});else if(C!==200)n({type:"status",stage:"error",message:I,queue:!0,endpoint:d,fn_index:h,time:new Date});else{S=b.event_id;let D=async function(X){try{const{type:q,status:y,data:x}=se(X,Y[h]);if(q=="heartbeat")return;if(q==="update"&&y&&!O)n({type:"status",endpoint:d,fn_index:h,time:new Date,...y});else if(q==="complete")O=y;else if(q=="unexpected_error")console.error("Unexpected error",y?.message),n({type:"status",stage:"error",message:y?.message||"An Unexpected Error Occurred!",queue:!0,endpoint:d,fn_index:h,time:new Date});else if(q==="log"){n({type:"log",log:x.log,level:x.level,endpoint:d,fn_index:h});return}else q==="generating"&&(n({type:"status",time:new Date,...y,stage:y?.stage,queue:!0,endpoint:d,fn_index:h}),x&&["sse_v2","sse_v2.1","sse_v3"].includes(R)&&it(M,S,x));x&&(n({type:"data",time:new Date,data:x.data,endpoint:d,fn_index:h}),x.render_config&&n({type:"render",data:x.render_config,endpoint:d,fn_index:h}),O&&n({type:"status",time:new Date,...O,stage:y?.stage,queue:!0,endpoint:d,fn_index:h})),(y?.stage==="complete"||y?.stage==="error")&&(K[S]&&delete K[S],S in M&&delete M[S])}catch(q){console.error("Unexpected client exception",q),n({type:"status",stage:"error",message:"An Unexpected Error Occurred!",queue:!0,endpoint:d,fn_index:h,time:new Date}),["sse_v2","sse_v2.1"].includes(R)&&(W(U,k),U.open=!1)}};S in F&&(F[S].forEach(X=>D(X)),delete F[S]),K[S]=D,ve.add(S),U.open||await this.open_stream()}})}}),{on:o,off:i,cancel:Q,destroy:c}}catch(n){throw console.error("Submit function encountered an error:",n),n}}function ut(e,s,t,r){let n,o,i;if(typeof s=="number")n=s,o=e.unnamed_endpoints[n],i=r.dependencies[s];else{const c=s.replace(/^\//,"");n=t[c],o=e.named_endpoints[s.trim()],i=r.dependencies[t[c]]}if(typeof n!="number")throw new Error("There is no endpoint matching that name of fn_index matching that number.");return{fn_index:n,endpoint_info:o,dependency:i}}class oe extends Blob{constructor(s,t){super(s,t)}}class H{constructor(s,t={}){_(this,"app_reference"),_(this,"options"),_(this,"config"),_(this,"api_info"),_(this,"api_map",{}),_(this,"session_hash",Math.random().toString(36).substring(2)),_(this,"jwt",!1),_(this,"last_status",{}),_(this,"stream_status",{open:!1}),_(this,"pending_stream_messages",{}),_(this,"pending_diff_streams",{}),_(this,"event_callbacks",{}),_(this,"unclosed_events",new Set),_(this,"heartbeat_event",null),_(this,"view_api"),_(this,"upload_files"),_(this,"upload"),_(this,"handle_blob"),_(this,"post_data"),_(this,"submit"),_(this,"predict"),_(this,"open_stream"),_(this,"resolve_config"),this.app_reference=s,this.options=t,this.view_api=We.bind(this),this.upload_files=He.bind(this),this.handle_blob=Qe.bind(this),this.post_data=Xe.bind(this),this.submit=lt.bind(this),this.predict=Ze.bind(this),this.open_stream=ot.bind(this),this.resolve_config=ze.bind(this),this.upload=Ke.bind(this)}fetch(s,t){return fetch(s,t)}async stream(s){if(typeof window>"u"||typeof EventSource>"u")try{const t=await J(()=>import("./eventsource-CfQQVHjX.js").then(r=>r.e),__vite__mapDeps([0,1,2,3]),import.meta.url);return new t.default(s.toString())}catch(t){throw console.error("Failed to load EventSource module:",t),t}else return new EventSource(s.toString())}async init(){var s;if((typeof window>"u"||!("WebSocket"in window))&&!global.WebSocket){const t=await J(()=>import("./wrapper-CviSselG-DCvi549i.js"),__vite__mapDeps([4,3]),import.meta.url);oe=(await J(()=>import("./__vite-browser-external-DFe-p4yY.js").then(r=>r._),[],import.meta.url)).Blob,global.WebSocket=t.WebSocket}try{await this._resolve_config().then(async({config:t})=>{if(t&&(this.config=t,this.config&&this.config.connect_heartbeat)){const r=new URL(`${this.config.root}/heartbeat/${this.session_hash}`);this.heartbeat_event=await this.stream(r),this.config.space_id&&this.options.hf_token&&(this.jwt=await Ie(this.config.space_id,this.options.hf_token))}})}catch(t){throw Error(B+t.message)}this.api_info=await this.view_api(),this.api_map=Ue(((s=this.config)==null?void 0:s.dependencies)||[])}static async connect(s,t={}){const r=new this(s,t);return await r.init(),r}close(){var s;(s=this.heartbeat_event)==null||s.close()}static async duplicate(s,t={}){return nt(s,t)}async _resolve_config(){const{http_protocol:s,host:t,space_id:r}=await we(this.app_reference,this.options.hf_token),{status_callback:n}=this.options;let o;try{if(o=await this.resolve_config(`${s}//${t}`),!o)throw new Error(B);return this.config_success(o)}catch(i){console.error(i),r?re(r,ge.test(r)?"space_name":"subdomain",this.handle_space_success):n&&n({status:"error",message:"Could not load this space.",load_status:"error",detail:"NOT_FOUND"})}}async config_success(s){if(this.config=s,typeof window<"u"&&window.location.protocol==="https:"&&(this.config.root=this.config.root.replace("http://","https://")),this.config.auth_required)return this.prepare_return_obj();try{this.api_info=await this.view_api()}catch(t){console.error(xe+t.message)}return this.prepare_return_obj()}async handle_space_success(s){const{status_callback:t}=this.options;if(t&&t(s),s.status==="running")try{if(this.config=await this._resolve_config(),!this.config)throw new Error(B);return await this.config_success(this.config)}catch(r){console.error(r),t&&t({status:"error",message:"Could not load this space.",load_status:"error",detail:"NOT_FOUND"})}}async component_server(s,t,r){var n;if(!this.config)throw new Error(B);const o={},{hf_token:i}=this.options,{session_hash:c}=this;i&&(o.Authorization=`Bearer ${this.options.hf_token}`);let u,l=this.config.components.find(a=>a.id===s);(n=l?.props)!=null&&n.root_url?u=l.props.root_url:u=this.config.root;let f;if("binary"in r){f=new FormData;for(const a in r.data)a!=="binary"&&f.append(a,r.data[a]);f.set("component_id",s.toString()),f.set("fn_name",t),f.set("session_hash",c)}else f=JSON.stringify({data:r,component_id:s,fn_name:t,session_hash:c}),o["Content-Type"]="application/json";i&&(o.Authorization=`Bearer ${i}`);try{const a=await this.fetch(`${u}/component_server/`,{method:"POST",body:f,headers:o});if(!a.ok)throw new Error("Could not connect to component server: "+a.statusText);return await a.json()}catch(a){console.warn(a)}}prepare_return_obj(){return{config:this.config,predict:this.predict,submit:this.submit,view_api:this.view_api,component_server:this.component_server}}}let ye=!1;"attachShadow"in Element.prototype&&"adoptedStyleSheets"in Document.prototype&&(ye="adoptedStyleSheets"in document.createElement("div").attachShadow({mode:"open"}));function fe(e,s){const t=new URL(import.meta.url).origin,r=new URL(e,t).href;if(document.querySelector(`link[href='${r}']`))return Promise.resolve();const o=document.createElement("link");return o.rel="stylesheet",o.href=r,new Promise((i,c)=>{o.addEventListener("load",()=>i()),o.addEventListener("error",()=>{console.error(`Unable to preload CSS for ${r}`),i()}),s.appendChild(o)})}function mt(e,s,t=document.createElement("style")){if(!ye)return null;t.remove();const r=new CSSStyleSheet;r.replaceSync(e);let n="";e=e.replace(/@import\s+url\((.*?)\);\s*/g,(u,l)=>(n+=`@import url(${l});
3
+ `,""));const o=r.cssRules;let i="",c=`gradio-app .gradio-container.gradio-container-${s} .contain `;for(let u=0;u<o.length;u++){const l=o[u];let f=l.cssText.includes(".dark");if(l instanceof CSSStyleRule){const a=l.selectorText;if(a){const p=a.replace(".dark","").split(",").map(g=>`${f?".dark":""} ${c} ${g.trim()} `).join(",");i+=l.cssText,i+=l.cssText.replace(a,p)}}else if(l instanceof CSSMediaRule){let a=`@media ${l.media.mediaText} {`;for(let p=0;p<l.cssRules.length;p++){const g=l.cssRules[p];if(g instanceof CSSStyleRule){let v=g.cssText.includes(".dark ");const U=g.selectorText,F=U.replace(".dark","").split(",").map(M=>`${v?".dark":""} ${c} ${M.trim()} `).join(",");a+=g.cssText.replace(U,F)}}a+="}",i+=a}else if(l instanceof CSSKeyframesRule){i+=`@keyframes ${l.name} {`;for(let a=0;a<l.cssRules.length;a++){const p=l.cssRules[a];p instanceof CSSKeyframeRule&&(i+=`${p.keyText} { ${p.style.cssText} }`)}i+="}"}else l instanceof CSSFontFaceRule&&(i+=`@font-face { ${l.style.cssText} }`)}return i=n+i,t.textContent=i,document.head.appendChild(t),t}const pt="./assets/index-C2tw9baX.css";let ie;ie=[];let ae,be,ht=new Promise(e=>{be=e});async function ft(){ae=(await J(()=>import("./Index-DT6VPx-K.js").then(e=>e.f),__vite__mapDeps([5,1,6]),import.meta.url)).default,be()}function dt(){const e={SvelteComponent:Z.SvelteComponent};for(const t in Z)t!=="SvelteComponent"&&(t==="SvelteComponentDev"?e[t]=e.SvelteComponent:e[t]=Z[t]);window.__gradio__svelte__internal=e;class s extends HTMLElement{constructor(){super(),this.host=this.getAttribute("host"),this.space=this.getAttribute("space"),this.src=this.getAttribute("src"),this.control_page_title=this.getAttribute("control_page_title"),this.initial_height=this.getAttribute("initial_height")??"300px",this.is_embed=this.getAttribute("embed")??"true",this.container=this.getAttribute("container")??"true",this.info=this.getAttribute("info")??!0,this.autoscroll=this.getAttribute("autoscroll"),this.eager=this.getAttribute("eager"),this.theme_mode=this.getAttribute("theme_mode"),this.updating=!1,this.loading=!1}async connectedCallback(){await ft(),this.loading=!0,this.app&&this.app.$destroy(),typeof ie!="string"&&ie.forEach(o=>fe(o,document.head)),await fe(pt,document.head);const r=new CustomEvent("domchange",{bubbles:!0,cancelable:!1,composed:!0});new MutationObserver(o=>{this.dispatchEvent(r)}).observe(this,{childList:!0}),this.app=new ae({target:this,props:{space:this.space?this.space.trim():this.space,src:this.src?this.src.trim():this.src,host:this.host?this.host.trim():this.host,info:this.info!=="false",container:this.container!=="false",is_embed:this.is_embed!=="false",initial_height:this.initial_height,eager:this.eager==="true",version:"4-31-0",theme_mode:this.theme_mode,autoscroll:this.autoscroll==="true",control_page_title:this.control_page_title==="true",Client:H,app_mode:window.__gradio_mode__==="app"}}),this.updating&&this.setAttribute(this.updating.name,this.updating.value),this.loading=!1}static get observedAttributes(){return["src","space","host"]}async attributeChangedCallback(r,n,o){if(await ht,(r==="host"||r==="space"||r==="src")&&o!==n){if(this.updating={name:r,value:o},this.loading)return;this.app&&this.app.$destroy(),this.space=null,this.host=null,this.src=null,r==="host"?this.host=o:r==="space"?this.space=o:r==="src"&&(this.src=o),this.app=new ae({target:this,props:{space:this.space?this.space.trim():this.space,src:this.src?this.src.trim():this.src,host:this.host?this.host.trim():this.host,info:this.info!=="false",container:this.container!=="false",is_embed:this.is_embed!=="false",initial_height:this.initial_height,eager:this.eager==="true",version:"4-31-0",theme_mode:this.theme_mode,autoscroll:this.autoscroll==="true",control_page_title:this.control_page_title==="true",Client:H,app_mode:window.__gradio_mode__==="app"}}),this.updating=!1}}}customElements.get("gradio-app")||customElements.define("gradio-app",s)}dt();export{J as _,mt as a,fe as m,_t as p};
4
+ //# sourceMappingURL=index-DQnOSUE6.js.map
Soap.AI_files/js ADDED
The diff for this file is too large to render. See raw diff
 
Soap.AI_files/js(1) ADDED
The diff for this file is too large to render. See raw diff
 
Soap.AI_files/theme.css ADDED
@@ -0,0 +1,420 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ :root {
2
+ --name: default;
3
+ --primary-50: #fff7ed;
4
+ --primary-100: #ffedd5;
5
+ --primary-200: #fed7aa;
6
+ --primary-300: #fdba74;
7
+ --primary-400: #fb923c;
8
+ --primary-500: #f97316;
9
+ --primary-600: #ea580c;
10
+ --primary-700: #c2410c;
11
+ --primary-800: #9a3412;
12
+ --primary-900: #7c2d12;
13
+ --primary-950: #6c2e12;
14
+ --secondary-50: #eff6ff;
15
+ --secondary-100: #dbeafe;
16
+ --secondary-200: #bfdbfe;
17
+ --secondary-300: #93c5fd;
18
+ --secondary-400: #60a5fa;
19
+ --secondary-500: #3b82f6;
20
+ --secondary-600: #2563eb;
21
+ --secondary-700: #1d4ed8;
22
+ --secondary-800: #1e40af;
23
+ --secondary-900: #1e3a8a;
24
+ --secondary-950: #1d3660;
25
+ --neutral-50: #f9fafb;
26
+ --neutral-100: #f3f4f6;
27
+ --neutral-200: #e5e7eb;
28
+ --neutral-300: #d1d5db;
29
+ --neutral-400: #9ca3af;
30
+ --neutral-500: #6b7280;
31
+ --neutral-600: #4b5563;
32
+ --neutral-700: #374151;
33
+ --neutral-800: #1f2937;
34
+ --neutral-900: #111827;
35
+ --neutral-950: #0b0f19;
36
+ --spacing-xxs: 1px;
37
+ --spacing-xs: 2px;
38
+ --spacing-sm: 4px;
39
+ --spacing-md: 6px;
40
+ --spacing-lg: 8px;
41
+ --spacing-xl: 10px;
42
+ --spacing-xxl: 16px;
43
+ --radius-xxs: 1px;
44
+ --radius-xs: 2px;
45
+ --radius-sm: 4px;
46
+ --radius-md: 6px;
47
+ --radius-lg: 8px;
48
+ --radius-xl: 12px;
49
+ --radius-xxl: 22px;
50
+ --text-xxs: 9px;
51
+ --text-xs: 10px;
52
+ --text-sm: 12px;
53
+ --text-md: 14px;
54
+ --text-lg: 16px;
55
+ --text-xl: 22px;
56
+ --text-xxl: 26px;
57
+ --font: 'Source Sans Pro', 'ui-sans-serif', 'system-ui', sans-serif;
58
+ --font-mono: 'IBM Plex Mono', 'ui-monospace', 'Consolas', monospace;
59
+ --body-background-fill: var(--background-fill-primary);
60
+ --body-text-color: var(--neutral-800);
61
+ --body-text-size: var(--text-md);
62
+ --body-text-weight: 400;
63
+ --embed-radius: var(--radius-lg);
64
+ --color-accent: var(--primary-500);
65
+ --color-accent-soft: var(--primary-50);
66
+ --background-fill-primary: white;
67
+ --background-fill-secondary: var(--neutral-50);
68
+ --border-color-accent: var(--primary-300);
69
+ --border-color-primary: var(--neutral-200);
70
+ --link-text-color: var(--secondary-600);
71
+ --link-text-color-active: var(--secondary-600);
72
+ --link-text-color-hover: var(--secondary-700);
73
+ --link-text-color-visited: var(--secondary-500);
74
+ --body-text-color-subdued: var(--neutral-400);
75
+ --shadow-drop: rgba(0,0,0,0.05) 0px 1px 2px 0px;
76
+ --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
77
+ --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;
78
+ --shadow-spread: 3px;
79
+ --block-background-fill: var(--background-fill-primary);
80
+ --block-border-color: var(--border-color-primary);
81
+ --block-border-width: 1px;
82
+ --block-info-text-color: var(--body-text-color-subdued);
83
+ --block-info-text-size: var(--text-sm);
84
+ --block-info-text-weight: 400;
85
+ --block-label-background-fill: var(--background-fill-primary);
86
+ --block-label-border-color: var(--border-color-primary);
87
+ --block-label-border-width: 1px;
88
+ --block-label-shadow: var(--block-shadow);
89
+ --block-label-text-color: var(--neutral-500);
90
+ --block-label-margin: 0;
91
+ --block-label-padding: var(--spacing-sm) var(--spacing-lg);
92
+ --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;
93
+ --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);
94
+ --block-label-text-size: var(--text-sm);
95
+ --block-label-text-weight: 400;
96
+ --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);
97
+ --block-radius: var(--radius-lg);
98
+ --block-shadow: var(--shadow-drop);
99
+ --block-title-background-fill: none;
100
+ --block-title-border-color: none;
101
+ --block-title-border-width: 0px;
102
+ --block-title-text-color: var(--neutral-500);
103
+ --block-title-padding: 0;
104
+ --block-title-radius: none;
105
+ --block-title-text-size: var(--text-md);
106
+ --block-title-text-weight: 400;
107
+ --container-radius: var(--radius-lg);
108
+ --form-gap-width: 1px;
109
+ --layout-gap: var(--spacing-xxl);
110
+ --panel-background-fill: var(--background-fill-secondary);
111
+ --panel-border-color: var(--border-color-primary);
112
+ --panel-border-width: 0;
113
+ --section-header-text-size: var(--text-md);
114
+ --section-header-text-weight: 400;
115
+ --border-color-accent-subdued: var(--primary-200);
116
+ --code-background-fill: var(--neutral-100);
117
+ --checkbox-background-color: var(--background-fill-primary);
118
+ --checkbox-background-color-focus: var(--checkbox-background-color);
119
+ --checkbox-background-color-hover: var(--checkbox-background-color);
120
+ --checkbox-background-color-selected: var(--secondary-600);
121
+ --checkbox-border-color: var(--neutral-300);
122
+ --checkbox-border-color-focus: var(--secondary-500);
123
+ --checkbox-border-color-hover: var(--neutral-300);
124
+ --checkbox-border-color-selected: var(--secondary-600);
125
+ --checkbox-border-radius: var(--radius-sm);
126
+ --checkbox-border-width: var(--input-border-width);
127
+ --checkbox-label-background-fill: linear-gradient(to top, var(--neutral-50), white);
128
+ --checkbox-label-background-fill-hover: linear-gradient(to top, var(--neutral-100), white);
129
+ --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);
130
+ --checkbox-label-border-color: var(--border-color-primary);
131
+ --checkbox-label-border-color-hover: var(--checkbox-label-border-color);
132
+ --checkbox-label-border-width: var(--input-border-width);
133
+ --checkbox-label-gap: var(--spacing-lg);
134
+ --checkbox-label-padding: var(--spacing-md) calc(2 * var(--spacing-md));
135
+ --checkbox-label-shadow: var(--shadow-drop);
136
+ --checkbox-label-text-size: var(--text-md);
137
+ --checkbox-label-text-weight: 400;
138
+ --checkbox-check: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
139
+ --radio-circle: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
140
+ --checkbox-shadow: var(--input-shadow);
141
+ --checkbox-label-text-color: var(--body-text-color);
142
+ --checkbox-label-text-color-selected: var(--checkbox-label-text-color);
143
+ --error-background-fill: #fef2f2;
144
+ --error-border-color: #b91c1c;
145
+ --error-border-width: 1px;
146
+ --error-text-color: #b91c1c;
147
+ --error-icon-color: #b91c1c;
148
+ --input-background-fill: white;
149
+ --input-background-fill-focus: var(--secondary-500);
150
+ --input-background-fill-hover: var(--input-background-fill);
151
+ --input-border-color: var(--border-color-primary);
152
+ --input-border-color-focus: var(--secondary-300);
153
+ --input-border-color-hover: var(--input-border-color);
154
+ --input-border-width: 1px;
155
+ --input-padding: var(--spacing-xl);
156
+ --input-placeholder-color: var(--neutral-400);
157
+ --input-radius: var(--radius-lg);
158
+ --input-shadow: 0 0 0 var(--shadow-spread) transparent, var(--shadow-inset);
159
+ --input-shadow-focus: 0 0 0 var(--shadow-spread) var(--secondary-50), var(--shadow-inset);
160
+ --input-text-size: var(--text-md);
161
+ --input-text-weight: 400;
162
+ --loader-color: var(--color-accent);
163
+ --prose-text-size: var(--text-md);
164
+ --prose-text-weight: 400;
165
+ --prose-header-text-weight: 600;
166
+ --slider-color: #2563eb;
167
+ --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-200));
168
+ --table-border-color: var(--neutral-300);
169
+ --table-even-background-fill: white;
170
+ --table-odd-background-fill: var(--neutral-50);
171
+ --table-radius: var(--radius-lg);
172
+ --table-row-focus: var(--color-accent-soft);
173
+ --button-border-width: var(--input-border-width);
174
+ --button-cancel-background-fill: linear-gradient(to bottom right, #fee2e2, #fecaca);
175
+ --button-cancel-background-fill-hover: linear-gradient(to bottom right, #fee2e2, #fee2e2);
176
+ --button-cancel-border-color: #fecaca;
177
+ --button-cancel-border-color-hover: var(--button-cancel-border-color);
178
+ --button-cancel-text-color: #dc2626;
179
+ --button-cancel-text-color-hover: var(--button-cancel-text-color);
180
+ --button-large-padding: var(--spacing-lg) calc(2 * var(--spacing-lg));
181
+ --button-large-radius: var(--radius-lg);
182
+ --button-large-text-size: var(--text-lg);
183
+ --button-large-text-weight: 600;
184
+ --button-primary-background-fill: linear-gradient(to bottom right, var(--primary-100), var(--primary-300));
185
+ --button-primary-background-fill-hover: linear-gradient(to bottom right, var(--primary-100), var(--primary-200));
186
+ --button-primary-border-color: var(--primary-200);
187
+ --button-primary-border-color-hover: var(--button-primary-border-color);
188
+ --button-primary-text-color: var(--primary-600);
189
+ --button-primary-text-color-hover: var(--button-primary-text-color);
190
+ --button-secondary-background-fill: linear-gradient(to bottom right, var(--neutral-100), var(--neutral-200));
191
+ --button-secondary-background-fill-hover: linear-gradient(to bottom right, var(--neutral-100), var(--neutral-100));
192
+ --button-secondary-border-color: var(--neutral-200);
193
+ --button-secondary-border-color-hover: var(--button-secondary-border-color);
194
+ --button-secondary-text-color: var(--neutral-700);
195
+ --button-secondary-text-color-hover: var(--button-secondary-text-color);
196
+ --button-shadow: var(--shadow-drop);
197
+ --button-shadow-active: var(--shadow-inset);
198
+ --button-shadow-hover: var(--shadow-drop-lg);
199
+ --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));
200
+ --button-small-radius: var(--radius-lg);
201
+ --button-small-text-size: var(--text-md);
202
+ --button-small-text-weight: 400;
203
+ --button-transition: none;
204
+ }
205
+ .dark {
206
+ --body-background-fill: var(--background-fill-primary);
207
+ --body-text-color: var(--neutral-100);
208
+ --color-accent-soft: var(--neutral-700);
209
+ --background-fill-primary: var(--neutral-950);
210
+ --background-fill-secondary: var(--neutral-900);
211
+ --border-color-accent: var(--neutral-600);
212
+ --border-color-primary: var(--neutral-700);
213
+ --link-text-color-active: var(--secondary-500);
214
+ --link-text-color: var(--secondary-500);
215
+ --link-text-color-hover: var(--secondary-400);
216
+ --link-text-color-visited: var(--secondary-600);
217
+ --body-text-color-subdued: var(--neutral-400);
218
+ --shadow-spread: 1px;
219
+ --block-background-fill: var(--neutral-800);
220
+ --block-border-color: var(--border-color-primary);
221
+ --block_border_width: None;
222
+ --block-info-text-color: var(--body-text-color-subdued);
223
+ --block-label-background-fill: var(--background-fill-secondary);
224
+ --block-label-border-color: var(--border-color-primary);
225
+ --block_label_border_width: None;
226
+ --block-label-text-color: var(--neutral-200);
227
+ --block_shadow: None;
228
+ --block_title_background_fill: None;
229
+ --block_title_border_color: None;
230
+ --block_title_border_width: None;
231
+ --block-title-text-color: var(--neutral-200);
232
+ --panel-background-fill: var(--background-fill-secondary);
233
+ --panel-border-color: var(--border-color-primary);
234
+ --panel_border_width: None;
235
+ --border-color-accent-subdued: var(--border-color-accent);
236
+ --code-background-fill: var(--neutral-800);
237
+ --checkbox-background-color: var(--neutral-800);
238
+ --checkbox-background-color-focus: var(--checkbox-background-color);
239
+ --checkbox-background-color-hover: var(--checkbox-background-color);
240
+ --checkbox-background-color-selected: var(--secondary-600);
241
+ --checkbox-border-color: var(--neutral-700);
242
+ --checkbox-border-color-focus: var(--secondary-500);
243
+ --checkbox-border-color-hover: var(--neutral-600);
244
+ --checkbox-border-color-selected: var(--secondary-600);
245
+ --checkbox-border-width: var(--input-border-width);
246
+ --checkbox-label-background-fill: linear-gradient(to top, var(--neutral-900), var(--neutral-800));
247
+ --checkbox-label-background-fill-hover: linear-gradient(to top, var(--neutral-900), var(--neutral-800));
248
+ --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);
249
+ --checkbox-label-border-color: var(--border-color-primary);
250
+ --checkbox-label-border-color-hover: var(--checkbox-label-border-color);
251
+ --checkbox-label-border-width: var(--input-border-width);
252
+ --checkbox-label-text-color: var(--body-text-color);
253
+ --checkbox-label-text-color-selected: var(--checkbox-label-text-color);
254
+ --error-background-fill: var(--neutral-900);
255
+ --error-border-color: #ef4444;
256
+ --error_border_width: None;
257
+ --error-text-color: #fef2f2;
258
+ --error-icon-color: #ef4444;
259
+ --input-background-fill: var(--neutral-800);
260
+ --input-background-fill-focus: var(--secondary-600);
261
+ --input-background-fill-hover: var(--input-background-fill);
262
+ --input-border-color: var(--border-color-primary);
263
+ --input-border-color-focus: var(--neutral-700);
264
+ --input-border-color-hover: var(--input-border-color);
265
+ --input_border_width: None;
266
+ --input-placeholder-color: var(--neutral-500);
267
+ --input_shadow: None;
268
+ --input-shadow-focus: 0 0 0 var(--shadow-spread) var(--neutral-700), var(--shadow-inset);
269
+ --loader_color: None;
270
+ --slider_color: None;
271
+ --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));
272
+ --table-border-color: var(--neutral-700);
273
+ --table-even-background-fill: var(--neutral-950);
274
+ --table-odd-background-fill: var(--neutral-900);
275
+ --table-row-focus: var(--color-accent-soft);
276
+ --button-border-width: var(--input-border-width);
277
+ --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);
278
+ --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);
279
+ --button-cancel-border-color: #dc2626;
280
+ --button-cancel-border-color-hover: var(--button-cancel-border-color);
281
+ --button-cancel-text-color: white;
282
+ --button-cancel-text-color-hover: var(--button-cancel-text-color);
283
+ --button-primary-background-fill: linear-gradient(to bottom right, var(--primary-500), var(--primary-600));
284
+ --button-primary-background-fill-hover: linear-gradient(to bottom right, var(--primary-500), var(--primary-500));
285
+ --button-primary-border-color: var(--primary-500);
286
+ --button-primary-border-color-hover: var(--button-primary-border-color);
287
+ --button-primary-text-color: white;
288
+ --button-primary-text-color-hover: var(--button-primary-text-color);
289
+ --button-secondary-background-fill: linear-gradient(to bottom right, var(--neutral-600), var(--neutral-700));
290
+ --button-secondary-background-fill-hover: linear-gradient(to bottom right, var(--neutral-600), var(--neutral-600));
291
+ --button-secondary-border-color: var(--neutral-600);
292
+ --button-secondary-border-color-hover: var(--button-secondary-border-color);
293
+ --button-secondary-text-color: white;
294
+ --button-secondary-text-color-hover: var(--button-secondary-text-color);
295
+ --name: default;
296
+ --primary-50: #fff7ed;
297
+ --primary-100: #ffedd5;
298
+ --primary-200: #fed7aa;
299
+ --primary-300: #fdba74;
300
+ --primary-400: #fb923c;
301
+ --primary-500: #f97316;
302
+ --primary-600: #ea580c;
303
+ --primary-700: #c2410c;
304
+ --primary-800: #9a3412;
305
+ --primary-900: #7c2d12;
306
+ --primary-950: #6c2e12;
307
+ --secondary-50: #eff6ff;
308
+ --secondary-100: #dbeafe;
309
+ --secondary-200: #bfdbfe;
310
+ --secondary-300: #93c5fd;
311
+ --secondary-400: #60a5fa;
312
+ --secondary-500: #3b82f6;
313
+ --secondary-600: #2563eb;
314
+ --secondary-700: #1d4ed8;
315
+ --secondary-800: #1e40af;
316
+ --secondary-900: #1e3a8a;
317
+ --secondary-950: #1d3660;
318
+ --neutral-50: #f9fafb;
319
+ --neutral-100: #f3f4f6;
320
+ --neutral-200: #e5e7eb;
321
+ --neutral-300: #d1d5db;
322
+ --neutral-400: #9ca3af;
323
+ --neutral-500: #6b7280;
324
+ --neutral-600: #4b5563;
325
+ --neutral-700: #374151;
326
+ --neutral-800: #1f2937;
327
+ --neutral-900: #111827;
328
+ --neutral-950: #0b0f19;
329
+ --spacing-xxs: 1px;
330
+ --spacing-xs: 2px;
331
+ --spacing-sm: 4px;
332
+ --spacing-md: 6px;
333
+ --spacing-lg: 8px;
334
+ --spacing-xl: 10px;
335
+ --spacing-xxl: 16px;
336
+ --radius-xxs: 1px;
337
+ --radius-xs: 2px;
338
+ --radius-sm: 4px;
339
+ --radius-md: 6px;
340
+ --radius-lg: 8px;
341
+ --radius-xl: 12px;
342
+ --radius-xxl: 22px;
343
+ --text-xxs: 9px;
344
+ --text-xs: 10px;
345
+ --text-sm: 12px;
346
+ --text-md: 14px;
347
+ --text-lg: 16px;
348
+ --text-xl: 22px;
349
+ --text-xxl: 26px;
350
+ --font: 'Source Sans Pro', 'ui-sans-serif', 'system-ui', sans-serif;
351
+ --font-mono: 'IBM Plex Mono', 'ui-monospace', 'Consolas', monospace;
352
+ --body-text-size: var(--text-md);
353
+ --body-text-weight: 400;
354
+ --embed-radius: var(--radius-lg);
355
+ --color-accent: var(--primary-500);
356
+ --shadow-drop: rgba(0,0,0,0.05) 0px 1px 2px 0px;
357
+ --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
358
+ --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;
359
+ --block-border-width: 1px;
360
+ --block-info-text-size: var(--text-sm);
361
+ --block-info-text-weight: 400;
362
+ --block-label-border-width: 1px;
363
+ --block-label-shadow: var(--block-shadow);
364
+ --block-label-margin: 0;
365
+ --block-label-padding: var(--spacing-sm) var(--spacing-lg);
366
+ --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;
367
+ --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);
368
+ --block-label-text-size: var(--text-sm);
369
+ --block-label-text-weight: 400;
370
+ --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);
371
+ --block-radius: var(--radius-lg);
372
+ --block-shadow: var(--shadow-drop);
373
+ --block-title-background-fill: none;
374
+ --block-title-border-color: none;
375
+ --block-title-border-width: 0px;
376
+ --block-title-padding: 0;
377
+ --block-title-radius: none;
378
+ --block-title-text-size: var(--text-md);
379
+ --block-title-text-weight: 400;
380
+ --container-radius: var(--radius-lg);
381
+ --form-gap-width: 1px;
382
+ --layout-gap: var(--spacing-xxl);
383
+ --panel-border-width: 0;
384
+ --section-header-text-size: var(--text-md);
385
+ --section-header-text-weight: 400;
386
+ --checkbox-border-radius: var(--radius-sm);
387
+ --checkbox-label-gap: var(--spacing-lg);
388
+ --checkbox-label-padding: var(--spacing-md) calc(2 * var(--spacing-md));
389
+ --checkbox-label-shadow: var(--shadow-drop);
390
+ --checkbox-label-text-size: var(--text-md);
391
+ --checkbox-label-text-weight: 400;
392
+ --checkbox-check: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
393
+ --radio-circle: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
394
+ --checkbox-shadow: var(--input-shadow);
395
+ --error-border-width: 1px;
396
+ --input-border-width: 1px;
397
+ --input-padding: var(--spacing-xl);
398
+ --input-radius: var(--radius-lg);
399
+ --input-shadow: 0 0 0 var(--shadow-spread) transparent, var(--shadow-inset);
400
+ --input-text-size: var(--text-md);
401
+ --input-text-weight: 400;
402
+ --loader-color: var(--color-accent);
403
+ --prose-text-size: var(--text-md);
404
+ --prose-text-weight: 400;
405
+ --prose-header-text-weight: 600;
406
+ --slider-color: #2563eb;
407
+ --table-radius: var(--radius-lg);
408
+ --button-large-padding: var(--spacing-lg) calc(2 * var(--spacing-lg));
409
+ --button-large-radius: var(--radius-lg);
410
+ --button-large-text-size: var(--text-lg);
411
+ --button-large-text-weight: 600;
412
+ --button-shadow: var(--shadow-drop);
413
+ --button-shadow-active: var(--shadow-inset);
414
+ --button-shadow-hover: var(--shadow-drop-lg);
415
+ --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));
416
+ --button-small-radius: var(--radius-lg);
417
+ --button-small-text-size: var(--text-md);
418
+ --button-small-text-weight: 400;
419
+ --button-transition: none;
420
+ }
Soap.AI_files/translateSandbox.html ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <!-- saved from url=(0090)chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translateSandbox/translateSandbox.html -->
3
+ <html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4
+
5
+ <title>Zotero - Translate Sandbox</title>
6
+ </head>
7
+ <body>
8
+
9
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/zotero_config.js"></script>
10
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/zotero.js"></script>
11
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/api.js"></script>
12
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/openurl.js"></script>
13
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/date.js"></script>
14
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/xregexp-all.js"></script>
15
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/xregexp-unicode-zotero.js"></script>
16
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/utilities.js"></script>
17
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/utilities_item.js"></script>
18
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/schema.js"></script>
19
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/resource/zoteroTypeSchemaData.js"></script>
20
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities/cachedTypes.js"></script>
21
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/promise.js"></script>
22
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/utilities_translate.js"></script>
23
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/debug.js"></script>
24
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/http.js"></script>
25
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/translator.js"></script>
26
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/translators.js"></script>
27
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/repo.js"></script>
28
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/translation/translate.js"></script>
29
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/translation/sandboxManager.js"></script>
30
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate_item.js"></script>
31
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/tlds.js"></script>
32
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/proxy.js"></script>
33
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/init.js"></script>
34
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/uri.js"></script>
35
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/term.js"></script>
36
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/identity.js"></script>
37
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/n3parser.js"></script>
38
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/rdfparser.js"></script>
39
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translate/rdf/serialize.js"></script>
40
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/schema.js"></script>
41
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/utilities.js"></script>
42
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/http.js"></script>
43
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/inject/http.js"></script>
44
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/messagingGeneric.js"></script>
45
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translateSandbox/translateSandboxFunctionOverrides.js"></script>
46
+ <script src="chrome-extension://ekhagklcjbdpajgpjgmbionohlpdbjgc/translateSandbox/translateSandbox.js"></script>
47
+
48
+ </body></html>
__pycache__/Helper.cpython-39.pyc ADDED
Binary file (2.05 kB). View file
 
__pycache__/demo.cpython-39.pyc ADDED
Binary file (7.93 kB). View file
 
__pycache__/demo2.cpython-39.pyc ADDED
Binary file (10.3 kB). View file
 
__pycache__/gradio_test.cpython-39.pyc ADDED
Binary file (421 Bytes). View file
 
__pycache__/hardCodedData.cpython-39.pyc ADDED
Binary file (2.89 kB). View file
 
__pycache__/newDemo.cpython-39.pyc ADDED
Binary file (12.6 kB). View file
 
__pycache__/test.cpython-39.pyc ADDED
Binary file (2 kB). View file
 
__pycache__/test2.cpython-39.pyc ADDED
Binary file (3.67 kB). View file
 
avatar.webp ADDED
hardCodedData.py ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Define chatbot and checkbox options
2
+ First_response = """
3
+ Four people identified in the video. Please select the people you want to analyse:
4
+ """
5
+ Second_response="""Let’s confirm the learning goals:"""
6
+
7
+ non_verbal_options = [
8
+ "Following directions",
9
+ "On-task percentage",
10
+ "Elopement attempts",
11
+ "Falling response",
12
+ "Overwhelm indicators",
13
+ "Avoidance behaviors",
14
+ "Harm attempts",
15
+ "Eye contact percentage",
16
+ "Eye contact duration",
17
+ "Body language",
18
+ "Stimming behaviors",
19
+ "Attention tracking",
20
+ "Whole-body listening",
21
+ "Gaze tracking",
22
+ "Inappropriate touching",
23
+ "Listening behaviors",
24
+ "Noises or gestures"
25
+ ]
26
+
27
+ verbal_options = [
28
+ "Target sounds",
29
+ "Word position",
30
+ "Sound substitutions",
31
+ "Articulation frequency",
32
+ "Mean Length of Utterance (MLU)",
33
+ "Disfluencies",
34
+ "Questions asked",
35
+ "Student answers",
36
+ "Response time",
37
+ "Peer responses",
38
+ "On-topic responses",
39
+ "Correct response ratio",
40
+ "Cues needed",
41
+ "Pragmatic skills",
42
+ "Conversation volume",
43
+ "Initiating conversation",
44
+ "Interruptions",
45
+ "Following directions",
46
+ "Answering questions",
47
+ "Idioms/sarcasm",
48
+ "Grammar and syntax",
49
+ "Vocabulary use",
50
+ "Answering wh-questions"
51
+ ]
52
+
53
+ environmental_options = [
54
+ "External noises",
55
+ "Room activity",
56
+ "Room temperature",
57
+ "Fluorescent lights",
58
+ "School vs home",
59
+ "Session location",
60
+ "Furniture size",
61
+ ]
62
+
63
+
64
+ client_options=[
65
+ "David",
66
+ "John",
67
+ "Sam",
68
+ "Mike",
69
+ ]
70
+
71
+ data_insights = """
72
+ - On 9/17, Mike seemed to be distracted by the lighting in the room, which could be the reason he had more approximate words than correct words.
73
+ - On 9/18, there was a level of outside noise present during the session due to weather. This was also where Mike’s incorrect words were at their highest.
74
+ - On 9/19, Mike performed the best he has yet!
75
+ - Between 9/20 - 9/22, Mike's approximate words have tapered out.
76
+ """
77
+
78
+
79
+ subjective_report = """
80
+ Mike exhibited signs of stress at the start of the session due to the rainy weather, but he maintained engagement and participation throughout.
81
+ """
82
+
83
+ objective_report = """
84
+ - Number of Answers Given: This child named one of the characters in the story as 'Bob.'
85
+ - Cues Required: Responded directly to the SLP’s prompt without requiring additional cues.
86
+ - Observed Behavior: Participation in the naming process indicates engagement, though the child's involvement appears less proactive compared to the middle child.
87
+ 'Wh' Questions Addressed: Answered a 'who' question by providing a name for a character.
88
+ - Grammar and Complexity: The response was simple but appropriate for the task at hand.
89
+ - Visual Cues Used: It's not clear from the transcript if the child used visual cues, but the direct response to the SLP's question suggests attentiveness to verbal cues.
90
+ """
91
+
92
+ assessment_report = """
93
+ His ability to produce /er/ words when presented with a phonemic cue has also improved from only making 20% of words in yesterday’s session.
94
+ """
95
+
96
+ plan_report = """
97
+
98
+ """
newDemo.py ADDED
@@ -0,0 +1,357 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import plotly.graph_objs as go
3
+ import numpy as np
4
+ import time
5
+ import google.generativeai as genai
6
+ from hardCodedData import *
7
+ from Helper import *
8
+ import google
9
+
10
+ '''
11
+ Model Information
12
+ Gemini 1.5 pro
13
+ '''
14
+ GOOGLE_API_KEY = "api"
15
+ genai.configure(api_key="AIzaSyC6msuJuuRiXTplyOzgnlZchpu5_olBXYs")
16
+ generation_config = genai.GenerationConfig(temperature=0.5)
17
+
18
+ # Model configuration
19
+ model = genai.GenerativeModel(
20
+ model_name='gemini-1.5-pro-latest',
21
+ system_instruction= """
22
+ Answer the user based on these questions and answers.
23
+ Give a detailed answer with timestamps.
24
+ End your responses with a some examples of follow up question they can ask you.
25
+
26
+ Question: 01:15-01:35 is an example of ISI.
27
+ Model Answer: Got it. I observe the following behaviors within 01:15-01:35:
28
+ It seems to be a turn-taking (e.g., putting a hat on the adult’s head) behavior occuring.
29
+ Question: please update this behavior codes to ISI’s definition.
30
+ Model Answer: understood!
31
+ -------------------------------------------------------
32
+ Question: What nonverbal and/or verbal behavior does the child use to initiate a behavioral request [IBR] for a toy at the beginning of the interaction with the examiner?
33
+ ---
34
+ Model Answer: The child initiates a behavioral request for a toy at the beginning of the interaction with the examiner by looking at the toy and then at the examiner, indicating a desire for the toy.
35
+ -------------------------------------------------------
36
+ Question: What toy did the child IBR for?
37
+ ---
38
+ Model Answer: The child initiates a behavioral request for a wind-up toy in the video.
39
+ -------------------------------------------------------
40
+ Question: How many times does the child IBR throughout her interaction with the examiner, after the initial IBR for a specific toy at the beginning of the interaction?
41
+ ---
42
+ Model Answer: The child IBRs three times throughout her interaction with the examiner after the initial IBR for a specific toy at the beginning of the interaction.
43
+ -------------------------------------------------------
44
+ Question: How many times does the child use a single behavior to IBR? What specific behaviors are used (e.g., eye contact, reach) for each IBR? Can you identify the timestamp for each instance?
45
+ ---
46
+ Model Answer: The child uses a single behavior to IBR three times. The specific behaviors used are:
47
+ 1. eye contact: 0 seconds 29 seconds The child looks from the toy to the instructor and back to the toy.
48
+ 2. language: 31 seconds 37 seconds The child reaches for the toy and looks at the instructor.
49
+ 3. reach: 86 seconds 123 seconds The child gives the toy to the instructor and reaches for it again.
50
+ -------------------------------------------------------
51
+ Question: How many times does the child initiate joint attention (IJA) during her interaction with the examiner?
52
+ ---
53
+ Model Answer: The child initiates joint attention (IJA) two times during her interaction with the examiner between 82 seconds and 123 seconds . The first time is when she looks at the toy and then at the examiner, and the second time is when she asks for more of the toy.
54
+ -------------------------------------------------------
55
+ Question: How many times does the child use a single behavior to IJA with the examiner? What specific behaviors are used for each IJA (e.g., alternating gaze)? Can you identify the timestamp for each instance?
56
+ ---
57
+ Model Answer: The child uses a single behavior to IJA with the examiner three times. The specific behaviors used for each IJA are alternating gaze, coordinated joint look, and pointing. The timestamps for each instance are: 0 seconds 29 seconds , 31 seconds 123 seconds , and 91 seconds 123 seconds .
58
+ -------------------------------------------------------
59
+ Question: How many times does the child pair two behaviors to IJA with the examiner? What specific behaviors are paired for each IJA (e.g., speech and coordinated joint look)? Can you identify the timestamp for each instance?
60
+ ---
61
+ Model Answer: The child pairs two behaviors to IJA with the examiner four times. The specific behaviors paired for each IJA are: 1) speech and coordinated joint look, 2) speech and pointing, 3) speech and giving, and 4) speech and showing. The timestamps for each instance are: 40 seconds 123 seconds
62
+ -------------------------------------------------------
63
+ """
64
+ )
65
+
66
+ '''
67
+ system_instruction= """
68
+ You are an assistant chatbot for a Speech Language Pathologist (SLP).
69
+ Your task is to help analyze a provided video of a therapy session and answer questions accurately.
70
+ Provide timestamps for specific events or behaviors mentioned. Conclude each response with possible follow-up questions.
71
+
72
+ Follow these steps:
73
+
74
+ 1. Suggest to the user to ask, “To get started, you can try asking me how many people there are in the video.”
75
+ 2. Detect how many people are in the video.
76
+ 2. Suggest to the user to tell you the names of the people in the video, starting from left to right.
77
+ 3. After receiving the names, respond with, “Ok thank you! Now you can ask me any questions about this video.”
78
+ 4. If the user asks about a behavior, respond with, “My understanding of this behavior is [xxx - AI generated output]. Is this a behavior that you want to track? If it is, please define this behavior and tell me more about it so I can analyze it more accurately according to your practice.”
79
+ 5. If you receive names, confirm that these are the names of the people from left to right.
80
+ """
81
+ '''
82
+
83
+
84
+ '''
85
+ Video
86
+ '''
87
+ video_file = None
88
+
89
+ def handle_video(video=None):
90
+ global video_file
91
+ if video is None:
92
+ # Load example video
93
+ video = "./TEST.mp4"
94
+ isTest = True
95
+
96
+ video_file = genai.upload_file(path=video)
97
+
98
+ while video_file.state.name == "PROCESSING":
99
+ print(".", end="")
100
+ time.sleep(10)
101
+ video_file = genai.get_file(video_file.name)
102
+
103
+ if video_file.state.name == "FAILED":
104
+ raise ValueError(video_file.state.name)
105
+
106
+ if isTest:
107
+ return video
108
+ else:
109
+ return video_file
110
+
111
+ '''
112
+ Chatbot
113
+ '''
114
+ chat_history = []
115
+ def new_prompt(prompt):
116
+ global chat_history, video_file
117
+
118
+ # Append user prompt to chat history
119
+ chat_history.append({'role': 'user', 'parts': [prompt]})
120
+ try:
121
+ response = model.generate_content(chat_history)
122
+ '''
123
+ if video_file:
124
+ # Video exists and is processed
125
+ chat_history[-1]['parts'].extend([" from video: ", video_file])
126
+ response = model.generate_content(chat_history, request_options={"timeout": 600})
127
+ else:
128
+ # No video uploaded yet
129
+ response = model.generate_content(chat_history)
130
+ '''
131
+ # Extract the text content from the response and append it to the chat history
132
+ assistant_message = response.candidates[0].content.parts[0].text
133
+ chat_history.append({'role': 'model', 'parts': [assistant_message]})
134
+
135
+ except google.api_core.exceptions.ResourceExhausted:
136
+ assistant_message = "API rate limit has been reached. Please wait a moment and try again."
137
+ chat_history.append({'role': 'model', 'parts': [assistant_message]})
138
+ except Exception as e:
139
+ assistant_message = f"An error occurred: {str(e)}"
140
+ chat_history.append({'role': 'model', 'parts': [assistant_message]})
141
+
142
+ return chat_history
143
+
144
+ def user_input(user_message, history):
145
+ return "", history + [[user_message, None]]
146
+
147
+ def bot_response(history):
148
+ user_message = history[-1][0]
149
+ print(history)
150
+ updated_history = new_prompt(user_message)
151
+ print(updated_history)
152
+ assistant_message = updated_history[-1]['parts'][0]
153
+ for i in range(len(assistant_message)):
154
+ time.sleep(0.05)
155
+ history[-1][1] = assistant_message[:i+1]
156
+ yield history
157
+
158
+
159
+ '''
160
+ Behaivor box
161
+ '''
162
+ initial_behaviors = [
163
+ ("Initiating Behavioral Request (IBR)",
164
+ ("The child's skill in using behavior(s) to elicit aid in obtaining an object, or object related event",
165
+ ["00:10", "00:45", "01:30"])),
166
+
167
+ ("Initiating Joint Attention (IJA)",
168
+ ("The child's skill in using behavior(s) to initiate shared attention to objects or events.",
169
+ ["00:15", "00:50", "01:40"])),
170
+
171
+ ("Responding to Joint Attention (RJA)",
172
+ ("The child's skill in following the examiner’s line of regard and pointing gestures.",
173
+ ["00:20", "01:00", "02:00"])),
174
+
175
+ ("Initiating Social Interaction (ISI)",
176
+ ("The child's skill at initiating turn-taking sequences and the tendency to tease the tester",
177
+ ["00:20", "00:50", "02:00"])),
178
+
179
+ ("Responding to Social Interaction (RSI)",
180
+ ("The child’s skill in responding to turn-taking interactions initiated by the examiner.",
181
+ ["00:20", "01:00", "02:00"]))
182
+ ]
183
+
184
+ behaviors = initial_behaviors
185
+ behavior_bank = []
186
+
187
+ def add_or_update_behavior(name, definition, timestamps, selected_behavior):
188
+ global behaviors, behavior_bank
189
+ if selected_behavior: # Update existing behavior
190
+ for i, (old_name, _) in enumerate(behaviors):
191
+ if old_name == selected_behavior:
192
+ behaviors[i] = (name, (definition, timestamps))
193
+ break
194
+ # Update behavior in the bank if it exists
195
+ behavior_bank = [name if b == selected_behavior else b for b in behavior_bank]
196
+ else: # Add new behavior
197
+ new_behavior = (name, (definition, timestamps))
198
+ behaviors.append(new_behavior)
199
+ choices = [b[0] for b in behaviors]
200
+ return gr.Dropdown(choices=choices, value=None, interactive=True), gr.CheckboxGroup(choices=behavior_bank, value=behavior_bank, interactive=True), "", "", ""
201
+
202
+ def add_to_behaivor_bank(selected_behavior, checkbox_group_values):
203
+ global behavior_bank
204
+ if selected_behavior and selected_behavior not in checkbox_group_values:
205
+ checkbox_group_values.append(selected_behavior)
206
+ behavior_bank = checkbox_group_values
207
+ return gr.CheckboxGroup(choices=checkbox_group_values, value=checkbox_group_values, interactive=True), gr.Dropdown(value=None,interactive=True)
208
+
209
+ def delete_behavior(selected_behavior, checkbox_group_values):
210
+ global behaviors, behavior_bank
211
+ behaviors = [b for b in behaviors if b[0] != selected_behavior]
212
+ behavior_bank = [b for b in behavior_bank if b != selected_behavior]
213
+ updated_choices = [b[0] for b in behaviors]
214
+ updated_checkbox_group = [cb for cb in checkbox_group_values if cb != selected_behavior]
215
+ return gr.Dropdown(choices=updated_choices, value=None, interactive=True), gr.CheckboxGroup(choices=updated_checkbox_group, value=updated_checkbox_group, interactive=True)
216
+
217
+ def edit_behavior(selected_behavior):
218
+ for name, (definition, timestamps) in behaviors:
219
+ if name == selected_behavior:
220
+ # Return values to populate textboxes
221
+ return name, definition, timestamps
222
+ return "", "", ""
223
+
224
+
225
+ welcome_message = """
226
+ Hello! I'm your AI assistant.
227
+ I can help you analyze your video sessions following your instructions.
228
+ To get started, please upload a video or add your behaviors to the Behavior Bank using the Behavior Manager.
229
+ """
230
+ #If you want to tell me about the people in the video, please name them starting from left to right.
231
+
232
+ css="""
233
+ body {
234
+ background-color: #edf1fa; /* offwhite */
235
+ }
236
+ .gradio-container {
237
+ background-color: #edf1fa; /* offwhite */
238
+ }
239
+ .column-form .wrap {
240
+ flex-direction: column;
241
+ }
242
+ .sidebar {
243
+ background: #ffffff;
244
+ padding: 10px;
245
+ border-right: 1px solid #dee2e6;
246
+ }
247
+ .content {
248
+ padding: 10px;
249
+ }
250
+ """
251
+
252
+ '''
253
+ Gradio Demo
254
+ '''
255
+ with gr.Blocks(theme='base', css=css, title="Soap.AI") as demo:
256
+ gr.Markdown("# 🤖 AI-Supported SOAP Generation")
257
+
258
+ with gr.Row():
259
+ with gr.Column():
260
+ video = gr.Video(label="Video", visible=True, height=360, container=True)
261
+ with gr.Row():
262
+ with gr.Column(min_width=1, scale=1):
263
+ video_upload_button = gr.Button("Analyze Video", variant="primary")
264
+ with gr.Column(min_width=1, scale=1):
265
+ example_video_button = gr.Button("Load Example Video")
266
+
267
+ video_upload_button.click(handle_video, inputs=video, outputs=video)
268
+ example_video_button.click(handle_video, None, outputs=video)
269
+
270
+ with gr.Column():
271
+ chat_section = gr.Group(visible=True)
272
+ with chat_section:
273
+ chatbot = gr.Chatbot(elem_id="chatbot",
274
+ container=True,
275
+ likeable=True,
276
+ value=[[None, welcome_message]],
277
+ avatar_images=(None, "./avatar.webp"))
278
+ with gr.Row():
279
+ txt = gr.Textbox(show_label=False, placeholder="Type here!")
280
+ with gr.Row():
281
+ send_btn = gr.Button("Send Message", elem_id="send-btn", variant="primary")
282
+ clear_btn = gr.Button("Clear Chat", elem_id="clear-btn")
283
+
284
+ with gr.Row():
285
+ behaivor_bank = gr.CheckboxGroup(label="Behavior Bank",
286
+ choices=[],
287
+ interactive=True,
288
+ info="A space to store all the behaviors you want to analyze.")
289
+ open_sidebar_btn = gr.Button("Show Behavior Manager", scale=0)
290
+ close_sidebar_btn = gr.Button("Hide Behavior Manager", visible=False, scale=0)
291
+
292
+ txt.submit(user_input, [txt, chatbot], [txt, chatbot], queue=False).then(
293
+ bot_response, chatbot, chatbot)
294
+ send_btn.click(user_input, [txt, chatbot], [txt, chatbot], queue=False).then(
295
+ bot_response, chatbot, chatbot)
296
+ clear_btn.click(lambda: None, None, chatbot, queue=False)
297
+
298
+ # Define a sidebar column that is initially hidden
299
+ with gr.Column(visible=False, min_width=200, scale=0.5, elem_classes="sidebar") as sidebar:
300
+ behavior_dropdown = gr.Dropdown(label="Behavior Collection",
301
+ choices=behaviors,
302
+ interactive=True,
303
+ container=True,
304
+ elem_classes="column-form",
305
+ info="Choose a behavior to add to the bank, edit or remove.")
306
+ with gr.Row():
307
+ add_toBank_button = gr.Button("Add Behavior to Bank", variant="primary")
308
+ edit_button = gr.Button("Edit Behavior")
309
+ delete_button = gr.Button("Remove Behavior")
310
+
311
+ with gr.Row():
312
+ name_input = gr.Textbox(label="Behavior Name",
313
+ placeholder="(e.g., IBR)",
314
+ info="The name you give to the specific behavior you're tracking or analyzing.")
315
+ timestamps_input = gr.Textbox(label="Timestamps MM:SS",
316
+ placeholder="(e.g., (01:15,01:35) )",
317
+ info="The exact times during a session when you saw the behavior. The first two digits represent minutes and the last two digits represent seconds.")
318
+ definition_input = gr.Textbox(lines=3,
319
+ label="Behavior Definition",
320
+ placeholder="(e.g., the child's skill in using behavior(s) to elicit aid in obtaining an object, or object related event)",
321
+ info="Provide a clear definition of the behavior.")
322
+
323
+ with gr.Row():
324
+ submit_button = gr.Button("Save Behavior", variant="primary")
325
+
326
+ submit_button.click(fn=add_or_update_behavior,
327
+ inputs=[name_input, definition_input, timestamps_input, behavior_dropdown],
328
+ outputs=[behavior_dropdown, behaivor_bank, name_input, definition_input, timestamps_input])
329
+
330
+ add_toBank_button.click(fn=add_to_behaivor_bank,
331
+ inputs=[behavior_dropdown, behaivor_bank],
332
+ outputs=[behaivor_bank, behavior_dropdown])
333
+
334
+ delete_button.click(fn=delete_behavior,
335
+ inputs=[behavior_dropdown, behaivor_bank],
336
+ outputs=[behavior_dropdown, behaivor_bank])
337
+
338
+ edit_button.click(fn=edit_behavior,
339
+ inputs=[behavior_dropdown],
340
+ outputs=[name_input, definition_input, timestamps_input])
341
+
342
+ # Function to open the sidebar
343
+ open_sidebar_btn.click(lambda: {
344
+ open_sidebar_btn: gr.Button(visible=False),
345
+ close_sidebar_btn: gr.Button(visible=True),
346
+ sidebar: gr.Column(visible=True)
347
+ }, outputs=[open_sidebar_btn, close_sidebar_btn, sidebar])
348
+
349
+ # Function to close the sidebar
350
+ close_sidebar_btn.click(lambda: {
351
+ open_sidebar_btn: gr.Button(visible=True),
352
+ close_sidebar_btn: gr.Button(visible=False),
353
+ sidebar: gr.Column(visible=False)
354
+ }, outputs=[open_sidebar_btn, close_sidebar_btn, sidebar])
355
+
356
+ # Launch the demo
357
+ demo.launch(share=True)
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ google.generativeai
2
+ google
3
+ time
4
+ numpy
5
+ plotly
style.css ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ body {
2
+ font-family: Arial, sans-serif;
3
+ color: #000; /* Set default text color to black */
4
+ }
5
+
6
+ .gradio-container {
7
+ background-color: #1a3e63; /* Background color similar to the image */
8
+ }
9
+
10
+ .gradio-block, .gradio-column, .gradio-row {
11
+ background-color: #fff; /* White background for blocks */
12
+ border-radius: 10px; /* Rounded corners */
13
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
14
+ margin: 10px;
15
+ padding: 20px;
16
+ }
17
+
18
+ .gradio-markdown {
19
+ color: #000; /* Text color set to black */
20
+ }
21
+
22
+ .gradio-button {
23
+ background-color: #4CAF50; /* Button color */
24
+ color: white; /* Button text color */
25
+ border: none;
26
+ padding: 10px 20px;
27
+ text-align: center;
28
+ text-decoration: none;
29
+ display: inline-block;
30
+ font-size: 16px;
31
+ margin: 4px 2px;
32
+ cursor: pointer;
33
+ border-radius: 5px; /* Rounded corners */
34
+ }
35
+
36
+ .gradio-checkbox-group, .gradio-checkbox {
37
+ color: #000; /* Text color set to black */
38
+ }
39
+
40
+ .gradio-textbox {
41
+ color: #000; /* Text color set to black */
42
+ }
43
+
44
+ .gradio-header {
45
+ color: #000; /* Text color set to black */
46
+ }
47
+
48
+ .gradio-container p, .gradio-container h1, .gradio-container h2, .gradio-container h3, .gradio-container h4, .gradio-container h5, .gradio-container h6 {
49
+ color: #000; /* Ensure all header and paragraph texts are black */
50
+ }