added artifact handling