SudokuSolver Forum

A forum for Sudoku enthusiasts to share puzzles, techniques and software
It is currently Mon Apr 29, 2024 4:18 am

All times are UTC




Post new topic Reply to topic  [ 14 posts ]  Go to page Previous  1, 2
Author Message
 Post subject: Re: Assassin 150
PostPosted: Mon Jan 25, 2010 5:55 am 
Offline
Grand Master
Grand Master

Joined: Wed Apr 23, 2008 6:04 pm
Posts: 1895
Location: Lethbridge, Alberta, Canada
In the A154 thread I wrote:
Having caught up with my backlog of unfinished V1s (A161 and A165) last month, I had a look to see if there were any other of Ronnie's puzzles that I hadn't yet done. I found that I'd got stuck on A154 V1.5 and hadn't yet started A150 V2 so I had a go at both of them in the last few days.
Now that I've gone through Afmob's walkthrough, here is my one. The critical area was N9 and the 27(5) cage which we looked at in different ways. Afmob first looked at the 27(5) and then outies for N9. I found innies-outies for N9 easier to think about although now that I've gone through Afmob's walkthrough his way seems to be more direct, particularly in finding the critical 9 locked in R6C68 for R6.

Afmob wrote:
That was a tough Killer! Like V1 I hope that someone finds an easier way to solve it. Maybe by using a small forcing chain?
It certainly was tough! I don't think my way was any easier; I didn't spot any forcing chains.

Rating Comment:
I'll also rate A150 V2 at (Easy?) 1.75 because I think Afmob's solving path and my one have similar levels of difficulty. My hardest steps were 28b, 29a and 30a.

Here is my walkthrough for A150 V2. Thanks Afmob for the clarification to step 24b.

Prelims

a) R12C1 = {16/25/34}, no 7,8,9
b) R1C23 = {79}
c) R1C78 = {18/27/36/45}, no 9
d) R12C9 = {49/58/67}, no 1,2,3
e) R2C34 = {29/38/47/56}, no 1
f) R2C67 = {29/38/47/56}, no 1
g) R8C12 = {19/28/37/46}, no 5
h) R89C5 = {49/58/67}, no 1,2,3
i) R8C89 = {15/24}
j) 11(3) cage in N1 = {128/137/146/236/245}, no 9
k) 11(3) cage in N3 = {128/137/146/236/245}, no 9

1. 45 rule on R9 1 innie R9C5 = 4, R8C5 = 9, clean-up: no 1 in R8C12

2. Naked pair {79} in R1C23, locked for R1 and N1, clean-up: no 2 in R1C78, no 2,4 in R2C4, no 4,6 in R2C9

3. 45 rule on C1234 2 innies R17C4 = 12 = [48/57]
3a. R1C78 = {18/36} (cannot be {45} which clashes with R1C4)
3b. 16(4) cage at R6C5 cannot contain both of 7,8 -> no 7,8 in R6C5 + R7C56

4. 45 rule on C6789 2 innies R17C6 = 4 = {13}, locked for C6, clean-up: no 8 in R2C7
4a. Killer pair 1,3 in R1C6 and R1C78, locked for R1, clean-up: no 4,6 in R2C1

5. 45 rule on R12 2 innies R2C28 = 7 = {16/25/34}, no 7,8

6. 45 rule on R6789 2 innies R6C19 = 12 = {39/48/57}, no 1,2,6

7. 45 rule on N1 2 innies R2C3 + R3C1 = 11 = {38/56}, no 1,2,4, clean-up: no 7,9 in R2C4

8. 45 rule on N3 2 innies R2C7 + R3C9 = 12 = {39/57}/[48], no 1,2,6, no 4 in R3C9, clean-up: no 5,9 in R2C6

9. 11(3) cage in N1 = {128/146/245} (cannot be {236} which clashes with R2C3 + R3C1), no 3, clean-up: no 4 in R2C8 (step 5)

10. 2 in N3 only in 11(3) cage = {128/236/245}, no 7

11. 7,9 in N3 only in R2C9 and R2C7 + R3C9
11a. Hidden killer pair 7,9 in R2C9 and R2C7 + R3C9 for N3, R2C7 + R3C9 cannot contain both of 7,9 -> R2C9 = {79} and R2C7 + R3C9 must contain one of 7,9 -> R2C7 + R3C9 = {39/57}, no 4,8, clean-up: no 5,8 in R1C9, no 7 in R2C6

