register can work but there are also many problems