write some interface