fix code style, add two new interfaces