type Stack = {
    push(_:T)->Void
    pop->T
    peek->T
    size->Number
    clear->Void
    contains(_:T)->Boolean
    isEmpty->Boolean
    iterator->Iterator
    asString->String}