名 稱
標 題
內 文
附加圖檔[] []
  • 可附加圖檔類型:GIF, JPG, JPEG, PNG, WEBM,瀏覽器才能正常附加圖檔
  • 附加圖檔最大上傳資料量為 3072 KB。
  • 當檔案超過寬 250 像素、高 250 像素時會自動縮小尺寸顯示
  • 目前附加圖檔使用量大小: 262209 KB / 500000 KB
  • 回覆時程式碼縮排會被trim消掉,請善用[code][/code]標色或貼到ideone等網站
  • LaTeX記法可以用「$$」或「\( \)」包起來,例如「$\sum_{k=1}^{k=n} k^2 = \frac{n(n+1)(n+2)}{6}$」
  • 投稿時請點擊畫像認證後,再按下 [送出] 按鈕提交。
  • 鬧板、攻擊性發言、煽動性發言請無視(回應者也無視),並使用del或在貓管理部向管理員回報。
  • 新介面尚處於測試階段,如果有任何問題可以向管理員或於程設交流版反映。

題名一覽
14247: 無題 (3)14208: 無題 (5)
14236: 無題 (7)14206: 無題 (2)
14235: 無題 (2)14202: 無題 (3)
14230: 無題 (5)14193: 無題 (1)
14229: 無題 (0)14192: 無題 (5)
14223: javascript 元件陣列 (5)14182: 無題 (3)
14219: DiscordBOT (3)14169: 無題 (1)
14218: 無題 (0)14165: 無題 (11)
14217: 無題 (0)14163: 不知道能不能問這個 (2)
14214: websocket疑問 (1)14161: 無題 (1)
檔名:1581768563905.jpg-(176 KB, 623x637)
176 KB
新手問題 C# 剛剛課本看到的語法無名20/02/15(六)20:09:23 ID:fuiA4TGcNo.14045del[回應]
這種語法很常見嗎?
大概解釋一下邏輯
void Method A (Type1 1, Type2 2, Type3 3...TypeN N)
{
Statement...
}

void Method B()
{
Object[] X = new Object[N];
X[0] = (Type1) Value1;
X[1] = (Type2) Value2;
X[2] = (Type3) Value3;
...
X[N-1] = (TypeN) ValueN;

A(X);
}
有回應 7 篇被省略。要閱讀所有回應請按下回應連結。
無名20/02/20(四)14:49:44 ID:y6FgCXNANo.14054del
>>14053
我看起來比較像sudo code 我覺得原po本意不是真的要放...TypeN 在parameter. 只是說可以放1到n個parameter.
無名20/02/20(四)15:44:53 ID:iw0gTZA.No.14055del
>>14054
我不是說...TypeN N, 我明白這個意思
// C#
void Method_A(string a, int b, bool c) { }
void Method_B()
{
Object[] X = new Object[3];
X[0] = (string)"Value1";
X[1] = (int)2;
X[2] = (bool)true;

Method_A(X); // error
}

沒有像js Method_A(...X) 這樣子
無名20/02/20(四)15:51:55 ID:iw0gTZA.No.14056del
>>14055
如果是這樣的話, 是可以沒錯, 但這就不是原來的問題吧
        void Method_A(string a, int b, bool c) { }
void Method_A(params object[] o)
{
// if o.length ==3, and o[1] is string....
Method_A((string)o[0], (int)o[1], (bool)o[2]);
}
void Method_B()
{
Object[] X = new Object[3];
X[0] = (string)"Value1";
X[1] = (int)2;
X[2] = (bool)true;

Method_A(X); // error
}
無名20/02/20(四)15:59:20 ID:iw0gTZA.No.14057del
>>14056
更正一下
void Method_A(object[] o) // 有沒有params在這個例子沒有關係
1404920/02/21(五)17:11:33 ID:HMtse7l.No.14058del
>>14053
看太快搞錯了,語言換來換去混亂了。
不過syntax是合法的沒錯。

無題無名20/02/20(四)08:20:02 ID:ZT5x6dVoNo.14051del[回應]
或者在介紹boxing 跟unboxing?
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/types/boxing-and-unboxing
要實用的話直接用dynamic type好一點吧?

請教一下VC++的移動檔案的問題程式菜鳥20/02/12(三)14:52:30 ID:SdDdZYyYNo.14039del[回應]
工司電腦,無圖


