Showing error 1832

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: product-lines/email_spec9_product28_safe.cil.c
Line in file: 4379
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

   1extern int __VERIFIER_nondet_int(void);
   2/* Generated by CIL v. 1.3.7 */
   3/* print_CIL_Input is true */
   4
   5#line 2 "libacc.c"
   6struct JoinPoint {
   7   void **(*fp)(struct JoinPoint * ) ;
   8   void **args ;
   9   int argsCount ;
  10   char const   **argsType ;
  11   void *(*arg)(int  , struct JoinPoint * ) ;
  12   char const   *(*argType)(int  , struct JoinPoint * ) ;
  13   void **retValue ;
  14   char const   *retType ;
  15   char const   *funcName ;
  16   char const   *targetName ;
  17   char const   *fileName ;
  18   char const   *kind ;
  19   void *excep_return ;
  20};
  21#line 18 "libacc.c"
  22struct __UTAC__CFLOW_FUNC {
  23   int (*func)(int  , int  ) ;
  24   int val ;
  25   struct __UTAC__CFLOW_FUNC *next ;
  26};
  27#line 18 "libacc.c"
  28struct __UTAC__EXCEPTION {
  29   void *jumpbuf ;
  30   unsigned long long prtValue ;
  31   int pops ;
  32   struct __UTAC__CFLOW_FUNC *cflowfuncs ;
  33};
  34#line 211 "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h"
  35typedef unsigned long size_t;
  36#line 76 "libacc.c"
  37struct __ACC__ERR {
  38   void *v ;
  39   struct __ACC__ERR *next ;
  40};
  41#line 1 "EncryptForward_spec.o"
  42#pragma merger(0,"EncryptForward_spec.i","")
  43#line 4 "wsllib.h"
  44void __automaton_fail(void) ;
  45#line 8 "featureselect.h"
  46int __SELECTED_FEATURE_Base  ;
  47#line 11 "featureselect.h"
  48int __SELECTED_FEATURE_Keys  ;
  49#line 14 "featureselect.h"
  50int __SELECTED_FEATURE_Encrypt  ;
  51#line 17 "featureselect.h"
  52int __SELECTED_FEATURE_AutoResponder  ;
  53#line 20 "featureselect.h"
  54int __SELECTED_FEATURE_AddressBook  ;
  55#line 23 "featureselect.h"
  56int __SELECTED_FEATURE_Sign  ;
  57#line 26 "featureselect.h"
  58int __SELECTED_FEATURE_Forward  ;
  59#line 29 "featureselect.h"
  60int __SELECTED_FEATURE_Verify  ;
  61#line 32 "featureselect.h"
  62int __SELECTED_FEATURE_Decrypt  ;
  63#line 35 "featureselect.h"
  64int __GUIDSL_ROOT_PRODUCTION  ;
  65#line 37 "featureselect.h"
  66int __GUIDSL_NON_TERMINAL_main  ;
  67#line 26 "EmailLib.h"
  68int isEncrypted(int handle ) ;
  69#line 359 "/usr/include/stdio.h"
  70extern int printf(char const   * __restrict  __format  , ...) ;
  71#line 688
  72extern int puts(char const   *__s ) ;
  73#line 7 "EncryptForward_spec.c"
  74int in_encrypted  =    0;
  75#line 11 "EncryptForward_spec.c"
  76__inline void __utac_acc__EncryptForward_spec__1(int msg ) 
  77{ char const   * __restrict  __cil_tmp2 ;
  78
  79  {
  80  {
  81#line 13
  82  puts("before incoming\n");
  83#line 14
  84  in_encrypted = isEncrypted(msg);
  85#line 15
  86  __cil_tmp2 = (char const   * __restrict  )"in_encrypted=%d\n";
  87#line 15
  88  printf(__cil_tmp2, in_encrypted);
  89  }
  90#line 15
  91  return;
  92}
  93}
  94#line 19 "EncryptForward_spec.c"
  95__inline void __utac_acc__EncryptForward_spec__2(int msg ) 
  96{ int tmp ;
  97  char const   * __restrict  __cil_tmp3 ;
  98
  99  {
 100  {
 101#line 21
 102  puts("before mail\n");
 103#line 22
 104  __cil_tmp3 = (char const   * __restrict  )"in_encrypted=%d\n";
 105#line 22
 106  printf(__cil_tmp3, in_encrypted);
 107  }
 108#line 23
 109  if (in_encrypted) {
 110    {
 111#line 23
 112    tmp = isEncrypted(msg);
 113    }
 114#line 23
 115    if (tmp) {
 116
 117    } else {
 118      {
 119#line 24
 120      __automaton_fail();
 121      }
 122    }
 123  } else {
 124
 125  }
 126#line 24
 127  return;
 128}
 129}
 130#line 1 "Util.o"
 131#pragma merger(0,"Util.i","")
 132#line 1 "Util.h"
 133int prompt(char *msg ) ;
 134#line 9 "Util.c"
 135int prompt(char *msg ) 
 136{ int retValue_acc ;
 137  int retval ;
 138  char const   * __restrict  __cil_tmp4 ;
 139
 140  {
 141  {
 142#line 10
 143  __cil_tmp4 = (char const   * __restrict  )"%s\n";
 144#line 10
 145  printf(__cil_tmp4, msg);
 146#line 518 "Util.c"
 147  retValue_acc = retval;
 148  }
 149#line 520
 150  return (retValue_acc);
 151#line 527
 152  return (retValue_acc);
 153}
 154}
 155#line 1 "featureselect.o"
 156#pragma merger(0,"featureselect.i","")
 157#line 41 "featureselect.h"
 158int select_one(void) ;
 159#line 43
 160void select_features(void) ;
 161#line 45
 162void select_helpers(void) ;
 163#line 47
 164int valid_product(void) ;
 165#line 8 "featureselect.c"
 166int select_one(void) 
 167{ int retValue_acc ;
 168  int choice = __VERIFIER_nondet_int();
 169
 170  {
 171#line 84 "featureselect.c"
 172  retValue_acc = choice;
 173#line 86
 174  return (retValue_acc);
 175#line 93
 176  return (retValue_acc);
 177}
 178}
 179#line 14 "featureselect.c"
 180void select_features(void) 
 181{ 
 182
 183  {
 184#line 115 "featureselect.c"
 185  return;
 186}
 187}
 188#line 20 "featureselect.c"
 189void select_helpers(void) 
 190{ 
 191
 192  {
 193#line 133 "featureselect.c"
 194  return;
 195}
 196}
 197#line 25 "featureselect.c"
 198int valid_product(void) 
 199{ int retValue_acc ;
 200
 201  {
 202#line 151 "featureselect.c"
 203  retValue_acc = 1;
 204#line 153
 205  return (retValue_acc);
 206#line 160
 207  return (retValue_acc);
 208}
 209}
 210#line 1 "Client.o"
 211#pragma merger(0,"Client.i","")
 212#line 4 "ClientLib.h"
 213int initClient(void) ;
 214#line 33
 215int getClientPrivateKey(int handle ) ;
 216#line 35
 217void setClientPrivateKey(int handle , int value ) ;
 218#line 53
 219int getClientId(int handle ) ;
 220#line 57
 221int findPublicKey(int handle , int userid ) ;
 222#line 10 "EmailLib.h"
 223int getEmailFrom(int handle ) ;
 224#line 12
 225void setEmailFrom(int handle , int value ) ;
 226#line 14
 227int getEmailTo(int handle ) ;
 228#line 28
 229void setEmailIsEncrypted(int handle , int value ) ;
 230#line 30
 231int getEmailEncryptionKey(int handle ) ;
 232#line 32
 233void setEmailEncryptionKey(int handle , int value ) ;
 234#line 34
 235int isSigned(int handle ) ;
 236#line 36
 237void setEmailIsSigned(int handle , int value ) ;
 238#line 38
 239int getEmailSignKey(int handle ) ;
 240#line 40
 241void setEmailSignKey(int handle , int value ) ;
 242#line 44
 243void setEmailIsSignatureVerified(int handle , int value ) ;
 244#line 9 "Email.h"
 245int isReadable(int msg ) ;
 246#line 12
 247int createEmail(int from , int to ) ;
 248#line 14 "Client.h"
 249void queue(int client , int msg ) ;
 250#line 17
 251int is_queue_empty(void) ;
 252#line 19
 253int get_queued_client(void) ;
 254#line 21
 255int get_queued_email(void) ;
 256#line 24
 257void mail(int client , int msg ) ;
 258#line 26
 259void outgoing(int client , int msg ) ;
 260#line 28
 261void deliver(int client , int msg ) ;
 262#line 30
 263void incoming(int client , int msg ) ;
 264#line 32
 265int createClient(char *name ) ;
 266#line 35
 267void sendEmail(int sender , int receiver ) ;
 268#line 40
 269int isKeyPairValid(int publicKey , int privateKey ) ;
 270#line 44
 271void generateKeyPair(int client , int seed ) ;
 272#line 46
 273void sign(int client , int msg ) ;
 274#line 48
 275void verify(int client , int msg ) ;
 276#line 6 "Client.c"
 277int queue_empty  =    1;
 278#line 9 "Client.c"
 279int queued_message  ;
 280#line 12 "Client.c"
 281int queued_client  ;
 282#line 18 "Client.c"
 283void mail(int client , int msg ) 
 284{ int __utac__ad__arg1 ;
 285  int tmp ;
 286
 287  {
 288  {
 289#line 724 "Client.c"
 290  __utac__ad__arg1 = msg;
 291#line 725
 292  __utac_acc__EncryptForward_spec__2(__utac__ad__arg1);
 293#line 19 "Client.c"
 294  puts("mail sent");
 295#line 20
 296  tmp = getEmailTo(msg);
 297#line 20
 298  incoming(tmp, msg);
 299  }
 300#line 742 "Client.c"
 301  return;
 302}
 303}
 304#line 27 "Client.c"
 305void outgoing__wrappee__Keys(int client , int msg ) 
 306{ int tmp ;
 307
 308  {
 309  {
 310#line 28
 311  tmp = getClientId(client);
 312#line 28
 313  setEmailFrom(msg, tmp);
 314#line 29
 315  mail(client, msg);
 316  }
 317#line 764 "Client.c"
 318  return;
 319}
 320}
 321#line 33 "Client.c"
 322void outgoing__wrappee__Encrypt(int client , int msg ) 
 323{ int receiver ;
 324  int tmp ;
 325  int pubkey ;
 326  int tmp___0 ;
 327
 328  {
 329  {
 330#line 36
 331  tmp = getEmailTo(msg);
 332#line 36
 333  receiver = tmp;
 334#line 37
 335  tmp___0 = findPublicKey(client, receiver);
 336#line 37
 337  pubkey = tmp___0;
 338  }
 339#line 38
 340  if (pubkey) {
 341    {
 342#line 39
 343    setEmailEncryptionKey(msg, pubkey);
 344#line 40
 345    setEmailIsEncrypted(msg, 1);
 346    }
 347  } else {
 348
 349  }
 350  {
 351#line 45
 352  outgoing__wrappee__Keys(client, msg);
 353  }
 354#line 799 "Client.c"
 355  return;
 356}
 357}
 358#line 51 "Client.c"
 359void outgoing(int client , int msg ) 
 360{ 
 361
 362  {
 363  {
 364#line 52
 365  sign(client, msg);
 366#line 53
 367  outgoing__wrappee__Encrypt(client, msg);
 368  }
 369#line 821 "Client.c"
 370  return;
 371}
 372}
 373#line 60 "Client.c"
 374void deliver(int client , int msg ) 
 375{ 
 376
 377  {
 378  {
 379#line 61
 380  puts("mail delivered\n");
 381  }
 382#line 841 "Client.c"
 383  return;
 384}
 385}
 386#line 68 "Client.c"
 387void incoming__wrappee__Sign(int client , int msg ) 
 388{ 
 389
 390  {
 391  {
 392#line 69
 393  deliver(client, msg);
 394  }
 395#line 861 "Client.c"
 396  return;
 397}
 398}
 399#line 75 "Client.c"
 400void incoming__wrappee__Verify(int client , int msg ) 
 401{ 
 402
 403  {
 404  {
 405#line 76
 406  verify(client, msg);
 407#line 77
 408  incoming__wrappee__Sign(client, msg);
 409  }
 410#line 883 "Client.c"
 411  return;
 412}
 413}
 414#line 82 "Client.c"
 415void incoming(int client , int msg ) 
 416{ int __utac__ad__arg1 ;
 417  int privkey ;
 418  int tmp ;
 419  int tmp___0 ;
 420  int tmp___1 ;
 421  int tmp___2 ;
 422
 423  {
 424  {
 425#line 896 "Client.c"
 426  __utac__ad__arg1 = msg;
 427#line 897
 428  __utac_acc__EncryptForward_spec__1(__utac__ad__arg1);
 429#line 85 "Client.c"
 430  tmp = getClientPrivateKey(client);
 431#line 85
 432  privkey = tmp;
 433  }
 434#line 86
 435  if (privkey) {
 436    {
 437#line 94
 438    tmp___0 = isEncrypted(msg);
 439    }
 440#line 94
 441    if (tmp___0) {
 442      {
 443#line 94
 444      tmp___1 = getEmailEncryptionKey(msg);
 445#line 94
 446      tmp___2 = isKeyPairValid(tmp___1, privkey);
 447      }
 448#line 94
 449      if (tmp___2) {
 450        {
 451#line 91
 452        setEmailIsEncrypted(msg, 0);
 453#line 92
 454        setEmailEncryptionKey(msg, 0);
 455        }
 456      } else {
 457
 458      }
 459    } else {
 460
 461    }
 462  } else {
 463
 464  }
 465  {
 466#line 97
 467  incoming__wrappee__Verify(client, msg);
 468  }
 469#line 926 "Client.c"
 470  return;
 471}
 472}
 473#line 101 "Client.c"
 474int createClient(char *name ) 
 475{ int retValue_acc ;
 476  int client ;
 477  int tmp ;
 478
 479  {
 480  {
 481#line 102
 482  tmp = initClient();
 483#line 102
 484  client = tmp;
 485#line 948 "Client.c"
 486  retValue_acc = client;
 487  }
 488#line 950
 489  return (retValue_acc);
 490#line 957
 491  return (retValue_acc);
 492}
 493}
 494#line 109 "Client.c"
 495void sendEmail(int sender , int receiver ) 
 496{ int email ;
 497  int tmp ;
 498
 499  {
 500  {
 501#line 110
 502  tmp = createEmail(0, receiver);
 503#line 110
 504  email = tmp;
 505#line 111
 506  outgoing(sender, email);
 507  }
 508#line 985 "Client.c"
 509  return;
 510}
 511}
 512#line 119 "Client.c"
 513void queue(int client , int msg ) 
 514{ 
 515
 516  {
 517#line 120
 518  queue_empty = 0;
 519#line 121
 520  queued_message = msg;
 521#line 122
 522  queued_client = client;
 523#line 1009 "Client.c"
 524  return;
 525}
 526}
 527#line 128 "Client.c"
 528int is_queue_empty(void) 
 529{ int retValue_acc ;
 530
 531  {
 532#line 1027 "Client.c"
 533  retValue_acc = queue_empty;
 534#line 1029
 535  return (retValue_acc);
 536#line 1036
 537  return (retValue_acc);
 538}
 539}
 540#line 135 "Client.c"
 541int get_queued_client(void) 
 542{ int retValue_acc ;
 543
 544  {
 545#line 1058 "Client.c"
 546  retValue_acc = queued_client;
 547#line 1060
 548  return (retValue_acc);
 549#line 1067
 550  return (retValue_acc);
 551}
 552}
 553#line 142 "Client.c"
 554int get_queued_email(void) 
 555{ int retValue_acc ;
 556
 557  {
 558#line 1089 "Client.c"
 559  retValue_acc = queued_message;
 560#line 1091
 561  return (retValue_acc);
 562#line 1098
 563  return (retValue_acc);
 564}
 565}
 566#line 148 "Client.c"
 567int isKeyPairValid(int publicKey , int privateKey ) 
 568{ int retValue_acc ;
 569  char const   * __restrict  __cil_tmp4 ;
 570
 571  {
 572  {
 573#line 149
 574  __cil_tmp4 = (char const   * __restrict  )"keypair valid %d %d";
 575#line 149
 576  printf(__cil_tmp4, publicKey, privateKey);
 577  }
 578#line 150 "Client.c"
 579  if (! publicKey) {
 580#line 1123 "Client.c"
 581    retValue_acc = 0;
 582#line 1125
 583    return (retValue_acc);
 584  } else {
 585#line 150 "Client.c"
 586    if (! privateKey) {
 587#line 1123 "Client.c"
 588      retValue_acc = 0;
 589#line 1125
 590      return (retValue_acc);
 591    } else {
 592
 593    }
 594  }
 595#line 1130 "Client.c"
 596  retValue_acc = privateKey == publicKey;
 597#line 1132
 598  return (retValue_acc);
 599#line 1139
 600  return (retValue_acc);
 601}
 602}
 603#line 158 "Client.c"
 604void generateKeyPair(int client , int seed ) 
 605{ 
 606
 607  {
 608  {
 609#line 159
 610  setClientPrivateKey(client, seed);
 611  }
 612#line 1163 "Client.c"
 613  return;
 614}
 615}
 616#line 164 "Client.c"
 617void sign(int client , int msg ) 
 618{ int privkey ;
 619  int tmp ;
 620
 621  {
 622  {
 623#line 165
 624  tmp = getClientPrivateKey(client);
 625#line 165
 626  privkey = tmp;
 627  }
 628#line 166
 629  if (! privkey) {
 630#line 167
 631    return;
 632  } else {
 633
 634  }
 635  {
 636#line 168
 637  setEmailIsSigned(msg, 1);
 638#line 169
 639  setEmailSignKey(msg, privkey);
 640  }
 641#line 1193 "Client.c"
 642  return;
 643}
 644}
 645#line 174 "Client.c"
 646void verify(int client , int msg ) 
 647{ int tmp ;
 648  int tmp___0 ;
 649  int pubkey ;
 650  int tmp___1 ;
 651  int tmp___2 ;
 652  int tmp___3 ;
 653  int tmp___4 ;
 654
 655  {
 656  {
 657#line 179
 658  tmp = isReadable(msg);
 659  }
 660#line 179
 661  if (tmp) {
 662    {
 663#line 179
 664    tmp___0 = isSigned(msg);
 665    }
 666#line 179
 667    if (tmp___0) {
 668
 669    } else {
 670#line 180
 671      return;
 672    }
 673  } else {
 674#line 180
 675    return;
 676  }
 677  {
 678#line 179
 679  tmp___1 = getEmailFrom(msg);
 680#line 179
 681  tmp___2 = findPublicKey(client, tmp___1);
 682#line 179
 683  pubkey = tmp___2;
 684  }
 685#line 180
 686  if (pubkey) {
 687    {
 688#line 180
 689    tmp___3 = getEmailSignKey(msg);
 690#line 180
 691    tmp___4 = isKeyPairValid(tmp___3, pubkey);
 692    }
 693#line 180
 694    if (tmp___4) {
 695      {
 696#line 181
 697      setEmailIsSignatureVerified(msg, 1);
 698      }
 699    } else {
 700
 701    }
 702  } else {
 703
 704  }
 705#line 1224 "Client.c"
 706  return;
 707}
 708}
 709#line 1 "scenario.o"
 710#pragma merger(0,"scenario.i","")
 711#line 17 "scenario.c"
 712void bobKeyAdd(void) ;
 713#line 24
 714void rjhDeletePrivateKey(void) ;
 715#line 28
 716void rjhKeyAdd(void) ;
 717#line 32
 718void chuckKeyAddRjh(void) ;
 719#line 39
 720void rjhKeyChange(void) ;
 721#line 46
 722void chuckKeyAdd(void) ;
 723#line 50
 724void bobKeyChange(void) ;
 725#line 52
 726#line 59
 727void bobToRjh(void) ;
 728#line 1 "scenario.c"
 729void test(void) 
 730{ int op1 ;
 731  int op2 ;
 732  int op3 ;
 733  int op4 ;
 734  int op5 ;
 735  int op6 ;
 736  int op7 ;
 737  int op8 ;
 738  int op9 ;
 739  int op10 ;
 740  int op11 ;
 741  int splverifierCounter ;
 742  int tmp ;
 743  int tmp___0 ;
 744  int tmp___1 ;
 745  int tmp___2 ;
 746  int tmp___3 ;
 747  int tmp___4 ;
 748  int tmp___5 ;
 749  int tmp___6 ;
 750  int tmp___7 ;
 751  int tmp___8 ;
 752  int tmp___9 ;
 753
 754  {
 755#line 2
 756  op1 = 0;
 757#line 3
 758  op2 = 0;
 759#line 4
 760  op3 = 0;
 761#line 5
 762  op4 = 0;
 763#line 6
 764  op5 = 0;
 765#line 7
 766  op6 = 0;
 767#line 8
 768  op7 = 0;
 769#line 9
 770  op8 = 0;
 771#line 10
 772  op9 = 0;
 773#line 11
 774  op10 = 0;
 775#line 12
 776  op11 = 0;
 777#line 13
 778  splverifierCounter = 0;
 779  {
 780#line 14
 781  while (1) {
 782    while_0_continue: /* CIL Label */ ;
 783#line 14
 784    if (splverifierCounter < 4) {
 785
 786    } else {
 787      goto while_0_break;
 788    }
 789#line 15
 790    splverifierCounter = splverifierCounter + 1;
 791#line 16
 792    if (! op1) {
 793      {
 794#line 16
 795      tmp___9 = __VERIFIER_nondet_int();
 796      }
 797#line 16
 798      if (tmp___9) {
 799        {
 800#line 17
 801        bobKeyAdd();
 802#line 18
 803        op1 = 1;
 804        }
 805      } else {
 806        goto _L___8;
 807      }
 808    } else {
 809      _L___8: /* CIL Label */ 
 810#line 19
 811      if (! op2) {
 812        {
 813#line 19
 814        tmp___8 = __VERIFIER_nondet_int();
 815        }
 816#line 19
 817        if (tmp___8) {
 818#line 21
 819          op2 = 1;
 820        } else {
 821          goto _L___7;
 822        }
 823      } else {
 824        _L___7: /* CIL Label */ 
 825#line 22
 826        if (! op3) {
 827          {
 828#line 22
 829          tmp___7 = __VERIFIER_nondet_int();
 830          }
 831#line 22
 832          if (tmp___7) {
 833            {
 834#line 24
 835            rjhDeletePrivateKey();
 836#line 25
 837            op3 = 1;
 838            }
 839          } else {
 840            goto _L___6;
 841          }
 842        } else {
 843          _L___6: /* CIL Label */ 
 844#line 26
 845          if (! op4) {
 846            {
 847#line 26
 848            tmp___6 = __VERIFIER_nondet_int();
 849            }
 850#line 26
 851            if (tmp___6) {
 852              {
 853#line 28
 854              rjhKeyAdd();
 855#line 29
 856              op4 = 1;
 857              }
 858            } else {
 859              goto _L___5;
 860            }
 861          } else {
 862            _L___5: /* CIL Label */ 
 863#line 30
 864            if (! op5) {
 865              {
 866#line 30
 867              tmp___5 = __VERIFIER_nondet_int();
 868              }
 869#line 30
 870              if (tmp___5) {
 871                {
 872#line 32
 873                chuckKeyAddRjh();
 874#line 33
 875                op5 = 1;
 876                }
 877              } else {
 878                goto _L___4;
 879              }
 880            } else {
 881              _L___4: /* CIL Label */ 
 882#line 34
 883              if (! op6) {
 884                {
 885#line 34
 886                tmp___4 = __VERIFIER_nondet_int();
 887                }
 888#line 34
 889                if (tmp___4) {
 890#line 36
 891                  op6 = 1;
 892                } else {
 893                  goto _L___3;
 894                }
 895              } else {
 896                _L___3: /* CIL Label */ 
 897#line 37
 898                if (! op7) {
 899                  {
 900#line 37
 901                  tmp___3 = __VERIFIER_nondet_int();
 902                  }
 903#line 37
 904                  if (tmp___3) {
 905                    {
 906#line 39
 907                    rjhKeyChange();
 908#line 40
 909                    op7 = 1;
 910                    }
 911                  } else {
 912                    goto _L___2;
 913                  }
 914                } else {
 915                  _L___2: /* CIL Label */ 
 916#line 41
 917                  if (! op8) {
 918                    {
 919#line 41
 920                    tmp___2 = __VERIFIER_nondet_int();
 921                    }
 922#line 41
 923                    if (tmp___2) {
 924#line 43
 925                      op8 = 1;
 926                    } else {
 927                      goto _L___1;
 928                    }
 929                  } else {
 930                    _L___1: /* CIL Label */ 
 931#line 44
 932                    if (! op9) {
 933                      {
 934#line 44
 935                      tmp___1 = __VERIFIER_nondet_int();
 936                      }
 937#line 44
 938                      if (tmp___1) {
 939                        {
 940#line 46
 941                        chuckKeyAdd();
 942#line 47
 943                        op9 = 1;
 944                        }
 945                      } else {
 946                        goto _L___0;
 947                      }
 948                    } else {
 949                      _L___0: /* CIL Label */ 
 950#line 48
 951                      if (! op10) {
 952                        {
 953#line 48
 954                        tmp___0 = __VERIFIER_nondet_int();
 955                        }
 956#line 48
 957                        if (tmp___0) {
 958                          {
 959#line 50
 960                          bobKeyChange();
 961#line 51
 962                          op10 = 1;
 963                          }
 964                        } else {
 965                          goto _L;
 966                        }
 967                      } else {
 968                        _L: /* CIL Label */ 
 969#line 52
 970                        if (! op11) {
 971                          {
 972#line 52
 973                          tmp = __VERIFIER_nondet_int();
 974                          }
 975#line 52
 976                          if (tmp) {
 977                            {
 978#line 54
 979                            chuckKeyAdd();
 980#line 55
 981                            op11 = 1;
 982                            }
 983                          } else {
 984                            goto while_0_break;
 985                          }
 986                        } else {
 987                          goto while_0_break;
 988                        }
 989                      }
 990                    }
 991                  }
 992                }
 993              }
 994            }
 995          }
 996        }
 997      }
 998    }
 999  }
1000  while_0_break: /* CIL Label */ ;
1001  }
1002  {
1003#line 59
1004  bobToRjh();
1005  }
1006#line 165 "scenario.c"
1007  return;
1008}
1009}
1010#line 1 "ClientLib.o"
1011#pragma merger(0,"ClientLib.i","")
1012#line 6 "ClientLib.h"
1013char *getClientName(int handle ) ;
1014#line 8
1015void setClientName(int handle , char *value ) ;
1016#line 10
1017int getClientOutbuffer(int handle ) ;
1018#line 12
1019void setClientOutbuffer(int handle , int value ) ;
1020#line 14
1021int getClientAddressBookSize(int handle ) ;
1022#line 16
1023void setClientAddressBookSize(int handle , int value ) ;
1024#line 18
1025int createClientAddressBookEntry(int handle ) ;
1026#line 20
1027int getClientAddressBookAlias(int handle , int index ) ;
1028#line 22
1029void setClientAddressBookAlias(int handle , int index , int value ) ;
1030#line 24
1031int getClientAddressBookAddress(int handle , int index ) ;
1032#line 26
1033void setClientAddressBookAddress(int handle , int index , int value ) ;
1034#line 29
1035int getClientAutoResponse(int handle ) ;
1036#line 31
1037void setClientAutoResponse(int handle , int value ) ;
1038#line 37
1039int getClientKeyringSize(int handle ) ;
1040#line 39
1041int createClientKeyringEntry(int handle ) ;
1042#line 41
1043int getClientKeyringUser(int handle , int index ) ;
1044#line 43
1045void setClientKeyringUser(int handle , int index , int value ) ;
1046#line 45
1047int getClientKeyringPublicKey(int handle , int index ) ;
1048#line 47
1049void setClientKeyringPublicKey(int handle , int index , int value ) ;
1050#line 49
1051int getClientForwardReceiver(int handle ) ;
1052#line 51
1053void setClientForwardReceiver(int handle , int value ) ;
1054#line 55
1055void setClientId(int handle , int value ) ;
1056#line 59
1057int findClientAddressBookAlias(int handle , int userid ) ;
1058#line 5 "ClientLib.c"
1059int __ste_Client_counter  =    0;
1060#line 7 "ClientLib.c"
1061int initClient(void) 
1062{ int retValue_acc ;
1063
1064  {
1065#line 12 "ClientLib.c"
1066  if (__ste_Client_counter < 3) {
1067#line 684
1068    __ste_Client_counter = __ste_Client_counter + 1;
1069#line 684
1070    retValue_acc = __ste_Client_counter;
1071#line 686
1072    return (retValue_acc);
1073  } else {
1074#line 692 "ClientLib.c"
1075    retValue_acc = -1;
1076#line 694
1077    return (retValue_acc);
1078  }
1079#line 701 "ClientLib.c"
1080  return (retValue_acc);
1081}
1082}
1083#line 15 "ClientLib.c"
1084char *__ste_client_name0  =    (char *)0;
1085#line 17 "ClientLib.c"
1086char *__ste_client_name1  =    (char *)0;
1087#line 19 "ClientLib.c"
1088char *__ste_client_name2  =    (char *)0;
1089#line 22 "ClientLib.c"
1090char *getClientName(int handle ) 
1091{ char *retValue_acc ;
1092  void *__cil_tmp3 ;
1093
1094  {
1095#line 31 "ClientLib.c"
1096  if (handle == 1) {
1097#line 732
1098    retValue_acc = __ste_client_name0;
1099#line 734
1100    return (retValue_acc);
1101  } else {
1102#line 736
1103    if (handle == 2) {
1104#line 741
1105      retValue_acc = __ste_client_name1;
1106#line 743
1107      return (retValue_acc);
1108    } else {
1109#line 745
1110      if (handle == 3) {
1111#line 750
1112        retValue_acc = __ste_client_name2;
1113#line 752
1114        return (retValue_acc);
1115      } else {
1116#line 758 "ClientLib.c"
1117        __cil_tmp3 = (void *)0;
1118#line 758
1119        retValue_acc = (char *)__cil_tmp3;
1120#line 760
1121        return (retValue_acc);
1122      }
1123    }
1124  }
1125#line 767 "ClientLib.c"
1126  return (retValue_acc);
1127}
1128}
1129#line 34 "ClientLib.c"
1130void setClientName(int handle , char *value ) 
1131{ 
1132
1133  {
1134#line 42
1135  if (handle == 1) {
1136#line 36
1137    __ste_client_name0 = value;
1138  } else {
1139#line 37
1140    if (handle == 2) {
1141#line 38
1142      __ste_client_name1 = value;
1143    } else {
1144#line 39
1145      if (handle == 3) {
1146#line 40
1147        __ste_client_name2 = value;
1148      } else {
1149
1150      }
1151    }
1152  }
1153#line 802 "ClientLib.c"
1154  return;
1155}
1156}
1157#line 44 "ClientLib.c"
1158int __ste_client_outbuffer0  =    0;
1159#line 46 "ClientLib.c"
1160int __ste_client_outbuffer1  =    0;
1161#line 48 "ClientLib.c"
1162int __ste_client_outbuffer2  =    0;
1163#line 50 "ClientLib.c"
1164int __ste_client_outbuffer3  =    0;
1165#line 53 "ClientLib.c"
1166int getClientOutbuffer(int handle ) 
1167{ int retValue_acc ;
1168
1169  {
1170#line 62 "ClientLib.c"
1171  if (handle == 1) {
1172#line 831
1173    retValue_acc = __ste_client_outbuffer0;
1174#line 833
1175    return (retValue_acc);
1176  } else {
1177#line 835
1178    if (handle == 2) {
1179#line 840
1180      retValue_acc = __ste_client_outbuffer1;
1181#line 842
1182      return (retValue_acc);
1183    } else {
1184#line 844
1185      if (handle == 3) {
1186#line 849
1187        retValue_acc = __ste_client_outbuffer2;
1188#line 851
1189        return (retValue_acc);
1190      } else {
1191#line 857 "ClientLib.c"
1192        retValue_acc = 0;
1193#line 859
1194        return (retValue_acc);
1195      }
1196    }
1197  }
1198#line 866 "ClientLib.c"
1199  return (retValue_acc);
1200}
1201}
1202#line 65 "ClientLib.c"
1203void setClientOutbuffer(int handle , int value ) 
1204{ 
1205
1206  {
1207#line 73
1208  if (handle == 1) {
1209#line 67
1210    __ste_client_outbuffer0 = value;
1211  } else {
1212#line 68
1213    if (handle == 2) {
1214#line 69
1215      __ste_client_outbuffer1 = value;
1216    } else {
1217#line 70
1218      if (handle == 3) {
1219#line 71
1220        __ste_client_outbuffer2 = value;
1221      } else {
1222
1223      }
1224    }
1225  }
1226#line 901 "ClientLib.c"
1227  return;
1228}
1229}
1230#line 77 "ClientLib.c"
1231int __ste_ClientAddressBook_size0  =    0;
1232#line 79 "ClientLib.c"
1233int __ste_ClientAddressBook_size1  =    0;
1234#line 81 "ClientLib.c"
1235int __ste_ClientAddressBook_size2  =    0;
1236#line 84 "ClientLib.c"
1237int getClientAddressBookSize(int handle ) 
1238{ int retValue_acc ;
1239
1240  {
1241#line 93 "ClientLib.c"
1242  if (handle == 1) {
1243#line 928
1244    retValue_acc = __ste_ClientAddressBook_size0;
1245#line 930
1246    return (retValue_acc);
1247  } else {
1248#line 932
1249    if (handle == 2) {
1250#line 937
1251      retValue_acc = __ste_ClientAddressBook_size1;
1252#line 939
1253      return (retValue_acc);
1254    } else {
1255#line 941
1256      if (handle == 3) {
1257#line 946
1258        retValue_acc = __ste_ClientAddressBook_size2;
1259#line 948
1260        return (retValue_acc);
1261      } else {
1262#line 954 "ClientLib.c"
1263        retValue_acc = 0;
1264#line 956
1265        return (retValue_acc);
1266      }
1267    }
1268  }
1269#line 963 "ClientLib.c"
1270  return (retValue_acc);
1271}
1272}
1273#line 96 "ClientLib.c"
1274void setClientAddressBookSize(int handle , int value ) 
1275{ 
1276
1277  {
1278#line 104
1279  if (handle == 1) {
1280#line 98
1281    __ste_ClientAddressBook_size0 = value;
1282  } else {
1283#line 99
1284    if (handle == 2) {
1285#line 100
1286      __ste_ClientAddressBook_size1 = value;
1287    } else {
1288#line 101
1289      if (handle == 3) {
1290#line 102
1291        __ste_ClientAddressBook_size2 = value;
1292      } else {
1293
1294      }
1295    }
1296  }
1297#line 998 "ClientLib.c"
1298  return;
1299}
1300}
1301#line 106 "ClientLib.c"
1302int createClientAddressBookEntry(int handle ) 
1303{ int retValue_acc ;
1304  int size ;
1305  int tmp ;
1306  int __cil_tmp5 ;
1307
1308  {
1309  {
1310#line 107
1311  tmp = getClientAddressBookSize(handle);
1312#line 107
1313  size = tmp;
1314  }
1315#line 108 "ClientLib.c"
1316  if (size < 3) {
1317    {
1318#line 109 "ClientLib.c"
1319    __cil_tmp5 = size + 1;
1320#line 109
1321    setClientAddressBookSize(handle, __cil_tmp5);
1322#line 1025 "ClientLib.c"
1323    retValue_acc = size + 1;
1324    }
1325#line 1027
1326    return (retValue_acc);
1327  } else {
1328#line 1031 "ClientLib.c"
1329    retValue_acc = -1;
1330#line 1033
1331    return (retValue_acc);
1332  }
1333#line 1040 "ClientLib.c"
1334  return (retValue_acc);
1335}
1336}
1337#line 115 "ClientLib.c"
1338int __ste_Client_AddressBook0_Alias0  =    0;
1339#line 117 "ClientLib.c"
1340int __ste_Client_AddressBook0_Alias1  =    0;
1341#line 119 "ClientLib.c"
1342int __ste_Client_AddressBook0_Alias2  =    0;
1343#line 121 "ClientLib.c"
1344int __ste_Client_AddressBook1_Alias0  =    0;
1345#line 123 "ClientLib.c"
1346int __ste_Client_AddressBook1_Alias1  =    0;
1347#line 125 "ClientLib.c"
1348int __ste_Client_AddressBook1_Alias2  =    0;
1349#line 127 "ClientLib.c"
1350int __ste_Client_AddressBook2_Alias0  =    0;
1351#line 129 "ClientLib.c"
1352int __ste_Client_AddressBook2_Alias1  =    0;
1353#line 131 "ClientLib.c"
1354int __ste_Client_AddressBook2_Alias2  =    0;
1355#line 134 "ClientLib.c"
1356int getClientAddressBookAlias(int handle , int index ) 
1357{ int retValue_acc ;
1358
1359  {
1360#line 167
1361  if (handle == 1) {
1362#line 144 "ClientLib.c"
1363    if (index == 0) {
1364#line 1086
1365      retValue_acc = __ste_Client_AddressBook0_Alias0;
1366#line 1088
1367      return (retValue_acc);
1368    } else {
1369#line 1090
1370      if (index == 1) {
1371#line 1095
1372        retValue_acc = __ste_Client_AddressBook0_Alias1;
1373#line 1097
1374        return (retValue_acc);
1375      } else {
1376#line 1099
1377        if (index == 2) {
1378#line 1104
1379          retValue_acc = __ste_Client_AddressBook0_Alias2;
1380#line 1106
1381          return (retValue_acc);
1382        } else {
1383#line 1112
1384          retValue_acc = 0;
1385#line 1114
1386          return (retValue_acc);
1387        }
1388      }
1389    }
1390  } else {
1391#line 1116 "ClientLib.c"
1392    if (handle == 2) {
1393#line 154 "ClientLib.c"
1394      if (index == 0) {
1395#line 1124
1396        retValue_acc = __ste_Client_AddressBook1_Alias0;
1397#line 1126
1398        return (retValue_acc);
1399      } else {
1400#line 1128
1401        if (index == 1) {
1402#line 1133
1403          retValue_acc = __ste_Client_AddressBook1_Alias1;
1404#line 1135
1405          return (retValue_acc);
1406        } else {
1407#line 1137
1408          if (index == 2) {
1409#line 1142
1410            retValue_acc = __ste_Client_AddressBook1_Alias2;
1411#line 1144
1412            return (retValue_acc);
1413          } else {
1414#line 1150
1415            retValue_acc = 0;
1416#line 1152
1417            return (retValue_acc);
1418          }
1419        }
1420      }
1421    } else {
1422#line 1154 "ClientLib.c"
1423      if (handle == 3) {
1424#line 164 "ClientLib.c"
1425        if (index == 0) {
1426#line 1162
1427          retValue_acc = __ste_Client_AddressBook2_Alias0;
1428#line 1164
1429          return (retValue_acc);
1430        } else {
1431#line 1166
1432          if (index == 1) {
1433#line 1171
1434            retValue_acc = __ste_Client_AddressBook2_Alias1;
1435#line 1173
1436            return (retValue_acc);
1437          } else {
1438#line 1175
1439            if (index == 2) {
1440#line 1180
1441              retValue_acc = __ste_Client_AddressBook2_Alias2;
1442#line 1182
1443              return (retValue_acc);
1444            } else {
1445#line 1188
1446              retValue_acc = 0;
1447#line 1190
1448              return (retValue_acc);
1449            }
1450          }
1451        }
1452      } else {
1453#line 1196 "ClientLib.c"
1454        retValue_acc = 0;
1455#line 1198
1456        return (retValue_acc);
1457      }
1458    }
1459  }
1460#line 1205 "ClientLib.c"
1461  return (retValue_acc);
1462}
1463}
1464#line 171 "ClientLib.c"
1465int findClientAddressBookAlias(int handle , int userid ) 
1466{ int retValue_acc ;
1467
1468  {
1469#line 204
1470  if (handle == 1) {
1471#line 181 "ClientLib.c"
1472    if (userid == __ste_Client_AddressBook0_Alias0) {
1473#line 1233
1474      retValue_acc = 0;
1475#line 1235
1476      return (retValue_acc);
1477    } else {
1478#line 1237
1479      if (userid == __ste_Client_AddressBook0_Alias1) {
1480#line 1242
1481        retValue_acc = 1;
1482#line 1244
1483        return (retValue_acc);
1484      } else {
1485#line 1246
1486        if (userid == __ste_Client_AddressBook0_Alias2) {
1487#line 1251
1488          retValue_acc = 2;
1489#line 1253
1490          return (retValue_acc);
1491        } else {
1492#line 1259
1493          retValue_acc = -1;
1494#line 1261
1495          return (retValue_acc);
1496        }
1497      }
1498    }
1499  } else {
1500#line 1263 "ClientLib.c"
1501    if (handle == 2) {
1502#line 191 "ClientLib.c"
1503      if (userid == __ste_Client_AddressBook1_Alias0) {
1504#line 1271
1505        retValue_acc = 0;
1506#line 1273
1507        return (retValue_acc);
1508      } else {
1509#line 1275
1510        if (userid == __ste_Client_AddressBook1_Alias1) {
1511#line 1280
1512          retValue_acc = 1;
1513#line 1282
1514          return (retValue_acc);
1515        } else {
1516#line 1284
1517          if (userid == __ste_Client_AddressBook1_Alias2) {
1518#line 1289
1519            retValue_acc = 2;
1520#line 1291
1521            return (retValue_acc);
1522          } else {
1523#line 1297
1524            retValue_acc = -1;
1525#line 1299
1526            return (retValue_acc);
1527          }
1528        }
1529      }
1530    } else {
1531#line 1301 "ClientLib.c"
1532      if (handle == 3) {
1533#line 201 "ClientLib.c"
1534        if (userid == __ste_Client_AddressBook2_Alias0) {
1535#line 1309
1536          retValue_acc = 0;
1537#line 1311
1538          return (retValue_acc);
1539        } else {
1540#line 1313
1541          if (userid == __ste_Client_AddressBook2_Alias1) {
1542#line 1318
1543            retValue_acc = 1;
1544#line 1320
1545            return (retValue_acc);
1546          } else {
1547#line 1322
1548            if (userid == __ste_Client_AddressBook2_Alias2) {
1549#line 1327
1550              retValue_acc = 2;
1551#line 1329
1552              return (retValue_acc);
1553            } else {
1554#line 1335
1555              retValue_acc = -1;
1556#line 1337
1557              return (retValue_acc);
1558            }
1559          }
1560        }
1561      } else {
1562#line 1343 "ClientLib.c"
1563        retValue_acc = -1;
1564#line 1345
1565        return (retValue_acc);
1566      }
1567    }
1568  }
1569#line 1352 "ClientLib.c"
1570  return (retValue_acc);
1571}
1572}
1573#line 208 "ClientLib.c"
1574void setClientAddressBookAlias(int handle , int index , int value ) 
1575{ 
1576
1577  {
1578#line 234
1579  if (handle == 1) {
1580#line 217
1581    if (index == 0) {
1582#line 211
1583      __ste_Client_AddressBook0_Alias0 = value;
1584    } else {
1585#line 212
1586      if (index == 1) {
1587#line 213
1588        __ste_Client_AddressBook0_Alias1 = value;
1589      } else {
1590#line 214
1591        if (index == 2) {
1592#line 215
1593          __ste_Client_AddressBook0_Alias2 = value;
1594        } else {
1595
1596        }
1597      }
1598    }
1599  } else {
1600#line 216
1601    if (handle == 2) {
1602#line 225
1603      if (index == 0) {
1604#line 219
1605        __ste_Client_AddressBook1_Alias0 = value;
1606      } else {
1607#line 220
1608        if (index == 1) {
1609#line 221
1610          __ste_Client_AddressBook1_Alias1 = value;
1611        } else {
1612#line 222
1613          if (index == 2) {
1614#line 223
1615            __ste_Client_AddressBook1_Alias2 = value;
1616          } else {
1617
1618          }
1619        }
1620      }
1621    } else {
1622#line 224
1623      if (handle == 3) {
1624#line 233
1625        if (index == 0) {
1626#line 227
1627          __ste_Client_AddressBook2_Alias0 = value;
1628        } else {
1629#line 228
1630          if (index == 1) {
1631#line 229
1632            __ste_Client_AddressBook2_Alias1 = value;
1633          } else {
1634#line 230
1635            if (index == 2) {
1636#line 231
1637              __ste_Client_AddressBook2_Alias2 = value;
1638            } else {
1639
1640            }
1641          }
1642        }
1643      } else {
1644
1645      }
1646    }
1647  }
1648#line 1420 "ClientLib.c"
1649  return;
1650}
1651}
1652#line 236 "ClientLib.c"
1653int __ste_Client_AddressBook0_Address0  =    0;
1654#line 238 "ClientLib.c"
1655int __ste_Client_AddressBook0_Address1  =    0;
1656#line 240 "ClientLib.c"
1657int __ste_Client_AddressBook0_Address2  =    0;
1658#line 242 "ClientLib.c"
1659int __ste_Client_AddressBook1_Address0  =    0;
1660#line 244 "ClientLib.c"
1661int __ste_Client_AddressBook1_Address1  =    0;
1662#line 246 "ClientLib.c"
1663int __ste_Client_AddressBook1_Address2  =    0;
1664#line 248 "ClientLib.c"
1665int __ste_Client_AddressBook2_Address0  =    0;
1666#line 250 "ClientLib.c"
1667int __ste_Client_AddressBook2_Address1  =    0;
1668#line 252 "ClientLib.c"
1669int __ste_Client_AddressBook2_Address2  =    0;
1670#line 255 "ClientLib.c"
1671int getClientAddressBookAddress(int handle , int index ) 
1672{ int retValue_acc ;
1673
1674  {
1675#line 288
1676  if (handle == 1) {
1677#line 265 "ClientLib.c"
1678    if (index == 0) {
1679#line 1462
1680      retValue_acc = __ste_Client_AddressBook0_Address0;
1681#line 1464
1682      return (retValue_acc);
1683    } else {
1684#line 1466
1685      if (index == 1) {
1686#line 1471
1687        retValue_acc = __ste_Client_AddressBook0_Address1;
1688#line 1473
1689        return (retValue_acc);
1690      } else {
1691#line 1475
1692        if (index == 2) {
1693#line 1480
1694          retValue_acc = __ste_Client_AddressBook0_Address2;
1695#line 1482
1696          return (retValue_acc);
1697        } else {
1698#line 1488
1699          retValue_acc = 0;
1700#line 1490
1701          return (retValue_acc);
1702        }
1703      }
1704    }
1705  } else {
1706#line 1492 "ClientLib.c"
1707    if (handle == 2) {
1708#line 275 "ClientLib.c"
1709      if (index == 0) {
1710#line 1500
1711        retValue_acc = __ste_Client_AddressBook1_Address0;
1712#line 1502
1713        return (retValue_acc);
1714      } else {
1715#line 1504
1716        if (index == 1) {
1717#line 1509
1718          retValue_acc = __ste_Client_AddressBook1_Address1;
1719#line 1511
1720          return (retValue_acc);
1721        } else {
1722#line 1513
1723          if (index == 2) {
1724#line 1518
1725            retValue_acc = __ste_Client_AddressBook1_Address2;
1726#line 1520
1727            return (retValue_acc);
1728          } else {
1729#line 1526
1730            retValue_acc = 0;
1731#line 1528
1732            return (retValue_acc);
1733          }
1734        }
1735      }
1736    } else {
1737#line 1530 "ClientLib.c"
1738      if (handle == 3) {
1739#line 285 "ClientLib.c"
1740        if (index == 0) {
1741#line 1538
1742          retValue_acc = __ste_Client_AddressBook2_Address0;
1743#line 1540
1744          return (retValue_acc);
1745        } else {
1746#line 1542
1747          if (index == 1) {
1748#line 1547
1749            retValue_acc = __ste_Client_AddressBook2_Address1;
1750#line 1549
1751            return (retValue_acc);
1752          } else {
1753#line 1551
1754            if (index == 2) {
1755#line 1556
1756              retValue_acc = __ste_Client_AddressBook2_Address2;
1757#line 1558
1758              return (retValue_acc);
1759            } else {
1760#line 1564
1761              retValue_acc = 0;
1762#line 1566
1763              return (retValue_acc);
1764            }
1765          }
1766        }
1767      } else {
1768#line 1572 "ClientLib.c"
1769        retValue_acc = 0;
1770#line 1574
1771        return (retValue_acc);
1772      }
1773    }
1774  }
1775#line 1581 "ClientLib.c"
1776  return (retValue_acc);
1777}
1778}
1779#line 291 "ClientLib.c"
1780void setClientAddressBookAddress(int handle , int index , int value ) 
1781{ 
1782
1783  {
1784#line 317
1785  if (handle == 1) {
1786#line 300
1787    if (index == 0) {
1788#line 294
1789      __ste_Client_AddressBook0_Address0 = value;
1790    } else {
1791#line 295
1792      if (index == 1) {
1793#line 296
1794        __ste_Client_AddressBook0_Address1 = value;
1795      } else {
1796#line 297
1797        if (index == 2) {
1798#line 298
1799          __ste_Client_AddressBook0_Address2 = value;
1800        } else {
1801
1802        }
1803      }
1804    }
1805  } else {
1806#line 299
1807    if (handle == 2) {
1808#line 308
1809      if (index == 0) {
1810#line 302
1811        __ste_Client_AddressBook1_Address0 = value;
1812      } else {
1813#line 303
1814        if (index == 1) {
1815#line 304
1816          __ste_Client_AddressBook1_Address1 = value;
1817        } else {
1818#line 305
1819          if (index == 2) {
1820#line 306
1821            __ste_Client_AddressBook1_Address2 = value;
1822          } else {
1823
1824          }
1825        }
1826      }
1827    } else {
1828#line 307
1829      if (handle == 3) {
1830#line 316
1831        if (index == 0) {
1832#line 310
1833          __ste_Client_AddressBook2_Address0 = value;
1834        } else {
1835#line 311
1836          if (index == 1) {
1837#line 312
1838            __ste_Client_AddressBook2_Address1 = value;
1839          } else {
1840#line 313
1841            if (index == 2) {
1842#line 314
1843              __ste_Client_AddressBook2_Address2 = value;
1844            } else {
1845
1846            }
1847          }
1848        }
1849      } else {
1850
1851      }
1852    }
1853  }
1854#line 1649 "ClientLib.c"
1855  return;
1856}
1857}
1858#line 319 "ClientLib.c"
1859int __ste_client_autoResponse0  =    0;
1860#line 321 "ClientLib.c"
1861int __ste_client_autoResponse1  =    0;
1862#line 323 "ClientLib.c"
1863int __ste_client_autoResponse2  =    0;
1864#line 326 "ClientLib.c"
1865int getClientAutoResponse(int handle ) 
1866{ int retValue_acc ;
1867
1868  {
1869#line 335 "ClientLib.c"
1870  if (handle == 1) {
1871#line 1676
1872    retValue_acc = __ste_client_autoResponse0;
1873#line 1678
1874    return (retValue_acc);
1875  } else {
1876#line 1680
1877    if (handle == 2) {
1878#line 1685
1879      retValue_acc = __ste_client_autoResponse1;
1880#line 1687
1881      return (retValue_acc);
1882    } else {
1883#line 1689
1884      if (handle == 3) {
1885#line 1694
1886        retValue_acc = __ste_client_autoResponse2;
1887#line 1696
1888        return (retValue_acc);
1889      } else {
1890#line 1702 "ClientLib.c"
1891        retValue_acc = -1;
1892#line 1704
1893        return (retValue_acc);
1894      }
1895    }
1896  }
1897#line 1711 "ClientLib.c"
1898  return (retValue_acc);
1899}
1900}
1901#line 338 "ClientLib.c"
1902void setClientAutoResponse(int handle , int value ) 
1903{ 
1904
1905  {
1906#line 346
1907  if (handle == 1) {
1908#line 340
1909    __ste_client_autoResponse0 = value;
1910  } else {
1911#line 341
1912    if (handle == 2) {
1913#line 342
1914      __ste_client_autoResponse1 = value;
1915    } else {
1916#line 343
1917      if (handle == 3) {
1918#line 344
1919        __ste_client_autoResponse2 = value;
1920      } else {
1921
1922      }
1923    }
1924  }
1925#line 1746 "ClientLib.c"
1926  return;
1927}
1928}
1929#line 348 "ClientLib.c"
1930int __ste_client_privateKey0  =    0;
1931#line 350 "ClientLib.c"
1932int __ste_client_privateKey1  =    0;
1933#line 352 "ClientLib.c"
1934int __ste_client_privateKey2  =    0;
1935#line 355 "ClientLib.c"
1936int getClientPrivateKey(int handle ) 
1937{ int retValue_acc ;
1938
1939  {
1940#line 364 "ClientLib.c"
1941  if (handle == 1) {
1942#line 1773
1943    retValue_acc = __ste_client_privateKey0;
1944#line 1775
1945    return (retValue_acc);
1946  } else {
1947#line 1777
1948    if (handle == 2) {
1949#line 1782
1950      retValue_acc = __ste_client_privateKey1;
1951#line 1784
1952      return (retValue_acc);
1953    } else {
1954#line 1786
1955      if (handle == 3) {
1956#line 1791
1957        retValue_acc = __ste_client_privateKey2;
1958#line 1793
1959        return (retValue_acc);
1960      } else {
1961#line 1799 "ClientLib.c"
1962        retValue_acc = 0;
1963#line 1801
1964        return (retValue_acc);
1965      }
1966    }
1967  }
1968#line 1808 "ClientLib.c"
1969  return (retValue_acc);
1970}
1971}
1972#line 367 "ClientLib.c"
1973void setClientPrivateKey(int handle , int value ) 
1974{ 
1975
1976  {
1977#line 375
1978  if (handle == 1) {
1979#line 369
1980    __ste_client_privateKey0 = value;
1981  } else {
1982#line 370
1983    if (handle == 2) {
1984#line 371
1985      __ste_client_privateKey1 = value;
1986    } else {
1987#line 372
1988      if (handle == 3) {
1989#line 373
1990        __ste_client_privateKey2 = value;
1991      } else {
1992
1993      }
1994    }
1995  }
1996#line 1843 "ClientLib.c"
1997  return;
1998}
1999}
2000#line 377 "ClientLib.c"
2001int __ste_ClientKeyring_size0  =    0;
2002#line 379 "ClientLib.c"
2003int __ste_ClientKeyring_size1  =    0;
2004#line 381 "ClientLib.c"
2005int __ste_ClientKeyring_size2  =    0;
2006#line 384 "ClientLib.c"
2007int getClientKeyringSize(int handle ) 
2008{ int retValue_acc ;
2009
2010  {
2011#line 393 "ClientLib.c"
2012  if (handle == 1) {
2013#line 1870
2014    retValue_acc = __ste_ClientKeyring_size0;
2015#line 1872
2016    return (retValue_acc);
2017  } else {
2018#line 1874
2019    if (handle == 2) {
2020#line 1879
2021      retValue_acc = __ste_ClientKeyring_size1;
2022#line 1881
2023      return (retValue_acc);
2024    } else {
2025#line 1883
2026      if (handle == 3) {
2027#line 1888
2028        retValue_acc = __ste_ClientKeyring_size2;
2029#line 1890
2030        return (retValue_acc);
2031      } else {
2032#line 1896 "ClientLib.c"
2033        retValue_acc = 0;
2034#line 1898
2035        return (retValue_acc);
2036      }
2037    }
2038  }
2039#line 1905 "ClientLib.c"
2040  return (retValue_acc);
2041}
2042}
2043#line 396 "ClientLib.c"
2044void setClientKeyringSize(int handle , int value ) 
2045{ 
2046
2047  {
2048#line 404
2049  if (handle == 1) {
2050#line 398
2051    __ste_ClientKeyring_size0 = value;
2052  } else {
2053#line 399
2054    if (handle == 2) {
2055#line 400
2056      __ste_ClientKeyring_size1 = value;
2057    } else {
2058#line 401
2059      if (handle == 3) {
2060#line 402
2061        __ste_ClientKeyring_size2 = value;
2062      } else {
2063
2064      }
2065    }
2066  }
2067#line 1940 "ClientLib.c"
2068  return;
2069}
2070}
2071#line 406 "ClientLib.c"
2072int createClientKeyringEntry(int handle ) 
2073{ int retValue_acc ;
2074  int size ;
2075  int tmp ;
2076  int __cil_tmp5 ;
2077
2078  {
2079  {
2080#line 407
2081  tmp = getClientKeyringSize(handle);
2082#line 407
2083  size = tmp;
2084  }
2085#line 408 "ClientLib.c"
2086  if (size < 2) {
2087    {
2088#line 409 "ClientLib.c"
2089    __cil_tmp5 = size + 1;
2090#line 409
2091    setClientKeyringSize(handle, __cil_tmp5);
2092#line 1967 "ClientLib.c"
2093    retValue_acc = size + 1;
2094    }
2095#line 1969
2096    return (retValue_acc);
2097  } else {
2098#line 1973 "ClientLib.c"
2099    retValue_acc = -1;
2100#line 1975
2101    return (retValue_acc);
2102  }
2103#line 1982 "ClientLib.c"
2104  return (retValue_acc);
2105}
2106}
2107#line 414 "ClientLib.c"
2108int __ste_Client_Keyring0_User0  =    0;
2109#line 416 "ClientLib.c"
2110int __ste_Client_Keyring0_User1  =    0;
2111#line 418 "ClientLib.c"
2112int __ste_Client_Keyring0_User2  =    0;
2113#line 420 "ClientLib.c"
2114int __ste_Client_Keyring1_User0  =    0;
2115#line 422 "ClientLib.c"
2116int __ste_Client_Keyring1_User1  =    0;
2117#line 424 "ClientLib.c"
2118int __ste_Client_Keyring1_User2  =    0;
2119#line 426 "ClientLib.c"
2120int __ste_Client_Keyring2_User0  =    0;
2121#line 428 "ClientLib.c"
2122int __ste_Client_Keyring2_User1  =    0;
2123#line 430 "ClientLib.c"
2124int __ste_Client_Keyring2_User2  =    0;
2125#line 433 "ClientLib.c"
2126int getClientKeyringUser(int handle , int index ) 
2127{ int retValue_acc ;
2128
2129  {
2130#line 466
2131  if (handle == 1) {
2132#line 443 "ClientLib.c"
2133    if (index == 0) {
2134#line 2028
2135      retValue_acc = __ste_Client_Keyring0_User0;
2136#line 2030
2137      return (retValue_acc);
2138    } else {
2139#line 2032
2140      if (index == 1) {
2141#line 2037
2142        retValue_acc = __ste_Client_Keyring0_User1;
2143#line 2039
2144        return (retValue_acc);
2145      } else {
2146#line 2045
2147        retValue_acc = 0;
2148#line 2047
2149        return (retValue_acc);
2150      }
2151    }
2152  } else {
2153#line 2049 "ClientLib.c"
2154    if (handle == 2) {
2155#line 453 "ClientLib.c"
2156      if (index == 0) {
2157#line 2057
2158        retValue_acc = __ste_Client_Keyring1_User0;
2159#line 2059
2160        return (retValue_acc);
2161      } else {
2162#line 2061
2163        if (index == 1) {
2164#line 2066
2165          retValue_acc = __ste_Client_Keyring1_User1;
2166#line 2068
2167          return (retValue_acc);
2168        } else {
2169#line 2074
2170          retValue_acc = 0;
2171#line 2076
2172          return (retValue_acc);
2173        }
2174      }
2175    } else {
2176#line 2078 "ClientLib.c"
2177      if (handle == 3) {
2178#line 463 "ClientLib.c"
2179        if (index == 0) {
2180#line 2086
2181          retValue_acc = __ste_Client_Keyring2_User0;
2182#line 2088
2183          return (retValue_acc);
2184        } else {
2185#line 2090
2186          if (index == 1) {
2187#line 2095
2188            retValue_acc = __ste_Client_Keyring2_User1;
2189#line 2097
2190            return (retValue_acc);
2191          } else {
2192#line 2103
2193            retValue_acc = 0;
2194#line 2105
2195            return (retValue_acc);
2196          }
2197        }
2198      } else {
2199#line 2111 "ClientLib.c"
2200        retValue_acc = 0;
2201#line 2113
2202        return (retValue_acc);
2203      }
2204    }
2205  }
2206#line 2120 "ClientLib.c"
2207  return (retValue_acc);
2208}
2209}
2210#line 473 "ClientLib.c"
2211void setClientKeyringUser(int handle , int index , int value ) 
2212{ 
2213
2214  {
2215#line 499
2216  if (handle == 1) {
2217#line 482
2218    if (index == 0) {
2219#line 476
2220      __ste_Client_Keyring0_User0 = value;
2221    } else {
2222#line 477
2223      if (index == 1) {
2224#line 478
2225        __ste_Client_Keyring0_User1 = value;
2226      } else {
2227
2228      }
2229    }
2230  } else {
2231#line 479
2232    if (handle == 2) {
2233#line 490
2234      if (index == 0) {
2235#line 484
2236        __ste_Client_Keyring1_User0 = value;
2237      } else {
2238#line 485
2239        if (index == 1) {
2240#line 486
2241          __ste_Client_Keyring1_User1 = value;
2242        } else {
2243
2244        }
2245      }
2246    } else {
2247#line 487
2248      if (handle == 3) {
2249#line 498
2250        if (index == 0) {
2251#line 492
2252          __ste_Client_Keyring2_User0 = value;
2253        } else {
2254#line 493
2255          if (index == 1) {
2256#line 494
2257            __ste_Client_Keyring2_User1 = value;
2258          } else {
2259
2260          }
2261        }
2262      } else {
2263
2264      }
2265    }
2266  }
2267#line 2176 "ClientLib.c"
2268  return;
2269}
2270}
2271#line 501 "ClientLib.c"
2272int __ste_Client_Keyring0_PublicKey0  =    0;
2273#line 503 "ClientLib.c"
2274int __ste_Client_Keyring0_PublicKey1  =    0;
2275#line 505 "ClientLib.c"
2276int __ste_Client_Keyring0_PublicKey2  =    0;
2277#line 507 "ClientLib.c"
2278int __ste_Client_Keyring1_PublicKey0  =    0;
2279#line 509 "ClientLib.c"
2280int __ste_Client_Keyring1_PublicKey1  =    0;
2281#line 511 "ClientLib.c"
2282int __ste_Client_Keyring1_PublicKey2  =    0;
2283#line 513 "ClientLib.c"
2284int __ste_Client_Keyring2_PublicKey0  =    0;
2285#line 515 "ClientLib.c"
2286int __ste_Client_Keyring2_PublicKey1  =    0;
2287#line 517 "ClientLib.c"
2288int __ste_Client_Keyring2_PublicKey2  =    0;
2289#line 520 "ClientLib.c"
2290int getClientKeyringPublicKey(int handle , int index ) 
2291{ int retValue_acc ;
2292
2293  {
2294#line 553
2295  if (handle == 1) {
2296#line 530 "ClientLib.c"
2297    if (index == 0) {
2298#line 2218
2299      retValue_acc = __ste_Client_Keyring0_PublicKey0;
2300#line 2220
2301      return (retValue_acc);
2302    } else {
2303#line 2222
2304      if (index == 1) {
2305#line 2227
2306        retValue_acc = __ste_Client_Keyring0_PublicKey1;
2307#line 2229
2308        return (retValue_acc);
2309      } else {
2310#line 2235
2311        retValue_acc = 0;
2312#line 2237
2313        return (retValue_acc);
2314      }
2315    }
2316  } else {
2317#line 2239 "ClientLib.c"
2318    if (handle == 2) {
2319#line 540 "ClientLib.c"
2320      if (index == 0) {
2321#line 2247
2322        retValue_acc = __ste_Client_Keyring1_PublicKey0;
2323#line 2249
2324        return (retValue_acc);
2325      } else {
2326#line 2251
2327        if (index == 1) {
2328#line 2256
2329          retValue_acc = __ste_Client_Keyring1_PublicKey1;
2330#line 2258
2331          return (retValue_acc);
2332        } else {
2333#line 2264
2334          retValue_acc = 0;
2335#line 2266
2336          return (retValue_acc);
2337        }
2338      }
2339    } else {
2340#line 2268 "ClientLib.c"
2341      if (handle == 3) {
2342#line 550 "ClientLib.c"
2343        if (index == 0) {
2344#line 2276
2345          retValue_acc = __ste_Client_Keyring2_PublicKey0;
2346#line 2278
2347          return (retValue_acc);
2348        } else {
2349#line 2280
2350          if (index == 1) {
2351#line 2285
2352            retValue_acc = __ste_Client_Keyring2_PublicKey1;
2353#line 2287
2354            return (retValue_acc);
2355          } else {
2356#line 2293
2357            retValue_acc = 0;
2358#line 2295
2359            return (retValue_acc);
2360          }
2361        }
2362      } else {
2363#line 2301 "ClientLib.c"
2364        retValue_acc = 0;
2365#line 2303
2366        return (retValue_acc);
2367      }
2368    }
2369  }
2370#line 2310 "ClientLib.c"
2371  return (retValue_acc);
2372}
2373}
2374#line 557 "ClientLib.c"
2375int findPublicKey(int handle , int userid ) 
2376{ int retValue_acc ;
2377
2378  {
2379#line 591
2380  if (handle == 1) {
2381#line 568 "ClientLib.c"
2382    if (userid == __ste_Client_Keyring0_User0) {
2383#line 2338
2384      retValue_acc = __ste_Client_Keyring0_PublicKey0;
2385#line 2340
2386      return (retValue_acc);
2387    } else {
2388#line 2342
2389      if (userid == __ste_Client_Keyring0_User1) {
2390#line 2347
2391        retValue_acc = __ste_Client_Keyring0_PublicKey1;
2392#line 2349
2393        return (retValue_acc);
2394      } else {
2395#line 2355
2396        retValue_acc = 0;
2397#line 2357
2398        return (retValue_acc);
2399      }
2400    }
2401  } else {
2402#line 2359 "ClientLib.c"
2403    if (handle == 2) {
2404#line 578 "ClientLib.c"
2405      if (userid == __ste_Client_Keyring1_User0) {
2406#line 2367
2407        retValue_acc = __ste_Client_Keyring1_PublicKey0;
2408#line 2369
2409        return (retValue_acc);
2410      } else {
2411#line 2371
2412        if (userid == __ste_Client_Keyring1_User1) {
2413#line 2376
2414          retValue_acc = __ste_Client_Keyring1_PublicKey1;
2415#line 2378
2416          return (retValue_acc);
2417        } else {
2418#line 2384
2419          retValue_acc = 0;
2420#line 2386
2421          return (retValue_acc);
2422        }
2423      }
2424    } else {
2425#line 2388 "ClientLib.c"
2426      if (handle == 3) {
2427#line 588 "ClientLib.c"
2428        if (userid == __ste_Client_Keyring2_User0) {
2429#line 2396
2430          retValue_acc = __ste_Client_Keyring2_PublicKey0;
2431#line 2398
2432          return (retValue_acc);
2433        } else {
2434#line 2400
2435          if (userid == __ste_Client_Keyring2_User1) {
2436#line 2405
2437            retValue_acc = __ste_Client_Keyring2_PublicKey1;
2438#line 2407
2439            return (retValue_acc);
2440          } else {
2441#line 2413
2442            retValue_acc = 0;
2443#line 2415
2444            return (retValue_acc);
2445          }
2446        }
2447      } else {
2448#line 2421 "ClientLib.c"
2449        retValue_acc = 0;
2450#line 2423
2451        return (retValue_acc);
2452      }
2453    }
2454  }
2455#line 2430 "ClientLib.c"
2456  return (retValue_acc);
2457}
2458}
2459#line 595 "ClientLib.c"
2460void setClientKeyringPublicKey(int handle , int index , int value ) 
2461{ 
2462
2463  {
2464#line 621
2465  if (handle == 1) {
2466#line 604
2467    if (index == 0) {
2468#line 598
2469      __ste_Client_Keyring0_PublicKey0 = value;
2470    } else {
2471#line 599
2472      if (index == 1) {
2473#line 600
2474        __ste_Client_Keyring0_PublicKey1 = value;
2475      } else {
2476
2477      }
2478    }
2479  } else {
2480#line 601
2481    if (handle == 2) {
2482#line 612
2483      if (index == 0) {
2484#line 606
2485        __ste_Client_Keyring1_PublicKey0 = value;
2486      } else {
2487#line 607
2488        if (index == 1) {
2489#line 608
2490          __ste_Client_Keyring1_PublicKey1 = value;
2491        } else {
2492
2493        }
2494      }
2495    } else {
2496#line 609
2497      if (handle == 3) {
2498#line 620
2499        if (index == 0) {
2500#line 614
2501          __ste_Client_Keyring2_PublicKey0 = value;
2502        } else {
2503#line 615
2504          if (index == 1) {
2505#line 616
2506            __ste_Client_Keyring2_PublicKey1 = value;
2507          } else {
2508
2509          }
2510        }
2511      } else {
2512
2513      }
2514    }
2515  }
2516#line 2486 "ClientLib.c"
2517  return;
2518}
2519}
2520#line 623 "ClientLib.c"
2521int __ste_client_forwardReceiver0  =    0;
2522#line 625 "ClientLib.c"
2523int __ste_client_forwardReceiver1  =    0;
2524#line 627 "ClientLib.c"
2525int __ste_client_forwardReceiver2  =    0;
2526#line 629 "ClientLib.c"
2527int __ste_client_forwardReceiver3  =    0;
2528#line 631 "ClientLib.c"
2529int getClientForwardReceiver(int handle ) 
2530{ int retValue_acc ;
2531
2532  {
2533#line 640 "ClientLib.c"
2534  if (handle == 1) {
2535#line 2515
2536    retValue_acc = __ste_client_forwardReceiver0;
2537#line 2517
2538    return (retValue_acc);
2539  } else {
2540#line 2519
2541    if (handle == 2) {
2542#line 2524
2543      retValue_acc = __ste_client_forwardReceiver1;
2544#line 2526
2545      return (retValue_acc);
2546    } else {
2547#line 2528
2548      if (handle == 3) {
2549#line 2533
2550        retValue_acc = __ste_client_forwardReceiver2;
2551#line 2535
2552        return (retValue_acc);
2553      } else {
2554#line 2541 "ClientLib.c"
2555        retValue_acc = 0;
2556#line 2543
2557        return (retValue_acc);
2558      }
2559    }
2560  }
2561#line 2550 "ClientLib.c"
2562  return (retValue_acc);
2563}
2564}
2565#line 643 "ClientLib.c"
2566void setClientForwardReceiver(int handle , int value ) 
2567{ 
2568
2569  {
2570#line 651
2571  if (handle == 1) {
2572#line 645
2573    __ste_client_forwardReceiver0 = value;
2574  } else {
2575#line 646
2576    if (handle == 2) {
2577#line 647
2578      __ste_client_forwardReceiver1 = value;
2579    } else {
2580#line 648
2581      if (handle == 3) {
2582#line 649
2583        __ste_client_forwardReceiver2 = value;
2584      } else {
2585
2586      }
2587    }
2588  }
2589#line 2585 "ClientLib.c"
2590  return;
2591}
2592}
2593#line 653 "ClientLib.c"
2594int __ste_client_idCounter0  =    0;
2595#line 655 "ClientLib.c"
2596int __ste_client_idCounter1  =    0;
2597#line 657 "ClientLib.c"
2598int __ste_client_idCounter2  =    0;
2599#line 660 "ClientLib.c"
2600int getClientId(int handle ) 
2601{ int retValue_acc ;
2602
2603  {
2604#line 669 "ClientLib.c"
2605  if (handle == 1) {
2606#line 2612
2607    retValue_acc = __ste_client_idCounter0;
2608#line 2614
2609    return (retValue_acc);
2610  } else {
2611#line 2616
2612    if (handle == 2) {
2613#line 2621
2614      retValue_acc = __ste_client_idCounter1;
2615#line 2623
2616      return (retValue_acc);
2617    } else {
2618#line 2625
2619      if (handle == 3) {
2620#line 2630
2621        retValue_acc = __ste_client_idCounter2;
2622#line 2632
2623        return (retValue_acc);
2624      } else {
2625#line 2638 "ClientLib.c"
2626        retValue_acc = 0;
2627#line 2640
2628        return (retValue_acc);
2629      }
2630    }
2631  }
2632#line 2647 "ClientLib.c"
2633  return (retValue_acc);
2634}
2635}
2636#line 672 "ClientLib.c"
2637void setClientId(int handle , int value ) 
2638{ 
2639
2640  {
2641#line 680
2642  if (handle == 1) {
2643#line 674
2644    __ste_client_idCounter0 = value;
2645  } else {
2646#line 675
2647    if (handle == 2) {
2648#line 676
2649      __ste_client_idCounter1 = value;
2650    } else {
2651#line 677
2652      if (handle == 3) {
2653#line 678
2654        __ste_client_idCounter2 = value;
2655      } else {
2656
2657      }
2658    }
2659  }
2660#line 2682 "ClientLib.c"
2661  return;
2662}
2663}
2664#line 1 "libacc.o"
2665#pragma merger(0,"libacc.i","")
2666#line 73 "/usr/include/assert.h"
2667extern  __attribute__((__nothrow__, __noreturn__)) void __assert_fail(char const   *__assertion ,
2668                                                                      char const   *__file ,
2669                                                                      unsigned int __line ,
2670                                                                      char const   *__function ) ;
2671#line 471 "/usr/include/stdlib.h"
2672extern  __attribute__((__nothrow__)) void *malloc(size_t __size )  __attribute__((__malloc__)) ;
2673#line 488
2674extern  __attribute__((__nothrow__)) void free(void *__ptr ) ;
2675#line 32 "libacc.c"
2676void __utac__exception__cf_handler_set(void *exception , int (*cflow_func)(int  ,
2677                                                                           int  ) ,
2678                                       int val ) 
2679{ struct __UTAC__EXCEPTION *excep ;
2680  struct __UTAC__CFLOW_FUNC *cf ;
2681  void *tmp ;
2682  unsigned long __cil_tmp7 ;
2683  unsigned long __cil_tmp8 ;
2684  unsigned long __cil_tmp9 ;
2685  unsigned long __cil_tmp10 ;
2686  unsigned long __cil_tmp11 ;
2687  unsigned long __cil_tmp12 ;
2688  unsigned long __cil_tmp13 ;
2689  unsigned long __cil_tmp14 ;
2690  int (**mem_15)(int  , int  ) ;
2691  int *mem_16 ;
2692  struct __UTAC__CFLOW_FUNC **mem_17 ;
2693  struct __UTAC__CFLOW_FUNC **mem_18 ;
2694  struct __UTAC__CFLOW_FUNC **mem_19 ;
2695
2696  {
2697  {
2698#line 33
2699  excep = (struct __UTAC__EXCEPTION *)exception;
2700#line 34
2701  tmp = malloc(24UL);
2702#line 34
2703  cf = (struct __UTAC__CFLOW_FUNC *)tmp;
2704#line 36
2705  mem_15 = (int (**)(int  , int  ))cf;
2706#line 36
2707  *mem_15 = cflow_func;
2708#line 37
2709  __cil_tmp7 = (unsigned long )cf;
2710#line 37
2711  __cil_tmp8 = __cil_tmp7 + 8;
2712#line 37
2713  mem_16 = (int *)__cil_tmp8;
2714#line 37
2715  *mem_16 = val;
2716#line 38
2717  __cil_tmp9 = (unsigned long )cf;
2718#line 38
2719  __cil_tmp10 = __cil_tmp9 + 16;
2720#line 38
2721  __cil_tmp11 = (unsigned long )excep;
2722#line 38
2723  __cil_tmp12 = __cil_tmp11 + 24;
2724#line 38
2725  mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp10;
2726#line 38
2727  mem_18 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp12;
2728#line 38
2729  *mem_17 = *mem_18;
2730#line 39
2731  __cil_tmp13 = (unsigned long )excep;
2732#line 39
2733  __cil_tmp14 = __cil_tmp13 + 24;
2734#line 39
2735  mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14;
2736#line 39
2737  *mem_19 = cf;
2738  }
2739#line 654 "libacc.c"
2740  return;
2741}
2742}
2743#line 44 "libacc.c"
2744void __utac__exception__cf_handler_free(void *exception ) 
2745{ struct __UTAC__EXCEPTION *excep ;
2746  struct __UTAC__CFLOW_FUNC *cf ;
2747  struct __UTAC__CFLOW_FUNC *tmp ;
2748  unsigned long __cil_tmp5 ;
2749  unsigned long __cil_tmp6 ;
2750  struct __UTAC__CFLOW_FUNC *__cil_tmp7 ;
2751  unsigned long __cil_tmp8 ;
2752  unsigned long __cil_tmp9 ;
2753  unsigned long __cil_tmp10 ;
2754  unsigned long __cil_tmp11 ;
2755  void *__cil_tmp12 ;
2756  unsigned long __cil_tmp13 ;
2757  unsigned long __cil_tmp14 ;
2758  struct __UTAC__CFLOW_FUNC **mem_15 ;
2759  struct __UTAC__CFLOW_FUNC **mem_16 ;
2760  struct __UTAC__CFLOW_FUNC **mem_17 ;
2761
2762  {
2763#line 45
2764  excep = (struct __UTAC__EXCEPTION *)exception;
2765#line 46
2766  __cil_tmp5 = (unsigned long )excep;
2767#line 46
2768  __cil_tmp6 = __cil_tmp5 + 24;
2769#line 46
2770  mem_15 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6;
2771#line 46
2772  cf = *mem_15;
2773  {
2774#line 49
2775  while (1) {
2776    while_1_continue: /* CIL Label */ ;
2777    {
2778#line 49
2779    __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0;
2780#line 49
2781    __cil_tmp8 = (unsigned long )__cil_tmp7;
2782#line 49
2783    __cil_tmp9 = (unsigned long )cf;
2784#line 49
2785    if (__cil_tmp9 != __cil_tmp8) {
2786
2787    } else {
2788      goto while_1_break;
2789    }
2790    }
2791    {
2792#line 50
2793    tmp = cf;
2794#line 51
2795    __cil_tmp10 = (unsigned long )cf;
2796#line 51
2797    __cil_tmp11 = __cil_tmp10 + 16;
2798#line 51
2799    mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp11;
2800#line 51
2801    cf = *mem_16;
2802#line 52
2803    __cil_tmp12 = (void *)tmp;
2804#line 52
2805    free(__cil_tmp12);
2806    }
2807  }
2808  while_1_break: /* CIL Label */ ;
2809  }
2810#line 55
2811  __cil_tmp13 = (unsigned long )excep;
2812#line 55
2813  __cil_tmp14 = __cil_tmp13 + 24;
2814#line 55
2815  mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14;
2816#line 55
2817  *mem_17 = (struct __UTAC__CFLOW_FUNC *)0;
2818#line 694 "libacc.c"
2819  return;
2820}
2821}
2822#line 59 "libacc.c"
2823void __utac__exception__cf_handler_reset(void *exception ) 
2824{ struct __UTAC__EXCEPTION *excep ;
2825  struct __UTAC__CFLOW_FUNC *cf ;
2826  unsigned long __cil_tmp5 ;
2827  unsigned long __cil_tmp6 ;
2828  struct __UTAC__CFLOW_FUNC *__cil_tmp7 ;
2829  unsigned long __cil_tmp8 ;
2830  unsigned long __cil_tmp9 ;
2831  int (*__cil_tmp10)(int  , int  ) ;
2832  unsigned long __cil_tmp11 ;
2833  unsigned long __cil_tmp12 ;
2834  int __cil_tmp13 ;
2835  unsigned long __cil_tmp14 ;
2836  unsigned long __cil_tmp15 ;
2837  struct __UTAC__CFLOW_FUNC **mem_16 ;
2838  int (**mem_17)(int  , int  ) ;
2839  int *mem_18 ;
2840  struct __UTAC__CFLOW_FUNC **mem_19 ;
2841
2842  {
2843#line 60
2844  excep = (struct __UTAC__EXCEPTION *)exception;
2845#line 61
2846  __cil_tmp5 = (unsigned long )excep;
2847#line 61
2848  __cil_tmp6 = __cil_tmp5 + 24;
2849#line 61
2850  mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6;
2851#line 61
2852  cf = *mem_16;
2853  {
2854#line 64
2855  while (1) {
2856    while_2_continue: /* CIL Label */ ;
2857    {
2858#line 64
2859    __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0;
2860#line 64
2861    __cil_tmp8 = (unsigned long )__cil_tmp7;
2862#line 64
2863    __cil_tmp9 = (unsigned long )cf;
2864#line 64
2865    if (__cil_tmp9 != __cil_tmp8) {
2866
2867    } else {
2868      goto while_2_break;
2869    }
2870    }
2871    {
2872#line 65
2873    mem_17 = (int (**)(int  , int  ))cf;
2874#line 65
2875    __cil_tmp10 = *mem_17;
2876#line 65
2877    __cil_tmp11 = (unsigned long )cf;
2878#line 65
2879    __cil_tmp12 = __cil_tmp11 + 8;
2880#line 65
2881    mem_18 = (int *)__cil_tmp12;
2882#line 65
2883    __cil_tmp13 = *mem_18;
2884#line 65
2885    (*__cil_tmp10)(4, __cil_tmp13);
2886#line 66
2887    __cil_tmp14 = (unsigned long )cf;
2888#line 66
2889    __cil_tmp15 = __cil_tmp14 + 16;
2890#line 66
2891    mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp15;
2892#line 66
2893    cf = *mem_19;
2894    }
2895  }
2896  while_2_break: /* CIL Label */ ;
2897  }
2898  {
2899#line 69
2900  __utac__exception__cf_handler_free(exception);
2901  }
2902#line 732 "libacc.c"
2903  return;
2904}
2905}
2906#line 80 "libacc.c"
2907void *__utac__error_stack_mgt(void *env , int mode , int count ) ;
2908#line 80 "libacc.c"
2909static struct __ACC__ERR *head  =    (struct __ACC__ERR *)0;
2910#line 79 "libacc.c"
2911void *__utac__error_stack_mgt(void *env , int mode , int count ) 
2912{ void *retValue_acc ;
2913  struct __ACC__ERR *new ;
2914  void *tmp ;
2915  struct __ACC__ERR *temp ;
2916  struct __ACC__ERR *next ;
2917  void *excep ;
2918  unsigned long __cil_tmp10 ;
2919  unsigned long __cil_tmp11 ;
2920  unsigned long __cil_tmp12 ;
2921  unsigned long __cil_tmp13 ;
2922  void *__cil_tmp14 ;
2923  unsigned long __cil_tmp15 ;
2924  unsigned long __cil_tmp16 ;
2925  void *__cil_tmp17 ;
2926  void **mem_18 ;
2927  struct __ACC__ERR **mem_19 ;
2928  struct __ACC__ERR **mem_20 ;
2929  void **mem_21 ;
2930  struct __ACC__ERR **mem_22 ;
2931  void **mem_23 ;
2932  void **mem_24 ;
2933
2934  {
2935#line 82 "libacc.c"
2936  if (count == 0) {
2937#line 758 "libacc.c"
2938    return (retValue_acc);
2939  } else {
2940
2941  }
2942#line 86 "libacc.c"
2943  if (mode == 0) {
2944    {
2945#line 87
2946    tmp = malloc(16UL);
2947#line 87
2948    new = (struct __ACC__ERR *)tmp;
2949#line 88
2950    mem_18 = (void **)new;
2951#line 88
2952    *mem_18 = env;
2953#line 89
2954    __cil_tmp10 = (unsigned long )new;
2955#line 89
2956    __cil_tmp11 = __cil_tmp10 + 8;
2957#line 89
2958    mem_19 = (struct __ACC__ERR **)__cil_tmp11;
2959#line 89
2960    *mem_19 = head;
2961#line 90
2962    head = new;
2963#line 776 "libacc.c"
2964    retValue_acc = (void *)new;
2965    }
2966#line 778
2967    return (retValue_acc);
2968  } else {
2969
2970  }
2971#line 94 "libacc.c"
2972  if (mode == 1) {
2973#line 95
2974    temp = head;
2975    {
2976#line 98
2977    while (1) {
2978      while_3_continue: /* CIL Label */ ;
2979#line 98
2980      if (count > 1) {
2981
2982      } else {
2983        goto while_3_break;
2984      }
2985      {
2986#line 99
2987      __cil_tmp12 = (unsigned long )temp;
2988#line 99
2989      __cil_tmp13 = __cil_tmp12 + 8;
2990#line 99
2991      mem_20 = (struct __ACC__ERR **)__cil_tmp13;
2992#line 99
2993      next = *mem_20;
2994#line 100
2995      mem_21 = (void **)temp;
2996#line 100
2997      excep = *mem_21;
2998#line 101
2999      __cil_tmp14 = (void *)temp;
3000#line 101
3001      free(__cil_tmp14);
3002#line 102
3003      __utac__exception__cf_handler_reset(excep);
3004#line 103
3005      temp = next;
3006#line 104
3007      count = count - 1;
3008      }
3009    }
3010    while_3_break: /* CIL Label */ ;
3011    }
3012    {
3013#line 107
3014    __cil_tmp15 = (unsigned long )temp;
3015#line 107
3016    __cil_tmp16 = __cil_tmp15 + 8;
3017#line 107
3018    mem_22 = (struct __ACC__ERR **)__cil_tmp16;
3019#line 107
3020    head = *mem_22;
3021#line 108
3022    mem_23 = (void **)temp;
3023#line 108
3024    excep = *mem_23;
3025#line 109
3026    __cil_tmp17 = (void *)temp;
3027#line 109
3028    free(__cil_tmp17);
3029#line 110
3030    __utac__exception__cf_handler_reset(excep);
3031#line 820 "libacc.c"
3032    retValue_acc = excep;
3033    }
3034#line 822
3035    return (retValue_acc);
3036  } else {
3037
3038  }
3039#line 114
3040  if (mode == 2) {
3041#line 118 "libacc.c"
3042    if (head) {
3043#line 831
3044      mem_24 = (void **)head;
3045#line 831
3046      retValue_acc = *mem_24;
3047#line 833
3048      return (retValue_acc);
3049    } else {
3050#line 837 "libacc.c"
3051      retValue_acc = (void *)0;
3052#line 839
3053      return (retValue_acc);
3054    }
3055  } else {
3056
3057  }
3058#line 846 "libacc.c"
3059  return (retValue_acc);
3060}
3061}
3062#line 122 "libacc.c"
3063void *__utac__get_this_arg(int i , struct JoinPoint *this ) 
3064{ void *retValue_acc ;
3065  unsigned long __cil_tmp4 ;
3066  unsigned long __cil_tmp5 ;
3067  int __cil_tmp6 ;
3068  int __cil_tmp7 ;
3069  unsigned long __cil_tmp8 ;
3070  unsigned long __cil_tmp9 ;
3071  void **__cil_tmp10 ;
3072  void **__cil_tmp11 ;
3073  int *mem_12 ;
3074  void ***mem_13 ;
3075
3076  {
3077#line 123
3078  if (i > 0) {
3079    {
3080#line 123
3081    __cil_tmp4 = (unsigned long )this;
3082#line 123
3083    __cil_tmp5 = __cil_tmp4 + 16;
3084#line 123
3085    mem_12 = (int *)__cil_tmp5;
3086#line 123
3087    __cil_tmp6 = *mem_12;
3088#line 123
3089    if (i <= __cil_tmp6) {
3090
3091    } else {
3092      {
3093#line 123
3094      __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
3095                    123U, "__utac__get_this_arg");
3096      }
3097    }
3098    }
3099  } else {
3100    {
3101#line 123
3102    __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
3103                  123U, "__utac__get_this_arg");
3104    }
3105  }
3106#line 870 "libacc.c"
3107  __cil_tmp7 = i - 1;
3108#line 870
3109  __cil_tmp8 = (unsigned long )this;
3110#line 870
3111  __cil_tmp9 = __cil_tmp8 + 8;
3112#line 870
3113  mem_13 = (void ***)__cil_tmp9;
3114#line 870
3115  __cil_tmp10 = *mem_13;
3116#line 870
3117  __cil_tmp11 = __cil_tmp10 + __cil_tmp7;
3118#line 870
3119  retValue_acc = *__cil_tmp11;
3120#line 872
3121  return (retValue_acc);
3122#line 879
3123  return (retValue_acc);
3124}
3125}
3126#line 129 "libacc.c"
3127char const   *__utac__get_this_argtype(int i , struct JoinPoint *this ) 
3128{ char const   *retValue_acc ;
3129  unsigned long __cil_tmp4 ;
3130  unsigned long __cil_tmp5 ;
3131  int __cil_tmp6 ;
3132  int __cil_tmp7 ;
3133  unsigned long __cil_tmp8 ;
3134  unsigned long __cil_tmp9 ;
3135  char const   **__cil_tmp10 ;
3136  char const   **__cil_tmp11 ;
3137  int *mem_12 ;
3138  char const   ***mem_13 ;
3139
3140  {
3141#line 131
3142  if (i > 0) {
3143    {
3144#line 131
3145    __cil_tmp4 = (unsigned long )this;
3146#line 131
3147    __cil_tmp5 = __cil_tmp4 + 16;
3148#line 131
3149    mem_12 = (int *)__cil_tmp5;
3150#line 131
3151    __cil_tmp6 = *mem_12;
3152#line 131
3153    if (i <= __cil_tmp6) {
3154
3155    } else {
3156      {
3157#line 131
3158      __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
3159                    131U, "__utac__get_this_argtype");
3160      }
3161    }
3162    }
3163  } else {
3164    {
3165#line 131
3166    __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
3167                  131U, "__utac__get_this_argtype");
3168    }
3169  }
3170#line 903 "libacc.c"
3171  __cil_tmp7 = i - 1;
3172#line 903
3173  __cil_tmp8 = (unsigned long )this;
3174#line 903
3175  __cil_tmp9 = __cil_tmp8 + 24;
3176#line 903
3177  mem_13 = (char const   ***)__cil_tmp9;
3178#line 903
3179  __cil_tmp10 = *mem_13;
3180#line 903
3181  __cil_tmp11 = __cil_tmp10 + __cil_tmp7;
3182#line 903
3183  retValue_acc = *__cil_tmp11;
3184#line 905
3185  return (retValue_acc);
3186#line 912
3187  return (retValue_acc);
3188}
3189}
3190#line 1 "Test.o"
3191#pragma merger(0,"Test.i","")
3192#line 2 "Test.h"
3193int bob  ;
3194#line 5 "Test.h"
3195int rjh  ;
3196#line 8 "Test.h"
3197int chuck  ;
3198#line 11
3199void setup_bob(int bob___0 ) ;
3200#line 14
3201void setup_rjh(int rjh___0 ) ;
3202#line 17
3203void setup_chuck(int chuck___0 ) ;
3204#line 26
3205void rjhToBob(void) ;
3206#line 32
3207void setup(void) ;
3208#line 35
3209int main(void) ;
3210#line 39
3211void bobKeyAddChuck(void) ;
3212#line 45
3213void rjhKeyAddChuck(void) ;
3214#line 18 "Test.c"
3215void setup_bob__wrappee__Base(int bob___0 ) 
3216{ 
3217
3218  {
3219  {
3220#line 19
3221  setClientId(bob___0, bob___0);
3222  }
3223#line 1326 "Test.c"
3224  return;
3225}
3226}
3227#line 23 "Test.c"
3228void setup_bob(int bob___0 ) 
3229{ 
3230
3231  {
3232  {
3233#line 24
3234  setup_bob__wrappee__Base(bob___0);
3235#line 25
3236  setClientPrivateKey(bob___0, 123);
3237  }
3238#line 1348 "Test.c"
3239  return;
3240}
3241}
3242#line 33 "Test.c"
3243void setup_rjh__wrappee__Base(int rjh___0 ) 
3244{ 
3245
3246  {
3247  {
3248#line 34
3249  setClientId(rjh___0, rjh___0);
3250  }
3251#line 1368 "Test.c"
3252  return;
3253}
3254}
3255#line 40 "Test.c"
3256void setup_rjh(int rjh___0 ) 
3257{ 
3258
3259  {
3260  {
3261#line 42
3262  setup_rjh__wrappee__Base(rjh___0);
3263#line 43
3264  setClientPrivateKey(rjh___0, 456);
3265  }
3266#line 1390 "Test.c"
3267  return;
3268}
3269}
3270#line 50 "Test.c"
3271void setup_chuck__wrappee__Base(int chuck___0 ) 
3272{ 
3273
3274  {
3275  {
3276#line 51
3277  setClientId(chuck___0, chuck___0);
3278  }
3279#line 1410 "Test.c"
3280  return;
3281}
3282}
3283#line 57 "Test.c"
3284void setup_chuck(int chuck___0 ) 
3285{ 
3286
3287  {
3288  {
3289#line 58
3290  setup_chuck__wrappee__Base(chuck___0);
3291#line 59
3292  setClientPrivateKey(chuck___0, 789);
3293  }
3294#line 1432 "Test.c"
3295  return;
3296}
3297}
3298#line 69 "Test.c"
3299void bobToRjh(void) 
3300{ int tmp ;
3301  int tmp___0 ;
3302  int tmp___1 ;
3303
3304  {
3305  {
3306#line 71
3307  puts("Please enter a subject and a message body.\n");
3308#line 72
3309  sendEmail(bob, rjh);
3310#line 73
3311  tmp___1 = is_queue_empty();
3312  }
3313#line 73
3314  if (tmp___1) {
3315
3316  } else {
3317    {
3318#line 74
3319    tmp = get_queued_email();
3320#line 74
3321    tmp___0 = get_queued_client();
3322#line 74
3323    outgoing(tmp___0, tmp);
3324    }
3325  }
3326#line 1459 "Test.c"
3327  return;
3328}
3329}
3330#line 81 "Test.c"
3331void rjhToBob(void) 
3332{ 
3333
3334  {
3335  {
3336#line 83
3337  puts("Please enter a subject and a message body.\n");
3338#line 84
3339  sendEmail(rjh, bob);
3340  }
3341#line 1481 "Test.c"
3342  return;
3343}
3344}
3345#line 88 "Test.c"
3346#line 95 "Test.c"
3347void setup(void) 
3348{ char const   * __restrict  __cil_tmp1 ;
3349  char const   * __restrict  __cil_tmp2 ;
3350  char const   * __restrict  __cil_tmp3 ;
3351
3352  {
3353  {
3354#line 96
3355  bob = 1;
3356#line 97
3357  setup_bob(bob);
3358#line 98
3359  __cil_tmp1 = (char const   * __restrict  )"bob: %d\n";
3360#line 98
3361  printf(__cil_tmp1, bob);
3362#line 100
3363  rjh = 2;
3364#line 101
3365  setup_rjh(rjh);
3366#line 102
3367  __cil_tmp2 = (char const   * __restrict  )"rjh: %d\n";
3368#line 102
3369  printf(__cil_tmp2, rjh);
3370#line 104
3371  chuck = 3;
3372#line 105
3373  setup_chuck(chuck);
3374#line 106
3375  __cil_tmp3 = (char const   * __restrict  )"chuck: %d\n";
3376#line 106
3377  printf(__cil_tmp3, chuck);
3378  }
3379#line 1552 "Test.c"
3380  return;
3381}
3382}
3383#line 112 "Test.c"
3384int main(void) 
3385{ int retValue_acc ;
3386  int tmp ;
3387
3388  {
3389  {
3390#line 113
3391  select_helpers();
3392#line 114
3393  select_features();
3394#line 115
3395  tmp = valid_product();
3396  }
3397#line 115
3398  if (tmp) {
3399    {
3400#line 116
3401    setup();
3402#line 117
3403    test();
3404    }
3405  } else {
3406
3407  }
3408#line 1583 "Test.c"
3409  return (retValue_acc);
3410}
3411}
3412#line 125 "Test.c"
3413void bobKeyAdd(void) 
3414{ int tmp ;
3415  int tmp___0 ;
3416  char const   * __restrict  __cil_tmp3 ;
3417  char const   * __restrict  __cil_tmp4 ;
3418
3419  {
3420  {
3421#line 126
3422  createClientKeyringEntry(bob);
3423#line 127
3424  setClientKeyringUser(bob, 0, 2);
3425#line 128
3426  setClientKeyringPublicKey(bob, 0, 456);
3427#line 129
3428  puts("bob added rjhs key");
3429#line 130
3430  tmp = getClientKeyringUser(bob, 0);
3431#line 130
3432  __cil_tmp3 = (char const   * __restrict  )"%d\n";
3433#line 130
3434  printf(__cil_tmp3, tmp);
3435#line 131
3436  tmp___0 = getClientKeyringPublicKey(bob, 0);
3437#line 131
3438  __cil_tmp4 = (char const   * __restrict  )"%d\n";
3439#line 131
3440  printf(__cil_tmp4, tmp___0);
3441  }
3442#line 1617 "Test.c"
3443  return;
3444}
3445}
3446#line 137 "Test.c"
3447void rjhKeyAdd(void) 
3448{ 
3449
3450  {
3451  {
3452#line 138
3453  createClientKeyringEntry(rjh);
3454#line 139
3455  setClientKeyringUser(rjh, 0, 1);
3456#line 140
3457  setClientKeyringPublicKey(rjh, 0, 123);
3458  }
3459#line 1641 "Test.c"
3460  return;
3461}
3462}
3463#line 146 "Test.c"
3464void rjhKeyAddChuck(void) 
3465{ 
3466
3467  {
3468  {
3469#line 147
3470  createClientKeyringEntry(rjh);
3471#line 148
3472  setClientKeyringUser(rjh, 0, 3);
3473#line 149
3474  setClientKeyringPublicKey(rjh, 0, 789);
3475  }
3476#line 1665 "Test.c"
3477  return;
3478}
3479}
3480#line 156 "Test.c"
3481void bobKeyAddChuck(void) 
3482{ 
3483
3484  {
3485  {
3486#line 157
3487  createClientKeyringEntry(bob);
3488#line 158
3489  setClientKeyringUser(bob, 1, 3);
3490#line 159
3491  setClientKeyringPublicKey(bob, 1, 789);
3492  }
3493#line 1689 "Test.c"
3494  return;
3495}
3496}
3497#line 165 "Test.c"
3498void chuckKeyAdd(void) 
3499{ 
3500
3501  {
3502  {
3503#line 166
3504  createClientKeyringEntry(chuck);
3505#line 167
3506  setClientKeyringUser(chuck, 0, 1);
3507#line 168
3508  setClientKeyringPublicKey(chuck, 0, 123);
3509  }
3510#line 1713 "Test.c"
3511  return;
3512}
3513}
3514#line 174 "Test.c"
3515void chuckKeyAddRjh(void) 
3516{ 
3517
3518  {
3519  {
3520#line 175
3521  createClientKeyringEntry(chuck);
3522#line 176
3523  setClientKeyringUser(chuck, 0, 2);
3524#line 177
3525  setClientKeyringPublicKey(chuck, 0, 456);
3526  }
3527#line 1737 "Test.c"
3528  return;
3529}
3530}
3531#line 183 "Test.c"
3532void rjhDeletePrivateKey(void) 
3533{ 
3534
3535  {
3536  {
3537#line 184
3538  setClientPrivateKey(rjh, 0);
3539  }
3540#line 1757 "Test.c"
3541  return;
3542}
3543}
3544#line 190 "Test.c"
3545void bobKeyChange(void) 
3546{ 
3547
3548  {
3549  {
3550#line 191
3551  generateKeyPair(bob, 777);
3552  }
3553#line 1777 "Test.c"
3554  return;
3555}
3556}
3557#line 197 "Test.c"
3558void rjhKeyChange(void) 
3559{ 
3560
3561  {
3562  {
3563#line 198
3564  generateKeyPair(rjh, 666);
3565  }
3566#line 1797 "Test.c"
3567  return;
3568}
3569}
3570#line 1 "Email.o"
3571#pragma merger(0,"Email.i","")
3572#line 6 "EmailLib.h"
3573int getEmailId(int handle ) ;
3574#line 16
3575void setEmailTo(int handle , int value ) ;
3576#line 42
3577int isVerified(int handle ) ;
3578#line 6 "Email.h"
3579void printMail(int msg ) ;
3580#line 15
3581int cloneEmail(int msg ) ;
3582#line 9 "Email.c"
3583void printMail__wrappee__Keys(int msg ) 
3584{ int tmp ;
3585  int tmp___0 ;
3586  int tmp___1 ;
3587  int tmp___2 ;
3588  char const   * __restrict  __cil_tmp6 ;
3589  char const   * __restrict  __cil_tmp7 ;
3590  char const   * __restrict  __cil_tmp8 ;
3591  char const   * __restrict  __cil_tmp9 ;
3592
3593  {
3594  {
3595#line 10
3596  tmp = getEmailId(msg);
3597#line 10
3598  __cil_tmp6 = (char const   * __restrict  )"ID:\n  %i\n";
3599#line 10
3600  printf(__cil_tmp6, tmp);
3601#line 11
3602  tmp___0 = getEmailFrom(msg);
3603#line 11
3604  __cil_tmp7 = (char const   * __restrict  )"FROM:\n  %i\n";
3605#line 11
3606  printf(__cil_tmp7, tmp___0);
3607#line 12
3608  tmp___1 = getEmailTo(msg);
3609#line 12
3610  __cil_tmp8 = (char const   * __restrict  )"TO:\n  %i\n";
3611#line 12
3612  printf(__cil_tmp8, tmp___1);
3613#line 13
3614  tmp___2 = isReadable(msg);
3615#line 13
3616  __cil_tmp9 = (char const   * __restrict  )"IS_READABLE\n  %i\n";
3617#line 13
3618  printf(__cil_tmp9, tmp___2);
3619  }
3620#line 601 "Email.c"
3621  return;
3622}
3623}
3624#line 17 "Email.c"
3625void printMail__wrappee__Encrypt(int msg ) 
3626{ int tmp ;
3627  int tmp___0 ;
3628  char const   * __restrict  __cil_tmp4 ;
3629  char const   * __restrict  __cil_tmp5 ;
3630
3631  {
3632  {
3633#line 18
3634  printMail__wrappee__Keys(msg);
3635#line 19
3636  tmp = isEncrypted(msg);
3637#line 19
3638  __cil_tmp4 = (char const   * __restrict  )"ENCRYPTED\n  %d\n";
3639#line 19
3640  printf(__cil_tmp4, tmp);
3641#line 20
3642  tmp___0 = getEmailEncryptionKey(msg);
3643#line 20
3644  __cil_tmp5 = (char const   * __restrict  )"ENCRYPTION KEY\n  %d\n";
3645#line 20
3646  printf(__cil_tmp5, tmp___0);
3647  }
3648#line 625 "Email.c"
3649  return;
3650}
3651}
3652#line 26 "Email.c"
3653void printMail__wrappee__Sign(int msg ) 
3654{ int tmp ;
3655  int tmp___0 ;
3656  char const   * __restrict  __cil_tmp4 ;
3657  char const   * __restrict  __cil_tmp5 ;
3658
3659  {
3660  {
3661#line 27
3662  printMail__wrappee__Encrypt(msg);
3663#line 28
3664  tmp = isSigned(msg);
3665#line 28
3666  __cil_tmp4 = (char const   * __restrict  )"SIGNED\n  %i\n";
3667#line 28
3668  printf(__cil_tmp4, tmp);
3669#line 29
3670  tmp___0 = getEmailSignKey(msg);
3671#line 29
3672  __cil_tmp5 = (char const   * __restrict  )"SIGNATURE\n  %i\n";
3673#line 29
3674  printf(__cil_tmp5, tmp___0);
3675  }
3676#line 649 "Email.c"
3677  return;
3678}
3679}
3680#line 33 "Email.c"
3681void printMail(int msg ) 
3682{ int tmp ;
3683  char const   * __restrict  __cil_tmp3 ;
3684
3685  {
3686  {
3687#line 34
3688  printMail__wrappee__Sign(msg);
3689#line 35
3690  tmp = isVerified(msg);
3691#line 35
3692  __cil_tmp3 = (char const   * __restrict  )"SIGNATURE VERIFIED\n  %d\n";
3693#line 35
3694  printf(__cil_tmp3, tmp);
3695  }
3696#line 671 "Email.c"
3697  return;
3698}
3699}
3700#line 41 "Email.c"
3701int isReadable__wrappee__Keys(int msg ) 
3702{ int retValue_acc ;
3703
3704  {
3705#line 689 "Email.c"
3706  retValue_acc = 1;
3707#line 691
3708  return (retValue_acc);
3709#line 698
3710  return (retValue_acc);
3711}
3712}
3713#line 49 "Email.c"
3714int isReadable(int msg ) 
3715{ int retValue_acc ;
3716  int tmp ;
3717
3718  {
3719  {
3720#line 53
3721  tmp = isEncrypted(msg);
3722  }
3723#line 53 "Email.c"
3724  if (tmp) {
3725#line 727
3726    retValue_acc = 0;
3727#line 729
3728    return (retValue_acc);
3729  } else {
3730    {
3731#line 721 "Email.c"
3732    retValue_acc = isReadable__wrappee__Keys(msg);
3733    }
3734#line 723
3735    return (retValue_acc);
3736  }
3737#line 736 "Email.c"
3738  return (retValue_acc);
3739}
3740}
3741#line 57 "Email.c"
3742int cloneEmail(int msg ) 
3743{ int retValue_acc ;
3744
3745  {
3746#line 758 "Email.c"
3747  retValue_acc = msg;
3748#line 760
3749  return (retValue_acc);
3750#line 767
3751  return (retValue_acc);
3752}
3753}
3754#line 62 "Email.c"
3755int createEmail(int from , int to ) 
3756{ int retValue_acc ;
3757  int msg ;
3758
3759  {
3760  {
3761#line 63
3762  msg = 1;
3763#line 64
3764  setEmailFrom(msg, from);
3765#line 65
3766  setEmailTo(msg, to);
3767#line 797 "Email.c"
3768  retValue_acc = msg;
3769  }
3770#line 799
3771  return (retValue_acc);
3772#line 806
3773  return (retValue_acc);
3774}
3775}
3776#line 1 "EmailLib.o"
3777#pragma merger(0,"EmailLib.i","")
3778#line 4 "EmailLib.h"
3779int initEmail(void) ;
3780#line 8
3781void setEmailId(int handle , int value ) ;
3782#line 18
3783char *getEmailSubject(int handle ) ;
3784#line 20
3785void setEmailSubject(int handle , char *value ) ;
3786#line 22
3787char *getEmailBody(int handle ) ;
3788#line 24
3789void setEmailBody(int handle , char *value ) ;
3790#line 5 "EmailLib.c"
3791int __ste_Email_counter  =    0;
3792#line 7 "EmailLib.c"
3793int initEmail(void) 
3794{ int retValue_acc ;
3795
3796  {
3797#line 12 "EmailLib.c"
3798  if (__ste_Email_counter < 2) {
3799#line 670
3800    __ste_Email_counter = __ste_Email_counter + 1;
3801#line 670
3802    retValue_acc = __ste_Email_counter;
3803#line 672
3804    return (retValue_acc);
3805  } else {
3806#line 678 "EmailLib.c"
3807    retValue_acc = -1;
3808#line 680
3809    return (retValue_acc);
3810  }
3811#line 687 "EmailLib.c"
3812  return (retValue_acc);
3813}
3814}
3815#line 15 "EmailLib.c"
3816int __ste_email_id0  =    0;
3817#line 17 "EmailLib.c"
3818int __ste_email_id1  =    0;
3819#line 19 "EmailLib.c"
3820int getEmailId(int handle ) 
3821{ int retValue_acc ;
3822
3823  {
3824#line 26 "EmailLib.c"
3825  if (handle == 1) {
3826#line 716
3827    retValue_acc = __ste_email_id0;
3828#line 718
3829    return (retValue_acc);
3830  } else {
3831#line 720
3832    if (handle == 2) {
3833#line 725
3834      retValue_acc = __ste_email_id1;
3835#line 727
3836      return (retValue_acc);
3837    } else {
3838#line 733 "EmailLib.c"
3839      retValue_acc = 0;
3840#line 735
3841      return (retValue_acc);
3842    }
3843  }
3844#line 742 "EmailLib.c"
3845  return (retValue_acc);
3846}
3847}
3848#line 29 "EmailLib.c"
3849void setEmailId(int handle , int value ) 
3850{ 
3851
3852  {
3853#line 35
3854  if (handle == 1) {
3855#line 31
3856    __ste_email_id0 = value;
3857  } else {
3858#line 32
3859    if (handle == 2) {
3860#line 33
3861      __ste_email_id1 = value;
3862    } else {
3863
3864    }
3865  }
3866#line 773 "EmailLib.c"
3867  return;
3868}
3869}
3870#line 37 "EmailLib.c"
3871int __ste_email_from0  =    0;
3872#line 39 "EmailLib.c"
3873int __ste_email_from1  =    0;
3874#line 41 "EmailLib.c"
3875int getEmailFrom(int handle ) 
3876{ int retValue_acc ;
3877
3878  {
3879#line 48 "EmailLib.c"
3880  if (handle == 1) {
3881#line 798
3882    retValue_acc = __ste_email_from0;
3883#line 800
3884    return (retValue_acc);
3885  } else {
3886#line 802
3887    if (handle == 2) {
3888#line 807
3889      retValue_acc = __ste_email_from1;
3890#line 809
3891      return (retValue_acc);
3892    } else {
3893#line 815 "EmailLib.c"
3894      retValue_acc = 0;
3895#line 817
3896      return (retValue_acc);
3897    }
3898  }
3899#line 824 "EmailLib.c"
3900  return (retValue_acc);
3901}
3902}
3903#line 51 "EmailLib.c"
3904void setEmailFrom(int handle , int value ) 
3905{ 
3906
3907  {
3908#line 57
3909  if (handle == 1) {
3910#line 53
3911    __ste_email_from0 = value;
3912  } else {
3913#line 54
3914    if (handle == 2) {
3915#line 55
3916      __ste_email_from1 = value;
3917    } else {
3918
3919    }
3920  }
3921#line 855 "EmailLib.c"
3922  return;
3923}
3924}
3925#line 59 "EmailLib.c"
3926int __ste_email_to0  =    0;
3927#line 61 "EmailLib.c"
3928int __ste_email_to1  =    0;
3929#line 63 "EmailLib.c"
3930int getEmailTo(int handle ) 
3931{ int retValue_acc ;
3932
3933  {
3934#line 70 "EmailLib.c"
3935  if (handle == 1) {
3936#line 880
3937    retValue_acc = __ste_email_to0;
3938#line 882
3939    return (retValue_acc);
3940  } else {
3941#line 884
3942    if (handle == 2) {
3943#line 889
3944      retValue_acc = __ste_email_to1;
3945#line 891
3946      return (retValue_acc);
3947    } else {
3948#line 897 "EmailLib.c"
3949      retValue_acc = 0;
3950#line 899
3951      return (retValue_acc);
3952    }
3953  }
3954#line 906 "EmailLib.c"
3955  return (retValue_acc);
3956}
3957}
3958#line 73 "EmailLib.c"
3959void setEmailTo(int handle , int value ) 
3960{ 
3961
3962  {
3963#line 79
3964  if (handle == 1) {
3965#line 75
3966    __ste_email_to0 = value;
3967  } else {
3968#line 76
3969    if (handle == 2) {
3970#line 77
3971      __ste_email_to1 = value;
3972    } else {
3973
3974    }
3975  }
3976#line 937 "EmailLib.c"
3977  return;
3978}
3979}
3980#line 81 "EmailLib.c"
3981char *__ste_email_subject0  ;
3982#line 83 "EmailLib.c"
3983char *__ste_email_subject1  ;
3984#line 85 "EmailLib.c"
3985char *getEmailSubject(int handle ) 
3986{ char *retValue_acc ;
3987  void *__cil_tmp3 ;
3988
3989  {
3990#line 92 "EmailLib.c"
3991  if (handle == 1) {
3992#line 962
3993    retValue_acc = __ste_email_subject0;
3994#line 964
3995    return (retValue_acc);
3996  } else {
3997#line 966
3998    if (handle == 2) {
3999#line 971
4000      retValue_acc = __ste_email_subject1;
4001#line 973
4002      return (retValue_acc);
4003    } else {
4004#line 979 "EmailLib.c"
4005      __cil_tmp3 = (void *)0;
4006#line 979
4007      retValue_acc = (char *)__cil_tmp3;
4008#line 981
4009      return (retValue_acc);
4010    }
4011  }
4012#line 988 "EmailLib.c"
4013  return (retValue_acc);
4014}
4015}
4016#line 95 "EmailLib.c"
4017void setEmailSubject(int handle , char *value ) 
4018{ 
4019
4020  {
4021#line 101
4022  if (handle == 1) {
4023#line 97
4024    __ste_email_subject0 = value;
4025  } else {
4026#line 98
4027    if (handle == 2) {
4028#line 99
4029      __ste_email_subject1 = value;
4030    } else {
4031
4032    }
4033  }
4034#line 1019 "EmailLib.c"
4035  return;
4036}
4037}
4038#line 103 "EmailLib.c"
4039char *__ste_email_body0  =    (char *)0;
4040#line 105 "EmailLib.c"
4041char *__ste_email_body1  =    (char *)0;
4042#line 107 "EmailLib.c"
4043char *getEmailBody(int handle ) 
4044{ char *retValue_acc ;
4045  void *__cil_tmp3 ;
4046
4047  {
4048#line 114 "EmailLib.c"
4049  if (handle == 1) {
4050#line 1044
4051    retValue_acc = __ste_email_body0;
4052#line 1046
4053    return (retValue_acc);
4054  } else {
4055#line 1048
4056    if (handle == 2) {
4057#line 1053
4058      retValue_acc = __ste_email_body1;
4059#line 1055
4060      return (retValue_acc);
4061    } else {
4062#line 1061 "EmailLib.c"
4063      __cil_tmp3 = (void *)0;
4064#line 1061
4065      retValue_acc = (char *)__cil_tmp3;
4066#line 1063
4067      return (retValue_acc);
4068    }
4069  }
4070#line 1070 "EmailLib.c"
4071  return (retValue_acc);
4072}
4073}
4074#line 117 "EmailLib.c"
4075void setEmailBody(int handle , char *value ) 
4076{ 
4077
4078  {
4079#line 123
4080  if (handle == 1) {
4081#line 119
4082    __ste_email_body0 = value;
4083  } else {
4084#line 120
4085    if (handle == 2) {
4086#line 121
4087      __ste_email_body1 = value;
4088    } else {
4089
4090    }
4091  }
4092#line 1101 "EmailLib.c"
4093  return;
4094}
4095}
4096#line 125 "EmailLib.c"
4097int __ste_email_isEncrypted0  =    0;
4098#line 127 "EmailLib.c"
4099int __ste_email_isEncrypted1  =    0;
4100#line 129 "EmailLib.c"
4101int isEncrypted(int handle ) 
4102{ int retValue_acc ;
4103
4104  {
4105#line 136 "EmailLib.c"
4106  if (handle == 1) {
4107#line 1126
4108    retValue_acc = __ste_email_isEncrypted0;
4109#line 1128
4110    return (retValue_acc);
4111  } else {
4112#line 1130
4113    if (handle == 2) {
4114#line 1135
4115      retValue_acc = __ste_email_isEncrypted1;
4116#line 1137
4117      return (retValue_acc);
4118    } else {
4119#line 1143 "EmailLib.c"
4120      retValue_acc = 0;
4121#line 1145
4122      return (retValue_acc);
4123    }
4124  }
4125#line 1152 "EmailLib.c"
4126  return (retValue_acc);
4127}
4128}
4129#line 139 "EmailLib.c"
4130void setEmailIsEncrypted(int handle , int value ) 
4131{ 
4132
4133  {
4134#line 145
4135  if (handle == 1) {
4136#line 141
4137    __ste_email_isEncrypted0 = value;
4138  } else {
4139#line 142
4140    if (handle == 2) {
4141#line 143
4142      __ste_email_isEncrypted1 = value;
4143    } else {
4144
4145    }
4146  }
4147#line 1183 "EmailLib.c"
4148  return;
4149}
4150}
4151#line 147 "EmailLib.c"
4152int __ste_email_encryptionKey0  =    0;
4153#line 149 "EmailLib.c"
4154int __ste_email_encryptionKey1  =    0;
4155#line 151 "EmailLib.c"
4156int getEmailEncryptionKey(int handle ) 
4157{ int retValue_acc ;
4158
4159  {
4160#line 158 "EmailLib.c"
4161  if (handle == 1) {
4162#line 1208
4163    retValue_acc = __ste_email_encryptionKey0;
4164#line 1210
4165    return (retValue_acc);
4166  } else {
4167#line 1212
4168    if (handle == 2) {
4169#line 1217
4170      retValue_acc = __ste_email_encryptionKey1;
4171#line 1219
4172      return (retValue_acc);
4173    } else {
4174#line 1225 "EmailLib.c"
4175      retValue_acc = 0;
4176#line 1227
4177      return (retValue_acc);
4178    }
4179  }
4180#line 1234 "EmailLib.c"
4181  return (retValue_acc);
4182}
4183}
4184#line 161 "EmailLib.c"
4185void setEmailEncryptionKey(int handle , int value ) 
4186{ 
4187
4188  {
4189#line 167
4190  if (handle == 1) {
4191#line 163
4192    __ste_email_encryptionKey0 = value;
4193  } else {
4194#line 164
4195    if (handle == 2) {
4196#line 165
4197      __ste_email_encryptionKey1 = value;
4198    } else {
4199
4200    }
4201  }
4202#line 1265 "EmailLib.c"
4203  return;
4204}
4205}
4206#line 169 "EmailLib.c"
4207int __ste_email_isSigned0  =    0;
4208#line 171 "EmailLib.c"
4209int __ste_email_isSigned1  =    0;
4210#line 173 "EmailLib.c"
4211int isSigned(int handle ) 
4212{ int retValue_acc ;
4213
4214  {
4215#line 180 "EmailLib.c"
4216  if (handle == 1) {
4217#line 1290
4218    retValue_acc = __ste_email_isSigned0;
4219#line 1292
4220    return (retValue_acc);
4221  } else {
4222#line 1294
4223    if (handle == 2) {
4224#line 1299
4225      retValue_acc = __ste_email_isSigned1;
4226#line 1301
4227      return (retValue_acc);
4228    } else {
4229#line 1307 "EmailLib.c"
4230      retValue_acc = 0;
4231#line 1309
4232      return (retValue_acc);
4233    }
4234  }
4235#line 1316 "EmailLib.c"
4236  return (retValue_acc);
4237}
4238}
4239#line 183 "EmailLib.c"
4240void setEmailIsSigned(int handle , int value ) 
4241{ 
4242
4243  {
4244#line 189
4245  if (handle == 1) {
4246#line 185
4247    __ste_email_isSigned0 = value;
4248  } else {
4249#line 186
4250    if (handle == 2) {
4251#line 187
4252      __ste_email_isSigned1 = value;
4253    } else {
4254
4255    }
4256  }
4257#line 1347 "EmailLib.c"
4258  return;
4259}
4260}
4261#line 191 "EmailLib.c"
4262int __ste_email_signKey0  =    0;
4263#line 193 "EmailLib.c"
4264int __ste_email_signKey1  =    0;
4265#line 195 "EmailLib.c"
4266int getEmailSignKey(int handle ) 
4267{ int retValue_acc ;
4268
4269  {
4270#line 202 "EmailLib.c"
4271  if (handle == 1) {
4272#line 1372
4273    retValue_acc = __ste_email_signKey0;
4274#line 1374
4275    return (retValue_acc);
4276  } else {
4277#line 1376
4278    if (handle == 2) {
4279#line 1381
4280      retValue_acc = __ste_email_signKey1;
4281#line 1383
4282      return (retValue_acc);
4283    } else {
4284#line 1389 "EmailLib.c"
4285      retValue_acc = 0;
4286#line 1391
4287      return (retValue_acc);
4288    }
4289  }
4290#line 1398 "EmailLib.c"
4291  return (retValue_acc);
4292}
4293}
4294#line 205 "EmailLib.c"
4295void setEmailSignKey(int handle , int value ) 
4296{ 
4297
4298  {
4299#line 211
4300  if (handle == 1) {
4301#line 207
4302    __ste_email_signKey0 = value;
4303  } else {
4304#line 208
4305    if (handle == 2) {
4306#line 209
4307      __ste_email_signKey1 = value;
4308    } else {
4309
4310    }
4311  }
4312#line 1429 "EmailLib.c"
4313  return;
4314}
4315}
4316#line 213 "EmailLib.c"
4317int __ste_email_isSignatureVerified0  ;
4318#line 215 "EmailLib.c"
4319int __ste_email_isSignatureVerified1  ;
4320#line 217 "EmailLib.c"
4321int isVerified(int handle ) 
4322{ int retValue_acc ;
4323
4324  {
4325#line 224 "EmailLib.c"
4326  if (handle == 1) {
4327#line 1454
4328    retValue_acc = __ste_email_isSignatureVerified0;
4329#line 1456
4330    return (retValue_acc);
4331  } else {
4332#line 1458
4333    if (handle == 2) {
4334#line 1463
4335      retValue_acc = __ste_email_isSignatureVerified1;
4336#line 1465
4337      return (retValue_acc);
4338    } else {
4339#line 1471 "EmailLib.c"
4340      retValue_acc = 0;
4341#line 1473
4342      return (retValue_acc);
4343    }
4344  }
4345#line 1480 "EmailLib.c"
4346  return (retValue_acc);
4347}
4348}
4349#line 227 "EmailLib.c"
4350void setEmailIsSignatureVerified(int handle , int value ) 
4351{ 
4352
4353  {
4354#line 233
4355  if (handle == 1) {
4356#line 229
4357    __ste_email_isSignatureVerified0 = value;
4358  } else {
4359#line 230
4360    if (handle == 2) {
4361#line 231
4362      __ste_email_isSignatureVerified1 = value;
4363    } else {
4364
4365    }
4366  }
4367#line 1511 "EmailLib.c"
4368  return;
4369}
4370}
4371#line 1 "wsllib_check.o"
4372#pragma merger(0,"wsllib_check.i","")
4373#line 3 "wsllib_check.c"
4374void __automaton_fail(void) 
4375{ 
4376
4377  {
4378  goto ERROR;
4379  ERROR: ;
4380#line 53 "wsllib_check.c"
4381  return;
4382}
4383}