impl2 separate