新西兰天维网社区

 找回密码
登录  注册
搜索
热搜: 移民 留学
查看: 3613|回复: 31
打印 上一主题 下一主题

[工作] 有知道EROAD公司的吗? Java 第二轮failed了 唉 [复制链接]

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
跳转到指定楼层
楼主
发表于 2016-10-20 20:18:28 |只看该作者 |倒序浏览 微信分享
本人Wintec 在读GD,IT 之前看到这家公司在网上招人,说是给办工签,索性就投个简历过去,经过了第一轮,纯概念性的技术面试,第二轮Java程序题之后,接到的消息就是unfortunately, 基于第二轮结果他们不打算再面我了
第二轮的题目就是用Java写一个UTC时间根据给定坐标转localtime的程序题,对于我最不能接受的是我不光用Java实现了一版,还用groovy写了一版更简单的,莫名其妙的就给我拒了,鉴于java代码太多我就不贴了, 想请问坛子里Java的大神们,NZ软件公司技术要求都这么屌吗?  还是我的代码太low了....

  1. def baseUrl = 'https://maps.googleapis.com/maps/api/timezone/json'
  2. def forecastApi = new RESTClient(baseUrl)

  3. new File("./input.csv").splitEachLine(",") {fields ->
  4.     def queryString = [location: "${fields[1]},${fields[2]}", timestamp: 0, key: apiKey]
  5.     def response = forecastApi.get(query: queryString)
  6.     String zoneID = response.data.timeZoneId
  7.     DateFormat utcFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  8.     utcFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
  9.     Date date = utcFormat.parse(fields[0]);
  10.     DateFormat pstFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
  11.     pstFormat.setTimeZone(TimeZone.getTimeZone(zoneID));
  12.     println "${fields[0]},${fields[1]},${fields[2]},${zoneID},${pstFormat.format(date)}";
  13. }
复制代码


使用道具 举报

Rank: 14Rank: 14Rank: 14Rank: 14

升级  25.6%

UID
343013
热情
10003
人气
11756
主题
35
帖子
664
精华
0
积分
11280
阅读权限
30
注册时间
2012-9-20

新时政

沙发
发表于 2016-10-20 20:42:11 |只看该作者 微信分享
本帖最后由 MSSA 于 2016-10-20 20:45 编辑

有时候你被拒不一定是跟你的代码有关,跟你面试的表现和是否有竞争者都有关系。我不太了解你具体面试的情况,不过从你描述看,我给你如下几个建议:
1.你用groovy写这个版本,以我个人看来完全多余,人家如果要求你用Java,你为何要用groovy?developer永远要follow requirement。这个公司是用Java的,对于用Java的公司你groovy写的再好也等于0. 你可能因为喜欢简洁的代码所以这么干,但是这么做会给人show off和不follow requirement的印象

2.你的代码如果是当场短时间写出来的我觉得可以说的过去,当然是看什么职位,Junior/Graduate,我觉得写成这样是可以的,如果是intermediate往上的职位,可能还需要点work。 Groovy不太了解,不过你里面调用的Java API可以在refine一下。例如对于时间这东西,可以用Joda time,或者新的Java 8的date API。 而且你这个程序没有基本的error handling,还有代码都挤到一块没有line break. date pattern可以extract到一个constant等等之类的。 当然这些我个人觉得都是比较minor的东西。

主要原因可能还是你偏离主题,也或许你的Java的版本有什么他们在意的问题。面试被拒有很多原因,有时候不一定因为你自己的原因而是因为可能还有比你更合适的candidate。




使用道具 举报

Rank: 9Rank: 9Rank: 9

升级  19%

UID
10007284
热情
533
人气
1182
主题
61
帖子
571
精华
0
积分
1190
阅读权限
20
注册时间
2015-10-3
板凳
发表于 2016-10-20 21:00:47 |只看该作者 微信分享
那个。。。作为一个不合格的java程序员。
我居然不知道啥是“UTC时间”。。。
感觉自己好low。。。

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
地板
发表于 2016-10-20 21:03:17 |只看该作者 微信分享
MSSA 发表于 2016-10-20 20:42
有时候你被拒不一定是跟你的代码有关,跟你面试的表现和是否有竞争者都有关系。我不太了解你具体面试的情况 ...

