more code move, to get the structure right