Refactored to fill out defaults