useful tools I create as i move on