updated overview and implementation for clarity