これは破棄関数を作ればマクロにする必要は無い？