Added generics for loading and automatically return correct Type