added language handling