fix generic typing