This should speed up and correct a few problems: