code: def oindex(a, selection):
      
      selection = replace_ellipsis(selection, a.shape)
      drop_axes = tuple([i for i, s in enumerate(selection) if is_integer(s)])
      selection = ix_(selection, a.shape)
      result = a[selection]
      if drop_axes:
          result = result.squeeze(axis=drop_axes)
      return result
docs: Implementation of orthogonal indexing with slices and ints.