Commit 1f7558491fc22fab95930a3302c72c0291d45d85
1 parent
2c9501c4
Added optimization flags to string makefile
Showing
1 changed file
with
5 additions
and
2 deletions
examples04/07-threads2_cxx11/makefile
1 | 1 | all: threads1 threads2 threads3 threads3 threads4 threads5 |
2 | 2 | |
3 | 3 | %:%.cpp |
4 | - g++ -g -std=c++11 $^ -o $@ -pthread -DCOUNT=10000000 -DSTRING=\"ala\" | |
5 | -# g++ -g -std=c++11 $^ -o $@ -pthread -DCOUNT=10000000 -DSTRING=\"alaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaala\" | |
4 | +ifndef LONG_STRING | |
5 | + g++ -g -O3 -std=c++11 $^ -o $@ -pthread -DCOUNT=10000000 -DSTRING=\"ala\" | |
6 | +else | |
7 | + g++ -g -O3 -std=c++11 $^ -o $@ -pthread -DCOUNT=10000000 -DSTRING=\"alaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaalaala\" | |
8 | +endif | |
6 | 9 | |
7 | 10 | threads1: threads1.cpp rcstring1.h |
8 | 11 | ... | ... |