just sample codes, nothing fancy very trivial