in the cases of empty <X>, we now return 1 instead of [].