translation code moved to callback