extend instead of replace