import tensorflow as tf

    tgt1 = tf.gather(tgt, even)
    tgt2 = tf.gather(tgt, odd)

    geq = tf.cast((tgt1 - tgt2) > 0, tf.bool)
    tgt_larg = tf.where(geq, tgt1, tgt2)
    tgt_small = tf.where(geq, tgt2, tgt1)
    pred_larg = tf.where(geq, pred1, pred2)
    pred_small = tf.where(geq, pred2, pred1)

    loss = tf.maximum(0.0, (tgt_larg - tgt_small) - (pred_larg - pred_small))
    # loss = tf.maximum(0.0, tf.math.abs(tgt_larg - pred_larg) - tf.math.abs(tgt_small - pred_small))
    loss = tf.reduce_mean(loss)
