Been deep-dive reading specs and implementing toy code for TETRA MAC Random Access Procedures and hooo boy are they involved :blobfoxsweating: Particularly when you factor in all the special cases (minimum mode, discontinuous transmission).
It definitely feels like one of those things that started off simple (I mean it's slotted ALOHA at the end of the day) and just the "yeah but if x then y" cases just stacked up over time until describing it takes 200 pages and still manages to gloss over a lot of specific detail.