def METHOD_NAME(self, orig_op: tf.Operation, quant_op: tf.Operation,
                      orig_session: tf.compat.v1.Session, quant_session: tf.compat.v1.Session,
                      inp_op_names: List, num_batches: int) \
        -> Tuple[np.ndarray, np.ndarray]:
    """
    From the original op, collect output activations and input activations to corresponding quantized op.
    :param orig_op: Single un quantized op from the original session
    :param quant_op: Corresponding quant op from the Quant sim session
    :param orig_session: Session with the original model
    :param quant_session: Session with the model with quantization simulations ops
    :param inp_op_names : input Op names, should be same in both models
    :param num_batches: Number of batches
    :return: Input data to quant op, Output data from original op
    """
    # pylint: disable=too-many-locals
    all_inp_data = []
    all_out_data = []
    # Initialize the iterator
    dataset_iterator = iterate_tf_dataset(self._dataset)
    for batch_index in range(num_batches):
        try:
            model_inputs = next(dataset_iterator)
            # batch is of shape (model_inputs, labels)
            if isinstance(model_inputs, (tuple, list)):
                model_inputs, _ = model_inputs
            # Collect output activation data from original op
            feed_dict = create_input_feed_dict(orig_session.graph, inp_op_names, model_inputs)
            output_tensor = self._get_output_tensor(orig_op)
            out_data = orig_session.run(output_tensor, feed_dict=feed_dict)
            # Collect input activation data to quant sim op
            feed_dict = create_input_feed_dict(quant_session.graph, inp_op_names, model_inputs)
            input_tensor = self._get_input_tensor(quant_op)
            inp_data = quant_session.run(input_tensor, feed_dict=feed_dict)
            all_inp_data.append(inp_data)
            all_out_data.append(out_data)
            if batch_index == num_batches - 1:
                break
        except tf.errors.OutOfRangeError:
            raise StopIteration("Can not fetch {} batches from dataset.".format(num_batches))
    all_inp_data = np.vstack(all_inp_data)
    all_out_data = np.vstack(all_out_data)
    return all_inp_data, all_out_data