modify the inner decoder