some broken parts
removed prints