major changes
fix bug