working on diagonal sets