code: def test_out_of_bound_index(self):
      x = Tensor.arange(0, 100).reshape(2, 5, 10)
      self.assertRaises(IndexError, lambda: x[0, 5])
      self.assertRaises(IndexError, lambda: x[4, 5])
      self.assertRaises(IndexError, lambda: x[0, 1, 15])
      self.assertRaises(IndexError, lambda: x[:, :, 12])
  
imports: import math, unittest, random, copy
  import numpy
  from tinygrad import Tensor, dtypes, Device
  from tinygrad.lazy import LazyBuffer
  from tinygrad.shape.shapetracker import ShapeTracker
  from tinygrad.shape.view import View
  from tinygrad.helpers import CI
label_desc: Use image node_id 20 for calling the TestIndexing obj's underlying member method code with example usage: obj.test_out_of_bound_index() without return types