<!-- webkit-test-runner [ InlineFormattingContextIntegrationEnabled=false ] -->
<script>
if (window.testRunner)
    testRunner.setPrinting();
</script>

ARGUMENTUM

L. Sergius Catilina, homo patricii generis, magna vi et animi et
corporis, sed ingenio malo pravoque, praetorius, qui iam a. u. c. 689
caedem consulum facere eaque facta rerum potiri constituerat, casu autem
rem perficere prohibitus erat, ascitis ad consilium rei publicae
opprimendae hominibus omnis generis perditissiis atque audacissimis, quos
inopia, cupiditas, scelera stimulabant, consulatum in annum 691 p. u. c.
petivit, sed cum, quae in animo habebat, perniciosa rei publicae consilia
parum occultata essent, studiis bonorum omnium M. Tullius Cicero una cum
C. Antonio consul factus est.  Qua re commotus L. Catilina M. Cicerone
C. Antonio consulibus cupidius etiam sua consilia recepit, quibus maxime
Ciceronis consulis diligentia restitit ad quem Catilinae eiusque sociorum
consilia a Fulvia, muliere nobili, quae rem habebat cum Q. Curio, qui
particeps fuit conspirationis illius, deferebantur.  Cum autem ista mala
consilia contra salutem rei publicae a coniuratis inita apertius iam
agitarentur, senatus consultum factum est, darent operam consules, ne quid
res publica detrimenti caperet, effectumque est, ut Catilina spe
consulatus, quem in proximum annum petebat, excideret, designarenturque
D. Silanus et L. Murena.  Quae cum ita essent, L. Catilina, qui iam ante
per Italiam ad homines seditiosos, maxime veteres L. Sullae milites,
concitandos nuntios miserat, ad C. Manlium, qui Faesulas, in urbem
Etruriae munitam, manum armatorum coegerat, proficisci constituit et
bellum patriae inferre convocatisque nocte, quae inter VIII et VII Id.
Novembres erat, sociis in domum M. Porci Laecae consilium, quod ceperat,
aperuit.  Qua in congregatione nocturna duo equites Romani Ciceronem
consulem illa ipsa nocte ante lucem, cum sicut salutaturi eius domum
intrassent, interficiendum receperunt.  M. Cicero vitatis insidiis proximo
die, qui fuit a. d.  VI Id.  Novembres, dispositis praesidiis senatum in
templum Iovis Statoris convocavit, quo cum Catilina quasi sui purgandi
causa venisset, Cicero eam, quae infra legitur, orationem in Catilinam
vehementissime invehens habuit.



Quo usque tandem abutere, Catilina, patientia nostra?  quam diu etiam
furor iste tuus nos eludet?  quem ad finem sese effrenata iactabit
audacia?  Nihilne te nocturnum praesidium Palati, nihil urbis vigiliae,
nihil timor populi, nihil concursus bonorum omnium, nihil hic munitissimus
habendi senatus locus, nihil horum ora voltusque moverunt?  Patere tua
consilia non sentis, constrictam iam horum omnium scientia teneri
coniurationem tuam non vides?  Quid proxima, quid superiore nocte egeris,
ubi fueris, quos convocaveris, quid consilii ceperis, quem nostrum
ignorare arbitraris?  O tempora, o mores! Senatus haec intellegit.  consul
videt; hic tamen vivit.  Vivit?  immo vero etiam in senatum venit, fit
publici consilii particeps, notat et designat oculis ad caedem unum
quemque nostrum.  Nos autem fortes viri satis facere rei publicae videmur,
si istius furorem ac tela vitemus.  Ad mortem te, Catilina, duci iussu
consulis iam pridem oportebat, in te conferri pestem, quam tu in nos
[omnes iam diu] machinaris.  An vero vir amplissumus, P. Scipio, pontifex
maximus, Ti.  Gracchum mediocriter labefactantem statum rei publicae
privatus interfecit; Catilinam orbem terrae caede atque incendiis vastare
cupientem nos consules perferemus?  Nam illa nimis antiqua praetereo, quod
C. Servilius Ahala Sp.  Maelium novis rebus studentem manu sua occidit.
Fuit, fuit ista quondam in hac re publica virtus, ut viri fortes
acrioribus suppliciis civem perniciosum quam acerbissimum hostem
coercerent.  Habemus senatus consultum in te, Catilina, vehemens et grave,
non deest rei publicae consilium neque auctoritas huius ordinis; nos, nos,
dico aperte, consules desumus.  Decrevit quondam senatus, ut L. Opimius
consul videret, ne quid res publica detrimenti caperet; nox nulla
intercessit; interfectus est propter quasdam seditionum suspiciones
C. Gracchus, clarissimo patre, avo, maioribus, occisus est cum liberis
M. Fulvius consularis.  Simili senatus consulto C. Mario et L.  Valerio
consulibus est permissa res publica; num unum diem postea L. Saturninum
tribunum pl.  et C.  Servilium praetorem mors ac rei publicae poena
remorata est?  At [vero] nos vicesimum iam diem patimur hebescere aciem
horum auctoritatis.  Habemus enim huiusce modi senatus consultum, verum
inclusum in tabulis tamquam in vagina reconditum, quo ex senatus consulto
confestim te interfectum esse, Catilina, convenit.  Vivis, et vivis non ad
deponendam, sed ad confirmandam audaciam.  Cupio, patres conscripti, me
esse clementem, cupio in tantis rei publicae periculis me non dissolutum
videri, sed iam me ipse inertiae nequitiaeque condemno.  Castra sunt in
Italia contra populum Romanum in Etruriae faucibus conlocata, crescit in
dies singulos hostium numerus; eorum autem castrorum imperatorem ducemque
hostium intra moenia atque adeo in senatu videmus intestinam aliquam
cotidie perniciem rei publicae molientem.  Si te iam, Catilina,
comprehendi, si interfici iussero, credo, erit verendum mihi, ne non
potius hoc omnes boni serius a me quam quisquam crudelius factum esse
dicat.  Verum ego hoc, quod iam pridem factum esse oportuit, certa de
causa nondum adducor ut faciam.  Tum denique interficiere, cum iam nemo
tam inprobus, tam perditus, tam tui similis inveniri poterit, qui id non
iure factum esse fateatur.  Quamdiu quisquam erit, qui te defendere
audeat, vives, et vives ita, ut [nunc] vivis.  multis meis et firmis
praesidiis obsessus, ne commovere te contra rem publicam possis.  Multorum
te etiam oculi et aures non sentientem, sicut adhuc fecerunt,
speculabuntur atque custodient.

