Index: arch/amd64/src/debugger.c
===================================================================
--- arch/amd64/src/debugger.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/amd64/src/debugger.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -232,12 +232,12 @@
 			if (*((__native *) breakpoints[slot].address) != 0)
 				return;
-			printf("**** Found ZERO on address %P ****\n",
+			printf("**** Found ZERO on address %p ****\n",
 			       slot, breakpoints[slot].address);
 		} else {
-			printf("Data watchpoint - new data: %P\n",
+			printf("Data watchpoint - new data: %p\n",
 			       *((__native *) breakpoints[slot].address));
 		}
 	}
-	printf("Reached breakpoint %d:%P(%s)\n", slot, getip(istate),
+	printf("Reached breakpoint %d:%p(%s)\n", slot, getip(istate),
 	       get_symtab_entry(getip(istate)));
 	printf("***Type 'exit' to exit kconsole.\n");
Index: arch/ia32/src/interrupt.c
===================================================================
--- arch/ia32/src/interrupt.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ia32/src/interrupt.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -62,13 +62,13 @@
 		printf("----------------EXCEPTION OCCURED----------------\n");
 		
-	printf("%%eip: %#X (%s)\n",istate->eip,symbol);
-	printf("ERROR_WORD=%#X\n", istate->error_word);
-	printf("%%cs=%#X,flags=%#X\n", istate->cs, istate->eflags);
-	printf("%%eax=%#X, %%ecx=%#X, %%edx=%#X, %%esp=%#X\n",  istate->eax,istate->ecx,istate->edx,&istate->stack[0]);
+	printf("%%eip: %#x (%s)\n",istate->eip,symbol);
+	printf("ERROR_WORD=%#x\n", istate->error_word);
+	printf("%%cs=%#x,flags=%#x\n", istate->cs, istate->eflags);
+	printf("%%eax=%#x, %%ecx=%#x, %%edx=%#x, %%esp=%#x\n",  istate->eax,istate->ecx,istate->edx,&istate->stack[0]);
 #ifdef CONFIG_DEBUG_ALLREGS
-	printf("%%esi=%#X, %%edi=%#X, %%ebp=%#X, %%ebx=%#X\n",  istate->esi,istate->edi,istate->ebp,istate->ebx);
+	printf("%%esi=%#x, %%edi=%#x, %%ebp=%#x, %%ebx=%#x\n",  istate->esi,istate->edi,istate->ebp,istate->ebx);
 #endif
-	printf("stack: %#X, %#X, %#X, %#X\n", istate->stack[0], istate->stack[1], istate->stack[2], istate->stack[3]);
-	printf("       %#X, %#X, %#X, %#X\n", istate->stack[4], istate->stack[5], istate->stack[6], istate->stack[7]);
+	printf("stack: %#x, %#x, %#x, %#x\n", istate->stack[0], istate->stack[1], istate->stack[2], istate->stack[3]);
+	printf("       %#x, %#x, %#x, %#x\n", istate->stack[4], istate->stack[5], istate->stack[6], istate->stack[7]);
 }
 
@@ -121,5 +121,5 @@
 	if (!as_page_fault(page)) {
 		PRINT_INFO_ERRCODE(istate);
-		printf("page fault address: %#X\n", page);
+		printf("page fault address: %#x\n", page);
 		panic("page fault\n");
 	}
Index: arch/ia32/src/mm/frame.c
===================================================================
--- arch/ia32/src/mm/frame.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ia32/src/mm/frame.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -92,5 +92,5 @@
 		else
 			name = "invalid";
