TODO: review attributes