Cleaned final version