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

package org.bouncycastle.asn1;

import java.io.IOException;

public class BERSet extends ASN1Set
{
    public BERSet() {
    }
    
    public BERSet(final ASN1Encodable asn1Encodable) {
        super(asn1Encodable);
    }
    
    public BERSet(final ASN1EncodableVector asn1EncodableVector) {
        super(asn1EncodableVector, false);
    }
    
    public BERSet(final ASN1Encodable[] array) {
        super(array, false);
    }
    
    BERSet(final boolean b, final ASN1Encodable[] array) {
        super(b, array);
    }
    
    @Override
    int encodedLength(final boolean b) throws IOException {
        int n = b ? 4 : 3;
        for (int i = 0; i < this.elements.length; ++i) {
            n += this.elements[i].toASN1Primitive().encodedLength(true);
        }
        return n;
    }
    
    @Override
    void encode(final ASN1OutputStream asn1OutputStream, final boolean b) throws IOException {
        asn1OutputStream.writeEncodingIL(b, 49, this.elements);
    }
}