12. 45 rule on R1 3 outies R2C159 = 16 = {169/178/259} (cannot be {268/358} because R2C9 only contains 7,9, cannot be {367} which clashes with R2C34), no 3, clean-up: no 4 in R1C1
12a. 1 of {169/178} must be in R2C1 -> no 1 in R2C5
12b. 7 of {178} must be in R2C9 -> no 7 in R2C5

13. R2C79 = {79} (hidden pair in R2), locked for N3, clean-up: no 6,8 in R2C6

14. 16(4) cage in N2 = {1258/1348/1456/2356}
14a. Killer pair 2,4 in 16(4) cage and R2C6, locked for N2

15. 3 in N1 only in R2C3 + R3C1 (step 7) = {38} (only remaining combination), locked for N1, clean-up: no 5,6 in R2C4
15a. Naked pair {38} in R2C34, locked for R2, clean-up: no 4 in R2C2 (step 5)

16. R2C6 = 4 (hidden single in R2), R2C7 = 7, R2C9 = 9, R1C9 = 4, R1C4 = 5, R7C4 = 7 (step 3), clean-up: no 2 in R2C1, no 3,8 in R6C1 (step 6), no 2 in R8C8
16a. 2 in N2 only in R12C5, locked for C5
16b. 16(4) cage in N2 (step 14) = {1258/2356}
16c. Killer pair 3,8 in 16(4) cage and R2C4, locked for N2

17. 45 rule on N3 1 remaining innie R3C9 = 5, clean-up: no 2 in R2C2 (step 5), no 7 in R6C1 (step 6), no 1 in R8C8

18. 16(4) cage at R6C5 = {1357} (only remaining combination), no 6, 5 locked for C5

19. 18(4) cage at R3C9 = {2358} (only remaining combination), locked for C9 -> R8C9 = 1, R8C8 = 5, R7C9 = 6, R9C9 = 7, clean-up: no 5 in R6C1 (step 6)
19a. Naked triple {238} in R456C9, locked for N6

20. R7C9 = 6 -> R67C8 = 11 = [74/92]

21. 24(4) cage at R9C6 = {2679/3579/3678}
21a. 5,6 only in R9C6 -> R9C6 = {56}

22. 16(3) cage in N6 = {169/457}
22a. 5 of {457} must be in R5C7 -> no 4 in R5C7
22b. Killer pair 7,9 in 16(3) cage and R6C8, locked for N6

23. 45 rule on C1 3 innies R789C1 = 17 = {179/278/359/458/467} (cannot be {269} which clashes with R1C1, cannot be {368} which clashes with R3C1)
23a. 7 of {278/467} must be in R8C1 -> no 2,6 in R8C1, clean-up: no 4,8 in R8C2
23b. 3 of {359} must be in R8C1 -> no 3 in R79C1

24. 45 rule on N9 2 outies R6C8 + R9C6 = 2 innies R78C7 + 2, R6C8 + R9C6 = 12,13,14,15 -> R78C7 = 10,11,12,13 = {28/29/38/39/48/49}
[After going through Afmob’s walkthrough I realised that this should have been R78C7 = {28/29/38/48/49} (cannot be {39} which clashes with 24(4) cage at R9C6). As a result some of the steps after this may be a bit longer than necessary.]
24a. 27(5) cage at R6C6 = {12789/13689/14589/14679/23589/23679/24579/24678} (cannot be {15678} because R78C7 must contain one of 2,3,4, cannot be {34569} because {39} must be in R78C7 and {456} clashes with R9C6, cannot be {34578} because {38} must be in R78C7 and R8C6 doesn’t contain 4,5 or 7)
24b. {49} of {14589/14679} must be in R78C7, {49} of {24579} must be in R78C7 (because 2 must be in R8C6), {48} of {24678} must be in R78C7 (R78C7 cannot be {28} because R6C67 = [74] clashes with R6C18, ALS block) -> no 4 in R6C7

25. 45 rule on N6 3 innies R4C7 + R6C78 = 16 = {169/457}
25a. 4 of {457} must be in R4C7 -> no 5 in R4C7

