lowered amount of API request by using singleton