Add implementation doc