addad some more functions