class PdfDashPattern extends PdfArray {

    // membervariables

    /**
     * This is the length of a dash.
     */
    private float dash = -1;

    /**
     * This is the length of a gap.
     */
    private float gap = -1;

    /**
     * This is the phase.
     */
    private float phase = -1;

    // constructors

    /**
     * Constructs a new <CODE>PdfDashPattern</CODE>.
     */

    public PdfDashPattern() {
        super();
    }

    /**
     * Constructs a new <CODE>PdfDashPattern</CODE>.
     *
     * @param dash {@link PdfDashPattern#dash}
     */
    public PdfDashPattern(float dash) {
        super(new PdfNumber(dash));
        this.dash = dash;
    }

    /**
     * Constructs a new <CODE>PdfDashPattern</CODE>.
     *
     * @param dash {@link PdfDashPattern#dash}
     * @param gap  {@link PdfDashPattern#gap}
     */
    public PdfDashPattern(float dash, float gap) {
        super(new PdfNumber(dash));
        add(new PdfNumber(gap));
        this.dash = dash;
        this.gap = gap;
    }

    /**
     * Constructs a new <CODE>PdfDashPattern</CODE>.
     *
     * @param dash  {@link PdfDashPattern#dash}
     * @param gap   {@link PdfDashPattern#gap}
     * @param phase {@link PdfDashPattern#phase}
     */
    public PdfDashPattern(float dash, float gap, float phase) {
        super(new PdfNumber(dash));
        add(new PdfNumber(gap));
        this.dash = dash;
        this.gap = gap;
        this.phase = phase;
    }

    public void add(float n) {
        add(new PdfNumber(n));
    }

    /**
     * Returns the PDF representation of this <CODE>PdfArray</CODE>.
     */

    public void toPdf(PdfWriter writer, OutputStream os) throws IOException {<FILL_FUNCTION_BODY>}
}

        os.write('[');

        if (dash >= 0) {
            new PdfNumber(dash).toPdf(writer, os);
            if (gap >= 0) {
                os.write(' ');
                new PdfNumber(gap).toPdf(writer, os);
            }
        }
        os.write(']');
        if (phase >= 0) {
            os.write(' ');
            new PdfNumber(phase).toPdf(writer, os);
        }
    
<methods>public void <init>() ,public void <init>(com.lowagie.text.pdf.PdfObject) ,public void <init>(float[]) ,public void <init>(int[]) ,public void <init>(List<? extends com.lowagie.text.pdf.PdfObject>) ,public void <init>(com.lowagie.text.pdf.PdfArray) ,public boolean add(com.lowagie.text.pdf.PdfObject) ,public boolean add(float[]) ,public boolean add(int[]) ,public void add(int, com.lowagie.text.pdf.PdfObject) ,public void addFirst(com.lowagie.text.pdf.PdfObject) ,public boolean contains(com.lowagie.text.pdf.PdfObject) ,public com.lowagie.text.pdf.PdfArray getAsArray(int) ,public com.lowagie.text.pdf.PdfBoolean getAsBoolean(int) ,public com.lowagie.text.pdf.PdfDictionary getAsDict(int) ,public com.lowagie.text.pdf.PdfIndirectReference getAsIndirectObject(int) ,public com.lowagie.text.pdf.PdfName getAsName(int) ,public com.lowagie.text.pdf.PdfNumber getAsNumber(int) ,public com.lowagie.text.pdf.PdfStream getAsStream(int) ,public com.lowagie.text.pdf.PdfString getAsString(int) ,public com.lowagie.text.pdf.PdfObject getDirectObject(int) ,public List<com.lowagie.text.pdf.PdfObject> getElements() ,public com.lowagie.text.pdf.PdfObject getPdfObject(int) ,public boolean isEmpty() ,public ListIterator<com.lowagie.text.pdf.PdfObject> listIterator() ,public com.lowagie.text.pdf.PdfObject remove(int) ,public boolean remove(com.lowagie.text.pdf.PdfObject) ,public com.lowagie.text.pdf.PdfObject set(int, com.lowagie.text.pdf.PdfObject) ,public int size() ,public void toPdf(com.lowagie.text.pdf.PdfWriter, java.io.OutputStream) throws java.io.IOException,public java.lang.String toString() <variables>protected List<com.lowagie.text.pdf.PdfObject> arrayList