handle optional parameters correctly
Merge branch 'update-register'