committing almost working copyrec before changing it drastically with global register values