more work on sl implementation