how dynamic stack approximation works