added highlight support and synced prototype implementation