new register and some edits