Update with full function