switched to a more compact version