updates
many changes — it works