refine the usage func.