Main requirements implemented.