\documentclass[a4paper,12pt,twocolumn]{article}
\usepackage{authblk}
\usepackage{siunitx}
\sisetup{group-digits=false}
\title{\SI{100}{GbE} Passive Optical Access Networks\\Technical Milestone Report}
\author{Adrian I.~Lam\vspace{-1em}\\Supervised by Dr.~Seb Savory}
\date{16 January 2019}

% Generic formatting packages
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{microtype}
\usepackage[margin=2.5cm]{geometry}
\usepackage{hyperref}
\hypersetup{unicode=true,
            pdftitle={Technical Milestone Report},
            pdfauthor={ail30},
            pdfborder={0 0 0},
            breaklinks=true}
\usepackage{parskip}
\usepackage[title]{appendix}

\usepackage[compact,small]{titlesec}
%\titlespacing{\section}{0pt}{0pt}{0pt}
%\titlespacing{\subsection}{0pt}{0pt}{0pt}
\usepackage{titling}
\setlength{\droptitle}{-8ex}

\setlength{\columnsep}{0.5cm}

% Math typesetting packages
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{physics}
\newcommand*{\imj}{\mathrm{j}}

% Convenient referencing packages
\usepackage{cleveref}
\crefname{appsec}{Appendix}{Appendices}

% Graphics-related packages
\usepackage[justification=centering,margin=0.5cm,font=small]{caption}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{rotating}

\usepackage{blox}
\usepackage{makecell}

% code listings
\usepackage{upquote}
\usepackage{courier}
\usepackage{listings}
\makeatletter
\lstset{
  basicstyle=\ttfamily\lst@ifdisplaystyle\footnotesize\fi,
  keywordstyle=\bfseries,
  showstringspaces=false,
  numbers=left
}
\makeatother

