draft code based on pdf