refine for bug#66, implements the usage.