-		printf("%P %#llXB %s\n", 
+		printf("%p %#llXB %s\n", 
 		       (__native) e820table[i].base_address, 
 		       (__u64) e820table[i].size,
Index: arch/ia32/src/smp/mps.c
===================================================================
--- arch/ia32/src/smp/mps.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ia32/src/smp/mps.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -188,5 +188,5 @@
 	
 fs_found:
-	printf("%P: MPS Floating Pointer Structure\n", fs);
+	printf("%p: MPS Floating Pointer Structure\n", fs);
 
 	if (fs->config_type == 0 && fs->configuration_table) {
@@ -407,5 +407,5 @@
 		switch (cur[CT_EXT_ENTRY_TYPE]) {
 			default:
-				printf("%P: skipping MP Configuration Table extended entry type %d\n", cur, cur[CT_EXT_ENTRY_TYPE]);
+				printf("%p: skipping MP Configuration Table extended entry type %d\n", cur, cur[CT_EXT_ENTRY_TYPE]);
 				break;
 		}
Index: arch/ia64/src/interrupt.c
===================================================================
--- arch/ia64/src/interrupt.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ia64/src/interrupt.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -132,12 +132,12 @@
 	putchar('\n');
 	printf("Interrupted context dump:\n");
-	printf("ar.bsp=%P\tar.bspstore=%P\n", istate->ar_bsp, istate->ar_bspstore);
-	printf("ar.rnat=%#llX\tar.rsc=%$llX\n", istate->ar_rnat, istate->ar_rsc);
-	printf("ar.ifs=%#llX\tar.pfs=%#llX\n", istate->ar_ifs, istate->ar_pfs);
-	printf("cr.isr=%#llX\tcr.ipsr=%#llX\t\n", istate->cr_isr.value, istate->cr_ipsr);
+	printf("ar.bsp=%p\tar.bspstore=%p\n", istate->ar_bsp, istate->ar_bspstore);
+	printf("ar.rnat=%#llx\tar.rsc=%$llx\n", istate->ar_rnat, istate->ar_rsc);
+	printf("ar.ifs=%#llx\tar.pfs=%#llx\n", istate->ar_ifs, istate->ar_pfs);
+	printf("cr.isr=%#llx\tcr.ipsr=%#llx\t\n", istate->cr_isr.value, istate->cr_ipsr);
 	
-	printf("cr.iip=%#llX, #%d\t(%s)\n", istate->cr_iip, istate->cr_isr.ei ,iip ? iip : "?");
-	printf("cr.iipa=%#llX\t(%s)\n", istate->cr_iipa, iipa ? iipa : "?");
-	printf("cr.ifa=%#llX\t(%s)\n", istate->cr_ifa, ifa ? ifa : "?");
+	printf("cr.iip=%#llx, #%d\t(%s)\n", istate->cr_iip, istate->cr_isr.ei, iip ? iip : "?");
+	printf("cr.iipa=%#llx\t(%s)\n", istate->cr_iipa, iipa ? iipa : "?");
+	printf("cr.ifa=%#llx\t(%s)\n", istate->cr_ifa, ifa ? ifa : "?");
 }
 
@@ -183,5 +183,5 @@
 #else
 	dump_interrupted_context(istate);
-	panic("Interruption: %#hX (%s)\n", (__u16) vector, vector_to_string(vector));
+	panic("Interruption: %#hx (%s)\n", (__u16) vector, vector_to_string(vector));
 #endif
 }
@@ -218,5 +218,5 @@
 {
 	dump_interrupted_context(istate);
-	panic("Interruption: %#hX (%s)\n", (__u16) vector, vector_to_string(vector));
+	panic("Interruption: %#hx (%s)\n", (__u16) vector, vector_to_string(vector));
 }
 
Index: arch/ia64/src/mm/tlb.c
===================================================================
--- arch/ia64/src/mm/tlb.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ia64/src/mm/tlb.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -449,5 +449,5 @@
 		page_table_unlock(AS, true);
 		if (!as_page_fault(va)) {
-			panic("%s: va=%P, rid=%d, iip=%P\n", __FUNCTION__, istate->cr_ifa, rr.map.rid, istate->cr_iip);
+			panic("%s: va=%p, rid=%d, iip=%p\n", __FUNCTION__, istate->cr_ifa, rr.map.rid, istate->cr_iip);
 		}
 	}
@@ -495,5 +495,5 @@
 		page_table_unlock(AS, true);
 		if (!as_page_fault(va)) {
-			panic("%s: va=%P, rid=%d, iip=%P\n", __FUNCTION__, va, rid, istate->cr_iip);
+			panic("%s: va=%p, rid=%d, iip=%p\n", __FUNCTION__, va, rid, istate->cr_iip);
 		}
 	}
@@ -610,5 +610,5 @@
 		page_table_unlock(AS, true);
 		if (!as_page_fault(va)) {
-			panic("%s: va=%P, rid=%d\n", __FUNCTION__, va, rr.map.rid);
+			panic("%s: va=%p, rid=%d\n", __FUNCTION__, va, rr.map.rid);
 		}
 	}
