more assignments
support hash