implemented smarty3 ability