work in progress on generic parser