updata python
update design pattern