vc++我假設我新增一個 TESTCharacter.h 和 TESTCharacter.cpp
我新增到錯的資料夾如 items , 我想移到到 Character 資料夾
但我移動就無法進行編譯,說找不到TESTCharacter 請問一下該如何解決
無名20/02/12(三)15:32:22 ID:yz1IfjNYNo.14040del
移出跟新增的動作都要透過VC吧?
不然VC怎麼知道去哪裡找code

當初VC肯直接支援makefile語法的話就沒這麼多怪問題了
幸虧我們現在有CMake
微軟就是智障
什麼都要跟別人不一樣
原po20/02/12(三)16:44:33 ID:SdDdZYyYNo.14042del
用VC去移,這個我也試過了,但是一樣會找不到檔案
而我進行編譯都是直接按F5而以,不知會不會跟這個有關系

個人是認為跟#include ""有關系,但其實個人對於include使用上也有問題
有時抓的到,有時抓不到若是移動後重抓應該是可以
像最近我又抓不到不得vc重裝一次,但個人打算學程式起來
還是得弄董作麼處理這些問題
無名20/02/15(六)14:25:46 ID:bd7XulG6No.14044del
>>14042
那你去學CMake好了
學成之後就沒事了
VC++以後的改版都跟你無關
不用重學
CMake讓你很方便的可以將整個專案檔砍掉重build
這也能解決一些VC++自己的怪問題
況且一大堆C++專案都只給CMake設定檔(自己去github看,別以為我唬爛)
你遲早都要學的
>>而我進行編譯都是直接按F5
還有rebuild all可以試

還有啦
公司堅持不導入CMake的話
你還可以用git這種工具來監視觀察專案檔的變化
出了問題也能有機會回到之前還能正常運作的狀態
玩到後面你就學會直接去修改*.vcxproj跟*.sln的內容了
根本不會想碰VC的複雜介面了

檔名:1581269724076.jpg-(65 KB, 496x814)
65 KB
Unity C#新手問題無名20/02/10(一)01:35:24 ID:B/GZ9bVUNo.14030del[回應]
這個問題來自課本上的範例
GameObject 是Unity官方的Public Class
AtlasData 則是另外範例自己寫的Public Class

範例在另外的編輯器Class內的函式這樣寫
GameObject A = new GameObject(name);
這一步看得懂
AtlasData B = A.AddComponent<AtlasData>();
這一步的操作實在看不懂
A Class = B Class 的意思是B覆蓋過A? 還是B Class裡的程式碼新增在A後面?
做為新手 = 這個運算子通常兩邊都是相同類似的
例如int = int 或著其他數字型態的資料 編譯器會自動幫你換

但這裡A和B應該是兩個擁有完全不同子類的CLASS才對

另外A.AddComponent<AtlasData>() 會把AtlasData這個類做為Component加入A中吧?

如果這裡做的是把AB兩個Class合起來
那再做一步 AtlasData B = A 有甚麼意義嗎?
有回應 5 篇被省略。要閱讀所有回應請按下回應連結。
無名20/02/12(三)01:06:16 ID:qS5DQEAgNo.14036del
> 另外A.AddComponent<AtlasData>() 會把AtlasData這個類做為Component加入A中吧?
> 那再做一步 AtlasData B = A 有甚麼意義嗎?

你創造一個GameObject A,在A裡面創造一個AtlasData,
把B指向剛創造的AtlasData
A->{GameObject {AtlasData} }
^
B---------------/
無名20/02/12(三)07:09:08 ID:jHbir6kMNo.14037del
>>14036
我原PO
cNMSv55M也是我
我認為你講的跟我在cNMSv55M講的是同一個意思
但這不能解釋為什麼B能調用AtlasData Class以外的屬性

至於YNnnuRIo講了甚麼
B跟C都ADD AtlasData兩次之後指向的是同一個組件?還是不同?
而且Unity很少情況會在一個GameObject中使用兩個重複的組件吧,感覺沒有意義耶
重點是我的問題範例中,根本沒有Add兩個重複組件的問題在
雖然沒試過,但只有一個AtlasData的情況,宣告BC同時指向同一個AtlasData的語法應該是沒問題才對?只是多半沒意義罷了
畢竟不同的cs檔案中也有不同的DEF是指向同一個Object

