     
     /// Accesses the (ColumnName, DatabaseValue) pair at given index.
     public subscript(position: RowIndex) -> (String, DatabaseValue) {
-        let index = _checkedIndex(position.index)
+        let index = position.index
+        _checkIndex(index)
         return (
             impl.columnName(atUncheckedIndex: index),
             impl.databaseValue(atUncheckedIndex: index))

        atIndex index: Int)
    throws -> Value
    {
        try Value.fastDecode(fromRow: self, atUncheckedIndex: _checkedIndex(index))
    }
    
    /// Returns the value at given column, converted to the requested type.

        atIndex index: Int)
    throws -> Value
    {
        _checkIndex(index)
        return try Value.decode(fromRow: self, atUncheckedIndex: index)
    }
    
    /// Returns the value at given column, converted to the requested type.
