Added source class and read methods
bug fix