better parser for control chain messages