factory trait, view template listener,