% URL formatting, from <http://tex.stackexchange.com/a/194418>
\DeclareUrlCommand{\angleurl}{\def\UrlLeft{<}\def\UrlRight{>}\urlstyle{tt}}
\makeatletter
\DeclareRobustCommand*{\url}{\hyper@normalise\angleurl@}
\newcommand*{\angleurl@}[1]{\hyper@linkurl{\angleurl{#1}}{#1}}
\makeatother

\newcommand*{\MATLAB}{MATLAB\textsuperscript{\textnormal{\textregistered{}}}}

\renewcommand\floatpagefraction{.9}
\renewcommand\dblfloatpagefraction{.9} % for two column documents
\renewcommand\topfraction{.9}
\renewcommand\dbltopfraction{.9} % for two column documents
\renewcommand\bottomfraction{.9}
\renewcommand\textfraction{.1}
\setcounter{totalnumber}{50}
\setcounter{topnumber}{50}
\setcounter{bottomnumber}{50}


\begin{document}
\maketitle

\begin{abstract}
  This project aims at evaluating methods of achieving a \SI{100}{Gb/s}
  Ethernet passive optical access network. An optical link based on
  coherent receivers will be considered, and a computer model
  will be built using \MATLAB{} to simulate various physical effects
  in the optical fibre. Digital signal processing techniques will be
  employed to correct for these effects and demodulate the transmitted
  symbols. Currently, all relevant linear effects have been successfully
  simulated and compensated for, while non-linear effects have not been
  completed yet. After the model is complete, different designs of the
  network, such as using different modulation schemes or multiplexing
  methods, can be simulated and their performance compared, and the
  feasibility to use them in an access network will be discussed.
  The results may also be verified through off-line processing of
  real measured data.
\end{abstract}

\section{Introduction and Motivation}
A passive optical network (PON) is a point-to-multipoint system
where data for all users of the network, modulated onto an
optical signal, leaves the optical line terminal at the service
provider, and is carried along a fibre feeder, then split
by an unpowered beam splitter, without any routing or selection,
to separate distribution fibres reaching the optical network units
of the users~\cite[\S6.1]{PONintro}. This design allows high-speed
communication for a large number of consumers, with relatively low cost
for each user~\cite{NGPON2-1}, and is currently typically employed
in a fibre-to-the-home setting~\cite{ponroadmap}.

Fibre-to-the-home applications are already well-served by the
currently mature implementation of \SI{1}{Gb/s} PONs, which may
make higher speed PON seem unnecessary. However, there are many more
future applications that could potentially benefit from a
\SI{100}{Gb/s} PON. By designing future PON specifications to be
compatible with existing fibre installations, less installation
costs will be incurred, allowing the mixing of
more applications onto the same network, thus increasing
revenues for service providers. In addition, as more and more
people rely on mobile networks for their daily communication
and entertainment needs, mobile operators are looking to increase
the density in cell sites, making PONs a good candidate to deliver
the cell data backhaul. As the 5G mobile standard develops, PONs
may even be useful in the fronthaul, where
radio signals were sampled and relayed,
through a PON, to a centralized
location for digital signal processing (DSP), seen as a way to
reduce costs~\cite{ponroadmap}.

The use of coherent receivers in a high-speed PON is considered.
In contrast to direct detection receivers, both the real and imaginary
parts of each polarization of the received electrical field can be
detected separately
in a coherent receiver. This makes complex modulation schemes such
as phase-shift keying (PSK) or quadrature amplitude modulation
(QAM) possible, and combined with polarization-division multiplexing (PDM),
makes very high data rates possible~\cite[\S5.6]{foc},~\cite{savorydigital}.

In this project, a model to simulate the various physical effects in
an optical channel is to be built. DSP will
then be used to attempt to correct for these effects to recover the
original signal. Using this model, different options for achieving a
\SI{100}{Gb/s} PON will be compared. The response of a real channel
will then be measured and, using the DSP techniques investigated,
processed offline to verify the model and the correction methods.
Feasibility of employing these techniques in a commercial PON setting
will also be discussed.

The current progress in developing the simulation model is detailed
in \Cref{sec:simmodel}, with future plans listed in
\Cref{sec:future}.

\section{The Simulation Model} \label{sec:simmodel}

\begin{figure*}[tb]
  \centering
  \begin{tikzpicture}
    \small
    \bXInput[$x_n$]{input}
    \bXBlocL[3]{p}{\makecell[c]{Pulse shaping\\$p(t)$}}{input}

    \bXBloc[3]{sim1}{Fibre-optic link}{p}
    \bXLink[$x(t)$]{p}{sim1}

    \bXSumb*[6]{AWGN}{sim1}
    \bXLink{sim1}{AWGN}
    \path (AWGN) ++(0,-1) node (noise) {$n(t)$};
    \bXLink{noise}{AWGN}

    \bXOutput[3]{y}{AWGN}
    \bXLink[$y(t)$]{AWGN}{y}
  \end{tikzpicture}

  \begin{tikzpicture}
    \small
    \bXInput{yt}
    \bXBloc[3]{q}{\makecell[c]{Matched filter\\$q(t)=p(-t)$}}{yt}
    \bXLink[$y(t)$]{yt}{q}
    \bXBloc[3]{sampler}{\makecell[c]{Sample\\$T_s=1/R_\text{sym}$}}{q}
    \bXLink[$r(t)$]{q}{sampler}
    \bXBloc[3]{sim2}{\makecell[c]{Channel\\equalization}}{sampler}
    \bXLink[$r_n$]{sampler}{sim2}
    \bXBlocL[3]{decision}{Decision}{sim2}
    \bXOutput[2.5]{xhatn}{decision}
    \bXLink{decision}{xhatn}
    \path (xhatn) ++(0.3,0) node {$\hat{x}_n$};
  \end{tikzpicture}
  \caption{Block diagram of the
    simulation model.}
  \label{fig:model}
\end{figure*}

\Cref{fig:model} shows the current basic model,
involving a transmitter with a root-raised
cosine pulse shaping filter, processed to simulate the various
physical effects, then
transmitted through an additive white
Gaussian noise (AWGN) channel to a receiver with a matched filter.
The received signal is then sampled and DSP is used to correct for
the physical effects in the electrical domain. The demodulated signal
is then compared to the original pseudorandom data, to obtain a
measurement of the bit-error rate (BER) using a Monte-Carlo approach.
Currently, the main modulation scheme considered is quadrature
phase-shift keying (QPSK), with Gray coding.

The effects considered are enumerated below. The results of the
methods used to correct for the effects are compared to the ideal
AWGN channel.

\subsection{Chromatic Dispersion} \label{sec:CD}
Chromatic dispersion (CD) is the effect of the group speed of light varying
with the wavelength of the optical signal~\cite[\S2.7.3]{foc}. It can be
modelled as a linear system, with transfer function in the Fourier
domain
\[
G(z, \omega) = \exp\left( -\imj \frac{D\lambda^2 z}{4\pi c} \omega^2\right)
\] or with impulse response in the time domain
\begin{equation}
g(z, t) = \sqrt{\frac{c}{\imj D \lambda^2 z}}
\exp\left( \imj \frac{\pi c}{D\lambda^2 z} t^2\right)
\label{eq:CDimpresp}
\end{equation}
with $z$ being the transmitted distance, $c$ the speed of light
in vacuum, $\lambda$ the wavelength in vacuum, and $D$ the dispersion
parameter of the fibre~\cite{savorydigital}. For all simulations
below, $D=\SI{17}{ps/(nm.km)}$.

Using this model, constellation diagrams were obtained and
shown in \Cref{fig:CDconst}. It can be seen that over long
distances, CD would make demodulation very difficult, and as
such, it is necessary to compensate for this effect. Current
systems use dispersion compensating fibres, but DSP may be applied
instead to reduce cost~\cite{savorydigital}. It is noted that
by inverting the sign of $D$ in
\Cref{eq:CDimpresp}, the impulse response of the dispersion compensating
filter is obtained, and with truncation and discretization,
can be implemented as a simple tapped delay line~\cite{savorydigital}.

\begin{figure}[htb]
  \centering
  \begin{subfigure}[t]{0.22\textwidth}
    \includegraphics[width=\textwidth]{cd_qpsk_noiseless_Dz17_new.eps}
    \caption{$z=\SI{1}{km}$.}
  \end{subfigure}
  \begin{subfigure}[t]{0.22\textwidth}
    \includegraphics[width=\textwidth]{cd_qpsk_noiseless_Dz85_new.eps}
    \caption{$z=\SI{5}{km}$.}
  \end{subfigure}
  \caption{QPSK constellation after chromatic dispersion,
    without AWGN.}
  \label{fig:CDconst}
\end{figure}

\Cref{fig:CDCompz200} shows the dispersion compensating filter in
action. The resulting BER very closely resembles that of the ideal
AWGN, thus verifying the implementation.

\begin{figure}[htb]
  \centering
  \includegraphics[width=.44\textwidth]{CDCompz200.eps}
  \caption{QPSK signal with simulated chromatic dispersion and
    CD compensation, over an AWGN channel, with
    $z=\SI{200}{km}$.}
  \label{fig:CDCompz200}
\end{figure}

\subsection{Adaptive Equalizer}
Adaptive equalizers can be used to correct for time-varying effects,
an example of which is polarization dependent effects.
\cite{savorydigital} discusses the implementation of adaptive
equalization to PDM signals.
This has yet to be implemented in the simulation model.

On the other hand, an implementation for a single polarization
state has been done. This would be useful for correcting for
fluctuations to the environment~\cite[\S11.6.1]{foc},
not simulated in the model, but would be present in real life.
In addition,
it was observed that the CD compensating filter discussed
in \Cref{sec:CD} does not perform very well over short
distances, as can be seen in \Cref{fig:CDCompz2}, due to
truncation of the non-causal infinite-length impulse response.
Adaptive equalization was attempted to correct for this effect
as well.

Two types of equalizing algorithms are typically considered, namely
the constant modulus algorithm (CMA) and the decision-directed
least mean square (DD-LMS) algorithm~\cite[\S11.6.1]{foc}.
CMA has been implemented due to its
simplicity. If time permits, DD-LMS can also be attempted.

The CMA relies on the fact that for PSK signals, the transmitted
symbols all have unit amplitude. As a result, it attempts to minimize
the distance between the signal and the unit circle.
\Cref{fig:adaptBefAft} illustrates the adaptive nature of the algorithm.
\Cref{fig:CDCompz2} demonstrates the success of the CMA, bringing
the performance curve back to the theoretical values.

\begin{figure}[htb]
  \centering
  \includegraphics[width=.44\textwidth]{CDCompz2.eps}
  \caption{QPSK signal with CD, CD compensation, and CMA adaptive
  equalizer, over an AWGN channel, with $z=\SI{2}{km}$.}
  \label{fig:CDCompz2}
\end{figure}

\begin{figure}[htb]
  \centering
  \begin{subfigure}[t]{.22\textwidth}
    \centering
    \includegraphics[width=\textwidth]{adaptBefore.eps}
    \caption{Symbols 1 to 500.}
  \end{subfigure}%
  \begin{subfigure}[t]{.22\textwidth}
    \centering
    \includegraphics[width=\textwidth]{adaptAfter.eps}
    \caption{Symbols 2001 to~2500.}
  \end{subfigure}
  \caption{Constellations showing the adaptive behaviour of
  the CMA.}
  \label{fig:adaptBefAft}
\end{figure}

\subsection{Phase Noise Correction}
Lasers used in the transmitter and the receiver local oscillator
have a linewidth $\Delta\nu$ over which random frequency deviations
occur, resulting in a phase noise in the signal. When discretized,
the phase noise $\phi[k]$ can be modelled as a one-dimensional
Gaussian random walk,
\begin{gather*}
\phi[k] = \phi[k-1] + \Delta\phi_k \\
\qq*{where} \Delta\phi_k
\mathrel{\overset{\makebox[0pt]{\mbox{\normalfont\tiny\sffamily i.i.d.}}}{\sim}}
\mathcal{N}(0, 2\pi \Delta\nu T_s)
\quad\text{for all }k,
\end{gather*}
with $T_s$ being the sampling period~\cite[\S11.3]{foc}.

The effect of phase noise can be most easily understood from a plot
of the constellation, as shown in \Cref{fig:phaseNoiseCircle}.
Demodulation is
impossible without any correction. Fortunately there are various
techniques to mitigate this issue, and two of them are discussed
below.

\subsubsection{Differential PSK}
In a normal PSK scheme, information is modulated as the
phase of each transmitted symbol. In contrast, in differential PSK (DPSK),
information is modulated as the \emph{difference} in phase between
two consecutive symbols~\cite[\S7.3.2]{ccsm}.
It can mitigate the effect of phase noise
if the linewidth is small (such that $\Delta\phi_k$ is sufficiently
smaller than, for example, $\pi/4$ for QPSK). Phase noise would then
have little influence to the phase difference between consecutive
symbols.

It was however noted that in DPSK, the demodulator is affected
``twice'' by phase noise. This increases the noise variance,
making bit errors more likely~\cite[\S7.3.2]{ccsm}.
This can be seen (among other results) in \Cref{fig:phasenoise_ult}.
This translates to
a SNR penalty compared to the normal PSK scheme. At a BER of
$10^{-3}$, the penalty is about \SI{2.5}{dB}.

\subsubsection{Block phase noise estimation}
The phase noise can also be estimated assuming the total phase noise
over a small number of symbols is small. The Viterbi-Viterbi algorithm
used is best illustrated by an example. Consider a QPSK scheme. At the
receiver, the received signal $r[k]$ is given by
\[
r[k] = \exp\left( \imj \phi[k] + \imj \frac{\pi}{4} +
\imj \frac{d[k]\pi}{2} \right) + n[k]
\]
where $\phi[k]$ is the unknown phase of the $k$th symbol,
$d[k] \in \{0, 1, 2, 3\}$ is the transmitted data, and
$n[k]$ is AWGN. Taking the signal to the 4th power eliminates
$d[k]$ from the expression, resulting in
\begin{equation}
  r[k]^4 = \exp\left( \imj 4\phi[k] + \imj \pi\right) + n'[k]
  \label{eq:rk4}
\end{equation}
where $n'[k]$ are the terms involving $n[k]$. It can be shown
that $n'[k]$ has zero mean, thus if $\phi[k]$ does not vary
much over a small range of $k$, then its value can be estimated
by averaging over that range (thus eliminating $n'[k]$)~\cite[\S11.5]{foc}.
\Cref{fig:viterbiphest} shows the algorithm
estimating the phase of a noisy signal.

With a phase estimation method available, the effect of phase noise
can be undone simply by adding a reversed phase shift.

\begin{figure}[htb]
  \centering
  \begin{subfigure}[t]{.22\textwidth}
    \centering
    \includegraphics[width=\textwidth]{phaseNoiseCircle.eps}
    \caption{Phase noise randomly rotating the constellation.}
    \label{fig:phaseNoiseCircle}
  \end{subfigure}%
  \begin{subfigure}[t]{.22\textwidth}
    \centering
    \includegraphics[width=\textwidth]{phaseEst.eps}
    \caption{Example of the Viterbi-Viterbi algorithm
    estimating phase noise.}
    \label{fig:viterbiphest}
  \end{subfigure}
  \caption{Phase noise, and how it affects the received symbols.}
\end{figure}

However, at larger linewidths, phase estimation may make mistakes.
This is due to the ambiguity in \Cref{eq:rk4}, where in QPSK an
additional phase increase of $\pi/2$ gives the same solution,
and phase noise makes unambiguous phase unwrapping impossible.
This is known as a \emph{cycle slip}~\cite{taylorphest}, and
is illustrated in \Cref{fig:cycleslip}.

The result of a particular run of the simulation is shown in
\Cref{fig:phasenoise_ult}.
It can be seen that when cycle slips do not occur, the resulting
BER is much closer to the theoretical AWGN channel compared to
DPSK. However, if a cycle slip occurs, all the subsequent symbols
will be demodulated incorrectly~\cite{taylorphest},
giving very poor performance.

To eliminate the effect of cycle slips, principles from DPSK
can be incorporated into the phase estimation method, but instead
of differentially modulating the \emph{symbols}, the source
\emph{bit stream} is differentially \emph{encoded}. This is known
as \emph{differentially encoded} PSK (DEPSK). At the receiver, the
symbols are corrected after phase estimation (as above), and then
demodulated like conventional PSK, before differentially decoding
the bits. While this method transforms a single bit error into
a pair of bit errors~\cite{taylorphest}, it has a smaller SNR
penalty than DPSK~\cite[Ch.~13]{matlabcomm}, since the
noise variance
is not increased like it is in DPSK. \Cref{fig:phasenoise_ult} also
shows the result of DEPSK, which is immune to cycle slips, with
a smaller SNR penalty than DPSK. Many forward error correction
codes can effectively correct for short bursts of bit errors,
thus further reducing the penalty~\cite{taylorphest}, however
this will not be investigated in this project.

\begin{figure}[htb]
  \centering
  %\begin{subfigure}[t]{.22\textwidth}
    %\centering
    \includegraphics[width=.3\textwidth]{cycleslip.eps}
    \caption{A cycle slip.}
    \label{fig:cycleslip}
  %\end{subfigure}%
  %\begin{subfigure}[t]{.22\textwidth}
  %  \centering
  %  \includegraphics[width=\textwidth]{adaptAfter.eps}
  %  \caption{Symbols 2001 to~2500.}
  %\end{subfigure}
  %\caption{Constellations showing the adaptive behaviour of
  %the CMA.}
\end{figure}

\begin{figure}[htb]
  \centering
  \includegraphics[width=.44\textwidth]{phasenoise_ult.eps}
  \caption{Performance of various methods under a phase noise
  of \SI{10}{MHz}, on a particular run of the simulation.}
  \label{fig:phasenoise_ult}
\end{figure}


\subsection{Non-linearity: Kerr Effect}
Kerr effect is one of the non-linear effects investigated in this
project. Kerr effect describes the change in refractive index of
a material as the optical power of the incident beam changes.
The result is a phase shift proportional to the optical power
(i.e.~the square of the electric field, hence
non-linear)~\cite[\S10.2]{foc},~\cite[\S6.2.2]{nfo}.
To numerically simulate this effect together with other linear effects,
the \emph{split-step Fourier method} is used. In brief, the fibre
length is divided into many small bits. The signal is first transformed
to the Fourier domain, and chromatic dispersion is applied
(as in \Cref{sec:CD}). The signal is then transformed back to the time
domain and its power is calculated. From this, the corresponding
phase shift due to Kerr effect can be applied. This process repeats
until the total simulated length reaches the desired transmission
distance~\cite[\S2.4.1, App.~B]{nfo}.

Currently, the general structure of the split-step Fourier method
has been coded, but there are small problems that require fixing,
and as such results are yet to be included in this report. However,
the general shape of the resulting curve matches existing
literature~\cite{savory100Gbps},
so there should be little difficulty in having it completed soon.

\section{Future Plan and Timeline} \label{sec:future}
After completing the simulation for Kerr effect, the most important
task would be to integrate all the effects into a single simulation
program, to prepare for the final model to evaluate different
transmission schemes.
Afterwards, it was planned to have a more realistic
model of the noise -- the AWGN channel would be replaced with
a combination of thermal noise (which can be modelled as
AWGN)~\cite[\S8.1.1]{aoe}
and shot noise. Finally, PDM and wavelength-division
multiplexing would
be implemented to have a ``complete'' model. To have sufficient
time for the remaining parts of the project, it was planned to have
this completed by week 3 of Lent term, i.e.\ about one week for
each of the three tasks.

A few different designs of the network will be evaluated and compared,
and the suitability to use in a PON will be discussed. Running the
simulation a few times with different parameters should not take
too much time, but discussing real-life feasibility may involve
more review of current literature, so an estimate of 2 weeks is
reserved for this.

The final three weeks of Lent will be spent obtaining experimental
data and verifying simulation results, to make further adjustments
to the model if necessary, and to prepare
for the final report and presentation.

It is expected that most of the Easter vacation would be spent preparing
for the examinations. Work on the final report and presentation would
resume after that, which should be enough time to meet the deadline
in week 5 of Easter term.

\begin{thebibliography}{10}
\bibitem{PONintro}
  C.C.K.~Chan,
  ``Protection architectures for passive optical networks,'' in
  \textit{Passive Optical Networks: Principles and Practice},
  C.F.~Lam, Ed.
  Burlington, MA: Academic Press, 2007, pp.~243-266.
\bibitem{NGPON2-1}
  J.S.~Wey \textit{et al.},
  ``Physical layer aspects of NG-PON2 standards -- Part 1:
  optical link design,''
  \textit{J.~Opt.\ Commun.\ Netw.}, vol.~8, no.~1, pp.~33-42, 2016.
  doi:10.1364/JOCN.8.000033
\bibitem{ponroadmap}
  D.~Nesset, ``PON Roadmap,''
  \textit{J.~Opt.\ Commun.\ Netw.}, vol.~9, no.~1, pp.~A71-A76, 2017.
  doi:10.1364/\allowbreak JOCN.9.000A71
\bibitem{foc}
  S.~Kumar and M.J.~Deen,
  \textit{Fiber Optic Communications: Fundamentals and Applications}.
  Chichester, UK: Wiley, 2014.
\bibitem{savorydigital}
  S.J.~Savory, ``Digital filters for coherent optical receivers,''
  \textit{Opt.\ Express}, vol.~16, no.~2, pp.~804-817, 2008.
  doi:10.1364/OE.16.000804
\bibitem{ccsm}
  J.G.~Proakis and M.~Salehi,
  \textit{Contemporary Communication Systems Using \MATLAB}.
  Pacific Grove, CA: Brooks/Cole, 2000.
\bibitem{taylorphest}
  M.G.~Taylor, ``Phase estimation methods for optical coherent
  detection using digital signal processing,''
  \textit{J.~Lightwave Technol.}, vol.~27, no.~7, pp.~901-914, 2009.
  doi:10.1109/JLT.2008.927778
\bibitem{matlabcomm}
  The MathWorks, Inc.,
  \textit{Communications Toolbox\textnormal{\texttrademark{}} User's Guide}
  (R2018b),
  2018. [Online]. Available:
  \url{https://www.mathworks.com/help/pdf_doc/comm/comm.pdf}.
  [Accessed: Jan.~9, 2019].
\bibitem{nfo}
  G.P.~Agrawal,
  \textit{Nonlinear Fiber Optics}, 5th ed.
  Oxford, UK: Academic Press, 2013.
\bibitem{savory100Gbps}
  Md.S.~Faruk, D.J.~Ives, and S.J.~Savory,
  ``Technology requirements for an Alamouti-coded \SI{100}{Gb/s}
  digital coherent receiver using $3\times3$ couplers for
  passive optical networks,''
  \textit{IEEE Photon.\ J.}, vol.~10, no.~1, 2018.
  doi:10.1109/JPHOT.2017.2788191
\bibitem{aoe}
  P.~Horowitz and W.~Hill,
  \textit{The Art of Electronics}, 3rd ed.
  New York: Cambridge University Press, 2015.
\end{thebibliography}

\end{document}
