Added custom visitor and parser