lots more initial stuff