피에 목마른 라오크
Raok, the Bloodthirsty
Spectre | N |
---|---|
Tags | 2HBluntMetal_onhit_audio, human, humanoid, medium_movement, not_dex, not_int, red_blood |
생명력
70%
+75%
저항




Damage
175%
정확도
100%
치명타 명중 Chance
5%
치명타 피해 보너스
+30%
Attack Distance
4 ~ 12
공격 속도
1.005 Second
Damage Spread
±20%
경험치
250%
Model Size
100%
Type
ExileWarrior2
Metadata
ExileWarrior2
The following values do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses.
레벨
68
생명력
5,430
4,223
708
Damage
408
주문 피해
408
정확도
2,464
공격 속도
1.005
경험치
71,585
Minion Life
4,851
Minion Damage
1,695
Minion Armour
7,842
The following values are skill base values and do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses, monster base damage(ex: The Maven 150% multiplier), monster rarity bonuses (ex: unique 70% more, unique attack 33% less).
ShieldBlockRogueExileWarrior2
Channel, RequiresShield, UsableWhileMoving, Attack, Area, Physical, Melee, NoAttackInPlace, NoAttackInPlace
방패 올리기
Base Damage: 326–490
치명타 명중 확률: 10%
공격 속도: 1.005 초
방패를 올려 받는 막아낼 수 있는 모든 공격을 막습니다. 적이 가까이 있을 때 막은 후 즉시 놓으면 방패 가격을 수행해 적들에게 피해를 주고 기절시킵니다. [Shield방패]를 올린 동안에는 막아내는 명중으로 인해 약한 기절을 하지 않지만, 너무 많은 피해를 막아내면 강력 기절할 수도 있습니다. [Shield방패]를 올린 동안에는 회피할 수 없지만, 회피 시 동일한 확률로 강력 기절 축적을 긴급회피합니다.
방패 가격 회피 불가
active block light stun threshold +% final [50]
active skill does not decay heavy stun during action [1]
active skill heavy stun decay after action delay ms [2000]
base minimum channel time ms [250]
can perform skill while moving [1]
channel skill end animation duration override ms [35]
movement speed +% final while performing action [-50]
movement speed acceleration +% per second while performing action [160]
movement speed while performing action locked duration % [50]
skill animation duration multiplier override [4]
skill is not considered a skill [1]

ArmourBreakerRogueExileWarrior2
Attack, MeleeSingleTarget, Melee, Area, Physical
방어구 파괴자
Base Damage: 326–490
치명타 명중 확률: 5%
공격 피해: 115%
공격 속도: 1.005 초
주는 공격 피해 15% 증폭
근접 타격 범위 +2
적을 밀어냄
쌍수 장착 시 공격 속도 40% 증폭
is area damage [1]
melee conditional step distance [17]
melee defer damage prediction [1]
precise cursor targeting uses contact point height offset [1]

StampedeRogueExileWarrior2
Attack, Melee, Area, Slam, Travel, CreatesGroundEffect, Duration, NoAttackInPlace, Jumping
쇄도
Base Damage: 326–490
치명타 명중 확률: 5%
공격 피해: 80%
공격 속도: 1.005 초
전방으로 돌진하여 대지에 균열을 생성하고 걸음을 옮길 때마다 가시 지대를 남깁니다. 돌진이 종료되면 큰 도약 강타가 적들에게 피해를 주고, 주변의 모든 가시 지대가 폭발하여 안에 서 있는 적에게 피해를 줍니다.
주는 공격 피해 20% 감폭
쌍수 장착 시 두 무기 모두 30% 감폭한 피해로 명중
삐죽삐죽한 지대 지속시간 6초
충격 및 가시 지대 반경 1.2미터
active skill base secondary area of effect radius [32]
attack is melee override [1]
attack maximum action distance + [45]
base skill show average damage instead of dps [1]
can create jagged ground [1]
is area damage [1]
shield charge acceleration duration ms [0]
shield charge base movement speed [70]
shield charge extra distance [53]
stampede pushiness + [20]

