some tools writtern by massimo