恩  多谢回复, 因为是限时写code所以有些细节没有考虑,不过确实回想下如果这个公司能提供工签的话,应聘者估计要比那种不给工签的水平高些吧,毕竟是面向全球的了, Java 8 的新API也有看过,不过时间太紧就没想起用。 呵呵,也许被挫习惯就好了,只不过没想到在这边困难还是很大的。 好多公司一看你是学生签 直接连面试机会都不给, 真是想找家公司实习下,能拿个最低工资也好。 感觉要没出路了

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
5#分享本帖地址
发表于 2016-10-20 21:08:36 |只看该作者 微信分享
wentan 发表于 2016-10-20 21:00
那个。。。作为一个不合格的java程序员。
我居然不知道啥是“UTC时间”。。。
感觉自己好low。。。 ...

呵呵,能有工作就是合格的java程序员

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  45.6%

UID
121047
热情
19001
人气
23532
主题
263
帖子
14860
精华
23
积分
29120
阅读权限
30
注册时间
2007-6-21

2018年度金ID

6#分享本帖地址
发表于 2016-10-20 21:24:26 |只看该作者 微信分享
代码本身应该run 起来是可以得,但是有几个小点
1.没有handle 错误
2. Date date 是什么鬼
3. response.data.timeZoneId, 确定每次loop 都要重新拿一遍?
黑羊就是我,我就是黑羊

使用道具 举报

Rank: 14Rank: 14Rank: 14Rank: 14

升级  25.6%

UID
343013
热情
10003
人气
11756
主题
35
帖子
664
精华
0
积分
11280
阅读权限
30
注册时间
2012-9-20

新时政

7#分享本帖地址
发表于 2016-10-20 21:29:35 |只看该作者 微信分享
Venox10111 发表于 2016-10-20 21:24
代码本身应该run 起来是可以得,但是有几个小点
1.没有handle 错误
2. Date date 是什么鬼

zone id应该是他根据坐标field 0,1算出来的需要在loop里面,不过那两个date format可以提到loop外面去(不用多线程的前提下)。

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
8#分享本帖地址
发表于 2016-10-20 21:33:50 |只看该作者 微信分享
Venox10111 发表于 2016-10-20 21:24
代码本身应该run 起来是可以得,但是有几个小点
1.没有handle 错误
2. Date date 是什么鬼

因为input是每行都是一个新的经纬度坐标 需要到google api请求新的timezone,所以就放到loop里了

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  45.6%

UID
121047
热情
19001
人气
23532
主题
263
帖子
14860
精华
23
积分
29120
阅读权限
30
注册时间
2007-6-21

2018年度金ID

