several methods are commented - will change their names