Xxxmercedesxxx-Odin

Boss: Raging Magma Protector & Angry Heat Protector in Makarna of Bitterness (difficult)
Session: 07.05.2022 23:17:25 - 23:23:32
Game Version: 8.2
App Version: 0.7.1.3
Duration: 6min 7s
Deaths: 0
Ping: 32
bossDPS: 74.556
bossDMG: 27.353.941
Heal: 35.115
allDPS: 80.886
allDMG: 29.676.395
Buffs: Blessed Light 2 (Improved) Divine Protection [Evolution] Repeated Jolting Strike (Level 1) Tiamat [Evolution] Soul Wave (Level 1) Attack: Increases Attack Power 10 Attack: Increase Crit Strike 10 Grim Vision: Enchanted Greatsword 13 Ice Dragon Feather: Boost Physical Attack 4
Damage Distribution
Skill Uses Crit Resist Dodge Parry Block Min Max Avg Damage
(Improved) Punishment 17 16 (94%) 0 0 0 0 155.896 429.266 357.294 6.074.010 (22%)
(Improved) Depriving Strike 45 21 (47%) 0 0 0 0 34.531 136.235 75.980 3.419.112 (12%)
Auto-Attack 46 30 (65%) 0 0 0 0 31.218 109.629 71.641 3.295.521 (12%)
Body Smash 17 12 (71%) 0 0 0 0 47.593 158.391 109.993 1.869.882 (7%)
Robust Blow 11 9 (82%) 0 0 0 0 57.267 180.310 145.539 1.600.931 (6%)
(Improved) Bloodsucking Punishment 8 3 (38%) 0 0 0 0 88.697 341.117 184.129 1.473.033 (5%)
Wrath Strike 10 7 (70%) 0 0 0 0 60.346 169.742 127.517 1.275.174 (5%)
Ferocious Strike 11 8 (73%) 0 0 0 0 58.825 146.813 110.620 1.216.829 (4%)
(Improved) Elimination Strike 3 2 (67%) 0 0 0 0 204.922 490.655 387.537 1.162.611 (4%)
(Improved) Ankle Blow 4 2 (50%) 0 0 0 0 127.827 410.928 272.373 1.089.493 (4%)
Attack: Additional Damage 26 0 0 0 0 0 33.696 43.804 41.212 1.071.517 (4%)
(Improved) Inquisitor's Blow 4 4 (100%) 0 0 0 0 196.981 248.139 229.975 919.902 (3%)
Judgment Blow 3 2 (67%) 0 0 0 0 91.600 252.009 194.975 584.926 (2%)
Annihilating Blow 2 1 (50%) 0 0 0 0 168.987 393.766 281.376 562.753 (2%)
Binding Wave 2 1 (50%) 0 0 0 0 144.248 340.364 242.306 484.612 (2%)
Dazing Severe Blow 5 2 (40%) 0 0 0 0 57.396 133.378 90.935 454.675 (2%)
Divine Blow 4 3 (75%) 0 0 0 0 65.096 159.970 108.561 434.247 (2%)
Judgment 1 1 (100%) 0 0 0 0 210.153 210.153 210.153 210.153 (1%)
(Improved) Magic Smash 1 1 (100%) 0 0 0 0 154.560 154.560 154.560 154.560 (1%)
Summary 220 125 (57%) 0 0 0 0 31.218 490.655 124.336 27.353.941

