#**### @param $condition - the condition to check
#**### @param $opComment - the condition comment
#**##parse("java/breaks:storyPattern/object/tmpvar.vm")
#**##set($first = $flowUtil.hasFirstCheck($token))
#**##set($last = $flowUtil.hasLastCheck($token))
#**##set($targetSearch = $flowUtil.getSearch($token))
#**##set($toContinue = $flowUtil.getSearchToContinue($token))
#**##if(!$toContinue && $flowUtil.needsStoryBlock($token))
#*   *##set($breakLabel = true )
#**##end
#**##set($negate = $targetSearch && $targetSearch.Type==2 && $flowUtil.getSearchOperation($token).hasSingleResult())
#**###
#**##if(!$first || !$last || (!$toContinue && !$breakLabel))
#**##if($first && $negate)boolean #end
#**###if($first && $toContinue)boolean #end##
#*   *#$tmpVarChecks = ##
#*   *##if($first)
#*   *#$condition;#if($opComment) // $opComment#end
#*   *##else
#*   *#$tmpVarChecks && ($condition);#if($opComment) // $opComment#end
#*   *##end
#*   *#
#**##end
#**##if($last && ($toContinue || $breakLabel))
#*   *##if($first)
#*      *##if(!$negate)
#*         *##set($condition="!($condition)")
#*      *##end
#*   *##else
#*      *##if($negate)
#*         *##set($condition="$tmpVarChecks")
#*      *##else
#*         *##set($condition="!$tmpVarChecks")
#*      *##end
#*   *##end
#*   *#if ($condition)
#*   *#{
#*   *##parse("java/breaks:storyPattern/breakOrContinue.vm")
#*   *##if($first && $last)
#*      *#   // $opComment failed
#*   *##else
#*      *#   // conditions failed
#*   *##end
#*   *#}
#**##end
