handle non-array