implemented and fixed regitsrations