Plantillas genericas
plantillas e implementación

todo el código se hace genérico inclusive manejadores y plantillas.