Cleaned up sprout fn