Merge with rich-decode-2023
rich-decode-2023
Based on top of !506 (merged) which should be merged first.