EarthshatterRogueExileWarrior2
Attack, Area, Melee, Slam, Duration, Totemable, SupportedByFountains, CreatesFissure, NoAttackInPlace, CanCreateStoneElementals
지면 분쇄
Base Damage: 326–490
치명타 명중 확률: 5%
공격 피해: 60%
공격 속도: 1.005 초
지면을 강타하여 적에게 범위 피해를 주는 균열 1개를 생성하고, 균열이 사라지면 가시를 방출하여 균열이 지나간 범위의 적들에게 피해를 줍니다. 자신 또는 동료가 가시 근처에서 함성을 사용하면 가시가 산산조각 나며 주변 적에게 피해를 줍니다.
주는 공격 피해 40% 감폭
가시 최대치 6
균열의 경로를 따라, 그리고 솟아나는 가시의
1미터 반경 내에 피해를 줌
1미터 반경 내에 피해를 줌
가시 지속시간 6초
is area damage [1]

SeismicCryRogueExileWarrior2
Warcry, Area, Damage, ConsumesCharges, SkillConsumesEnduranceChargesOnUse, Cooldown, Physical, EmpowersOtherSkill, UsableWhileMoving, NoAttackInPlace, Nova
지진 함성
재사용 대기시간: 8 초
피해를 주는 함성을 질러 주변의 적들을 뒤로 밀어내고 기절 준비 완료 상태의 적은 강력 기절시킵니다. 적이 강력 기절하거나 이미 강력 기절해 있는 적에게 명중하면 이 스킬이 다음 강타를 강화하여 추가 여진을 발생시킵니다. 이 기술의 재사용 대기시간은 인내 충전을 소모하여 무시할 수 있습니다.
적을 밀어냄
함성 반경 4미터
active skill show crush range [1]
can perform skill while moving [1]
cannot cancel skill before contact point [1]
crushing blow [1]
display skill deals secondary damage [1]
is area damage [1]
movement speed +% final while performing action [-70]
movement speed acceleration +% per second while performing action [160]
movement speed while performing action locked duration % [50]
seismic cry slam skill additional aftershocks [1]
warcry minimum benefit if monster power present [1]

DodgeRollRogueExileGeneric
UsableWhileShapeshifted
회피 구르기 거리 +4.6미터
주는 공격 피해 10% 감폭
이 스킬의 시전 속도 변경 불가
action allowed queue time override ms [100]
action attack or cast time uses animation length [1]
base deal no damage [1]
base skill enabled while mounted [1]
dodge roll additional pushiness modifier [5]
dodge roll stun threshold +% final [100]
dynamic target updating prioritises movement vector [1]
skill cannot be knocked back [1]
skill is not considered a skill [1]
usable while shapeshifted town or hideout only [1]

