Ignore:
Timestamp:
Feb 17, 2018, 12:50:34 PM (16 months ago)
Author:
xwa163
Message:
  1. Implement LZ4MultiplePdepKernel, which can do PDEP for more than one input streamset
  2. Add attributed Swizzled in StreamSet?, copy at least one whole block when doing temporary buffer copy for Swizzled InputStreamSet?
  3. Bug fixing for character_deposit pipeline
  4. Add more test files for character_deposit pipeline
Location:
icGREP/icgrep-devel/QA/character_deposit
Files:
5 added
2 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/QA/character_deposit/character_deposit_test.py

    r5858 r5873  
    2323        python_output_file_full_path = os.path.join(python_output_dir, output_file)
    2424
    25         character_deposit_cmd = "%s b %s %s" % (lz4d_program_under_test, test_file_full_path, output_file_full_path)
     25        character_deposit_cmd = "%s b -buffer-segments=2 %s %s" % (lz4d_program_under_test, test_file_full_path, output_file_full_path)
    2626
    2727        if options.verbose:
  • icGREP/icgrep-devel/QA/character_deposit/testfiles/42k.txt

    r5858 r5873  
    1 zzzbbbqbqbqbaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababpppbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababiopbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababwewbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbxbababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaxxbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababcccbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababdddbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababeeebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababfffbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababatabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababarabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababawabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababawwbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaeebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababeeebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaffbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabfbabaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababfffbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbababab
     1zzzbbbqbqbqbaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababpppbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababiopbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababwewbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbxbpbabaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaxxbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababcccbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababdddbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababeeebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababfffbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababatabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababarabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababawabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababawwbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaeebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababeeebbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaffbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabfbabaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababfffbbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbabababaaabbbababab
Note: See TracChangeset for help on using the changeset viewer.