initial implementation of bidi. not testes yet!