Initial migration to methods
deepest function returns atomic type