'Interface for ``infer_shape``. Can override when creating new operators.
Parameters
in_shape : list
List of argument shapes in the same order as
declared in list_arguments.
Returns
in_shape : list
List of argument shapes. Can be modified from in_shape.
out_shape : list
List of output shapes calculated from in_shape,
in the same order as declared in list_arguments.'

def infer_shape(self, in_shape):

    return (in_shape, [in_shape[0]])
