modify
make a macro
fix comment