本帖最后由 1五湖四海1 于 2016-8-25 22:44 編輯 ( K$ X3 R4 O$ {/ k$ j- Y& t( h- b
" C1 w9 ]) Y+ z
這個defaults.h文件作為一個中央默認設置配置不同的機器類型,從DIY米爾斯數控CNC轉換的現成的機器。這里的設置所列出的文件是由用戶提供的,5 y ?$ A4 b, R, m
所以您的你的需求可能不同。所以應該你了解你的機器和調整設置根據你的個性的需求,制造機器。2 w6 b7 Z5 R0 L% {8 Y5 o M
defaults_h文件是選擇是否將一些參數設置為默認值/ J J7 o( X: P- }, z5 f( N; {
定義各種參數
$ m. R7 [7 s5 _, H4 F0 \( v8 p! r1.defaults/defaults_generic.h //Grbl通過通用默認設置就可以在不同的機器上工作。
' }& U- G1 m0 }* |; p1 x* c# D2.defaults/defaults_sherline.h //描述:Sherline 5400制造廠三個NEMA 23客戶KL23H256-21-8B 185扭力步進電機0 N7 Z/ a& x1 t4 t8 H6 l
3.defaults/defaults_shapeoko.h // 描述:Shapeoko數控機有三個NEMA 17步進電機,由Synthetos驅動的
! I: a, C8 p' q6 \- W1 ?4.defaults/defaults_shapeoko3 //描述:Shapeoko數控機有三個NEMA 23步進電機,由CarbideMotion驅動的
8 l8 d( Y3 r& y. J4 }5.defaults/defaults_x_carve_500mm //描述:X-Carve 3 d卡佛數控機有三個200步/汽車由Synthetos牧師grblShield 24 v。
; J* \7 {& s, V6.defaults/defaults_zen_toolworks_7x7 //描述:禪宗Toolworks 7 x7機有三個Shinano SST43D2121 65扭力NEMA 17步進電機。導螺桿不同于一些ZTW包,大多數是1.25毫米/牧師而不是8.0毫米/牧師。由30 v 6電源和TI DRV8811步進電機驅動程序
9 z8 _3 @/ t9 s5 Q- d; K7.defaults/defaults_oxcnc // Grbl設置OpenBuilds牛數控機床- Q! u Q$ S9 N/ ?1 l
8.defaults/defaults_simulator
$ j& a9 j. X& E+ s/ h% K5 t& X% [) D6 ^' ?8 I
/*
! @- T( ?* N! u' H* _" W$ a defaults.h - defaults settings configuration file
) j8 Z4 G% l; c6 E: }. E5 I Part of Grbl
% s# B3 @2 s" d/ T8 x, A1 n
4 ^, R0 }' y1 i9 J: d7 ?0 W& L Copyright (c) 2012-2015 Sungeun K. Jeon
' c; K( h0 h w/ n5 }/ E0 \5 {: e" R ^; b6 T' Z
Grbl is free software: you can redistribute it and/or modify1 I9 R2 \) O/ y1 P# p
it under the terms of the GNU General Public License as published by
. S5 r7 m; R4 \0 B8 p* f/ { the Free Software Foundation, either version 3 of the License, or3 j* m! n7 l3 X1 ?+ H
(at your option) any later version.
! c" X9 B9 }( E7 C* j" t% R
9 g4 f6 i( `' o) l" ^2 J Grbl is distributed in the hope that it will be useful,
7 x$ f* \% b# m but WITHOUT ANY WARRANTY; without even the implied warranty of6 q$ @) {' j# q$ Y9 z2 V" m
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the- n: \0 I- [6 V% x& k0 }
GNU General Public License for more details.$ |0 j% B1 ^ J
. _0 ^. g! ~0 X' y1 ^ You should have received a copy of the GNU General Public License
7 A$ w+ c" c J6 b' f along with Grbl. If not, see <http://www.gnu.org/licenses/>.4 ^- z0 P8 |# H, U
*/
! s3 ?8 y O4 q; L
& {" }8 I( n/ G/ \3 f0 M5 a/* The defaults.h file serves as a central default settings selector for different machine
/ ^- \! m2 `& v" b types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings + A3 x' V/ L0 T$ c9 W( o' V; T
files listed here are supplied by users, so your results may vary. However, this should
0 `2 N# y' T' {. c/ K9 W0 d. w! x give you a good starting point as you get to know your machine and tweak the settings for/ s0 ?0 |6 H/ @# G- J+ d- q( z
your nefarious needs.; E* E2 r; G* @; m
Ensure one and only one of these DEFAULTS_XXX values is defined in config.h 7 A+ R9 m1 G: x% ]. i1 a! V) n
% | o, p6 }" n! y7 I% R The defaults.h文件作為一個中央默認設置選擇不同的機器
) t- D8 Y+ T9 X& `6 ] 類型,從DIY米爾斯數控CNC轉換的現成的機器。的設置
$ h; m( y. ]& [% y. m( z 這里列出的文件是由用戶提供的,所以您的結果可能不同。然而,這應該8 _+ P- S! e2 i$ h
給你一個很好的起點,你了解你的機器和調整設置" M0 x4 c! {+ r2 S& `+ q
你的個性的需求。
9 y7 x& N3 \4 o: j. z 確保一個且只有一個這些DEFAULTS_XXX config.h中定義的值" Y+ v v2 F7 d3 @
*/
$ j u& O" `2 ^6 U& T
" Q% `% X) w$ G) F8 U% u#ifndef defaults_h
; a, }% g- p5 O! C+ `# d Z! k3 N! r4 y$ h6 f& `
// Only define the DEFAULT_XXX with where to find the corresponding default_XXX.h file.
* A- x0 @" ] z0 p! |// Don't #define defaults_h here, let the selected file do it. Prevents including more than one.
3 _% G7 w! }: z% m3 p( P7 K//只有定義DEFAULT_XXX在哪里可以找到相應的DEFAULT_XXX。h文件。
6 m+ a8 s6 S4 E. k, a6 B//別在這里# define defaults_h,讓選中的文件。防止包括不止一個。+ c' f% N0 y# w, G+ o
- ?% i2 ]# k* h" H# H9 v6 H
#ifdef DEFAULTS_GENERIC
5 T6 p* O4 }( z) s // Grbl generic default settings. Should work across different machines.
3 r0 i) V' s9 f6 f, o* c' e // Grbl通過通用默認設置就可以在不同的機器上工作。
* b3 n' X# K: ~( M/ T2 x #include "defaults/defaults_generic.h"
$ `+ o2 i( p% O( j4 h5 H6 u! ~#endif
9 I u i; G9 a/ T! W1 t! ^$ Z3 Z; u7 A
#ifdef DEFAULTS_SHERLINE_5400
6 T3 \% f$ i. o, R- E2 H // Description: Sherline 5400 mill with three NEMA 23 Keling KL23H256-21-8B 185 oz-in stepper motors,$ H. P: j8 ~$ t n
// driven by three Pololu A4988 stepper drivers with a 30V, 6A power supply at 1.5A per winding.( f5 J) n" O) G/ b$ B
//描述:Sherline 5400制造廠三個NEMA 23客戶KL23H256-21-8B 185扭力步進電機,1 W7 k) C' U2 e# I
//由三個Pololu A4988步進驅動30 v,6在每1.5繞組供電。% |* h9 z8 V {
3 ?/ l7 U6 s; w
#include "defaults/defaults_sherline.h"
& i }/ g% F: F2 B1 S2 ~3 F/ ^#endif7 h; A& S- ^0 t: c; L {
: B+ f; M$ _6 c- O: L#ifdef DEFAULTS_SHAPEOKO
. r+ z1 c8 B5 S/ i1 X // Description: Shapeoko CNC mill with three NEMA 17 stepper motors, driven by Synthetos
% F5 R+ j+ I- {2 |2 @ // grblShield with a 24V, 4.2A power supply.
T' X. w5 M4 R# z* v2 X // 描述:Shapeoko數控機有三個NEMA 17步進電機,由Synthetos驅動的( u7 N* U _+ B
// grblShield 24 v,4.2電源。
4 W1 Z* `; n8 i- m5 m) _
; J: ]; d `$ v' W+ F( K3 d #include "defaults/defaults_shapeoko.h"! G1 r: ?( u7 N
#endif H8 [, p3 R- Q4 [ Y2 I3 w* Y
4 ?$ ^- P% A' \: l' W
#ifdef DEFAULTS_SHAPEOKO_2
7 O8 ~, L" c$ _# W' V, ]" r' B // Description: Shapeoko CNC mill with three NEMA 17 stepper motors, driven by Synthetos
8 Q2 i$ y6 g& [! `1 O // grblShield at 28V.
! B6 X( ~& }$ e! A0 Y! | // 描述:Shapeoko數控機有三個NEMA 17步進電機,由Synthetos驅動的
* S1 c5 h) K& ^# _' S // grblShield 28 v。8 Y2 a5 s6 A3 y9 Y0 ]
6 Q* \4 S+ M3 E) ^# {. O
#include "defaults/defaults_shapeoko2.h"
* f9 |5 U/ C* |# e, E#endif; C) o5 ^: C; y- t) f
" o: p, D$ p& c+ \3 u7 D) l
#ifdef DEFAULTS_SHAPEOKO_3 N$ Q4 q5 C. D0 P& m
// Description: Shapeoko CNC mill with three NEMA 23 stepper motors, driven by CarbideMotion
1 s- ]7 e5 N6 y5 v: _- D // 描述:Shapeoko數控機有三個NEMA 23步進電機,由CarbideMotion驅動的# i" j0 n. B7 m9 f1 h
& O+ @7 I6 Y: B) \
#include "defaults/defaults_shapeoko3.h": _' G+ Y, N! d) ]
#endif7 D1 {9 x: Z# d8 p, ?1 `- B
& K' ]0 q8 h. T4 f4 E- {
#ifdef DEFAULTS_X_CARVE_500MM
* R [ g8 o- ]5 x) ^$ n0 U // Description: X-Carve 3D Carver CNC mill with three 200 step/rev motors driven by Synthetos" s5 I. O1 z# ]. f# Y5 \& {
// grblShield at 24V.
1 L H: ^' x9 H2 l( b' d9 T2 ~, I // 描述:X-Carve 3 d卡佛數控機有三個200步/汽車由Synthetos牧師grblShield 24 v。
, A# F2 e W5 g2 O- |7 ` #include "defaults/defaults_x_carve_500mm.h") @/ X& v4 R+ O2 R. }
#endif1 N% W. {, q$ @5 l C
! u9 g6 S1 k) d2 G#ifdef DEFAULTS_X_CARVE_1000MM! k3 _# g9 r& `4 D
// Description: X-Carve 3D Carver CNC mill with three 200 step/rev motors driven by Synthetos: Q. T8 y# w0 Z6 v) ?* c6 s4 g2 S
// grblShield at 24V.
* o7 U0 ~! q9 d% S1 c #include "defaults/defaults_x_carve_1000mm.h"
( e$ Z w1 |$ Z$ |4 }#endif, m' p4 v6 B( |, o/ Z# T, H
' _+ s* c, f# k! X: H+ M4 n: N
#ifdef DEFAULTS_ZEN_TOOLWORKS_7x7
' l+ V0 V8 q( |/ O; Q // Description: Zen Toolworks 7x7 mill with three Shinano SST43D2121 65oz-in NEMA 17 stepper motors.
& F, ^2 P. _2 A4 r) X6 z* k // Leadscrew is different from some ZTW kits, where most are 1.25mm/rev rather than 8.0mm/rev here.
" g4 X$ R; a3 o/ N: ?4 q' g // Driven by 30V, 6A power supply and TI DRV8811 stepper motor drivers.4 u* I7 U8 O O" G; `8 t
//描述:禪宗Toolworks 7 x7機有三個Shinano SST43D2121 65扭力NEMA 17步進電機。
) v+ Y) a6 |) P$ p4 {- k% } //導螺桿不同于一些ZTW包,大多數是1.25毫米/牧師而不是8.0毫米/牧師。
& R0 A% Z, s8 W! b, v- T //由30 v 6電源和TI DRV8811步進電機驅動程序。
3 u) n0 D- v0 X( M% x# E0 ?+ c- N. r; [: ?7 r) I0 H' `: R& q
#include "defaults/defaults_zen_toolworks_7x7.h"
) u, J/ m& h( F# `#endif
% f+ x2 ^8 J+ }! y7 X# Y* C. I& W6 K% H {
#ifdef DEFAULTS_OXCNC
% s9 k. y- Y8 p1 K/ ^ // Grbl settings for OpenBuilds OX CNC Machine! Y! r% ]7 W: f& e
// http://www.openbuilds.com/builds/openbuilds-ox-cnc-machine.341/
: @; a+ q4 @ c0 V& C/ h0 w }6 o
# f- J$ R X0 c4 U5 v: J3 ` // http://www.openbuilds.com/builds/openbuilds-ox-cnc-machine.341/ ( R+ d/ l' j5 S9 l/ i: {5 L/ K) t
#include "defaults/defaults_oxcnc.h" // Grbl設置OpenBuilds牛數控機床% y3 o3 s8 y5 n# {, T7 x
#endif9 _! k, v9 r. ~
9 N$ g/ ~6 K$ p#ifdef DEFAULTS_SIMULATOR
+ W% U5 q( @$ F8 _- l4 \ // Settings only for Grbl Simulator (www.github.com/grbl/grbl-sim)
/ e% J$ g) x. M4 @4 Y( l #include "defaults/defaults_simulator.h" //設置只對Grbl模擬器(www.github.com/grbl/grbl-sim)
+ b/ [7 G+ X3 ~/ k#endif" s; A( B# Z2 a, e
h7 a& y5 i# m5 W
#endif
5 ~# |; {! l" k2 F
9 V8 i5 T0 z3 B2 B. _& e__________________________________________________________________________________________________________________
; c" J/ Q( s0 B+ ]: T/*; L2 R0 Y1 i+ I X4 {8 O# \
defaults_generic.h -默認設置配置文件Grbl的一部分( z7 w- F; ]5 }! y3 F& E4 H
版權(c)2012 - 2015 Sungeun k全
: R& ?4 W) P4 |+ DGrbl是免費軟件:可以重新分配和/或修改
- m& [; B8 v; S8 w+ k0 iGNU通用公共許可證的條款下發(fā)布的5 E/ M& `5 X a% V3 ? }
自由軟件基金會,版本3的許可,或! [- A8 z' K( T* v7 \
(任您選)其后的版本。
& W, h0 o* X8 f: X( _
4 E9 ^; C/ l( j! r5 n& W9 NGrbl分布,希望這將是有用的,
+ V7 Z7 k, ]) @3 F4 @: k& R但是沒有任何保證;沒有即使的默示保證% @ o5 W i& }+ q! p
適銷性或健身為特定目的??吹?br />
j& z$ ?; h, D, m4 V6 w# a" fGNU通用公共許可證的更多細節(jié)。3 ]8 a" O: K8 M$ d
, w" m8 E! k) s/ \) W; N7 I6 O你應該收到了GNU通用公共許可證的副本3 J4 J( \6 K7 v2 o+ W( d# g
連同Grbl。如果沒有,看< http://www.gnu.org/licenses/ >。2 C, Q2 W* O1 w# B" _- \/ M
* /, H4 e3 V. c7 \; U& K
5 k, d G H8 W$ Q+ M
/ *默認值。h文件作為一個中央默認設置文件不同的機器8 _/ s) {+ Q0 X" \0 k! G* F
類型,從DIY米爾斯數控CNC轉換的現成的機器。的設置
1 U7 N3 r/ G4 j e% u這是由用戶提供,所以您的結果可能不同。然而,這應該給你
9 E b% y8 B; V+ u* P5 S一個好的起點,你了解你的機器和調整的設置 f3 U# U2 ^! V1 Y
邪惡的需求。*/ C t: E, L) z( B! F9 q4 C" ]9 U
) O: C" y# l- p- K: K
) S! J; n& \6 S#ifndef defaults_h
3 s; e+ D7 b4 O2 H* i#define defaults_h# N s" b c4 C' y
3 _) j' v+ |6 Z0 d; h. ] // Grbl generic default settings. Should work across different machines.. k5 z" W$ n; A$ T
#define DEFAULT_X_STEPS_PER_MM 250.0 //X軸每mm脈沖當量 3 V3 S& ]/ {2 v7 J% m3 I+ ^
#define DEFAULT_Y_STEPS_PER_MM 250.0
4 o7 ]5 h: J+ T #define DEFAULT_Z_STEPS_PER_MM 250.0
) |. ~( n4 K" W; c #define DEFAULT_X_MAX_RATE 500.0 // mm/min 最大速度; i" g0 x; X" ^( t1 c9 F$ x4 Y! `$ P
#define DEFAULT_Y_MAX_RATE 500.0 // mm/min+ e: q- c# f* |) w( M2 G
#define DEFAULT_Z_MAX_RATE 500.0 // mm/min
6 {6 f7 O4 H" Q3 g" @2 \/*這是毫米/秒/秒的加速度。5 F; K+ D: M' f3 U
你不需要理解這是什么意思,我只想說,一個較低的值給smooooother加速度而價值更高的收益率更嚴格的措施,達到所需的進料速度更快。
- {& i9 C) s- {$ n* p' \5 t從技術角度講,這是您的機器的點對點的加速度,獨立于軸。設置加速度值高達你最限制軸可以讓你在不丟失任何步驟。* M- K1 P, x4 D, {/ L
通常你想給自己一些緩沖,因為如果你失去了步驟,Grbl不知道這發(fā)生了(開環(huán)控制步進),并將繼續(xù)。*/- l# x n$ a8 I# \; H3 q
#define DEFAULT_X_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2 加速度
. J- S0 a+ A3 N #define DEFAULT_Y_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2! d ]9 D) X/ @9 v' x# Q% v# Q
#define DEFAULT_Z_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
- T2 |- n5 `, X0 |0 k+ r( D1 e #define DEFAULT_X_MAX_TRAVEL 200.0 // mm 最大步行
9 ?, G$ g/ q& s$ H #define DEFAULT_Y_MAX_TRAVEL 200.0 // mm g: o+ W+ \, a7 U0 }
#define DEFAULT_Z_MAX_TRAVEL 200.0 // mm
& c) t% K. b: A7 R% o #define DEFAULT_STEP_PULSE_MICROSECONDS 10 //步進驅動脈沖長度! u& s/ |% `' m4 p* a
#define DEFAULT_STEPPING_INVERT_MASK 0 //步進是否反轉6 K [" j2 B3 Z+ w5 @9 J& D4 n
#define DEFAULT_DIRECTION_INVERT_MASK 0 //方向是否反轉
) T+ T- n3 Z) N# m /*0 ~* D3 Y7 l: a) K. |# a
每次你完成步進運動和停止,Grbl將禁用默認步進。
$ F# C) ^+ f# d. f" a( a- L鎖步進空閑時間時間長度Grbl將步進鎖之前禁用。
$ x# E* H' y' n7 D, o, U- x# W根據系統(tǒng)中,您可以將這個參數設置為零,禁用它。對他人,你可能需要25 - 50毫秒來確保你的斧子來完成禁用前停止。(我的機器往往漂移稍微如果我沒有啟用。)0 q; e- E$ ?& D. o; U( j2 |
或者,你可以讓你的軸在任何時候啟用通過將這個值設置為最大255毫秒。再次重復,你總是可以保持所有軸通過設置啟用7美元= 255。*/
. K0 [$ @9 q5 V' P: q2 ` #define DEFAULT_STEPPER_IDLE_LOCK_TIME 25 // msec (0-254, 255 keeps steppers enabled)步進閑著時間
9 o8 [4 e) h2 Y1 m0 r' t- k% E #define DEFAULT_STATUS_REPORT_MASK ((BITFLAG_RT_STATUS_MACHINE_POSITION)|(BITFLAG_RT_STATUS_WORK_POSITION)) //是否打印狀態(tài)報告- |0 k: [$ ^- j2 R
/*一些高低cnc-stepper控制器需要輸入反方向和步驟。" P, \: F$ a# o7 w
信號線路通常是高或低信號方向或高,低了幾微秒一步事件信號。為了達到這個目標,Grbl可以反轉輸出比特來滿足特定的需求。
; P! s' r+ H( ~4 _1 B+ I反掩碼值是一個字節(jié),xor的步驟和方向步進港數據之前發(fā)送。這樣你可以使用這兩個轉化步驟脈沖或轉化的一個或多個方向的軸。6 m; K; z3 O o6 y3 \3 s; e
這個字節(jié)對應的比特分配給介入config.h別針。請注意,不用于反演位0和1。默認比特分配是這樣的:*/! N$ U; B- k4 z2 q- D0 h
# ^9 u5 W, w# J% U$ v/ v8 o/* 轉彎路口偏差使用加速度經理決定它如何快速穿過一條路徑。
3 F# k% l, `/ D: v5 J 數學有點復雜,但總的來說,更高的價值給一般快,可能的波動運動。低價值使得加速度經理更加謹慎,將導致小心和慢轉彎。
' U1 d% J0 M* b* }$ X 如果你遇到問題,你的機器試圖把一個角落太快,降低此值使它慢下來。
% ]: M8 I' M' ?, d5 @% m+ A! P F 如果你想讓你的機器通過連接移動得更快,增加這個值速度。# ~; v' D' w. a4 d3 ]- M9 N* c
為技術人員,點擊這個鏈接閱讀關于Grbl轉彎算法,速度和結角占一個很簡單,高效和可靠的方法。*/0 c! `* Q# C" H. h: ]
4 D$ ^2 L( T0 p
#define DEFAULT_JUNCTION_DEVIATION 0.01 // mm //偏差
. F9 r, ]1 _ J# l# H #define DEFAULT_ARC_TOLERANCE 0.002 // mm //圓弧公差
9 g% S- U7 M2 z4 r3 d' Z #define DEFAULT_REPORT_INCHES 0 // false //打印英寸3 d* f2 G- I+ g. p) s
/*默認情況下,步進使銷是啟用禁用高和低。如果您的設置需要相反的,只是反步進使銷通過輸入15美元= 1。禁用與15美元= 0。(可能需要一個動力循環(huán)加載的變化。)*/9 w M2 i% Q6 ]* s; L6 J
#define DEFAULT_INVERT_ST_ENABLE 0 // false
/ b& X' d/ p$ | f& ^$ } #define DEFAULT_INVERT_LIMIT_PINS 0 // false //反轉限位引腳
: \- @; R9 @. x- H# P6 I+ g( k #define DEFAULT_SOFT_LIMIT_ENABLE 0 // false //軟件限位
q% B4 y: l: y r% R #define DEFAULT_HARD_LIMIT_ENABLE 0 // false //硬件限位: g: |2 f/ h/ g1 P% M- K" @, s
#define DEFAULT_HOMING_ENABLE 0 // false //回原點使能7 }: d5 ^* D/ l2 ]) f
#define DEFAULT_HOMING_DIR_MASK 0 // move positive dir
% p6 A5 h$ t9 D7 T7 g: M #define DEFAULT_HOMING_FEED_RATE 25.0 // mm/min
9 R' z$ K# S) _- n; Q0 p, u #define DEFAULT_HOMING_SEEK_RATE 500.0 // mm/min: D# h; j( }( [) F: z
#define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)防抖動延時/ @. Q3 P) g8 G7 z6 d
#define DEFAULT_HOMING_PULLOFF 1.0 // mm5 A: ?; _# b$ k1 n# [; G6 |
: ]9 j8 ^$ c, `2 s9 a
#endif8 Z% ?/ a5 j9 i
5 }3 r- O) U8 K. }) p) b: s3 N
1 t* j R+ p8 \* h/ s. B5 h# ~
Z, J( @* z! K1 |. |4 Z* m
8 P. E \" A# d; v7 Q
1 e/ Z8 t1 U$ o
) T# G1 \' _1 E# `, q- B
# J6 I* N4 B8 h6 O# W7 a/ c A3 Y6 i: r1 O9 g& b/ ?6 Y7 | L
' [' {$ P4 A5 b8 ?9 N5 L
9 d3 G8 E% J8 v& o: k
; j3 n% ^- B( N$ _% [# s/ |
8 @5 p8 q P/ F4 ~5 x3 D9 \; k# n6 G
8 W- `7 ^! \/ B$ o& |) ?
+ a: X) e3 |) @% A; L3 i$ H) `6 D; C9 }+ Y2 x9 p
- V0 f# W+ S2 b2 e* S2 G' ?. y1 }' J
6 x3 K' Q% |% N/ i( U8 T; }
4 S" q Y/ q3 M5 X- l4 ?
- ~, h: j D2 K2 M: H) W
J' N6 w3 t2 \0 W! I- p; {
" c' G' @- w; G" T/ n) D* i4 k- P& {
% ^; M; @1 A1 T# L
0 ?$ F8 W/ Y$ ]+ h1 o6 A4 y% A4 L. z3 b. v
|