試してないけど、Pのローカル変数を置いてみるのは?
初期化できないとダメかな。