formatting and basic setup