function OnNazrin01AttackLanded(keys)
	local caster = EntIndexToHScript(keys.caster_entindex)
	local target = keys.target

	if SpawnSystem.IsUnLimited then 
		if caster:HasModifier("modifier_byakuren_03_buff") then
			local targets = THTD_FindUnitsInRadius(caster,target:GetOrigin(),400)
			local damage = caster:GetGold() * keys.nazrin/100 
			damage = damage * (1 + caster:THTD_GetPower() * keys.damage_up/100)
			for k,v in pairs(targets) do
				local DamageTable = {
					ability = keys.ability,
			        victim = v, 
			        attacker = caster, 
			        damage = damage, 
			        damage_type = DAMAGE_TYPE_PHYSICAL, 
			        damage_flags = DOTA_DAMAGE_FLAG_NONE
			   	}
		   		UnitDamageTarget(DamageTable)
			end
		end
		return 
	end

	if GameRules:GetCustomGameDifficulty() >= FUNNY_MODE then return end
	
	if RollPercentage(keys.BonusChance) then		
		local gold = math.floor(keys.BonusGold + caster:THTD_GetPower() * keys.PowerPercent/100)
		THTD_ModifyGoldEx(caster:GetPlayerOwnerID(), gold , true, DOTA_ModifyGold_CreepKill)
		SendOverheadEventMessage(caster:GetPlayerOwner(), OVERHEAD_ALERT_GOLD, target, gold, caster:GetPlayerOwner() )
		caster:EmitSound("Sound_THTD.thtd_nazrin_01")
	end
end