26. 45 rule on C789 3 remaining outies R689C6 = 1 innie R4C7 + 13
26a. R4C7 = {146} -> R689C6 = 14/17/19 = {257/269/289/568}(cannot be {278} because R9C6 only contains 5,6)
26b. 7,9 of {257/269/289} must be in R6C6 -> no 2 in R6C6

27. 45 rule on R8 4 innies R8C3467 = 20 = {2378/2468/3467}
27a. 7 of {2378/3467} must be in R8C3 -> no 3 in R8C3

28. 24(4) cage at R3C6 = {1689/2679/4578} (cannot be {2589} because R4C7 only contains 1,4,6, cannot be {4569} which clashes with R9C6)
28a. R689C6 (step 26a) = {257/269/568} (cannot be {289} which clashes with 24(4) cage)
28b. 7 in C6 only in 24(4) cage at R3C6 or in R6C6 -> 24(4) cage = {2679/4578} or 24(4) cage = {1689}, R6C6 = 7, R4C7 = 1, R6C7 = 6 (step 25) -> either R6C67 = [76] or R6C6 not 7 and R6C7 = {15} (step 25, because R4C7 = {46} when 7 in 24(4) cage at R3C6) -> 27(5) cage at R6C6 must contain both of 6,7 or not contain 7
28c. 27(5) cage at R6C6 (step 24a) = {13689/14589/23589/23679/24678} (cannot be {12789/24579} which contain 7 but not 6, cannot be {14679} because R6C67 cannot be [76] and also contain 1)
28d. 3,4 of {23589/23679/24678} must be in R78C7 = {38/39/48}, no 2 in R78C7

29. 4 in C7 only in R4C7 and R78C7, R46C7 = {16/45} (step 25) -> R6C7 can only contain 1 or 6 when R78C7 contains 4 (a sort of variable hidden killer pair)
29a. 27(5) cage at R6C6 (step 28c) = {14589/23589/24678} (cannot be {13689/23679} which must have 1 or 6 in R6C7 but don’t contain 4)
29b. 7 of {24678} must be in R6C6 -> no 6 in R6C6

30. 27(5) cage at R6C6 (step 29a) = {14589/23589/24678}
30aa. {14589} => R6C7 = 1, R4C7 + R6C8 = [69] (step 25)
30ab. {23589} => R8C6 = 2 => R6C6 = 9 (step 28a)
30ac. {24678} => R6C6 = 7 => R6C8 = 9
30b. -> 9 must be in R6C68, locked for R6 -> R6C1 = 4, R6C9 = 8 (step 6), clean-up: no 6 in R8C2

31. R789C1 (step 23) = {179/278/359}, no 6
31a. 3,7 only in R8C1 -> R8C1 = {37} -> R8C12 = {37}, locked for R8 and N7

32. 21(4) cage at R3C1 = {2478/3459/3468} (cannot be {1479/2469} because R3C1 only contains 3,8), no 1

33. 9 in C4 only in R345C4, locked for 22(4) cage at R3C4, no 9 in R4C3
33a. 4,9 in C4 only in 22(4) cage at R3C4 = {1489/2479/3469}, no 5
33b. 7 of {2479} must be in R4C3 -> no 2 in R4C3

34. 15(3) cage at R6C2 = {159/168/249/258/348/456} (cannot be {267/357} because 3,6,7 only in R6C2), no 7

35. R689C6 (step 28a) = {257/269/568}
35a. 2,8 only in R8C6 -> R8C6 = {28}

36. 6 in R8 only in R8C34, locked for 23(5) cage at R6C3, no 6 in R6C34
36a. 23(5) cage at R6C3 = {12569/13469/13568/14567/23468/23567}
36b. 2,6 of {12569/23567} must be in R8C34, 2,3 of {23468} must be in R6C34 -> no 2 in R7C3

37. 45 rule on N4 3 innies R4C3 + R6C23 = 1 outie R3C1 + 9
37a. R3C1 = {38} -> R4C3 + R6C23 = 12,17 = {138/156/237/278/368}
37b. 15(3) cage at R4C2 = {159/168/267} (cannot be {258/357} which clash with R4C3 + R6C23), no 3
37c. R4C3 + R6C23 = {138/237/278/368} (cannot be {156} which clashes with 15(3) cage), no 5

