自定义扩展