For localization, we use an architecture similar to pointer networks [1]}. Given a program \(\mathcal {T} = t_0, t_1, \dots , t_n\)  and let \(t_l\)  be a potential bug location, we then compute the initial token embedding \(e_l\)  and the contextual vector representation \(\mathbf {r}_l\)  coming from the encoding model. Based on these representations, we compute a buggyness score for each potential bug location with a simple MLP:
\(s_l = \mathbf {W}_2 \sigma (\mathbf {W}_1(\mathbf {r}_l || e_l || \mathbf {r}_l - e_l))\) 