38. 15(3) cage at R6C2 (step 34) = {159/168/249/258/348/456}
38a. 2 of {249/258} must be in R6C2 -> no 2 in R7C12

39. R7C8 = 2 (hidden single in R7), R6C8 = 9 (step 20), clean-up: no 1,6 in 16(3) cage in N6 (step 22)
39a. R5C7 = 5, R45C8 = {47}, locked for N6
39b. Naked pair {16} in R46C7, locked for C7, clean-up: no 3,8 in R1C8

40. Naked pair {16} in R12C8, locked for N3
40a. R3C7 = 2 (hidden single in N3)

41. R1C1 = 2 (hidden single in N1), R2C1 = 5
41a. R2C5 = 2 (hidden single in N2)

42. 21(4) cage at R3C1 (step 32) = {3468} (only remaining combination), locked for C1, 6 locked for N4 -> R8C12 = [73]
42a. Naked pair {19} in R79C1, locked for N7

43. 15(3) cage at R6C2 (step 34) = {159/249} (cannot be {258/348} because R7C1 only contains 1,9) -> R7C1 = 9, R67C2 = [15/24], R9C1 = 1
43a. Killer triple 1,4,6 in R23C2 and R67C2, locked for C2
43b. 6 in C2 only in R23C2, locked for N1

44. R9C7 = 9 (hidden single in R9)
44a. 24(4) cage at R9C6 (step 21) = {3579} (only remaining combination) -> R9C6 = 5, R9C8 = 3

45. Naked pair {48} in R78C7, locked for C7 and 27(5) cage at R6C6 -> R8C6 = 2, R1C7 = 3, R1C6 = 1, R12C8 = [61], R3C8 = 8, R1C5 = 8, R2C2 = 6, R2C34 = [83], R3C1 = 3, R7C56 = [13], R6C5 = 5, R6C6 = 7, R6C7 = 6 (step 28b, or hidden single in R6), R4C7 = 1

46. R6C3 = 3 (hidden single in R6), R4C3 = 7, R1C23 = [79], R45C8 = [47]

47. Naked pair {68} in R89C4, locked for C4 -> R3C4 = 9

and the rest is naked singles.


Last edited by Andrew on Wed Jan 27, 2010 12:25 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Mon Jan 25, 2010 2:16 pm 
Offline
Grand Master
Grand Master
User avatar

Joined: Mon Apr 21, 2008 10:32 am
Posts: 868
Assassin 150 v1 images with udosuk Style Killer Cages:
Image     Image

Assassin 150 v2 images with udosuk Style Killer Cages:
Image     Image

_________________
Quis custodiet ipsos custodes?
Normal: [D  Y-m-d,  G:i]     PM->email: [D, d M Y H:i:s]


Last edited by Børge on Sun Mar 14, 2010 1:56 pm, edited 2 times in total.

Top
 Profile  
Reply with quote  
 Post subject: Re: Assassin 150
PostPosted: Sat Mar 06, 2010 11:08 pm 
Offline
Grand Master
Grand Master

Joined: Wed Apr 23, 2008 6:04 pm
Posts: 1895
Location: Lethbridge, Alberta, Canada
Ronnie G wrote:
While searching for a better V2, I did stumble across a fun puzzle, SS 1.31, which I will gladly send to anyone who asks!
After finishing A150 V2 I asked Ronnie for this puzzle; I've no idea whether anyone else did. I enjoyed solving it and asked Ronnie for permission to post it after the next Assassin had appeared. We now have A188 :D so here is A150 V1.25.

Image

Solution:
279581364
568324719
314976285
857269143
691438572
423157698
945713826
736892451
182645937

Code String 3x3::k:1792:4097:4097:4099:4099:4099:2310:2310:3336:1792:2826:2827:2827:4099:2830:2830:2832:3336:5394:2826:2826:5653:4118:6167:2832:2832:4634:5394:3868:5653:5653:4118:6167:6167:4130:4634:5394:3868:3868:5653:4118:6167:4130:4130:4634:5394:2350:5935:5935:4145:6962:6962:4148:4634:4150:2350:5935:4145:4145:4145:6962:4148:1854:4150:2350:5935:5935:3395:6962:6962:4148:1854:4424:4424:4424:4424:3395:6221:6221:6221:6221:

