<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def cell_value(self, column_family_id, column, index=0):
 """Get a single cell value stored on this instance. For example: .. literalinclude:: snippets_table.py :start-after: [START bigtable_row_cell_value] :end-before: [END bigtable_row_cell_value] Args: column_family_id (str):
 The ID of the column family. Must be of the form ``[_a-zA-Z0-9][-_.a-zA-Z0-9]*``. column (bytes):
 The column within the column family where the cell is located. index (Optional[int]):
 The offset within the series of values. If not specified, will return the first cell. Returns: ~google.cloud.bigtable.row_data.Cell value: The cell value stored in the specified column and specified index. Raises: KeyError: If ``column_family_id`` is not among the cells stored in this row. KeyError: If ``column`` is not among the cells stored in this row for the given ``column_family_id``. IndexError: If ``index`` cannot be found within the cells stored in this row for the given ``column_family_id``, ``column`` pair. """

        cells = self.find_cells(column_family_id, column)

        try:
            cell = cells[index]
        except (TypeError, IndexError):
            num_cells = len(cells)
            msg = _MISSING_INDEX.format(index, column, column_family_id, num_cells)
            raise IndexError(msg)

        return cell.value