inputs: Complete the below
def _strict_random_crop_image(image, boxes, labels, masks=None, keypoints=None, min_object_covered=1.0, aspect_ratio_range=(0.75, 1.33), area_range=(0.1, 1.0), overlap_thresh=0.3):

    ''''Performs random crop.
    Note: boxes will be clipped to the crop. Keypoint coordinates that are
    outside the crop will be set to NaN, which is consistent with the original
    keypoint encoding for non-existing keypoints. This function always crops
    the image and is supposed to be used by `random_crop_image` function which
    sometimes returns image unchanged.
    Args:
    image: rank 3 float32 tensor containing 1 image -> [height, width, channels]
    with pixel values varying between [0, 1].
    boxes: rank 2 float32 tensor containing the bounding boxes with shape
    [num_instances, 4].
    Boxes are in normalized form meaning their coordinates vary
    between [0, 1].
    Each row is in the form of [ymin, xmin, ymax, xmax].
    labels: rank 1 int32 tensor containing the object classes.
    masks: (optional) rank 3 float32 tensor with shape
    [num_instances, height, width] containing instance masks. The masks
    are of the same height, width as the input `image`.
    keypoints: (optional) rank 3 float32 tensor with shape
    [num_instances, num_keypoints, 2]. The keypoints are in y-x
    normalized coordinates.
    min_object_covered: the cropped image must cover at least this fraction of
    at least one of the input bounding boxes.
    aspect_ratio_range: allowed range for aspect ratio of cropped image.
    area_range: allowed range for area ratio between cropped image and the
    original image.
    overlap_thresh: minimum overlap thresh with new cropped
    image to keep the box.
    Returns:
    image: image which is the same rank as input image.
    boxes: boxes which is the same rank as input boxes.
    Boxes are in normalized form.
    labels: new labels.
    If masks, or keypoints is not None, the function also returns:
    masks: rank 3 float32 tensor with shape [num_instances, height, width]
    containing instance masks.
    keypoints: rank 3 float32 tensor with shape
    [num_instances, num_keypoints, 2]'
    '''
targets: with tf.name_scope('RandomCropImage', values=[image, boxes]):
        image_shape = tf.shape(image)
        boxes_expanded = tf.expand_dims(tf.clip_by_value(boxes, clip_value_min=0.0, clip_value_max=1.0), 1)
        sample_distorted_bounding_box = tf.image.sample_distorted_bounding_box(image_shape, bounding_boxes=boxes_expanded, min_object_covered=min_object_covered, aspect_ratio_range=aspect_ratio_range, area_range=area_range, max_attempts=100, use_image_if_no_bounding_boxes=True)
        (im_box_begin, im_box_size, im_box) = sample_distorted_bounding_box
        new_image = tf.slice(image, im_box_begin, im_box_size)
        new_image.set_shape([None, None, image.get_shape()[2]])
        im_box_rank2 = tf.squeeze(im_box, squeeze_dims=[0])
        im_box_rank1 = tf.squeeze(im_box)
        boxlist = box_list.BoxList(boxes)
        boxlist.add_field('labels', labels)
        im_boxlist = box_list.BoxList(im_box_rank2)
        (boxlist, inside_window_ids) = box_list_ops.prune_completely_outside_window(boxlist, im_box_rank1)
        (overlapping_boxlist, keep_ids) = box_list_ops.prune_non_overlapping_boxes(boxlist, im_boxlist, overlap_thresh)
        new_labels = overlapping_boxlist.get_field('labels')
        new_boxlist = box_list_ops.change_coordinate_frame(overlapping_boxlist, im_box_rank1)
        new_boxes = new_boxlist.get()
        new_boxes = tf.clip_by_value(new_boxes, clip_value_min=0.0, clip_value_max=1.0)
        result = [new_image, new_boxes, new_labels]
        if (masks is not None):
            masks_of_boxes_inside_window = tf.gather(masks, inside_window_ids)
            masks_of_boxes_completely_inside_window = tf.gather(masks_of_boxes_inside_window, keep_ids)
            masks_box_begin = [0, im_box_begin[0], im_box_begin[1]]
            masks_box_size = [(-1), im_box_size[0], im_box_size[1]]
            new_masks = tf.slice(masks_of_boxes_completely_inside_window, masks_box_begin, masks_box_size)
            result.append(new_masks)
        if (keypoints is not None):
           ...