builder 動作