add facade design pattern.