Commit 8d05af0c8765b5d849be87f153b8363b97f0ce5d
1 parent
235e6900
Exists in
newLive
no message
Showing
9 changed files
with
453 additions
and
199 deletions
Show diff stats
YouerLiveVideo/YouerLiveVideo.xcodeproj/project.pbxproj
... | ... | @@ -47,6 +47,7 @@ |
47 | 47 | 599B2CE11DE52F7E00B4F7FD /* UMShareMenuSelectionView.m in Sources */ = {isa = PBXBuildFile; fileRef = 599B2CCE1DE52F7E00B4F7FD /* UMShareMenuSelectionView.m */; }; |
48 | 48 | 599B2CE21DE52F7E00B4F7FD /* UMSocialShareScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = 599B2CD01DE52F7E00B4F7FD /* UMSocialShareScrollView.m */; }; |
49 | 49 | 599B2CE31DE52F7E00B4F7FD /* UMSocialUIManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 599B2CD21DE52F7E00B4F7FD /* UMSocialUIManager.m */; }; |
50 | + 59AE3DF91ECE8A90003E2C62 /* pinyin.c in Sources */ = {isa = PBXBuildFile; fileRef = 59AE3DF71ECE8A90003E2C62 /* pinyin.c */; }; | |
50 | 51 | 59BA13251E25CF2B00540DE0 /* AliyunPlayerSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59BA13241E25CF2B00540DE0 /* AliyunPlayerSDK.framework */; }; |
51 | 52 | 59BA13271E25CF4B00540DE0 /* AliyunPlayerSDK.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 59BA13241E25CF2B00540DE0 /* AliyunPlayerSDK.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; |
52 | 53 | 59BA13311E25D1C000540DE0 /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 59BA13301E25D1C000540DE0 /* Reachability.m */; }; |
... | ... | @@ -329,6 +330,8 @@ |
329 | 330 | 599B2CD01DE52F7E00B4F7FD /* UMSocialShareScrollView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UMSocialShareScrollView.m; sourceTree = "<group>"; }; |
330 | 331 | 599B2CD11DE52F7E00B4F7FD /* UMSocialUIManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UMSocialUIManager.h; sourceTree = "<group>"; }; |
331 | 332 | 599B2CD21DE52F7E00B4F7FD /* UMSocialUIManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UMSocialUIManager.m; sourceTree = "<group>"; }; |
333 | + 59AE3DF71ECE8A90003E2C62 /* pinyin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pinyin.c; sourceTree = "<group>"; }; | |
334 | + 59AE3DF81ECE8A90003E2C62 /* pinyin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pinyin.h; sourceTree = "<group>"; }; | |
332 | 335 | 59BA13241E25CF2B00540DE0 /* AliyunPlayerSDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AliyunPlayerSDK.framework; path = YouerLiveVideo/lib/AliyunPlayerSDK.framework; sourceTree = "<group>"; }; |
333 | 336 | 59BA132F1E25D1C000540DE0 /* Reachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Reachability.h; sourceTree = "<group>"; }; |
334 | 337 | 59BA13301E25D1C000540DE0 /* Reachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Reachability.m; sourceTree = "<group>"; }; |
... | ... | @@ -1224,6 +1227,8 @@ |
1224 | 1227 | children = ( |
1225 | 1228 | BFBB83D41ECC4446008B404B /* PassWordView.swift */, |
1226 | 1229 | BFBB83D51ECC4446008B404B /* PassWordView.xib */, |
1230 | + 59AE3DF71ECE8A90003E2C62 /* pinyin.c */, | |
1231 | + 59AE3DF81ECE8A90003E2C62 /* pinyin.h */, | |
1227 | 1232 | 59F801A91DD57253000A78B0 /* ZSDSetPasswordView.h */, |
1228 | 1233 | 59F801AA1DD57253000A78B0 /* ZSDSetPasswordView.m */, |
1229 | 1234 | BFDFDEC81DD55C0D0040F102 /* account.swift */, |
... | ... | @@ -1498,6 +1503,7 @@ |
1498 | 1503 | BF7B75A81E305A6D0011D5C7 /* UIScrollView+MJRefresh.m in Sources */, |
1499 | 1504 | BF25E0021DDAA36A003EC0C1 /* UIButton+WebCache.m in Sources */, |
1500 | 1505 | BF7B759E1E305A6D0011D5C7 /* MJRefreshBackGifFooter.m in Sources */, |
1506 | + 59AE3DF91ECE8A90003E2C62 /* pinyin.c in Sources */, | |
1501 | 1507 | BF25DFF81DDAA36A003EC0C1 /* NSData+ImageContentType.m in Sources */, |
1502 | 1508 | BF25E0151DDAAF73003EC0C1 /* SVIndefiniteAnimatedView.m in Sources */, |
1503 | 1509 | BFF5F4921DD5B7CA00D33B89 /* SwiftyJSON.swift in Sources */, | ... | ... |
YouerLiveVideo/YouerLiveVideo/YouerLiveVideo-Bridging-Header.h
YouerLiveVideo/YouerLiveVideo/controllers/TVStation/SearchTVStationListViewController.swift
... | ... | @@ -8,21 +8,78 @@ |
8 | 8 | |
9 | 9 | import UIKit |
10 | 10 | |
11 | -class SearchTVStationListViewController: UIViewController { | |
11 | +class SearchTVStationListViewController: UIViewController,UISearchBarDelegate { | |
12 | 12 | var alList:[String] = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"] |
13 | - var grad:[String] = ["小学","初中","高中","全部年段"] | |
13 | + var grad:[String] = [] | |
14 | + | |
15 | + @IBOutlet weak var selectTableView: UITableView! | |
16 | + | |
14 | 17 | @IBOutlet weak var downIcon: UIImageView! |
15 | 18 | @IBOutlet weak var gradName: UILabel! |
16 | 19 | @IBOutlet weak var tableView: UITableView! |
17 | 20 | @IBOutlet weak var selectView: UIView! |
18 | - | |
21 | + var dataSet:[TVStationInfor] = [] | |
22 | + var dataDic:[String:[TVStationInfor]] = [:] | |
23 | + var allKeys:[String] = [] | |
19 | 24 | override func viewDidLoad() { |
20 | 25 | super.viewDidLoad() |
21 | 26 | gradName.text = "全部年段" |
22 | 27 | tableView.tintColor = UIColor.lightGray |
28 | + AppDelegate.instance().httpServer.getAllSchool(parameters: nil) { (str, error) in | |
29 | + httpJsonResule(jsonString: str, error: error, successHandler: { (json) in | |
30 | + self.grad.append("全部年段") | |
31 | + for item in json.contentData().arrayValue{ | |
32 | + self.dataSet.append(TVStationInfor(json: item)) | |
33 | + for (index,gr) in self.grad.enumerated(){ | |
34 | + if item["f_SchoolType"].stringValue == gr{ | |
35 | + break | |
36 | + } | |
37 | + if index == self.grad.count-1{ | |
38 | + self.grad.insert(item["f_SchoolType"].stringValue, at: 0) | |
39 | + } | |
40 | + } | |
41 | + } | |
42 | + self.dataSet = self.dataSet.sorted { (t1, t2) -> Bool in | |
43 | + return getFirstLetter(str: t1.f_SchoolName) < getFirstLetter(str: t2.f_SchoolName) | |
44 | + } | |
45 | + self.sortDataSet(arr: self.dataSet,type: self.grad.last!) | |
46 | + }, failHandler: { (error) in | |
47 | + | |
48 | + }) | |
49 | + } | |
23 | 50 | // Do any additional setup after loading the view. |
24 | 51 | } |
25 | - | |
52 | + | |
53 | + //在一个的列表选择所有当前要求的年段的列表并放到dic中 | |
54 | + func sortDataSet(arr:[TVStationInfor],type:String){ | |
55 | + dataDic.removeAll() | |
56 | + var array:[TVStationInfor] = [] | |
57 | + if type == grad.last{ | |
58 | + array = arr | |
59 | + }else{ | |
60 | + for item in arr { | |
61 | + if item.f_SchoolType == type{ | |
62 | + array.append(item) | |
63 | + } | |
64 | + } | |
65 | + } | |
66 | + for al in alList { | |
67 | + var tmp:[TVStationInfor] = [] | |
68 | + for item in array { | |
69 | + if getFirstLetter(str: item.f_SchoolName) == al{ | |
70 | + tmp.append(item) | |
71 | + } | |
72 | + } | |
73 | + if tmp.count > 0{ | |
74 | + dataDic.updateValue(tmp, forKey: al) | |
75 | + } | |
76 | + } | |
77 | + allKeys = Array(dataDic.keys).sorted(by: { (s1, s2) -> Bool in | |
78 | + return s1 < s2 | |
79 | + }) | |
80 | + tableView.reloadData() | |
81 | + } | |
82 | + | |
26 | 83 | override func didReceiveMemoryWarning() { |
27 | 84 | super.didReceiveMemoryWarning() |
28 | 85 | // Dispose of any resources that can be recreated. |
... | ... | @@ -30,24 +87,21 @@ class SearchTVStationListViewController: UIViewController { |
30 | 87 | |
31 | 88 | @IBAction func selectGradClick(_ sender: UIButton) { |
32 | 89 | selectView.isHidden = false |
90 | + selectTableView.reloadData() | |
33 | 91 | } |
34 | - | |
35 | 92 | |
36 | - @IBAction func selectBtnClick(_ sender: UIButton) { | |
37 | - selectView.isHidden = true | |
38 | - switch sender.tag { | |
39 | - case 101: | |
40 | - break | |
41 | - case 102: | |
42 | - break | |
43 | - case 103: | |
44 | - break | |
45 | - case 104: | |
46 | - break | |
47 | - default: | |
48 | - break | |
93 | + //搜索:根据搜索框中内容帅选全部符合的列表 | |
94 | + func searchBarSearchButtonClicked(_ searchBar: UISearchBar) { | |
95 | + searchBar.resignFirstResponder() | |
96 | + if searchBar.text != nil && searchBar.text != ""{ | |
97 | + var arr:[TVStationInfor] = [] | |
98 | + for item in dataSet { | |
99 | + if item.f_SchoolName.contains(searchBar.text!) { | |
100 | + arr.append(item) | |
101 | + } | |
102 | + } | |
103 | + sortDataSet(arr: arr, type: gradName.text!) | |
49 | 104 | } |
50 | - gradName.text = grad[sender.tag-101] | |
51 | 105 | } |
52 | 106 | |
53 | 107 | /* |
... | ... | @@ -64,38 +118,84 @@ class SearchTVStationListViewController: UIViewController { |
64 | 118 | |
65 | 119 | extension SearchTVStationListViewController:UITableViewDataSource,UITableViewDelegate{ |
66 | 120 | func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { |
67 | - | |
121 | + if tableView == selectTableView{ | |
122 | + selectView.isHidden = true | |
123 | + gradName.text = grad[indexPath.row] | |
124 | + sortDataSet(arr: dataSet,type: grad[indexPath.row]) | |
125 | + } | |
68 | 126 | } |
69 | 127 | |
70 | 128 | func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { |
71 | - return 1 | |
129 | + if tableView == selectTableView{ | |
130 | + return grad.count | |
131 | + }else{ | |
132 | + return dataDic[allKeys[section]]!.count | |
133 | + } | |
134 | + | |
72 | 135 | } |
73 | 136 | |
74 | 137 | func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { |
75 | - let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) | |
76 | - return cell | |
138 | + if tableView == selectTableView{ | |
139 | + let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! SearchSelectCell | |
140 | + cell.selectName.text = grad[indexPath.row] | |
141 | + return cell | |
142 | + }else{ | |
143 | + let item = dataDic[allKeys[indexPath.section]]![indexPath.row] | |
144 | + let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! SearchTVStationListCell | |
145 | + cell.stationName.text = item.f_SchoolName | |
146 | + cell.tvStationImage.sd_setImage(with: URL(string: item.f_Logo), placeholderImage: UIImage(named:"icon")) | |
147 | + return cell | |
148 | + } | |
149 | + | |
77 | 150 | } |
78 | 151 | |
79 | 152 | func sectionIndexTitles(for tableView: UITableView) -> [String]? { |
80 | - return alList+["#"] | |
153 | + if tableView == selectTableView{ | |
154 | + return [] | |
155 | + }else{ | |
156 | + return allKeys+["#"] | |
157 | + } | |
158 | + | |
81 | 159 | } |
82 | 160 | |
83 | 161 | func numberOfSections(in tableView: UITableView) -> Int { |
84 | - return alList.count | |
162 | + if tableView == selectTableView{ | |
163 | + return 1 | |
164 | + }else{ | |
165 | + return dataDic.keys.count | |
166 | + } | |
167 | + | |
85 | 168 | } |
86 | 169 | |
87 | 170 | func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? { |
88 | - return alList[section] | |
171 | + if tableView == selectTableView{ | |
172 | + return nil | |
173 | + }else{ | |
174 | + return allKeys[section] | |
175 | + } | |
89 | 176 | } |
90 | 177 | |
91 | 178 | func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat { |
92 | - return 44 | |
179 | + if tableView == selectTableView{ | |
180 | + return 0 | |
181 | + }else{ | |
182 | + return 44 | |
183 | + } | |
184 | + } | |
185 | + | |
186 | + func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat { | |
187 | + return 1 | |
93 | 188 | } |
94 | 189 | } |
95 | 190 | |
96 | 191 | class SearchTVStationListCell: UITableViewCell { |
97 | - | |
98 | 192 | @IBOutlet weak var stationName: UILabel! |
99 | 193 | @IBOutlet weak var tvStationImage: UIImageView! |
100 | 194 | |
101 | 195 | } |
196 | + | |
197 | +class SearchSelectCell: UITableViewCell { | |
198 | + | |
199 | + @IBOutlet weak var selectName: UILabel! | |
200 | + | |
201 | +} | ... | ... |
YouerLiveVideo/YouerLiveVideo/controllers/TVStation/TVStation.storyboard
... | ... | @@ -204,181 +204,47 @@ |
204 | 204 | <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="LO5-7p-BlF"> |
205 | 205 | <rect key="frame" x="0.0" y="92" width="375" height="575"/> |
206 | 206 | <subviews> |
207 | - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="pA5-mr-wp5"> | |
208 | - <rect key="frame" x="0.0" y="0.0" width="375" height="48"/> | |
209 | - <subviews> | |
210 | - <button opaque="NO" tag="101" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fd9-K0-dbd"> | |
211 | - <rect key="frame" x="0.0" y="0.0" width="375" height="48"/> | |
212 | - <connections> | |
213 | - <action selector="selectBtnClick:" destination="zPk-GV-x5H" eventType="touchUpInside" id="9rC-7O-cx4"/> | |
214 | - </connections> | |
215 | - </button> | |
216 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Unb-Qo-FiA"> | |
217 | - <rect key="frame" x="16" y="0.0" width="343" height="0.0"/> | |
218 | - <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> | |
219 | - <constraints> | |
220 | - <constraint firstAttribute="height" id="BI9-34-fQB"/> | |
221 | - </constraints> | |
222 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
223 | - <nil key="textColor"/> | |
224 | - <nil key="highlightedColor"/> | |
225 | - </label> | |
226 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="小学" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="rF3-mJ-pPr"> | |
227 | - <rect key="frame" x="170" y="13" width="35" height="21"/> | |
228 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
229 | - <nil key="textColor"/> | |
230 | - <nil key="highlightedColor"/> | |
231 | - </label> | |
232 | - </subviews> | |
233 | - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | |
234 | - <constraints> | |
235 | - <constraint firstAttribute="bottom" secondItem="fd9-K0-dbd" secondAttribute="bottom" id="6rw-GD-06f"/> | |
236 | - <constraint firstItem="rF3-mJ-pPr" firstAttribute="centerY" secondItem="pA5-mr-wp5" secondAttribute="centerY" id="Ncu-FL-IUg"/> | |
237 | - <constraint firstItem="fd9-K0-dbd" firstAttribute="top" secondItem="pA5-mr-wp5" secondAttribute="top" id="S2u-C5-cpE"/> | |
238 | - <constraint firstAttribute="trailing" secondItem="Unb-Qo-FiA" secondAttribute="trailing" constant="16" id="Wee-qc-CcZ"/> | |
239 | - <constraint firstAttribute="trailing" secondItem="fd9-K0-dbd" secondAttribute="trailing" id="Wz9-N2-5FD"/> | |
240 | - <constraint firstAttribute="height" constant="48" id="YGb-kx-Bvs"/> | |
241 | - <constraint firstItem="Unb-Qo-FiA" firstAttribute="leading" secondItem="pA5-mr-wp5" secondAttribute="leading" constant="16" id="eAi-qh-uTW"/> | |
242 | - <constraint firstItem="fd9-K0-dbd" firstAttribute="leading" secondItem="pA5-mr-wp5" secondAttribute="leading" id="lsn-sl-gUI"/> | |
243 | - <constraint firstItem="rF3-mJ-pPr" firstAttribute="centerX" secondItem="pA5-mr-wp5" secondAttribute="centerX" id="sKe-eU-InU"/> | |
244 | - <constraint firstItem="Unb-Qo-FiA" firstAttribute="top" secondItem="pA5-mr-wp5" secondAttribute="top" id="zmH-Rb-P8G"/> | |
245 | - </constraints> | |
246 | - </view> | |
247 | - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="pKJ-J9-5CR"> | |
248 | - <rect key="frame" x="0.0" y="48" width="375" height="48"/> | |
249 | - <subviews> | |
250 | - <button opaque="NO" tag="102" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="veE-AU-inD"> | |
251 | - <rect key="frame" x="0.0" y="0.0" width="375" height="48"/> | |
252 | - <connections> | |
253 | - <action selector="selectBtnClick:" destination="zPk-GV-x5H" eventType="touchUpInside" id="eza-Xp-8Wo"/> | |
254 | - </connections> | |
255 | - </button> | |
256 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ma4-Vs-Ai5"> | |
257 | - <rect key="frame" x="16" y="0.0" width="343" height="0.0"/> | |
258 | - <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> | |
259 | - <constraints> | |
260 | - <constraint firstAttribute="height" id="jyL-SO-bbs"/> | |
261 | - </constraints> | |
262 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
263 | - <nil key="textColor"/> | |
264 | - <nil key="highlightedColor"/> | |
265 | - </label> | |
266 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="初中" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FLD-Vw-eZ9"> | |
267 | - <rect key="frame" x="170" y="13" width="35" height="21"/> | |
268 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
269 | - <nil key="textColor"/> | |
270 | - <nil key="highlightedColor"/> | |
271 | - </label> | |
272 | - </subviews> | |
273 | - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | |
274 | - <constraints> | |
275 | - <constraint firstItem="ma4-Vs-Ai5" firstAttribute="top" secondItem="pKJ-J9-5CR" secondAttribute="top" id="Em3-dK-r7A"/> | |
276 | - <constraint firstItem="veE-AU-inD" firstAttribute="top" secondItem="pKJ-J9-5CR" secondAttribute="top" id="FHs-Rr-oDw"/> | |
277 | - <constraint firstItem="FLD-Vw-eZ9" firstAttribute="centerX" secondItem="pKJ-J9-5CR" secondAttribute="centerX" id="MaF-vn-NFk"/> | |
278 | - <constraint firstItem="FLD-Vw-eZ9" firstAttribute="centerY" secondItem="pKJ-J9-5CR" secondAttribute="centerY" id="OSS-PS-lIG"/> | |
279 | - <constraint firstAttribute="trailing" secondItem="ma4-Vs-Ai5" secondAttribute="trailing" constant="16" id="TK9-u0-NYJ"/> | |
280 | - <constraint firstAttribute="trailing" secondItem="veE-AU-inD" secondAttribute="trailing" id="he0-3w-aKO"/> | |
281 | - <constraint firstItem="ma4-Vs-Ai5" firstAttribute="leading" secondItem="pKJ-J9-5CR" secondAttribute="leading" constant="16" id="hvr-W0-KtG"/> | |
282 | - <constraint firstItem="veE-AU-inD" firstAttribute="leading" secondItem="pKJ-J9-5CR" secondAttribute="leading" id="iIG-ef-wiQ"/> | |
283 | - <constraint firstAttribute="bottom" secondItem="veE-AU-inD" secondAttribute="bottom" id="nnX-Fn-UsA"/> | |
284 | - <constraint firstAttribute="height" constant="48" id="zHI-3d-Hhy"/> | |
285 | - </constraints> | |
286 | - </view> | |
287 | - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="jQ0-hJ-LW9"> | |
288 | - <rect key="frame" x="0.0" y="96" width="375" height="48"/> | |
289 | - <subviews> | |
290 | - <button opaque="NO" tag="103" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rrk-re-JuF"> | |
291 | - <rect key="frame" x="0.0" y="0.0" width="375" height="48"/> | |
292 | - <connections> | |
293 | - <action selector="selectBtnClick:" destination="zPk-GV-x5H" eventType="touchUpInside" id="apL-Gu-0OT"/> | |
294 | - </connections> | |
295 | - </button> | |
296 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="TwL-7i-SFE"> | |
297 | - <rect key="frame" x="16" y="0.0" width="343" height="0.0"/> | |
298 | - <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> | |
299 | - <constraints> | |
300 | - <constraint firstAttribute="height" id="wf7-2t-CcQ"/> | |
301 | - </constraints> | |
302 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
303 | - <nil key="textColor"/> | |
304 | - <nil key="highlightedColor"/> | |
305 | - </label> | |
306 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="高中" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bx3-SK-e4z"> | |
307 | - <rect key="frame" x="170" y="13" width="35" height="21"/> | |
308 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
309 | - <nil key="textColor"/> | |
310 | - <nil key="highlightedColor"/> | |
311 | - </label> | |
312 | - </subviews> | |
313 | - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | |
314 | - <constraints> | |
315 | - <constraint firstAttribute="bottom" secondItem="rrk-re-JuF" secondAttribute="bottom" id="1aG-FJ-kgi"/> | |
316 | - <constraint firstItem="rrk-re-JuF" firstAttribute="top" secondItem="jQ0-hJ-LW9" secondAttribute="top" id="4mU-tH-19D"/> | |
317 | - <constraint firstItem="rrk-re-JuF" firstAttribute="leading" secondItem="jQ0-hJ-LW9" secondAttribute="leading" id="8FP-Fd-szb"/> | |
318 | - <constraint firstAttribute="trailing" secondItem="TwL-7i-SFE" secondAttribute="trailing" constant="16" id="FJF-cd-6MQ"/> | |
319 | - <constraint firstItem="TwL-7i-SFE" firstAttribute="top" secondItem="jQ0-hJ-LW9" secondAttribute="top" id="HJS-18-xud"/> | |
320 | - <constraint firstAttribute="height" constant="48" id="L2i-9Z-Zje"/> | |
321 | - <constraint firstItem="TwL-7i-SFE" firstAttribute="leading" secondItem="jQ0-hJ-LW9" secondAttribute="leading" constant="16" id="WjE-rt-bZ1"/> | |
322 | - <constraint firstAttribute="trailing" secondItem="rrk-re-JuF" secondAttribute="trailing" id="ech-I6-0JJ"/> | |
323 | - <constraint firstItem="bx3-SK-e4z" firstAttribute="centerX" secondItem="jQ0-hJ-LW9" secondAttribute="centerX" id="l2K-Ec-fBQ"/> | |
324 | - <constraint firstItem="bx3-SK-e4z" firstAttribute="centerY" secondItem="jQ0-hJ-LW9" secondAttribute="centerY" id="yXB-yv-iX2"/> | |
325 | - </constraints> | |
326 | - </view> | |
327 | - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="PdH-vs-Gjn"> | |
328 | - <rect key="frame" x="0.0" y="144" width="375" height="48"/> | |
329 | - <subviews> | |
330 | - <button opaque="NO" tag="104" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="bqH-ub-Nyu"> | |
331 | - <rect key="frame" x="0.0" y="0.0" width="375" height="48"/> | |
207 | + <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="IbJ-62-QUz"> | |
208 | + <rect key="frame" x="0.0" y="0.0" width="375" height="575"/> | |
209 | + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> | |
210 | + <prototypes> | |
211 | + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="cell" id="1Ns-5p-fDD" customClass="SearchSelectCell" customModule="YouerLiveVideo" customModuleProvider="target"> | |
212 | + <rect key="frame" x="0.0" y="28" width="375" height="44"/> | |
213 | + <autoresizingMask key="autoresizingMask"/> | |
214 | + <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="1Ns-5p-fDD" id="vyn-xK-ILQ"> | |
215 | + <rect key="frame" x="0.0" y="0.0" width="375" height="43"/> | |
216 | + <autoresizingMask key="autoresizingMask"/> | |
217 | + <subviews> | |
218 | + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vrU-H8-dYc"> | |
219 | + <rect key="frame" x="166" y="11" width="42" height="21"/> | |
220 | + <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
221 | + <nil key="textColor"/> | |
222 | + <nil key="highlightedColor"/> | |
223 | + </label> | |
224 | + </subviews> | |
225 | + <constraints> | |
226 | + <constraint firstItem="vrU-H8-dYc" firstAttribute="centerX" secondItem="vyn-xK-ILQ" secondAttribute="centerX" id="5wV-xH-hMA"/> | |
227 | + <constraint firstItem="vrU-H8-dYc" firstAttribute="centerY" secondItem="vyn-xK-ILQ" secondAttribute="centerY" id="zWG-wG-2M2"/> | |
228 | + </constraints> | |
229 | + </tableViewCellContentView> | |
230 | + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> | |
332 | 231 | <connections> |
333 | - <action selector="selectBtnClick:" destination="zPk-GV-x5H" eventType="touchUpInside" id="a7l-bV-toi"/> | |
232 | + <outlet property="selectName" destination="vrU-H8-dYc" id="ywV-L6-dGm"/> | |
334 | 233 | </connections> |
335 | - </button> | |
336 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="BGW-tg-2H6"> | |
337 | - <rect key="frame" x="16" y="0.0" width="343" height="0.0"/> | |
338 | - <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> | |
339 | - <constraints> | |
340 | - <constraint firstAttribute="height" id="eIc-hV-0qY"/> | |
341 | - </constraints> | |
342 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
343 | - <nil key="textColor"/> | |
344 | - <nil key="highlightedColor"/> | |
345 | - </label> | |
346 | - <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="全部学段" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VfQ-qt-gdx"> | |
347 | - <rect key="frame" x="152" y="13" width="70" height="21"/> | |
348 | - <fontDescription key="fontDescription" type="system" pointSize="17"/> | |
349 | - <nil key="textColor"/> | |
350 | - <nil key="highlightedColor"/> | |
351 | - </label> | |
352 | - </subviews> | |
353 | - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> | |
354 | - <constraints> | |
355 | - <constraint firstItem="BGW-tg-2H6" firstAttribute="leading" secondItem="PdH-vs-Gjn" secondAttribute="leading" constant="16" id="46b-DV-o1H"/> | |
356 | - <constraint firstAttribute="trailing" secondItem="bqH-ub-Nyu" secondAttribute="trailing" id="8sC-if-wSg"/> | |
357 | - <constraint firstAttribute="height" constant="48" id="Kcs-Jq-OVL"/> | |
358 | - <constraint firstItem="VfQ-qt-gdx" firstAttribute="centerY" secondItem="PdH-vs-Gjn" secondAttribute="centerY" id="OqZ-vB-B5C"/> | |
359 | - <constraint firstAttribute="trailing" secondItem="BGW-tg-2H6" secondAttribute="trailing" constant="16" id="Rw7-eI-JeT"/> | |
360 | - <constraint firstItem="VfQ-qt-gdx" firstAttribute="centerX" secondItem="PdH-vs-Gjn" secondAttribute="centerX" id="UYW-un-bnL"/> | |
361 | - <constraint firstItem="bqH-ub-Nyu" firstAttribute="leading" secondItem="PdH-vs-Gjn" secondAttribute="leading" id="gA6-4E-cUz"/> | |
362 | - <constraint firstAttribute="bottom" secondItem="bqH-ub-Nyu" secondAttribute="bottom" id="kIr-4b-3GM"/> | |
363 | - <constraint firstItem="BGW-tg-2H6" firstAttribute="top" secondItem="PdH-vs-Gjn" secondAttribute="top" id="waV-La-z9s"/> | |
364 | - <constraint firstItem="bqH-ub-Nyu" firstAttribute="top" secondItem="PdH-vs-Gjn" secondAttribute="top" id="z5F-fk-r4o"/> | |
365 | - </constraints> | |
366 | - </view> | |
234 | + </tableViewCell> | |
235 | + </prototypes> | |
236 | + <connections> | |
237 | + <outlet property="dataSource" destination="zPk-GV-x5H" id="i24-vK-mDm"/> | |
238 | + <outlet property="delegate" destination="zPk-GV-x5H" id="oP3-9x-9qA"/> | |
239 | + </connections> | |
240 | + </tableView> | |
367 | 241 | </subviews> |
368 | 242 | <color key="backgroundColor" white="0.66666666666666663" alpha="0.50786493288590606" colorSpace="calibratedWhite"/> |
369 | 243 | <constraints> |
370 | - <constraint firstItem="pKJ-J9-5CR" firstAttribute="top" secondItem="pA5-mr-wp5" secondAttribute="bottom" id="As5-CP-OI8"/> | |
371 | - <constraint firstItem="PdH-vs-Gjn" firstAttribute="leading" secondItem="LO5-7p-BlF" secondAttribute="leading" id="EiX-RE-2mV"/> | |
372 | - <constraint firstItem="pA5-mr-wp5" firstAttribute="leading" secondItem="LO5-7p-BlF" secondAttribute="leading" id="NGc-W1-gFS"/> | |
373 | - <constraint firstItem="jQ0-hJ-LW9" firstAttribute="top" secondItem="pKJ-J9-5CR" secondAttribute="bottom" id="Rxs-mm-zbn"/> | |
374 | - <constraint firstItem="jQ0-hJ-LW9" firstAttribute="leading" secondItem="LO5-7p-BlF" secondAttribute="leading" id="SBR-LH-mkw"/> | |
375 | - <constraint firstItem="PdH-vs-Gjn" firstAttribute="top" secondItem="jQ0-hJ-LW9" secondAttribute="bottom" id="gRO-D5-TbH"/> | |
376 | - <constraint firstItem="pKJ-J9-5CR" firstAttribute="leading" secondItem="LO5-7p-BlF" secondAttribute="leading" id="krW-ip-UgT"/> | |
377 | - <constraint firstAttribute="trailing" secondItem="pA5-mr-wp5" secondAttribute="trailing" id="n92-8Z-2xl"/> | |
378 | - <constraint firstAttribute="trailing" secondItem="PdH-vs-Gjn" secondAttribute="trailing" id="nWt-wP-1JQ"/> | |
379 | - <constraint firstItem="pA5-mr-wp5" firstAttribute="top" secondItem="LO5-7p-BlF" secondAttribute="top" id="nsI-me-a5D"/> | |
380 | - <constraint firstAttribute="trailing" secondItem="pKJ-J9-5CR" secondAttribute="trailing" id="pqL-tc-0qy"/> | |
381 | - <constraint firstAttribute="trailing" secondItem="jQ0-hJ-LW9" secondAttribute="trailing" id="yc8-tE-p0i"/> | |
244 | + <constraint firstItem="IbJ-62-QUz" firstAttribute="leading" secondItem="LO5-7p-BlF" secondAttribute="leading" id="JAu-J6-dIy"/> | |
245 | + <constraint firstAttribute="bottom" secondItem="IbJ-62-QUz" secondAttribute="bottom" id="JKF-1f-M6c"/> | |
246 | + <constraint firstAttribute="trailing" secondItem="IbJ-62-QUz" secondAttribute="trailing" id="KD6-Yw-jTW"/> | |
247 | + <constraint firstItem="IbJ-62-QUz" firstAttribute="top" secondItem="LO5-7p-BlF" secondAttribute="top" id="o12-8S-W6V"/> | |
382 | 248 | </constraints> |
383 | 249 | </view> |
384 | 250 | <searchBar contentMode="redraw" placeholder="搜索" translatesAutoresizingMaskIntoConstraints="NO" id="ChK-me-hP6"> |
... | ... | @@ -387,6 +253,9 @@ |
387 | 253 | <constraint firstAttribute="height" constant="44" id="wzh-nF-6vU"/> |
388 | 254 | </constraints> |
389 | 255 | <textInputTraits key="textInputTraits"/> |
256 | + <connections> | |
257 | + <outlet property="delegate" destination="zPk-GV-x5H" id="KiT-X3-fSi"/> | |
258 | + </connections> | |
390 | 259 | </searchBar> |
391 | 260 | </subviews> |
392 | 261 | <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> |
... | ... | @@ -410,6 +279,7 @@ |
410 | 279 | <connections> |
411 | 280 | <outlet property="downIcon" destination="30V-Xl-lRB" id="GHM-Kf-F2D"/> |
412 | 281 | <outlet property="gradName" destination="EkU-OV-GCU" id="1x2-I5-Dmb"/> |
282 | + <outlet property="selectTableView" destination="IbJ-62-QUz" id="g3g-lN-96y"/> | |
413 | 283 | <outlet property="selectView" destination="LO5-7p-BlF" id="BCJ-8J-krQ"/> |
414 | 284 | <outlet property="tableView" destination="o4U-1y-nqL" id="mW2-XQ-YbM"/> |
415 | 285 | </connections> | ... | ... |
YouerLiveVideo/YouerLiveVideo/controllers/TVStation/TVStationViewController.swift
... | ... | @@ -196,6 +196,7 @@ class TVStationViewControllerCollectionCell:UICollectionViewCell{ |
196 | 196 | } |
197 | 197 | |
198 | 198 | class TVStationInfor { |
199 | + var f_SchoolType:String! | |
199 | 200 | var f_Id:String! //标识字段,Guid标识 , |
200 | 201 | var f_DeleteMark:Bool = false //删除标识,1-已删除 , |
201 | 202 | var f_CreatorTime:String!//创建时间 , |
... | ... | @@ -212,6 +213,7 @@ class TVStationInfor { |
212 | 213 | var f_Url:String!// 机构地址 |
213 | 214 | |
214 | 215 | init(json:JSON){ |
216 | + f_SchoolType = json["f_SchoolType"].stringValue | |
215 | 217 | f_Id = json["f_Id"].stringValue |
216 | 218 | f_DeleteMark = json["f_DeleteMark"].boolValue |
217 | 219 | f_CreatorTime = json["f_CreatorTime"].stringValue | ... | ... |
YouerLiveVideo/YouerLiveVideo/util/network.swift
... | ... | @@ -124,6 +124,10 @@ final class HTTPServer{ |
124 | 124 | static let URL_COURSEGETTESTCATAGORY=HOST+"/api/Course/GetTestCatagory" //获取考点目录(已初始化成ztree所要求的格式) |
125 | 125 | static let URL_COURSEGETTELEVISIONSTATIONCATAGORY=HOST+"/api/Course/GetTelevisionStationCatagory" //获取电视台目录 |
126 | 126 | |
127 | + //MARK:-APP | |
128 | + static let URL_APPGETALLSCHOOL=HOST+"/api/App/GetAllSchool" //获取所有学校 | |
129 | + static let URL_APPGETSCHOOLBYID=HOST+"/api/App/GetSchoolById" //获取学校详情 | |
130 | + | |
127 | 131 | //MARK:-DataStatistics(url) |
128 | 132 | static let URL_DATASTATISTICGETSCHOOLGENERAL=HOST+"/api/DataStatistics/GetSchoolGeneral" //获取前十学校的综合排行 |
129 | 133 | static let URL_DATASTATISTICGETSCHOOLPV=HOST+"/api/DataStatistics/GetSchoolPv" //获取前十学校的阅读量排行 |
... | ... | @@ -290,6 +294,17 @@ final class HTTPServer{ |
290 | 294 | KHttp.GET(url: HTTPServer.URL_COURSEGETTELEVISIONSTATIONCATAGORY, parameters: parameters,headers:["Authorization":token!], completionHandler: completionHandler) |
291 | 295 | } |
292 | 296 | |
297 | + //MARK:-APP | |
298 | + //获取所有学校 | |
299 | + func getAllSchool(parameters: [String : AnyObject]?,completionHandler:@escaping (String?, NSError?) -> ()){ | |
300 | + KHttp.GET(url: HTTPServer.URL_APPGETALLSCHOOL, parameters: parameters,headers:["Authorization":token!], completionHandler: completionHandler) | |
301 | + } | |
302 | + | |
303 | + //获取学校详情 | |
304 | + func getSchoolById(parameters: [String : AnyObject]?,completionHandler:@escaping (String?, NSError?) -> ()){ | |
305 | + KHttp.GET(url: HTTPServer.URL_APPGETSCHOOLBYID, parameters: parameters,headers:["Authorization":token!], completionHandler: completionHandler) | |
306 | + } | |
307 | + | |
293 | 308 | |
294 | 309 | //MARK:-DataStatistics |
295 | 310 | //获取前十学校的综合排行 | ... | ... |
... | ... | @@ -0,0 +1,235 @@ |
1 | +/* | |
2 | + * pinyin.c | |
3 | + * Chinese Pinyin First Letter | |
4 | + * | |
5 | + * Created by George on 4/21/10. | |
6 | + * Copyright 2010 RED/SAFI. All rights reserved. | |
7 | + * | |
8 | + */ | |
9 | +#define HANZI_START 19968 | |
10 | +#define HANZI_COUNT 20902 | |
11 | + | |
12 | +static char firstLetterArray[HANZI_COUNT] = | |
13 | +"ydkqsxnwzssxjbymgcczqpssqbycdscdqldylybssjgyqzjjfgcclzznwdwzjljpfyynnjjtmynzwzhflzppqhgccyynmjqyxxgd" | |
14 | +"nnsnsjnjnsnnmlnrxyfsngnnnnqzggllyjlnyzssecykyyhqwjssggyxyqyjtwktjhychmnxjtlhjyqbyxdldwrrjnwysrldzjpc" | |
15 | +"bzjjbrcfslnczstzfxxchtrqggddlyccssymmrjcyqzpwwjjyfcrwfdfzqpyddwyxkyjawjffxjbcftzyhhycyswccyxsclcxxwz" | |
16 | +"cxnbgnnxbxlzsqsbsjpysazdhmdzbqbscwdzzyytzhbtsyyfzgntnxjywqnknphhlxgybfmjnbjhhgqtjcysxstkzglyckglysmz" | |
17 | +"xyalmeldccxgzyrjxjzlnjzcqkcnnjwhjczccqljststbnhbtyxceqxkkwjyflzqlyhjxspsfxlmpbysxxxytccnylllsjxfhjxp" | |
18 | +"jbtffyabyxbcczbzyclwlczggbtssmdtjcxpthyqtgjjxcjfzkjzjqnlzwlslhdzbwjncjzyzsqnycqynzcjjwybrtwpyftwexcs" | |
19 | +"kdzctbyhyzqyyjxzcfbzzmjyxxsdczottbzljwfckscsxfyrlrygmbdthjxsqjccsbxyytswfbjdztnbcnzlcyzzpsacyzzsqqcs" | |
20 | +"hzqydxlbpjllmqxqydzxsqjtzpxlcglqdcwzfhctdjjsfxjejjtlbgxsxjmyjjqpfzasyjnsydjxkjcdjsznbartcclnjqmwnqnc" | |
21 | +"lllkbdbzzsyhqcltwlccrshllzntylnewyzyxczxxgdkdmtcedejtsyyssdqdfmxdbjlkrwnqlybglxnlgtgxbqjdznyjsjyjcjm" | |
22 | +"rnymgrcjczgjmzmgxmmryxkjnymsgmzzymknfxmbdtgfbhcjhkylpfmdxlxjjsmsqgzsjlqdldgjycalcmzcsdjllnxdjffffjcn" | |
23 | +"fnnffpfkhkgdpqxktacjdhhzdddrrcfqyjkqccwjdxhwjlyllzgcfcqjsmlzpbjjblsbcjggdckkdezsqcckjgcgkdjtjllzycxk" | |
24 | +"lqccgjcltfpcqczgwbjdqyzjjbyjhsjddwgfsjgzkcjctllfspkjgqjhzzljplgjgjjthjjyjzccmlzlyqbgjwmljkxzdznjqsyz" | |
25 | +"mljlljkywxmkjlhskjhbmclyymkxjqlbmllkmdxxkwyxwslmlpsjqqjqxyqfjtjdxmxxllcrqbsyjbgwynnggbcnxpjtgpapfgdj" | |
26 | +"qbhbncfjyzjkjkhxqfgqckfhygkhdkllsdjqxpqyaybnqsxqnszswhbsxwhxwbzzxdmndjbsbkbbzklylxgwxjjwaqzmywsjqlsj" | |
27 | +"xxjqwjeqxnchetlzalyyyszzpnkyzcptlshtzcfycyxyljsdcjqagyslcllyyysslqqqnldxzsccscadycjysfsgbfrsszqsbxjp" | |
28 | +"sjysdrckgjlgtkzjzbdktcsyqpyhstcldjnhmymcgxyzhjdctmhltxzhylamoxyjcltyfbqqjpfbdfehthsqhzywwcncxcdwhowg" | |
29 | +"yjlegmdqcwgfjhcsntmydolbygnqwesqpwnmlrydzszzlyqpzgcwxhnxpyxshmdqjgztdppbfbhzhhjyfdzwkgkzbldnzsxhqeeg" | |
30 | +"zxylzmmzyjzgszxkhkhtxexxgylyapsthxdwhzydpxagkydxbhnhnkdnjnmyhylpmgecslnzhkxxlbzzlbmlsfbhhgsgyyggbhsc" | |
31 | +"yajtxglxtzmcwzydqdqmngdnllszhngjzwfyhqswscelqajynytlsxthaznkzzsdhlaxxtwwcjhqqtddwzbcchyqzflxpslzqgpz" | |
32 | +"sznglydqtbdlxntctajdkywnsyzljhhdzckryyzywmhychhhxhjkzwsxhdnxlyscqydpslyzwmypnkxyjlkchtyhaxqsyshxasmc" | |
33 | +"hkdscrsgjpwqsgzjlwwschsjhsqnhnsngndantbaalczmsstdqjcjktscjnxplggxhhgoxzcxpdmmhldgtybynjmxhmrzplxjzck" | |
34 | +"zxshflqxxcdhxwzpckczcdytcjyxqhlxdhypjqxnlsyydzozjnhhqezysjyayxkypdgxddnsppyzndhthrhxydpcjjhtcnnctlhb" | |
35 | +"ynyhmhzllnnxmylllmdcppxhmxdkycyrdltxjchhznxclcclylnzsxnjzzlnnnnwhyqsnjhxynttdkyjpychhyegkcwtwlgjrlgg" | |
36 | +"tgtygyhpyhylqyqgcwyqkpyyettttlhyylltyttsylnyzwgywgpydqqzzdqnnkcqnmjjzzbxtqfjkdffbtkhzkbxdjjkdjjtlbwf" | |
37 | +"zpptkqtztgpdwntpjyfalqmkgxbcclzfhzcllllanpnxtjklcclgyhdzfgyddgcyyfgydxkssendhykdndknnaxxhbpbyyhxccga" | |
38 | +"pfqyjjdmlxcsjzllpcnbsxgjyndybwjspcwjlzkzddtacsbkzdyzypjzqsjnkktknjdjgyepgtlnyqnacdntcyhblgdzhbbydmjr" | |
39 | +"egkzyheyybjmcdtafzjzhgcjnlghldwxjjkytcyksssmtwcttqzlpbszdtwcxgzagyktywxlnlcpbclloqmmzsslcmbjcsdzkydc" | |
40 | +"zjgqjdsmcytzqqlnzqzxssbpkdfqmddzzsddtdmfhtdycnaqjqkypbdjyyxtljhdrqxlmhkydhrnlklytwhllrllrcxylbnsrnzz" | |
41 | +"symqzzhhkyhxksmzsyzgcxfbnbsqlfzxxnnxkxwymsddyqnggqmmyhcdzttfgyyhgsbttybykjdnkyjbelhdypjqnfxfdnkzhqks" | |
42 | +"byjtzbxhfdsbdaswpawajldyjsfhblcnndnqjtjnchxfjsrfwhzfmdrfjyxwzpdjkzyjympcyznynxfbytfyfwygdbnzzzdnytxz" | |
43 | +"emmqbsqehxfznbmflzzsrsyqjgsxwzjsprytjsjgskjjgljjynzjjxhgjkymlpyyycxycgqzswhwlyrjlpxslcxmnsmwklcdnkny" | |
44 | +"npsjszhdzeptxmwywxyysywlxjqcqxzdclaeelmcpjpclwbxsqhfwrtfnjtnqjhjqdxhwlbyccfjlylkyynldxnhycstyywncjtx" | |
45 | +"ywtrmdrqnwqcmfjdxzmhmayxnwmyzqtxtlmrspwwjhanbxtgzypxyyrrclmpamgkqjszycymyjsnxtplnbappypylxmyzkynldgy" | |
46 | +"jzcchnlmzhhanqnbgwqtzmxxmllhgdzxnhxhrxycjmffxywcfsbssqlhnndycannmtcjcypnxnytycnnymnmsxndlylysljnlxys" | |
47 | +"sqmllyzlzjjjkyzzcsfbzxxmstbjgnxnchlsnmcjscyznfzlxbrnnnylmnrtgzqysatswryhyjzmgdhzgzdwybsscskxsyhytsxg" | |
48 | +"cqgxzzbhyxjscrhmkkbsczjyjymkqhzjfnbhmqhysnjnzybknqmcjgqhwlsnzswxkhljhyybqcbfcdsxdldspfzfskjjzwzxsddx" | |
49 | +"jseeegjscssygclxxnwwyllymwwwgydkzjggggggsycknjwnjpcxbjjtqtjwdsspjxcxnzxnmelptfsxtllxcljxjjljsxctnswx" | |
50 | +"lennlyqrwhsycsqnybyaywjejqfwqcqqcjqgxaldbzzyjgkgxbltqyfxjltpydkyqhpmatlcndnkxmtxynhklefxdllegqtymsaw" | |
51 | +"hzmljtkynxlyjzljeeyybqqffnlyxhdsctgjhxywlkllxqkcctnhjlqmkkzgcyygllljdcgydhzwypysjbzjdzgyzzhywyfqdtyz" | |
52 | +"szyezklymgjjhtsmqwyzljyywzcsrkqyqltdxwcdrjalwsqzwbdcqyncjnnszjlncdcdtlzzzacqqzzddxyblxcbqjylzllljddz" | |
53 | +"jgyqyjzyxnyyyexjxksdaznyrdlzyyynjlslldyxjcykywnqcclddnyyynycgczhjxcclgzqjgnwnncqqjysbzzxyjxjnxjfzbsb" | |
54 | +"dsfnsfpzxhdwztdmpptflzzbzdmyypqjrsdzsqzsqxbdgcpzswdwcsqzgmdhzxmwwfybpngphdmjthzsmmbgzmbzjcfzhfcbbnmq" | |
55 | +"dfmbcmcjxlgpnjbbxgyhyyjgptzgzmqbqdcgybjxlwnkydpdymgcftpfxyztzxdzxtgkptybbclbjaskytssqyymscxfjhhlslls" | |
56 | +"jpqjjqaklyldlycctsxmcwfgngbqxllllnyxtyltyxytdpjhnhgnkbyqnfjyyzbyyessessgdyhfhwtcqbsdzjtfdmxhcnjzymqw" | |
57 | +"srxjdzjqbdqbbsdjgnfbknbxdkqhmkwjjjgdllthzhhyyyyhhsxztyyyccbdbpypzyccztjpzywcbdlfwzcwjdxxhyhlhwczxjtc" | |
58 | +"nlcdpxnqczczlyxjjcjbhfxwpywxzpcdzzbdccjwjhmlxbqxxbylrddgjrrctttgqdczwmxfytmmzcwjwxyywzzkybzcccttqnhx" | |
59 | +"nwxxkhkfhtswoccjybcmpzzykbnnzpbthhjdlszddytyfjpxyngfxbyqxzbhxcpxxtnzdnnycnxsxlhkmzxlthdhkghxxsshqyhh" | |
60 | +"cjyxglhzxcxnhekdtgqxqypkdhentykcnymyyjmkqyyyjxzlthhqtbyqhxbmyhsqckwwyllhcyylnneqxqwmcfbdccmljggxdqkt" | |
61 | +"lxkknqcdgcjwyjjlyhhqyttnwchhxcxwherzjydjccdbqcdgdnyxzdhcqrxcbhztqcbxwgqwyybxhmbymykdyecmqkyaqyngyzsl" | |
62 | +"fnkkqgyssqyshngjctxkzycssbkyxhyylstycxqthysmnscpmmgcccccmnztasmgqzjhklosjylswtmqzyqkdzljqqyplzycztcq" | |
63 | +"qpbbcjzclpkhqcyyxxdtdddsjcxffllchqxmjlwcjcxtspycxndtjshjwhdqqqckxyamylsjhmlalygxcyydmamdqmlmcznnyybz" | |
64 | +"xkyflmcncmlhxrcjjhsylnmtjggzgywjxsrxcwjgjqhqzdqjdcjjskjkgdzcgjjyjylxzxxcdqhhheslmhlfsbdjsyyshfyssczq" | |
65 | +"lpbdrfnztzdkykhsccgkwtqzckmsynbcrxqbjyfaxpzzedzcjykbcjwhyjbqzzywnyszptdkzpfpbaztklqnhbbzptpptyzzybhn" | |
66 | +"ydcpzmmcycqmcjfzzdcmnlfpbplngqjtbttajzpzbbdnjkljqylnbzqhksjznggqstzkcxchpzsnbcgzkddzqanzgjkdrtlzldwj" | |
67 | +"njzlywtxndjzjhxnatncbgtzcsskmljpjytsnwxcfjwjjtkhtzplbhsnjssyjbhbjyzlstlsbjhdnwqpslmmfbjdwajyzccjtbnn" | |
68 | +"nzwxxcdslqgdsdpdzgjtqqpsqlyyjzlgyhsdlctcbjtktyczjtqkbsjlgnnzdncsgpynjzjjyyknhrpwszxmtncszzyshbyhyzax" | |
69 | +"ywkcjtllckjjtjhgcssxyqyczbynnlwqcglzgjgqyqcczssbcrbcskydznxjsqgxssjmecnstjtpbdlthzwxqwqczexnqczgwesg" | |
70 | +"ssbybstscslccgbfsdqnzlccglllzghzcthcnmjgyzazcmsksstzmmzckbjygqljyjppldxrkzyxccsnhshhdznlzhzjjcddcbcj" | |
71 | +"xlbfqbczztpqdnnxljcthqzjgylklszzpcjdscqjhjqkdxgpbajynnsmjtzdxlcjyryynhjbngzjkmjxltbsllrzpylssznxjhll" | |
72 | +"hyllqqzqlsymrcncxsljmlzltzldwdjjllnzggqxppskyggggbfzbdkmwggcxmcgdxjmcjsdycabxjdlnbcddygskydqdxdjjyxh" | |
73 | +"saqazdzfslqxxjnqzylblxxwxqqzbjzlfbblylwdsljhxjyzjwtdjcyfqzqzzdzsxzzqlzcdzfxhwspynpqzmlpplffxjjnzzyls" | |
74 | +"jnyqzfpfzgsywjjjhrdjzzxtxxglghtdxcskyswmmtcwybazbjkshfhgcxmhfqhyxxyzftsjyzbxyxpzlchmzmbxhzzssyfdmncw" | |
75 | +"dabazlxktcshhxkxjjzjsthygxsxyyhhhjwxkzxssbzzwhhhcwtzzzpjxsyxqqjgzyzawllcwxznxgyxyhfmkhydwsqmnjnaycys" | |
76 | +"pmjkgwcqhylajgmzxhmmcnzhbhxclxdjpltxyjkdyylttxfqzhyxxsjbjnayrsmxyplckdnyhlxrlnllstycyyqygzhhsccsmcct" | |
77 | +"zcxhyqfpyyrpbflfqnntszlljmhwtcjqyzwtlnmlmdwmbzzsnzrbpdddlqjjbxtcsnzqqygwcsxfwzlxccrszdzmcyggdyqsgtnn" | |
78 | +"nlsmymmsyhfbjdgyxccpshxczcsbsjyygjmpbwaffyfnxhydxzylremzgzzyndsznlljcsqfnxxkptxzgxjjgbmyyssnbtylbnlh" | |
79 | +"bfzdcyfbmgqrrmzszxysjtznnydzzcdgnjafjbdknzblczszpsgcycjszlmnrznbzzldlnllysxsqzqlcxzlsgkbrxbrbzcycxzj" | |
80 | +"zeeyfgklzlnyhgzcgzlfjhgtgwkraajyzkzqtsshjjxdzyznynnzyrzdqqhgjzxsszbtkjbbfrtjxllfqwjgclqtymblpzdxtzag" | |
81 | +"bdhzzrbgjhwnjtjxlkscfsmwlldcysjtxkzscfwjlbnntzlljzllqblcqmqqcgcdfpbphzczjlpyyghdtgwdxfczqyyyqysrclqz" | |
82 | +"fklzzzgffcqnwglhjycjjczlqzzyjbjzzbpdcsnnjgxdqnknlznnnnpsntsdyfwwdjzjysxyyczcyhzwbbyhxrylybhkjksfxtjj" | |
83 | +"mmchhlltnyymsxxyzpdjjycsycwmdjjkqyrhllngpngtlyycljnnnxjyzfnmlrgjjtyzbsyzmsjyjhgfzqmsyxrszcytlrtqzsst" | |
84 | +"kxgqkgsptgxdnjsgcqcqhmxggztqydjjznlbznxqlhyqgggthqscbyhjhhkyygkggcmjdzllcclxqsftgjslllmlcskctbljszsz" | |
85 | +"mmnytpzsxqhjcnnqnyexzqzcpshkzzyzxxdfgmwqrllqxrfztlystctmjcsjjthjnxtnrztzfqrhcgllgcnnnnjdnlnnytsjtlny" | |
86 | +"xsszxcgjzyqpylfhdjsbbdczgjjjqzjqdybssllcmyttmqnbhjqmnygjyeqyqmzgcjkpdcnmyzgqllslnclmholzgdylfzslncnz" | |
87 | +"lylzcjeshnyllnxnjxlyjyyyxnbcljsswcqqnnyllzldjnllzllbnylnqchxyyqoxccqkyjxxxyklksxeyqhcqkkkkcsnyxxyqxy" | |
88 | +"gwtjohthxpxxhsnlcykychzzcbwqbbwjqcscszsslcylgddsjzmmymcytsdsxxscjpqqsqylyfzychdjynywcbtjsydchcyddjlb" | |
89 | +"djjsodzyqyskkyxdhhgqjyohdyxwgmmmazdybbbppbcmnnpnjzsmtxerxjmhqdntpjdcbsnmssythjtslmltrcplzszmlqdsdmjm" | |
90 | +"qpnqdxcfrnnfsdqqyxhyaykqyddlqyyysszbydslntfgtzqbzmchdhczcwfdxtmqqsphqwwxsrgjcwnntzcqmgwqjrjhtqjbbgwz" | |
91 | +"fxjhnqfxxqywyyhyscdydhhqmrmtmwctbszppzzglmzfollcfwhmmsjzttdhlmyffytzzgzyskjjxqyjzqbhmbzclyghgfmshpcf" | |
92 | +"zsnclpbqsnjyzslxxfpmtyjygbxlldlxpzjyzjyhhzcywhjylsjexfszzywxkzjlnadymlymqjpwxxhxsktqjezrpxxzghmhwqpw" | |
93 | +"qlyjjqjjzszcnhjlchhnxjlqwzjhbmzyxbdhhypylhlhlgfwlcfyytlhjjcwmscpxstkpnhjxsntyxxtestjctlsslstdlllwwyh" | |
94 | +"dnrjzsfgxssyczykwhtdhwjglhtzdqdjzxxqgghltzphcsqfclnjtclzpfstpdynylgmjllycqhynspchylhqyqtmzymbywrfqyk" | |
95 | +"jsyslzdnjmpxyyssrhzjnyqtqdfzbwwdwwrxcwggyhxmkmyyyhmxmzhnksepmlqqmtcwctmxmxjpjjhfxyyzsjzhtybmstsyjznq" | |
96 | +"jnytlhynbyqclcycnzwsmylknjxlggnnpjgtysylymzskttwlgsmzsylmpwlcwxwqcssyzsyxyrhssntsrwpccpwcmhdhhxzdzyf" | |
97 | +"jhgzttsbjhgyglzysmyclllxbtyxhbbzjkssdmalhhycfygmqypjyjqxjllljgclzgqlycjcctotyxmtmshllwlqfxymzmklpszz" | |
98 | +"cxhkjyclctyjcyhxsgyxnnxlzwpyjpxhjwpjpwxqqxlxsdhmrslzzydwdtcxknstzshbsccstplwsscjchjlcgchssphylhfhhxj" | |
99 | +"sxallnylmzdhzxylsxlmzykcldyahlcmddyspjtqjzlngjfsjshctsdszlblmssmnyymjqbjhrzwtyydchjljapzwbgqxbkfnbjd" | |
100 | +"llllyylsjydwhxpsbcmljpscgbhxlqhyrljxyswxhhzlldfhlnnymjljyflyjycdrjlfsyzfsllcqyqfgqyhnszlylmdtdjcnhbz" | |
101 | +"llnwlqxygyyhbmgdhxxnhlzzjzxczzzcyqzfngwpylcpkpykpmclgkdgxzgxwqbdxzzkzfbddlzxjtpjpttbythzzdwslcpnhslt" | |
102 | +"jxxqlhyxxxywzyswttzkhlxzxzpyhgzhknfsyhntjrnxfjcpjztwhplshfcrhnslxxjxxyhzqdxqwnnhyhmjdbflkhcxcwhjfyjc" | |
103 | +"fpqcxqxzyyyjygrpynscsnnnnchkzdyhflxxhjjbyzwttxnncyjjymswyxqrmhxzwfqsylznggbhyxnnbwttcsybhxxwxyhhxyxn" | |
104 | +"knyxmlywrnnqlxbbcljsylfsytjzyhyzawlhorjmnsczjxxxyxchcyqryxqzddsjfslyltsffyxlmtyjmnnyyyxltzcsxqclhzxl" | |
105 | +"wyxzhnnlrxkxjcdyhlbrlmbrdlaxksnlljlyxxlynrylcjtgncmtlzllcyzlpzpzyawnjjfybdyyzsepckzzqdqpbpsjpdyttbdb" | |
106 | +"bbyndycncpjmtmlrmfmmrwyfbsjgygsmdqqqztxmkqwgxllpjgzbqrdjjjfpkjkcxbljmswldtsjxldlppbxcwkcqqbfqbccajzg" | |
107 | +"mykbhyhhzykndqzybpjnspxthlfpnsygyjdbgxnhhjhzjhstrstldxskzysybmxjlxyslbzyslzxjhfybqnbylljqkygzmcyzzym" | |
108 | +"ccslnlhzhwfwyxzmwyxtynxjhbyymcysbmhysmydyshnyzchmjjmzcaahcbjbbhblytylsxsnxgjdhkxxtxxnbhnmlngsltxmrhn" | |
109 | +"lxqqxmzllyswqgdlbjhdcgjyqyymhwfmjybbbyjyjwjmdpwhxqldyapdfxxbcgjspckrssyzjmslbzzjfljjjlgxzgyxyxlszqkx" | |
110 | +"bexyxhgcxbpndyhwectwwcjmbtxchxyqqllxflyxlljlssnwdbzcmyjclwswdczpchqekcqbwlcgydblqppqzqfnqdjhymmcxtxd" | |
111 | +"rmzwrhxcjzylqxdyynhyyhrslnrsywwjjymtltllgtqcjzyabtckzcjyccqlysqxalmzynywlwdnzxqdllqshgpjfjljnjabcqzd" | |
112 | +"jgthhsstnyjfbswzlxjxrhgldlzrlzqzgsllllzlymxxgdzhgbdphzpbrlwnjqbpfdwonnnhlypcnjccndmbcpbzzncyqxldomzb" | |
113 | +"lzwpdwyygdstthcsqsccrsssyslfybnntyjszdfndpdhtqzmbqlxlcmyffgtjjqwftmnpjwdnlbzcmmcngbdzlqlpnfhyymjylsd" | |
114 | +"chdcjwjcctljcldtljjcbddpndsszycndbjlggjzxsxnlycybjjxxcbylzcfzppgkcxqdzfztjjfjdjxzbnzyjqctyjwhdyczhym" | |
115 | +"djxttmpxsplzcdwslshxypzgtfmlcjtacbbmgdewycyzxdszjyhflystygwhkjyylsjcxgywjcbllcsnddbtzbsclyzczzssqdll" | |
116 | +"mjyyhfllqllxfdyhabxggnywyypllsdldllbjcyxjznlhljdxyyqytdlllbngpfdfbbqbzzmdpjhgclgmjjpgaehhbwcqxajhhhz" | |
117 | +"chxyphjaxhlphjpgpzjqcqzgjjzzgzdmqyybzzphyhybwhazyjhykfgdpfqsdlzmljxjpgalxzdaglmdgxmmzqwtxdxxpfdmmssy" | |
118 | +"mpfmdmmkxksyzyshdzkjsysmmzzzmdydyzzczxbmlstmdyemxckjmztyymzmzzmsshhdccjewxxkljsthwlsqlyjzllsjssdppmh" | |
119 | +"nlgjczyhmxxhgncjmdhxtkgrmxfwmckmwkdcksxqmmmszzydkmsclcmpcjmhrpxqpzdsslcxkyxtwlkjyahzjgzjwcjnxyhmmbml" | |
120 | +"gjxmhlmlgmxctkzmjlyscjsyszhsyjzjcdajzhbsdqjzgwtkqxfkdmsdjlfmnhkzqkjfeypzyszcdpynffmzqykttdzzefmzlbnp" | |
121 | +"plplpbpszalltnlkckqzkgenjlwalkxydpxnhsxqnwqnkxqclhyxxmlnccwlymqyckynnlcjnszkpyzkcqzqljbdmdjhlasqlbyd" | |
122 | +"wqlwdgbqcryddztjybkbwszdxdtnpjdtcnqnfxqqmgnseclstbhpwslctxxlpwydzklnqgzcqapllkqcylbqmqczqcnjslqzdjxl" | |
123 | +"ddhpzqdljjxzqdjyzhhzlkcjqdwjppypqakjyrmpzbnmcxkllzllfqpylllmbsglzysslrsysqtmxyxzqzbscnysyztffmzzsmzq" | |
124 | +"hzssccmlyxwtpzgxzjgzgsjzgkddhtqggzllbjdzlsbzhyxyzhzfywxytymsdnzzyjgtcmtnxqyxjscxhslnndlrytzlryylxqht" | |
125 | +"xsrtzcgyxbnqqzfhykmzjbzymkbpnlyzpblmcnqyzzzsjztjctzhhyzzjrdyzhnfxklfzslkgjtctssyllgzrzbbjzzklpkbczys" | |
126 | +"nnyxbjfbnjzzxcdwlzyjxzzdjjgggrsnjkmsmzjlsjywqsnyhqjsxpjztnlsnshrnynjtwchglbnrjlzxwjqxqkysjycztlqzybb" | |
127 | +"ybyzjqdwgyzcytjcjxckcwdkkzxsnkdnywwyyjqyytlytdjlxwkcjnklccpzcqqdzzqlcsfqchqqgssmjzzllbjjzysjhtsjdysj" | |
128 | +"qjpdszcdchjkjzzlpycgmzndjxbsjzzsyzyhgxcpbjydssxdzncglqmbtsfcbfdzdlznfgfjgfsmpnjqlnblgqcyyxbqgdjjqsrf" | |
129 | +"kztjdhczklbsdzcfytplljgjhtxzcsszzxstjygkgckgynqxjplzbbbgcgyjzgczqszlbjlsjfzgkqqjcgycjbzqtldxrjnbsxxp" | |
130 | +"zshszycfwdsjjhxmfczpfzhqhqmqnknlyhtycgfrzgnqxcgpdlbzcsczqlljblhbdcypscppdymzzxgyhckcpzjgslzlnscnsldl" | |
131 | +"xbmsdlddfjmkdqdhslzxlsznpqpgjdlybdskgqlbzlnlkyyhzttmcjnqtzzfszqktlljtyyllnllqyzqlbdzlslyyzxmdfszsnxl" | |
132 | +"xznczqnbbwskrfbcylctnblgjpmczzlstlxshtzcyzlzbnfmqnlxflcjlyljqcbclzjgnsstbrmhxzhjzclxfnbgxgtqncztmsfz" | |
133 | +"kjmssncljkbhszjntnlzdntlmmjxgzjyjczxyhyhwrwwqnztnfjscpyshzjfyrdjsfscjzbjfzqzchzlxfxsbzqlzsgyftzdcszx" | |
134 | +"zjbjpszkjrhxjzcgbjkhcggtxkjqglxbxfgtrtylxqxhdtsjxhjzjjcmzlcqsbtxwqgxtxxhxftsdkfjhzyjfjxnzldlllcqsqqz" | |
135 | +"qwqxswqtwgwbzcgcllqzbclmqjtzgzyzxljfrmyzflxnsnxxjkxrmjdzdmmyxbsqbhgzmwfwygmjlzbyytgzyccdjyzxsngnyjyz" | |
136 | +"nbgpzjcqsyxsxrtfyzgrhztxszzthcbfclsyxzlzqmzlmplmxzjssfsbysmzqhxxnxrxhqzzzsslyflczjrcrxhhzxqndshxsjjh" | |
137 | +"qcjjbcynsysxjbqjpxzqplmlxzkyxlxcnlcycxxzzlxdlllmjyhzxhyjwkjrwyhcpsgnrzlfzwfzznsxgxflzsxzzzbfcsyjdbrj" | |
138 | +"krdhhjxjljjtgxjxxstjtjxlyxqfcsgswmsbctlqzzwlzzkxjmltmjyhsddbxgzhdlbmyjfrzfcgclyjbpmlysmsxlszjqqhjzfx" | |
139 | +"gfqfqbphngyyqxgztnqwyltlgwgwwhnlfmfgzjmgmgbgtjflyzzgzyzaflsspmlbflcwbjztljjmzlpjjlymqtmyyyfbgygqzgly" | |
140 | +"zdxqyxrqqqhsxyyqxygjtyxfsfsllgnqcygycwfhcccfxpylypllzqxxxxxqqhhsshjzcftsczjxspzwhhhhhapylqnlpqafyhxd" | |
141 | +"ylnkmzqgggddesrenzltzgchyppcsqjjhclljtolnjpzljlhymhezdydsqycddhgznndzclzywllznteydgnlhslpjjbdgwxpcnn" | |
142 | +"tycklkclwkllcasstknzdnnjttlyyzssysszzryljqkcgdhhyrxrzydgrgcwcgzqffbppjfzynakrgywyjpqxxfkjtszzxswzddf" | |
143 | +"bbqtbgtzkznpzfpzxzpjszbmqhkyyxyldkljnypkyghgdzjxxeaxpnznctzcmxcxmmjxnkszqnmnlwbwwqjjyhclstmcsxnjcxxt" | |
144 | +"pcnfdtnnpglllzcjlspblpgjcdtnjjlyarscffjfqwdpgzdwmrzzcgodaxnssnyzrestyjwjyjdbcfxnmwttbqlwstszgybljpxg" | |
145 | +"lbnclgpcbjftmxzljylzxcltpnclcgxtfzjshcrxsfysgdkntlbyjcyjllstgqcbxnhzxbxklylhzlqzlnzcqwgzlgzjncjgcmnz" | |
146 | +"zgjdzxtzjxycyycxxjyyxjjxsssjstsstdppghtcsxwzdcsynptfbchfbblzjclzzdbxgcjlhpxnfzflsyltnwbmnjhszbmdnbcy" | |
147 | +"sccldnycndqlyjjhmqllcsgljjsyfpyyccyltjantjjpwycmmgqyysxdxqmzhszxbftwwzqswqrfkjlzjqqyfbrxjhhfwjgzyqac" | |
148 | +"myfrhcyybynwlpexcczsyyrlttdmqlrkmpbgmyyjprkznbbsqyxbhyzdjdnghpmfsgbwfzmfqmmbzmzdcgjlnnnxyqgmlrygqccy" | |
149 | +"xzlwdkcjcggmcjjfyzzjhycfrrcmtznzxhkqgdjxccjeascrjthpljlrzdjrbcqhjdnrhylyqjsymhzydwcdfryhbbydtssccwbx" | |
150 | +"glpzmlzjdqsscfjmmxjcxjytycghycjwynsxlfemwjnmkllswtxhyyyncmmcyjdqdjzglljwjnkhpzggflccsczmcbltbhbqjxqd" | |
151 | +"jpdjztghglfjawbzyzjltstdhjhctcbchflqmpwdshyytqwcnntjtlnnmnndyyyxsqkxwyyflxxnzwcxypmaelyhgjwzzjbrxxaq" | |
152 | +"jfllpfhhhytzzxsgqjmhspgdzqwbwpjhzjdyjcqwxkthxsqlzyymysdzgnqckknjlwpnsyscsyzlnmhqsyljxbcxtlhzqzpcycyk" | |
153 | +"pppnsxfyzjjrcemhszmnxlxglrwgcstlrsxbygbzgnxcnlnjlclynymdxwtzpalcxpqjcjwtcyyjlblxbzlqmyljbghdslssdmxm" | |
154 | +"bdczsxyhamlczcpjmcnhjyjnsykchskqmczqdllkablwjqsfmocdxjrrlyqchjmybyqlrhetfjzfrfksryxfjdwtsxxywsqjysly" | |
155 | +"xwjhsdlxyyxhbhawhwjcxlmyljcsqlkydttxbzslfdxgxsjkhsxxybssxdpwncmrptqzczenygcxqfjxkjbdmljzmqqxnoxslyxx" | |
156 | +"lylljdzptymhbfsttqqwlhsgynlzzalzxclhtwrrqhlstmypyxjjxmnsjnnbryxyjllyqyltwylqyfmlkljdnlltfzwkzhljmlhl" | |
157 | +"jnljnnlqxylmbhhlnlzxqchxcfxxlhyhjjgbyzzkbxscqdjqdsndzsygzhhmgsxcsymxfepcqwwrbpyyjqryqcyjhqqzyhmwffhg" | |
158 | +"zfrjfcdbxntqyzpcyhhjlfrzgpbxzdbbgrqstlgdgylcqmgchhmfywlzyxkjlypjhsywmqqggzmnzjnsqxlqsyjtcbehsxfszfxz" | |
159 | +"wfllbcyyjdytdthwzsfjmqqyjlmqsxlldttkghybfpwdyysqqrnqwlgwdebzwcyygcnlkjxtmxmyjsxhybrwfymwfrxyymxysctz" | |
160 | +"ztfykmldhqdlgyjnlcryjtlpsxxxywlsbrrjwxhqybhtydnhhxmmywytycnnmnssccdalwztcpqpyjllqzyjswjwzzmmglmxclmx" | |
161 | +"nzmxmzsqtzppjqblpgxjzhfljjhycjsrxwcxsncdlxsyjdcqzxslqyclzxlzzxmxqrjmhrhzjbhmfljlmlclqnldxzlllfyprgjy" | |
162 | +"nxcqqdcmqjzzxhnpnxzmemmsxykynlxsxtljxyhwdcwdzhqyybgybcyscfgfsjnzdrzzxqxrzrqjjymcanhrjtldbpyzbstjhxxz" | |
163 | +"ypbdwfgzzrpymnnkxcqbyxnbnfyckrjjcmjegrzgyclnnzdnkknsjkcljspgyyclqqjybzssqlllkjftbgtylcccdblsppfylgyd" | |
164 | +"tzjqjzgkntsfcxbdkdxxhybbfytyhbclnnytgdhryrnjsbtcsnyjqhklllzslydxxwbcjqsbxnpjzjzjdzfbxxbrmladhcsnclbj" | |
165 | +"dstblprznswsbxbcllxxlzdnzsjpynyxxyftnnfbhjjjgbygjpmmmmsszljmtlyzjxswxtyledqpjmpgqzjgdjlqjwjqllsdgjgy" | |
166 | +"gmscljjxdtygjqjjjcjzcjgdzdshqgzjggcjhqxsnjlzzbxhsgzxcxyljxyxyydfqqjhjfxdhctxjyrxysqtjxyefyyssyxjxncy" | |
167 | +"zxfxcsxszxyyschshxzzzgzzzgfjdldylnpzgsjaztyqzpbxcbdztzczyxxyhhscjshcggqhjhgxhsctmzmehyxgebtclzkkwytj" | |
168 | +"zrslekestdbcyhqqsayxcjxwwgsphjszsdncsjkqcxswxfctynydpccczjqtcwjqjzzzqzljzhlsbhpydxpsxshhezdxfptjqyzc" | |
169 | +"xhyaxncfzyyhxgnqmywntzsjbnhhgymxmxqcnssbcqsjyxxtyyhybcqlmmszmjzzllcogxzaajzyhjmchhcxzsxsdznleyjjzjbh" | |
170 | +"zwjzsqtzpsxzzdsqjjjlnyazphhyysrnqzthzhnyjyjhdzxzlswclybzyecwcycrylchzhzydzydyjdfrjjhtrsqtxyxjrjhojyn" | |
171 | +"xelxsfsfjzghpzsxzszdzcqzbyyklsgsjhczshdgqgxyzgxchxzjwyqwgyhksseqzzndzfkwyssdclzstsymcdhjxxyweyxczayd" | |
172 | +"mpxmdsxybsqmjmzjmtjqlpjyqzcgqhyjhhhqxhlhdldjqcfdwbsxfzzyyschtytyjbhecxhjkgqfxbhyzjfxhwhbdzfyzbchpnpg" | |
173 | +"dydmsxhkhhmamlnbyjtmpxejmcthqbzyfcgtyhwphftgzzezsbzegpbmdskftycmhbllhgpzjxzjgzjyxzsbbqsczzlzscstpgxm" | |
174 | +"jsfdcczjzdjxsybzlfcjsazfgszlwbczzzbyztzynswyjgxzbdsynxlgzbzfygczxbzhzftpbgzgejbstgkdmfhyzzjhzllzzgjq" | |
175 | +"zlsfdjsscbzgpdlfzfzszyzyzsygcxsnxxchczxtzzljfzgqsqqxcjqccccdjcdszzyqjccgxztdlgscxzsyjjqtcclqdqztqchq" | |
176 | +"qyzynzzzpbkhdjfcjfztypqyqttynlmbdktjcpqzjdzfpjsbnjlgyjdxjdcqkzgqkxclbzjtcjdqbxdjjjstcxnxbxqmslyjcxnt" | |
177 | +"jqwwcjjnjjlllhjcwqtbzqqczczpzzdzyddcyzdzccjgtjfzdprntctjdcxtqzdtjnplzbcllctdsxkjzqdmzlbznbtjdcxfczdb" | |
178 | +"czjjltqqpldckztbbzjcqdcjwynllzlzccdwllxwzlxrxntqjczxkjlsgdnqtddglnlajjtnnynkqlldzntdnycygjwyxdxfrsqs" | |
179 | +"tcdenqmrrqzhhqhdldazfkapbggpzrebzzykyqspeqjjglkqzzzjlysyhyzwfqznlzzlzhwcgkypqgnpgblplrrjyxcccgyhsfzf" | |
180 | +"wbzywtgzxyljczwhncjzplfflgskhyjdeyxhlpllllcygxdrzelrhgklzzyhzlyqszzjzqljzflnbhgwlczcfjwspyxzlzlxgccp" | |
181 | +"zbllcxbbbbnbbcbbcrnnzccnrbbnnldcgqyyqxygmqzwnzytyjhyfwtehznjywlccntzyjjcdedpwdztstnjhtymbjnyjzlxtsst" | |
182 | +"phndjxxbyxqtzqddtjtdyztgwscszqflshlnzbcjbhdlyzjyckwtydylbnydsdsycctyszyyebgexhqddwnygyclxtdcystqnygz" | |
183 | +"ascsszzdzlcclzrqxyywljsbymxshzdembbllyyllytdqyshymrqnkfkbfxnnsbychxbwjyhtqbpbsbwdzylkgzskyghqzjxhxjx" | |
184 | +"gnljkzlyycdxlfwfghljgjybxblybxqpqgntzplncybxdjyqydymrbeyjyyhkxxstmxrczzjwxyhybmcflyzhqyzfwxdbxbcwzms" | |
185 | +"lpdmyckfmzklzcyqycclhxfzlydqzpzygyjyzmdxtzfnnyttqtzhgsfcdmlccytzxjcytjmkslpzhysnwllytpzctzccktxdhxxt" | |
186 | +"qcyfksmqccyyazhtjplylzlyjbjxtfnyljyynrxcylmmnxjsmybcsysslzylljjgyldzdlqhfzzblfndsqkczfyhhgqmjdsxyctt" | |
187 | +"xnqnjpyybfcjtyyfbnxejdgyqbjrcnfyyqpghyjsyzngrhtknlnndzntsmgklbygbpyszbydjzsstjztsxzbhbscsbzczptqfzlq" | |
188 | +"flypybbjgszmnxdjmtsyskkbjtxhjcegbsmjyjzcstmljyxrczqscxxqpyzhmkyxxxjcljyrmyygadyskqlnadhrskqxzxztcggz" | |
189 | +"dlmlwxybwsyctbhjhcfcwzsxwwtgzlxqshnyczjxemplsrcgltnzntlzjcyjgdtclglbllqpjmzpapxyzlaktkdwczzbncctdqqz" | |
190 | +"qyjgmcdxltgcszlmlhbglkznnwzndxnhlnmkydlgxdtwcfrjerctzhydxykxhwfzcqshknmqqhzhhymjdjskhxzjzbzzxympajnm" | |
191 | +"ctbxlsxlzynwrtsqgscbptbsgzwyhtlkssswhzzlyytnxjgmjrnsnnnnlskztxgxlsammlbwldqhylakqcqctmycfjbslxclzjcl" | |
192 | +"xxknbnnzlhjphqplsxsckslnhpsfqcytxjjzljldtzjjzdlydjntptnndskjfsljhylzqqzlbthydgdjfdbyadxdzhzjnthqbykn" | |
193 | +"xjjqczmlljzkspldsclbblnnlelxjlbjycxjxgcnlcqplzlznjtsljgyzdzpltqcssfdmnycxgbtjdcznbgbqyqjwgkfhtnbyqzq" | |
194 | +"gbkpbbyzmtjdytblsqmbsxtbnpdxklemyycjynzdtldykzzxtdxhqshygmzsjycctayrzlpwltlkxslzcggexclfxlkjrtlqjaqz" | |
195 | +"ncmbqdkkcxglczjzxjhptdjjmzqykqsecqzdshhadmlzfmmzbgntjnnlhbyjbrbtmlbyjdzxlcjlpldlpcqdhlhzlycblcxccjad" | |
196 | +"qlmzmmsshmybhbnkkbhrsxxjmxmdznnpklbbrhgghfchgmnklltsyyycqlcskymyehywxnxqywbawykqldnntndkhqcgdqktgpkx" | |
197 | +"hcpdhtwnmssyhbwcrwxhjmkmzngwtmlkfghkjyldyycxwhyyclqhkqhtdqkhffldxqwytyydesbpkyrzpjfyyzjceqdzzdlattpb" | |
198 | +"fjllcxdlmjsdxegwgsjqxcfbssszpdyzcxznyxppzydlyjccpltxlnxyzyrscyyytylwwndsahjsygyhgywwaxtjzdaxysrltdps" | |
199 | +"syxfnejdxyzhlxlllzhzsjnyqyqyxyjghzgjcyjchzlycdshhsgczyjscllnxzjjyyxnfsmwfpyllyllabmddhwzxjmcxztzpmlq" | |
200 | +"chsfwzynctlndywlslxhymmylmbwwkyxyaddxylldjpybpwnxjmmmllhafdllaflbnhhbqqjqzjcqjjdjtffkmmmpythygdrjrdd" | |
201 | +"wrqjxnbysrmzdbyytbjhpymyjtjxaahggdqtmystqxkbtzbkjlxrbyqqhxmjjbdjntgtbxpgbktlgqxjjjcdhxqdwjlwrfmjgwqh" | |
202 | +"cnrxswgbtgygbwhswdwrfhwytjjxxxjyzyslphyypyyxhydqpxshxyxgskqhywbdddpplcjlhqeewjgsyykdpplfjthkjltcyjhh" | |
203 | +"jttpltzzcdlyhqkcjqysteeyhkyzyxxyysddjkllpymqyhqgxqhzrhbxpllnqydqhxsxxwgdqbshyllpjjjthyjkyphthyyktyez" | |
204 | +"yenmdshlzrpqfbnfxzbsftlgxsjbswyysksflxlpplbbblnsfbfyzbsjssylpbbffffsscjdstjsxtryjcyffsyzyzbjtlctsbsd" | |
205 | +"hrtjjbytcxyyeylycbnebjdsysyhgsjzbxbytfzwgenhhhthjhhxfwgcstbgxklstyymtmbyxjskzscdyjrcythxzfhmymcxlzns" | |
206 | +"djtxtxrycfyjsbsdyerxhljxbbdeynjghxgckgscymblxjmsznskgxfbnbbthfjyafxwxfbxmyfhdttcxzzpxrsywzdlybbktyqw" | |
207 | +"qjbzypzjznjpzjlztfysbttslmptzrtdxqsjehbnylndxljsqmlhtxtjecxalzzspktlzkqqyfsyjywpcpqfhjhytqxzkrsgtksq" | |
208 | +"czlptxcdyyzsslzslxlzmacpcqbzyxhbsxlzdltztjtylzjyytbzypltxjsjxhlbmytxcqrblzssfjzztnjytxmyjhlhpblcyxqj" | |
209 | +"qqkzzscpzkswalqsplczzjsxgwwwygyatjbbctdkhqhkgtgpbkqyslbxbbckbmllndzstbklggqkqlzbkktfxrmdkbftpzfrtppm" | |
210 | +"ferqnxgjpzsstlbztpszqzsjdhljqlzbpmsmmsxlqqnhknblrddnhxdkddjcyyljfqgzlgsygmjqjkhbpmxyxlytqwlwjcpbmjxc" | |
211 | +"yzydrjbhtdjyeqshtmgsfyplwhlzffnynnhxqhpltbqpfbjwjdbygpnxtbfzjgnnntjshxeawtzylltyqbwjpgxghnnkndjtmszs" | |
212 | +"qynzggnwqtfhclssgmnnnnynzqqxncjdqgzdlfnykljcjllzlmzznnnnsshthxjlzjbbhqjwwycrdhlyqqjbeyfsjhthnrnwjhwp" | |
213 | +"slmssgzttygrqqwrnlalhmjtqjsmxqbjjzjqzyzkxbjqxbjxshzssfglxmxnxfghkzszggslcnnarjxhnlllmzxelglxydjytlfb" | |
214 | +"kbpnlyzfbbhptgjkwetzhkjjxzxxglljlstgshjjyqlqzfkcgnndjsszfdbctwwseqfhqjbsaqtgypjlbxbmmywxgslzhglsgnyf" | |
215 | +"ljbyfdjfngsfmbyzhqffwjsyfyjjphzbyyzffwotjnlmftwlbzgyzqxcdjygzyyryzynyzwegazyhjjlzrthlrmgrjxzclnnnljj" | |
216 | +"yhtbwjybxxbxjjtjteekhwslnnlbsfazpqqbdlqjjtyyqlyzkdksqjnejzldqcgjqnnjsncmrfqthtejmfctyhypymhydmjncfgy" | |
217 | +"yxwshctxrljgjzhzcyyyjltkttntmjlzclzzayyoczlrlbszywjytsjyhbyshfjlykjxxtmzyyltxxypslqyjzyzyypnhmymdyyl" | |
218 | +"blhlsyygqllnjjymsoycbzgdlyxylcqyxtszegxhzglhwbljheyxtwqmakbpqcgyshhegqcmwyywljyjhyyzlljjylhzyhmgsljl" | |
219 | +"jxcjjyclycjbcpzjzjmmwlcjlnqljjjlxyjmlszljqlycmmgcfmmfpqqmfxlqmcffqmmmmhnznfhhjgtthxkhslnchhyqzxtmmqd" | |
220 | +"cydyxyqmyqylddcyaytazdcymdydlzfffmmycqcwzzmabtbyctdmndzggdftypcgqyttssffwbdttqssystwnjhjytsxxylbyyhh" | |
221 | +"whxgzxwznnqzjzjjqjccchykxbzszcnjtllcqxynjnckycynccqnxyewyczdcjycchyjlbtzyycqwlpgpyllgktltlgkgqbgychj" | |
222 | +"xy"; | |
223 | + | |
224 | +char pinyinFirstLetter(unsigned short hanzi) | |
225 | +{ | |
226 | + int index = hanzi - HANZI_START; | |
227 | + if (index >= 0 && index <= HANZI_COUNT) | |
228 | + { | |
229 | + return firstLetterArray[index]; | |
230 | + } | |
231 | + else | |
232 | + { | |
233 | + return hanzi; | |
234 | + } | |
235 | +} | |
0 | 236 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,23 @@ |
1 | +/* | |
2 | + * pinyin.h | |
3 | + * Chinese Pinyin First Letter | |
4 | + * | |
5 | + * Created by George on 4/21/10. | |
6 | + * Copyright 2010 RED/SAFI. All rights reserved. | |
7 | + * | |
8 | + */ | |
9 | + | |
10 | +/* | |
11 | + * // Example | |
12 | + * | |
13 | + * #import "pinyin.h" | |
14 | + * | |
15 | + * NSString *hanyu = @"中国共产党万岁!"; | |
16 | + * for (int i = 0; i < [hanyu length]; i++) | |
17 | + * { | |
18 | + * printf("%c", pinyinFirstLetter([hanyu characterAtIndex:i])); | |
19 | + * } | |
20 | + * | |
21 | + */ | |
22 | +#define ALPHA @"ABCDEFGHIJKLMNOPQRSTUVWXYZ#" | |
23 | +char pinyinFirstLetter(unsigned short hanzi); | |
0 | 24 | \ No newline at end of file | ... | ... |
YouerLiveVideo/YouerLiveVideo/util/utiles.swift