一个简单的实现版本