better object handling on options