Mercurial > epgrec.yaz
annotate config.php.sample @ 77:cb7da56c4198
modified: Keyword.class.php
modified: config.php.sample
modified: index.php
modified: install/step1.php
modified: keywordTable.php
modified: programTable.php
modified: simpleReservation.php
modified: templates/index.html
modified: templates/keywordTable.html
modified: templates/programTable.html
author | Sushi-k <epgrec@park.mda.or.jp> |
---|---|
date | Wed, 24 Feb 2010 20:22:19 +0900 |
parents | 69e0dabc765a |
children | cce6f88590fd |
rev | line source |
---|---|
1 | 1 <?php |
2 | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
3 // settings/gr_channel.phpが作成された場合、 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
4 // config.php内の$GR_CHANNEL_MAPは無視されます |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
5 |
1 | 6 // 首都圏用地上デジタルチャンネルマップ |
7 // 識別子 => チャンネル番号 | |
8 $GR_CHANNEL_MAP = array( | |
9 "GR27" => "27", // NHK | |
10 "GR26" => "26", // 教育 | |
11 "GR25" => "25", // 日テレ | |
12 "GR22" => "22", // 東京 | |
13 "GR21" => "21", // フジ | |
14 "GR24" => "24", // テレ朝 | |
15 "GR23" => "23", // テレ東 | |
16 // "GR20" => "20", // MX TV | |
17 // "GR18" => "18", // テレ神 | |
18 "GR30" => "30", // 千葉 | |
19 // "GR32" => "32", // テレ玉 | |
20 "GR28" => "28", // 大学 | |
21 ); | |
22 | |
23 /* | |
24 // 大阪地区デジタルチャンネルマップ(参考) | |
25 $GR_CHANNEL_MAP = array( | |
26 "GR24" => "24", // NHK | |
27 "GR13" => "13", // 教育 | |
28 "GR16" => "16", // 毎日 | |
29 "GR15" => "15", // 朝日 | |
30 "GR17" => "17", // 関西 | |
31 "GR14" => "14", // 読売 | |
32 "GR18" => "18", // テレビ大阪 | |
33 ); | |
34 */ | |
35 | |
36 | |
37 // 録画モード(option) | |
38 | |
39 $RECORD_MODE = array( | |
40 // ※ 0は必須で、変更不可です。 | |
41 0 => array( | |
3 | 42 'name' => 'Full TS', // モードの表示名 |
43 'suffix' => '.ts', // ファイル名のサフィックス | |
1 | 44 ), |
45 | |
46 /* Examples is as follows. | |
47 | |
48 1 => array( | |
49 'name' => 'Min PID', | |
50 'suffix' => '_tss.ts', | |
51 ), | |
52 | |
53 2 => array( | |
54 'name' => '12Mbps MPEG4', | |
55 'suffix' => '.avi', | |
56 ), | |
57 */ | |
58 ); | |
59 | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
60 // 以下、USE_KUROBON以外の定数は設定不要になりました |
1 | 61 |
32
01a8fdc0cebb
testing: Web base setting page.
Sushi-k <epgrec@park.mda.or.jp>
parents:
19
diff
changeset
|
62 define( "INSTALL_PATH", dirname(__FILE__) ); // インストールパス |
1 | 63 define( "USE_KUROBON", false ); // BSチューナーとしてFriio BS/CSを使うならtrue |
64 | |
65 // 以降は必要に応じて変更する | |
66 | |
67 define( "PADDING_TIME", 180 ); // 詰め物時間 | |
68 define( "DO_RECORD", INSTALL_PATH . "/do-record.sh" ); // レコードスクリプト | |
69 define( "COMPLETE_CMD", INSTALL_PATH . "/recomplete.php" ); // 録画終了コマンド | |
47 | 70 define( "GEN_THUMBNAIL", INSTALL_PATH . "/gen-thumbnail.sh" ); // サムネール生成スクリプト |
1 | 71 |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
72 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
73 // 地上デジタルチャンネルテーブルsettings/gr_channel.phpが存在するならそれを |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
74 // 優先する |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
75 if( file_exists( INSTALL_PATH."/settings/gr_channel.php" ) ) { |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
76 unset($GR_CHANNEL_MAP); |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
77 include_once( INSTALL_PATH."/settings/gr_channel.php" ); |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
78 } |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
79 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
80 |
1 | 81 // 全国用BSデジタルチャンネルマップ |
82 $BS_CHANNEL_MAP = array( | |
83 "3001.ontvjapan.com" => "101", | |
84 "3002.ontvjapan.com" => "102", | |
85 "3003.ontvjapan.com" => "103", | |
86 "3004.ontvjapan.com" => "141", | |
87 "3005.ontvjapan.com" => "151", | |
88 "3006.ontvjapan.com" => "161", | |
89 "3007.ontvjapan.com" => "171", | |
90 "3008.ontvjapan.com" => "181", | |
91 "3009.ontvjapan.com" => "191", | |
92 "3010.ontvjapan.com" => "192", | |
93 "3011.ontvjapan.com" => "193", | |
94 "3013.ontvjapan.com" => "211", | |
95 "3014.ontvjapan.com" => "222", | |
96 ); | |
97 | |
98 if( USE_KUROBON ) { | |
99 $BS_CHANNEL_MAP = array( | |
100 "3001.ontvjapan.com" => "B10", | |
101 "3002.ontvjapan.com" => "B10", | |
102 "3003.ontvjapan.com" => "B11", | |
103 "3004.ontvjapan.com" => "B8", | |
104 "3005.ontvjapan.com" => "B1", | |
105 "3006.ontvjapan.com" => "B2", | |
106 "3007.ontvjapan.com" => "B4", | |
107 "3008.ontvjapan.com" => "B9", | |
108 "3009.ontvjapan.com" => "B3", | |
109 "3010.ontvjapan.com" => "B3", | |
110 "3011.ontvjapan.com" => "B3", | |
111 "3013.ontvjapan.com" => "B5", | |
112 "3014.ontvjapan.com" => "B7", | |
113 ); | |
114 } | |
115 | |
68 | 116 // 全国用CSデジタルチャンネルマップ |
117 $CS_CHANNEL_MAP = array( | |
118 "1002.ontvjapan.com" => "CS2", // 237, // "スターchプラス" | |
119 "1086.ontvjapan.com" => "CS2", // 239, // "日本映画専門chHD" | |
120 "306ch.epgdata.ontvjapan" => "CS2", // 306, // "フジテレビCSHD" | |
121 | |
122 "100ch.epgdata.ontvjapan" => "CS4", // 100, // "e2プロモ" | |
123 "1025.ontvjapan.com" => "CS4", // 256, // "Jスポーツ ESPN" | |
124 "1016.ontvjapan.com" => "CS4", // 312, // "FOX" | |
125 "1018.ontvjapan.com" => "CS4", // 322, // "スペースシャワーTV" | |
126 "1046.ontvjapan.com" => "CS4", // 331, // "カートゥーン ネット" | |
127 "194ch.epgdata.ontvjapan" => "CS4", // 194, // "インターローカルTV" | |
128 "1213.ontvjapan.com" => "CS4", // 334, // "トゥーン・ディズニー" | |
129 | |
130 "1010.ontvjapan.com" => "CS6", // 221, // "東映チャンネル" | |
131 "1005.ontvjapan.com" => "CS6", // 222, // "衛星劇場" | |
132 "1008.ontvjapan.com" => "CS6", // 223, // "チャンネルNECO" | |
133 "1009.ontvjapan.com" => "CS6", // 224, // "洋画★シネフィル" | |
134 "1133.ontvjapan.com" => "CS6", // 292, // "時代劇専門チャンネル" | |
135 "1003.ontvjapan.com" => "CS6", // 238, // "スター・クラシック" | |
136 "1006.ontvjapan.com" => "CS6", // 310, // "スーパードラマ" | |
137 "1014.ontvjapan.com" => "CS6", // 311, // "AXN" | |
138 "1204.ontvjapan.com" => "CS6", // 343, // "ナショジオチャンネル" | |
139 | |
140 "1059.ontvjapan.com" => "CS8", // 55, // "ショップチャンネル" | |
141 | |
142 "1217.ontvjapan.com" => "CS10", // 228, // "ザ・シネマ" | |
143 "800ch.epgdata.ontvjapan" => "CS10", // 800, // "スカチャンHD800" | |
144 "801ch.epgdata.ontvjapan" => "CS10", // 801, // "スカチャン801" | |
145 "802ch.epgdata.ontvjapan" => "CS10", // 802, // "スカチャン802" | |
146 | |
147 "1028.ontvjapan.com" => "CS12", // 260, // "ゴルフチャンネル" | |
148 "1092.ontvjapan.com" => "CS12", // 303, // "テレ朝チャンネル" | |
149 "1019.ontvjapan.com" => "CS12", // 323, // "MTV" | |
150 "1024.ontvjapan.com" => "CS12", // 324, // "ミュージック・エア" | |
151 "1067.ontvjapan.com" => "CS12", // 352, // "朝日ニュースター" | |
152 "1070.ontvjapan.com" => "CS12", // 353, // "BBCワールド" | |
153 "1069.ontvjapan.com" => "CS12", // 354, // "CNNj" | |
154 "361ch.epgdata.ontvjapan" => "CS12", // 361, // "ジャスト・アイ" | |
155 | |
156 "1041.ontvjapan.com" => "CS14", // 251, // "Jスポーツ 1" | |
157 "1042.ontvjapan.com" => "CS14", // 252, // "Jスポーツ 2" | |
158 "1043.ontvjapan.com" => "CS14", // 253, // "JスポーツPlusH" | |
159 "1026.ontvjapan.com" => "CS14", // 254, // "GAORA" | |
160 "1040.ontvjapan.com" => "CS14", // 255, // "sky・Aスポーツ+" | |
161 | |
162 "305ch.epgdata.ontvjapan" => "CS16", // 305, // "チャンネル銀河" | |
163 "1201.ontvjapan.com" => "CS16", // 333, // "AT-X" | |
164 "1050.ontvjapan.com" => "CS16", // 342, // "ヒストリーチャンネル" | |
165 "803ch.epgdata.ontvjapan" => "CS16", // 803, // "スカチャン803" | |
166 "804ch.epgdata.ontvjapan" => "CS16", // 804, // "スカチャン804" | |
167 "1207.ontvjapan.com" => "CS16", // 290, // "SKY・STAGE" | |
168 | |
169 "1007.ontvjapan.com" => "CS18", // 240, // "ムービープラスHD" | |
170 "1027.ontvjapan.com" => "CS18", // 262, // "ゴルフネットワーク" | |
171 "1074.ontvjapan.com" => "CS18", // 314, // "LaLa HD" | |
172 | |
173 "1073.ontvjapan.com" => "CS20", // 258, // "フジテレビ739" | |
174 "1072.ontvjapan.com" => "CS20", // 302, // "フジテレビ721" | |
175 "1047.ontvjapan.com" => "CS20", // 332, // "アニマックス" | |
176 "1062.ontvjapan.com" => "CS20", // 340, // "ディスカバリー" | |
177 "1193.ontvjapan.com" => "CS20", // 341, // "アニマルプラネット" | |
178 | |
179 "160ch.epgdata.ontvjapan" => "CS22", // 160, // "C-TBSウエルカム" | |
180 //"1120.ontvjapan.com" => "CS22", // 161, // "QVC" | |
181 "185ch.epgdata.ontvjapan" => "CS22", // 185, // "プライム365.TV" | |
182 "1015.ontvjapan.com" => "CS22", // 293, // "ファミリー劇場" | |
183 "3201.ontvjapan.com" => "CS22", // 301, // "TBSチャンネル" | |
184 "1090.ontvjapan.com" => "CS22", // 304, // "ディズニーチャンネル" | |
185 "1022.ontvjapan.com" => "CS22", // 325, // "MUSIC ON! TV" | |
186 "1045.ontvjapan.com" => "CS22", // 330, // "キッズステーション" | |
187 "1076.ontvjapan.com" => "CS22", // 351, // "TBSニュースバード" | |
188 | |
189 "1068.ontvjapan.com" => "CS24", // 257, // "日テレG+" | |
190 "5004.ontvjapan.com" => "CS24", // 291, // "fashion TV" | |
191 "300ch.epgdata.ontvjapan" => "CS24", // 300, // "日テレプラス" | |
192 "1023.ontvjapan.com" => "CS24", // 320, // "エコミュージックTV" | |
193 "1208.ontvjapan.com" => "CS24", // 321, // "Music Japan TV" | |
194 "2002.ontvjapan.com" => "CS24", // 350, // "日テレNEWS24" | |
195 /* | |
196 "110ch.epgdata.ontvjapan" => "CS22", 110, // "ワンテンポータル" | |
197 "101ch.epgdata.ontvjapan" => "CS22", 101, // "宝塚プロモチャンネル" | |
198 "147ch.epgdata.ontvjapan" => "CS22", 147, // "CS日本番組ガイド" | |
199 */ | |
200 ); | |
1 | 201 |
202 // DBテーブル情報 以下は変更しないでください | |
203 | |
204 define( "RESERVE_TBL", "reserveTbl" ); // 予約テーブル | |
205 define( "PROGRAM_TBL", "programTbl" ); // 番組表 | |
206 define( "CHANNEL_TBL", "channelTbl" ); // チャンネルテーブル | |
207 define( "CATEGORY_TBL", "categoryTbl" ); // カテゴリテーブル | |
208 define( "KEYWORD_TBL", "keywordTbl" ); // キーワードテーブル | |
209 | |
210 // 予約テーブル | |
211 define( "RESERVE_STRUCT", | |
212 "id integer not null auto_increment primary key,". // ID | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
213 "channel_disc varchar(128) not null default 'none',". // channel disc |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
214 "channel_id integer not null default '0',". // channel ID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
215 "program_id integer not null default '0',". // Program ID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
216 "type varchar(8) not null default 'GR',". // 種別(GR/BS/CS) |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
217 "channel varchar(10) not null default '0',". // チャンネル |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
218 "title varchar(512) not null default 'none',". // タイトル |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
219 "description varchar(512) not null default ' ',". // 説明 text->varchar |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
220 "category_id integer not null default '0',". // カテゴリID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
221 "starttime datetime not null default '1970-01-01 00:00:00',". // 開始時刻 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
222 "endtime datetime not null default '1970-01-01 00:00:00',". // 終了時刻 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
223 "job integer not null default '0',". // job番号 |
19
9648e3af1777
change: field type ( title, path )
Sushi-k <epgrec@park.mda.or.jp>
parents:
11
diff
changeset
|
224 "path blob default null,". // 録画ファイルパス |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
225 "complete boolean not null default '0',". // 完了フラグ |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
226 "reserve_disc varchar(128) not null default 'none',". // 識別用hash |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
227 "autorec integer not null default '0',". // キーワードID |
77 | 228 "mode integer not null default '0',". //録画モード |
229 "index reserve_idx (channel_disc, starttime)" // インデックス | |
1 | 230 ); |
231 | |
232 | |
233 // 番組表テーブル | |
234 define( "PROGRAM_STRUCT", | |
235 "id integer not null auto_increment primary key,". // ID | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
236 "channel_disc varchar(128) not null default 'none',". // channel disc |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
237 "channel_id integer not null default '0',". // channel ID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
238 "type varchar(8) not null default 'GR',". // 種別(GR/BS/CS) |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
239 "channel varchar(10) not null default '0',". // チャンネル |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
240 "title varchar(512) not null default 'none',". // タイトル |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
241 "description varchar(512) not null default 'none',". // 説明 text->varchar |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
242 "category_id integer not null default '0',". // カテゴリID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
243 "starttime datetime not null default '1970-01-01 00:00:00',". // 開始時刻 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
244 "endtime datetime not null default '1970-01-01 00:00:00',". // 終了時刻 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
245 "program_disc varchar(128) not null default 'none',". // 識別用hash |
77 | 246 "autorec boolean not null default '1',". // 自動録画有効無効 |
247 "index program_idx (channel_disc, starttime)" // インデックス | |
248 | |
1 | 249 ); |
250 | |
251 | |
252 define( "CHANNEL_STRUCT", | |
253 "id integer not null auto_increment primary key,". // ID | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
254 "type varchar(8) not null default 'GR',". // 種別 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
255 "channel varchar(10) not null default '0',". // channel |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
256 "name varchar(512) not null default 'none',". // 表示名 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
257 "channel_disc varchar(128) not null default 'none',". // 識別用hash |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
258 "sid varchar(64) not null default 'hd'" // サービスID用02/23/2010追加 |
1 | 259 ); |
260 | |
261 define( "CATEGORY_STRUCT", | |
262 "id integer not null auto_increment primary key,". // ID | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
263 "name_jp varchar(512) not null default 'none',". // 表示名 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
264 "name_en varchar(512) not null default 'none',". // 同上 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
265 "category_disc varchar(128) not null default 'none'" // 識別用hash |
1 | 266 ); |
267 | |
268 | |
269 define( "KEYWORD_STRUCT", | |
270 "id integer not null auto_increment primary key,". // ID | |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
271 "keyword varchar(512) not null default '*',". // 表示名 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
272 "type varchar(8) not null default '*',". // 種別 |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
273 "channel_id integer not null default '0',". // channel ID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
274 "category_id integer not null default '0',". // カテゴリID |
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
275 "use_regexp boolean not null default '0',". // 正規表現を使用するなら1 |
77 | 276 "autorec_mode integer not null default '0',". // 自動録画のモード02/23/2010追加 |
277 "weekofday enum ('0','1','2','3','4','5','6','7' ) default '7'" // 曜日 | |
1 | 278 ); |
76
69e0dabc765a
fixed: Reservation.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
68
diff
changeset
|
279 ?> |