re-structure, create a new package com.windrift.designpattern