anchor.diff:      if (executed.IsNone || included.IsNone || pending.IsNone) then
           None
       else
  -        Some((Convert.ToBoolean(executed.Value),Convert.ToBoolean(included.Value),Convert.ToBoolean(pending.Value)) : EventStatus)
  +        Some((eventName, Convert.ToBoolean(executed.Value),Convert.ToBoolean(included.Value),Convert.ToBoolean(pending.Value)) : EventStatus)
  +
  +let rec writeOutEventStatus events baseUrl =
  +    match (events) with
  +    | (eventName, executed,included,pended) :: xs -> 
  +                    match ((eventName, executed,included,pended)) with
  +                    //| (executed,included,pended) when executed = false && included = false && pended = true -> 
  +                    | (eventName, executed,included,pended) when executed = false && included = true && pended = false ->  printfn "%s   EXECUTABLE" eventName
  +                    | (eventName, executed,included,pended) when executed = false && included = true && pended = true ->  printfn "!%s   EXECUTABLE" eventName
  +                    | (eventName, executed,included,pended) when executed = true && included = false && pended = false ->  printfn "X%s" eventName
  +                    | (eventName, executed,included,pended) when executed = true && included = false && pended = true ->   printfn "X%s" eventName
  +                    | (eventName, executed,included,pended) when executed = true && included = true && pended = false ->   printfn "X%s" eventName
  +                    | (eventName, executed,included,pended) when executed = true && included = true && pended = true ->   printfn "X%s" eventName
  +                    | _ -> 0 |> ignore
  +                    (eventName, executed,included,pended) :: writeOutEventStatus xs baseUrl
  +    | _ -> []
   
   //Writes the status of each event to the console and returns a list containing only the events that was responsive.
   let rec getStatusAndRemovefaulty events baseUrl = 
  -    match (events) with
  -    | x :: xs -> 
  -                let eventStatusResponse = eventStatus baseUrl x
  -                if (eventStatusResponse.IsSome) then
  -                    let (executed,included,pended) = eventStatusResponse.Value
  -                    match ((executed,included,pended)) with
  -                    //| (executed,included,pended) when executed = false && included = false && pended = true -> 
  -                    | (executed,included,pended) when executed = false && included = true && pended = false ->  printfn "%s   EXECUTE" x
  -                    | (executed,included,pended) when executed = false && included = true && pended = true ->  printfn "!%s   EXECUTE" x
  -                    | (executed,included,pended) when executed = true && included = false && pended = false ->  printfn "X%s" x
  -                    | (executed,included,pended) when executed = true && included = false && pended = true ->   printfn "X%s" x
  -                    | (executed,included,pended) when executed = true && included = true && pended = false ->   printfn "X%s" x
  -                    | (executed,included,pended) when executed = true && included = true && pended = true ->   printfn "X%s" x
  -                    x :: getStatusAndRemovefaulty xs baseUrl
  -                else
  -                    getStatusAndRemovefaulty xs baseUrl
  -    | _ -> events
  +    let rec getValidEvents ev =
  +        match (ev) with
  +            | (eventName, executed,included,pended) :: xs -> 
  +                        let eventStatusResponse = eventStatus baseUrl eventName
  +                        if (eventStatusResponse.IsSome) then
  +                            let (eventName, executed,included,pended) = eventStatusResponse.Value
  +                            (eventName, executed,included,pended) :: getValidEvents xs
  +                        else
  +                            getValidEvents xs
  +            | _ -> []
  +    writeOutEventStatus (List.sortBy (fun k -> let (eventName, executed,included,pended) = k
  +                                               not pended) (getValidEvents events)) baseUrl
   
   //Mainloop, covers event selection and exchanging information with the events.    
  -let rec mainLoop baseUrl events =
  +let rec mainLoop baseUrl (events : EventStatus list) =
       printfn "Actions:"
       printfn "1 -> Get all events"
       printfn "2 -> Connect an event"
  
positive.code:         Some(w.UploadString(url,verb, value))
      with
          | _ -> None
  
  //Returns a list of event names with ' ' as delimiter
  let GetAllEvents baseUrl =
  
negative.code: ﻿open System
  
  type EventStatus = string * bool * bool * bool
  
  //String split function, splits a string based on a delimiter
  let Split (s : string) (delimiter : char) = List.ofArray (s.Split(delimiter))
  