damn generiuc type