Final cleaned-up version