ENTRY
{
    address
    author
    booktitle
    chapter
    edition
    editor
    howpublished
    institution
    journal
    key
    month
    note
    number
    organization
    pages
    publisher
    school
    series
    title
    type
    volume
    year
}
{
}
{
    label
}

FUNCTION {output.start}
{
    "<>" write$
}

FUNCTION {output.finish}
{
    newline$
}

INTEGERS {n nameptr}
STRINGS {names}
FUNCTION {output.names}
{
    'names :=
    #1 'n :=
    { n names num.names$ #1 + < }
    {
        n #1 >
        { ", " write$ }
        { }
        if$
        names n "{vv }{ll }{f.}{, jj}" format.name$ write$
        n #1 + 'n :=
    }
    while$
}

FUNCTION {output.editor}
{
    editor empty$
    { }
    { " @1 " write$ editor output.names }
    if$
}

FUNCTION {output.author}
{
    author empty$
    { output.editor }
    { " @1 " write$ author output.names }
    if$
}

FUNCTION {output.title}
{
    author empty$
    {  }
    { " @2 " write$ title write$ }
    if$
}

FUNCTION {get.source}
{
    journal empty$
    {
        ""
        booktitle empty$
        { }
        { booktitle * " " * }
        if$
        publisher empty$
        { }
        {
            duplicate$ empty$
            { }
            { " // " * }
            if$
            address empty$
            { }
            { address * ": " * }
            if$
            publisher *
        }
        if$
    }
    {
        journal
    }
    if$
}

FUNCTION {output.source}
{
    get.source
    duplicate$ empty$
    { pop$ }
    { " @3 " write$ write$ }
    if$
}

FUNCTION {output.year}
{
    year empty$
    {  }
    { " @4 " write$ year write$ }
    if$
}

FUNCTION {output.volume}
{
    volume empty$
    {  }
    { " @5 " write$ volume write$ }
    if$
}

FUNCTION {output.number}
{
    number empty$
    {  }
    { " @6 " write$ number write$ }
    if$
}

FUNCTION {output.pages}
{
    pages empty$
    {  }
    { " @7 " write$ pages write$ }
    if$
}

FUNCTION {common}
{
    output.start
    output.author
    output.title
    output.source
    output.year
    output.volume
    output.number
    output.pages
    output.finish
}

FUNCTION {article} {common}
FUNCTION {book} {common}
FUNCTION {booklet} {common}
FUNCTION {conference} {common}
FUNCTION {inbook} {common}
FUNCTION {incollection} {common}
FUNCTION {inproceedings} {common}
FUNCTION {manual} {common}
FUNCTION {mastersthesis} {common}
FUNCTION {misc} {common}
FUNCTION {phdthesis} {common}
FUNCTION {proceedings} {common}
FUNCTION {techreport} {common}
FUNCTION {unpublished} {common}

READ

ITERATE {call.type$}