Enjoy!


Top
 Profile  
Reply with quote  
 Post subject: Re: Assassin 150
PostPosted: Sat Mar 06, 2010 11:16 pm 
Offline
Grand Master
Grand Master

Joined: Wed Apr 23, 2008 6:04 pm
Posts: 1895
Location: Lethbridge, Alberta, Canada
Thanks Ronnie for the enjoyable A150 V1.25, particularly the breakthrough in C8 (step 30) which I think you intended to be the key to this puzzle.

Rating Comment:
I'll rate my walkthrough for A150 V1.25 at 1.25. I used a hidden killer triple. It's some time since I solved this puzzle but I don't remember any particular difficulties.

Here is my walkthrough for A150 V1.25.

Prelims

a) R12C1 = {16/25/34}, no 7,8,9
b) R1C23 = {79}
c) R1C78 = {18/27/36/45}, no 9
d) R12C9 = {49/58/67}, no 1,2,3
e) R2C34 = {29/38/47/56}, no 1
f) R2C67 = {29/38/47/56}, no 1
g) R78C1 = {79}
h) R78C9 = {16/25/34}, no 7,8,9
i) R89C5 = {49/58/67}, no 1,2,3
j) 11(3) cage in N1 = {128/137/146/236/245}, no 9
k) 11(3) cage in N3 = {128/137/146/236/245}, no 9
l) 9(3) cage at R6C2 = {126/135/234}, no 7,8,9

1. 45 rule on R9 1 innie R9C5 = 4, R8C5 = 9, R78C1 = [97]

2. Naked pair {79} in R1C23, locked for R1 and N1, clean-up: no 2 in R1C78, no 2,4 in R2C4, no 4,6 in R2C9

3. 45 rule on C1 1 innie R9C1 = 1, clean-up: no 6 in R12C1

4. 45 rule on C9 1 innie R9C9 = 7, clean-up: no 6 in R1C9

5. 1 in N1 only in 11(3) cage = {128/146}, no 3,5
5a. Killer pair 2,4 in R12C1 and 11(3) cage, locked for N1, clean-up: no 7,9 in R2C4

6. 45 rule on C1234 2 innies R17C4 = 12 = [48/57]
6a. R1C78 = {18/36} (cannot be {45} which clashes with R1C4)
6b. 16(4) cage at R6C5 cannot contain both of 7,8 -> no 7,8 in R6C5 + R7C56

7. 45 rule on C6789 2 innies R17C6 = 4 = {13}, locked for C6, clean-up: no 8 in R2C7
7a. Killer pair 1,3 in R1C6 and R1C78, locked for R1, clean-up: no 4 in R2C1

8. 7,9 in R9 only in 24(4) cage at R9C6 = {2679/3579}, no 8
8a. 5 of {3579} must be in R9C6 -> no 5 in R9C78

9. 45 rule on R12 2 innies R2C28 = 7 = [16/25/43/61], no 7,8, no 2,4 in R2C8

10. 45 rule on R6789 2 innies R6C19 = 12 = [39/48/84], no 1,2,5,6, no 3 in R6C9

11. 45 rule on N3 2 innies R2C7 + R3C9 = 12 = [39/48/75/93], no 1,2,6, no 5 in R2C7, no 4 in R3C9, clean-up: no 5,6,9 in R2C6

12. 2 in N3 only in R3C78, locked for R3
12a. 11(3) cage = {128/236/245}, no 7

13. R2C7 = 7 (hidden single in N3), R2C6 = 4, R3C9 = 5 (step 11), R1C4 = 5, R7C4 = 7 (step 6), clean-up: no 8 in R12C9, no 2 in R2C1, no 2 in R2C2, no 6 in R2C3, no 3 in R2C8, no 2 in R78C9

14. R12C9 = [49], R1C1 = 2, R2C1 = 5, R6C9 = 8, R6C1 = 4 (step 10), clean-up: no 6 in R2C4, no 3 in R78C9

