Mercurial > hg > Members > kono > Cerium
changeset 946:a8b6ee80c108
unify word count examples....
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 01 Aug 2010 21:05:35 +0900 |
parents | a9c7784e5dae |
children | a468a9784e87 |
files | example/word_count/Func.h example/word_count/Makefile example/word_count/Makefile.def example/word_count/README example/word_count/main.cc example/word_count/ppe/Exec.cc example/word_count/ppe/Print.cc example/word_count/ppe/RunFinish.cc example/word_count/ppe/RunFinish.h example/word_count/ppe/task_init.cc example/word_count/spe/Exec.cc example/word_count/spe/Exec.cc.vector example/word_count/spe/Makefile example/word_count/spe/Print.cc example/word_count3/Func.h example/word_count3/Makefile example/word_count3/Makefile.cell example/word_count3/Makefile.def example/word_count3/Makefile.linux example/word_count3/Makefile.macosx example/word_count3/README example/word_count3/main.cc example/word_count3/ppe/Exec.cc example/word_count3/ppe/Exec.h example/word_count3/ppe/Hello.cc example/word_count3/ppe/Hello.h example/word_count3/ppe/Print.cc example/word_count3/ppe/Print.h example/word_count3/ppe/RunFinish.cc example/word_count3/ppe/RunFinish.h example/word_count3/ppe/Wait.cc example/word_count3/ppe/Wait.h example/word_count3/ppe/task_init.cc example/word_count3/spe/Exec.cc example/word_count3/spe/Exec.h example/word_count3/spe/Hello.cc example/word_count3/spe/Hello.h example/word_count3/spe/Makefile example/word_count3/spe/Print.cc example/word_count3/spe/Print.h example/word_count3/spe/Wait.cc example/word_count3/spe/Wait.h example/word_count3/spe/spe-main.cc example/word_count_run16array/Func.h example/word_count_run16array/Makefile example/word_count_run16array/Makefile.cell example/word_count_run16array/Makefile.def example/word_count_run16array/Makefile.linux example/word_count_run16array/Makefile.macosx example/word_count_run16array/README example/word_count_run16array/WordCount.h example/word_count_run16array/main.cc example/word_count_run16array/ppe/Exec.cc example/word_count_run16array/ppe/Exec.h example/word_count_run16array/ppe/Print.cc example/word_count_run16array/ppe/Print.h example/word_count_run16array/ppe/RunFinish.cc example/word_count_run16array/ppe/RunFinish.h example/word_count_run16array/ppe/task_init.cc example/word_count_run16array/spe/Exec.cc example/word_count_run16array/spe/Exec.cc.vector example/word_count_run16array/spe/Exec.h example/word_count_run16array/spe/Makefile example/word_count_run16array/spe/Print.cc example/word_count_run16array/spe/Print.h example/word_count_run16array/spe/spe-main.cc example/word_count_test/Func.h example/word_count_test/Makefile example/word_count_test/Makefile.cell example/word_count_test/Makefile.def example/word_count_test/Makefile.linux example/word_count_test/Makefile.macosx example/word_count_test/README example/word_count_test/WordCount.h example/word_count_test/a.txt example/word_count_test/c.txt example/word_count_test/main.cc example/word_count_test/ppe/Exec.cc example/word_count_test/ppe/Exec.h example/word_count_test/ppe/Print.cc example/word_count_test/ppe/Print.h example/word_count_test/ppe/RunFinish.cc example/word_count_test/ppe/RunFinish.h example/word_count_test/ppe/task_init.cc example/word_count_test/spe/Exec.cc example/word_count_test/spe/Exec.cc.vector example/word_count_test/spe/Exec.h example/word_count_test/spe/Makefile example/word_count_test/spe/Print.cc example/word_count_test/spe/Print.h example/word_count_test/spe/spe-main.cc |
diffstat | 91 files changed, 379 insertions(+), 98607 deletions(-) [+] |
line wrap: on
line diff
--- a/example/word_count/Func.h Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/Func.h Sun Aug 01 21:05:35 2010 +0900 @@ -1,6 +1,7 @@ enum { #include "SysTasks.h" TASK_EXEC, + RUN_TASK_BLOCKS, TASK_PRINT, RUN_FINISH, };
--- a/example/word_count/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/Makefile Sun Aug 01 21:05:35 2010 +0900 @@ -4,10 +4,6 @@ @echo "Make for Mac OS X" @$(MAKE) -f Makefile.macosx -fifo64: FORCE - @echo "Make for Mac OS X 64bit mode" - @$(MAKE) -f Makefile.macosx ABIBIT=64 - linux: FORCE @echo "Make for Linux" @$(MAKE) -f Makefile.linux
--- a/example/word_count/Makefile.def Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/Makefile.def Sun Aug 01 21:05:35 2010 +0900 @@ -7,9 +7,12 @@ # ex linux/ps3 CERIUM = ../../../Cerium -OPT = -g #-O9 + +#OPT = -O9 +OPT = -g + CC = g++ -CFLAGS = -Wall $(OPT) +CFLAGS = -Wall $(OPT) INCLUDE = -I${CERIUM}/include/TaskManager -I. -I.. LIBS = -L${CERIUM}/TaskManager
--- a/example/word_count/README Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/README Sun Aug 01 21:05:35 2010 +0900 @@ -1,59 +1,19 @@ -/* - * $Id: README,v 1.3 2008/10/20 08:49:52 gongo Exp $ - */ -- 概要 -Task の依存関係を設定する例題 - -タスクは二種類あって - -配列 idata があるとする (サイズは length*2) +word count -Exec: idata を length の前後に分けて受け取り、各要素に値を加算 - 半分に分けるため、今回はこのタスクを 2 つに固定。 - まあ3つ以上でもいいんだけどね。 - -Print: idata を表示する。 - + 16 16 16 + |------|------|------|------|------|------|------|------| -依存関係としては、まずは Exec を先に実行しないといけないので - -------------> 時間 - -Exec 1 - \ - Print - / -Exec 2 +荐絎茵 + /\/\/\/\ + \/\/\/\/ +patter c障 -みたいな感じ。 -この依存を設定しないと、Print は Exec1,2 が計算する前の -idata を詠んでしまう可能性がある。 - - -- 実行方法 - -% ./dependency [-cpu spe_num] [-nodepend] - - -cpu SPU の数 - -nodepend Exec と Print に依存を設定しない - - -- 実行例 + 16 16 + |------|------| 16 + |------|------| 16 + |------|------| 16 + |------|------| -%./dependency -[TASK_PRINT] -13 13 13 13 13 13 13 13 13 13 13 13 26 26 26 26 26 26 26 26 26 26 26 26 - -%./dependency -nodepend -[TASK_PRINT] - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - -上の場合、Exec 1, 2 の処理結果が PPE の idata に書き込まれる前に -Print が idata から DMA でデータを取ってきて表示しているために -全て 0 になっている。 -このタスクが全て同じ SPE 上で実行されているとして、 -Exec 1, 2 のあと、Print の DMA read が実行される前に -Exec 1, 2 の DMA write が済んでいればもしかしたらデータが取れるかもしれない。 -しかし「もしかしたら」では使いものにならないので、依存を設定するわけです。 \ No newline at end of file +run16 罨<у茵с篋spawn域?
--- a/example/word_count/main.cc Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/main.cc Sun Aug 01 21:05:35 2010 +0900 @@ -7,11 +7,17 @@ #include <fcntl.h> #include <unistd.h> #include "TaskManager.h" +#include "SchedTask.h" #include "Func.h" +#include "WordCount.h" extern void task_init(); -const char *usr_help_str = "Usage: ./word_count [-cpu spe_num] [-file filename]\n"; +int all = 0; +int use_task_array = 1; +int use_compat = 0; + +const char *usr_help_str = "Usage: ./word_count [-a -c -s] [-cpu spe_num] [-file filename]\n"; typedef struct { caddr_t file_mmap; @@ -19,8 +25,9 @@ } st_mmap_t; + /*筝sizefix_byte_size違(筝吾莨若c鐚)*/ -int +static int fix_byte(int size,int fix_byte_size) { size = (size/fix_byte_size)*fix_byte_size + ((size%fix_byte_size)!= 0)*fix_byte_size; @@ -29,7 +36,7 @@ } -st_mmap_t +static st_mmap_t my_mmap(char *filename) { @@ -65,115 +72,158 @@ } +static void +run_tasks(SchedTask *manager, WordCount *w, int task_count, HTaskPtr t_next, int size) +{ + + int array_task_num = 8; + if (task_count < array_task_num) { + array_task_num = task_count; + } + + for (int i = 0; i < task_count; i += array_task_num) { + + HTask *task_array; + if (use_task_array) { + task_array = manager->create_task_array(TASK_EXEC,array_task_num,0,1,1); + if (!all) t_next->wait_for(task_array); + } + + Task *t_exec = 0; + HTask *h_exec; + for (int j = 0; j < array_task_num; j++) { + int i = w->task_spwaned++; + if (use_task_array) { + t_exec = task_array->next_task_array(TASK_EXEC,t_exec); + t_exec->set_inData(0,w->file_mmap + i*w->division_size, size); + t_exec->set_outData(0,w->o_data + i*w->out_size, w->division_out_size); + } else if (use_compat) { + h_exec = manager->create_task(TASK_EXEC); + h_exec->set_inData(0,w->file_mmap + i*w->division_size, size); + h_exec->set_outData(0,w->o_data + i*w->out_size, w->division_out_size); + h_exec->set_cpu(SPE_ANY); + h_exec->spawn(); + } else { + h_exec = manager->create_task(TASK_EXEC, + (memaddr)(w->file_mmap + i*w->division_size), size, + (memaddr)(w->o_data + i*w->out_size), w->division_out_size); + h_exec->set_cpu(SPE_ANY); + h_exec->spawn(); + } + w->size -= size; + w->task_num--; + } + if (!use_task_array) { + task_array->spawn_task_array(t_exec->next()); + task_array->set_cpu(SPE_ANY); + task_array->spawn(); + } else { + if (!all) t_next->wait_for(h_exec); + } + } +} -void +/** + * TaskPPE筝у茵с筝絎茵 + * 篋ゅ茵Task 莇潟 + */ + +SchedDefineTask1(RUN_TASK_BLOCKS,run16); + +static int +run16(SchedTask *manager, void *in, void *out) +{ + WordCount *w = *(WordCount **)in; + + if (w->task_num < w->task_blocks) { + if (w->size >= w->division_size) + run_tasks(manager,w,w->task_num, w->t_print, w->division_size); + while (w->size>0) + run_tasks(manager,w,1, w->t_print, w->size); + // printf("run16 last %d\n",w->task_num); + } else { + HTaskPtr t_next = manager->create_task(RUN_TASK_BLOCKS, + (memaddr)&w->self,sizeof(memaddr),0,0); + w->t_print->wait_for(t_next); + + run_tasks(manager,w, w->task_blocks, t_next, w->division_size); + + t_next->spawn(); + // printf("run16 next %d\n",w->task_num); + } + return 0; +} + + +static int blocks = 48; +static int division = 16; // in Kbyte + +static void run_start(TaskManager *manager, char *filename) { - HTaskPtr t_exec; HTaskPtr t_print; st_mmap_t st_mmap; st_mmap = my_mmap(filename); + WordCount *w = (WordCount*)manager->allocate(sizeof(WordCount)); + // bzero(w,sizeof(WordCount)); + w->self = w; + w->task_blocks = blocks; + w->task_spwaned = 0; /*sizedivision_size違*/ - int size = st_mmap.size; - char *file_mmap = st_mmap.file_mmap; + w->size = st_mmap.size; + w->file_mmap = st_mmap.file_mmap; /* 1task若帥泣ゃ(byte) */ - int division_size; - if (size >= 1024*16) { - division_size = 1024 * 16;/*16kbyte*/ - } - else { - division_size = size; + if (w->size >= 1024*division) { + w->division_size = 1024 * division;/*16kbyte*/ + } else { + w->division_size = w->size; } - printf("dvision_size %d\n",division_size); + printf("dvision_size %d\n",w->division_size); /* "word num" and "line num" */ - int status_num = 2; + w->status_num = 2; /* task */ - int task_num = size / division_size; - int out_task_num = task_num + (division_size*task_num < size); + w->task_num = w->size / w->division_size; + w->task_num = w->task_num + (w->division_size*w->task_num < w->size); + int out_task_num = w->task_num; - printf("task_num %d\n",task_num); + w->out_task_num = out_task_num; + printf("task_num %d\n",w->task_num); + printf("out_task_num %d\n",w->out_task_num); /* outdivision_size. status2ゃс16bytelong long(8byte)篏睡 */ - int division_out_size = 16; - /* out若帥泣ゃ冴*/ - int out_size = division_out_size*out_task_num; - unsigned long long *o_data = (unsigned long long*)manager->allocate(out_size); - + w->division_out_size = sizeof(unsigned long long)*4; + int out_size = w->division_out_size*out_task_num; + w->o_data = (unsigned long long *)manager->allocate(out_size); + w->out_size = 4; printf("out size %d\n",out_size); /*SPE腟荐阪帥鴻*/ - t_print = manager->create_task(TASK_PRINT); - t_print->set_inData(0,o_data, out_size); - t_print->set_param(0,out_task_num); - t_print->set_param(1,status_num); - - /*SPE若帥蚊*/ + t_print = manager->create_task(TASK_PRINT, + (memaddr)&w->self,sizeof(memaddr),0,0); - /*羝<若帥緇絖(鴻若鴻壕篁ュ)*/ - int word_flag = 0; - int index = 0; - int array_task_num = 32; - for (int i = 0; i < task_num; i += array_task_num) { - if (task_num-i < array_task_num) array_task_num = task_num-i; - HTask *task_main = manager->create_task_array(TASK_EXEC,array_task_num,2,1,1); - t_print->wait_for(task_main); - int j ; - Task *t_exec = 0; - for(j = 0; j < array_task_num ; j++) { - t_exec = task_main->next_task_array(TASK_EXEC,t_exec); - - // t_exec = manager->create_task(TASK_EXEC); - t_exec->set_param(0,division_size); - t_exec->set_param(1,word_flag); - - //printf("%c",file_mmap[index*division_size]); + w->t_print = t_print; - t_exec->set_inData(0,&file_mmap[index*division_size], division_size); - t_exec->set_outData(0,&o_data[index*status_num], division_out_size); - - word_flag = ((file_mmap[(index+1)*division_size-1] != 0x20) && (file_mmap[(index+1)*division_size-1] != 0x0A)); - - size -= division_size; - index++; - - } - - task_main->spawn_task_array(t_exec->next()); - task_main->set_cpu(SPE_ANY); - task_main->spawn(); - - } - - //printf("size %d\n",size); - - while (size>0) { - - t_exec = manager->create_task(TASK_EXEC); - t_exec->set_param(0,size); - t_exec->set_param(1,word_flag); - t_exec->set_inData(0,file_mmap + index*division_size, size); - t_exec->set_outData(0,o_data + index*status_num, division_out_size); - t_exec->set_cpu(SPE_ANY); + for(int i = 0;i<2;i++) { + /* Task task_blocks よ儀 Task */ + /* serialize 篁絎... */ + HTaskPtr t_exec = manager->create_task(RUN_TASK_BLOCKS, + (memaddr)&w->self,sizeof(memaddr),0,0); t_print->wait_for(t_exec); t_exec->spawn(); - index++; - size -= division_size; } - //printf("size %d\n", st_mmap.size - index*division_size); - t_print->spawn(); } -char* +static char* init(int argc, char **argv) { @@ -182,16 +232,30 @@ for (int i = 1; argv[i]; ++i) { if (strcmp(argv[i], "-file") == 0) { filename = argv[i+1]; + } else if (strcmp(argv[i], "-division") == 0) { + division = atoi(argv[i+1]); + } else if (strcmp(argv[i], "-block") == 0) { + blocks = atoi(argv[i+1]); + } else if (strcmp(argv[i], "-a") == 0) { + // create task all at once + all = 1; + } else if (strcmp(argv[i], "-c") == 0) { + use_task_array = 0; + use_compat = 1; + } else if (strcmp(argv[i], "-s") == 0) { + use_task_array = 0; + use_compat = 0; } } if (filename==0) { - printf("usage: %s [-count 10] -file filename\n",argv[0]); + puts(usr_help_str); exit(1); } return filename; } + int TMmain(TaskManager *manager, int argc, char *argv[]) { @@ -208,3 +272,5 @@ return 0; } + +/* end */
--- a/example/word_count/ppe/Exec.cc Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/ppe/Exec.cc Sun Aug 01 21:05:35 2010 +0900 @@ -9,39 +9,34 @@ static int run(SchedTask *s, void *rbuf, void *wbuf) { - char *i_data = (char*)s->get_input(rbuf, 0); - unsigned long long *o_data = (unsigned long long*)s->get_output(wbuf, 0); - long length = (long)s->get_param(0); - long word_flag = 1-(long)s->get_param(1); + char *i_data = (char *)rbuf; + unsigned long long *o_data = (unsigned long long*)wbuf; + unsigned long long *head_tail_flag = o_data +2; + int length = (int)s->get_inputSize(0); + int word_flag = 0; int word_num = 0; int line_num = 0; - int i ; - - word_num -= word_flag; - + int i = 0; - for (i=0; i < length; i++) { + head_tail_flag[0] = (i_data[0] != 0x20) && (i_data[0] != 0x0A); + word_num -= 1-head_tail_flag[0]; - //s->printf("[SPE%d]%c",id,i_data[i]); - - if((i_data[i] != 0x20) && (i_data[i] != 0x0A)) { - //s->printf("絖 = %d\n", word_num + word_flag); - word_num += word_flag; - word_flag = 0; - } else if (i_data[i] == 0x20) { - //printf("鴻若\n"); - word_flag = 1; - } else if (i_data[i] == 0x0A) { - //printf("壕\n"); - line_num += 1; - word_flag = 1; - } - + for (; i < length; i++) { + if (i_data[i] == 0x20) { + word_flag = 1; + } else if (i_data[i] == 0x0A) { + line_num += 1; + word_flag = 1; + } else { + word_num += word_flag; + word_flag = 0; + } } - + word_num += word_flag; + head_tail_flag[1] = (i_data[i-1] != 0x20) && (i_data[i-1] != 0x0A); - // printf("PPE word %d line %d\n",word_num,line_num); + // s->printf("SPE word %d line %d\n",word_num,line_num); o_data[0] = (unsigned long long)word_num; o_data[1] = (unsigned long long)line_num;
--- a/example/word_count/ppe/Print.cc Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/ppe/Print.cc Sun Aug 01 21:05:35 2010 +0900 @@ -2,17 +2,63 @@ #include <string.h> #include "Print.h" #include "Func.h" +#include "WordCount.h" /* 綽 */ -SchedDefineTask(Print); +SchedDefineTask1(Print,run_print); static int -run(SchedTask *s, void *rbuf, void *wbuf) +run_print(SchedTask *s, void *rbuf, void *wbuf) { - unsigned long long *idata = (unsigned long long*)s->get_input(rbuf, 0); - long task_num = (long)s->get_param(0); - long status_num = (long)s->get_param(1); - unsigned long long word_data[task_num]; + WordCount *w = *(WordCount**)rbuf; + unsigned long long *idata = w->o_data; + // long task_num = w->task_num; + long status_num = w->status_num; + int out_task_num = w->out_task_num; + + /* + * head_flag + * o_data[0] + * o_data[1] + * + */ + unsigned long long word_data[2]; + + int flag_cal_sum = 0; + //printf("pad %d\n",pad); + + + /* head_tail_flag : task = 2 : 1 + * + * head_tail_flag[2] + * ___________ __________ + * | | | + * | head_flag | tail_fag | + * |___________|__________| + * [0] [1] + * + * |----------------------| + * unsigned long long + * 16byte + * + * head_flag 帥 + * 絨障 tail_flag 帥 + * 綵膀峨絨丈絖壕鴻若剛札紊(tail_flag = 1)с + * 綵膀蚊絖壕鴻若鴻(head_flag = 0)翫 + * 茯違 +1 с翫с + * + * ex. + * task_num 4 + * head_tail_flag[8] + * + * 0 1 2 3 4 5 6 7 + * ___ ___ ___ ___ ___ ___ ___ ___ + * | h | t | h | t | h | t | h | t | + * |___|___|___|___|___|___|___|___| + * |-------|-------|-------| + * 罸莠 罸莠 罸莠 + * + */ s->printf("start sum\n"); @@ -20,18 +66,27 @@ word_data[i] = 0; } - for (int i = 0; i < task_num*status_num; i += status_num) { - for (int j = 0; j < status_num; j++) { - word_data[j] += idata[i+j]; - } + for (int i = 0; i < out_task_num ; i++) { + word_data[0] += idata[i*w->out_size+0]; + word_data[1] += idata[i*w->out_size+1]; + unsigned long long *head_tail_flag = + &idata[i*w->out_size+2]; + if((i!=out_task_num-1)&& + (head_tail_flag[1] == 1) && (head_tail_flag[4] == 0)) { + flag_cal_sum++; + } } - for (int i = 0; i < status_num; i++) { - s->printf("%llu ",word_data[status_num - i - 1]); + word_data[0] += flag_cal_sum; + + for (int i = status_num-1; i >=0; i--) { + s->printf("%llu ",word_data[i]); } + //printf("j = %d\n",j); + + s->printf("\n"); - return 0; }
--- a/example/word_count/ppe/RunFinish.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ -#include "RunFinish.h" - -/* 綽 */ -SchedDefineTask(RunFinish); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - return 0; -}
--- a/example/word_count/ppe/RunFinish.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_RUNFINISH -#define INCLUDED_TASK_RUNFINISH - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count/ppe/task_init.cc Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/ppe/task_init.cc Sun Aug 01 21:05:35 2010 +0900 @@ -4,6 +4,7 @@ /* 綽篏臀吾 */ SchedExternTask(Print); SchedExternTask(Exec); +SchedExternTask(RUN_TASK_BLOCKS); SchedExternTask(RunFinish); /** @@ -16,5 +17,6 @@ { SchedRegisterTask(TASK_PRINT, Print); SchedRegisterTask(TASK_EXEC, Exec); + SchedRegister(RUN_TASK_BLOCKS); SchedRegisterTask(RUN_FINISH, RunFinish); }
--- a/example/word_count/spe/Exec.cc Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/spe/Exec.cc Sun Aug 01 21:05:35 2010 +0900 @@ -9,40 +9,34 @@ static int run(SchedTask *s, void *rbuf, void *wbuf) { - char *i_data = (char*)s->get_input(rbuf, 0); - unsigned long long *o_data = (unsigned long long*)s->get_output(wbuf, 0); - int length = (int)s->get_param(0); - //int length = s->read_size(); - int word_flag = 1-(int)s->get_param(1); - //int word_flag = (int)s->get_param(1); + char *i_data = (char *)rbuf; + unsigned long long *o_data = (unsigned long long*)wbuf; + unsigned long long *head_tail_flag = o_data +2; + int length = (int)s->get_inputSize(0); + int word_flag = 0; int word_num = 0; int line_num = 0; - int i ; - - word_num -= word_flag; + int i = 0; + + head_tail_flag[0] = (i_data[0] != 0x20) && (i_data[0] != 0x0A); + word_num -= 1-head_tail_flag[0]; - for (i=0; i < length; i++) { - - //s->printf("[SPE%d]%c",id,i_data[i]); - - if ((i_data[i] != 0x20) && (i_data[i] != 0x0A)) { - //s->printf("絖 = %d\n", word_num + word_flag); + for (; i < length; i++) { + if (i_data[i] == 0x20) { + word_flag = 1; + } else if (i_data[i] == 0x0A) { + line_num += 1; + word_flag = 1; + } else { word_num += word_flag; word_flag = 0; - } else if (i_data[i] == 0x20) { - //printf("鴻若\n"); - word_flag = 1; - } else if (i_data[i] == 0x0A) { - //printf("壕\n"); - line_num += 1; - word_flag = 1; } - } word_num += word_flag; + head_tail_flag[1] = (i_data[i-1] != 0x20) && (i_data[i-1] != 0x0A); - // printf("PPE word %d line %d\n",word_num,line_num); + // s->printf("SPE word %d line %d\n",word_num,line_num); o_data[0] = (unsigned long long)word_num; o_data[1] = (unsigned long long)line_num;
--- a/example/word_count/spe/Exec.cc.vector Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/spe/Exec.cc.vector Sun Aug 01 21:05:35 2010 +0900 @@ -6,54 +6,65 @@ /* 綽 */ SchedDefineTask(Exec); -// typedef char *cvector __attribute__ ((vector_size (16))); -typedef char *cvector; +typedef char *cvector __attribute__ ((vector_size (16))); +// vectorize 腟... +// +// typedef char *cvector; static int run(SchedTask *s, void *rbuf, void *wbuf) { - cvector i_data ; - i_data = (cvector)s->get_input(rbuf, 0); +#ifdef SIMPLE_TASK + cvector i_data = (cvector)rbuf; + char* i_data0 = (char*)rbuf; + unsigned long long *o_data = (unsigned long long*)wbuf; + unsigned long long *head_tail_flag = o_data +2; + int length = s->read_size(); +#else + cvector i_data = (cvector)s->get_input(rbuf, 0); + char* i_data0 = (char*)s->get_input(rbuf, 0); unsigned long long *o_data = (unsigned long long*)s->get_output(wbuf, 0); + /*綵膀蚊絨障壕鴻若鴻篁ュ絖*/ + unsigned long long *head_tail_flag = (unsigned long long*)s->get_output(wbuf,1); int length = (long)s->get_param(0); - int word_flag = 1-(long)s->get_param(1); +#endif + + static const char spaces[] = {0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20} ; + cvector const space = (cvector)spaces; + static const char newlines[] = {0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a}; + cvector const newline = (cvector)newlines; + + int word_flag = 0; int word_num = 0; int line_num = 0; - int i; - static char spaces[] = {0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20}; - cvector space = (cvector)spaces; - static char newlines []= {0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a}; - cvector newline = (cvector)newlines; - - // word_flag ==1 not in a word - word_num -= word_flag; + int i = 0; + + /*絖1,鴻若鴻壕0*/ + char top = i_data0[0]; + head_tail_flag[0] = ((top != 0x20) && (top != 0x0a)); + word_num -= 1-head_tail_flag[0]; for (; i < length; i++) { - - //s->printf("[SPE%d]%c",id,i_data[i]); - - if (i_data[i] == space[i%16]) { //s->printf("鴻若\n"); word_flag = 1; - } - - else if (i_data[i] == newline[i%16]) { + } else if (i_data[i] == newline[i%16]) { //s->printf("壕\n"); line_num += 1; word_flag = 1; - } - - else { + } else { word_num += word_flag; word_flag = 0; } - } word_num += word_flag; + /*絖1,鴻若鴻壕0*/ + //printf("last word %c",i_data[i-1]); + char end = i_data0[i-1]; + head_tail_flag[1] = ((end != 0x20) && (end != 0x0a)); - //s->printf("%d %d\n",word_num,line_num); + // s->printf("SPU word %d line %d\n",word_num,line_num); o_data[0] = (unsigned long long)word_num; o_data[1] = (unsigned long long)line_num;
--- a/example/word_count/spe/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/spe/Makefile Sun Aug 01 21:05:35 2010 +0900 @@ -7,7 +7,7 @@ OBJS = $(SRCS:.cc=.o) CC = spu-g++ -CFLAGS = -g -Wall -fno-exceptions -fno-rtti $(OPT) #-DDEBUG +CFLAGS = -Wall -fno-exceptions -fno-rtti $(OPT) INCLUDE = -I../${CERIUM}/include/TaskManager -I. -I.. LIBS = -L../${CERIUM}/TaskManager -lspemanager
--- a/example/word_count/spe/Print.cc Sun Aug 01 19:29:27 2010 +0900 +++ b/example/word_count/spe/Print.cc Sun Aug 01 21:05:35 2010 +0900 @@ -2,34 +2,91 @@ #include <string.h> #include "Print.h" #include "Func.h" +#include "WordCount.h" /* 綽 */ -SchedDefineTask(Print); +SchedDefineTask1(Print,run_print); static int -run(SchedTask *s, void *rbuf, void *wbuf) +run_print(SchedTask *s, void *rbuf, void *wbuf) { - unsigned long long *idata = (unsigned long long*)s->get_input(rbuf, 0); - int task_num = (long)s->get_param(0); - int status_num = (long)s->get_param(1); - unsigned long long word_data[task_num]; + WordCount *w = *(WordCount**)rbuf; + unsigned long long *idata = w->o_data; + // long task_num = w->task_num; + long status_num = w->status_num; + int out_task_num = w->out_task_num; + + /* + * head_flag + * o_data[0] + * o_data[1] + * + */ + unsigned long long word_data[2]; + + int flag_cal_sum = 0; + //printf("pad %d\n",pad); + + + /* head_tail_flag : task = 2 : 1 + * + * head_tail_flag[2] + * ___________ __________ + * | | | + * | head_flag | tail_fag | + * |___________|__________| + * [0] [1] + * + * |----------------------| + * unsigned long long + * 16byte + * + * head_flag 帥 + * 絨障 tail_flag 帥 + * 綵膀峨絨丈絖壕鴻若剛札紊(tail_flag = 1)с + * 綵膀蚊絖壕鴻若鴻(head_flag = 0)翫 + * 茯違 +1 с翫с + * + * ex. + * task_num 4 + * head_tail_flag[8] + * + * 0 1 2 3 4 5 6 7 + * ___ ___ ___ ___ ___ ___ ___ ___ + * | h | t | h | t | h | t | h | t | + * |___|___|___|___|___|___|___|___| + * |-------|-------|-------| + * 罸莠 罸莠 罸莠 + * + */ + + s->printf("start sum\n"); for (int i = 0; i < status_num; i++) { word_data[i] = 0; } - for (int i = 0; i < task_num*status_num; i += status_num) { - for (int j = 0; j < status_num; j++) { - word_data[j] += idata[i+j]; - } + for (int i = 0; i < out_task_num ; i++) { + word_data[0] += idata[i*w->out_size+0]; + word_data[1] += idata[i*w->out_size+1]; + unsigned long long *head_tail_flag = + &idata[i*w->out_size+2]; + if((i!=out_task_num-1)&& + (head_tail_flag[1] == 1) && (head_tail_flag[4] == 0)) { + flag_cal_sum++; + } } - for (int i = 0; i < status_num; i++) { + word_data[0] += flag_cal_sum; + + for (int i = status_num-1; i >=0; i--) { s->printf("%llu ",word_data[i]); } + //printf("j = %d\n",j); + + s->printf("\n"); - return 0; }
--- a/example/word_count3/Func.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -enum { -#include "SysTasks.h" - HELLO_TASK, - WAIT_TASK, - EXEC_TASK, - PRINT_TASK, -}; - -#define DATA_NUM 12
--- a/example/word_count3/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -default: macosx - -macosx: FORCE - @echo "Make for Mac OS X" - @$(MAKE) -f Makefile.macosx - -fifo64: FORCE - @echo "Make for Mac OS X 64bit mode" - @$(MAKE) -f Makefile.macosx ABIBIT=64 - -linux: FORCE - @echo "Make for Linux" - @$(MAKE) -f Makefile.linux - -cell: FORCE - @echo "Make for CELL (Cell)" - @$(MAKE) -f Makefile.cell - -FORCE: - -clean: - @$(MAKE) -f Makefile.macosx clean - @$(MAKE) -f Makefile.linux clean - @$(MAKE) -f Makefile.cell clean \ No newline at end of file
--- a/example/word_count3/Makefile.cell Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lCellManager -lspe2 -lpthread -Wl,--gc-sections - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) speobject - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -speobject: - cd spe; $(MAKE) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo ppu-gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - cd spe; $(MAKE) clean
--- a/example/word_count3/Makefile.def Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ -TARGET = word_count - -# include/library path -# ex macosx -#CERIUM = /Users/gongo/Source/Cerium - -# ex linux/ps3 -CERIUM = ../../../Cerium - -CC = g++ -CFLAGS = -g -Wall -O9 - -INCLUDE = -I${CERIUM}/include/TaskManager -I. -I.. -LIBS = -L${CERIUM}/TaskManager
--- a/example/word_count3/Makefile.linux Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lFifoManager - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - rm -f spe/*~ spe/\#*
--- a/example/word_count3/Makefile.macosx Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lFifoManager `sdl-config --libs` -CC += -m32 - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - rm -f spe/*~ spe/\#*
--- a/example/word_count3/README Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,53 +0,0 @@ -/* - * $Id: README,v 1.2 2008/10/21 07:38:41 gongo Exp $ - */ - -- 概要 - -基本的には HelloWorld と同じなんですが、 -Hello Task が終了すると、set_post で指定した関数を呼び出すようにしています。 -この関数を使えば、タスクが終了した事が検知できる。きっと多分。 -引数は void* のみです。特に問題はないと信じてます。 - -API - set_post(void (*func)(void*), void *arg); - -func の実装 - void - func(void *p) {} - -- 実行方法 - -% ./post [-cpu CPU_NUM] [-count COUNT] - - -cpu 使用する SPU の数です。 - -count 表示する "Hello, World!!" の数。 - 正確には post_func を使って繰り返し呼ぶ Hello Task の数。 - -- 実行例 - -% ./post -Hello, World!! post_func output 1 -post function : 1 - -% ./post -count 10 -Hello, World!! post_func output 10 -post function : 10 -Hello, World!! post_func output 9 -post function : 9 -Hello, World!! post_func output 8 -post function : 8 -Hello, World!! post_func output 7 -post function : 7 -Hello, World!! post_func output 6 -post function : 6 -Hello, World!! post_func output 5 -post function : 5 -Hello, World!! post_func output 4 -post function : 4 -Hello, World!! post_func output 3 -post function : 3 -Hello, World!! post_func output 2 -post function : 2 -Hello, World!! post_func output 1 -post function : 1
--- a/example/word_count3/main.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,360 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/mman.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <unistd.h> -#include "TaskManager.h" -#include "Func.h" - -#define TASKBUFF (1) - -extern void task_init(void); - -static TaskManager *manager; - -static int count = 1; -static char *file = NULL; - -const char *usr_help_str = "Usage: ./post [-cpu spe_num] [-count N]\n\ - -count Number of print \"Hello, World!!\""; - - -struct task_list_t { - HTaskPtr task; - task_list_t *next; -}; - -typedef struct { - caddr_t file_mmap; - off_t size; -} st_mmap_t; - - -typedef struct { - - /*16task罸冴綽荀紊*/ - task_list_t *task_list; - HTaskPtr run_wait_task; - int *task_num; - int *sum_task_num; - - /*data蚊綽荀紊*/ - int *file_size; - int *division_size; - int *division_out_size; - int *status_num; - int *out_task_num; - int *out_size; - int *sum_i; - int *word_flag; - caddr_t file_mmap; - unsigned long long *o_data; - -} data_list_t; - -/*筝sizefix_byte_size違(筝吾莨若c鐚)*/ -int -fix_byte(int size,int fix_byte_size) -{ - size = (size/fix_byte_size)*fix_byte_size + ((size%fix_byte_size)!= 0)*fix_byte_size; - - return size; -} - -void -create_data(char *filename, data_list_t *data) -{ - - data->file_size = (int*)manager->allocate(sizeof(int)); - data->division_size = (int*)manager->allocate(sizeof(int)); - data->division_out_size = (int*)manager->allocate(sizeof(int)); - data->status_num = (int*)manager->allocate(sizeof(int)); - data->out_size = (int*)manager->allocate(sizeof(int)); - data->out_task_num = (int*)manager->allocate(sizeof(int)); - data->task_num = (int*)manager->allocate(sizeof(int)); - data->sum_task_num = (int*)manager->allocate(sizeof(int)); - data->sum_i = (int*)manager->allocate(sizeof(int)); - *data->sum_i = 0; - data->word_flag = (int*)manager->allocate(sizeof(int)); - *data->word_flag = 0; - data->run_wait_task = (HTaskPtr)manager->allocate(sizeof(HTask)); - data->run_wait_task = manager->create_task(WAIT_TASK); - - - - /*潟違!*/ - int fd = -1; - int map = MAP_PRIVATE; - off_t size; - struct stat sb; - - if ((fd=open(filename,O_RDONLY,0666))==0) { - fprintf(stderr,"can't open %s\n",filename); - } - - if (fstat(fd,&sb)) { - fprintf(stderr,"can't fstat %s\n",filename); - } - - printf("file size %d\n",(int)sb.st_size); - - /*size若吾潟違泣ゃ冴違*/ - size = fix_byte(sb.st_size,4096); - - printf("fix 4096byte file size %d\n",(int)size); - - data->file_mmap = (char*)mmap(NULL,size,PROT_READ,map,fd,(off_t)0); - if (data->file_mmap == (caddr_t)-1) { - fprintf(stderr,"Can't mmap file\n"); - perror(NULL); - exit(0); - } - - if (size >= 4096*4) { - *data->division_size = 4096 * 4; /*16kbyte*/ - } - else { - *data->division_size = size; - } - - *data->file_size = size; - - /* status 2ゃс8 * 2 = 16; 8 unsinged long long*/ - *data->division_out_size = 16; - - /*"word num" and "line num"*/ - *data->status_num = 2; - *data->sum_task_num = size / (*data->division_size); - - if (*data->sum_task_num < TASKBUFF) { - *data->task_num = *data->sum_task_num; - } - else { - *data->task_num = TASKBUFF; - } - - *data->out_task_num = *data->sum_task_num + ( (*data->division_size) * (*data->sum_task_num) < size); - - *data->out_size = (*data->division_out_size) * (*data->out_task_num); - data->o_data = (unsigned long long*)manager->allocate(*data->out_size); - - -} - -void -func2(SchedTask *s, void *p, void *q) -{ - data_list_t *data = (data_list_t*)p; - - int in_off_set = 0; - int out_off_set = 0; - - if (*data->file_size > 0) { - - in_off_set = (*data->sum_i) * (*data->division_size); - out_off_set = (*data->sum_i) * (*data->status_num); - *data->division_size = *data->file_size; - - HTaskPtr task = (HTaskPtr)manager->allocate(sizeof(HTask)); - task = manager->create_task(EXEC_TASK); - task->add_inData(data->file_mmap + in_off_set, *data->division_size); - task->add_outData(data->o_data + out_off_set, *data->division_out_size); - task->add_param(*data->division_size); - task->add_param(*data->word_flag); - data->run_wait_task->wait_for(task); - task->set_cpu(SPE_ANY); - task->spawn(); - - } - - data->run_wait_task->spawn(); - -} - -void -func1(SchedTask *s, void *p, void *q) -{ - - /*receive*/ - HTaskPtr wait_task = manager->create_task(WAIT_TASK); - data_list_t *data = (data_list_t*)p; - - - if (*data->sum_task_num < *data->task_num) { - *data->task_num = *data->sum_task_num; - } - - - /*run*/ - task_list_t *t = data->task_list; - - for (;t != NULL; t = t->next) { - wait_task->wait_for(t->task); - t->task->spawn(); - } - - task_list_t *now = NULL; - task_list_t *next = (task_list_t*)manager->allocate(sizeof(task_list_t)); - next = NULL; - - *data->sum_task_num -= *data->task_num; - if (*data->sum_task_num < TASKBUFF) { - *data->task_num = *data->sum_task_num; - } else { - *data->task_num = TASKBUFF; - } - - - /*for (int i = 0; i < *data->task_num; i++) { - - now = (task_list_t*)manager->allocate(sizeof(task_list_t)); - now->task = (HTaskPtr)manager->allocate(sizeof(HTask)); - now->task = manager->create_task(HELLO_TASK); - now->task->set_cpu(SPE_ANY); - now->next = next; - - next = now; - - }*/ - - - int in_off_set = 0; - int out_off_set = 0; - char next_word = 0; - - for (int i = 0; i < *data->task_num; i++) { - - in_off_set = (*data->sum_i) * (*data->division_size); - out_off_set = (*data->sum_i) * (*data->status_num); - next_word = data->file_mmap[(*data->sum_i + 1) * (*data->division_size) - 1]; - - now = (task_list_t*)manager->allocate(sizeof(task_list_t)); - now->task = (HTaskPtr)manager->allocate(sizeof(HTask)); - now->task = manager->create_task(EXEC_TASK); - now->task->add_inData(data->file_mmap + in_off_set, *data->division_size); - now->task->add_outData(data->o_data + out_off_set, *data->division_out_size); - now->task->add_param(*data->division_size); - now->task->add_param(*data->word_flag); - now->task->set_cpu(SPE_ANY); - now->next = next; - - next = now; - - *data->word_flag = ((next_word != 0x20) && (next_word != 0x0A)); - *data->file_size -= *data->division_size; - *data->sum_i += 1; - - } - - - - data->task_list = now; - - - if (*data->sum_task_num > 0) { - wait_task->set_post(func1,p, 0); - } - - /* 鴻 task 腟篋緇ゃ*/ - else { - wait_task->set_post(func2,p, 0); - } - - /* 16task 腟篋緇 */ - wait_task->spawn(); - -} - - -int -init(int argc, char **argv) -{ - for (int i = 1; argv[i]; ++i) { - if (strcmp(argv[i], "-count") == 0) { - count = atoi(argv[++i]); - } else if (strcmp(argv[i], "-file") == 0) { - file = argv[++i]; - } - } - if (!file) { - printf("usage: %s [-count 10] -file filename\n",argv[0]); - exit(0); - } - - return 0; -} - -void -run_init(TaskManager *manager) -{ - - data_list_t *data = (data_list_t*)manager->allocate(sizeof(data_list_t));; - - /*data create from input file*/ - create_data(file,data); - - HTaskPtr t_print = manager->create_task(PRINT_TASK); - t_print->add_inData(data->o_data, *data->out_size); - t_print->add_param(*data->out_task_num); - t_print->add_param(*data->status_num); - t_print->wait_for(data->run_wait_task); - - /*task create*/ - task_list_t *now = NULL; - task_list_t *next = (task_list_t*)manager->allocate(sizeof(task_list_t)); - next = NULL; - - int in_off_set = 0; - int out_off_set = 0; - char next_word = 0; - - for (int i = 0; i < *data->task_num; i++) { - - in_off_set = (*data->sum_i) * (*data->division_size); - out_off_set = (*data->sum_i) * (*data->status_num); - next_word = data->file_mmap[(*data->sum_i + 1) * (*data->division_size) - 1]; - - now = (task_list_t*)manager->allocate(sizeof(task_list_t)); - now->task = (HTaskPtr)manager->allocate(sizeof(HTask)); - now->task = manager->create_task(EXEC_TASK); - now->task->add_inData(data->file_mmap + in_off_set, *data->division_size); - now->task->add_outData(data->o_data + out_off_set, *data->division_out_size); - now->task->add_param(*data->division_size); - now->task->add_param(*data->word_flag); - now->task->set_cpu(SPE_ANY); - now->next = next; - - next = now; - - *data->word_flag = ((next_word != 0x20) && (next_word != 0x0A)); - *data->file_size -= *data->division_size; - *data->sum_i += 1; - - } - - data->task_list = now; - - func1(0, (void*)data, 0); - - t_print->spawn(); - -} - -int -TMmain(TaskManager *manager_, int argc, char *argv[]) -{ - manager = manager_; - - if (init(argc, argv) < 0) { - return -1; - } - - task_init(); - run_init(manager); - - return 0; -} -
--- a/example/word_count3/ppe/Exec.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Exec.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Exec); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - char *i_data = (char*)s->get_input(rbuf, 0); - unsigned long long *o_data = (unsigned long long*)s->get_output(wbuf, 0); - long length = (long)s->get_param(0); - long word_flag = (long)s->get_param(1); - int word_num = 0; - int line_num = 0; - int i; - - /*絖障с蕋吟若*/ - for(i = 0; i < length; i++) { - if ((i_data[i] != 0x20) && (i_data[i] != 0x0A)) { - //s->printf("[SPE%d] break[%d] %d\n",id,i,i_data[i]); - break; - } - //s->printf("[SPE%d]%c",id,i_data[start_num]); - word_num += word_flag; - word_flag = 0; - line_num += (i_data[i] == 0x0A); - } - - word_flag = 0; - - for (; i < length; i++) { - - //s->printf("[SPE%d]%c",id,i_data[i]); - - if((i_data[i] != 0x20) && (i_data[i] != 0x0A)) { - //s->printf("絖 = %d\n", word_num + word_flag); - word_num += word_flag; - word_flag = 0; - } - - if (i_data[i] == 0x20) { - //printf("鴻若\n"); - word_flag = 1; - } - - if (i_data[i] == 0x0A) { - //printf("壕\n"); - line_num += 1; - word_flag = 1; - } - - } - - word_num += word_flag; - - //printf("%d %d\n",word_num,line_num); - - o_data[0] = (unsigned long long)word_num; - o_data[1] = (unsigned long long)line_num; - - return 0; -}
--- a/example/word_count3/ppe/Exec.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_HELLO -#define INCLUDED_TASK_HELLO - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/ppe/Hello.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -#include <stdio.h> -#include "SchedTask.h" -#include "Hello.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Hello); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - - s->printf("Hello, World!!\n"); - - return 0; -}
--- a/example/word_count3/ppe/Hello.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_HELLO -#define INCLUDED_TASK_HELLO - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/ppe/Print.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Print.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Print); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - unsigned long long *idata = (unsigned long long*)s->get_input(rbuf, 0); - long task_num = (long)s->get_param(0); - long status_num = (long)s->get_param(1); - unsigned long long word_data[task_num]; - - s->printf("start sum\n"); - - for (int i = 0; i < status_num; i++) { - word_data[i] = 0; - } - - for (int i = 0; i < task_num*status_num; i += status_num) { - for (int j = 0; j < status_num; j++) { - word_data[j] += idata[i+j]; - } - } - - for (int i = 0; i < status_num; i++) { - s->printf("%llu ",word_data[i]); - } - - s->printf("\n"); - - - return 0; -}
--- a/example/word_count3/ppe/Print.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_PRINT -#define INCLUDED_TASK_PRINT - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/ppe/RunFinish.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ -#include "RunFinish.h" - -/* 綽 */ -SchedDefineTask(RunFinish); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - return 0; -}
--- a/example/word_count3/ppe/RunFinish.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_RUNFINISH -#define INCLUDED_TASK_RUNFINISH - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/ppe/Wait.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ -#include <stdio.h> -#include "SchedTask.h" -#include "Wait.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Wait); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - return 0; -}
--- a/example/word_count3/ppe/Wait.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_WAIT -#define INCLUDED_TASK_WAIT - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/ppe/task_init.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -#include "Func.h" -#include "Scheduler.h" - -/* 綽篏臀吾 */ -SchedExternTask(Print); -SchedExternTask(Exec); -SchedExternTask(Hello); -SchedExternTask(Wait); - -/** - * ∽違 ../spe/spe-main c - * у若喝冴違∽違 - * 絅純∽医сk (SchedRegisterTask 綽) - */ -void -task_init(void) -{ - SchedRegisterTask(PRINT_TASK, Print); - SchedRegisterTask(EXEC_TASK, Exec); - SchedRegisterTask(HELLO_TASK, Hello); - SchedRegisterTask(WAIT_TASK, Wait); -}
--- a/example/word_count3/spe/Exec.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Exec.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Exec); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - char *i_data = (char*)s->get_input(rbuf, 0); - unsigned long long *o_data = (unsigned long long*)s->get_output(wbuf, 0); - int length = (long)s->get_param(0); - int word_flag = (long)s->get_param(1); - int word_num = 0; - int line_num = 0; - int i; - - /*絖障с蕋吟若*/ - for(i = 0; i < length; i++) { - if ((i_data[i] != 0x20) && (i_data[i] != 0x0A)) { - //s->printf("[SPE%d] break[%d] %d\n",id,i,i_data[i]); - break; - } - //s->printf("[SPE%d]%c",id,i_data[start_num]); - word_num += word_flag; - word_flag = 0; - line_num += (i_data[i] == 0x0A); - } - - word_flag = 0; - - for (; i < length; i++) { - - //s->printf("[SPE%d]%c",id,i_data[i]); - - - if (i_data[i] == 0x20) { - //s->printf("鴻若\n"); - word_flag = 1; - } - - else if (i_data[i] == 0x0A) { - //s->printf("壕\n"); - line_num += 1; - word_flag = 1; - } - - else { - word_num += word_flag; - word_flag = 0; - } - - } - - word_num += word_flag; - - //s->printf("%d %d\n",word_num,line_num); - - o_data[0] = (unsigned long long)word_num; - o_data[1] = (unsigned long long)line_num; - - return 0; -}
--- a/example/word_count3/spe/Exec.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_HELLO -#define INCLUDED_TASK_HELLO - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/spe/Hello.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ -#include <stdio.h> -#include "SchedTask.h" -#include "Hello.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Hello); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - printf("Hello, World!!\n"); - - return 0; -}
--- a/example/word_count3/spe/Hello.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_HELLO -#define INCLUDED_TASK_HELLO - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/spe/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -include ../Makefile.def - -TARGET = ../spe-main - -SRCS_TMP = $(wildcard *.cc) -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -CC = spu-g++ -CFLAGS = -g -Wall -fno-exceptions -fno-rtti #-DDEBUG -INCLUDE = -I../${CERIUM}/include/TaskManager -I. -I.. -LIBS = -L../${CERIUM}/TaskManager -lspemanager - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -clean: - rm -f $(TARGET) $(OBJS) - rm -f *~ \#* \ No newline at end of file
--- a/example/word_count3/spe/Print.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,35 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Print.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Print); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - unsigned long long *idata = (unsigned long long*)s->get_input(rbuf, 0); - int task_num = (long)s->get_param(0); - int status_num = (long)s->get_param(1); - unsigned long long word_data[task_num]; - - for (int i = 0; i < status_num; i++) { - word_data[i] = 0; - } - - for (int i = 0; i < task_num*status_num; i += status_num) { - for (int j = 0; j < status_num; j++) { - word_data[j] += idata[i+j]; - } - } - - for (int i = 0; i < status_num; i++) { - s->printf("%llu ",word_data[i]); - } - - s->printf("\n"); - - - return 0; -}
--- a/example/word_count3/spe/Print.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_PRINT -#define INCLUDED_TASK_PRINT - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/spe/Wait.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ -#include <stdio.h> -#include "SchedTask.h" -#include "Wait.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Wait); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - return 0; -}
--- a/example/word_count3/spe/Wait.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_WAIT -#define INCLUDED_TASK_WAIT - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count3/spe/spe-main.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -#include "Func.h" -#include "Scheduler.h" - -SchedExternTask(Hello); -SchedExternTask(Wait); -SchedExternTask(Exec); -SchedExternTask(Print); - -/** - * ∽違 SpeScheduler 若違 - * 綽∽医с蕁障 - */ -void -task_init(Scheduler *s) -{ - SchedRegisterTask(HELLO_TASK, Hello); - SchedRegisterTask(WAIT_TASK, Wait); - SchedRegisterTask(EXEC_TASK, Exec); - SchedRegisterTask(PRINT_TASK, Print); -}
--- a/example/word_count_run16array/Func.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -enum { -#include "SysTasks.h" - TASK_EXEC, - RUN_TASK_BLOCKS, - TASK_PRINT, - RUN_FINISH, -}; - -#define DATA_NUM 12 -#define ADD_NUM 26 - -#define DATA_ID 0
--- a/example/word_count_run16array/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -default: macosx - -macosx: FORCE - @echo "Make for Mac OS X" - @$(MAKE) -f Makefile.macosx - -linux: FORCE - @echo "Make for Linux" - @$(MAKE) -f Makefile.linux - -cell: FORCE - @echo "Make for CELL (Cell)" - @$(MAKE) -f Makefile.cell - -FORCE: - -clean: - @$(MAKE) -f Makefile.macosx clean - @$(MAKE) -f Makefile.linux clean - @$(MAKE) -f Makefile.cell clean \ No newline at end of file
--- a/example/word_count_run16array/Makefile.cell Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lCellManager -lspe2 -lpthread -Wl,--gc-sections - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) speobject - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -speobject: - cd spe; $(MAKE) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo ppu-gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - cd spe; $(MAKE) clean
--- a/example/word_count_run16array/Makefile.def Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -TARGET = word_count - -# include/library path -# ex macosx -#CERIUM = /Users/gongo/Source/Cerium - -# ex linux/ps3 -CERIUM = ../../../Cerium - - -#OPT = -O9 -OPT = -g - -CC = g++ -CFLAGS = -Wall $(OPT) - -INCLUDE = -I${CERIUM}/include/TaskManager -I. -I.. -LIBS = -L${CERIUM}/TaskManager
--- a/example/word_count_run16array/Makefile.linux Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lFifoManager - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - rm -f spe/*~ spe/\#*
--- a/example/word_count_run16array/Makefile.macosx Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lFifoManager `sdl-config --libs` -CC += -m32 - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - rm -f spe/*~ spe/\#*
--- a/example/word_count_run16array/README Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,59 +0,0 @@ -/* - * $Id: README,v 1.3 2008/10/20 08:49:52 gongo Exp $ - */ - -- 概要 -Task の依存関係を設定する例題 - -タスクは二種類あって - -配列 idata があるとする (サイズは length*2) - -Exec: idata を length の前後に分けて受け取り、各要素に値を加算 - 半分に分けるため、今回はこのタスクを 2 つに固定。 - まあ3つ以上でもいいんだけどね。 - -Print: idata を表示する。 - - -依存関係としては、まずは Exec を先に実行しないといけないので - -------------> 時間 - -Exec 1 - \ - Print - / -Exec 2 - - -みたいな感じ。 -この依存を設定しないと、Print は Exec1,2 が計算する前の -idata を詠んでしまう可能性がある。 - - -- 実行方法 - -% ./dependency [-cpu spe_num] [-nodepend] - - -cpu SPU の数 - -nodepend Exec と Print に依存を設定しない - - -- 実行例 - -%./dependency -[TASK_PRINT] -13 13 13 13 13 13 13 13 13 13 13 13 26 26 26 26 26 26 26 26 26 26 26 26 - -%./dependency -nodepend -[TASK_PRINT] - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - -上の場合、Exec 1, 2 の処理結果が PPE の idata に書き込まれる前に -Print が idata から DMA でデータを取ってきて表示しているために -全て 0 になっている。 -このタスクが全て同じ SPE 上で実行されているとして、 -Exec 1, 2 のあと、Print の DMA read が実行される前に -Exec 1, 2 の DMA write が済んでいればもしかしたらデータが取れるかもしれない。 -しかし「もしかしたら」では使いものにならないので、依存を設定するわけです。 \ No newline at end of file
--- a/example/word_count_run16array/WordCount.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ - -typedef struct wordCount { - struct wordCount *self; - int size; // remaining file size - int division_size; // for each word count task - int division_out_size; - int out_size; - int task_num; // remaining task count - int task_blocks; // spawn task one at a time - int status_num; - int task_spwaned; - unsigned long long *o_data; - unsigned long long *head_tail_flag; - int out_task_num; - int pad; - char * file_mmap; - HTaskPtr t_print; -} WordCount; -
--- a/example/word_count_run16array/main.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,243 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/mman.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <unistd.h> -#include "TaskManager.h" -#include "SchedTask.h" -#include "Func.h" -#include "WordCount.h" - -extern void task_init(); - -const char *usr_help_str = "Usage: ./word_count [-cpu spe_num] [-file filename]\n"; - -typedef struct { - caddr_t file_mmap; - off_t size; -} st_mmap_t; - - - -/*筝sizefix_byte_size違(筝吾莨若c鐚)*/ -static int -fix_byte(int size,int fix_byte_size) -{ - size = (size/fix_byte_size)*fix_byte_size + ((size%fix_byte_size)!= 0)*fix_byte_size; - - return size; -} - - -static st_mmap_t -my_mmap(char *filename) -{ - - /*潟違!*/ - int fd = -1; - int map = MAP_PRIVATE; - st_mmap_t st_mmap; - struct stat sb; - - if ((fd=open(filename,O_RDONLY,0666))==0) { - fprintf(stderr,"can't open %s\n",filename); - } - - if (fstat(fd,&sb)) { - fprintf(stderr,"can't fstat %s\n",filename); - } - - printf("file size %d\n",(int)sb.st_size); - - /*size若吾潟違泣ゃ冴違*/ - st_mmap.size = fix_byte(sb.st_size,4096); - - printf("fix 4096byte file size %d\n",(int)st_mmap.size); - - st_mmap.file_mmap = (char*)mmap(NULL,st_mmap.size,PROT_READ,map,fd,(off_t)0); - if (st_mmap.file_mmap == (caddr_t)-1) { - fprintf(stderr,"Can't mmap file\n"); - perror(NULL); - exit(0); - } - - return st_mmap; - -} - -static void -run_tasks(SchedTask *manager, WordCount *w, int task_count, HTaskPtr t_next, int size) -{ - - int array_task_num = 8; - if (task_count < array_task_num) { - array_task_num = task_count; - } - - for (int i = 0; i < task_count; i += array_task_num) { - - HTask *task_array = manager->create_task_array(TASK_EXEC,array_task_num,0,1,1); - t_next->wait_for(task_array); - - Task *t_exec = 0; - for (int j = 0; j < array_task_num; j++) { - int i = w->task_spwaned++; - - t_exec = task_array->next_task_array(TASK_EXEC,t_exec); - t_exec->set_inData(0,w->file_mmap + i*w->division_size, size); - t_exec->set_outData(0,w->o_data + i*w->out_size, w->division_out_size); - t_exec->set_param(0,size); - - w->size -= size; - w->task_num--; - } - - task_array->spawn_task_array(t_exec->next()); - task_array->set_cpu(SPE_ANY); - task_array->spawn(); - } -} - -SchedDefineTask1(RUN_TASK_BLOCKS,run16); - -static int -run16(SchedTask *manager, void *in, void *out) -{ - WordCount *w = *(WordCount **)in; - - if (w->task_num < w->task_blocks) { - if (w->size >= w->division_size) - run_tasks(manager,w,w->task_num, w->t_print, w->division_size); - while (w->size>0) - run_tasks(manager,w,1, w->t_print, w->size); - // printf("run16 last %d\n",w->task_num); - } else { - HTaskPtr t_next = manager->create_task(RUN_TASK_BLOCKS, - (memaddr)&w->self,sizeof(memaddr),0,0); - w->t_print->wait_for(t_next); - - run_tasks(manager,w, w->task_blocks, t_next, w->division_size); - - t_next->spawn(); - // printf("run16 next %d\n",w->task_num); - } - return 0; -} - - -static int blocks = 48; -static int division = 16; // in Kbyte -static int profile = 0; - -static void -run_start(TaskManager *manager, char *filename) -{ - HTaskPtr t_print; - - st_mmap_t st_mmap; - st_mmap = my_mmap(filename); - WordCount *w = (WordCount*)manager->allocate(sizeof(WordCount)); - // bzero(w,sizeof(WordCount)); - - w->self = w; - w->task_blocks = blocks; - w->task_spwaned = 0; - - /*sizedivision_size違*/ - w->size = st_mmap.size; - w->file_mmap = st_mmap.file_mmap; - - /* 1task若帥泣ゃ(byte) */ - if (w->size >= 1024*division) { - w->division_size = 1024 * division;/*16kbyte*/ - } else { - w->division_size = w->size; - } - - printf("dvision_size %d\n",w->division_size); - - /* "word num" and "line num" */ - w->status_num = 2; - /* task */ - w->task_num = w->size / w->division_size; - w->task_num = w->task_num + (w->division_size*w->task_num < w->size); - int out_task_num = w->task_num; - - w->out_task_num = out_task_num; - printf("task_num %d\n",w->task_num); - printf("out_task_num %d\n",w->out_task_num); - - /* outdivision_size. status2ゃс16bytelong long(8byte)篏睡 */ - - w->division_out_size = sizeof(unsigned long long)*4; - int out_size = w->division_out_size*out_task_num; - w->o_data = (unsigned long long *)manager->allocate(out_size); - w->out_size = 4; - printf("out size %d\n",out_size); - - /*SPE腟荐阪帥鴻*/ - - t_print = manager->create_task(TASK_PRINT, - (memaddr)&w->self,sizeof(memaddr),0,0); - - w->t_print = t_print; - - for(int i = 0;i<1;i++) { - /* Task task_blocks よ儀 Task */ - /* serialize 篁絎... */ - HTaskPtr t_exec = manager->create_task(RUN_TASK_BLOCKS, - (memaddr)&w->self,sizeof(memaddr),0,0); - t_print->wait_for(t_exec); - t_exec->spawn(); - } - - t_print->spawn(); -} - -static char* -init(int argc, char **argv) -{ - - char *filename = 0; - - for (int i = 1; argv[i]; ++i) { - if (strcmp(argv[i], "-file") == 0) { - filename = argv[i+1]; - } else if (strcmp(argv[i], "-division") == 0) { - division = atoi(argv[i+1]); - } else if (strcmp(argv[i], "-block") == 0) { - blocks = atoi(argv[i+1]); - } else if (strcmp(argv[i], "-p") == 0) { - profile = 1; - } - } - if (filename==0) { - printf("usage: %s [-block 10] -file filename\n",argv[0]); - exit(1); - } - - return filename; -} - - -int -TMmain(TaskManager *manager, int argc, char *argv[]) -{ - - char *filename = 0; - filename = init(argc, argv); - - if (filename < 0) { - return -1; - } - - task_init(); - run_start(manager, filename); - - return 0; -} - -/* end */
--- a/example/word_count_run16array/ppe/Exec.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Exec.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Exec); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - char *i_data = (char *)rbuf; - unsigned long long *o_data = (unsigned long long*)wbuf; - unsigned long long *head_tail_flag = o_data +2; - int length = (int)s->get_param(0); - int word_flag = 0; - int word_num = 0; - int line_num = 0; - int i = 0; - - head_tail_flag[0] = (i_data[0] != 0x20) && (i_data[0] != 0x0A); - word_num -= 1-head_tail_flag[0]; - - for (; i < length; i++) { - if (i_data[i] == 0x20) { - word_flag = 1; - } else if (i_data[i] == 0x0A) { - line_num += 1; - word_flag = 1; - } else { - word_num += word_flag; - word_flag = 0; - } - } - - word_num += word_flag; - head_tail_flag[1] = (i_data[i-1] != 0x20) && (i_data[i-1] != 0x0A); - - // s->printf("SPE word %d line %d\n",word_num,line_num); - - o_data[0] = (unsigned long long)word_num; - o_data[1] = (unsigned long long)line_num; - - return 0; -}
--- a/example/word_count_run16array/ppe/Exec.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_HELLO -#define INCLUDED_TASK_HELLO - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count_run16array/ppe/Print.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,92 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Print.h" -#include "Func.h" -#include "WordCount.h" - -/* 綽 */ -SchedDefineTask1(Print,run_print); - -static int -run_print(SchedTask *s, void *rbuf, void *wbuf) -{ - WordCount *w = *(WordCount**)rbuf; - unsigned long long *idata = w->o_data; - // long task_num = w->task_num; - long status_num = w->status_num; - int out_task_num = w->out_task_num; - - /* - * head_flag - * o_data[0] - * o_data[1] - * - */ - unsigned long long word_data[2]; - - int flag_cal_sum = 0; - //printf("pad %d\n",pad); - - - /* head_tail_flag : task = 2 : 1 - * - * head_tail_flag[2] - * ___________ __________ - * | | | - * | head_flag | tail_fag | - * |___________|__________| - * [0] [1] - * - * |----------------------| - * unsigned long long - * 16byte - * - * head_flag 帥 - * 絨障 tail_flag 帥 - * 綵膀峨絨丈絖壕鴻若剛札紊(tail_flag = 1)с - * 綵膀蚊絖壕鴻若鴻(head_flag = 0)翫 - * 茯違 +1 с翫с - * - * ex. - * task_num 4 - * head_tail_flag[8] - * - * 0 1 2 3 4 5 6 7 - * ___ ___ ___ ___ ___ ___ ___ ___ - * | h | t | h | t | h | t | h | t | - * |___|___|___|___|___|___|___|___| - * |-------|-------|-------| - * 罸莠 罸莠 罸莠 - * - */ - - s->printf("start sum\n"); - - for (int i = 0; i < status_num; i++) { - word_data[i] = 0; - } - - for (int i = 0; i < out_task_num ; i++) { - word_data[0] += idata[i*w->out_size+0]; - word_data[1] += idata[i*w->out_size+1]; - unsigned long long *head_tail_flag = - &idata[i*w->out_size+2]; - if((i!=out_task_num-1)&& - (head_tail_flag[1] == 1) && (head_tail_flag[4] == 0)) { - flag_cal_sum++; - } - } - - word_data[0] += flag_cal_sum; - - for (int i = status_num-1; i >=0; i--) { - s->printf("%llu ",word_data[i]); - } - - //printf("j = %d\n",j); - - - s->printf("\n"); - - return 0; -}
--- a/example/word_count_run16array/ppe/Print.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_PRINT -#define INCLUDED_TASK_PRINT - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count_run16array/ppe/RunFinish.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ -#include "RunFinish.h" - -/* 綽 */ -SchedDefineTask(RunFinish); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - return 0; -}
--- a/example/word_count_run16array/ppe/RunFinish.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_RUNFINISH -#define INCLUDED_TASK_RUNFINISH - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count_run16array/ppe/task_init.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -#include "Func.h" -#include "Scheduler.h" - -/* 綽篏臀吾 */ -SchedExternTask(Print); -SchedExternTask(Exec); -SchedExternTask(RUN_TASK_BLOCKS); -SchedExternTask(RunFinish); - -/** - * ∽違 ../spe/spe-main c - * у若喝冴違∽違 - * 絅純∽医сk (SchedRegisterTask 綽) - */ -void -task_init(void) -{ - SchedRegisterTask(TASK_PRINT, Print); - SchedRegisterTask(TASK_EXEC, Exec); - SchedRegister(RUN_TASK_BLOCKS); - SchedRegisterTask(RUN_FINISH, RunFinish); -}
--- a/example/word_count_run16array/spe/Exec.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Exec.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Exec); - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ - char *i_data = (char *)rbuf; - unsigned long long *o_data = (unsigned long long*)wbuf; - unsigned long long *head_tail_flag = o_data +2; - int length = (int)s->get_param(0); - int word_flag = 0; - int word_num = 0; - int line_num = 0; - int i = 0; - - head_tail_flag[0] = (i_data[0] != 0x20) && (i_data[0] != 0x0A); - word_num -= 1-head_tail_flag[0]; - - for (; i < length; i++) { - if (i_data[i] == 0x20) { - word_flag = 1; - } else if (i_data[i] == 0x0A) { - line_num += 1; - word_flag = 1; - } else { - word_num += word_flag; - word_flag = 0; - } - } - - word_num += word_flag; - head_tail_flag[1] = (i_data[i-1] != 0x20) && (i_data[i-1] != 0x0A); - - // s->printf("SPE word %d line %d\n",word_num,line_num); - - o_data[0] = (unsigned long long)word_num; - o_data[1] = (unsigned long long)line_num; - - return 0; -}
--- a/example/word_count_run16array/spe/Exec.cc.vector Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Exec.h" -#include "Func.h" - -/* 綽 */ -SchedDefineTask(Exec); - -typedef char *cvector __attribute__ ((vector_size (16))); -// vectorize 腟... -// -// typedef char *cvector; - -static int -run(SchedTask *s, void *rbuf, void *wbuf) -{ -#ifdef SIMPLE_TASK - cvector i_data = (cvector)rbuf; - char* i_data0 = (char*)rbuf; - unsigned long long *o_data = (unsigned long long*)wbuf; - unsigned long long *head_tail_flag = o_data +2; - int length = s->read_size(); -#else - cvector i_data = (cvector)s->get_input(rbuf, 0); - char* i_data0 = (char*)s->get_input(rbuf, 0); - unsigned long long *o_data = (unsigned long long*)s->get_output(wbuf, 0); - /*綵膀蚊絨障壕鴻若鴻篁ュ絖*/ - unsigned long long *head_tail_flag = (unsigned long long*)s->get_output(wbuf,1); - int length = (long)s->get_param(0); -#endif - - static const char spaces[] = {0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20} ; - cvector const space = (cvector)spaces; - static const char newlines[] = {0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a,0x0a}; - cvector const newline = (cvector)newlines; - - int word_flag = 0; - int word_num = 0; - int line_num = 0; - int i = 0; - - /*絖1,鴻若鴻壕0*/ - char top = i_data0[0]; - head_tail_flag[0] = ((top != 0x20) && (top != 0x0a)); - word_num -= 1-head_tail_flag[0]; - - for (; i < length; i++) { - if (i_data[i] == space[i%16]) { - //s->printf("鴻若\n"); - word_flag = 1; - } else if (i_data[i] == newline[i%16]) { - //s->printf("壕\n"); - line_num += 1; - word_flag = 1; - } else { - word_num += word_flag; - word_flag = 0; - } - } - - word_num += word_flag; - /*絖1,鴻若鴻壕0*/ - //printf("last word %c",i_data[i-1]); - char end = i_data0[i-1]; - head_tail_flag[1] = ((end != 0x20) && (end != 0x0a)); - - // s->printf("SPU word %d line %d\n",word_num,line_num); - - o_data[0] = (unsigned long long)word_num; - o_data[1] = (unsigned long long)line_num; - - return 0; -}
--- a/example/word_count_run16array/spe/Exec.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_HELLO -#define INCLUDED_TASK_HELLO - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count_run16array/spe/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -include ../Makefile.def - -TARGET = ../spe-main - -SRCS_TMP = $(wildcard *.cc) -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -CC = spu-g++ -CFLAGS = -Wall -fno-exceptions -fno-rtti $(OPT) -INCLUDE = -I../${CERIUM}/include/TaskManager -I. -I.. -LIBS = -L../${CERIUM}/TaskManager -lspemanager - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -clean: - rm -f $(TARGET) $(OBJS) - rm -f *~ \#*
--- a/example/word_count_run16array/spe/Print.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,92 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include "Print.h" -#include "Func.h" -#include "WordCount.h" - -/* 綽 */ -SchedDefineTask1(Print,run_print); - -static int -run_print(SchedTask *s, void *rbuf, void *wbuf) -{ - WordCount *w = *(WordCount**)rbuf; - unsigned long long *idata = w->o_data; - // long task_num = w->task_num; - long status_num = w->status_num; - int out_task_num = w->out_task_num; - - /* - * head_flag - * o_data[0] - * o_data[1] - * - */ - unsigned long long word_data[2]; - - int flag_cal_sum = 0; - //printf("pad %d\n",pad); - - - /* head_tail_flag : task = 2 : 1 - * - * head_tail_flag[2] - * ___________ __________ - * | | | - * | head_flag | tail_fag | - * |___________|__________| - * [0] [1] - * - * |----------------------| - * unsigned long long - * 16byte - * - * head_flag 帥 - * 絨障 tail_flag 帥 - * 綵膀峨絨丈絖壕鴻若剛札紊(tail_flag = 1)с - * 綵膀蚊絖壕鴻若鴻(head_flag = 0)翫 - * 茯違 +1 с翫с - * - * ex. - * task_num 4 - * head_tail_flag[8] - * - * 0 1 2 3 4 5 6 7 - * ___ ___ ___ ___ ___ ___ ___ ___ - * | h | t | h | t | h | t | h | t | - * |___|___|___|___|___|___|___|___| - * |-------|-------|-------| - * 罸莠 罸莠 罸莠 - * - */ - - s->printf("start sum\n"); - - for (int i = 0; i < status_num; i++) { - word_data[i] = 0; - } - - for (int i = 0; i < out_task_num ; i++) { - word_data[0] += idata[i*w->out_size+0]; - word_data[1] += idata[i*w->out_size+1]; - unsigned long long *head_tail_flag = - &idata[i*w->out_size+2]; - if((i!=out_task_num-1)&& - (head_tail_flag[1] == 1) && (head_tail_flag[4] == 0)) { - flag_cal_sum++; - } - } - - word_data[0] += flag_cal_sum; - - for (int i = status_num-1; i >=0; i--) { - s->printf("%llu ",word_data[i]); - } - - //printf("j = %d\n",j); - - - s->printf("\n"); - - return 0; -}
--- a/example/word_count_run16array/spe/Print.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -#ifndef INCLUDED_TASK_PRINT -#define INCLUDED_TASK_PRINT - -#ifndef INCLUDED_SCHED_TASK -# include "SchedTask.h" -#endif - - -#endif
--- a/example/word_count_run16array/spe/spe-main.cc Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -#include "Func.h" -#include "SchedTask.h" - -SchedExternTask(Print); -SchedExternTask(Exec); - -/** - * ∽違 SpeScheduler 若違 - * 綽∽医с蕁障 - */ -void -task_init(Scheduler *s) -{ - SchedRegisterTask(TASK_PRINT, Print); - SchedRegisterTask(TASK_EXEC, Exec); -}
--- a/example/word_count_test/Func.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -enum { -#include "SysTasks.h" - TASK_EXEC, - RUN_TASK_BLOCKS, - TASK_PRINT, - RUN_FINISH, -}; - -#define DATA_NUM 12 -#define ADD_NUM 26 - -#define DATA_ID 0
--- a/example/word_count_test/Makefile Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -default: macosx - -macosx: FORCE - @echo "Make for Mac OS X" - @$(MAKE) -f Makefile.macosx - -fifo64: FORCE - @echo "Make for Mac OS X 64bit mode" - @$(MAKE) -f Makefile.fifo ABIBIT=64 - -linux: FORCE - @echo "Make for Linux" - @$(MAKE) -f Makefile.linux - -cell: FORCE - @echo "Make for CELL (Cell)" - @$(MAKE) -f Makefile.cell - -FORCE: - -clean: - @$(MAKE) -f Makefile.macosx clean - @$(MAKE) -f Makefile.linux clean - @$(MAKE) -f Makefile.cell clean \ No newline at end of file
--- a/example/word_count_test/Makefile.cell Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lCellManager -lspe2 -lpthread -Wl,--gc-sections - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) speobject - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -speobject: - cd spe; $(MAKE) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo ppu-gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - cd spe; $(MAKE) clean
--- a/example/word_count_test/Makefile.def Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -TARGET = word_count - -# include/library path -# ex macosx -#CERIUM = /Users/gongo/Source/Cerium - -# ex linux/ps3 -CERIUM = ../../../Cerium - - -OPT = -O9 -# OPT = -g - -CC = g++ -CFLAGS = -Wall $(OPT) - -INCLUDE = -I${CERIUM}/include/TaskManager -I. -I.. -LIBS = -L${CERIUM}/TaskManager
--- a/example/word_count_test/Makefile.linux Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lFifoManager - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - rm -f spe/*~ spe/\#*
--- a/example/word_count_test/Makefile.macosx Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -include ./Makefile.def - -SRCS_TMP = $(wildcard *.cc) -SRCS_EXCLUDE = # 除外するファイルを書く -SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) -OBJS = $(SRCS:.cc=.o) - -TASK_DIR = ppe -TASK_SRCS_TMP = $(wildcard $(TASK_DIR)/*.cc) -TASK_SRCS_EXCLUDE = -TASK_SRCS = $(filter-out $(TASK_DIR)/$(TASK_SRCS_EXCLUDE),$(TASK_SRCS_TMP)) -TASK_OBJS = $(TASK_SRCS:.cc=.o) - -LIBS += -lFifoManager `sdl-config --libs` -CC += -m32 - -.SUFFIXES: .cc .o - -.cc.o: - $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ - -all: $(TARGET) - -$(TARGET): $(OBJS) $(TASK_OBJS) - $(CC) -o $@ $(OBJS) $(TASK_OBJS) $(LIBS) - -link: - $(CC) -o $(TARGET) $(OBJS) $(TASK_OBJS) $(LIBS) - -debug: $(TARGET) - sudo gdb ./$(TARGET) - -clean: - rm -f $(TARGET) $(OBJS) $(TASK_OBJS) - rm -f *~ \#* - rm -f ppe/*~ ppe/\#* - rm -f spe/*~ spe/\#*
--- a/example/word_count_test/README Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,59 +0,0 @@ -/* - * $Id: README,v 1.3 2008/10/20 08:49:52 gongo Exp $ - */ - -- 概要 -Task の依存関係を設定する例題 - -タスクは二種類あって - -配列 idata があるとする (サイズは length*2) - -Exec: idata を length の前後に分けて受け取り、各要素に値を加算 - 半分に分けるため、今回はこのタスクを 2 つに固定。 - まあ3つ以上でもいいんだけどね。 - -Print: idata を表示する。 - - -依存関係としては、まずは Exec を先に実行しないといけないので - -------------> 時間 - -Exec 1 - \ - Print - / -Exec 2 - - -みたいな感じ。 -この依存を設定しないと、Print は Exec1,2 が計算する前の -idata を詠んでしまう可能性がある。 - - -- 実行方法 - -% ./dependency [-cpu spe_num] [-nodepend] - - -cpu SPU の数 - -nodepend Exec と Print に依存を設定しない - - -- 実行例 - -%./dependency -[TASK_PRINT] -13 13 13 13 13 13 13 13 13 13 13 13 26 26 26 26 26 26 26 26 26 26 26 26 - -%./dependency -nodepend -[TASK_PRINT] - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - -上の場合、Exec 1, 2 の処理結果が PPE の idata に書き込まれる前に -Print が idata から DMA でデータを取ってきて表示しているために -全て 0 になっている。 -このタスクが全て同じ SPE 上で実行されているとして、 -Exec 1, 2 のあと、Print の DMA read が実行される前に -Exec 1, 2 の DMA write が済んでいればもしかしたらデータが取れるかもしれない。 -しかし「もしかしたら」では使いものにならないので、依存を設定するわけです。 \ No newline at end of file
--- a/example/word_count_test/WordCount.h Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -#include "TaskManager.h" - -typedef struct wordCount { - struct wordCount *self; - int size; // remaining file size - int division_size; // for each word count task - int division_out_size; - int out_size; - int task_num; // remaining task count - int task_blocks; // spawn task one at a time - int status_num; - int task_spwaned; - unsigned long long *o_data; - unsigned long long *head_tail_flag; - int out_task_num; - int pad; - char * file_mmap; - HTaskPtr t_print; - int waiting; - int pipeline_count; - HTaskPtr *wait_list; -} WordCount; - -static inline HTask * -next_wait_task(WordCount *w, HTask *next) -{ - w->waiting = (w->waiting+1)%w->pipeline_count; - HTask *wait = w->wait_list[w->waiting]; - w->wait_list[w->waiting] = next; - return wait; -} - -static inline void -set_pipeline_count(WordCount *w, TaskManager *m, int p) -{ - w->pipeline_count = p; - w->wait_list = (HTaskPtr *)m->allocate(sizeof(HTaskPtr)*p); - bzero(w->wait_list,sizeof(HTaskPtr)*p); -} -
--- a/example/word_count_test/a.txt Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ -aaa -aaa -aaa -aaa -aaa - - - - - -
--- a/example/word_count_test/c.txt Sun Aug 01 19:29:27 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,95392 +0,0 @@ -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These groups have vowed to help Pakistan's military in fighting the Taliban. - -"I'm doing it for peace," Zaid said, right before he fired several shots in the air with his rifle. - -Pakistani military officials credit the lashkars with helping chase the Taliban out of Swat Valley and neighboring districts once infested with the militants. -Pakistan who've volunteered to join private militias, called lashkars. These