printer fix for paths
restrict structural recursion
initial let-aliasing addition