initial work for handling special codes