就編譯器來看都是一起編譯執行的

泛型我的理解是不嚴謹但可以縮短程式碼的寫法
雖然一般情況寫GetComponent<AtlasData>()
但這個AtlasData指的是Name?還是Type?
所以cNMSv55M 講Add兩個Component 再Get的情況編譯器搞不清哪個是哪個不意外吧?

只是這跟我的問題無關吧?
無名20/02/12(三)12:50:06 ID:y38qLpM6No.14038del
>>14037
B是如何能調用AtlasData Class以外的屬性?
有example code嗎?

是AtlasData B 還是var B?
無名20/02/12(三)16:24:28 ID:iSLNw1yYNo.14041del
>>14037
你的問題跟unity一點關係也沒有
單純是你對語法不熟 看不懂這幾行在寫啥
A . AddComponent<AtlasData>() 

是對A 呼叫GameObject的 AddComponent 這個方法(函式)
這個函式是公開的所以你能在任何地方呼叫 而這個函式會回傳一個值

>>AtlasData B = A.AddComponent<AtlasData>();
>>這一步的操作實在看不懂
>>A Class = B Class 的意思是B覆蓋過A? 還是B Class裡的>>程式碼新增在A後面?

這就是上面講的對物件呼叫函式

至於為什麼上面要提到泛型
因為GameObject.AddComponent<AtlasData>()的AtlasData就是回傳值型別
假設我訂一個class叫BtlasData
呼叫AddComponent<BtlasData>() 的回傳型態就是BtlasData
無名20/02/13(四)00:28:47 ID:PBo4muPsNo.14043del
>>14038
沒事,我解決我的疑問了
一直以來我都誤以為GameObject是MonoBehaviour Class的子屬

但GameObject可能是MonoBehaviour從他的父輩或祖父輩中繼承來的

換句話說A和B並不是兩個擁有完全不同子類的CLASS
A就是B的祖先

這樣就能解釋了

檔名:1576374650227.png-(612 KB, 1920x1200)
612 KB
無題無名19/12/15(日)09:50:50 ID:sqLX1PtMNo.13915del[回應]
島民為什麼不用GNU/Linux 哈
有回應 6 篇被省略。要閱讀所有回應請按下回應連結。
無名20/01/12(日)07:49:04 ID:PkxGsx5UNo.13999del
>>13996
>Linux
GNU/Linux
>字體
微軟的patent已經過期了所以GNU/Linux可以用cleartype方式render
>MIDI
explain
無名20/01/21(二)21:30:47 ID:mH/sdDlQNo.14016del
>>13996
早在10年前的 ubuntu12.10字體喧染就很漂亮了
其默認的文泉驛就很漂亮,只差他是以大陸官方標準來撰寫,不符合台灣標準而已

桌面如果選擇xfce,windows使用者幾乎無痛接軌, gnome 的話稍微要適應,但也不用超過一小時吧,kde則可能更久一點

要說 linux 不方便的,那就是很少遊戲,畢竟大部分PC遊戲都是設計給windows的
無名20/01/26(日)09:18:42 ID:3ZFc1gmsNo.14018del
檔名:1580001522317.png-(531 KB, 545x744)
531 KB
>要說 linux 不方便的
安裝操作系統之前選擇兼容的硬體
電腦是選擇某些戴爾PC和Chrome平板電腦
印表機是選擇惠普
樹莓派第4代可以代替電腦,但仍很快變熱

>gnome 的話稍微要適應
Windows鼠標的拖放方法無法在GNOME或KDE中復制。
使用Shell腳本代替鼠標拖放。
使用腳本之後發現新世界。 放棄IDE,因為使用IDE是一個頭痛的負擔。 腳本比IDE可以完成工作更有效。
無名20/01/26(日)18:19:17 ID:l4Y4T6tUNo.14019del
>>14016
>>14018
島民為什麼不用
AwesomeWM/bspwm/cwm/dwm/fvwm/herbstluftwm/i3/wm-utils/2bwm
無名20/01/29(三)13:32:46 ID:iwJSJrOQNo.14027del
>>14018
現在有python當跨平台shell
其實Liunx在這方面沒有優勢了
(可悲的Windows還要熱心工程師幫忙補這些功能)
Liunx最強的優勢還是一樣
那就是這個OS是開源社群的作品
不會被企業的髒手左右
光這個優點就讓我優先安裝它了
更別提目前的病毒總是專攻Windows
相較之下Linux又穩又安全

