You may want to break this one up into 2 or 3 parts.