updated for new data structure
update comments for new data structure
support new data structure