new API, minor bug exist
bug fix, everything is fine.