added SOM method