Close to final version. All requirements are satisfied.