Index: arch/mips32/src/drivers/arc.c
===================================================================
--- arch/mips32/src/drivers/arc.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/mips32/src/drivers/arc.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -136,5 +136,5 @@
 		switch (configdata->descr[i].type) {
 		case CmResourceTypePort:
-			printf("Port: %P-size:%d ",
+			printf("Port: %p-size:%d ",
 			       (__address)configdata->descr[i].u.port.start,
 			       configdata->descr[i].u.port.length);
@@ -146,5 +146,5 @@
 			break;
 		case CmResourceTypeMemory:
-			printf("Memory: %P-size:%d ",
+			printf("Memory: %p-size:%d ",
 			       (__address)configdata->descr[i].u.port.start,
 			       configdata->descr[i].u.port.length);
@@ -213,5 +213,5 @@
 	desc = arc_entry->getmemorydescriptor(NULL);
 	while (desc) {
-		printf("%s: %d(%P) (size: %dKB)\n",basetypes[desc->type],
+		printf("%s: %d(%p) (size: %dKB)\n",basetypes[desc->type],
 		       desc->basepage * ARC_FRAME,
 		       desc->basepage * ARC_FRAME,
Index: arch/mips32/src/exception.c
===================================================================
--- arch/mips32/src/exception.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/mips32/src/exception.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -74,6 +74,5 @@
 		rasymbol = s;
 	
-	printf("PC: %#X(%s) RA: %#X(%s), SP(%P)\n",istate->epc,pcsymbol,
-	       istate->ra,rasymbol, istate->sp);
+	printf("PC: %#x(%s) RA: %#x(%s), SP(%p)\n", istate->epc, pcsymbol, istate->ra, rasymbol, istate->sp);
 }
 
Index: arch/ppc32/src/mm/memory_init.c
===================================================================
--- arch/ppc32/src/mm/memory_init.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ppc32/src/mm/memory_init.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -44,4 +44,4 @@
 	
 	for (i = 0; i < bootinfo.memmap.count; i++)
-		printf("base: %#X size: %#X\n", bootinfo.memmap.zones[i].start, bootinfo.memmap.zones[i].size);
+		printf("base: %#x size: %#x\n", bootinfo.memmap.zones[i].start, bootinfo.memmap.zones[i].size);
 }
Index: arch/ppc64/src/mm/memory_init.c
===================================================================
--- arch/ppc64/src/mm/memory_init.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/ppc64/src/mm/memory_init.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -44,4 +44,4 @@
 	
 	for (i = 0; i < bootinfo.memmap.count; i++)
-		printf("base: %P size: %#X\n", bootinfo.memmap.zones[i].start, bootinfo.memmap.zones[i].size);
+		printf("base: %p size: %#x\n", bootinfo.memmap.zones[i].start, bootinfo.memmap.zones[i].size);
 }
Index: arch/sparc64/src/mm/tlb.c
===================================================================
--- arch/sparc64/src/mm/tlb.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ arch/sparc64/src/mm/tlb.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -173,6 +173,6 @@
 		tpc_str = get_symtab_entry(tpc);
 
-		printf("Faulting page: %P, ASID=%d\n", tag.vpn * PAGE_SIZE, tag.context);
-		printf("TPC=%P, (%s)\n", tpc, tpc_str ? tpc_str : "?");
+		printf("Faulting page: %p, ASID=%d\n", tag.vpn * PAGE_SIZE, tag.context);
+		printf("TPC=%p, (%s)\n", tpc, tpc_str ? tpc_str : "?");
 		panic("%s\n", __FUNCTION__);
 	}
Index: generic/include/debug.h
===================================================================
--- generic/include/debug.h	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ generic/include/debug.h	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -50,5 +50,5 @@
  */
 #ifdef CONFIG_DEBUG
-#	define ASSERT(expr) if (!(expr)) { panic("assertion failed (%s), caller=%P\n", #expr, CALLER); }
+#	define ASSERT(expr) if (!(expr)) { panic("assertion failed (%s), caller=%p\n", #expr, CALLER); }
 #else
 #	define ASSERT(expr)
Index: generic/src/adt/btree.c
===================================================================
--- generic/src/adt/btree.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ generic/src/adt/btree.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -118,5 +118,5 @@
 	if (!lnode) {
 		if (btree_search(t, key, &lnode)) {
-			panic("B-tree %P already contains key %d\n", t, key);
+			panic("B-tree %p already contains key %d\n", t, key);
 		}
 	}
@@ -201,5 +201,5 @@
 	if (!lnode) {
 		if (!btree_search(t, key, &lnode)) {
-			panic("B-tree %P does not contain key %d\n", t, key);
+			panic("B-tree %p does not contain key %d\n", t, key);
 		}
 	}
@@ -501,5 +501,5 @@
 		}
 	}
