Do less unnecessary work!

Also less nesting!
Most of the function is wrapped...