anchor.diff:              var ids = [];
               var all = document.getElementsByTagName('*');
               for (var i=0, max=all.length; i < max; i++) {
  -	            if(all[i].id !== "") {
  -		            ids.push(all[i].id);
  -	            }   
  +                if(all[i].id !== "") {
  +                    ids.push(all[i].id);
  +                }   
               }
               return ids;"""
           let valuesViaJs = """
               var values = [];
               var all = document.getElementsByTagName('*');
               for (var i=0, max=all.length; i < max; i++) {
  -	            if(all[i].value && all[i].value !== "") {
  -		            values.push(all[i].value);
  -	            }   
  +                if(all[i].value && all[i].value !== "") {
  +                    values.push(all[i].value);
  +                }   
               }
               return values;"""
           let textsViaJs = """
               var texts = [];
               var all = document.getElementsByTagName('*');
               for (var i=0, max=all.length; i < max; i++) {
  -	            if(all[i].text && all[i].tagName !== 'SCRIPT' && all[i].text !== "") {
  -		            texts.push(all[i].text);
  -	            }   
  +                if(all[i].text && all[i].tagName !== 'SCRIPT' && all[i].text !== "") {
  +                    texts.push(all[i].text);
  +                }   
               }
               return texts;"""
           let classes = js classesViaJs :?> System.Collections.ObjectModel.ReadOnlyCollection<System.Object> |> Seq.map (fun item -> "." + item.ToString()) |> Array.ofSeq
  
positive.code:         browser.SwitchTo().Alert().Dismiss()
          true)
      
  //assertions    
  let ( == ) item value =
      match box item with
  
negative.code: (* what is box *)
  #indent "off"
  
  [<AutoOpen>]
  module canopy.core
  
  