Added huge part of API in here.