complete code tidy