stage 1 and allocate characters