def get_broadcast_shape(*tensors):
<EOL>s_shape = tensors[<NUM_LIT:0>].shape<EOL>for t in tensors[<NUM_LIT:1>:]:<EOL><INDENT>s_shape = tf.broadcast_static_shape(s_shape, t.shape)<EOL><DEDENT>if tensorshape_util.is_fully_defined(s_shape):<EOL><INDENT>return tensorshape_util.as_list(s_shape)<EOL><DEDENT>d_shape = tf.shape(input=tensors[<NUM_LIT:0>])<EOL>for t in tensors[<NUM_LIT:1>:]:<EOL><INDENT>d_shape = tf.broadcast_dynamic_shape(d_shape, tf.shape(input=t))<EOL><DEDENT>return d_shape<EOL>
Get broadcast shape as a Python list of integers (preferred) or `Tensor`.

    Args:
      *tensors:  One or more `Tensor` objects (already converted!).

    Returns:
      broadcast shape:  Python list (if shapes determined statically), otherwise
        an `int32` `Tensor`.