This one was painful, for some reason... will need to review it thoroughly.