```pascal FUNCTION_BLOCK "Delay" { S7_Optimized_Access := 'FALSE' } AUTHOR : 'Author' FAMILY : 'Function' NAME : 'Name' VERSION : 1.0 VAR_INPUT i_Value : Real; i_Sample : Int; END_VAR VAR_OUTPUT i_out : Real; END_VAR VAR mVarArray : Array[0..5] of Real; i : Int; END_VAR BEGIN IF #i_Sample <= 5 THEN FOR #i:=#i_Sample TO 1 BY -1 DO #mVarArray[#i] := #mVarArray[#i - 1] ; END_FOR; #mVarArray[0] := #i_Value ; END_IF; #i_out := #mVarArray[#i_Sample] ; END_FUNCTION_BLOCK ```