rnn, bidirectional, arbitrary layer works