Updating with #2 and #3