almost finish code reading