packages feed

haal-models-0.1.3.0: src/Haal/Models/TCP/TcpServerWindowsTrans.hs

-- Generated by haal-gen. Do not edit manually.
module Haal.Models.TCP.TcpServerWindowsTrans
    ( TcpServerWindowsTransInput (..)
    , TcpServerWindowsTransOutput (..)
    , tcpServerWindowsTrans
    ) where

import Haal.Automaton.MealyAutomaton (MealyAutomaton, mkMealyAutomatonTable)

data TcpServerWindowsTransInput
    = In_CLOSECONNECTION
    | In_ACK_PSH_V_V_1
    | In_SYN_ACK_V_V_0
    | In_RST_V_V_0
    | In_ACCEPT
    | In_FIN_ACK_V_V_0
    | In_LISTEN
    | In_SYN_V_V_0
    | In_RCV
    | In_ACK_RST_V_V_0
    | In_CLOSE
    | In_SEND
    | In_ACK_V_V_0
    deriving (Show, Eq, Ord, Enum, Bounded)

data TcpServerWindowsTransOutput
    = Out_TIMEOUT
    | Out_ACK_SYN_FRESH_NEXT_0
    | Out_ACK_NEXT_NEXT_0
    | Out_ACK_RST_ZERO_NEXT_0
    | Out_RST_NEXT_FRESH_0
    | Out_ACK_RST_NEXT_CURRENT_0
    | Out_RST_NEXT_CURRENT_0
    | Out_ACK_FIN_NEXT_CURRENT_0
    | Out_ACK_PSH_NEXT_CURRENT_1
    | Out_ACK_RST_NEXT_NEXT_0
    deriving (Show, Eq, Ord, Enum, Bounded)

