// 
// Decompiled by Procyon v0.6.0
// 

package it.unimi.dsi.fastutil.longs;

import it.unimi.dsi.fastutil.Pair;

public interface LongReferencePair<V> extends Pair<Long, V>
{
    long leftLong();
    
    @Deprecated
    default Long left() {
        return this.leftLong();
    }
    
    default LongReferencePair<V> left(final long l) {
        throw new UnsupportedOperationException();
    }
    
    @Deprecated
    default LongReferencePair<V> left(final Long l) {
        return this.left((long)l);
    }
    
    default long firstLong() {
        return this.leftLong();
    }
    
    @Deprecated
    default Long first() {
        return this.firstLong();
    }
    
    default LongReferencePair<V> first(final long l) {
        return this.left(l);
    }
    
    @Deprecated
    default LongReferencePair<V> first(final Long l) {
        return this.first((long)l);
    }
    
    default long keyLong() {
        return this.firstLong();
    }
    
    @Deprecated
    default Long key() {
        return this.keyLong();
    }
    
    default LongReferencePair<V> key(final long l) {
        return this.left(l);
    }
    
    @Deprecated
    default LongReferencePair<V> key(final Long l) {
        return this.key((long)l);
    }
    
    default <V> LongReferencePair<V> of(final long left, final V right) {
        return new LongReferenceImmutablePair<V>(left, right);
    }
}