15. Naked pair {16} in R78C9, locked for C9 and N9
15a. Naked pair {23} in R45C9, locked for N6
15b. 24(4) cage at R9C6 (step 8) = {2679/3579}
15c. 5,6 only in R9C6 -> R9C6 = {56}

16. R2C5 = 2 (hidden single in R2)

17. 11(3) cage in N1 = {146} (only remaining combination), locked for N1
17a. 6 in C1 only in R45C1, locked for N4

18. 16(4) cage at R6C5 = {1357} (only remaining combination), no 6, 5 locked for C5

19. 9(3) cage at R6C2 = {135/234} (cannot be {126} which clashes with R2C2), no 6, 3 locked for C2
19a. 1 of {135} must be in R6C2 -> no 5 in R6C2

20. Hidden killer pair 7,9 in R1C2 and R45C2 for C2, R1C2 = {79} -> R45C2 must contain one of {79}
20a. 15(3) cage in N4 = {159/357} (only remaining combinations containing 7 or 9), no 2,8
20b. R45C2 must contain one of 7,9 -> no 7,9 in R5C3

21. R9C2 = 8 (hidden single in C2)
21a. R9C12 = [18] = 9 -> R9C34 = 8 = [26/53/62], no 3 in R9C3
21b. 8 in R7 only in R7C78, locked for N9

22. 2,3 in C2 only in 9(3) cage at R6C2 (step 19) = {234} (only remaining combination), locked for C2, 4 locked for N9

23. Naked pair {16} in R23C2, locked for C2 and N1 -> R3C3 = 4

24. 5 in C2 only in R45C2, locked for N4

25. 16(4) cage in N2 = {1258/2356}
25a. Killer pair 3,8 in 16(4) cage and R2C4, locked for N2

26. Naked quad {1679} in R3C2456, locked for R3

27. 16(3) cage at R6C8 = {259/268/349/358/457} (cannot be {169/178/367} because 1,6,7 only in R6C8), no 1

28. 45 rule on N6 3 innies R4C7 + R6C78 = 16 = {169/457}
28a. 5 of {457} must be in R6C7 -> no 5 in R4C7 + R6C8

29. 4 in C4 only in R45C4 -> 22(4) cage at R3C4 = {1489/2479/3469} (cannot be{3478} because R3C4 only contains 1,6,9)
29a. 7 of {2479} must be in R4C3 -> no 2 in R4C3
29b. 2 in N4 only in R6C23, locked for R6

30. 4,5,7 in C8 only in R45678C8
30a. Hidden killer triple 4,5,7 in R45C8 and 16(3) cage at R6C8 for C8, R45C8 cannot contain more than two of 4,5,7 -> 16(3) cage at R6C8 must contain at least one of 4,5,7
30b. 16(3) cage at R6C8 (step 27) = {259/349/457} (cannot be {268} which doesn’t contain any of 4,5,7, cannot be {358} because 3,5,8 only in R78C8), no 6,8

31. R7C7 = 8 (hidden single in N9), clean-up: no 1 in R1C8
31a. R8C4 = 8 (hidden single in N8), R2C34 = [83], R3C1 = 3, R3C78 = [28], R2C8 = 1 (step 12a), R23C2 = [61], R1C6 = 1, R1C5 = 8 (step 25), R7C6 = 3, clean-up: no 5 in R9C3 (step 21a)
31b. R7C5 = 1 (hidden single in N8), R6C5 = 5, R78C9 = [61]

32. Naked pair {26} in R9C34, locked for R9 -> R9C6 = 5
32a. Naked pair {39} in R9C78, locked for N9

33. 2 in N9 only in R78C8 -> 16(3) cage at R6C8 (step 30b) = {259} (only remaining combination) -> R6C8 = 9, R78C8 = {25}, locked for C8 and N9 -> R8C7 = 4, R9C78 = [93], R1C78 = [36]

34. R5C7 = 5 (hidden single in C7)

35. Naked pair {16} in R6C47, locked for R6 -> R6C6 = 7
35a. Naked pair {36} in R45C5, locked for C5 and N5 -> R6C4 = 1

and the rest is naked singles.


Last edited by Andrew on Sun Mar 14, 2010 10:49 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 14 posts ]  Go to page Previous  1, 2

All times are UTC


Who is online

Users browsing this forum: No registered users and 139 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group