WalkEmergeRogueExile
walk emerge distance [300]
Object Type
version 2 extends "Metadata/Monsters/RogueExiles/RogueExileBase" PlayerClass { class = "Warrior" } StateMachine { define_shared_state = "suppress_anim_sounds;" }
Object Type Codes
version 2 extends "Metadata/Monsters/RogueExiles/RogueExileBase" Functions { combat_dialogue = " Roll(1, 2, { PlayTextAudio( RogueExile_Raok_Combat_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' ); } ); " player_engaged_random = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" } Brackets { player_engaged_dialogue_StrFour = "PlayTextAudio( RogueExile_Raok_EngageKarui, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Marauder player_engaged_dialogue_StrFourb = "PlayTextAudio( RogueExile_Raok_EngageKarui, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Warrior player_engaged_dialogue_IntFour = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Witch player_engaged_dialogue_IntFourb = "PlayTextAudio( RogueExile_Raok_EngageSorceress, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Sorceress player_engaged_dialogue_DexFour = "PlayTextAudio( RogueExile_Raok_EngageRanger, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Ranger player_engaged_dialogue_DexFourb = "PlayTextAudio( RogueExile_Raok_EngageHuntress, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Huntress player_engaged_dialogue_StrDexFour = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Duelist player_engaged_dialogue_StrDexFourb = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Mercenary player_engaged_dialogue_DexIntFour = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Shadow player_engaged_dialogue_DexIntFourb = "PlayTextAudio( RogueExile_Raok_EngageMonk, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Monk player_engaged_dialogue_StrIntFour = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Templar player_engaged_dialogue_StrIntFourb = "PlayTextAudio( RogueExile_Raok_EngageGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Druid player_death_dialogue_StrFour = "PlayTextAudio( RogueExile_Raok_KillPlayerKarui, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Marauder player_death_dialogue_StrFourb = "PlayTextAudio( RogueExile_Raok_KillPlayerKarui, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Warrior player_death_dialogue_IntFour = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Witch player_death_dialogue_IntFourb = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Sorceress player_death_dialogue_DexFour = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Ranger player_death_dialogue_DexFourb = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Huntress player_death_dialogue_StrDexFour = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Duelist player_death_dialogue_StrDexFourb = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Mercenary player_death_dialogue_DexIntFour = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Shadow player_death_dialogue_DexIntFourb = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Monk player_death_dialogue_StrIntFour = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Templar player_death_dialogue_StrIntFourb = "PlayTextAudio( RogueExile_Raok_KillPlayerGeneral_Random, 'Metadata/Monsters/RogueExiles/Str/ExileWarrior2' );" // Druid } StateMachine { on_state_suppress_anim_sounds_0 = { EnableAnimationSounds(); } on_state_suppress_anim_sounds_1 = { DisableAnimationSounds(); } }
-- src\Data\Spectres.lua minions["Metadata/Monsters/RogueExiles/Str/ExileWarrior2"] = { name = "Raok, the Bloodthirsty", life = 0.7, fireResist = 0, coldResist = 0, lightningResist = 0, chaosResist = 0, damage = 1.75, damageSpread = 0.2, attackTime = 1.005, attackRange = 12, accuracy = 1, weaponType1 = "One Hand Mace", weaponType2 = "Shield", skillList = { "Melee1HMaceRogueExile", "SeismicCryRogueExileWarrior2", "DodgeRollRogueExileGeneric", "ShieldBlockRogueExileWarrior2", "ArmourBreakerRogueExileWarrior2", "StampedeRogueExileWarrior2", "EarthshatterRogueExileWarrior2", "WalkEmergeRogueExile", }, modList = { }, } -- src\Data\Skills\spectre.lua skills["Melee1HMaceRogueExile"] = { name = "Mace Strike", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, description = "[Strike] with your Mace.", skillTypes = { [SkillType.Attack] = true, [SkillType.MeleeSingleTarget] = true, [SkillType.Melee] = true, [SkillType.Area] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, melee = true, }, baseMods = { }, qualityStats = { }, stats = { "melee_conditional_step_distance", "is_area_damage", "precise_cursor_targeting_uses_contact_point_height_offset", }, levels = { [1] = {10, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["SeismicCryRogueExileWarrior2"] = { name = "Seismic Cry", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, description = "Perform a damaging [Warcry], [Knockback|Knocking Back] nearby enemies and [HeavyStun|Heavy Stunning] enemies that are [PrimedStun|Primed for Stun]. If an enemy is [HeavyStun|Heavy Stunned] or a currently [HeavyStun|Heavy Stunned] enemy is [HitDamage|Hit], this Skill [Empowered|Empowers] subsequent [Slam|Slams] to perform an additional [Aftershock|Aftershock]. This Skill's cooldown can be bypassed by expending an [Charges|Endurance Charge].", skillTypes = { [SkillType.Warcry] = true, [SkillType.Area] = true, [SkillType.Damage] = true, [SkillType.ConsumesCharges] = true, [SkillType.SkillConsumesEnduranceChargesOnUse] = true, [SkillType.Cooldown] = true, [SkillType.Physical] = true, [SkillType.EmpowersOtherSkill] = true, [SkillType.UsableWhileMoving] = true, [SkillType.NoAttackInPlace] = true, [SkillType.Nova] = true, }, statDescriptionScope = "seismic_cry", castTime = 0.8, baseFlags = { area = true, }, baseMods = { }, qualityStats = { }, stats = { "secondary_minimum_base_physical_damage", "secondary_maximum_base_physical_damage", "warcry_empowers_per_X_monster_power", "warcry_empowers_per_X_monster_power_mp_cap", "active_skill_base_area_of_effect_radius", "seismic_cry_slam_skill_additional_aftershocks", "movement_speed_+%_final_while_performing_action", "movement_speed_acceleration_+%_per_second_while_performing_action", "movement_speed_while_performing_action_locked_duration_%", "global_knockback", "cannot_cancel_skill_before_contact_point", "is_area_damage", "display_skill_deals_secondary_damage", "can_perform_skill_while_moving", "crushing_blow", "active_skill_show_crush_range", "warcry_minimum_benefit_if_monster_power_present", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 10, 50, 40, 1, -70, 160, 50, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["DodgeRollRogueExileGeneric"] = { name = "DodgeRollRogueExileGeneric", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.UsableWhileShapeshifted] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 0.75, baseFlags = { }, baseMods = { }, qualityStats = { }, stats = { "action_allowed_queue_time_override_ms", "dodge_roll_base_travel_distance", "dodge_roll_additional_pushiness_modifier", "dodge_roll_stun_threshold_+%_final", "base_deal_no_damage", "skill_cannot_be_knocked_back", "spell_cast_time_cannot_be_modified", "action_attack_or_cast_time_uses_animation_length", "usable_while_shapeshifted_town_or_hideout_only", "dynamic_target_updating_prioritises_movement_vector", "skill_is_not_considered_a_skill", "base_skill_enabled_while_mounted", }, levels = { [1] = {100, 46, 5, 100, baseMultiplier = 0.9, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["ShieldBlockRogueExileWarrior2"] = { name = "Raise Shield", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, description = "Raise your [Shield] to [Block] all incoming [Block|Blockable] hits. Release immediately after [Block|Blocking] when an enemy is close to perform a Shield Bash, damaging and [Stun|Stunning] enemies. While your [Shield] is raised you cannot be [LightStun|Light Stunned] by hits you [Block], but [Block|Blocking] too much damage may [HeavyStunPlayer|Heavy Stun] you. You cannot [Evasion|Evade] while your [Shield] is raised, but [Evasion] instead grants an equal chance to avoid this [HeavyStunPlayer|Heavy Stun] buildup.", skillTypes = { [SkillType.Channel] = true, [SkillType.RequiresShield] = true, [SkillType.UsableWhileMoving] = true, [SkillType.Attack] = true, [SkillType.Area] = true, [SkillType.Physical] = true, [SkillType.Melee] = true, [SkillType.NoAttackInPlace] = true, }, statDescriptionScope = "shield_block", castTime = 1, baseFlags = { attack = true, area = true, melee = true, }, baseMods = { }, qualityStats = { }, stats = { "movement_speed_+%_final_while_performing_action", "movement_speed_acceleration_+%_per_second_while_performing_action", "movement_speed_while_performing_action_locked_duration_%", "channel_skill_end_animation_duration_override_ms", "active_block_light_stun_threshold_+%_final", "active_skill_heavy_stun_decay_after_action_delay_ms", "skill_animation_duration_multiplier_override", "base_minimum_channel_time_ms", "can_perform_skill_while_moving", "global_always_hit", "active_skill_does_not_decay_heavy_stun_during_action", "skill_is_not_considered_a_skill", }, levels = { [1] = {-50, 160, 50, 35, 50, 2000, 4, 250, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["ArmourBreakerRogueExileWarrior2"] = { name = "Armour Breaker", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, description = "[Strike] with a forceful blow, knocking enemies back and weakening their [Armour|Armour].", skillTypes = { [SkillType.Attack] = true, [SkillType.MeleeSingleTarget] = true, [SkillType.Melee] = true, [SkillType.Area] = true, [SkillType.Physical] = true, }, statDescriptionScope = "heavy_strike", castTime = 1, baseFlags = { attack = true, area = true, melee = true, }, baseMods = { }, qualityStats = { }, stats = { "melee_range_+", "melee_conditional_step_distance", "active_skill_attack_speed_+%_final_while_dual_wielding", "armour_break_damage_%_dealt_as_armour_break", "global_knockback", "is_area_damage", "melee_defer_damage_prediction", "precise_cursor_targeting_uses_contact_point_height_offset", }, levels = { [1] = {2, 17, 40, 100, baseMultiplier = 1.15, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["StampedeRogueExileWarrior2"] = { name = "Stampede", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, description = "Charges forward, cracking the earth and leaving a patch of [JaggedGround|Jagged Ground] with every footstep. At the end of your charge, a massive leaping [Slam] damages enemies and causes all nearby patches of [JaggedGround|Jagged Ground] to explode, damaging enemies standing on them.", skillTypes = { [SkillType.Attack] = true, [SkillType.Melee] = true, [SkillType.Area] = true, [SkillType.Slam] = true, [SkillType.Travel] = true, [SkillType.CreatesGroundEffect] = true, [SkillType.Duration] = true, [SkillType.NoAttackInPlace] = true, [SkillType.Jumping] = true, }, statDescriptionScope = "channel_stampede/statset_0", castTime = 1, baseFlags = { attack = true, area = true, melee = true, duration = true, }, baseMods = { }, qualityStats = { }, stats = { "shield_charge_base_movement_speed", "shield_charge_extra_distance", "shield_charge_acceleration_duration_ms", "stampede_pushiness_+", "active_skill_base_area_of_effect_radius", "active_skill_damage_+%_final_while_dual_wielding", "active_skill_base_secondary_area_of_effect_radius", "skill_jagged_ground_base_duration_ms", "attack_maximum_action_distance_+", "is_area_damage", "attack_is_melee_override", "base_skill_show_average_damage_instead_of_dps", "can_create_jagged_ground", }, levels = { [1] = {70, 53, 0, 20, 12, -30, 32, 6000, 45, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EarthshatterRogueExileWarrior2"] = { name = "Earthshatter", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, description = "[Slam|Slam] the ground, sending out a fissure that deals area damage to enemies it passes under and thrusts a spike from the ground when it ends. [Warcry|Warcries] performed near the spike will cause it to shatter, damaging surrounding enemies.", skillTypes = { [SkillType.Attack] = true, [SkillType.Area] = true, [SkillType.Melee] = true, [SkillType.Slam] = true, [SkillType.Duration] = true, [SkillType.Totemable] = true, [SkillType.SupportedByFountains] = true, [SkillType.CreatesFissure] = true, [SkillType.NoAttackInPlace] = true, [SkillType.CanCreateStoneElementals] = true, }, statDescriptionScope = "spike_slam/statset_0", castTime = 1, baseFlags = { attack = true, area = true, melee = true, duration = true, }, baseMods = { }, qualityStats = { }, stats = { "base_skill_effect_duration", "spike_slam_max_spikes", "active_skill_base_area_of_effect_radius", "active_skill_attack_speed_+%_final_while_dual_wielding", "is_area_damage", "quality_display_earthshatter_is_gem", }, levels = { [1] = {6000, 6, 10, -30, baseMultiplier = 0.6, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["WalkEmergeRogueExile"] = { name = "WalkEmergeRogueExile", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { }, statDescriptionScope = "skill_stat_descriptions", castTime = 1.272, baseFlags = { }, baseMods = { }, qualityStats = { }, stats = { "walk_emerge_distance", }, levels = { [1] = {300, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, }
25%의 확률로 공격 피해를 막아냄
Family | MonsterBlock |
---|---|
Domains | Monster (3) |
GenerationType | 고유 (3) |
Req. level | 1 |
Stats | |
Craft Tags | block |
monster dropped item rarity +% [1500]
Family | MonsterDroppedItemRarity |
---|---|
Domains | Monster (3) |
GenerationType | 고유 (3) |
Req. level | 1 |
Stats |
피에 목마른 라오크 Text Audio /61
Edit
Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.
Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.