<!DOCTYPE html>
<html>
<head>
    <title>Line breaking performance test</title>
    <script src="../resources/runner.js"></script>
</head>
<body>
    <pre id="log"></pre>
    <div id="target" style="width: 300px; display:none">
        <div style="text-align: center">
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
        </div>
        <pre>
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
            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.
        </pre>
    </div>
    <script>
        var target = document.getElementById("target");
        var style = target.style;

        function test() {
            style.display = "block";
            style.width = "280px";
            target.offsetLeft;
            style.width = "300px";
            target.offsetLeft;
            style.width = "290px";
            target.offsetLeft;
            style.display = "none";
        }

        PerfTestRunner.measureRunsPerSecond({ run: test });
    </script>
</body>
</html>
