added more method implementations