updated to use new sand-grain Class style inheritance