Actually use the `observer` parameter