Time Status Damage Heal Target
23:16:35
23:17:26 0 0 Xxxmercedesxxx
23:17:27 127.827 0 Angry Heat Protector
23:17:27 Critical 92.676 0 Angry Heat Protector
23:17:28 34.531 0 Angry Heat Protector
23:17:28 34.531 0 Angry Heat Protector
23:17:29 31.218 Angry Heat Protector
23:17:29 35.434 0 Angry Heat Protector
23:17:29 Critical 222.263 0 Angry Heat Protector
23:17:30 Critical 90.066 Angry Heat Protector
23:17:30 0 0 Xxxmercedesxxx
23:17:30 0 0 Kuchenkaffee
23:17:30 0 0 Azumaree
23:17:30 0 0 Mafuberz
23:17:30 0 0 Xxxmercedesxxx
23:17:31 Critical 80.106 Angry Heat Protector
23:17:31 0 0 Xxxmercedesxxx
23:17:31 0 0 Xxxmercedesxxx
23:17:32 1 0 Xxxmercedesxxx
23:17:32 Critical 300.580 0 Angry Heat Protector
23:17:32 33.696 0 Angry Heat Protector
23:17:33 Critical 281.600 0 Angry Heat Protector
23:17:33 Critical 103.019 0 Angry Heat Protector
23:17:33 0 17.950 Xxxmercedesxxx
23:17:34 Critical 84.460 0 Angry Heat Protector
23:17:34 Critical 89.889 0 Angry Heat Protector
23:17:34 33.696 0 Angry Heat Protector
23:17:35 Critical 90.191 0 Angry Heat Protector
23:17:35 Critical 81.187 Angry Heat Protector
23:17:36 Critical 248.139 0 Angry Heat Protector
23:17:36 Critical 89.032 Angry Heat Protector
23:17:37 76.279 0 Angry Heat Protector
23:17:37 43.804 0 Angry Heat Protector
23:17:37 Critical 146.813 0 Angry Heat Protector
23:17:37 0 4.726 Xxxmercedesxxx
23:17:38 Critical 180.310 0 Angry Heat Protector
23:17:38 Critical 162.632 0 Angry Heat Protector
23:17:39 Critical 98.592 Angry Heat Protector
23:17:39 0 4.957 Xxxmercedesxxx
23:17:40 Critical 148.412 0 Angry Heat Protector
23:17:40 Critical 129.270 0 Angry Heat Protector
23:17:41 Critical 119.002 0 Angry Heat Protector
23:17:41 51.800 0 Angry Heat Protector
23:17:41 0 4.618 Xxxmercedesxxx
23:17:42 Critical 97.722 Angry Heat Protector
23:17:42 137.004 0 Angry Heat Protector
23:17:43 43.804 0 Angry Heat Protector
23:17:43 Critical 80.538 Angry Heat Protector
23:17:43 Critical 391.022 0 Angry Heat Protector
23:17:44 43.804 0 Angry Heat Protector
23:17:44 Critical 387.079 0 Angry Heat Protector
23:17:45 Critical 140.156 0 Angry Heat Protector
23:17:45 Critical 162.684 0 Angry Heat Protector
23:17:45 Critical 142.830 0 Angry Heat Protector
23:17:46 Critical 91.013 Angry Heat Protector
23:17:46 Critical 139.043 0 Angry Heat Protector
23:17:47 Critical 125.091 0 Angry Heat Protector
23:17:47 51.800 0 Angry Heat Protector
23:17:48 Critical 96.784 Angry Heat Protector
23:17:48 Critical 117.485 0 Angry Heat Protector
23:17:49 36.828 Angry Heat Protector
23:17:49 Critical 340.364 0 Angry Heat Protector
23:17:49 43.804 0 Angry Heat Protector
23:17:50 0 0 Angry Heat Protector
23:17:50 Critical 393.766 0 Angry Heat Protector
23:17:50 0 0 Angry Heat Protector
23:17:51 Critical 490.655 0 Angry Heat Protector
23:17:51 58.825 0 Angry Heat Protector
23:17:52 Critical 163.870 0 Angry Heat Protector
23:17:52 Critical 158.865 0 Angry Heat Protector
23:17:53 63.185 0 Angry Heat Protector
23:17:54 51.127 0 Angry Heat Protector
23:17:54 51.127 0 Angry Heat Protector
23:17:54 35.689 Angry Heat Protector
23:17:54 Critical 122.346 0 Angry Heat Protector
23:17:55 43.804 0 Angry Heat Protector
23:17:55 43.804 0 Angry Heat Protector
23:17:55 Critical 371.580 0 Angry Heat Protector
23:17:56 Critical 341.973 0 Angry Heat Protector
23:17:56 43.804 0 Angry Heat Protector
23:17:57 36.535 Angry Heat Protector
23:17:57 115.497 0 Angry Heat Protector
23:17:58 Critical 82.865 Angry Heat Protector
23:17:58 0 0 Xxxmercedesxxx
23:17:58 Critical 134.141 0 Angry Heat Protector
23:17:59 48.311 0 Angry Heat Protector
23:17:59 Critical 113.893 0 Angry Heat Protector
23:18:00 50.217 0 Angry Heat Protector
23:18:00 Critical 410.928 0 Angry Heat Protector
23:18:01 Critical 252.009 0 Angry Heat Protector
23:18:01 39.089 Angry Heat Protector
23:18:02 72.093 0 Angry Heat Protector
23:18:02 65.096 0 Angry Heat Protector
23:18:03 Critical 135.493 0 Angry Heat Protector
23:18:03 Critical 171.301 0 Angry Heat Protector
23:18:04 68.768 0 Angry Heat Protector
23:18:04 66.051 0 Angry Heat Protector
23:18:05 53.612 0 Angry Heat Protector
23:18:05 40.722 0 Angry Heat Protector
23:18:06 Critical 98.113 Angry Heat Protector
23:18:06 Critical 93.993 0 Angry Heat Protector
23:18:06 Critical 196.981 0 Angry Heat Protector
23:18:07 37.996 Angry Heat Protector
23:18:07 Critical 323.925 0 Angry Heat Protector
23:18:08 Critical 302.096 0 Angry Heat Protector
23:18:08 Critical 105.750 0 Angry Heat Protector
23:18:09 57.267 0 Angry Heat Protector
23:18:09 Critical 117.871 0 Angry Heat Protector
23:18:10 33.696 0 Angry Heat Protector
23:18:10 106.305 0 Angry Heat Protector
23:18:10 33.696 0 Angry Heat Protector
23:18:10 35.493 Angry Heat Protector
23:18:11 47.593 0 Angry Heat Protector
23:18:11 Critical 88.484 0 Angry Heat Protector
23:18:12 35.227 0 Angry Heat Protector
23:18:12 Critical 71.840 Angry Heat Protector
23:18:12 Critical 81.142 0 Angry Heat Protector
23:18:13 35.170 Angry Heat Protector
23:18:14 Critical 95.208 0 Angry Heat Protector
23:18:14 33.696 0 Angry Heat Protector
23:18:14 Critical 125.094 0 Angry Heat Protector
23:18:15 Critical 154.560 0 Angry Heat Protector
23:18:15 33.696 0 Angry Heat Protector
23:18:15 35.670 Angry Heat Protector
23:18:16 0 0 Xxxmercedesxxx
23:18:16 Critical 124.968 0 Angry Heat Protector
23:18:17 Critical 99.663 0 Angry Heat Protector
23:18:17 37.065 0 Angry Heat Protector
23:18:17 44.251 0 Angry Heat Protector
23:18:18 Critical 100.694 0 Angry Heat Protector
23:18:18 Critical 95.133 Angry Heat Protector
23:18:19 57.396 0 Angry Heat Protector
23:18:19 Critical 159.970 0 Angry Heat Protector
23:18:20 Critical 210.153 0 Angry Heat Protector
23:18:21 Critical 146.813 0 Angry Heat Protector
23:18:21 Critical 170.135 0 Angry Heat Protector
23:18:22 Critical 168.814 0 Angry Heat Protector
23:18:22 Critical 152.859 0 Angry Heat Protector
23:18:23 Critical 125.317 0 Angry Heat Protector
23:18:23 55.791 0 Angry Heat Protector
23:18:24 Critical 92.265 Angry Heat Protector
23:18:24 55.791 0 Angry Heat Protector
23:18:24 43.804 0 Angry Heat Protector
23:18:25 Critical 417.914 0 Angry Heat Protector
23:18:25 Critical 429.266 0 Angry Heat Protector
23:18:26 Critical 107.354 Angry Heat Protector
23:18:26 Critical 341.117 0 Angry Heat Protector
23:18:27 43.804 0 Angry Heat Protector
23:18:27 Critical 87.636 Angry Heat Protector
23:18:27 43.804 0 Angry Heat Protector
23:18:28 Critical 104.742 Angry Heat Protector
23:18:28 61.456 0 Angry Heat Protector
23:18:29 Critical 171.187 0 Angry Heat Protector
23:18:29 Critical 157.412 0 Angry Heat Protector
23:18:30 66.661 0 Angry Heat Protector
23:18:30 52.975 0 Angry Heat Protector
23:18:31 Critical 120.147 0 Angry Heat Protector
23:18:31 Critical 87.069 Angry Heat Protector
23:18:31 51.800 0 Angry Heat Protector
23:18:32 Critical 246.787 0 Angry Heat Protector
23:18:32 Critical 76.281 Angry Heat Protector
23:18:32 168.987 0 Angry Heat Protector
23:18:33 0 0 Angry Heat Protector
23:18:33 Critical 403.901 0 Angry Heat Protector
23:18:34 Critical 241.317 0 Angry Heat Protector
23:18:34 43.804 0 Angry Heat Protector
23:18:34 36.798 Angry Heat Protector
23:18:35 204.922 0 Angry Heat Protector
23:18:36 Critical 407.253 0 Angry Heat Protector
23:18:36 43.804 0 Angry Heat Protector
23:18:36 Critical 407.253 0 Angry Heat Protector
23:18:37 37.644 Angry Heat Protector
23:18:37 43.804 0 Angry Heat Protector
23:18:38 Critical 158.391 0 Angry Heat Protector
23:18:38 57.252 0 Angry Heat Protector
23:18:39 56.714 0 Angry Heat Protector
23:18:39 43.804 0 Angry Heat Protector
23:18:39 Critical 109.629 Angry Heat Protector
23:18:39 Critical 136.235 0 Angry Heat Protector
23:18:40 38.563 Angry Heat Protector
23:18:40 43.804 0 Angry Heat Protector
23:18:41 Critical 338.268 0 Angry Heat Protector
23:18:41 Critical 90.985 Angry Heat Protector
23:18:41 59.313 0 Angry Heat Protector
23:18:42 Critical 171.250 0 Angry Heat Protector
23:18:42 67.894 0 Angry Heat Protector
23:18:43 Critical 80.827 Angry Heat Protector
23:18:43 Critical 147.896 0 Angry Heat Protector
23:18:44 52.925 0 Angry Heat Protector
23:18:44 52.925 0 Angry Heat Protector
23:18:45 55.804 0 Angry Heat Protector
23:18:45 Critical 86.321 Angry Heat Protector
23:18:46 45.090 Angry Heat Protector
23:18:46 Critical 405.953 0 Angry Heat Protector
23:18:47 Critical 408.936 0 Angry Heat Protector
23:18:48 37.804 Angry Heat Protector
23:18:48 Critical 141.591 0 Angry Heat Protector
23:18:49 77.522 0 Angry Heat Protector
23:18:49 Critical 169.742 0 Angry Heat Protector
23:18:50 Critical 114.275 0 Angry Heat Protector
23:18:50 Critical 88.262 0 Angry Heat Protector
23:18:51 Critical 88.262 0 Angry Heat Protector
23:18:51 38.916 0 Angry Heat Protector
23:18:52 Critical 82.079 Angry Heat Protector
23:18:52 Critical 115.529 0 Angry Heat Protector
23:18:53 Critical 100.534 0 Angry Heat Protector
23:18:54 33.339 Angry Heat Protector
23:18:54 88.697 0 Angry Heat Protector
23:19:31 146.837 0 Raging Magma Protector
23:19:31 91.600 0 Raging Magma Protector
23:19:31 43.804 0 Raging Magma Protector
23:19:32 0 0 Raging Heat Minion
23:19:32 0 0 Raging Heat Minion
23:19:32 0 0 Raging Heat Minion
23:19:32 0 0 Raging Heat Minion
23:19:32 0 0 Raging Heat Minion
23:19:32 0 0 Raging Heat Minion
23:19:32 0 0 Raging Magma Protector
23:19:33 32.539 Raging Heat Minion
23:19:33 0 0 Raging Heat Minion
23:19:34 46.060 0 Raging Heat Minion
23:19:35 40.082 0 Raging Heat Minion
23:19:35 41.300 0 Raging Heat Minion
23:19:36 Critical 76.784 0 Raging Heat Minion
23:19:36 Critical 76.784 0 Raging Heat Minion
23:19:37 Critical 76.784 0 Raging Heat Minion
23:19:37 33.696 0 Raging Heat Minion
23:19:37 114.667 0 Raging Heat Minion
23:19:38 0 0 Raging Heat Minion
23:19:38 33.260 0 Raging Heat Minion
23:19:38 33.260 0 Raging Heat Minion
23:19:38 33.260 0 Raging Heat Minion
23:19:38 Critical 75.434 0 Raging Heat Minion
23:19:38 Critical 0 0 Raging Heat Minion
23:19:44 Critical 85.794 Raging Magma Protector
23:19:45 Critical 98.706 Raging Magma Protector
23:19:45 Critical 149.248 0 Raging Magma Protector
23:19:46 Critical 125.411 0 Raging Magma Protector
23:19:46 Critical 150.311 0 Raging Magma Protector
23:19:47 60.346 0 Raging Magma Protector
23:19:47 123.882 0 Raging Magma Protector
23:19:48 Critical 86.769 Raging Magma Protector
23:19:48 Critical 378.246 0 Raging Magma Protector
23:19:48 Critical 363.438 0 Raging Magma Protector
23:19:49 43.804 0 Raging Magma Protector
23:19:49 Critical 93.321 Raging Magma Protector
23:19:50 Critical 467.034 0 Raging Magma Protector
23:19:50 Critical 0 0 Raging Heat Minion
23:19:50 144.248 0 Raging Magma Protector
23:19:50 0 0 Raging Heat Minion
23:19:50 0 0 Raging Magma Protector
23:19:51 Critical 227.995 0 Raging Magma Protector
23:19:51 61.501 0 Raging Magma Protector
23:19:52 43.804 0 Raging Magma Protector
23:19:52 50.417 0 Raging Magma Protector
23:19:52 43.804 0 Raging Magma Protector
23:19:52 Critical 120.643 0 Raging Magma Protector
23:19:53 Critical 97.807 Raging Magma Protector
23:19:53 Critical 120.643 0 Raging Magma Protector
23:20:09 0 Raging Heat Minion
23:20:18 0 0 Raging Heat Minion
23:20:21 Critical 0 0 Raging Heat Minion
23:20:21 0 0 Raging Heat Minion
23:20:22 0 0 Raging Heat Minion
23:20:36 28.441 Young Protector
23:20:37 Critical 64.893 Young Protector
23:20:37 33.696 0 Young Protector
23:20:42 0 0 Raging Heat Minion
23:20:42 0 0 Raging Heat Minion
23:20:43 0 0 Raging Heat Minion
23:20:47 Critical 0 Raging Heat Minion
23:20:48 0 0 Raging Heat Minion
23:20:48 Critical 0 0 Raging Heat Minion
23:20:55 0 0 Raging Heat Minion
23:20:56 Critical 78.115 Raging Heat Minion
23:20:57 0 0 Raging Heat Minion
23:20:57 0 0 Raging Heat Minion
23:20:57 0 0 Raging Heat Minion
23:20:57 0 0 Raging Heat Minion
23:20:57 0 0 Raging Magma Protector
23:21:07 44.226 0 Raging Heat Minion
23:21:07 38.486 0 Raging Heat Minion
23:21:08 31.120 Raging Heat Minion
23:21:10 34.052 Raging Heat Minion
23:21:10 33.696 0 Raging Heat Minion
23:21:19 Critical 254.508 0 Raging Heat Minion
23:21:20 35.821 Raging Heat Minion
23:21:20 Critical 189.400 0 Raging Heat Minion
23:21:21 Critical 80.875 Raging Heat Minion
23:21:21 Critical 238.346 0 Raging Heat Minion
23:21:23 155.896 0 Raging Magma Protector
23:21:29 0 Raging Heat Minion
23:21:30 Critical 0 0 Raging Heat Minion
23:21:30 Critical 0 0 Raging Heat Minion
23:21:30 Critical 0 0 Raging Heat Minion
23:21:31 0 0 Raging Heat Minion
23:21:32 0 0 Raging Heat Minion
23:21:32 0 0 Raging Magma Protector
23:21:33 0 0 Raging Heat Minion
23:21:51 Critical 0 Raging Heat Minion
23:21:52 0 0 Raging Heat Minion
23:21:52 0 0 Raging Heat Minion
23:21:52 0 0 Raging Heat Minion
23:21:52 0 Raging Heat Minion
23:21:53 Critical 0 0 Raging Heat Minion
23:21:53 0 0 Raging Heat Minion
23:21:54 0 0 Raging Heat Minion
23:21:54 Critical 0 Raging Heat Minion
23:21:55 0 0 Raging Heat Minion
23:21:55 0 0 Raging Heat Minion
23:21:55 Critical 0 0 Raging Heat Minion
23:21:56 Critical 0 Raging Heat Minion
23:21:57 Critical 0 0 Raging Heat Minion
23:21:57 0 0 Raging Heat Minion
23:21:57 Critical 0 0 Raging Heat Minion
23:21:58 0 0 Raging Heat Minion
23:21:58 Critical 0 0 Raging Heat Minion
23:21:59 0 Raging Heat Minion
23:21:59 Critical 0 0 Raging Heat Minion
23:21:59 0 0 Raging Heat Minion
23:21:59 0 0 Raging Heat Minion
23:21:59 0 0 Raging Heat Minion
23:22:00 0 0 Raging Heat Minion
23:22:00 0 0 Raging Heat Minion
23:22:00 0 0 Raging Heat Minion
23:22:05 Critical 0 0 Raging Heat Minion
23:22:05 Critical 0 0 Raging Heat Minion
23:22:05 Critical 0 0 Raging Heat Minion
23:22:06 0 Raging Heat Minion
23:22:07 Critical 0 0 Raging Heat Minion
23:22:07 Critical 0 0 Raging Heat Minion
23:22:08 Critical 0 Raging Heat Minion
23:22:08 0 0 Raging Heat Minion
23:22:09 Critical 0 0 Raging Heat Minion
23:22:10 0 Raging Heat Minion
23:22:12 0 0 Raging Heat Minion
23:22:12 0 0 Raging Heat Minion
23:22:12 Critical 0 0 Raging Heat Minion
23:22:14 Critical 0 Raging Heat Minion
23:22:15 0 Raging Heat Minion
23:22:17 Critical 0 Raging Heat Minion
23:22:18 0 0 Raging Heat Minion
23:22:19 Critical 0 Raging Heat Minion
23:22:20 Critical 0 Raging Heat Minion
23:22:21 0 0 Raging Magma Protector
23:22:22 0 0 Raging Heat Minion
23:22:22 0 0 Raging Heat Minion
23:22:22 0 0 Raging Heat Minion
23:22:22 0 0 Raging Heat Minion
23:22:22 0 0 Raging Heat Minion
23:22:22 0 0 Raging Heat Minion
23:22:22 0 0 Raging Magma Protector
23:22:22 Critical 133.378 0 Raging Magma Protector
23:22:23 33.721 Raging Magma Protector
23:22:23 Critical 108.647 0 Raging Magma Protector
23:22:24 Critical 88.298 Raging Magma Protector
23:22:24 Critical 99.963 0 Raging Magma Protector
23:22:36 31.884 Young Protector
23:22:37 Critical 80.524 Young Protector
23:22:37 36.431 0 Young Protector
23:22:37 33.696 0 Young Protector
23:22:37 33.696 0 Young Protector
23:22:37 Critical 101.487 0 Young Protector
23:22:38 40.743 0 Young Protector
23:22:39 Critical 64.408 Young Protector
23:22:48 Critical 0 Raging Heat Minion
23:22:49 Critical 0 0 Raging Heat Minion
23:22:49 0 0 Raging Heat Minion
23:22:50 Critical 0 0 Raging Heat Minion
23:22:51 0 Raging Heat Minion
23:22:51 Critical 0 0 Raging Heat Minion
23:22:52 Critical 0 0 Raging Heat Minion
23:23:03 0 2.864 Xxxmercedesxxx
23:23:04 0 0 Xxxmercedesxxx
23:23:04 0 0 Freyjaa
23:23:04 0 0 Mafuberz
23:23:04 0 0 Kuchenkaffee
23:23:04 0 0 Azumaree
23:23:04 0 0 Liella
23:23:07 0 0 Raging Heat Minion
23:23:07 0 0 Raging Heat Minion
23:23:07 0 0 Raging Magma Protector
23:23:09 Critical 0 Raging Heat Minion
23:23:15 0 Raging Heat Minion
23:23:16 0 Raging Heat Minion
23:23:17 Critical 0 Raging Heat Minion
23:23:18 Critical 0 Raging Heat Minion
23:23:26 0 Raging Heat Minion
23:23:29 0 0 Xxxmercedesxxx
23:23:29 0 0 Kuchenkaffee
23:23:29 0 0 Freyjaa
23:23:29 0 0 Azumaree
23:23:29 0 0 Mafuberz
23:23:29 0 0 Liella
23:23:30 0 0 Xxxmercedesxxx