(LPS), SO that binary decisions have to be identified as either MPS or LPS, rather than 0 or 1. Given this terminology, each context is specified by the probability PLPS of the LPS and the value of MPS (valMPS), which is either 0 or 1. The arithmetic core engine in this Recommendation | International Standard has three distinct properties: The probability estimation is performed by means of a finite-state machine with a table-based transition process between 64 different representative probability states { PLPs(pStateIdx) 0 <= pStateIdx < 64 } for the LPS probability PLPS. The numbering of the states is arranged in such a way that the probability state with index pStateIdx = 0 corresponds to an LPS probability value of 0.5, with decreasing LPS probability towards higher state indices. The range codIRange representing the state of the coding engine is quantised to a small set {Q1 Q4} of pre-set quantisation values prior to the calculation of the new interval range. Storing a table containing all 64x4 pre-computed product values of Qi * PLPs(pStateIdx) allows a multiplication-free approximation of the product codIRange * PLPs(pStateIdx). For syntax elements or parts thereof for which an approximately uniform probability distribution is assumed to be given a separate simplified encoding and decoding bypass process is used. 9.3.3.2.1 Arithmetic decoding process for a binary decision Inputs to this process are ctxIdx, codIRange, and codIOffset. Outputs of this process are the decoded value binVal, and the updated variables codIRange and codIOffset. Figure 9-3 shows the flowchart for decoding a single decision (DecodeDecision): 1. The value of the variable codIRangeLPS is derived as follows: Given the current value of codIRange, the variable qCodIRangeIdx is derived by qCodIRangeIdx=(codIRange>>6) & 3 (9-25) Given qCodIRangeIdx and pStateIdx associated with ctxIdx, the value of the variable rangeTabLPS as specified in Table 9-44 is assigned to codIRangeLPS: codIRangeLPS = rangeTabLPS[ pStateIdx ][ qCodIRangeIdx (9-26) 