update makeSign() && add listDir()