law added
merge
bag impl added