-	panic("node %P does not contain key %d\n", node, key);
+	panic("node %p does not contain key %d\n", node, key);
 }
 
@@ -528,5 +528,5 @@
 		}
 	}
-	panic("node %P does not contain key %d\n", node, key);
+	panic("node %p does not contain key %d\n", node, key);
 }
 
@@ -670,5 +670,5 @@
 			return i - (int) (right != false);
 	}
-	panic("node %P does not contain subtree %P\n", node, subtree);
+	panic("node %p does not contain subtree %p\n", node, subtree);
 }
 
Index: generic/src/main/main.c
===================================================================
--- generic/src/main/main.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ generic/src/main/main.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -177,6 +177,5 @@
 
 	version_print();
-	printf("%#zX: hardcoded_ktext_size=%zdK, hardcoded_kdata_size=%zdK\n",
-		config.base, hardcoded_ktext_size/1024, hardcoded_kdata_size/1024);
+	printf("%#zx: hardcoded_ktext_size=%zdK, hardcoded_kdata_size=%zdK\n", config.base, hardcoded_ktext_size / 1024, hardcoded_kdata_size / 1024);
 
 	arch_pre_smp_init();
@@ -197,5 +196,5 @@
 	
 	for (i = 0; i < init.cnt; i++)
-		printf("init[%zd].addr=%P, init[%zd].size=%zd\n", i, init.tasks[i].addr, i, init.tasks[i].size);
+		printf("init[%zd].addr=%p, init[%zd].size=%zd\n", i, init.tasks[i].addr, i, init.tasks[i].size);
 	
 	ipc_init();
Index: generic/src/mm/frame.c
===================================================================
--- generic/src/mm/frame.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ generic/src/mm/frame.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -1029,6 +1029,5 @@
 		zone = zones.info[i];
 		spinlock_lock(&zone->lock);
-		printf("%d: %#X \t%zd\t\t%zd\n",i,PFN2ADDR(zone->base), 
-		       zone->free_count, zone->busy_count);
+		printf("%d: %#x \t%zd\t\t%zd\n", i, PFN2ADDR(zone->base), zone->free_count, zone->busy_count);
 		spinlock_unlock(&zone->lock);
 	}
Index: generic/src/mm/page.c
===================================================================
--- generic/src/mm/page.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ generic/src/mm/page.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -64,9 +64,9 @@
 	int i, cnt, length;
 
-	length = size + (s - (s & ~(PAGE_SIZE-1)));
-	cnt = length/PAGE_SIZE + (length%PAGE_SIZE>0);
+	length = size + (s - (s & ~(PAGE_SIZE - 1)));
+	cnt = length / PAGE_SIZE + (length % PAGE_SIZE > 0);
 
 	for (i = 0; i < cnt; i++)
-		page_mapping_insert(AS_KERNEL, s + i*PAGE_SIZE, s + i*PAGE_SIZE, PAGE_NOT_CACHEABLE);
+		page_mapping_insert(AS_KERNEL, s + i * PAGE_SIZE, s + i * PAGE_SIZE, PAGE_NOT_CACHEABLE);
 
 }
Index: generic/src/proc/scheduler.c
===================================================================
--- generic/src/proc/scheduler.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ generic/src/proc/scheduler.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -634,5 +634,5 @@
 
 		spinlock_lock(&cpus[cpu].lock);