9#分享本帖地址
发表于 2016-10-20 21:34:23 |只看该作者 微信分享
MSSA 发表于 2016-10-20 22:29
zone id应该是他根据坐标field 0,1算出来的需要在loop里面,不过那两个date format可以提到loop外面去(不 ...

哦,对,不过总感觉每次query 一下耗费apikey, 估计google api 是可以一次query 多个的吧,嘿嘿

不过考试能写出来这个不容易了
黑羊就是我,我就是黑羊

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
10#分享本帖地址
发表于 2016-10-20 21:35:45 |只看该作者 微信分享
MSSA 发表于 2016-10-20 21:29
zone id应该是他根据坐标field 0,1算出来的需要在loop里面,不过那两个date format可以提到loop外面去(不 ...

恩 老的Date API多线程下有问题

使用道具 举报

Rank: 14Rank: 14Rank: 14Rank: 14

升级  25.6%

UID
343013
热情
10003
人气
11756
主题
35
帖子
664
精华
0
积分
11280
阅读权限
30
注册时间
2012-9-20

新时政

11#分享本帖地址
发表于 2016-10-20 21:37:41 |只看该作者 微信分享
Venox10111 发表于 2016-10-20 21:34
哦,对,不过总感觉每次query 一下耗费apikey, 估计google api 是可以一次query 多个的吧,嘿嘿

不过考 ...

是的,我上学的时候可没这个本事。。。。。那时候天天魔兽呢。

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
12#分享本帖地址
发表于 2016-10-20 21:55:26 |只看该作者 微信分享
MSSA 发表于 2016-10-20 21:37
是的,我上学的时候可没这个本事。。。。。那时候天天魔兽呢。

来NZ读GD IT的一般都是有些经验的吧,也不是想说code写的怎么样,就是觉得这边的机会实在太少了,而且我还在Hamilton,用Java的公司更少, 之前也试过打印简历挨家挨户去递, 最怕的不是你技术不行,而是人家连机会都不给你, 还有半个学期,到时候转成open working visa 不知道能不能好些

使用道具 举报

Rank: 9Rank: 9Rank: 9

升级  37.9%

UID
365512
热情
308
人气
1919
主题
14
帖子
327
精华
0
积分
1379
阅读权限
20
注册时间
2013-9-22
13#分享本帖地址
发表于 2016-10-20 21:58:47 |只看该作者 微信分享
有没有想过为什么题这么简单,还有时间让你写2个版本?这么简单的题怎么筛选面试者呢?
时间这么充裕,功能又简单,所以我认为这道题应该体现的是程序设计的基本功。
1. 你这个不是个完整的程序。完整的程序不是说能跑就行了,你还要告诉别人怎么用,没有readme,至少也得有注释。
2. 没有考虑可扩展性,简单的说要是input换一个格式你怎么处理,要是别人要求用另一个service来查timezone咋办。不知道我说什么的话看看工厂模式好了。
3. 时间允许的话还应该考虑模块化,封装具体实现。这里至少就可以分出一个io模块和查询模块。
4. 上面的兄弟说了,没有handle exception。

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
14#分享本帖地址
发表于 2016-10-20 22:06:33 |只看该作者 微信分享
qing_song 发表于 2016-10-20 21:58
有没有想过为什么题这么简单,还有时间让你写2个版本?这么简单的题怎么筛选面试者呢?
时间这么充裕,功能 ...

呵呵,本人技艺不精,请您在一小时时间内写出java版的 带有IO模块查询模块 readme完整API 注释的project出来。 本来也不是技术论坛,也没贴代码的必要,只是说面试来说用Groovy脚本来写代码要简洁很多,我是为了比较Java的啰嗦,所以尽量把Groovy写的很简单, 当让我也可以贴Java的将近200多行的代码,各种try catch final,不过我觉得没必要

使用道具 举报

Rank: 9Rank: 9Rank: 9

升级  37.9%

UID
365512
热情
308
人气
1919
主题
14
帖子
327
精华
0
积分
1379
阅读权限
20
注册时间
2013-9-22
15#分享本帖地址
发表于 2016-10-20 22:10:52 |只看该作者 微信分享
flying3615 发表于 2016-10-20 22:06
呵呵,本人技艺不精,请您在一小时时间内写出java版的 带有IO模块查询模块 readme完整API 注释的project ...

呵呵,我这么说是因为我知道这题,不过不是90分钟的吗,怎么变1小时了呢。

使用道具 举报

Rank: 8Rank: 8

升级  10%

UID
313575
热情
254
人气
643
主题
19
帖子
178
精华
0
积分
550
阅读权限
20
注册时间
2012-2-29
16#分享本帖地址
发表于 2016-10-20 22:12:30 |只看该作者 微信分享
1. Eroad是用Java的,所以你还是用Java来写,Groovy在很多人眼里只是作为Script用的,你这个代码感觉就是Groovy+Java混搭
2. 他们公司主要是车载系统交互的(听说的),所以对性能要求很高,你的代码里面重复太多
3. 你的Groovy写出来就像是Script,如果真是这样的要求,估计那边会不限语言,你就还不如用Nodejs或是Ruby写,效率会更高(个人感觉)
4. 代码里面没有任何的error handler, groovy里面的 cond?.doThing {} 是最基本用法防止NPE
5. 就算是Groovy,也尽量不要用def, 太多runtime error, 而不是 compile error,如果要用def 就都用,除了constant
6. 建议有空的时候看看Clean code规范代码格式,也可以把你自己的Java和Groovy的代码用sonar扫一下,再说其他的问题

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
17#分享本帖地址
发表于 2016-10-20 22:19:15 |只看该作者 微信分享
qing_song 发表于 2016-10-20 22:10
呵呵,我这么说是因为我知道这题,不过不是90分钟的吗,怎么变1小时了呢。 ...

因为另外半小时用来写groovy

使用道具 举报

Rank: 9Rank: 9Rank: 9

升级  37.9%

UID
365512
热情
308
人气
1919
主题
14
帖子
327
精华
0
积分
1379
阅读权限
20
注册时间
2013-9-22
18#分享本帖地址
发表于 2016-10-20 22:22:43 |只看该作者 微信分享
flying3615 发表于 2016-10-20 22:19
因为另外半小时用来写groovy

咋感觉你是被groovy害的呢。。。

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
19#分享本帖地址
发表于 2016-10-20 22:28:13 |只看该作者 微信分享
kisswd 发表于 2016-10-20 22:12
1. Eroad是用Java的,所以你还是用Java来写,Groovy在很多人眼里只是作为Script用的,你这个代码感觉就是Gr ...

牛人,意见中肯  赞一个

使用道具 举报

Rank: 13Rank: 13Rank: 13Rank: 13

升级  14.94%

UID
10005740
热情
3673
人气
4380
主题
68
帖子
3299
精华
3
积分
5747
阅读权限
30
注册时间
2015-9-18

10周年纪念

20#分享本帖地址
发表于 2016-10-21 11:20:00 |只看该作者 微信分享
wentan 发表于 2016-10-20 21:00
那个。。。作为一个不合格的java程序员。
我居然不知道啥是“UTC时间”。。。
感觉自己好low。。。 ...

0时区格林威治时间。。
愿时光可以流逝的慢一点儿。。

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  43.75%

UID
87531
热情
25133
人气
29719
主题
70
帖子
2428
精华
2
积分
28749
阅读权限
30
注册时间
2006-9-9

畅游勋章 游戏勋章 2016 PokemonGo活动勋章 导购草根勋章

21#分享本帖地址
发表于 2016-10-21 13:47:07 |只看该作者 微信分享
引用一下昨天跟我聊天的某team lead的话

我找你来咱提前说好,我跟上面老板还有下面团队推荐了半年用某种库,做某种架构。你来了不能给我改成什么什么架构。

楼主你这明显是撞枪口上了。 也可以说是喧宾夺主。人家招你来是干活的没问你哪个好,哪个坏。你这样面试说好听了是展示技术,用groovy多写一遍。难听了叫不听从指挥。写完第一遍你为什么不交? 也许还有第二题呢?老板让你用第二种方法写了? 再说了,如果JAVA版里面有错呢?~

其实你这种情况,不考虑写groovy 只考虑时间。 只要有写的比你快的,java代码整洁的就肯定把你刷下去了啊。 而且万一你不好说话呢?来上班第一天说我要用groovy。。。老板就直接踩雷上了。。。

其实毕业生面试有个技巧。就是展示自己的可塑性。 让你干啥就干啥,不要太钻,或者挑。 就算是真挑,也得入职之后。


使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
22#分享本帖地址
发表于 2016-10-21 14:15:36 |只看该作者 微信分享
本帖最后由 flying3615 于 2016-10-21 14:18 编辑
ztswyz 发表于 2016-10-21 13:47
引用一下昨天跟我聊天的某team lead的话

我找你来咱提前说好,我跟上面老板还有下面团队推荐了半年用某种 ...

conduct code here?
Programmer's time is much more valuable, compared to Java, Groovy is more consice and intuitive, even if my code is imperfect, so I took a shot to choose a better way.
Addtionally, I wrote in a Groovy way just want to advise I'm a qualified Java programmer who can bring more value than merely a Java coder, If they ask I can even re-write it in Scala or Clojure.

使用道具 举报

Rank: 10Rank: 10Rank: 10

升级  79.67%

UID
393463
热情
2618
人气
3606
主题
8
帖子
75
精华
0
积分
3195
阅读权限
30
注册时间
2014-12-16
23#分享本帖地址
发表于 2016-10-21 16:32:01 |只看该作者 微信分享
flying3615 发表于 2016-10-21 14:15
conduct code here?
Programmer's time is much more valuable, compared to Java, Groovy is more consic ...

英语作文考试,你非得用法语写,不及格不是很正常吗,有啥莫名其妙的。

使用道具 举报

Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

升级  0.01%

UID
280155
热情
102519
人气
126625
主题
1740
帖子
96446
精华
18
积分
164017
阅读权限
30
注册时间
2011-3-22

人气勋章-女性 畅游勋章 爱心勋章 元老勋章 灌水勋章 哈卡一族 10周年纪念 2018年度金ID 2019许愿勋章 家有学童 美食活动 2018俄罗斯世界杯 2014许愿勋章 平安如意勋章

24#分享本帖地址
发表于 2016-10-21 17:35:59 |只看该作者 微信分享
哈哈,是我也不会要你的。让你写Java,你写什么Groovy?这么简单的话都不会听。请了你以后,公司的code base就完蛋了。。。哈哈哈哈
Disclaimer: 本老鼠发的帖子内容都是在我的理解范围内的。没有误导网友的意思。如果是读者自己误解,不是本老鼠的责任。
我们应该鄙视他们,因为他们脑残
懂的人自然会懂,不懂的永远不会懂

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  50.8%

UID
10039329
热情
20264
人气
22094
主题
304
帖子
17354
精华
1
积分
30159
阅读权限
30
注册时间
2016-10-21

新时政 元老勋章 10周年纪念 2019-2020年度金ID 2018年度金ID

25#分享本帖地址
发表于 2016-10-27 09:33:58 |只看该作者 微信分享
I don't know about grovvy. I think groovy is very interesting.

For your code, if I wrote in javascript or other languange, I will put following code in a function. By seperating the code into function, it is easy to read and of course you can unit test the function :-)

def queryString = [location: "${fields[1]},${fields[2]}", timestamp: 0, key: apiKey]
    def response = forecastApi.get(query: queryString)
    String zoneID = response.data.timeZoneId
    DateFormat utcFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    utcFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
    Date date = utcFormat.parse(fields[0]);
    DateFormat pstFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
    pstFormat.setTimeZone(TimeZone.getTimeZone(zoneID));
    println "${fields[0]},${fields[1]},${fields[2]},${zoneID},${pstFormat.format(date)}";

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  50.8%

UID
10039329
热情
20264
人气
22094
主题
304
帖子
17354
精华
1
积分
30159
阅读权限
30
注册时间
2016-10-21

新时政 元老勋章 10周年纪念 2019-2020年度金ID 2018年度金ID

26#分享本帖地址
发表于 2016-10-27 09:35:40 |只看该作者 微信分享
NewLynnHse 发表于 2016-10-21 17:35
哈哈,是我也不会要你的。让你写Java,你写什么Groovy?这么简单的话都不会听。请了你以后,公司的code bas ...

The issue is the interviewer may not know about groovy and cannot make judgement about the skill of the candidate

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  50.8%

UID
10039329
热情
20264
人气
22094
主题
304
帖子
17354
精华
1
积分
30159
阅读权限
30
注册时间
2016-10-21

新时政 元老勋章 10周年纪念 2019-2020年度金ID 2018年度金ID

27#分享本帖地址
发表于 2016-10-27 09:37:13 |只看该作者 微信分享
kisswd 发表于 2016-10-20 22:12
1. Eroad是用Java的,所以你还是用Java来写,Groovy在很多人眼里只是作为Script用的,你这个代码感觉就是Gr ...

I talked to their developers before and they use C# too.

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  50.8%

UID
10039329
热情
20264
人气
22094
主题
304
帖子
17354
精华
1
积分
30159
阅读权限
30
注册时间
2016-10-21

新时政 元老勋章 10周年纪念 2019-2020年度金ID 2018年度金ID

28#分享本帖地址
发表于 2016-10-27 09:41:54 |只看该作者 微信分享
Frankly speaking, I have no interest to taking interviews anymore. They just give you some test and I hate test :-)

