added nn gen