fixed cmp_ok
indentation
make shift() use @_ when no arg is supplied