more work on the dynamic UI creation