还是用ruby来实现