Flourish commited on
Commit
f4bedc3
Β·
verified Β·
1 Parent(s): f304131

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +67 -73
README.md CHANGED
@@ -12,26 +12,24 @@ language:
12
 
13
  <p align="center">
14
  <!-- <a href="https://arxiv.org/abs/2502.12579"><img src="https://img.shields.io/badge/arXiv%20paper-2502.12579-b31b1b.svg" alt="arxiv"></a> -->
15
- <a href="https://github.com/AIDC-AI/Ovis"><img src="https://img.shields.io/badge/GitHub-AIDC--AI/Ovis--U1-blue?style=flat&logo=github" alt="demo"></a>
 
16
  <a href="https://huggingface.co/spaces/AIDC-AI/Ovis-U1-3B"><img src="https://img.shields.io/badge/🎨_HF_Spaces-AIDC--AI/Ovis--U1--3B-lightblack" alt="demo"></a>
17
  <a href="https://huggingface.co/AIDC-AI/Ovis-U1-3B"><img src="https://img.shields.io/badge/πŸ€—_Model-AIDC--AI/Ovis--U1--3B-yellow" alt="model"></a>
18
  </p>
19
 
20
 
21
- Building on the foundation of the Ovis series, Ovis-U1 is a 3-billion-parameter unified model that integrates multimodal understanding, text-to-image generation, and image editing capabilities.
22
-
23
- <figure>
24
- <img src="https://cdn-uploads.huggingface.co/production/uploads/636f4c6b5d2050767e4a1491/EmEEGmot9JzaBfHP2uWld.jpeg" alt="Ovis-U1 architecture">
25
- <figcaption style="text-align: center;">The overall architecture of Ovis-U1 (cf. Fig.2 in our report).</figcaption>
26
- </figure>
27
 
28
- ---
29
 
30
- ## πŸš€ News
 
 
 
 
31
 
