updates: use the framework