Implemented most of dom maniulations