32
- - [2025/6/28] πŸ”₯ Announcing Ovis-U1-3B ([Model](https://huggingface.co/AIDC-AI/Ovis-U1-3B), [Demo](https://huggingface.co/spaces/AIDC-AI/Ovis-U1-3B))!
33
-
34
- ---
35
 
36
  ## πŸ“¦ Installation
37
 
@@ -47,24 +45,18 @@ pip install -e .
47
 
48
  ```
49
 
50
- ## πŸ“‚ Model Checkpoints
51
-
52
- We provide pretrained Ovis-U1-3B checkpoints for easy download and evaluation:
53
-
54
- - **Model Repository**: [![Hugging Face](https://img.shields.io/badge/Hugging_Face-Ovis--U1--3B-blue?logo=Huggingface)](https://huggingface.co/AIDC-AI/Ovis-U1-3B)
55
-
56
 
57
  ## πŸ› οΈ Inference
58
 
59
  For multimodal understanding, please run
60
 
61
  ```bash
62
- python ovis/eval/test_txt_generation.py
63
  ```
64
 
65
  For text-to-image, please run
66
  ```bash
67
- python ovis/eval/test_t2i.py \
68
  --height 1024 \
69
  --width 1024 \
70
  --steps 50 \
@@ -74,85 +66,87 @@ python ovis/eval/test_t2i.py \
74
 
75
  For image editing, please run
76
  ```bash
77
- python ovis/eval/test_img_edit.py \
78
  --steps 50 \
79
- --img_cfg 4 \
80
- --txt_cfg 7.5
81
  ```
82
 
83
  ## πŸ“Š Performance
84
 
85
  #### OpenCompass Multi-modal Academic Benchmarks
86
 
87
- | Model | MMB | MMS | MMMU | MathVista | Hallusion | AI2D | OCRBench | MMVet | Avg |
88
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
89
- | GPT-4o | 86 | 70.2 | 72.9 | 71.6 | 57 | 86.3 | 82.2 | 76.9 | **75.4** |
90
- | InternVL2.5-2B | 70.9 | 54.3 | 43.2 | 51.1 | 42.3 | 74.9 | 80.2 | 62.6 | **59.9** |
91
- | SAIL-VL-2B | 73.7 | 56.5 | 44.1 | 62.8 | 45.9 | 77.4 | 83.1 | 44.2 | **61** |
92
- | InternVL3-2B | 78 | 61.1 | 48.7 | 57.6 | 41.9 | 78.6 | 83.1 | 67 | **61.1**|
93
- | Qwen2.5-VL-3B | 76.8 | 56.3 | 51.2 | 61.2 | 46.6 | 81.4 | 82.8 | 60 | **64.5** |
94
- | Ovis2-2B | 76.9 | 56.7 | 45.6 | 64.1 | 50.2 | 82.7 | 87.3 | 58.3 | **65.2** |
95
- | SAIL-VL-1.5-2B | 78.5 | 62.6 | 46.4 | 67 | 50 | 83.7 | 89.1 | 58.8 | **67** |
96
- | Ristretto-3B | 80.2 | 62.8 | 51.3 | 67.6 | 50.2 | 84.2 | 84.7 | 60.7 | **67.7** |
97
- | Ovis-U1 | 77.8 | 61.3 | 51.1 | 69.4 | 56.3 | 85.6 | 88.3 | 66.7 | **69.6** |
98
 
99
  #### GenEval
100
 
101
- | Model | Single object | Two object | Counting | Colors | Position | Attribute binding | Overall |
102
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
103
- | GPT-4o | 0.99 | 0.92 | 0.85 | 0.92 | 0.75 | 0.61 | **0.84** |
104
- | BAGEL | 0.99 | 0.94 | 0.81 | 0.88 | 0.64 | 0.63 | **0.82** |
105
- | BAGEL πŸ“ | 0.98 | 0.95 | 0.84 | 0.95 | 0.78 | 0.77 | **0.88** |
106
- | UniWorld-V1 | 0.99 | 0.93 | 0.79 | 0.89 | 0.49 | 0.70 | **0.80** |
107
- | UniWorld-V1 πŸ“ | 0.98 | 0.93 | 0.81 | 0.89 | 0.74 | 0.71 | **0.84** |
108
- | OmniGen | 0.98 | 0.84 | 0.66 | 0.74 | 0.40 | 0.43 | **0.68** |
109
- | OmniGen2 | 1 | 0.95 | 0.64 | 0.88 | 0.55 | 0.76 | **0.80** |
110
- | OmniGen2 πŸ“ | 0.99 | 0.96 | 0.74 | 0.98 | 0.71 | 0.75 | **0.86** |
111
- | Ovis-U1 | 0.98 | 0.98 | 0.90 | 0.92 | 0.79 | 0.75 | **0.89** |
112
 
113
  *πŸ“ denotes using the rewritten prompts*
114
 
115
  #### DPG-Bench
116
 
117
- | Model | Global | Entity | Attribute | Relation | Other | Overall |
118
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|
119
- | BAGEL | 88.94 | 90.37 | 91.29 | 90.82 | 88.67 | **85.07** |
120
- | UniWorld-V1 | 83.64 | 88.39 | 88.44 | 89.27 | 87.22 | **81.38** |
121
- | OmniGen | 87.90 | 88.97 | 88.47 | 87.95 | 83.56 | **81.16** |
122
- | OmniGen2 | 88.81 | 88.83 | 90.18 | 89.37 | 90.27 | **83.57** |
123
- | Ovis-U1 | 82.37 | 90.08 | 88.68 | 93.35 | 85.20 | **83.72** |
124
 
125
  #### ImgEdit-Bench
126
 
127
- | Model | Add | Adjust | Extract | Replace | Remove | Background | Style | Hybrid | Action | Overall |
128
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
129
- | GPT-4o | 4.61 | 4.33 | 2.9 | 4.35 | 3.66 | 4.57 | 4.93 | 3.96 | 4.89 | **4.2** |
130
- | MagicBrush | 2.84 | 1.58 | 1.51 | 1.97 | 1.58 | 1.75 | 2.38 | 1.62 | 1.22 | **1.90** |
131
- | Instruct-P2P | 2.45 | 1.83 | 1.44 | 2.01 | 1.50 | 1.44 | 3.55 | 1.2 | 1.46 | **1.88** |
132
- | AnyEdit | 3.18 | 2.95 | 1.88 | 2.47 | 2.23 | 2.24 | 2.85 | 1.56 | 2.65 | **2.45** |
133
- | UltraEdit | 3.44 | 2.81 | 2.13 | 2.96 | 1.45 | 2.83 | 3.76 | 1.91 | 2.98 | **2.7** |
134
- | OmniGen | 3.47 | 3.04 | 1.71 | 2.94 | 2.43 | 3.21 | 4.19 | 2.24 | 3.38 | **2.96** |
135
- | Step1X-Edit | 3.88 | 3.14 | 1.76 | 3.40 | 2.41 | 3.16 | 4.63 | 2.64 | 2.52 | **3.06** |
136
- | ICEdit | 3.58 | 3.39 | 1.73 | 3.15 | 2.93 | 3.08 | 3.84 | 2.04 | 3.68 | **3.05** |
137
- | BAGEL | 3.56 | 3.31 | 1.7 | 3.3 | 2.62 | 3.24 | 4.49 | 2.38 | 4.17 | **3.2** |
138
- | UniWorld-V1 | 3.82 | 3.64 | 2.27 | 3.47 | 3.24 | 2.99 | 4.21 | 2.96 | 2.74 | **3.26** |
139
- | OmniGen2 | 3.57 | 3.06 | 1.77 | 3.74 | 3.2 | 3.57 | 4.81 | 2.52 | 4.68 | **3.44** |
140
- | Ovis-U1 | 4.13 | 3.62 | 2.98 | 4.45 | 4.06 | 4.22 | 4.69 | 3.45 | 4.61 | **4.00** |
 
141
 
142
  #### GEdit-Bench-EN
143
 
144
- | Model | Background Change | Color Alteration | Material Modification | Motion Change | Portrait Beautification | Style Transfer | Subject Addition | Subject Removal | Subject Replacement | Text Modification | Tone Transformation | Avg |
145
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
146
- | GPT-4o | 7.205 | 6.491 | 6.607 | 8.096 | 7.768 | 6.961 | 7.622 | 8.331 | 8.067 | 7.427 | 8.301 | **7.534** |
147
- | AnyEdit | 4.663 | 4.260 | 2.537 | 2.024 | 3.479 | 2.032 | 3.995 | 3.089 | 3.180 | 0.922 | 5.151 | **3.212** |
148
- | Instruct-Pix2Pix | 3.825 | 5.182 | 3.688 | 3.509 | 4.339 | 4.560 | 3.461 | 2.031 | 4.237 | 0.955 | 4.733 | **3.684** |
149
- | MagicBrush | 5.637 | 5.136 | 5.078 | 4.513 | 4.487 | 4.439 | 5.252 | 3.704 | 4.941 | 1.384 | 5.130 | **4.518** |
150
- | OmniGen | 5.281 | 6.003 | 5.308 | 2.916 | 3.087 | 4.903 | 6.628 | 6.352 | 5.616 | 4.519 | 5.064 | **5.062** |
151
- | Gemini | 6.781 | 6.369 | 6.040 | 6.938 | 5.591 | 4.676 | 7.501 | 6.447 | 7.003 | 5.765 | 6.350 | **6.315** |
152
- | Step1X-Edit | 6.547 | 6.545 | 6.204 | 6.483 | 6.787 | 7.221 | 6.975 | 6.512 | 7.068 | 6.921 | 6.448 | **6.701** |
153
- | Doubao | 7.430 | 7.095 | 6.339 | 6.973 | 6.972 | 6.767 | 7.674 | 6.748 | 7.447 | 3.471 | 7.383 | **6.754** |
154
- | BAGEL | 7.324 | 6.909 | 6.381 | 4.753 | 4.573 | 6.150 | 7.896 | 7.164 | 7.021 | 7.320 | 6.218 | **6.519** |
155
- | Ovis-U1 | 7.486 | 6.879 | 6.208 | 4.790 | 5.981 | 6.463 | 7.491 | 7.254 | 7.266 | 4.482 | 6.314 | **6.420** |
 
156
 
157
  ## πŸ“š Citation
158
 
 
12
 
13
  <p align="center">
14
  <!-- <a href="https://arxiv.org/abs/2502.12579"><img src="https://img.shields.io/badge/arXiv%20paper-2502.12579-b31b1b.svg" alt="arxiv"></a> -->
15
+ <a href="https://github.com/AIDC-AI/Ovis-U1/blob/main/docs/Ovis_U1_Report.pdf"><img src="https://img.shields.io/badge/Paper-Tech_Report-b31b1b" alt="paper"></a>
16
+ <a href="https://github.com/AIDC-AI/Ovis-U1"><img src="https://img.shields.io/badge/GitHub-AIDC--AI/Ovis--U1-blue?style=flat&logo=github" alt="code"></a>
17
  <a href="https://huggingface.co/spaces/AIDC-AI/Ovis-U1-3B"><img src="https://img.shields.io/badge/🎨_HF_Spaces-AIDC--AI/Ovis--U1--3B-lightblack" alt="demo"></a>
18
  <a href="https://huggingface.co/AIDC-AI/Ovis-U1-3B"><img src="https://img.shields.io/badge/πŸ€—_Model-AIDC--AI/Ovis--U1--3B-yellow" alt="model"></a>
19
  </p>
20
 
21
 
22
+ <p align="left">
23
+ Building on the foundation of the Ovis series, Ovis-U1 is a 3-billion-parameter unified model that seamlessly integrates <b>multimodal understanding</b>, <b>text-to-image generation</b>, and <b>image editing</b> within a single powerful framework.
24
+ </p>
 
 
 
25
 
 
26
 
27
+ <p align="center">
28
+ <img src="https://cdn-uploads.huggingface.co/production/uploads/636f4c6b5d2050767e4a1491/EmEEGmot9JzaBfHP2uWld.jpeg" width="95%">
29
+ <br>
30
+ <em>The overall architecture of Ovis-U1 (cf. Fig.2 in our report).</em>
31
+ </p>
32
 
 
 
 
33
 
34
  ## πŸ“¦ Installation
35
 
 
45
 
46
  ```
47
 
 
 
 
 
 
 
48
 
49
  ## πŸ› οΈ Inference
50
 
51
  For multimodal understanding, please run
52
 
53
  ```bash
54
+ python test_img_to_txt.py
55
  ```
56
 
57
  For text-to-image, please run
58
  ```bash
59
+ python test_txt_to_img.py \
60
  --height 1024 \
61
  --width 1024 \
62
  --steps 50 \
 
66
 
67
  For image editing, please run
68
  ```bash
69
+ python test_img_edit.py \
70
  --steps 50 \
71
+ --img_cfg 1.5 \
72
+ --txt_cfg 6
73
  ```
74
 
75
  ## πŸ“Š Performance
76
 
77
  #### OpenCompass Multi-modal Academic Benchmarks
78
 
79
+ | Model | Avg | MMB | MMS | MMMU | MathVista | Hallusion | AI2D | OCRBench | MMVet |
80
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
81
+ | GPT-4o | **75.4** | **86** |**70.2** | **72.9** | **71.6** | **57** | **86.3** | 82.2 | **76.9** |
82
+ | InternVL2.5-2B | 59.9 | 70.9 | 54.3 | 43.2 | 51.1 | 42.3 | 74.9 | 80.2 | 62.6 |
83
+ | SAIL-VL-2B | 61 | 73.7 |56.5 | 44.1 | 62.8 | 45.9 | 77.4 | 83.1 | 44.2 |
84
+ | InternVL3-2B | 61.1 | 78 |61.1 | 48.7 | 57.6 | 41.9 | 78.6 | 83.1 | <ins>67</ins> |
85
+ | Qwen2.5-VL-3B | 64.5 | 76.8 | 56.3 | 51.2 | 61.2 | 46.6 | 81.4 | 82.8 | 60 |
86
+ | Ovis2-2B | 65.2 | 76.9 | 56.7 | 45.6 | 64.1 | 50.2 | 82.7 | 87.3 | 58.3 |
87
+ | SAIL-VL-1.5-2B | 67 | 78.5 | 62.6 | 46.4 | 67 | 50 | 83.7 | **89.1** | 58.8 |
88
+ | Ristretto-3B | 67.7 | <ins>80.2</ins> | <ins>62.8</ins> | <ins>51.3</ins> | 67.6 | 50.2 | 84.2 | 84.7 | 60.7 |
89
+ | Ovis-U1 | <ins>69.6</ins> | 77.8 |61.3 | 51.1 | <ins>69.4</ins> | <ins>56.3</ins> | <ins>85.6</ins> | <ins>88.3</ins> | 66.7 |
90
 
91
  #### GenEval
92
 
93
+ | Model | Overall |Single object | Two object | Counting | Colors | Position | Attribute binding |
94
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
95
+ | GPT-4o | 0.84 | <ins>0.99</ins> | 0.92 | <ins>0.85</ins> | 0.92 | 0.75 | 0.61 |
96
+ | BAGEL | 0.82 | <ins>0.99</ins> | 0.94 | 0.81 | 0.88 | 0.64 | 0.63 |
97
+ | BAGEL πŸ“ | <ins>0.88</ins> | 0.98 | 0.95 | 0.84 | <ins>0.95</ins> | <ins>0.78</ins> | **0.77** |
98
+ | UniWorld-V1 | 0.80 | <ins>0.99</ins> | 0.93 | 0.79 | 0.89 | 0.49 | 0.70 |
99
+ | UniWorld-V1 πŸ“ | 0.84 | 0.98 | 0.93 | 0.81 | 0.89 | 0.74 | 0.71 |
100
+ | OmniGen | 0.68 | 0.98 | 0.84 | 0.66 | 0.74 | 0.40 | 0.43 |
101
+ | OmniGen2 |0.80 | **1** | 0.95 | 0.64 | 0.88 | 0.55 | <ins>0.76</ins> |
102
+ | OmniGen2 πŸ“ | 0.86 | <ins>0.99</ins> | <ins>0.96</ins> | 0.74 | **0.98** | 0.71 | 0.75 |
103
+ | Ovis-U1 |**0.89** | 0.98 | **0.98** | **0.90** | 0.92 | **0.79** | 0.75 |
104
 
105
  *πŸ“ denotes using the rewritten prompts*
106
 
107
  #### DPG-Bench
108
 
109
+ | Model | Overall | Global | Entity | Attribute | Relation | Other |
110
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|
111
+ | BAGEL | **85.07** | **88.94** | **90.37** | **91.29** | <ins>90.82</ins> | <ins>88.67</ins> |
112
+ | UniWorld-V1 |81.38 | 83.64 | 88.39 | 88.44 | 89.27 | 87.22 |
113
+ | OmniGen |81.16 | 87.90 | 88.97 | 88.47 | 87.95 | 83.56 |
114
+ | OmniGen2 |83.57 | <ins>88.81</ins> | 88.83 | <ins>90.18</ins> | 89.37 | **90.27** |
115
+ | Ovis-U1 | <ins>83.72</ins> | 82.37 | <ins>90.08</ins> | 88.68 | **93.35** | 85.20 |
116
 
117
  #### ImgEdit-Bench
118
 
119
+ | Model | Overall |Add | Adjust | Extract | Replace | Remove | Background | Style | Hybrid | Action |
120
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
121
+ | GPT-4o | **4.2** | **4.61** | **4.33** | <ins>2.9</ins> | <ins>4.35</ins> | <ins>3.66</ins> | **4.57** | **4.93** | **3.96** | **4.89** |
122
+ | MagicBrush | 1.90 | 2.84 | 1.58 | 1.51 | 1.97 | 1.58 | 1.75 | 2.38 | 1.62 | 1.22 |
123
+ | Instruct-P2P | 1.88 | 2.45 | 1.83 | 1.44 | 2.01 | 1.50 | 1.44 | 3.55 | 1.2 | 1.46 |
124
+ | AnyEdit | 2.45 | 3.18 | 2.95 | 1.88 | 2.47 | 2.23 | 2.24 | 2.85 | 1.56 | 2.65 |
125
+ | UltraEdit |2.7 | 3.44 | 2.81 | 2.13 | 2.96 | 1.45 | 2.83 | 3.76 | 1.91 | 2.98 |
126
+ | OmniGen | 2.96 | 3.47 | 3.04 | 1.71 | 2.94 | 2.43 | 3.21 | 4.19 | 2.24 | 3.38 |
127
+ | Step1X-Edit |3.06 | 3.88 | 3.14 | 1.76 | 3.40 | 2.41 | 3.16 | 4.63 | 2.64 | 2.52 |
128
+ | ICEdit |3.05 | 3.58 | 3.39 | 1.73 | 3.15 | 2.93 | 3.08 | 3.84 | 2.04 | 3.68 |
129
+ | BAGEL |3.2 | 3.56 | 3.31 | 1.7 | 3.3 | 2.62 | 3.24 | 4.49 | 2.38 | 4.17 |
130
+ | UniWorld-V1 |3.26 | 3.82 | 3.64 | 2.27 | 3.47 | 3.24 | 2.99 | 4.21 | 2.96 | 2.74 |
131
+ | OmniGen2 | 3.44 | 3.57 | 3.06 | 1.77 | 3.74 | 3.2 | 3.57 | <ins>4.81</ins> | 2.52 | <ins>4.68</ins> |
132
+ | Ovis-U1 |<ins>4.00</ins> | <ins>4.13</ins> | <ins>3.62</ins> | **2.98** | **4.45** | **4.06** | <ins>4.22</ins> | 4.69 | <ins>3.45</ins> | 4.61 |
133
+
134
 
135
  #### GEdit-Bench-EN
136
 
137
+ | Model | Avg | Background Change | Color Alteration | Material Modification | Motion Change | Portrait Beautification | Style Transfer | Subject Addition | Subject Removal | Subject Replacement | Text Modification | Tone Transformation |
138
  |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
139
+ | GPT-4o |**7.534** | 7.205 | 6.491 | **6.607** | **8.096** | **7.768** | <ins>6.961</ins> | 7.622 | **8.331** | **8.067** | **7.427** | **8.301** |
140
+ | AnyEdit | 3.212 | 4.663 | 4.260 | 2.537 | 2.024 | 3.479 | 2.032 | 3.995 | 3.089 | 3.180 | 0.922 | 5.151 |
141
+ | Instruct-Pix2Pix | 3.684 | 3.825 | 5.182 | 3.688 | 3.509 | 4.339 | 4.560 | 3.461 | 2.031 | 4.237 | 0.955 | 4.733 |
142
+ | MagicBrush |4.518 | 5.637 | 5.136 | 5.078 | 4.513 | 4.487 | 4.439 | 5.252 | 3.704 | 4.941 | 1.384 | 5.130 |
143
+ | OmniGen | 5.062 | 5.281 | 6.003 | 5.308 | 2.916 | 3.087 | 4.903 | 6.628 | 6.352 | 5.616 | 4.519 | 5.064 |
144
+ | Gemini |6.315 | 6.781 | 6.369 | 6.040 | 6.938 | 5.591 | 4.676 | 7.501 | 6.447 | 7.003 | 5.765 | 6.350 |
145
+ | Step1X-Edit | 6.701 | 6.547 | 6.545 | 6.204 | 6.483 | 6.787 | **7.221** | 6.975 | 6.512 | 7.068 | <ins>6.921</ins> | 6.448 |
146
+ | Doubao |<ins>6.754</ins> | <ins>7.430</ins> | **7.095** | 6.339 | <ins>6.973</ins> | <ins>6.972</ins> | 6.767 | <ins>7.674</ins> | 6.748 | <ins>7.447</ins> | 3.471 | <ins>7.383</ins> |
147
+ | BAGEL | 6.519 | 7.324 | <ins>6.909</ins> | <ins>6.381</ins> | 4.753 | 4.573 | 6.150 | **7.896** | 7.164 | 7.021 | 7.320 | 6.218 |
148
+ | Ovis-U1 |6.420 | **7.486** | 6.879 | 6.208 | 4.790 | 5.981 | 6.463 | 7.491 | <ins>7.254</ins> | 7.266 | 4.482 | 6.314 |
149
+
150
 
151
  ## πŸ“š Citation
152