update buildHTML and separete experimental function