{- Transitions (state  input -> next state / output):
    0     In_CLOSECONNECTION  -> 0 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 0 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 0 / Out_TIMEOUT
          In_RST_V_V_0        -> 0 / Out_TIMEOUT
          In_ACCEPT           -> 0 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 0 / Out_TIMEOUT
          In_LISTEN           -> 1 / Out_TIMEOUT
          In_SYN_V_V_0        -> 0 / Out_TIMEOUT
          In_RCV              -> 0 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 0 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 0 / Out_TIMEOUT
          In_ACK_V_V_0        -> 0 / Out_TIMEOUT
    1     In_CLOSECONNECTION  -> 1 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 1 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 1 / Out_TIMEOUT
          In_RST_V_V_0        -> 1 / Out_TIMEOUT
          In_ACCEPT           -> 3 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 1 / Out_TIMEOUT
          In_LISTEN           -> 1 / Out_TIMEOUT
          In_SYN_V_V_0        -> 4 / Out_ACK_SYN_FRESH_NEXT_0
          In_RCV              -> 1 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 1 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 1 / Out_TIMEOUT
          In_ACK_V_V_0        -> 1 / Out_TIMEOUT
    2     In_CLOSECONNECTION  -> 2 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 2 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 2 / Out_TIMEOUT
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 2 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 2 / Out_TIMEOUT
          In_LISTEN           -> 2 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_TIMEOUT
          In_RCV              -> 2 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 2 / Out_TIMEOUT
          In_ACK_V_V_0        -> 2 / Out_TIMEOUT
    3     In_CLOSECONNECTION  -> 1 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 3 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 3 / Out_TIMEOUT
          In_RST_V_V_0        -> 3 / Out_TIMEOUT
          In_ACCEPT           -> 3 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 3 / Out_TIMEOUT
          In_LISTEN           -> 3 / Out_TIMEOUT
          In_SYN_V_V_0        -> 5 / Out_ACK_SYN_FRESH_NEXT_0
          In_RCV              -> 3 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 3 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 3 / Out_TIMEOUT
          In_ACK_V_V_0        -> 3 / Out_TIMEOUT
    4     In_CLOSECONNECTION  -> 4 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 6 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 4 / Out_TIMEOUT
          In_RST_V_V_0        -> 1 / Out_TIMEOUT
          In_ACCEPT           -> 5 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 7 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 4 / Out_TIMEOUT
          In_SYN_V_V_0        -> 1 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 4 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 1 / Out_TIMEOUT
          In_CLOSE            -> 8 / Out_TIMEOUT
          In_SEND             -> 4 / Out_TIMEOUT
          In_ACK_V_V_0        -> 9 / Out_TIMEOUT
    5     In_CLOSECONNECTION  -> 4 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 10 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 5 / Out_TIMEOUT
          In_RST_V_V_0        -> 3 / Out_TIMEOUT
          In_ACCEPT           -> 5 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 11 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 5 / Out_TIMEOUT
          In_SYN_V_V_0        -> 3 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 5 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 3 / Out_TIMEOUT
          In_CLOSE            -> 8 / Out_TIMEOUT
          In_SEND             -> 5 / Out_TIMEOUT
          In_ACK_V_V_0        -> 12 / Out_TIMEOUT
    6     In_CLOSECONNECTION  -> 6 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 6 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 13 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 13 / Out_TIMEOUT
          In_ACCEPT           -> 10 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 14 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 6 / Out_TIMEOUT
          In_SYN_V_V_0        -> 13 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 6 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 13 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 6 / Out_TIMEOUT
          In_ACK_V_V_0        -> 6 / Out_TIMEOUT
    7     In_CLOSECONNECTION  -> 7 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 7 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 13 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 13 / Out_TIMEOUT
          In_ACCEPT           -> 11 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 7 / Out_TIMEOUT
          In_LISTEN           -> 7 / Out_TIMEOUT
          In_SYN_V_V_0        -> 13 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 7 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 13 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 7 / Out_TIMEOUT
          In_ACK_V_V_0        -> 7 / Out_TIMEOUT
    8     In_CLOSECONNECTION  -> 8 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 2 / Out_RST_NEXT_CURRENT_0
          In_SYN_ACK_V_V_0    -> 8 / Out_TIMEOUT
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 8 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 2 / Out_RST_NEXT_CURRENT_0
          In_LISTEN           -> 8 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 8 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 8 / Out_TIMEOUT
          In_SEND             -> 8 / Out_TIMEOUT
          In_ACK_V_V_0        -> 2 / Out_RST_NEXT_CURRENT_0
    9     In_CLOSECONNECTION  -> 9 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 6 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 13 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 13 / Out_TIMEOUT
          In_ACCEPT           -> 12 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 7 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 9 / Out_TIMEOUT
          In_SYN_V_V_0        -> 13 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 9 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 13 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 9 / Out_TIMEOUT
          In_ACK_V_V_0        -> 9 / Out_TIMEOUT
    10    In_CLOSECONNECTION  -> 1 / Out_ACK_RST_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 10 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 16 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 10 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 21 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 10 / Out_TIMEOUT
          In_SYN_V_V_0        -> 16 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 12 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 22 / Out_TIMEOUT
          In_SEND             -> 10 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 10 / Out_TIMEOUT
    11    In_CLOSECONNECTION  -> 15 / Out_ACK_FIN_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 11 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 16 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 11 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 11 / Out_TIMEOUT
          In_LISTEN           -> 11 / Out_TIMEOUT
          In_SYN_V_V_0        -> 16 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 11 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 17 / Out_TIMEOUT
          In_SEND             -> 11 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 11 / Out_TIMEOUT
    12    In_CLOSECONNECTION  -> 18 / Out_ACK_FIN_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 10 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 16 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 12 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 11 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 12 / Out_TIMEOUT
          In_SYN_V_V_0        -> 16 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 19 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 20 / Out_TIMEOUT
          In_SEND             -> 12 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 12 / Out_TIMEOUT
    13    In_CLOSECONNECTION  -> 13 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 13 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 13 / Out_TIMEOUT
          In_RST_V_V_0        -> 13 / Out_TIMEOUT
          In_ACCEPT           -> 16 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 13 / Out_TIMEOUT
          In_LISTEN           -> 13 / Out_TIMEOUT
          In_SYN_V_V_0        -> 13 / Out_TIMEOUT
          In_RCV              -> 13 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 13 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 13 / Out_TIMEOUT
          In_ACK_V_V_0        -> 13 / Out_TIMEOUT
    14    In_CLOSECONNECTION  -> 14 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 14 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 13 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 13 / Out_TIMEOUT
          In_ACCEPT           -> 21 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 14 / Out_TIMEOUT
          In_LISTEN           -> 14 / Out_TIMEOUT
          In_SYN_V_V_0        -> 13 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 14 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 13 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 14 / Out_TIMEOUT
          In_ACK_V_V_0        -> 14 / Out_TIMEOUT
    15    In_CLOSECONNECTION  -> 15 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 1 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 1 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 1 / Out_TIMEOUT
          In_ACCEPT           -> 23 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 1 / Out_TIMEOUT
          In_LISTEN           -> 15 / Out_TIMEOUT
          In_SYN_V_V_0        -> 1 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 15 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 1 / Out_TIMEOUT
          In_CLOSE            -> 24 / Out_TIMEOUT
          In_SEND             -> 15 / Out_TIMEOUT
          In_ACK_V_V_0        -> 1 / Out_TIMEOUT
    16    In_CLOSECONNECTION  -> 1 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 16 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 16 / Out_TIMEOUT
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 16 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 16 / Out_TIMEOUT
          In_LISTEN           -> 16 / Out_TIMEOUT
          In_SYN_V_V_0        -> 25 / Out_ACK_SYN_FRESH_NEXT_0
          In_RCV              -> 16 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 16 / Out_TIMEOUT
          In_ACK_V_V_0        -> 16 / Out_TIMEOUT
    17    In_CLOSECONNECTION  -> 24 / Out_ACK_FIN_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 17 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 17 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 17 / Out_TIMEOUT
          In_LISTEN           -> 17 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 17 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 17 / Out_TIMEOUT
          In_SEND             -> 17 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 17 / Out_TIMEOUT
    18    In_CLOSECONNECTION  -> 18 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 1 / Out_ACK_RST_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 1 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 1 / Out_TIMEOUT
          In_ACCEPT           -> 26 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 27 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 18 / Out_TIMEOUT
          In_SYN_V_V_0        -> 1 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 18 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 1 / Out_TIMEOUT
          In_CLOSE            -> 28 / Out_TIMEOUT
          In_SEND             -> 18 / Out_TIMEOUT
          In_ACK_V_V_0        -> 18 / Out_TIMEOUT
    19    In_CLOSECONNECTION  -> 1 / Out_ACK_RST_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 12 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 16 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 19 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 11 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 19 / Out_TIMEOUT
          In_SYN_V_V_0        -> 16 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 19 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 20 / Out_TIMEOUT
          In_SEND             -> 19 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 19 / Out_TIMEOUT
    20    In_CLOSECONNECTION  -> 28 / Out_ACK_FIN_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 22 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 20 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 17 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 20 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 29 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 20 / Out_TIMEOUT
          In_SEND             -> 20 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 20 / Out_TIMEOUT
    21    In_CLOSECONNECTION  -> 1 / Out_ACK_RST_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 21 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 16 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 21 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 21 / Out_TIMEOUT
          In_LISTEN           -> 21 / Out_TIMEOUT
          In_SYN_V_V_0        -> 16 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 11 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 30 / Out_TIMEOUT
          In_SEND             -> 21 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 21 / Out_TIMEOUT
    22    In_CLOSECONNECTION  -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 22 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 22 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 30 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 22 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 20 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 22 / Out_TIMEOUT
          In_SEND             -> 22 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 22 / Out_TIMEOUT
    23    In_CLOSECONNECTION  -> 15 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 3 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 3 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 3 / Out_TIMEOUT
          In_ACCEPT           -> 23 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 3 / Out_TIMEOUT
          In_LISTEN           -> 23 / Out_TIMEOUT
          In_SYN_V_V_0        -> 3 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 23 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 3 / Out_TIMEOUT
          In_CLOSE            -> 24 / Out_TIMEOUT
          In_SEND             -> 23 / Out_TIMEOUT
          In_ACK_V_V_0        -> 3 / Out_TIMEOUT
    24    In_CLOSECONNECTION  -> 24 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 2 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 24 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 2 / Out_TIMEOUT
          In_LISTEN           -> 24 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 24 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 24 / Out_TIMEOUT
          In_SEND             -> 24 / Out_TIMEOUT
          In_ACK_V_V_0        -> 2 / Out_TIMEOUT
    25    In_CLOSECONNECTION  -> 4 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 31 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 25 / Out_TIMEOUT
          In_RST_V_V_0        -> 16 / Out_TIMEOUT
          In_ACCEPT           -> 25 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 32 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 25 / Out_TIMEOUT
          In_SYN_V_V_0        -> 16 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 25 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 16 / Out_TIMEOUT
          In_CLOSE            -> 8 / Out_TIMEOUT
          In_SEND             -> 25 / Out_TIMEOUT
          In_ACK_V_V_0        -> 33 / Out_TIMEOUT
    26    In_CLOSECONNECTION  -> 18 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 3 / Out_ACK_RST_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 3 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 3 / Out_TIMEOUT
          In_ACCEPT           -> 26 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 35 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 26 / Out_TIMEOUT
          In_SYN_V_V_0        -> 3 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 26 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 3 / Out_TIMEOUT
          In_CLOSE            -> 28 / Out_TIMEOUT
          In_SEND             -> 26 / Out_TIMEOUT
          In_ACK_V_V_0        -> 26 / Out_TIMEOUT
    27    In_CLOSECONNECTION  -> 27 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 27 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 27 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 1 / Out_TIMEOUT
          In_ACCEPT           -> 35 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 27 / Out_TIMEOUT
          In_LISTEN           -> 27 / Out_TIMEOUT
          In_SYN_V_V_0        -> 4 / Out_ACK_SYN_FRESH_NEXT_0
          In_RCV              -> 27 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 1 / Out_TIMEOUT
          In_CLOSE            -> 34 / Out_TIMEOUT
          In_SEND             -> 27 / Out_TIMEOUT
          In_ACK_V_V_0        -> 27 / Out_TIMEOUT
    28    In_CLOSECONNECTION  -> 28 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 2 / Out_ACK_RST_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 28 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 34 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 28 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 28 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 28 / Out_TIMEOUT
          In_SEND             -> 28 / Out_TIMEOUT
          In_ACK_V_V_0        -> 28 / Out_TIMEOUT
    29    In_CLOSECONNECTION  -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 20 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 29 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 17 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 29 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 29 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 20 / Out_TIMEOUT
          In_SEND             -> 29 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 29 / Out_TIMEOUT
    30    In_CLOSECONNECTION  -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_ACK_PSH_V_V_1    -> 30 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 2 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 30 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 30 / Out_TIMEOUT
          In_LISTEN           -> 30 / Out_TIMEOUT
          In_SYN_V_V_0        -> 2 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 17 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 30 / Out_TIMEOUT
          In_SEND             -> 30 / Out_ACK_PSH_NEXT_CURRENT_1
          In_ACK_V_V_0        -> 30 / Out_TIMEOUT
    31    In_CLOSECONNECTION  -> 6 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 31 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 36 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 36 / Out_TIMEOUT
          In_ACCEPT           -> 31 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 37 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 31 / Out_TIMEOUT
          In_SYN_V_V_0        -> 36 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 31 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 36 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 31 / Out_TIMEOUT
          In_ACK_V_V_0        -> 31 / Out_TIMEOUT
    32    In_CLOSECONNECTION  -> 7 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 32 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 36 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 36 / Out_TIMEOUT
          In_ACCEPT           -> 32 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 32 / Out_TIMEOUT
          In_LISTEN           -> 32 / Out_TIMEOUT
          In_SYN_V_V_0        -> 36 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 32 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 36 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 32 / Out_TIMEOUT
          In_ACK_V_V_0        -> 32 / Out_TIMEOUT
    33    In_CLOSECONNECTION  -> 9 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 31 / Out_ACK_NEXT_NEXT_0
          In_SYN_ACK_V_V_0    -> 36 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 36 / Out_TIMEOUT
          In_ACCEPT           -> 33 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 32 / Out_ACK_NEXT_NEXT_0
          In_LISTEN           -> 33 / Out_TIMEOUT
          In_SYN_V_V_0        -> 36 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 33 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 36 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 33 / Out_TIMEOUT
          In_ACK_V_V_0        -> 33 / Out_TIMEOUT
    34    In_CLOSECONNECTION  -> 34 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 34 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 34 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 2 / Out_TIMEOUT
          In_ACCEPT           -> 34 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 34 / Out_TIMEOUT
          In_LISTEN           -> 34 / Out_TIMEOUT
          In_SYN_V_V_0        -> 34 / Out_TIMEOUT
          In_RCV              -> 34 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 2 / Out_TIMEOUT
          In_CLOSE            -> 34 / Out_TIMEOUT
          In_SEND             -> 34 / Out_TIMEOUT
          In_ACK_V_V_0        -> 34 / Out_TIMEOUT
    35    In_CLOSECONNECTION  -> 27 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 35 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 35 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 3 / Out_TIMEOUT
          In_ACCEPT           -> 35 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 35 / Out_TIMEOUT
          In_LISTEN           -> 35 / Out_TIMEOUT
          In_SYN_V_V_0        -> 5 / Out_ACK_SYN_FRESH_NEXT_0
          In_RCV              -> 35 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 3 / Out_TIMEOUT
          In_CLOSE            -> 34 / Out_TIMEOUT
          In_SEND             -> 35 / Out_TIMEOUT
          In_ACK_V_V_0        -> 35 / Out_TIMEOUT
    36    In_CLOSECONNECTION  -> 13 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 36 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 36 / Out_TIMEOUT
          In_RST_V_V_0        -> 36 / Out_TIMEOUT
          In_ACCEPT           -> 36 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 36 / Out_TIMEOUT
          In_LISTEN           -> 36 / Out_TIMEOUT
          In_SYN_V_V_0        -> 36 / Out_TIMEOUT
          In_RCV              -> 36 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 36 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_TIMEOUT
          In_SEND             -> 36 / Out_TIMEOUT
          In_ACK_V_V_0        -> 36 / Out_TIMEOUT
    37    In_CLOSECONNECTION  -> 14 / Out_TIMEOUT
          In_ACK_PSH_V_V_1    -> 37 / Out_TIMEOUT
          In_SYN_ACK_V_V_0    -> 36 / Out_RST_NEXT_FRESH_0
          In_RST_V_V_0        -> 36 / Out_TIMEOUT
          In_ACCEPT           -> 37 / Out_TIMEOUT
          In_FIN_ACK_V_V_0    -> 37 / Out_TIMEOUT
          In_LISTEN           -> 37 / Out_TIMEOUT
          In_SYN_V_V_0        -> 36 / Out_ACK_RST_ZERO_NEXT_0
          In_RCV              -> 37 / Out_TIMEOUT
          In_ACK_RST_V_V_0    -> 36 / Out_TIMEOUT
          In_CLOSE            -> 2 / Out_ACK_RST_NEXT_CURRENT_0
          In_SEND             -> 37 / Out_TIMEOUT
          In_ACK_V_V_0        -> 37 / Out_TIMEOUT
-}
tcpServerWindowsTrans :: MealyAutomaton Int TcpServerWindowsTransInput TcpServerWindowsTransOutput
tcpServerWindowsTrans =
    case mkMealyAutomatonTable 38 0 deltaTable lambdaTable of
        Right m -> m
        Left err -> error ("haal-gen: invalid transition table: " ++ err)
  where
    deltaTable =
        "\0\0\0\0\0\0\1\0\0\0\2\0\0\
        \\1\1\1\1\3\1\1\4\1\1\2\1\1\
        \\2\2\2\2\2\2\2\2\2\2\2\2\2\
        \\1\3\3\3\3\3\3\5\3\3\2\3\3\
        \\4\6\4\1\5\7\4\1\4\1\8\4\9\
        \\4\10\5\3\5\11\5\3\5\3\8\5\12\
        \\6\6\13\13\10\14\6\13\6\13\2\6\6\
        \\7\7\13\13\11\7\7\13\7\13\2\7\7\
        \\8\2\8\2\8\2\8\2\8\2\8\8\2\
        \\9\6\13\13\12\7\9\13\9\13\2\9\9\
        \\1\10\16\16\10\21\10\16\12\16\22\10\10\
        \\15\11\16\16\11\11\11\16\11\16\17\11\11\
        \\18\10\16\16\12\11\12\16\19\16\20\12\12\
        \\13\13\13\13\16\13\13\13\13\13\2\13\13\
        \\14\14\13\13\21\14\14\13\14\13\2\14\14\
        \\15\1\1\1\23\1\15\1\15\1\24\15\1\
        \\1\16\16\16\16\16\16\25\16\16\2\16\16\
        \\24\17\2\2\17\17\17\2\17\2\17\17\17\
        \\18\1\1\1\26\27\18\1\18\1\28\18\18\
        \\1\12\16\16\19\11\19\16\19\16\20\19\19\
        \\28\22\2\2\20\17\20\2\29\2\20\20\20\
        \\1\21\16\16\21\21\21\16\11\16\30\21\21\
        \\2\22\2\2\22\30\22\2\20\2\22\22\22\
        \\15\3\3\3\23\3\23\3\23\3\24\23\3\
        \\24\2\2\2\24\2\24\2\24\2\24\24\2\
        \\4\31\25\16\25\32\25\16\25\16\8\25\33\
        \\18\3\3\3\26\35\26\3\26\3\28\26\26\
        \\27\27\27\1\35\27\27\4\27\1\34\27\27\
        \\28\2\2\2\28\34\28\2\28\2\28\28\28\
        \\2\20\2\2\29\17\29\2\29\2\20\29\29\
        \\2\30\2\2\30\30\30\2\17\2\30\30\30\
        \\6\31\36\36\31\37\31\36\31\36\2\31\31\
        \\7\32\36\36\32\32\32\36\32\36\2\32\32\
        \\9\31\36\36\33\32\33\36\33\36\2\33\33\
        \\34\34\34\2\34\34\34\34\34\2\34\34\34\
        \\27\35\35\3\35\35\35\5\35\3\34\35\35\
        \\13\36\36\36\36\36\36\36\36\36\2\36\36\
        \\14\37\36\36\37\37\37\36\37\36\2\37\37"
    lambdaTable =
        "\0\0\0\0\0\0\0\0\0\0\0\0\0\
        \\0\0\0\0\0\0\0\1\0\0\0\0\0\
        \\0\0\0\0\0\0\0\0\0\0\0\0\0\
        \\0\0\0\0\0\0\0\1\0\0\0\0\0\
        \\0\2\0\0\0\2\0\3\0\0\0\0\0\
        \\0\2\0\0\0\2\0\3\0\0\0\0\0\
        \\0\2\4\0\0\2\0\3\0\0\5\0\0\
        \\0\0\4\0\0\0\0\3\0\0\5\0\0\
        \\0\6\0\0\0\6\0\3\0\0\0\0\6\
        \\0\2\4\0\0\2\0\3\0\0\5\0\0\
        \\5\2\4\0\0\2\0\3\0\0\0\8\0\
        \\7\0\4\0\0\0\0\3\0\0\0\8\0\
        \\7\2\4\0\0\2\0\3\0\0\0\8\0\
        \\0\0\0\0\0\0\0\0\0\0\0\0\0\
        \\0\0\4\0\0\0\0\3\0\0\5\0\0\
        \\0\0\4\0\0\0\0\3\0\0\0\0\0\
        \\0\0\0\0\0\0\0\1\0\0\0\0\0\
        \\7\0\4\0\0\0\0\3\0\0\0\8\0\
        \\0\9\4\0\0\2\0\3\0\0\0\0\0\
        \\5\2\4\0\0\2\0\3\0\0\0\8\0\
        \\7\2\4\0\0\2\0\3\0\0\0\8\0\
        \\5\0\4\0\0\0\0\3\0\0\0\8\0\
        \\5\2\4\0\0\2\0\3\0\0\0\8\0\
        \\0\0\4\0\0\0\0\3\0\0\0\0\0\
        \\0\0\4\0\0\0\0\3\0\0\0\0\0\
        \\0\2\0\0\0\2\0\3\0\0\0\0\0\
        \\0\9\4\0\0\2\0\3\0\0\0\0\0\
        \\0\0\4\0\0\0\0\1\0\0\0\0\0\
        \\0\9\4\0\0\2\0\3\0\0\0\0\0\
        \\5\2\4\0\0\2\0\3\0\0\0\8\0\
        \\5\0\4\0\0\0\0\3\0\0\0\8\0\
        \\0\2\4\0\0\2\0\3\0\0\5\0\0\
        \\0\0\4\0\0\0\0\3\0\0\5\0\0\
        \\0\2\4\0\0\2\0\3\0\0\5\0\0\
        \\0\0\4\0\0\0\0\0\0\0\0\0\0\
        \\0\0\4\0\0\0\0\1\0\0\0\0\0\
        \\0\0\0\0\0\0\0\0\0\0\0\0\0\
        \\0\0\4\0\0\0\0\3\0\0\5\0\0"