use BDD (never freed by GC) instead of BDDFeatureExpr (might be freed by GC) for caching.