removed synchronized from function to have multiple thread access