<style>
    div { line-height:10px; font-size:20px }
</style>
<div>
    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.
</div>
