argument parsing
add working sync