Etenim quid est, Catilina, quod iam amplius expectes, si neque nox
tenebris obscurare coeptus nefarios nec privata domus parietibus continere
voces coniurationis tuae potest, si illustrantur, si erumpunt omnia?  Muta
iam istam mentem, mihi crede, obliviscere caedis atque incendiorum.
Teneris undique; luce sunt clariora nobis tua consilia omnia; quae iam
mecum licet recognoscas.  Meministine me ante diem XII Kalendas Novembris
dicere in senatu fore in armis certo die, qui dies futurus esset ante diem
VI Kal.  Novembris, C. Manlium, audaciae satellitem atque administrum
tuae?  Num me fefellit, Catilina, non modo res tanta, tam atrox tamque
incredibilis, verum, id quod multo magis est admirandum, dies?  Dixi ego
idem in senatu caedem te optumatium contulisse in ante diem V Kalendas
Novembris, tum cum multi principes civitatis Roma non tam sui conservandi
quam tuorum consiliorum reprimendorum causa profugerunt.  Num infitiari
potes te illo ipso die meis praesidiis, mea diligentia circumclusum
commovere te contra rem publicam non potuisse, cum tu discessu ceterorum
nostra tamen, qui remansissemus, caede te contentum esse dicebas?  Quid?
cum te Praeneste Kalendis ipsis Novembribus occupaturum nocturno impetu
esse confideres, sensistin illam coloniam meo iussu meis praesidiis,
custodiis, vigiliis esse munitam?  Nihil agis, nihil moliris, nihil
cogitas, quod non ego non modo audiam, sed etiam videam planeque sentiam.
Recognosce tandem mecum noctem illam superiorem; iam intelleges multo me
vigilare acrius ad salutem quam te ad perniciem rei publicae.  Dico te
priore nocte venisse inter falcarios (non agam obscure) in M. Laecae
domum; convenisse eodem complures eiusdem amentiae scelerisque socios.
Num negare audes?  quid taces?  Convincam, si negas.  Video enim esse hic
in senatu quosdam, qui tecum una fuerunt.  O di inmortales! ubinam gentium
sumus?  in qua urbe vivimus?  quam rem publicam habemus?  Hic, hic sunt in
nostro numero, patres conscripti, in hoc orbis terrae sanctissimo
gravissimoque consilio, qui de nostro omnium interitu, qui de huius urbis
atque adeo de orbis terrarum exitio cogitent! Hos ego video consul et de
re publica sententiam rogo et, quos ferro trucidari oportebat, eos nondum
voce volnero! Fuisti igitur apud Laecam illa nocte, Catilina, distribuisti
partes Italiae, statuisti, quo quemque proficisci placeret, delegisti,
quos Romae relinqueres, quos tecum educeres, discripsisti urbis partes ad
incendia, confirmasti te ipsum iam esse exiturum, dixisti paulum tibi esse
etiam nunc morae, quod ego viverem.  Reperti sunt duo equites Romani, qui
te ista cura liberarent et sese illa ipsa nocte paulo ante lucem me in meo
lectulo interfecturos [esse] pollicerentur.  Haec ego omnia vixdum etiam
coetu vestro dimisso comperi; domum meam maioribus praesidiis munivi atque
firmavi, exclusi eos, quos tu ad me salutatum mane miseras, cum illi ipsi
venissent, quos ego iam multis ac summis viris ad me id temporis venturos
esse praedixeram.