I have 22 years programming experience and including 16 years auckland, nz programming experience. :-)

使用道具 举报

Rank: 4

升级  82.86%

UID
10034086
热情
51
人气
106
主题
1
帖子
17
精华
0
积分
88
阅读权限
20
注册时间
2016-7-16
29#分享本帖地址
发表于 2016-10-27 13:15:21 |只看该作者 微信分享
DDD888 发表于 2016-10-27 09:35
The issue is the interviewer may not know about groovy and cannot make judgement about the skill o ...

Maybe, In my opinion, even thought my code is not perfect Groovy-style, if you are a qualified Java programmer, not only do you need to know Java, but also other JVM derived languages, like Groovy,Scala,Clojure or Kotlin.  Anyway, pretty bad experience Eroad interview for me.

使用道具 举报

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

升级  50.8%

UID
10039329
热情
20264
人气
22094
主题
304
帖子
17354
精华
1
积分
30159
阅读权限
30
注册时间
2016-10-21

新时政 元老勋章 10周年纪念 2019-2020年度金ID 2018年度金ID

30#分享本帖地址
发表于 2016-10-27 14:05:25 |只看该作者 微信分享
flying3615 发表于 2016-10-27 13:15
Maybe, In my opinion, even thought my code is not perfect Groovy-style, if you are a qualified Jav ...

I am not sure how many times eroad inteviewed you. If only once, maybe not too much time wasted.

I once took four interviews with a company and in the end, the hr lady told me that I do not fit the team. That was around 4 x 4 hours =16hours wasted.

The reason I took the interview was that job was for an intermediate c# developer and have a chance to program sap api which I was fancy about.

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版| 联系论坛客服| 广告服务| 招贤纳士| 新西兰天维网

GMT+12, 2025-7-30 08:56 , Processed in 0.033752 second(s), 14 queries .

Powered by Discuz! X2 Licensed

Copyright 2001- Sky Media Limited, All Rights Reserved.

回顶部