add new API, #4