enh: added argument parsing