+data VariableShiftPredictOp ss w
+ = VariableShiftPredictAverage !ss !w !Variable
+ | VariableShiftPredictSigma !ss !w !Variable
+ deriving (Show, Eq, Ord)
+instance (ExprSet ss, Expr w)
+ => Expr (VariableShiftPredictOp ss w)
+instance (CommonExprSet ss, CommonExpr w)
+ => CommonExpr (VariableShiftPredictOp ss w)
+
+data FixedShiftPredictOp sm w
+ = FixedShiftPredictAverage !sm !w !Variable
+ | FixedShiftPredictSigma !sm !w !Variable
+ deriving (Show, Eq, Ord)
+instance (Expr sm, Expr w)
+ => Expr (FixedShiftPredictOp sm w)
+instance (CommonExpr sm, CommonExpr w)
+ => CommonExpr (FixedShiftPredictOp sm w)
+