add usage and modified the intend