good rich kind of works there might be some bugs still