more work on basics