update gen
    add gen_empty/0