扩展辅助函数会影响到其它原有的使用，干脆重新写一个