almost ready.. just callbacks remains