Updating: restructing a bit.