<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _weight_init(self, m, n, name):
 """ Uses the Xavier Glorot method for initializing weights. This is built in to TensorFlow as `tf.contrib.layers.xavier_initializer`, but it's nice to see all the details. """

        x = np.sqrt(6.0/(m+n))
        with tf.name_scope(name) as scope:
            return tf.Variable(
                tf.random_uniform(
                    [m, n], minval=-x, maxval=x), name=name)