-		printf("cpu%d: address=%P, nrdy=%ld, needs_relink=%ld\n",
+		printf("cpu%d: address=%p, nrdy=%ld, needs_relink=%ld\n",
 		       cpus[cpu].id, &cpus[cpu], atomic_get(&cpus[cpu].nrdy), cpus[cpu].needs_relink);
 		
Index: test/mm/falloc1/test.c
===================================================================
--- test/mm/falloc1/test.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ test/mm/falloc1/test.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -41,6 +41,5 @@
 
 void test(void) {
-	__address * frames = (__address *) malloc(MAX_FRAMES*sizeof(__address),
-						  0);
+	__address * frames = (__address *) malloc(MAX_FRAMES*sizeof(__address), 0);
 	int results[MAX_ORDER+1];
 	
@@ -60,5 +59,5 @@
 				
 				if (ALIGN_UP(frames[allocated], FRAME_SIZE << order) != frames[allocated]) {
-					panic("Test failed. Block at address %P (size %dK) is not aligned\n", frames[allocated], (FRAME_SIZE << order) >> 10);
+					panic("Test failed. Block at address %p (size %dK) is not aligned\n", frames[allocated], (FRAME_SIZE << order) >> 10);
 				}
 				
Index: test/mm/falloc2/test.c
===================================================================
--- test/mm/falloc2/test.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ test/mm/falloc2/test.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -78,5 +78,5 @@
 				for (k = 0; k <= ((FRAME_SIZE << order) - 1); k++) {
 					if (((__u8 *) frames[i])[k] != val) {
-						printf("Thread #%d (cpu%d): Unexpected data (%d) in block %P offset %#zX\n", THREAD->tid, CPU->id, ((char *) frames[i])[k], frames[i], k);
+						printf("Thread #%d (cpu%d): Unexpected data (%d) in block %p offset %#zx\n", THREAD->tid, CPU->id, ((char *) frames[i])[k], frames[i], k);
 						failed();
 					}
Index: test/mm/mapping1/test.c
===================================================================
--- test/mm/mapping1/test.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ test/mm/mapping1/test.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -51,23 +51,23 @@
 	frame1 = PA2KA(PFN2ADDR(frame_alloc(ONE_FRAME, FRAME_KA)));
 
-	printf("Writing %#X to physical address %P.\n", VALUE0, KA2PA(frame0));
+	printf("Writing %#x to physical address %p.\n", VALUE0, KA2PA(frame0));
 	*((__u32 *) frame0) = VALUE0;
-	printf("Writing %#X to physical address %P.\n", VALUE1, KA2PA(frame1));
+	printf("Writing %#x to physical address %p.\n", VALUE1, KA2PA(frame1));
 	*((__u32 *) frame1) = VALUE1;
 	
-	printf("Mapping virtual address %P to physical address %P.\n", PAGE0, KA2PA(frame0));
+	printf("Mapping virtual address %p to physical address %p.\n", PAGE0, KA2PA(frame0));
 	page_mapping_insert(AS_KERNEL, PAGE0, KA2PA(frame0), PAGE_PRESENT | PAGE_WRITE);
-	printf("Mapping virtual address %P to physical address %P.\n", PAGE1, KA2PA(frame1));	
+	printf("Mapping virtual address %p to physical address %p.\n", PAGE1, KA2PA(frame1));	
 	page_mapping_insert(AS_KERNEL, PAGE1, KA2PA(frame1), PAGE_PRESENT | PAGE_WRITE);
 	
-	printf("Value at virtual address %P is %#X.\n", PAGE0, v0 = *((__u32 *) PAGE0));
-	printf("Value at virtual address %P is %#X.\n", PAGE1, v1 = *((__u32 *) PAGE1));
+	printf("Value at virtual address %p is %#x.\n", PAGE0, v0 = *((__u32 *) PAGE0));
+	printf("Value at virtual address %p is %#x.\n", PAGE1, v1 = *((__u32 *) PAGE1));
 	
 	ASSERT(v0 == VALUE0);
 	ASSERT(v1 == VALUE1);
 
-	printf("Writing %#X to virtual address %P.\n", 0, PAGE0);
+	printf("Writing %#x to virtual address %p.\n", 0, PAGE0);
 	*((__u32 *) PAGE0) = 0;
-	printf("Writing %#X to virtual address %P.\n", 0, PAGE1);
+	printf("Writing %#x to virtual address %p.\n", 0, PAGE1);
 	*((__u32 *) PAGE1) = 0;	
 
@@ -75,6 +75,6 @@
 	v1 = *((__u32 *) PAGE1);
 	
-	printf("Value at virtual address %P is %#X.\n", PAGE0, *((__u32 *) PAGE0));	
-	printf("Value at virtual address %P is %#X.\n", PAGE1, *((__u32 *) PAGE1));
+	printf("Value at virtual address %p is %#x.\n", PAGE0, *((__u32 *) PAGE0));	
+	printf("Value at virtual address %p is %#x.\n", PAGE1, *((__u32 *) PAGE1));
 
 	ASSERT(v0 == 0);
Index: test/synch/rwlock4/test.c
===================================================================
--- test/synch/rwlock4/test.c	(revision e692a27a94144915c2caeadca44e573b14cf107b)
+++ test/synch/rwlock4/test.c	(revision cf85e24c9b6fc5900e0535710b65384f89867e00)
@@ -133,5 +133,5 @@
 		
 		context_save(&ctx);
-		printf("sp=%#X, readers_in=%d\n", ctx.sp, rwlock.readers_in);
+		printf("sp=%#x, readers_in=%d\n", ctx.sp, rwlock.readers_in);
 		
 		k = random(7) + 1;