檔名:1578624705776.jpg-(162 KB, 1024x1024)
162 KB
無題無名20/01/10(五)10:51:45 ID:z8VeqwQQNo.13988del[回應]
有哪個島民真的用LinkedIn找到工作的?
無名20/01/24(五)06:44:00 ID:eV/fpXAgNo.14017del
檔名:1579819440694.jpg-(11 KB, 240x240)
11 KB
>>13988
哈兔

檔名:1572872854178.jpg-(713 KB, 1512x2016)
713 KB
無題無名19/11/04(一)21:07:34 ID:.MaPt6GANo.13823del[回應]
想請問各位島民

文組新手入門如果想要學好JAVA程式語言 有什麼好的學習方式呢

目前的學習方式是 例題會試著重打一次 改變裡面的參數去看如何變化

那像物件導向跟架構這些是要用背的嗎

講義上面的例題勉強看懂了 但感覺又似懂非懂

運用相同概念變化一下的其他練習題就完全不知道從何下手
有回應 10 篇被省略。要閱讀所有回應請按下回應連結。
無名20/01/19(日)17:51:49 ID:9.jEPn..No.14008del
建議是訂一個主題給自己,然後去把這個程式寫出來。
這個主題最好是具有完整操作邏輯的。
只寫例題沒有用,因為例題都是設計好的狀況。他們或許可以幫助訓練
程式思考的邏輯,但是對於練習架構基本毫無幫助。
對於初學真正重要的理解跟架構,是在實作中自己慢慢累積出來的。
也只有在自己實做過之後才有辦法真正的去理解那些架構。
在那之前只是紙上談兵而已。

比起去補哪些科目,更重要的是讓那個需求產生出來。
不是為了未來去準備,而是為了現在的需要而去學習。
無名20/01/21(二)01:38:32 ID:mH/sdDlQNo.14012del
>>14001
你不考慮別人也考慮自己吧

