added argument parse with add and init flags