   # Applying these 2 rules will give the same result as applying original rule twice
   flashing_to_regular: ->
     if not @is_flashing() then throw new Error "Rule is not flashing"
-    transp_inv = Bits.tabulate Bits.negate    
-    return [ from_list(compose_transpositions(@table, transp_inv)),
-             from_list(compose_transpositions(transp_inv, @table)) ]
+    @stabilize_vacuum()
 
   #Convert a rule with unstable vacuum to a secuence of rules with stable vacuum
   #These rules represent evulution of difference between vacuum and pattern.

  for ri, i in rule
    if ri is null
      throw new Error "Samples incomplete. State " + i + " has no descendant"  
  from_list rule
  
  
#Operations over 4-bit blocks

###
# Create rule object from list
###
exports.from_list = from_list = (t) -> new Rule(t)
              
###
# Parse string rule
