這一個也應該抽出來獨立