it needs some proper handling in Models