work on options parsing