move inject to core