diff --git a/docs/primitives/symmetric-encryption.rst b/docs/primitives/symmetric-encryption.rst
index 39a5a63..d056290 100644
--- a/docs/primitives/symmetric-encryption.rst
+++ b/docs/primitives/symmetric-encryption.rst
@@ -4,29 +4,28 @@
 Symmetric encryption is a way to encrypt (hide the plaintext value) material
 where the encrypter and decrypter both use the same key.
 
-Block ciphers
--------------
+.. class:: cryptography.primitives.block.BlockCipher(cipher, mode)
 
-Block ciphers work by encrypting content in chunks, often 64- or 128-bits. They
-combine an underlying algorithm (such as AES), with a mode (such as CBC, CTR,
-or GCM). A simple example of encrypting content with AES is:
+    Block ciphers work by encrypting content in chunks, often 64- or 128-bits.
+    Theycombine an underlying algorithm (such as AES), with a mode (such as CBC,
+    CTR, or GCM). A simple example of encrypting content with AES is:
 
-.. code-block:: pycon
+    .. code-block:: pycon
 
-    >>> from cryptography.primitives.block import BlockCipher, cipher, mode
-    >>> cipher = BlockCipher(cipher.AES(key), mode.CBC(iv))
-    >>> cipher.encrypt("my secret message") + cipher.finalize()
-    # The ciphertext
-    [...]
+        >>> from cryptography.primitives.block import BlockCipher, cipher, mode
+        >>> cipher = BlockCipher(cipher.AES(key), mode.CBC(iv))
+        >>> cipher.encrypt("my secret message") + cipher.finalize()
+        # The ciphertext
+        [...]
 
-Here ``key`` is the encryption key (which must be kept secret), and ``iv`` is
-the initialization vector (which must be random). Exactly what form these
-values should take is described for each of the ciphers and modes.
+    Here ``key`` is the encryption key (which must be kept secret), and ``iv``
+    is the initialization vector (which must be random). Exactly what form
+    these values should take is described for each of the ciphers and modes.
 
-``encrypt()`` should be called repeatedly with additional plaintext, and it
-will return the encrypted bytes, if there isn't enough data, it will buffer it
-internally. ``finalize()`` should be called at the end, and will return
-whatever data is left.
+    ``encrypt()`` should be called repeatedly with additional plaintext, and it
+    will return the encrypted bytes, if there isn't enough data, it will buffer
+    it internally. ``finalize()`` should be called at the end, and will return
+    whatever data is left.
 
 Ciphers
 ~~~~~~~
