code from software class