registration and basic setup