more feature additions to assignment