handle recursion at head except for complex