不是有說三個月後你的程式碼就會變得跟陌生人一樣嗎
程式真的是過了一段時間你大概也忘記這到底為什麼要這樣寫了
乖乖注意可讀性和維護性是很重要的
無名20/01/21(二)11:17:20 ID:6Unfs8zoNo.14013del
>>14012
可怕的是綜合版有個多年程式經驗的工程師 (?
還真的不寫註解的
雖然上次噴過他以後就沒再看到了
想想都覺得可怕
無名20/01/21(二)12:16:33 ID:dWqLhNawNo.14014del
註解其實要看,我之前遇過的是主管要求寫〝逐步驟〞的註解,
像是第一步做甚麼第二步做甚麼。這種差不多等於虛擬碼的註解。
整個就很智障。

都到原始碼裡面了當然直接看原始碼。註解又不會被執行到。
註解的意義是讓進來的人可以跳過大部分的人腦compile階段直接理解
這段程式碼在幹嘛。

像是一個排序,今天你除了in/out之外該寫的就是你用哪種排序演算法。
有沒有做甚麼特殊處理(像是某個特殊值強制排第一)之類的。
讓進來的工程師可以直接跳過分析你原始碼的階段進而節省整體的時間。
這個工程師可能是別人也可能是你自己。

>>14001

你需要的是自己功力練好換一份好一點的工作,現在這間公司直接電死。
無名20/01/21(二)12:53:34 ID:6Unfs8zoNo.14015del
>>14014
台灣碼農界完了
台灣外商界更慘
難道只能去當台勞了嗎

檔名:1579534743541.jpg-(35 KB, 940x650)
35 KB
無題無名20/01/20(一)23:39:03 ID:nKIxFwIgNo.14010del[回應]
這裡要怎麼貼程式碼阿? 這樣?? 哪裡有教學
console.log('Hello World')
無名20/01/21(二)01:37:22 ID:YaFrULHINo.14011del
>>回覆時程式碼縮排會被trim消掉,請善用
標色或貼到ideone等網站

檔名:1579426630788.jpg-(340 KB, 1920x1280)
340 KB
tomee安裝新webapp顯示404無名20/01/19(日)17:37:10 ID:9.jEPn..No.14007del[回應]
最近想嘗試把多個服務安裝在同一個tomee安裝上。(工作上的東西)
該服務的安裝軟體跑完之後tomee的webapps底下有出現安裝軟體產生出來的war。
webapps底下也有該服務的資料夾。第一個服務正常安裝,但
裝到第二個服務就怪怪的。用設定的網址去連的時候直接回傳404。
但第一個服務可以連到。想問一下有人遇到過這樣的狀況嗎?
重開N次都沒有改變。
版本是tomee plume 1.7。
無名20/01/20(一)17:50:19 ID:wZykkNCoNo.14009del
大概自己抓到了,沒設定 url/appName時要顯示甚麼東西的問題。

檔名:1578454924525.jpg-(227 KB, 1285x895)
227 KB
無題無名20/01/08(三)11:42:04 ID:FCZvwtecNo.13976del[回應]
好多工作都要求要會socket
好像當成標配了
why?
那不是套用asio就解決的東西嗎?
從原始API(如winsock)親手寫起也沒有什麼難度
怎麼要求這個?
是我太小看這東西了嗎?
有回應 11 篇被省略。要閱讀所有回應請按下回應連結。
無名20/01/10(五)19:43:11 ID:2wb.OLsINo.13991del
>>13989
可能面試官跟我一樣討厭Windows吧wwww
還有"man 2 socket"是啥?
無名20/01/10(五)20:28:03 ID:1AndQQoENo.13992del
檔名:1578659283507.png-(44 KB, 807x254)
44 KB
>>13990
你這什麼神奇東西 我可以對它按右鍵 然後跳出這個
無名20/01/10(五)20:38:10 ID:h0jpAwuoNo.13993del
>>13991
*NIX的man page啦
>跟我一樣討厭Windows吧
用GNU/Linux或*BSD卻不知道manpage?
MAC OSX也有manpage啊= =?
無名20/01/10(五)20:55:16 ID:z8VeqwQQNo.13994del
>>13993
不知道耶
我Linux不懂就google
連--help都很少去用
反正google+stackoverflow也找不到的東西
大概問誰都沒用吧
無名20/01/10(五)22:19:54 ID:JOmkVD0ENo.13995del
>>13992
MathJax CS版產生latex的函式庫

檔名:1578407488262.gif-(576 KB, 200x389)
576 KB
springboot問題無名20/01/07(二)22:31:28 ID:46vF3xg6No.13975del[回應]
最近開始學springboot 有些問題查資料或者問人之後還是搞不太懂
想請教一下島民
springboot都要先寫一個啟動類 如下:
@SpringBootApplication
@Configuration
@EntityScan(basePackages="XXXX")
@EnableJpaRepositories (basePakages="XXXX")
public class Application extends SpringBootServletInitializer{

public static void main(String[] args) {
SpringApplication.run(Application.class);
}

}

想問一下 查到的資料都說這個是springboot專案的入口 但是我搞不太清楚這入口到底是幹麻用的
是讓springboot那些方便的功能可以在專案裡面使用?
繼承SpringBootServletInitializer的目的是不是把專案部屬到springboot內嵌的tomcat運行?
@SpringBootApplication這個註解查到的資料是都說是複合註解 其中@Configuration這個的作用資料都
說是自動配置當前類中含有@Bean註解的實體
但是整個啟動類也就一行SpringApplication.run 那實際上@Configuration的作用是什麼?

另外是想問說Repository類
public interface IslandPeople extends CrudRepository<IslandPeople, String>{
List< IslandPeople> findHaTwoByParaquat(Poison paraquat)
}


然後在controller裡面只要
@AutoWired
IslandPeople islandPeople

就可以在controller裡面使用islandPeople.findHaTwoByParaquat
但islandPeople明明還是個介面 也沒有去定義實現類跟findHaTwoByParaquat這個method的內容
是怎麼直接拿來用的?
無名20/01/08(三)16:00:50 ID:dMI1s8j6No.13981del
>>入口
讓你在啟動以前設定一下spring以外的配置用的

>>但islandPeople明明還是個介面 也沒有去定義實現類
去查 "動態代理"

檔名:1578393201684.jpg-(585 KB, 960x1200)
585 KB
資料庫的問題無名20/01/07(二)18:33:21 ID:T85o8dLYNo.13974del[回應]
想釐清一下概念,覺得腦袋有些打結了,主要是看到database有embedded database 跟 database server兩種

前者跟應用程式共用同一個行程,是直接把資料庫塞在應用程式裡,透過embedded sql來操作資料庫

後者則是獨立一個行程,並用網路來做資料庫操作

前者佔用資源少、可攜帶性高、安全性強但難維護,操作麻煩(自己看了一下embedded sql好像不好寫)

後者佔用資源多、不具攜帶性、安全性較低但好維護,各大database廠商都有提供API來操作

請問島民我這樣的理解有錯誤嗎?
無名20/01/08(三)12:10:41 ID:FCZvwtecNo.13978del
>>13974
前者是lib,直接link它的dll來使用
後者獨立運作,要透過通訊管道跟它溝通

給沒時間的人:
前者瘦,後者肥

檔名:1578029319845.png-(32 KB, 516x635)
32 KB
無題無名20/01/03(五)13:28:39 ID:jCcCWfQQNo.13973del[回應]
AD DS, DHCP, DNS, WDS 全部裝在windows server 2012 R2, 開機測試的時候沒有進PXE,有島民教我一下嗎?

檔名:1577753864606.png-(1294 KB, 865x1645)
1294 KB
無題無名19/12/31(二)08:57:44 ID:eNWiSDUcNo.13970del[回應]
ㄟㄟ島民
手機和電腦都是連在同一臺router
電腦下載限制加密的BT和手機下載不限制的都可以達到4MiB/s
手機電腦用scp傳檔卻只有2MiB/s
為什麼會這樣
無名20/01/01(三)01:54:50 ID:KV0MtwHoNo.13971del
手機電腦間的傳送大概還要考慮上傳速度
無名20/01/01(三)06:53:52 ID:ljFwm0UsNo.13972del
>>13971
可以再說的詳細一點嗎
在內網傳送比連到外面慢?

檔名:1577688606025.jpg-(371 KB, 1672x1174)
371 KB
無題無名19/12/30(一)14:50:06 ID:rt3iFtQQNo.13965del[回應]
主要是想在C/C++環境下來討論
最近想整頓一下自己專案的log系統
想拿一些有名or有指標性的專案來借鑑
log4c
zlog
boost log
看完了還是不懂這東西到底算複雜還是簡單?
複雜的話,為什麼有很多人寧願自己刻一個?(我就是)
簡單的話,為什麼標準庫沒實作這個?直接一統江山,不用各寫各的

還有我其實挺討厭這6種分類
trace,debug,info,warning,error,fatal
但是他們好像已經出現很久了
久到像業界共識了一樣
android的log也有類似等級分類
我覺得訊息只需要分兩種
一種很囉唆噴不停,一種不會常出現

如果還有其他語言的log專案也可以介紹給我
我想看看有什麼特別的設計
無名19/12/30(一)19:30:24 ID:B2y285aoNo.13966del
>>為什麼有很多人寧願自己刻一個?(我就是)
這不就解釋了一切
無名19/12/30(一)19:54:58 ID:0jFOFRJ.No.13967del
檔名:1577706898353.jpg-(681 KB, 700x791)
681 KB
>>13966
但我不是什麼有頭有臉的人物啊
也沒寫出什麼大專案
雜魚自己DIY很常見,而且也沒人在乎
而像QT這樣等級的專案也自己玩一套自已的log系統就有探討空間了
無名19/12/30(一)20:38:43 ID:PGr/izbkNo.13968del
>>13965
>>trace,debug,info,warning,error,fatal
標準化之後才能夠系統整合
舉例來講
如果你的系統移植到windows上時
你可以將你的系統直接整合到事件檢視器
而開發時會用到的trace,debug不需要在正式環境出現
trace可能就只用在你的IDE上
debug則是在你的測試環境或Stage上才會使用
而info,warning,error,fatal
就是對應
事件檢視器的"資訊" "警告" "錯誤" "重大"
如果你移植到另一個平台
例如IOS
可能那邊也有類似的檢視器可以用(我個人不清楚)
那這樣你的程式用不著重新鑽寫邏輯
只要針對平台去寫上provider就可以了(甚至早有人提供)
這樣你懂了嗎


【刪除文章】[]
刪除用密碼:
[0] [1] [2] [3] [] [5] [6] [7] [8] [...][31]