File Coverage

blib/lib/Data/Password/zxcvbn/AdjacencyGraph/French.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1             package Data::Password::zxcvbn::AdjacencyGraph::French;
2 1     1   7 use strict;
  1         3  
  1         30  
3 1     1   6 use warnings;
  1         2  
  1         688  
4             # VERSION
5             # ABSTRACT: adjacency graphs for common French keyboards
6              
7             =head1 DESCRIPTION
8              
9             This is a data file used by L<<
10             C<Data::Password::zxcvbn::Match::Spatial> >>, and is generated by the
11             L<<
12             C<build-keyboard-adjacency-graphs>|https://bitbucket.org/broadbean/p5-data-password-zxcvbn-french/src/master/maint/build-keyboard-adjacency-graphs
13             >> program when building the distribution.
14              
15              
16             =cut
17              
18             our %graphs = ( azerty => {
19             average_degree => 4.6046511627907,
20             keys => {
21             "!" => [
22             ':/', 'mM', '%%', ( undef ) x 3
23             ],
24             "\"" => [
25             '~2', ( undef ) x 2, '\'4', 'eE', 'zZ'
26             ],
27             "\$" => [
28             undef, '+=', ( undef ) x 2, '**', '%%'
29             ],
30             "%" => [
31             'mM', undef, '$$', '**', undef, '!!'
32             ],
33             "&" => [
34             ( undef ) x 3, '~2', 'aA', undef
35             ],
36             "'" => [
37             '"3', ( undef ) x 2, '(5', 'rR', 'eE'
38             ],
39             "(" => [
40             '\'4', ( undef ) x 2, -6, 'tT', 'rR'
41             ],
42             ")" => [
43             '@0', ( undef ) x 2, '+=', undef, 'pP'
44             ],
45             "*" => [
46             '%%', '$$', ( undef ) x 4
47             ],
48             "+" => [
49             ')]', ( undef ) x 3, '$$', undef
50             ],
51             "," => [
52             'nN', 'jJ', 'kK', ';.', ( undef ) x 2
53             ],
54             "-" => [
55             '(5', ( undef ) x 2, '`7', 'yY', 'tT'
56             ],
57             "." => [
58             ',?', 'kK', 'lL', ':/', ( undef ) x 2
59             ],
60             "/" => [
61             ';.', 'lL', 'mM', '!!', ( undef ) x 2
62             ],
63             0 => [
64             '^9', ( undef ) x 2, ')]', 'pP', 'oO'
65             ],
66             1 => [
67             ( undef ) x 3, '~2', 'aA', undef
68             ],
69             2 => [
70             '&1', ( undef ) x 2, '"3', 'zZ', 'aA'
71             ],
72             3 => [
73             '~2', ( undef ) x 2, '\'4', 'eE', 'zZ'
74             ],
75             4 => [
76             '"3', ( undef ) x 2, '(5', 'rR', 'eE'
77             ],
78             5 => [
79             '\'4', ( undef ) x 2, -6, 'tT', 'rR'
80             ],
81             6 => [
82             '(5', ( undef ) x 2, '`7', 'yY', 'tT'
83             ],
84             7 => [
85             -6, ( undef ) x 2, '_8', 'uU', 'yY'
86             ],
87             8 => [
88             '`7', ( undef ) x 2, '^9', 'iI', 'uU'
89             ],
90             9 => [
91             '_8', ( undef ) x 2, '@0', 'oO', 'iI'
92             ],
93             ":" => [
94             ';.', 'lL', 'mM', '!!', ( undef ) x 2
95             ],
96             ";" => [
97             ',?', 'kK', 'lL', ':/', ( undef ) x 2
98             ],
99             "=" => [
100             ')]', ( undef ) x 3, '$$', undef
101             ],
102             "?" => [
103             'nN', 'jJ', 'kK', ';.', ( undef ) x 2
104             ],
105             "\@" => [
106             '^9', ( undef ) x 2, ')]', 'pP', 'oO'
107             ],
108             A => [
109             undef, '&1', '~2', 'zZ', 'qQ', undef
110             ],
111             B => [
112             'vV', 'gG', 'hH', 'nN', ( undef ) x 2
113             ],
114             C => [
115             'xX', 'dD', 'fF', 'vV', ( undef ) x 2
116             ],
117             D => [
118             'sS', 'eE', 'rR', 'fF', 'cC', 'xX'
119             ],
120             E => [
121             'zZ', '"3', '\'4', 'rR', 'dD', 'sS'
122             ],
123             F => [
124             'dD', 'rR', 'tT', 'gG', 'vV', 'cC'
125             ],
126             G => [
127             'fF', 'tT', 'yY', 'hH', 'bB', 'vV'
128             ],
129             H => [
130             'gG', 'yY', 'uU', 'jJ', 'nN', 'bB'
131             ],
132             I => [
133             'uU', '_8', '^9', 'oO', 'kK', 'jJ'
134             ],
135             J => [
136             'hH', 'uU', 'iI', 'kK', ',?', 'nN'
137             ],
138             K => [
139             'jJ', 'iI', 'oO', 'lL', ';.', ',?'
140             ],
141             L => [
142             'kK', 'oO', 'pP', 'mM', ':/', ';.'
143             ],
144             M => [
145             'lL', 'pP', undef, '%%', '!!', ':/'
146             ],
147             N => [
148             'bB', 'hH', 'jJ', ',?', ( undef ) x 2
149             ],
150             O => [
151             'iI', '^9', '@0', 'pP', 'lL', 'kK'
152             ],
153             P => [
154             'oO', '@0', ')]', undef, 'mM', 'lL'
155             ],
156             Q => [
157             undef, 'aA', 'zZ', 'sS', 'wW', undef
158             ],
159             R => [
160             'eE', '\'4', '(5', 'tT', 'fF', 'dD'
161             ],
162             S => [
163             'qQ', 'zZ', 'eE', 'dD', 'xX', 'wW'
164             ],
165             T => [
166             'rR', '(5', -6, 'yY', 'gG', 'fF'
167             ],
168             U => [
169             'yY', '`7', '_8', 'iI', 'jJ', 'hH'
170             ],
171             V => [
172             'cC', 'fF', 'gG', 'bB', ( undef ) x 2
173             ],
174             W => [
175             undef, 'qQ', 'sS', 'xX', ( undef ) x 2
176             ],
177             X => [
178             'wW', 'sS', 'dD', 'cC', ( undef ) x 2
179             ],
180             Y => [
181             'tT', -6, '`7', 'uU', 'hH', 'gG'
182             ],
183             Z => [
184             'aA', '~2', '"3', 'eE', 'sS', 'qQ'
185             ],
186             "]" => [
187             '@0', ( undef ) x 2, '+=', undef, 'pP'
188             ],
189             "^" => [
190             '_8', ( undef ) x 2, '@0', 'oO', 'iI'
191             ],
192             _ => [
193             '`7', ( undef ) x 2, '^9', 'iI', 'uU'
194             ],
195             "`" => [
196             -6, ( undef ) x 2, '_8', 'uU', 'yY'
197             ],
198             a => [
199             undef, '&1', '~2', 'zZ', 'qQ', undef
200             ],
201             b => [
202             'vV', 'gG', 'hH', 'nN', ( undef ) x 2
203             ],
204             c => [
205             'xX', 'dD', 'fF', 'vV', ( undef ) x 2
206             ],
207             d => [
208             'sS', 'eE', 'rR', 'fF', 'cC', 'xX'
209             ],
210             e => [
211             'zZ', '"3', '\'4', 'rR', 'dD', 'sS'
212             ],
213             f => [
214             'dD', 'rR', 'tT', 'gG', 'vV', 'cC'
215             ],
216             g => [
217             'fF', 'tT', 'yY', 'hH', 'bB', 'vV'
218             ],
219             h => [
220             'gG', 'yY', 'uU', 'jJ', 'nN', 'bB'
221             ],
222             i => [
223             'uU', '_8', '^9', 'oO', 'kK', 'jJ'
224             ],
225             j => [
226             'hH', 'uU', 'iI', 'kK', ',?', 'nN'
227             ],
228             k => [
229             'jJ', 'iI', 'oO', 'lL', ';.', ',?'
230             ],
231             l => [
232             'kK', 'oO', 'pP', 'mM', ':/', ';.'
233             ],
234             m => [
235             'lL', 'pP', undef, '%%', '!!', ':/'
236             ],
237             n => [
238             'bB', 'hH', 'jJ', ',?', ( undef ) x 2
239             ],
240             o => [
241             'iI', '^9', '@0', 'pP', 'lL', 'kK'
242             ],
243             p => [
244             'oO', '@0', ')]', undef, 'mM', 'lL'
245             ],
246             q => [
247             undef, 'aA', 'zZ', 'sS', 'wW', undef
248             ],
249             r => [
250             'eE', '\'4', '(5', 'tT', 'fF', 'dD'
251             ],
252             s => [
253             'qQ', 'zZ', 'eE', 'dD', 'xX', 'wW'
254             ],
255             t => [
256             'rR', '(5', -6, 'yY', 'gG', 'fF'
257             ],
258             u => [
259             'yY', '`7', '_8', 'iI', 'jJ', 'hH'
260             ],
261             v => [
262             'cC', 'fF', 'gG', 'bB', ( undef ) x 2
263             ],
264             w => [
265             undef, 'qQ', 'sS', 'xX', ( undef ) x 2
266             ],
267             x => [
268             'wW', 'sS', 'dD', 'cC', ( undef ) x 2
269             ],
270             y => [
271             'tT', -6, '`7', 'uU', 'hH', 'gG'
272             ],
273             z => [
274             'aA', '~2', '"3', 'eE', 'sS', 'qQ'
275             ],
276             "~" => [
277             '&1', ( undef ) x 2, '"3', 'zZ', 'aA'
278             ]
279             },
280             starting_positions => 86
281             } )
282             ;
283              
284             1;