adding console io support