略微加了一点实现