some useful tools used by myself