Smartyのinclude内でassignした変数のスコープに関して

Smarty側で特定の文字列を表示したかどうかが判別したくて以下のようなことをしてみた

{include file='include.tpl'}
{assign var='hogehoge' value='fugafuga'}
{assign var='hoge' value='fuga'}
<?php
// テンプレート読み込み
$smarty->display('base.tpl');

// fugafuga が表示される
var_dump($smarty->get_template_vars('hogehoge'));

// NULL になる
var_dump($smarty->get_template_vars('hogehoge'));

どうやらdisplayしたテンプレートの中でさらにincludeをすると、その中でassignした変数は持ってこられないみたいだ

{include} | Smarty

全ての割り当て変数の値は、インクルードされたテンプレートのスコープが閉じた後に元に戻ります。 これは、インクルードされたテンプレート内で全ての変数を使用可能であるということです。 しかし、インクルードされたテンプレート内での変数の変更は {include} の後でインクルードしている側のテンプレート内では見ることはできません。

ちゃんと書いてあるし・・・orz

Smarty3にするとscopeが指定できるようになるみたいだけどー
{assign} | Smarty