manage to implement de original vision for type recovers usingextensions methods