A method of coding video data, the method comprising: for each of a number of transform coefficients in a transform coefficient block, pre-calculating a set of reconstructed residual samples by: generating a pre-defined dequantized coefficient block with an absolute value of the transform coefficient set to a value of one and an absolute value of all remaining transform coefficients set to zero; and applying an inverse transform to the pre-defined dequantized coefficient block to pre-calculate a set of reconstructed residual samples; pre-storing the sets of reconstructed residual samples in a pre-stored portion of the video data; wherein sign prediction for a transform coefficient of the transform block coefficient comprises: identifying a set of pre-stored residual samples; determining a scaling factor and applying the absolute scaling factor to the identified set of pre-stored residual samples; combining the set of pre-stored residual samples to form a combination of pre-stored residual samples; applying a first sign combination to transform coefficients of the combination of pre-stored residual samples to obtain a first hypothesis reconstruction with respect to a current block of the video data; applying a second sign combination to the transform coefficients of the combination of pre-stored residual samples to obtain a second hypothesis reconstruction with respect to the current block of the video data; deriving respective cost functions with respect to the first hypothesis reconstruction and the second hypothesis reconstruction; comparing the respective derived cost functions; selecting, based on the comparison, either the first hypothesis reconstruction or the second hypothesis reconstruction; and coding the current block using a sign prediction associated with the selected one of the first hypothesis reconstruction or the second hypothesis reconstruction. for each of a number of transform coefficients in a transform coefficient block, pre-calculating a set of reconstructed residual samples by: generating a pre-defined dequantized coefficient block with an absolute value of the transform coefficient set to a value of one and an absolute value of all remaining transform coefficients set to zero; and applying an inverse transform to the pre-defined dequantized coefficient block to pre-calculate a set of reconstructed residual samples; generating a pre-defined dequantized coefficient block with an absolute value of the transform coefficient set to a value of one and an absolute value of all remaining transform coefficients set to zero; and applying an inverse transform to the pre-defined dequantized coefficient block to pre-calculate a set of reconstructed residual samples; pre-storing the sets of reconstructed residual samples in a pre-stored portion of the video data; wherein sign prediction for a transform coefficient of the transform block coefficient comprises: identifying a set of pre-stored residual samples; determining a scaling factor and applying the absolute scaling factor to the identified set of pre-stored residual samples; combining the set of pre-stored residual samples to form a combination of pre-stored residual samples; applying a first sign combination to transform coefficients of the combination of pre-stored residual samples to obtain a first hypothesis reconstruction with respect to a current block of the video data; applying a second sign combination to the transform coefficients of the combination of pre-stored residual samples to obtain a second hypothesis reconstruction with respect to the current block of the video data; deriving respective cost functions with respect to the first hypothesis reconstruction and the second hypothesis reconstruction; comparing the respective derived cost functions; selecting, based on the comparison, either the first hypothesis reconstruction or the second hypothesis reconstruction; and coding the current block using a sign prediction associated with the selected one of the first hypothesis reconstruction or the second hypothesis reconstruction. identifying a set of pre-stored residual samples; determining a scaling factor and applying the absolute scaling factor to the identified set of pre-stored residual samples; combining the set of pre-stored residual samples to form a combination of pre-stored residual samples; applying a first sign combination to transform coefficients of the combination of pre-stored residual samples to obtain a first hypothesis reconstruction with respect to a current block of the video data; applying a second sign combination to the transform coefficients of the combination of pre-stored residual samples to obtain a second hypothesis reconstruction with respect to the current block of the video data; deriving respective cost functions with respect to the first hypothesis reconstruction and the second hypothesis reconstruction; comparing the respective derived cost functions; selecting, based on the comparison, either the first hypothesis reconstruction or the second hypothesis reconstruction; and coding the current block using a sign prediction associated with the selected one of the first hypothesis reconstruction or the second hypothesis reconstruction.