improved listeners initialization