(almost) Final patch