v 1.3  exceptions, listeners, using generics