updated to use new SandGrain Class style inheritance