Initial implementation added