method definitons added