Giter VIP home page Giter VIP logo

pemistahl / grex Goto Github PK

View Code? Open in Web Editor NEW
7.1K 47.0 170.0 1.58 MB

A command-line tool and Rust library with Python bindings for generating regular expressions from user-provided test cases

Home Page: https://pemistahl.github.io/grex-js/

License: Apache License 2.0

Rust 96.25% Python 3.75%
command-line-tool tool regex regexp regex-pattern regular-expression regular-expressions rust cli rust-cli

grex's Introduction

Hello, thank you for visiting my profile. 🖖🏻🤓

My name is Peter. There are actually more people than I thought who have the same first and family name, so I bother you with my middle name Michael as well. Were Type O Negative really so popular back then? I haven't got a clue...

I hold a Master's degree in computational linguistics from Saarland University in Saarbrücken, Germany. After my graduation in 2013, I decided against a research career because I like building things that help people now and not in the unforeseeable future.

Currently, I work for Riege, a leading provider of cloud-based software for the logistics industry. In my free time, I like working on open source projects in the fields of computational linguistics and string processing in general.

I have a special interest in modern programming languages and green computing. I believe that the software industry should make more significant contributions towards environmental protection. Great advances have been made to decrease energy consumption and emissions of hardware. However, those are often canceled out by poorly optimized software and resource-intensive runtime environments.

This is why I'm especially interested in the Rust programming language which allows writing performant and memory-safe applications without the need for a garbage collector or a virtual runtime environment, making use of modern syntax abstractions at the same time.

For those of you interested in how Rust and related technology can accomplish the goal of more eco-friendly software, I strongly recommend you to read the dissertation Energyware Engineering: Techniques and Tools for Green Software Development published in 2018 by Rui Pereira at the University of Minho in Portugal.


grex's People

Contributors

abendstolz avatar alarsyo avatar dependabot[bot] avatar herbygillot avatar ildar-shaimordanov avatar innobead avatar jqnatividad avatar pemistahl avatar spenserblack avatar tranzystorekk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

grex's Issues

Document how to use grex in shell filters

Added documentation suggestion:
It is quite handy to filter inputs to grex through tools such as head, tail, cat, and grep for a variety of use cases:

  1. to produce simpler regexps for sanity checking grex outputs.
  2. generating separate simpler regexp for subsets of your data (e.g. headers versus data).
  3. generate separate simpler regexp for errors or anomalies using grep's -v, --invert-match options
    On Linux reading from standard input can be achieved with the nonstandard option --file /dev/stdin

Nondeterministic results for --convert-repetitions

$ git describe
v0.3.1
$ ./target/debug/grex -r "AAAAAA"
^A{6}$
$ ./target/debug/grex -r "AAAAAA"
thread 'main' panicked at 'assertion failed: end <= len', <::core::macros::panic macros>:3:10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
$ ./target/debug/grex -r "AAAAAA"
thread 'main' panicked at 'assertion failed: end <= len', <::core::macros::panic macros>:3:10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
$ ./target/debug/grex -r "AAAAAA"
^A{6}$
$ ./target/debug/grex -r "AAAAAA"
^(AA){4}A$
$ ./target/debug/grex -r "AAAAAA"
^(AAA){2}$
backtrace for reference

⋊> ~/_/_/grex $ ./target/debug/grex -r "AAAAAA"
thread 'main' panicked at 'assertion failed: end <= len', <::core::macros::panic macros>:3:10
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/libunwind.rs:88
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:77
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:59
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1057
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1426
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:62
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:49
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:195
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:215
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:472
  11: rust_begin_unwind
             at src/libstd/panicking.rs:376
  12: core::panicking::panic_fmt
             at src/libcore/panicking.rs:84
  13: core::panicking::panic
             at src/libcore/panicking.rs:51
  14: alloc::vec::Vec<T>::drain
             at ./<::core::macros::panic macros>:2
  15: alloc::vec::Vec<T>::splice
             at /rustc/a9c1c04e986dbf610be8cbe6a8107f90b4db61ce/src/liballoc/vec.rs:2180
  16: grex::grapheme::GraphemeCluster::replace_graphemes_with_repetitions
             at src/grapheme.rs:204
  17: grex::grapheme::GraphemeCluster::convert_repetitions
             at src/grapheme.rs:53
  18: grex::regexp::RegExp::grapheme_clusters
             at src/regexp.rs:123
  19: grex::regexp::RegExp::from
             at src/regexp.rs:93
  20: grex::regexp::RegExpBuilder::build
             at src/regexp.rs:69
  21: grex::handle_input
             at src/main.rs:109
  22: grex::main
             at src/main.rs:77
  23: std::rt::lang_start::{{closure}}
             at /rustc/a9c1c04e986dbf610be8cbe6a8107f90b4db61ce/src/libstd/rt.rs:67
  24: std::rt::lang_start_internal::{{closure}}
             at src/libstd/rt.rs:52
  25: std::panicking::try::do_call
             at src/libstd/panicking.rs:296
  26: __rust_maybe_catch_panic
             at src/libpanic_unwind/lib.rs:79
  27: std::panicking::try
             at src/libstd/panicking.rs:272
  28: std::panic::catch_unwind
             at src/libstd/panic.rs:394
  29: std::rt::lang_start_internal
             at src/libstd/rt.rs:51
  30: std::rt::lang_start
             at /rustc/a9c1c04e986dbf610be8cbe6a8107f90b4db61ce/src/libstd/rt.rs:67
  31: main
  32: __libc_start_main
             at ../csu/libc-start.c:308
  33: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

It looks like the behavior is caused by unstable output of GraphemeCluster::sort_repetitions, but the input seems wrong as well ("AA" * 4 != "AAAAAA"[0..5]):

[src/grapheme.rs:154] &sorted_repetitions = [
    Some((["A", "A", "A"], 0..6, 2)),
    Some((["A", "A"], 0..5, 4)),
    Some((["A"], 0..6, 6)),
]

Feature Request: Allow to pipe text into grex

I'd like to be able to pipe text into grex.

For example

echo "hello world 543" | grex -g

Would it be possible to support this feature?

My use case would be that I could select the text in visual mode and pipe it through grex to get back a regex in place that I can further edit in the buffer.

I use vis as my main editor which has <, >, |, and ! operators in command mode.

Problems to consider when making anchors optional

It seems grex inherited this bug from regexgen: devongovett/regexgen#31

Repro:

$ cat input
AGBHD
EIBCD
EGBCD
FBJBF
AGBH
EIBC
EGBC
EBC
FBC
CD
F
C
ABCD
EBCD
FBCD

$ # note the last entry to be matched, i.e. "FBCD"

$ grex --file input
^(?:F(?:BJBF)?|(?:E(?:[GI])?BC|(?:FB)?C)D?|A(?:GBHD?|BCD))$

After removing ^ and $ (see #30), this generated pattern does not match "FBCD" despite it being one of the input strings:

'FBCD'.match(/(?:F(?:BJBF)?|(?:E(?:[GI])?BC|(?:FB)?C)D?|A(?:GBHD?|BCD))/g);
// → ['F', 'CD']

Here’s what I think the bug is: within the generated pattern, it should never happen that something on the left matches a prefix of something that's further on the right, because then the latter can never match.

See devongovett/regexgen#31 (comment) for some more details.

Installation problem

When installing grex on Debian Linux, I get 365 syntax errors.
They seem to be many repetitions of:
the trait data_traits::RawDataSubst<u128> is not implemented for <S as data_traits::DataOwned>::MaybeUninit
348 | impl_scalar_lhs_op!(Complex, Ordered, /, Div, div, "division");
| -------------------------------------------------------------------- in this macro invocation
|
::: /home/greg/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.0/src/data_traits.rs:411:1
|
411 | pub unsafe trait DataOwned: Data {
| -------------------------------- required by data_traits::DataOwned
I seem to get the same blast whether I run cargo from the command-line or in vscode.
I installed with:
$ git clone https://github.com/pemistahl/grex.git
$ cd grex
$ cargo build
and
$ cargo install grex
Since I don't see any other complaints perhaps my distribution is to blame:
$ uname -a
Linux debian-dell-desktop 5.10.0-4-amd64 #1 SMP Debian 5.10.19-1 (2021-03-02) x86_64 GNU/Linux
Creating an empty project with grex as the only dependency also fails.
Version 1.1 of grex seems to run fine.
I've only been programming rust for about a year, so I haven't gotten to writing macros yet, but I'll try to dig deeper.
-- Greg

Performance enhancements to enable large inputs

Hi,

I want to run this on a billion-sized low entropy case-insensitive UTF-8 input with a variable number of characters up to approximately 256 bytes each.

The data comply to an specification format but empirically it is very low entropy, only uses a very narrow subset of the specification and also a very narrow subset of UTF-8 characters.

Think of URI schemes like mailto [1]. The standard yields ample provisions for the format but empirically only a narrow subset is used.

However DFA is very slow even for very small samples. In addition even though I am not very proficient in Rust, I cannot see how to introduce MP or MPI constructs. DFA minimization also returns impractical expressions and I cannot see how to relax, penalize or restrict the size of the expression, coalesce (arbitrary) character ranges or groups, include prior knowledge of the superset expression defined by the specification format, or take advantage of data preorderings.

Finding an expression to match legal and legitimate data based on the empirical set is useful in determining diverging datum.

As an example, if some subexpression is know by the specification to be constrained to \w characters and in the data all lowercase alphabet characters except one were present, it would be fine to merge ranges to [a-z]. The point here would be that even though this subexpression can be all \w characters per specification, only [a-z] would be used in practice - and if some new datum had numbers, even though the specification allows it, it would be kind of weird given a billion samples did not.

The constraints imposed by the DFA solution as implemented are too strict in this regard and I cannot see where to go from here.

To summarize, I would greatly appreciate if you could point me towards scaling this library to work on large inputs.

I hope this tiny discussion interests you to some degree.

Vítor

[1] https://datatracker.ietf.org/doc/html/rfc6068#section-2

Grex hash for v1.2.0 release fails to verify in scoop

Simple as that:

λ scoop install grex
Installing 'grex' (1.2.0) [64bit]
grex-v1.2.0-x86_64-pc-windows-msvc.zip (792,6 KB) [==========================================================================================================================] 100%
Checking hash of grex-v1.2.0-x86_64-pc-windows-msvc.zip ... ERROR Hash check failed!
App:         main/grex
URL:         https://github.com/pemistahl/grex/releases/download/v1.2.0/grex-v1.2.0-x86_64-pc-windows-msvc.zip
First bytes: 50 4B 03 04 14 00 00 00
Expected:    d075efdbccb01c8b093b6c5120d064cc5ead534dec483c1a3d43cc4543d940ea
Actual:      da9c50a4e19cbf7b1c4a001a9252c1a097b8eebbb9ec0bbf3f88bc79030e7d73

Creating issue as this may be an overlooked thing.
Another option is that I'm facing MIM attack which would be worse case scenario ;)

Update to Unicode Standard 13.0

Not to forget later on for the release notes: The internally used Unicode Standard has been updated to the most current version 13.0 (commit 692db54) which is now also used by the regex crate 1.3.5 and higher.

Provide more installation options

I think this is a great tool by description. But I use ubuntu and I doesn't have homebrew (and I don't want to install it only for this tool). I cannot try this tool :( I think good idea an wget one liner install script, or a step by step description, or apt or anithing what a tipical ubuntu laptop can do without install more package manager.

installation problem

facing a weird issue while installing grex

$ sudo cargo install grex
    Updating crates.io index
error: process didn't exit successfully: `rustc -vV` (exit status: 127)
--- stderr
rustc: relocation error: /lib64/librustc_driver-eaa0856b54809337.so: symbol _ZNK4llvm18DiagnosticLocation15getAbsolutePathEv, version LLVM_11 not defined in file libLLVM-11.so with link time reference

Much slower than Regexp::Assemble

Thanks for grex! I love to see tools in this space.

Historically, I've used Regexp::Assemble for this kind of work, either via the full perl script, regexp-assemble, or via my own custom perl code that leveraged it.

The regexp-assemble script / module is available via CPAN, https://metacpan.org/pod/Regexp::Assemble, or via the package libregexp-assemble-perl on Ubuntu (not sure about other distributions).

I found it fairly straightforward to make a somewhat pathological case. I used pwgen to make 100 random strings, 80 characters long, and spat them out to a file pwgen 80 100 > testcase, then ran it through multitime with it doing 5 attempts and reporting back.

This represents a similar-ish way I've used regexp-assemble in the past, feeding in a stream of unique request IDs to produce a combined regex to then use searching large log files, though I've not needed to do that for a while.

Feel free to disregard this issue if this doesn't meet your goals for grex.

regexp-assemble:

            Mean        Std.Dev.    Min         Median      Max
real        0.072       0.014       0.051       0.070       0.096       
user        0.058       0.011       0.046       0.062       0.075       
sys         0.015       0.010       0.005       0.008       0.030       

grex:

            Mean        Std.Dev.    Min         Median      Max
real        16.872      0.171       16.699      16.853      17.190      
user        14.745      0.178       14.541      14.745      15.062      
sys         2.125       0.019       2.104       2.126       2.157       

Performance of the actual regexes spat out the other side are variable. Some of the test cases I made from real world data, regexp-assemble produced faster regexes, for others grex did.

Not sure if regexp-assemble might give you some interesting prior art to dig in to from a performance perspective.

warning: unused return value of `std::mem::replace` that must be used

When I compile grex with rust 1.44.1 on nix I get the following warning:

warning: unused return value of `std::mem::replace` that must be used
  --> src/regexp/regexp.rs:47:9
   |
47 | /         std::mem::replace(
48 | |             test_cases,
49 | |             test_cases.iter().map(|it| it.to_lowercase()).collect_vec(),
50 | |         );
   | |__________^
   |
   = note: `#[warn(unused_must_use)]` on by default
   = note: if you don't need the old value, you can just assign the new value directly

warning: 1 warning emitted

Add feature for specifying lower bound for repetition conversion

Optimizing repetitions with less than four characters doesn't make sense – we get larger regular expressions in the output

Bad optimization
input: zoom - four characters
output: zo{2}m - six characters

Bad optimization
input: zooom - five characters
output: zo{3}m - six characters

Not bad
input: zoooom - six characters
output: zo{4}m - six characters

Good optimization
input: zooooom - seven characters
output: zo{5}m - six characters

Character escaping gets confused when the input string contains a unicode-escape symbol itself.

Examples found by the code in #4:

  • "\u{70f}["
  • "\u{110cd}("

These are all passed through as-is but that's not valid.

Worth noting that "\u{110cd}" and similar get passed through as well, which is a syntactically valid regex but will not match the input string. Nope, that was just me misunderstanding how unicode escapes work.

  • \u{600}* also is passed through as is, which is syntactically valid but will not match itself.

Allow to specify characters that have to be converted to character class

First of all thank you for this great tool.
When using, I often need to convert text into more detailed character classes, not just non-digits or non-blank characters.
Is it possible to customize the range of characters to be converted into character classes, like [a-e\d], [①-⑨⒈-⒙] or specific languages such as Chinese and Japanese.
For example, if the source text is 我的名字是Tom, I hope to get the regular expression [\u{4e00}-\u{9fa5}]{5}\w{3} instead of \w{8}, by specifying character class [\u{4e00}-\u{9fa5}].
And I want to specify the maximum and minimum length of repeated substrings. Sometimes I get results like (\w{5}|\w{7,8}|\w{10,17}), but the regular expression I expected is (\w{3,20}). So I hope to be able to specify the minimum and maximum repetition times of the substring, or combine the repetition times into an interval instead of multiple branches.
I think these two points can be specified together, using multiple formats similar to \w{3,20} to specify characters that must be converted into character classes.

Any idea how to better do classes?

This sounded like just the tool I needed to get the job done, and it may be, but perhaps I'm just not using it correctly.

The use-case here is that I have a file with almost 2 million filenames in it. Over the years, there have been several different file naming conventions, and I'm trying to determine how many of each there are (the easy way, of course).

At any rate, given something like this: _001715_1406309_.pdf I get:

$ grex _001715_1406309_.pdf
^_001715_1406309_\.pdf$
$ grex -r _001715_1406309_.pdf
^_0{2}1715_1406309_\.pdf$

I was hoping I could generate regex patterns which are more inclusive, using classes, such as:

^_[0-9]*_[0-9]_\.pdf$

The -r option looked promising, but it just looks for characters which repeat exactly, not characters which would match some obvious character classes such as [:alpha:], [:digit:], etc.

Ideally it would be configurable so that I could get:

^_[0-9]*_[0-9]_\.pdf$

instead of something like these:

^_[0-9]*_[0-9]_\.[a-z]*$
^_[0-9]{6}_[0-9]{7}_\.[a-z]{3}$

Dunno, just riffing out loud. Interesting tool, though :)

Hope that makes sense. Any ideas or suggestions for using grex or anything else to get the job done? Thanks!

Add feature for disabling capturing groups

grex produces regular expressions with capturing groups by default. Some users might prefer to create regexes with non-capturing groups instead, so I will add a new library method and a new command-line flag for handling this use case.

usage error

I get this error after I run grex on mac os 11.6.1

error: The following required arguments were not provided:
    <INPUT>...
    --file <FILE>

Deprecate enum `Feature` in favor of additional methods in `RegExpBuilder`

In retrospect, the part of the library API which uses the enum Feature feels kind of clumsy. For the next release, I will deprecate this enum and all methods using it. I will introduce additional builder methods in the RegExpBuilder instead which makes the API more consistent and easier to use overall.

Treat diffs as separate groups

For example:


<iframe src="//player.bilibili.com/player.html?aid=303065226&bvid=BV1dP411n7bc&cid=833485551&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

<iframe src="//player.bilibili.com/player.html?aid=261233537&bvid=BV1xe411j7EQ&cid=851171461&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

<iframe src="//player.bilibili.com/player.html?aid=558528772&bvid=BV1Ee4y1r7wX&cid=848823074&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>


<iframe src="//player.bilibili.com/player.html?aid=455751094&bvid=BV1U5411s7RU&cid=383073940&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

diff:

aid=303065226&bvid=BV1dP411n7bc&cid=833485551
aid=261233537&bvid=BV1xe411j7EQ&cid=851171461
aid=558528772&bvid=BV1Ee4y1r7wX&cid=848823074
aid=455751094&bvid=BV1U5411s7RU&cid=383073940

regex:

aid=([0-9]+)&bvid=([0-9a-zA-Z]+)&cid=([0-9]+)

current output grex -f grex.txt -g:

<iframe src="//player\.bilibili\.com/player\.html\?aid=(((261233537&bvid=BV1xe411j7EQ&cid=85117146|303065226&bvid=BV1dP411n7bc&cid=83348555)1|455751094&bvid=BV1U5411s7RU&cid=383073940)|558528772&bvid=BV1Ee4y1r7wX&cid=848823074)&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>$
suliveevil@swy-M1 ~ % grex -f grex.txt -r
^<iframe src="/{2}player\.(?:bili){2}\.com/player\.html\?aid=(?:(?:45{2}751094&bvid=BV1U541{2}s7RU&cid=383073940|(?:26123{2}537&bvid=BV1xe41{2}j7EQ&cid=851{2}7146|(?:30){2}652{2}6&bvid=BV1dP41{2}n7bc&cid=83{2}485{3})1)|5{2}85287{2}2&bvid=BV1Ee4y1r7wX&cid=848{2}23074)&page=1" scrol{2}ing="no" border="0" frameborder="no" framespacing="0" al{2}owful{2}scre{2}n="true"> </iframe>

截屏2022-10-04 05 23 50

expected output:

<iframe src="//player\.bilibili\.com/player\.html\?aid=([0-9]+)&bvid=([0-9a-zA-Z]+)&cid=([0-9]+)&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

截屏2022-10-04 05 24 20

#48

Very slow for large number of lines

Hi! 👋🏻 I thought this may be useful. I came across grex looking at Rust tools and thought I'd try it on an old problem. I'm not planning to use it for anything currently, but I thought this report might be useful.

A file with 3622 lines takes frak (clojure) ~100ms to produce a regex.

Grex takes around 50 seconds on the same list:

grex --file names.txt  49.84s user 14.48s system 89% cpu 1:12.25 total

Here's names.txt:

https://gist.github.com/bbugh/4bf9df86931a94f89e61b3b3896d4e62

Remove dependency on linked-list crate

grex uses a dependency on the linked-list crate whose last version was released nearly five years ago. I once added this dependency because it provides a cursor implementation of a linked list that allows to modify the list during iteration. This comes in handy for the implementation of the DFA minimization algorithm.

However, as it turns out, it is not so difficult to rewrite the algorithm using a simple vector instead of the cursor-based linked list. So it makes sense to get rid of the no longer maintained dependency.

Property testing

There's three main properties that can be tested, and they should help catch bugs more easily:

  • For any set of input strings, the output string should be a syntactically valid regex (according to which syntax? For now I assumed the regex crate's). (PR: #4)
  • For any set of input strings, the output string when compiled as a regex (under which engine) should match every input string (PR: #7).
  • For any set of input strings, and any set of other strings disjoint from the first, the output string (when compiled as a regex) should not match any of the non-input strings (PR: #8).

These are reasonably easy to write as property tests, and together should cover the entire contract of this 1-function library.

Generate BRE and ERE regex

Currently grex appears to generate PCRE but is it possible to also have a flag which enables generation of POSIX BRE and ERE?

Overly complex regex with input containing several common parts

While building a regex for the various possible formats of Creative Commons' Public Domain Mark (to assist in spdx/license-list-XML#988), I noticed that grex produces a more complex regex than what the input requires.

Here's what I provided:

grex \
  "This work is free of known copyright restrictions." \
  "This work (WWW) is free of known copyright restrictions." \
  "This work (by AAA) is free of known copyright restrictions." \
  "This work, identified by CCC, is free of known copyright restrictions." \
  "This work (WWW, by AAA) is free of known copyright restrictions." \
  "This work (WWW), identified by CCC, is free of known copyright restrictions." \
  "This work (WWW, by AAA), identified by CCC, is free of known copyright restrictions." \
  "This work (by AAA), identified by CCC, is free of known copyright restrictions."

The result was (after manually making groups non-capturing):

^This work(?:(?: \((?:(?:WWW, b|b)y AAA|WWW)\),|,) identified by CCC, |(?: \((?:(?:WWW, b|b)y AAA|WWW)\) | ))is free of known copyright restrictions\.$

Visualized as a Debuggex diagram:

Screenshot 2020-03-10 at 14 20 39

A regex produced by hand to match the same input shows that this could be simplified:

^This work(?: \((?:WWW(?:, by AAA)?|by AAA)\))?(?:, identified by CCC,)? is free of known copyright restrictions\.$

Debuggex diagram:

Screenshot 2020-03-10 at 12 22 50

Input starting with a hyphen results in an error

As title says:

% grex "- Input starting with a hyphen" 
error: Found argument '- ' which wasn't expected, or isn't valid in this context

USAGE:
    grex [FLAGS] <INPUT>... --file <FILE>

For more information try --help

Problem with common substring detection

There is a bug in the common substring detection algorithm causing union operations to be applied where optionality expressions would be more appropriate. The resulting regex is not incorrect but more complex than necessary. Examples:

Test Cases Expected Actual
ac abc ^ab?c$ ^a(bc|c)$
abc abxyc ^ab(xy)?c$ ^ab(xyc|c)$

Make anchors `^` and `$` optional

One of the use cases for grex (IMHO) is to use its generated patterns as part of a larger pattern. In this case, the ^ and $ anchors in the output are not desired. Have you considered making this optional?

Inserting a character breaks repetition detection (sometimes)

I have been looking for a way to find repeated substrings. I think I can parse grex results to find repetitions, and given that my strings are rather short, I could then compare group contents to find non-contiguous repetitions.

I did some quick tests and I may have chanced upon a problem:

  • grex -dsr -c 'heeelooo world lalala lalala foo foo xalxalxal xalxalxal'

    gives ^he{3}lo{3}\sworld(?:\s(?:la){3}){2}(?:\sfo{2}){2}(?:\s(?:xal){3}){2}$

  • grex -dsr -c 'heeelooo world lalala lalala foo foo xalxalxal i xalxalxal'

    gives ^he{3}lo{3}\sworld\s(?:(?:la){3}\s){2}(?:fo{2}\s){2}(?:xal){3}\si\s(?:xal){3}$

  • grex -dsr -c 'heeelooo world lalala k lalala foo foo xalxalxal i xalxalxal'

    gives ^he{3}lo{3}\sworld\slalala\sk\slalala\s(?:fo{2}\s){2}(?:xal){3}\si\s(?:xal){3}$

In the last probe, neither of the two lalala was detected as repetitious when a k was inserted, although xalxalxal was treated as expected. Any thoughts?

Couldn't compile ndarray

Hey I'm on Debian bullseye and cargo install grex won't succeed :

[lots of errors]
error: aborting due to 204 previous errors

For more information about this error, try `rustc --explain E0277`.
error: could not compile `ndarray`.

ndarray version = 0.15.1
cargo version = 1.47

has someone experienced the same issue ?

Improve command-line tool by adding STDIN support

I noticed that I can't use STDIN.

→ cat groups  | grex --file -
error: the specified file could not be found

Will it be possible to add in a future release?

To work around this I use xargs:
cat za.groups | xargs grex

Document how stdin is read in `--help` message

Using - is sometimes used to specify that the file is stdin or stdout for several commands. For example

echo hello | cat -  # hello
echo main | git checkout -  # Switched to branch 'main'

I'm hoping that I can use this style to also get grex to read from stdin.

The current workaround for me is

command-that-outputs-patterns | grex --file /dev/stdin

Excessive memory allocation for constructing certain regexes.

Excessive memory allocation for constructing certain regexes.

taipale
memory allocation of 66336431728 bytes failed
Command terminated by signal 6

timeit ()
{
    if [ $# -ge 1 ]; then
        local info_color=$(printf "${info_color}");
        local reset_colors=$(printf "${reset_colors}");
        command time -f "\nTime output:\n------------\n\n  * Command: ${info_color}%C${reset_colors}\n  * Elapsed wall time: ${info_color}%E${reset_colors} = ${info_color}%e seconds${reset_colors}\n  * Elapsed CPU time:\n     - User: ${info_color}%U${reset_colors}\n     - Sys: ${info_color}%S${reset_colors}\n  * CPU usage: ${info_color}%P${reset_colors}\n  * Context switching:\n     - Voluntarily (e.g.: waiting for I/O operation): ${info_color}%w${reset_colors}\n     - Involuntarily (time slice expired): ${info_color}%c${reset_colors}\n  * Maximum resident set size (RSS: memory) (kiB): ${info_color}%M${reset_colors}\n  * Number of times the process was swapped out of main memory: ${info_color}%W${reset_colors}\n  * Filesystem:\n     - # of inputs: ${info_color}%I${reset_colors}\n     - # of outputs: ${info_color}%O${reset_colors}\n  * Exit status: ${info_color}%x${reset_colors}\n" "${@}";
        return 0;
    else
        printf "${help_color}Usage:${reset_colors}   timeit <command> <args>\n\n${help_color}Purpose:${reset_colors} Get information about run time, CPU usage, memory usage, ... of a command.\n\n";
        return 1;
    fi
}

for collection in  $(awk -F '__' '{ print $1 }' input.txt | sort -u) ; do
     echo ${collection};
     timeit grex -c --file <(grep "$collection" input.txt);
     echo;
done > output.txt 2>&1

There is quite a big difference in CPU time and memory usage, depending on the input.
output.txt
input.txt

Filtered output.txt:

❯ grep -E '^\w|Elapsed wall time|RSS' output.txt |grep -v output
bergman
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 4276
c2h2_zfs
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 3460
cisbp
  * Elapsed wall time: 0:00.08 = 0.08 seconds
  * Maximum resident set size (RSS: memory) (kiB): 20628
dbcorrdb
  * Elapsed wall time: 0:01.97 = 1.97 seconds
  * Maximum resident set size (RSS: memory) (kiB): 895680
elemento
  * Elapsed wall time: 0:00.01 = 0.01 seconds
  * Maximum resident set size (RSS: memory) (kiB): 7436
factorbook
  * Elapsed wall time: 0:00.01 = 0.01 seconds
  * Maximum resident set size (RSS: memory) (kiB): 5592
flyfactorsurvey
  * Elapsed wall time: 0:11.83 = 11.83 seconds
  * Maximum resident set size (RSS: memory) (kiB): 4917700
hdpi
  * Elapsed wall time: 0:00.12 = 0.12 seconds
  * Maximum resident set size (RSS: memory) (kiB): 42020
hocomoco
  * Elapsed wall time: 0:00.93 = 0.93 seconds
  * Maximum resident set size (RSS: memory) (kiB): 127308
homer
  * Elapsed wall time: 0:04.16 = 4.16 seconds
  * Maximum resident set size (RSS: memory) (kiB): 1257744
idmmpmm
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 3536
jaspar
  * Elapsed wall time: 0:00.02 = 0.02 seconds
  * Maximum resident set size (RSS: memory) (kiB): 6296
neph
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 3028
predrem
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 3920
scertf
  * Elapsed wall time: 0:00.04 = 0.04 seconds
  * Maximum resident set size (RSS: memory) (kiB): 7600
stark
  * Elapsed wall time: 0:00.06 = 0.06 seconds
  * Maximum resident set size (RSS: memory) (kiB): 40160
swissregulon
  * Elapsed wall time: 0:00.24 = 0.24 seconds
  * Maximum resident set size (RSS: memory) (kiB): 62404
taipale
memory allocation of 66336431728 bytes failedCommand terminated by signal 6
  * Elapsed wall time: 1:40.82 = 100.82 seconds
  * Maximum resident set size (RSS: memory) (kiB): 45748
taipale_cyt_meth
  * Elapsed wall time: 0:17.88 = 17.88 seconds
  * Maximum resident set size (RSS: memory) (kiB): 8250552
taipale_tf_pairs
  * Elapsed wall time: 0:13.25 = 13.25 seconds
  * Maximum resident set size (RSS: memory) (kiB): 6866384
tfdimers
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 5524
tiffin
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Maximum resident set size (RSS: memory) (kiB): 3216
transfac_pro
  * Elapsed wall time: 0:00.15 = 0.15 seconds
  * Maximum resident set size (RSS: memory) (kiB): 43884
transfac_public
  * Elapsed wall time: 0:00.01 = 0.01 seconds
  * Maximum resident set size (RSS: memory) (kiB): 5076
yetfasco
  * Elapsed wall time: 0:00.06 = 0.06 seconds
  * Maximum resident set size (RSS: memory) (kiB): 31096

Full output.txt

bergman
^bergman__(?:s(?:hn\-ZFP[12]|na|d)|(?:dif_)?Rel|S(?:tat92E|u_H_)|E(?:cR_usp|ip74EF)|p(?:r(?:d\-[HP]D|os)|ho)|A(?:bd\-B|ef1)|croc|d(?:l\-[AB]|sx)|Hr46|TFAM|mirr|retn|e(?:sg|ve|n)|Cf2|Ubx|ftz|g(?:cm|rh)|ovo|ems|tll|(?:bc|ca)d|vnd|(?:pn|K)r|(?:b[iy]|pa|ti|ze)n|srp|usp|hb|oc)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 88%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 4276
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


c2h2_zfs
^c2h2_zfs__M(?:0(?:4(?:0[0146]|[68][29])|369)|(?:03[79]|184|201)3|1808|3(?:269|383|9(?:1[13]|28))|(?:0(?:38|41)|38[37])5|4(?:205|021|331)|(?:382|4(?:29|44))7|3984|(?:243|380)0|5(?:1(?:0[37]|1[146-8]|2[035]|47|84)|280))$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 3460
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


cisbp
^cisbp__M(?:0(?:(?:(?:0(?:0[479]|1[178]|3[367]|6[36]|8[2-5])|1(?:3[0-357]|6[2-46-8]|7[24-9])|2(?:2[0-58]|6[013-689]|8[347])|3(?:2[0-467]|3[0-38]|4[124679]|5[257-9]|6[1-37]|8[346])|12[68]|4(?:5[68]|74)|5(?:0[06-8]|3[02-58]|4[46])|15[0-4689]|6(?:1[03]|2[289]|3[0-4689]|6[589]|7[0-2479]|8[5-9])|7(?:8[2-8]|9[25-8])|8(?:0[1-39]|2[039]|3[278]|5[057-9]|6[02-489]|7[0-249]))|495)|022)|0(?:75|81)[0-7]|1(?:0(?:7[0-479]|8[0346-9])|1(?:0[0-3569]|1[79]|3[5-79]|5[13-9]|6[03467]|7[0135-8]|8[0279])|2(?:0[0-25]|1[179]|2[023568]|4[0-35-7]|9[689])|3(?:5[3-9]|75)|30[01]|4(?:1[89]|22|5[0-7]|6[59]|7[01]|9[14579])|5(?:5[0-4]|7[37-9])|04[0-59]|6(?:1[125]|3[0-59]|6[458])|8(?:4[0137-9]|7[0-589])|94[24-6])|0(?:04|46|64)1|119[1347-9]|127[23]|011[0145]|(?:0(?:07|58)|150)6|0099|125[12]|183[6-9]|2(?:0(?:6[013-59]|8[369]|9[0134])|1(?:0[0-358]|1[124589]|2[0-24]|4[2-467]|5[018]|6[29]|7[0467]|8[1348]|91)|2(?:1[134]|2[38]|4[579])|3(?:3[0489]|4[1347-9]|5[1459]|6[1-3]|7[378]|8[14-9])|4(?:2[1-48]|3[78]|6[457]|7[1-47]|[89][34])|5(?:1[23]|2[2-6]|3[0-268]|5[013-7]|8[124-8]|9[0145])|136|459|6(?:06|[17]9|8[12])|238|768|863|91[6-9])|044[0-48]|160[0-5]|(?:024|200)[0-8]|(?:0(?:10|41)|205)[02-9]|114[0-6]|154[0135-9]|3(?:0(?:2[0-35-8]|3[1-79])|1(?:1[2-46-9]|2[0-48])|4(?:0[1-47-9]|7[0-246-9]|8[0-5])|56[0-25-9]|(?:[23]9|50)[0-8]|(?:13|25)[02-9]|6(?:1[0-8]|[25][02-9]|6[0-6])|19[0135-9]|7(?:6[0135-9]|9[124-69])|80[013-8]|73[02-689]|9(?:2[02-467]|7[02-689]))|(?:025|389)[0-357-9]|(?:18|31)5[014-9]|(?:088|372)[0-36-9]|(?:023|186|298|336)[0-57-9]|(?:027|386)[0-68]|(?:164|239)[0-2]|2207|2(?:07|40)[26]|052[0-278]|244[1-5]|(?:193|2(?:02|56)|3(?:00|32))[013-9]|4(?:0(?:4[0-357-9]|6[04-9]|7[014-9]|9[0-36-9])|1(?:0[0-57-9]|1[0-68]|6[0135-79]|8[0689])|2(?:0[1568]|1[1267]|3[35]|4[129]|5[35-9]|6[01568]|7[034679]|8[0-3]|9[0-2])|3(?:07|1[26]|3[056]|4[2-4]|5[13568]|6[04-6]|7[05-8])|[13]9[09]|4(?:0[05]|1[09]|2[2-47-9])|7(?:1[0-29]|5[0-69])|8(?:0[4-79]|[12][0-278]|4[013-69]|5[0-46-8]|6[1-5]|7[014-79]|8[47-9])|9(?:0[03-9]|1[013-9]|7[0-37-9]|8[0-489]))|(?:0(?:51|72)|126|3(?:49|54|85))[1-9]|(?:106|3(?:14|88))[0-689]|(?:084|136|262|432)0|(?:060|151|417)[7-9]|(?:189|226|38[37]|476)[0-24-9]|472[014-7]|(?:112|400)[1-689]|(?:2(?:01|9[69])|305|492)[0-35-9]|(?:074|3[01]6|4(?:05|14))[0-46-9]|(?:162|394)[2-9]|188[0-47-9]|5(?:0(?:2[1-9]|[34][0-689]|80|9[7-9])|1(?:0[0-24-9]|4[014-7]|6[1-689]|9[0-35-9])|2(?:2[0-46-9]|4[013-6]|5[2-9]|6[0-47-9]|8[024-9]))|(?:2(?:32|95)|3(?:04|23)|415)[0-79]|(?:0(?:1[89]|2[019]|3[019]|4[023]|69|7[013]|89)|1(?:0[0-359]|23|4[34]|5[2389]|9[0-25-9])|2(?:0[34]|2[57-9]|3[01]|5[47]|9[2-47])|3(?:0[17-9]|1[078]|2[0-246-8]|3[013-578]|4[1-6]|5[1-357-9]|6[0347-9]|7[014578]|8[124]|9[0135689])|4(?:0[1-38]|1[23]|4[3-9]|7[03489]|8[39]|9[3-69])|5(?:0[015-7]|1[1-3578]|2[01379])|(?:09|4[56]|5[3-9])[0-9])[0-9]|6(?:07[0-79]|(?:0[0-689]|[1-4][0-9])[0-9]|5[0-5][0-9]))$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.08 = 0.08 seconds
  * Elapsed CPU time:
     - User: 0.07
     - Sys: 0.00
  * CPU usage: 98%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 2
  * Maximum resident set size (RSS: memory) (kiB): 20628
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 8
  * Exit status: 0


dbcorrdb
^dbcorrdb__(?:POLR2A(?:phosphoS2__ENCSR000DYF_1__m(?:1[0-2]|[2-9])|__ENCSR000AOJ_1__m(?:1[0-2]|[2-9]))|POLR2A(?:phosphoS2__ENCSR000DYF|__ENCSR000AOJ)_1__m1|(?:POLR2AphosphoS2__ENCSR000EHF|SETDB1__ENCSR000EWD|CHD1__ENCSR000EFC)_1__m[1-8]|(?:POLR(?:2A(?:phosphoS5__ENCSR000BOV|__ENCSR000ALT)|3G__ENCSR000EHQ)|POLR2AphosphoS2__ENCSR000EGF|S(?:MARCC2__ENCSR000EDL|IN3A__ENCSR000BOW)|TBL1XR1__ENCSR000EGA|ARID3A__ENCSR000EFY|(?:POLR2A__ENCSR000EU|ATF3__ENCSR000BN)U|ZNF384__ENCSR000DYP|STAT3__ENCSR000DZV|E(?:P300__ENCSR000(?:B(?:HB|LM|MA|PW)|DZD)|ZH2__ENCSR000A(?:R[EKR]|SW|TA))|HDAC(?:1__ENCSR000AQF|2__ENCSR000AQG)|(?:SAP30__ENCSR000AQ|HDAC6__ENCSR000AT)J|IKZF1__ENCSR000EUJ|NANOG__ENCSR000BMT|BRF2__ENCSR000DNV|CHD1__ENCSR000(?:AQD|EBU)|MXI1__ENCSR000EIA|RFX5__ENCSR000ECF|IRF3__ENCSR000DZX|TBP__ENCSR000ECB)_1__m[1-4]|(?:(?:POLR2AphosphoS2__ENCSR000ED|SIX5__ENCSR000BG)X|PPARGC1A__ENCSR000EEQ|Z(?:C3H11A__ENCSR000EFR|NF(?:143__ENCSR000DZL|274__ENCSR000EWE))|(?:SUPT20H__ENCSR000DN|ZNF(?:143__ENCSR000EG|384__ENCSR000EF))P|POLR2A__ENCSR000E(?:FB|ZQ)|POLR2A__ENCSR000AKZ|S(?:R(?:EBF1__ENCSR000EEO|F__ENCSR000BGE)|TAT(?:5A__ENCSR000BQZ|1__ENCSR000FAV|2__ENCSR000FBC|3__ENCSR000DO[UX])|I(?:N3A__ENCSR000(?:BOY|EBO)|X5__ENCSR000B(?:IQ|JE)))|T(?:CF7L2__ENCSR000E(?:UV|WT)|AF1__ENCSR000BPF|BP__ENCSR000EDD)|(?:POLR3(?:A__ENCSR000DN|G__ENCSR000EY)|FOXM1__ENCSR000BR|TAF7__ENCSR000BL)U|NFATC1__ENCSR000BQL|(?:ZNF143__ENCSR000EB|RFX5__ENCSR000DZ)W|G(?:TF2F1__ENCSR000EBP|ATA2__ENCSR000EVW)|MYBL2__ENCSR000BRO|C(?:EBPB__ENCSR000BRX|TCF__ENCSR000D(?:LW|TI|UU))|E(?:P300__ENCSR000(?:DZ[GT]|E[DH]V)|LK4__ENCSR000EVB|TS1__ENCSR000B(?:KQ|PU)|ZH2__ENCSR000ASZ)|HCFC1__ENCSR000ECH|R(?:AD21__ENCSR000BLY|E(?:LA__ENCSR000E(?:AW|B[AI])|ST__ENCSR000B(?:MN|QS)))|(?:SIN3A__ENCSR000BL|HDAC2__ENCSR000BN|MXI1__ENCSR000EB|PBX3__ENCSR000BG)R|M(?:AFK__ENCSR000EEB|YC__ENCSR000D(?:LI|OM))|ATF3__ENCSR000B(?:JY|KC)|BDP1__ENCSR000DNX|MAFK__ENCSR000DYV|(?:MTA3__ENCSR000BR|JUN__ENCSR000EG)H)_1__m[1-3]|(?:P(?:OLR2A(?:phosphoS5__ENCSR000B(?:IC|PL)|__ENCSR000(?:BHZ|D(?:K[MT]|L[MQV]|MZ)|E(?:EM|FK|HL|XO|Z[AL])|FA[JWY]))|AX5__ENCSR000BHJ)|(?:POLR2AphosphoS2__ENCSR000DZ|S(?:TAT1__ENCSR000EZ|P1__ENCSR000BH)|BDP1__ENCSR000DO)K|(?:POLR2AphosphoS2__ENCSR000EC|STAT2__ENCSR000FA|TCF12__ENCSR000BI|CHD2__ENCSR000EB|ELF1__ENCSR000BP)T|(?:POLR2AphosphoS5__ENCSR000BQ|STAT3__ENCSR000ED|RAD21__ENCSR000EA)C|T(?:BL1XR1__ENCSR000EGB|CF7L2__ENCSR000E(?:UY|VF)|EAD4__ENCSR000BRY|AF1__ENCSR000BH[OT])|(?:S(?:MARCA4__ENCSR000EH|P1__ENCSR000BK)|POLR2A__ENCSR000DY)O|Z(?:KSCAN1__ENCSR000ECJ|NF(?:143__ENCSR000ECO|217__ENCSR000EWU)|MIZ1__ENCSR000EFQ)|A(?:RID3A__ENCSR000EDP|TF(?:1__ENCSR000DNZ|2__ENCSR000BQU|3__ENCSR000BKE))|(?:POLR2A__ENCSR000BQ|S(?:IN3A__ENCSR000B|TAT3__ENCSR000D)P)B|(?:POLR2A__ENCSR000DN|HNF4A__ENCSR000BL|YY1__ENCSR000EW)F|(?:STAT5A__ENCSR000BR|E2F4__ENCSR000DO)R|(?:POU5F1__ENCSR000BM|HNF4A__ENCSR000EE|CTCF__ENCSR000AQ|ELK1__ENCSR000EF|RXRA__ENCSR000BH)U|(?:POLR2A__ENCSR000EY|MBD4__ENCSR000BQ|BRF1__ENCSR000DN)W|G(?:TF2F1__ENCSR000EHC|A(?:BPA__ENCSR000BIW|TA(?:1__ENCSR000EFT|3__ENCSR000EW[SV])))|(?:TCF7L2__ENCSR000EX|SI(?:N3A__ENCSR000BG|X5__ENCSR000BR)|E2F4__ENCSR000EV)L|(?:BCL11A__ENCSR000BH|JUN__ENCSR000EC)A|S(?:TAT3__ENCSR000DOQ|RF__ENCSR000BLV)|(?:TCF12__ENCSR000BJ|SP2__ENCSR000BQ)G|E(?:P300__ENCSR000(?:BKK|EGY)|ZH2__ENCSR000ARO)|H(?:DAC2__ENCSR000BMC|MGN3__ENCSR000DOB)|(?:FOXA1__ENCSR000BP|SP1__ENCSR000BJ)X|THAP1__ENCSR000BNN|(?:SIRT6__ENCSR000DO|PHF8__ENCSR000AQ|BCL3__ENCSR000BQ)H|(?:FOSL1__ENCSR000BN|JUND__ENCSR000DY|TAF1__ENCSR000B[GK])S|(?:MEF2A__ENCSR000BN|CEBPB__ENCSR000EB)V|N(?:R(?:2(?:C2__ENCSR000EWH|F2__ENCSR000BRS)|3C1__ENCSR000(?:B(?:HG|JC)|EEV))|F(?:E2__ENCSR000FAF|IC__ENCSR000B(?:QX|RN)|Y(?:A__ENCSR000(?:DNS|EGR)|B__ENCSR000DN[MR])))|(?:CEBPB__ENCSR000EF|YY1__ENCSR000EU)M|R(?:AD21__ENCSR000E[CD]E|BBP5__ENCSR000AQI|E(?:LA__ENCSR000E(?:A[GINQ]|BM)|ST__ENCSR000B(?:HM|J[LOP]|OT))|FX5__ENCSR000ECX)|(?:TCF12__ENCSR000BQ|RCOR1__ENCSR000ED|BCL3__ENCSR000BN)Q|(?:HNF4G__ENCSR000BN|BRF1__ENCSR000DO|E2F6__ENCSR000EW)J|KDM5(?:A__ENCSR000AQL|B__ENCSR000AQA)|(?:JUND__ENCSR000EB|MAFK__ENCSR000ED|FOS__ENCSR000EY|TBP__ENCSR000DZ)Z|JUND__ENCSR000BKP|CTCF__ENCSR000(?:A(?:LJ|MA|N[ES]|OO|PF)|BHW|D(?:L[DK]|P[MPSY]|Q[IW]|S[UZ]|T[FLW]|U[GP]|VA|W[QY]|X[DQW])|EFI)|IRF1__ENCSR000EG[KU]|(?:MXI1__ENCSR000EF|CHD1__ENCSR000DZ)E|JUN__ENCSR000E(?:FS|Z[TWX])|YY1__ENCSR000EXG|FOS__ENCSR000FAI)_1__m[12]|(?:P(?:OLR2A(?:phosphoS5__ENCSR000B(?:I[AFL]|OA|P[AI])|__ENCSR000(?:B(?:G[DO]|H[HIN])|D(?:L[JY]|M[KNT]|P[AC])|E(?:A[DJMRUY]|B[CGK]|EP|HP|XX)|FA[LX]))|AX5__ENCSR000B(?:HD|J[HI])|ML__ENCSR000BQ[MY])|(?:POLR2AphosphoS5__ENCSR000BM|E2F4__ENCSR000EW|MAZ__ENCSR000EC|SP2__ENCSR000BN)L|(?:POLR2A(?:phosphoS5__ENCSR000BK|__ENCSR000BM)|CHD2__ENCSR000DZ|MYC__ENCSR000EH|SP1__ENCSR000BI)R|(?:BHLHE40__ENCSR000D[YZ]|C(?:EBPD__ENCSR000BQ|TCF__ENCSR000BP)|SPI1__ENCSR000BI|E2F1__ENCSR000EV|IRF3__ENCSR000EE|NRF1__ENCSR000ED)J|(?:B(?:HLHE40__ENCSR000ED|ATF__ENCSR000BG)|TCF3__ENCSR000BQ)T|(?:BHLHE40__ENCSR000EG|FOSL1__ENCSR000BM|EP300__ENCSR000EC|RAD21__ENCSR000BK|JUND__ENCSR000EY|MAX__ENCSR000EF|S(?:P4__ENCSR000BQ|RF__ENCSR000BI))V|(?:B(?:HLHE40__ENCSR000BI|ACH1__ENCSR000EG)|RAD21__ENCSR000FA|CHD2__ENCSR000E[EH])D|(?:SMARCB1__ENCSR000ED|POLR2A__ENCSR000BI|CTCFL__ENCSR000BN|JUN(?:D__ENCSR000BG|__ENCSR000EE)|MAFK__ENCSR000EC|E2F6__ENCSR000EV)K|(?:SMARCC1__ENCSR000ED|HA\-E2F1__ENCSR000EV|POLR2A__ENCSR000BJ|CTCF__ENCSR000EG|RELA__ENCSR000DY|YY1__ENCSR000BP)M|(?:HA\-E2F1__ENCSR000EW|SIN3A__ENCSR000DY|BRCA1__ENCSR000EB|MAFK__ENCSR000EG|CTCF__ENCSR000BL|USF1__ENCSR000BH)X|T(?:CF7L2__ENCSR000EV[EQ]|EAD4__ENCSR000BR[KP]|AF1__ENCSR000B(?:I[BM]|Q[FN]))|(?:POU2F2__ENCSR000BG|S(?:REBF1__ENCSR000E|MC3__ENCSR000D)Z|TFAP2A__ENCSR000EV|FOSL2__ENCSR000BH|MAX__ENCSR000(?:BL|EU))P|(?:BCLAF1__ENCSR000BK|JUN(?:D__ENCSR000ED|__ENCSR000FA)|MAFK__ENCSR000EF|YY1__ENCSR000BM)H|(?:PO(?:LR2A__ENCSR000BK|U2F2__ENCSR000BI)|FOXA2__ENCSR000BN|CEBPB__ENCSR000(?:BQ|DY)|JUND__ENCSR000EE|M(?:AFF__ENCSR000EG|XI1__ENCSR000DZ)|E(?:2F6__ENCSR000BL|LK1__ENCSR000EC))I|Z(?:BTB(?:33__ENCSR000B(?:H[CR]|KF)|7A__ENCSR000BME)|NF263__ENCSR000E(?:VD|WN)|ZZ3__ENCSR000DNQ|EB1__ENCSR000BND)|(?:TFAP2C__ENCSR000EV|SREBF2__ENCSR000EZ|FO(?:SL2__ENCSR000BQ|XA1__ENCSR000BM)|CTBP2__ENCSR000EU|NRF1__ENCSR000DZ|RFX5__ENCSR000EG)O|(?:ZBTB33__ENCSR000BN|PRDM1__ENCSR000EC|RAD21__ENCSR000BM|IRF4__ENCSR000BG|NFE2__ENCSR000DZ|MYC__ENCSR000EB)Y|(?:BCLAF1__ENCSR000BJ|ZBTB33__ENCSR000BP|TCF12__ENCSR000BG|M(?:XI1__ENCSR000EG|AX__ENCSR000EE))Z|FO(?:X(?:A1__ENCSR000BK[WY]|P2__ENCSR000BG[AB])|S__ENCSR000DO[N-PT])|S(?:TAT(?:1__ENCSR000(?:EH[JK]|FAU)|3__ENCSR000DOZ)|PI1__ENCSR000BG[QW])|BRCA1__ENCSR000ED[BY]|C(?:EBPB__ENCSR000(?:BRQ|EE[EX])|HD2__ENCSR000ECP|TCF__ENCSR000(?:A(?:K[BO]|L[AV]|MF|NO|OA|PM)|B(?:HV|N[HO])|D(?:K[LNPRVX-Z]|L[BE-GOS]|M[ACEFHLORSVY]|N[ACDGI]|P[FGV]|Q[DNY]|R[BENPRUZ]|T[AOR]|U[BHMSX]|V[HIPQ]|W[EHNX]|XI|Y[BD])))|E(?:SR(?:RA__ENCSR000EEW|1__ENCSR000B(?:K[LN]|Q[DR]))|P300__ENCSR000(?:BLW|EGE)|L(?:F1__ENCSR000BM[BDZ]|K4__ENCSR000EVI)|TS1__ENCSR000BKA|ZH2__ENCSR000ASE)|HDAC2__ENCSR000BMG|N(?:R(?:2C2__ENCSR000E(?:UL|V[NS])|3C1__ENCSR000B(?:HF|JR)|F1__ENCSR000E(?:EH|H[HZ]))|FYA__ENCSR000DNN)|R(?:AD21__ENCSR000(?:BL[DS]|EFJ)|COR1__ENCSR000EG[CG]|UNX3__ENCSR000BRI|E(?:LA__ENCSR000EBD|ST__ENCSR000B(?:J[JQ]|MW|OZ|QP))|XRA__ENCSR000BJW)|(?:SUZ12__ENCSR000EU|BACH1__ENCSR000EB|EBF1__ENCSR000DZ|NFYB__ENCSR000EG)Q|(?:FO(?:XA1__ENCSR000BL|S__ENCSR000EZ)|C(?:EBPB__ENCSR000EH|TCF__ENCSR000B[IQ])|RAD21__ENCSR000DY|EGR1__ENCSR000BN|MAX__ENCSR000FA)E|(?:HCFC1__ENCSR000EF|JUND__ENCSR000EG|TAF1__ENCSR000BJ|CTCF__ENCSR000DZ|MA(?:X__ENCSR000EC|Z__ENCSR000ED))N|(?:S(?:IN3A__ENCSR000BI|MC3__ENCSR000EC)|BRCA1__ENCSR000DZ|MA(?:FK__ENCSR000EB|X__ENCSR000E[DH])|ESR1__ENCSR000BJ)S|(?:M(?:EF2C__ENCSR000BN|AX__ENCSR000DY)|RAD21__ENCSR000EE|ATF3__ENCSR000DO|EGR1__ENCSR000BR|USF2__ENCSR000EH|JUN__ENCSR000ED)G|GA(?:BPA__ENCSR000B(?:HS|JK|LO|PY)|TA(?:1__ENCSR000E(?:X[PR]|WM)|2__ENCSR000(?:BKM|EWG)|3__ENCSR000EXZ))|KAT2A__ENCSR000ECR|(?:RCOR1__ENCSR000DZ|GABPA__ENCSR000BG|M(?:AFF__ENCSR000EE|YC__ENCSR000DY)|CTCF__ENCSR000EI|NRF1__ENCSR000EC)C|XRCC4__ENCSR000FAC|(?:MEF2A__ENCSR000BK|CREB1__ENCSR000BR|GATA2__ENCSR000EY|JUND__ENCSR000EI|TAL1__ENCSR000EH|ELK1__ENCSR000DZ|USF1__ENCSR000BJ)B|ATF2__ENCSR000BQK|SMC3__ENCSR000E[DGH]W|IRF1__ENCSR000EG[LT]|(?:M(?:XI1__ENCSR000E[CD]|YC__ENCSR000DK)|EBF1__ENCSR000BG|FOS__ENCSR000EV|SP2__ENCSR000BO)U|U(?:BTF__ENCSR000EF[WZ]|SF(?:1__ENCSR000B(?:(?:G[IM]|KT|PV)|IU)|2__ENCSR000(?:DZU|EC[DW])))|(?:IRF3__ENCSR000ED|USF(?:1__ENCSR000BM|2__ENCSR000EE)|MAX__ENCSR000[DE]Z)F|JUN__ENCSR000EFA|M(?:AZ__ENCSR000EF[FX]|YC__ENCSR000(?:D(?:L[NRUZ]|M[JMPQ]|OS)|E(?:G[JS]|Z[DUV])|FA[GZ]))|YY1__ENCSR000B(?:K[DJU]|L[TZ]|N[PTX]))_1__m1|eGFP\-(?:GATA2__ENCSR000DKA_1__m1|JUNB__ENCSR000DJY_1__m[12]|(?:JUND__ENCSR000DJX|FOS__ENCSR000DKB)_1__m1)|(?:S(?:MARCA4__ENCSR000EZC|REBF2__ENCSR000DYT)|TAF7__ENCSR000BNM)_1__m(?:10|[2-9])|(?:S(?:MARCA4__ENCSR000EZC|REBF2__ENCSR000DYT)|TAF7__ENCSR000BNM)_1__m1|(?:S(?:MARCB1__ENCSR000EHN|ETDB1__ENCSR000EYD)|POLR2A__ENCSR000ALH|TRIM28__ENCSR000EVY|NELFE__ENCSR000DOF|R(?:AD21__ENCSR000EHX|XRA__ENCSR000BJD)|B(?:CL3__ENCSR000BKG|RF2__ENCSR000DOC)|EZH2__ENCSR000ASY|HSF1__ENCSR000EET)_1__m[1-7]|TBL1XR1__ENCSR000DYZ_1__m[1-4]|(?:SUPT20H__ENCSR000ECQ|SR(?:EBF1__ENCSR000DYU|F__ENCSR000BLK)|T(?:RIM28__ENCSR000EYC|BP__ENCSR000E(?:EL|HA))|ZNF274__ENCSR000E(?:UK|V[GRX])|C(?:EBPZ__ENCSR000ED|UX1__ENCSR000EF)O|E(?:SRRA__ENCSR000DYQ|ZH2__ENCSR000A(?:RI|TC))|NR3C1__ENCSR000BHE|SIN3A__ENCSR000BRM|R(?:BBP5__ENCSR000AQC|COR1__ENCSR000E(?:CM|FG)|FX5__ENCSR000EHY)|ATF3__ENCSR000BPS)_1__m[1-5]|(?:POLR3A__ENCSR000DOI|S(?:ETDB1__ENCSR000EWI|TAT1__ENCSR000DZM|UZ12__ENCSR000EXH)|BCL11A__ENCSR000BIP|CHD1__ENCSR000AQK|EZH2__ENCSR000ARD|RFX5__ENCSR000EFD)_1__m[1-6]|ZNF274__ENCSR000E(?:U[IN]_1__m[1-6]|WY_1__m[1-7])|G(?:TF(?:2(?:F1__ENCSR000ECZ_1__m[1-4]|B__ENCSR000DOE_1__m[1-4])|3C2__ENCSR000DOD_1__m[1-5])|ATA3__ENCSR000BMX_1__m[1-4])|(?:TRIM28__ENCSR000EUZ|CBX3__ENCSR000BRT|EZH2__ENCSR000ARH)_1__m[1-9]|WRNIP1__ENCSR000EAA_1__m[1-3]|(?:GTF3C2__ENCSR000DN|E(?:2F4__ENCSR000DY|SR1__ENCSR000BI))Y_1__m[12]|(?:ZBTB7A__ENCSR000BQ|C(?:CNT2__ENCSR000DO|EBPB__ENCSR000ED)|EGR1__ENCSR000BJ|RFX5__ENCSR000EE|MAZ__ENCSR000DZ)A_1__m1|E(?:ZH2__ENCSR000AQE_1__m(?:10|[2-9])|P300__ENCSR000AQB_1__m[1-8])|KAT2A__ENCSR000DNO_1__m[1-9]|EZH2__ENCSR000AQE_1__m1|CTCF__ENCSR000DR[FH-L]_[12]__m1)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:01.97 = 1.97 seconds
  * Elapsed CPU time:
     - User: 1.75
     - Sys: 0.21
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 2
  * Maximum resident set size (RSS: memory) (kiB): 895680
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 16
  * Exit status: 0


elemento
^elemento__(?:A(?:TTTGCATA|A(?:(?:CCGG|ATA)|TTAA)TT|CTTCCG)|A(?:A(?:[AG]ATGGC|CAGCT)|C(?:CTGT|A(?:GG|TA))T)G|(?:(?:AATTATG|CA(?:TGCG|ACAA))C|(?:A(?:TCAA|GCTG)|C(?:AAG|CAC)G)TC|CTAATT|(?:A(?:CCGG|TGCA)|C(?:CCGG|TGTC))A)A|CGGAAGTGA|(?:C(?:GCATGCG|ACGTGA)|A(?:AGGTCA|TGGCGG))C|CCCTCCCCC|(?:A(?:ATTTAT|GGGG)G|C(?:G(?:C(?:C(?:TGCG|C[AC])|AGGCG)|TCAT)|(?:AGCT|CCAC)G)|AC(?:TTCCT|GTG[ACG])|ATGACGT|ATCTTAT|ACGCCCA|T(?:TGTTT|G(?:GCA|TTT))A)C|GCC(?:ACGCCC?|CCGCCC)|ATTTGCAT|C(?:GCATGCG|ACGTGA)|CCCTCCCC|C(?:A(?:GGTGAG|CGTG[CG])|C(?:AATC|GGA)AG)|T(?:(?:GAC(?:[AG])?TC|AATTA)|CTCGCG)A|(?:C(?:C(?:TCCT|CGC)|A(?:(?:CGC|TGA)|CTT))|TT?GGCG)CC|CC(?:CCT|GC)CCC|A(?:AGGTCA|TGGCGG)|AGATAAG)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.01 = 0.01 seconds
  * Elapsed CPU time:
     - User: 0.01
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 7436
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 8
  * Exit status: 0


factorbook
^factorbook__(?:Z(?:NF(?:143\-ext|2(?:63|81))|EB1)|(?:SOX2\-OCT|ELK)4|(?:GATA1|C(?:REB|TCF))\-ext|B(?:HLHE40|ARHL2|\-Box)|ZNF143|(?:(?:SR)?EBF|NR(?:3C|F)|P(?:RDM|U)|T(?:EAD|AL)|MEIS|RUNX|NFKB|E(?:GR|LF|TS)|GFI|HSF|SP|YY)1|(?:POU2F|N(?:R2C|FE)|TCF1|MEF)2|TCF7L2|GATA1|S(?:TAT[12]|RF)|CEBPB|GA(?:TA3|BP)|(?:ESRR|FOX)A|A\-Box|v\-(?:JUN|Maf)|SOX2|C(?:REB|TCF)|M(?:Y(?:OG|C)|AX)|U(?:A(?:1[0-2]|[2-9])|SF)|E(?:2F[14]|SR1)|HNF4|PAX5|R(?:EST|FX5|XRA)|UA1|NFY|AP[12]|TBP)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.01 = 0.01 seconds
  * Elapsed CPU time:
     - User: 0.01
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 5592
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


flyfactorsurvey
^flyfactorsurvey__(?:(?:CG(?:4360(?:_F1\-3_SANGER_2\.5|\-F1\-3_SOLEXA)_FBgn003878|33557_da_SANGER_5_FBgn005355)|g(?:ce_Clk_SANGER_5_FBgn003062|sb\-n_SOLEXA_5_FBgn000114)|salr\-F3\-5_SOLEXA_FBgn000028|(?:Eip74EF_(?:SANGER_5|FlyReg)_FBgn00005|slp2_SANGER_5_FBgn00045)6|(?:Fer3_da_SANGER_5_FBgn00379|SuH_FlyReg_FBgn00048)3|a(?:se_da_SANGER_10_FBgn000013|op_SANGER_10_FBgn000009)|(?:foxo_SANGER_10_FBgn00381|phol_S(?:ANGER|OLEXA)_5_FBgn00359)9|srp_(?:SANGER_5|FlyReg)_FBgn000350|pnr_SANGER_5_FBgn000311|Dll_(?:SOLEXA|Cell)_FBgn000015|R(?:o_(?:SOLEXA|Cell)_FBgn000326|x_(?:SOLEXA|Cell)_FBgn002061))7|(?:(?:CG3065_F1\-(?:3_S(?:ANGER|OLEXA)|5_SOLEXA)_2\.5_FBgn00349|E5_(?:SOLEXA|Cell)_FBgn00086)4|(?:(?:shn\-F1\-2_S(?:ANGER_5|OLEXA)_FBgn0003|CrebA_SANGER_5_FBgn0004)3|onecut_(?:SOLEXA|Cell)_FBgn00289)9|(?:Cf2\-(?:P(?:A_S(?:ANGER_2\.5|OLEXA)_FBgn00002|B_S(?:ANGER_5|OLEXA)_FBgn00002)|II_FlyReg_FBgn00002)|cic_SANGER_5_FBgn00283)8|C(?:lk_cyc_SANGER_5_FBgn002307|G7745_SANGER_5_FBgn003361)|(?:CG12361_(?:SOLEXA_(?:2_)?FBgn02507|Cell_FBgn02507)|Doc2_SANGER_5_FBgn00359)5|tgo_sim_SANGER_5_FBgn000466|(?:(?:gce|tai)|Met)_Clk_SANGER_5_FBgn002307|ken_S(?:ANGER_10|OLEXA_5)_FBgn001123|tup_SOLEXA_10_FBgn000389|EcR_SANGER_5_FBgn000054|H(?:r4_SANGER_5_FBgn002354|bn_(?:SOLEXA|Cell)_FBgn000863)|v(?:ri_SANGER_5_FBgn001607|nd_FlyReg_FBgn000398)|Exex_(?:SOLEXA|Cell)_FBgn004115|bcd_FlyReg_FBgn000016|Bcd_SOLEXA_FBgn000016|Tup_(?:SOLEXA|Cell)_FBgn000389|Eve_(?:SOLEXA|Cell)_FBgn000060|eve_FlyReg_FBgn000060|Vnd_(?:SOLEXA|Cell)_FBgn000398|(?:Ems_(?:SOLEXA|Cell)_FBgn00005|ems_FlyReg_FBgn00005|Ind_Cell_FBgn00257)7|sens2_SOLEXA_F4\-)6|(?:Blimp\-1(?:\-F1\-CG4360F2\-3_SOLEXA_2\.|_(?:S(?:ANGER_5|OLEXA)_FBgn003562|NAR_FBgn003562))|H(?:LHmgamma_SANGER_(?:5_2|10)_FBgn000273|th_(?:SOLEXA|Cell)_FBgn000123)|Fer1_(?:da_SANGER_10|SANGER_5)_FBgn003747|CG(?:31670_S(?:OLEXA|ANGER)_5_FBgn00313|4136_(?:SOLEXA|Cell)_FBgn00297)7|CG16899_SANGER_5_FBgn003773|M(?:ax_Mnt_SANGER_5_FBgn002321|ed_FlyReg_FBgn001165)|(?:(?:(?:(?:herF1\-ZifF1_herF34|Sug_F3\-5\-2|s(?:na_F2\-4|ob\-F1\-3))|sob\-F3\-5)|ci_F3\-5)|lmd\-F3\-5)_SOLEXA_|Eip78C_SANGER_5_FBgn000486|(?:Ets96B_SANGER_5_FBgn00392|Kr_(?:S(?:ANGER_5|OLEXA)_FBgn00013|(?:FlyReg|NAR)_FBgn00013))2|fd64A_SANGER_5_FBgn000489|luna_S(?:ANGER|OLEXA)_5_FBgn004076|(?:retn_SANGER_5_FBgn00047|Antp_(?:(?:FlyReg|Cell)|SOLEXA)_FBgn00000)9|her_S(?:OLEXA|ANGER)_10_FBgn000118|(?:prd_(?:SOLEXA_5|(?:FlyReg|NAR))_FBgn00031|sd_FlyReg_FBgn00033)4|hth_SOLEXA_2_FBgn000123|Abd(?:\-B_FlyReg|B_(?:SOLEXA|Cell))_FBgn000001|odd_N(?:BT_(?:[12]\.)?5_FBgn000298|AR_FBgn000298)|CG8319\-F3\-5\-SOLEXA_|jim_F1\-4_SOLEXA_2\.)5|(?:(?:disco\-r\-(?:Cl1_SANGER_5|F1\-2_SOLEXA)_FBgn00426|gt_(?:FlyReg|NAR)_FBgn00011)5|(?:l_3_neo38_S(?:OLEXA|ANGER)_2\.5_FBgn00869|CG9895_S(?:ANGER_10|OLEXA_5)_FBgn00348|Ets97D_SANGER_10_FBgn00045|Atf6_SANGER_5_FBgn00330)1|Mio_bigmax_SANGER_5_FBgn003294|(?:Crc_CG6272_SANGER_5_FBgn00003|sc_da_SANGER_10_FBgn00041|H2\.0_(?:SOLEXA|Cell)_FBgn00011)7|HLH54F_da_SANGER_5_FBgn002274|t(?:ap_da_SANGER_5_(?:2_)?FBgn001555|wi_(?:da_SANGER_5|FlyReg)_FBgn000390|ll_(?:FlyReg|NAR)_FBgn000372|oy_FlyReg_FBgn001965)|amos_da_SANGER_10_FBgn000327|(?:CG13424_(?:SOLEXA_(?:2_)?FBgn00345|Cell_FBgn00345)|Atf\-2_SANGER_5_FBgn00504|kni_(?:SANGER_5|(?:FlyReg|NAR))_FBgn00013)2|(?:Ets21c_SANGER_5_FBgn00056|Optix_(?:SOLEXA|Cell)_FBgn00253|So_(?:SOLEXA|Cell)_FBgn00034)6|(?:Poxn_SOLEXA_5_FBgn00031|slp1_NAR_FBgn00034)3|run_Bgb_NBT_FBgn000330|eg_SANGER_5_FBgn000056|Tin_(?:SOLEXA|Cell)_FBgn000411)0|Xrp1_CG6272_SANGER_5_FBgn0(?:036126|261113)|(?:HLH4C_(?:da_SANGER_5_(?:[34]_)?FBgn00112|SANGER_5_FBgn00112)|ftz_FlyReg_FBgn00010|Ftz_(?:SOLEXA|Cell)_FBgn00010)77|(?:CG33980_(?:SOLEXA_(?:2_1?0_FBgn00539|FBgn00539)|Cell_FBgn00539)|scrt_S(?:OLEXA_2\.5_[12]_FBgn00048|ANGER_2\.5_FBgn00048)|hb_(?:S(?:ANGER_2\.|OLEXA_)5_FBgn00011|(?:FlyReg|NAR)_FBgn00011))80|(?:(?:jim_(?:F1\-9_SOLEXA|SANGER)_2\.5_FBgn00273|lmd_S(?:ANGER|OLEXA)_5_FBgn00390|Dfd_(?:(?:FlyReg|Cell)|SOLEXA)_FBgn00004|Scr_(?:SOLEXA|Cell)_FBgn00033)3|(?:crol(?:_F7\-16_SANGER_5|\-F7\-16_SOLEXA)_FBgn00203|H(?:and_da_SANGER_5_FBgn00322|LHm3_SANGER_5_FBgn00026)|dpn_SANGER_10_FBgn00101)0|Mio_bigmax_SANGER_5_FBgn003950|(?:cato_da_SANGER_10_FBgn00242|dei_da_SANGER_5_FBgn00086|ERR_SANGER_5_FBgn00358|Achi_(?:SOLEXA|Cell)_FBgn00337)4|CG7368_S(?:OLEXA_2\.|ANGER_)5_FBgn003617|Ets98B_SANGER_10_FBgn000565|Bt(?:eb2_S(?:ANGER|OLEXA)_2\.5_FBgn002567|n_(?:SOLEXA|Cell)_FBgn001494)|(?:disco_S(?:ANGER|OLEXA)_5_FBgn00004|bin_(?:SANGER_5|FlyReg)_FBgn00457|Ci_SANGER_5_FBgn00048|ci_SOLEXA_FBgn00048)5|(?:Poxm_SOLEXA_5_FBgn00031|Bsh_(?:SOLEXA|Cell)_FBgn00005)2|Hr(?:39_SANGER_5_FBgn001022|78_SANGER_5_FBgn001523)|Pph13_SOLEXA_FBgn002348|(?:Deaf1_FlyReg_FBgn00137|Her_SANGER_5_FBgn00308|sr_S(?:ANGER|OLEXA)_5_FBgn00034)9|Caup_(?:SOLEXA|Cell)_FBgn001591|Ap_(?:SOLEXA|Cell)_FBgn000009|ap_FlyReg_FBgn000009|fkh_NAR_FBgn000065)9|(?:H(?:LH(?:mdelta_SANGER_10_FBgn000273|106_SANGER_(?:5_[1-3]_FBgn001523|10_FBgn001523))|nf4_SANGER_(?:10|5)_FBgn000491)|(?:tgo_(?:(?:sima_SANGER_5_FBgn001|(?:s(?:im|s)_SANGER_5_FBgn001|cyc_SANGER_5_FBgn001))50|t(?:ai|rh)_SANGER_5_FBgn00150)|(?:(?:dys_tgo_SANGER_5|ss_tgo_SANGER_10)_FBgn0015|Abd(?:\-A_FlyReg|A_(?:SOLEXA|Cell))_FBgn0000)0)1|C(?:lk_cyc_SANGER_5_FBgn002309|G4328_(?:SOLEXA|Cell)_FBgn003627)|tgo_cyc_SANGER_5_FBgn002309|CG17181_S(?:ANGER|OLEXA)_5_FBgn003514|(?:pdm2_SOLEXA_5_FBgn00043|crp_SANGER_10_FBgn00019|Aef1_(?:S(?:ANGER_5|OLEXA)_FBgn00056|FlyReg_FBgn00056))9|Six4_(?:SOLEXA_(?:2_)?FBgn00273|Cell_FBgn00273)6|(?:dsx\-[FM]_FlyReg_FBgn00005|hkb_NAR_FBgn00012)0|nub_(?:SOLEXA_5|(?:FlyReg|NAR))_FBgn008542|usp_SANGER_5_FBgn000396|PhdP_SOLEXA_FBgn002533|U(?:nc4_(?:SOLEXA|Cell)_FBgn002418|bx_(?:(?:FlyReg|Cell)|SOLEXA)_FBgn000394)|tj_SANGER_5_FBgn000096|Ara_(?:SOLEXA|Cell)_FBgn001590|Otp_(?:SOLEXA|Cell)_FBgn001552|(?:l_3_neo38|(?:(?:her|rn)|klu))_SOLEXA_F2\-)4|Crc_CG6272_SANGER_5_FBgn0036126|(?:peb\-F(?:1\-3_S(?:ANGER_2\.5|OLEXA)|5\-7_SOLEXA)_FBgn000305|(?:HLHm(?:beta_SANGER_10_FBgn00027|7_SANGER_5_FBgn00026)|CG15696_(?:SOLEXA|Cell)_FBgn00388|btd_NAR_FBgn00002)3|C(?:G3(?:407_S(?:ANGER|OLEXA)_2\.5_FBgn003157|1670_SOLEXA_F1\-)|15_(?:SOLEXA|Cell)_FBgn000486)|ato_da_SANGER_(?:5_[23]_FBgn001043|10_FBgn001043)|M(?:et_(?:Clk_)?SANGER_5_FBgn000272|irr_(?:SOLEXA|Cell)_FBgn001434)|sens_S(?:ANGER_10|OLEXA_5)_FBgn000257|(?:G(?:ATAd_SANGER_5_FBgn00322|sc_(?:SOLEXA|Cell)_FBgn00103)|knrl_SANGER_5_FBgn00013|Lim3_(?:SOLEXA|Cell)_FBgn00020)2|wor_S(?:ANGER|OLEXA)_2\.5_FBgn000198|bowl_S(?:ANGER_5|OLEXA)_FBgn000489|run_Bgb_NBT_FBgn001375|Zen_(?:SOLEXA|Cell)_FBgn000405|byn_FlyReg_FBgn001172|(?:sens|(?:Sqz|pho))_SOLEXA_F1\-)3|(?:(?:(?:CG33557_da_SANGER_5_FBgn000|H(?:LH(?:4C_da_SANGER_5_(?:[34]_)?FBgn000|54F_da_SANGER_5_FBgn000)|and_da_SANGER_5_FBgn000)|(?:cato_da_SANGER_10|sage_da_SANGER_5)_FBgn000|Oli_da_SANGER_5_[1-3]_FBgn000|tap_da_SANGER_5_(?:2_)?FBgn000|Fer(?:(?:1_da_SANGER_10|2_da_SANGER_5)|3_da_SANGER_5)_FBgn000|d(?:imm_da_SANGER_5|a_SANGER_10)_FBgn000)0|(?:(?:l_1_sc_da_SANGER_5|sc_da_SANGER_10)|dei_da_SANGER_5)_FBgn0000|n(?:et_da_SANGER_10|au_da_SANGER_5)_FBgn0000|twi_da_SANGER_5_FBgn0000)4|a(?:(?:to_da_SANGER_(?:5_[23]_FBgn0000|10_FBgn0000)|(?:se_da_SANGER_10|c_da_SANGER_5)_FBgn0000)|mos_da_SANGER_10_FBgn0000)4|ss_tgo_SANGER_10_FBgn00035|tgo_ss_SANGER_5_FBgn00035|Sox15_SANGER_5_FBgn00056)13|(?:l_1_sc_da_SANGER_5_FBgn000256|(?:Oli_da_SANGER_5_[1-3]_FBgn0032|svp_SANGER_5_FBgn0003)65|(?:CG12605_S(?:ANGER_10|OLEXA_5)_FBgn00354|dsf_SANGER_5_FBgn00153|Pb_(?:SOLEXA|Cell)_FBgn00514)8|(?:dimm_da_SANGER_5_FBgn00230|E_spl__SANGER_5_FBgn00005)9|(?:net_da_SANGER_10_FBgn00029|CG34031_SOLEXA_FBgn00540)3|(?:(?:dys_tgo_SANGER_5_FBgn0039|D_NAR_FBgn0000)4|lim_SOLEXA_2_FBgn00264|Usf_SANGER_5_FBgn00297|Lim1_(?:SOLEXA|Cell)_FBgn00264|grh_FlyReg_FBgn02592)1|e(?:sg(?:\-F3\-5_SOLEXA|_SANGER_2\.5)_FBgn000198|xd_(?:SOLEXA_2|FlyReg)_FBgn000061)|GATAe_SANGER_5_FBgn003839|HLHm5_SANGER_5_FBgn000263|S(?:ide_SANGER_5_FBgn003274|lou_(?:SOLEXA|Cell)_FBgn000294)|Repo_(?:SOLEXA|Cell)_FBgn001170|sv_SOLEXA_5_FBgn000556|Unpg_(?:SOLEXA|Cell)_FBgn001556|(?:Awh_(?:SOLEXA|Cell)_FBgn00137|cad_FlyReg_FBgn00002|Cad_(?:SOLEXA|Cell)_FBgn00002)5|Lbl_(?:SOLEXA|Cell)_FBgn000865|Exd_(?:SOLEXA|Cell)_FBgn000061|Al_(?:SOLEXA|Cell)_FBgn000006)1|(?:(?:sens(?:\-2_SANGER_2\.5|2_SOLEXA)_FBgn00516|pan_FlyReg_FBgn00854)3|t(?:go_(?:sima_SANGER_5_FBgn001554|tai_SANGER_5_FBgn004109)|ai_Clk_SANGER_5_FBgn004109)|(?:sage_da_SANGER_5_FBgn00376|rn_S(?:ANGER_10|OLEXA_5)_FBgn02591)7|dm_Max_SANGER_10_FBgn000047|Fer2_da_SANGER_5_FBgn003840|(?:Sox14_SANGER_10_FBgn00056|Hr51_SANGER_5_FBgn00340|Ptx1_(?:SOLEXA|Cell)_FBgn00209)1|CG(?:32532_(?:SOLEXA|Cell)_FBgn005253|11617_(?:SOLEXA|Cell)_FBgn003123|7056_(?:SOLEXA|Cell)_FBgn003885)|(?:CG18599_(?:SOLEXA|Cell)_FBgn00385|sob_S(?:ANGER_10|OLEXA_5)_FBgn00048|Dr_(?:SOLEXA|Cell)_FBgn00004)9|Mitf_SANGER_5_FBgn026311|sug_S(?:ANGER|OLEXA)_5_FBgn003378|(?:O(?:pa_SANGER_5_FBgn00030|c_(?:SOLEXA|Cell)_FBgn00041)|opa_(?:SOLEXA|NAR)_FBgn00030)0|Bap_(?:SOLEXA|Cell)_FBgn000486|dl_(?:FlyReg|NBT)_FBgn000046)2|(?:CG8319_SOLEXA_2\.5_FBgn00377|nau_(?:da_)?SANGER_5_FBgn00029|Hsf_FlyReg_FBgn00012|Lab_(?:SOLEXA|Cell)_FBgn00025)22|CG(?:2052_S(?:ANGER|OLEXA)_2\.5_FBgn00399|32105_(?:SOLEXA|Cell)_FBgn00521)05|(?:CG12029_S(?:ANGER_10|OLEXA_5)_FBgn00354|BH2_(?:SOLEXA|Cell)_FBgn00048)54|kay_Jra_SANGER_5_FBgn000129[17]|(?:(?:Eip93F_SANGER_10_FBgn00139|sna_(?:S(?:ANGER_10|OLEXA_5)_FBgn0003|FlyReg_FBgn0003)4|H(?:r46_(?:SANGER_5|FlyReg)_FBgn00004|mx_(?:SOLEXA|Cell)_FBgn00854)|gsb_SOLEXA_5_FBgn00011|Vis_(?:SOLEXA|Cell)_FBgn00337)4|dm_Max_SANGER_10_FBgn001757|Ma(?:x_Mnt_SANGER_5_FBgn001757|d_FlyReg_FBgn001164)|Eip75B_SANGER_5_FBgn000056|(?:ftz\-f1_(?:SANGER_5|FlyReg)_FBgn00010|Sp1_S(?:OLEXA_2\.|ANGER_)5_FBgn00203|Lbe_(?:SOLEXA|Cell)_FBgn00112)7|C(?:G11085_(?:SOLEXA|Cell)_FBgn003040|t_(?:SOLEXA|Cell)_FBgn000419)|(?:slbo_SANGER_5_FBgn00056|cwo_SANGER_5_FBgn02599)3|pdm3_SOLEXA_5_FBgn003328|acj6_SOLEXA_5_FBgn000002|(?:sqz_S(?:ANGER|OLEXA)_5_FBgn00107|h_(?:SANGER_5|NAR)_FBgn00011)6|Hey_SANGER_5_FBgn002778|(?:pnt_SANGER_5_FBgn00031|Rel_SANGER_5_FBgn00140|Hgtx_(?:SOLEXA|Cell)_FBgn00403)1|ovo_(?:S(?:ANGER|OLEXA)_5_FBgn0003|FlyReg_FBgn0003)02|Lag1_(?:SOLEXA|Cell)_FBgn004091)8|(?:Ets65A_SANGER_10_FBgn00056|CG11294_(?:SOLEXA|Cell)_FBgn00300|Odsh_(?:SOLEXA|Cell)_FBgn00260|BH1_(?:SOLEXA|Cell)_FBgn00117)58|(?:CG5669_S(?:ANGER_10|OLEXA_5)_FBgn00391|klu_S(?:ANGER_10|OLEXA_5)_FBgn00134)69|ac_da_SANGER_5_FBgn0000022|(?:pho_(?:S(?:ANGER_10|OLEXA_5)|FlyReg)_FBgn00025|CG9876_(?:SOLEXA|Cell)_FBgn00348)21|N(?:FAT_SANGER_5_FBgn0030505|K7\.1_(?:SOLEXA|Cell)_FBgn0024321)|zen2_SOLEXA_2_FBgn0004054|vvl_(?:SOLEXA_5|FlyReg)_FBgn0086680|inv_SOLEXA_[25]_FBgn0001269|e(?:n_(?:SOLEXA_2|FlyReg)_FBgn0000577|y_(?:SOLEXA_5|FlyReg)_FBgn0005558)|Zen2_(?:SOLEXA|Cell)_FBgn0004054|En_(?:SOLEXA|Cell)_FBgn0000577|Inv_Cell_FBgn0001269)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:11.83 = 11.83 seconds
  * Elapsed CPU time:
     - User: 10.46
     - Sys: 1.36
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 23
  * Maximum resident set size (RSS: memory) (kiB): 4917700
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 32
  * Exit status: 0


hdpi
^hdpi__(?:H(?:IST(?:1H2BN|2H2BE)|NRP(?:A[01]|C)|SPA5|2AF[YZ]|OXB9|1FX|H(?:AT|EX)|LCS)|(?:HIST2H2A|P(?:PP2R3|4H)|FAM1(?:19|27)|C(?:KMT1|SNK2)|MEF2|UQCR|ETF)B|R(?:NASEH2C|B(?:M(?:35[AB]|[79])|BP[59])|A(?:B1[48]|R[ABG]|[NX])|FX[34]|PL6)|(?:TIMELES|CYC)S|K(?:IAA0907|LF[34])|(?:FLJ3707|MAGEA|RNF13|DGCR|UTP1|HDAC)8|(?:C(?:1orf17|9orf15|CDC1|NOT)|THRAP|D(?:HX3|LX)|PSMA|MYF|LSM)6|(?:M(?:GC1043|SRB|EIS)|N(?:UP13|KX2\-|FIL|XPH)|PO(?:U4F|LE)|PIK3C|EXOSC|GTF2H|H(?:NRPH|OX(?:B1|D))|(?:H(?:IRI|P1B)|SSB|VAM)P|D(?:DX5|IS)|RUFY|T(?:MSL|CF|P7)|ING)3|(?:C19orf4|PPP1R1|SNRP7|TRIP1|DDX2|RPS1)0|(?:C(?:19orf|CDC)2|LOC5103|RP(?:S6KA|L3|P2)|P(?:DLIM|RDX)|MRPS2|THAP|HES)5|(?:M(?:GC1033|AGED)|(?:TSC22|MX)D|TIMM4|ZNF(?:30|12)|CPSF|FOXP|LASS|OTUD|BAT|AFF|IL2|ETV)4|B(?:RUNOL[4-6]|A[DX])|(?:T(?:GIF2L|SNA)|RPS4|CAN|SMP|ML)X|JARID1[AD]|(?:GADD45|BCL11|DNMT3|PHOX2|SEMA4|T(?:IMM8|AF1)|HMG20|R(?:AB[27]|BM8)|ESRR|RXR)A|(?:S(?:LC18A|UCLG|CMH|F3B|TUB|MUG|[NO]D)|(?:ASPSC|CYB5)R|(?:CREB3|DDEF|NMRA|PLAG|RUVB|TBP)L|(?:(?:(?:ARFG|CDK2)|DAZ)A|P(?:AXI|QB)|TUL)P|LRRFIP|M(?:A(?:GEF|PK)|OR[GN])|P(?:DCD1|ICK)|(?:ADAR|NUC)B|CENTG|(?:AKR1|COBR|NOL)A|T(?:RIM2|IA|PI)|UBE2V|NAP1L|F(?:IP1L|OXM|OSL|LI)|(?:PTP|TR)MT|(?:NANO|CHE)S|KCNIP|(?:M(?:THF|YO)|S(?:FT2|RB)|PTC|TEA)D|RBMS|(?:AGG|NR2|PHT|U2A)F|E(?:WSR|BF|DN|NO|SX|TS)|G(?:RHL|OT|PD)|H(?:CLS|SF)|(?:XR|AS)CC|(?:BAR|P(?:IT|RR)|EV)X|ACO|DR\-|NME|CLK|ODC|VSX)1|Z(?:C(?:CHC1[47]|3H7A)|DHHC1?5|NF(?:32[36]|2(?:0[57]|38|6)|7(?:66|06|1)|19[23]|313|(?:25|72|16)0|5(?:03|10))|BTB4[36]|(?:NF(?:38|6[59])|BTB2)5|(?:NF(?:13|67)|BED)1|SWIM1|MAT[24]|(?:FP|HX)3)|(?:S(?:C(?:C\-11|AND)|PATS|NRPB|TAU)|CBFA2T|P(?:K(?:NOX|M)|SMC)|(?:MAP4|PC)K|R(?:3HDM|BM2|IOK)|MBTPS|T(?:AGLN|ROVE|OB)|(?:POU3|ABC|CST|MYE)F|PHLDA|E(?:IF5A|LF)|Z(?:BTB1|RSR)|APEX|(?:PGA|MD)M|RKHD|FEZF|KIF2|HCFC|DAB|GIT|HIP|(?:CF|FH)L|V(?:AX|IL)|ID)2|(?:HTATI|M(?:CT|EC)|NCB|UG|JD)P2|A(?:NXA11|CF)|DIABLO|S(?:NAPC[45]|MAD[2-4]|F1|PR)|DUSP2[26]|T(?:CEAL[26]|F(?:A(?:P2[AC]|M)|E[3B])|GIF1|AF9|PPP)|(?:TRIM6|USP3|CD5|SRP)9|PRKRIR|(?:RFXAN|MYL)K|G(?:T(?:F(?:3C[25]|2B)|PBP[16])|LYCTK|RHPR|PAM)|(?:NFATC|SOX1)[34]|(?:NUP10|RBM1|SPAG|CBX)7|(?:SM(?:AP1|CR7)|H(?:SPA1|NRPL)|ARNT|D(?:US3|T)|NOC2|BOL)L|Y(?:EATS4|WHA[EZ])|ANXA1|Z(?:NF(?:76|3)|BTB4)|C(?:REB1|BFB|AT)|DDX43|CEBPG|MAGOH|P(?:DE6H|AX3|OLI|URG|IR|LG)|PPP5C|(?:NCAL|IV)D|EEF1D|F(?:GF19|EZ1)|(?:ECSI|NN)T|(?:M(?:RPL|SI)|NR4A|USF)[12]|L(?:A(?:RP[14]|S1L)|UZP[12])|OLIG[13]|VPS4B|INSM1|W(?:HSC|ISP)2|SOCS4|DDX4|RBM3|T(?:HRA|SN)|MSRA|N(?:FI[BX]|ONO|MI|RL)|PRNP|IRF[16]|AVEN|(?:RFC|SSX)[23]|LHX[24]|UBB|XG)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.12 = 0.12 seconds
  * Elapsed CPU time:
     - User: 0.12
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 3
  * Maximum resident set size (RSS: memory) (kiB): 42020
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


hocomoco
^hocomoco__(?:(?:(?:(?:(?:(?:(?:NR1D1_HUMAN\.H11MO\.0|FOXJ3_MOUSE\.H11MO\.1|(?:(?:(?:FOXJ3|MAF)|MEIS1)|NANOG)_HUMAN\.H11MO\.1|SOX10_HUMAN\.H11MO\.0|SOX10_MOUSE\.H11MO\.0|(?:(?:NR1H3|(?:N(?:R1H4|FAC1|KX61)|OLIG2|P(?:PAR|TF1)A|RFX1|MAFF))|SOX9)_HUMAN\.H11MO\.[01]|(?:TWST1|P[67]3|SP4)_MOUSE\.H11MO\.[01]|KAISO_MOUSE\.H11MO\.[0-2]|RARG_HUMAN\.H11MO\.[01]|ATF2_HUMAN\.H11MO\.[01]|COT2_MOUSE\.H11MO\.[12]|COT1_MOUSE\.H11MO\.0|BRAC_(?:HUMAN\.H11MO\.1|MOUSE\.H11MO\.0)|RXRG_MOUSE\.H11MO\.[01]|SP2_(?:HUMAN\.H11MO\.1|MOUSE\.H11MO\.0)|WT1_(?:HUMAN\.H11MO\.1|MOUSE\.H11MO\.0)|ZFX_MOUSE\.H11MO\.[01])|(?:(?:(?:(?:(?:(?:(?:(?:ATF6A|RXRG)|MZF1)|GLI3)|RFX3)_H|N(?:R6A1|FAC2)_H|(?:E(?:PAS1|RR3|2F7)|HNF4G|NFKB2)_H|(?:CEBPG|F(?:OXO3|EV)|M(?:EIS2|AFB|BD2)|NFAC3|S(?:R(?:BP2|Y)|MAD3|P3)|(?:ATOH|FOXI|EVI|STF)1|THA11|A(?:LX1|P2B|TF1|HR)|E(?:2F[25]|LK1|TV4|HF)|HXA9|DBP)_H|Z(?:N322|IC1)_H|SOX3_H|ARNT_H)|REL_H)|(?:B(?:ATF3|HA15)|FOXA3|N(?:R(?:2C|5A)2|KX25|DF2)|PKNX1|S(?:TAT6|ALL4|MAD4|OX4)|TF(?:7L1|E3)|Z(?:KSC1|IC3)|ETV2|H(?:NF6|XB4)|IRF[38]|MYOG|ETS2|CRX)_H)|KLF3_H)UMAN\.H11MO\.0)|(?:(?:(?:(?:(?:(?:(?:CEBPD|NKX32|RORG|ITF2)|PDX1)|TBX3)|PRD16)|ARNT)|(?:CEBPG|F(?:OXO3|EV)|M(?:EIS2|AFB|BD2)|NFAC3|S(?:R(?:BP2|Y)|MAD3|P3)|(?:ATOH|FOXI|EVI|STF)1|THA11|A(?:LX1|P2B|TF1|HR)|E(?:2F[25]|LK1|TV4|HF)|HXA9|DBP))_M|Z(?:(?:FP57|IC1)|N322)_M)OUSE\.H11MO\.0)|(?:N(?:R4A1|FYC)|PO2F2|SRBP1|ZBT7A|EL(?:F3|K4)|IRF2|KLF6)_MOUSE\.H11MO\.0)|(?:FOXM|ZEB)1_MOUSE\.H11MO\.0)|LEF1_MOUSE\.H11MO\.0)\.B|(?:NR1D1_MOUSE\.H11MO\.0|FOXJ3_MOUSE\.H11MO\.0|(?:(?:(?:FOXJ3|MAF)|MEIS1)|NANOG)_HUMAN\.H11MO\.0|SOX10_HUMAN\.H11MO\.1|SOX10_MOUSE\.H11MO\.1|(?:(?:(?:(?:(?:GATA2|PBX3)|(?:(?:RXRA|COT2)|PDX1))|TAL1)|(?:TWST1|P[67]3|SP4))|RFX5)_HUMAN\.H11MO\.[01]|(?:(?:(?:MEIS1|(?:ANDR|MAF))|NANOG)_M|P(?:RDM5|O3F2)_M|(?:N(?:R1H4|FAC1|KX61)|OLIG2|P(?:PAR|TF1)A|RFX1|MAFF)_M|SOX9_M)OUSE\.H11MO\.[01]|(?:G(?:ATA1|CR)|H(?:NF1B|SF1)|(?:M(?:YOD|XI)|FLI)1|P(?:O5F1|PARG|53)|S(?:TAT|P)1|RFX2|E(?:2F4|GR2|SR[12])|MA(?:F[GK]|Z)|NFIC|PRGR|VDR)_(?:HUMAN\.H11MO\.[01]|MOUSE\.H11MO\.[01])|Z(?:N(?:263_HUMAN\.H11MO\.[01]|335_(?:HUMAN\.H11MO\.[01]|MOUSE\.H11MO\.[01]))|FX_HUMAN\.H11MO\.[01])|(?:NR1H3|RXRA)_MOUSE\.H11MO\.[0-2]|KAISO_HUMAN\.H11MO\.[0-2]|RARA_MOUSE\.H11MO\.[0-3]|COT2_MOUSE\.H11MO\.0|PBX1_(?:HUMAN\.H11MO\.0|MOUSE\.H11MO\.[01])|BRAC_HUMAN\.H11MO\.0|(?:BATF|SOX2)_(?:HUMAN\.H11MO\.[01]|MOUSE\.H11MO\.[01])|(?:RARA|ANDR)_HUMAN\.H11MO\.[0-2]|SP2_HUMAN\.H11MO\.0|WT1_MOUSE\.H11MO\.1)\.A|(?:(?:(?:(?:(?:(?:(?:BACH1|PO3F2)|(?:BC11A|FOX[HP]1|HXB13|MEF2B|DUX4|ETV1|SIX1))|TFAP4)|ZN274)|(?:N(?:R4A1|FYC)|PO2F2|SRBP1|ZBT7A|EL(?:F3|K4)|IRF2|KLF6))|(?:FOXM|ZEB)1)|LEF1)_HUMAN\.H11MO\.0\.A|(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:FOXP|ATF)2|HNF1A)|NKX22)|(?:NR1D2|CDX4))|SP7)|(?:GATA2|PBX3))|TAL1)|REL)|(?:B(?:ATF3|HA15)|FOXA3|N(?:R(?:2C|5A)2|KX25|DF2)|PKNX1|S(?:TAT6|ALL4|MAD4|OX4)|TF(?:7L1|E3)|Z(?:KSC1|IC3)|ETV2|H(?:NF6|XB4)|IRF[38]|MYOG|ETS2|CRX))|KLF3)_MOUSE\.H11MO\.0\.A|(?:R(?:UNX[1-3]|EST)|A(?:SCL1|P2[AC]|TF[34])|B(?:ACH2|HE40)|C(?:REB1|TCFL|EBP[ABE]|DX2)|FO(?:X(?:A[12]|O1)|SB)|G(?:FI1B|A(?:BPA|TA[346])|RHL2)|H(?:NF4A|SF2|TF4)|M(?:EF2[ACD]|YCN|ITF|AX)|N(?:F(?:KB1|Y[AB])|KX21|DF1)|P(?:RD(?:14|M1)|AX5)|NF2L2|S(?:TA(?:5[AB]|T[2-4])|MAD2|NAI2|PI[1B]|IX2|RF|UH)|T(?:B(?:X21|P)|EAD[14]|F(?:7L2|65|E2)|CF7)|(?:T(?:GIF|YY)|ISL)1|Z(?:FP42|N(?:143|281)|BT17)|KLF(?:15|[45])|(?:FOXK|COE|NRF|TAF)1|BMAL1|E(?:R(?:R[12]|G)|2F[136]|GR1|LF[15]|VX2)|IRF[14]|JUN[BD]|ETS1|OTX2|NFE2|L(?:HX2|YL1))_(?:HUMAN|MOUSE)\.H11MO\.0\.A|FOSL[12]_(?:HUMAN|MOUSE)\.H11MO\.0\.A|(?:NR1D1_HUMAN\.H11MO\.1|N(?:R1I[23]|FIA)_MOUSE\.H11MO\.1|(?:N(?:R1I[23]|FIA)_H|TH[AB]_H)UMAN\.H11MO\.1|HAND1_HUMAN\.H11MO\.[01]|Z(?:N(?:(?:350|418|394|554)|708)_HUMAN\.H11MO\.1|BTB4_HUMAN\.H11MO\.[01])|RARG_HUMAN\.H11MO\.2)\.D|(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:NR6A1|GLI3)|M(?:YF5|SX3))|SALL1)|THB)|(?:SOX17|TFDP1|ETV5))_M|ZBT(?:18|B6)_M)|(?:HXB1|TBX2)_M)|(?:A(?:RNT2|P2D|TF7)|B(?:ARX2|HE41)|CEBPZ|FOX(?:C2|D1|P3)|G(?:LI(?:S3|2)|ATA5)|H(?:X(?:D(?:1[03]|[49])|A[57]|B6|C[68])|LTF|E(?:S1|Y2))|CDC5L|M(?:LXPL|AFA|YBB|SX2|CR)|N(?:R(?:1H2|2F6|4A3)|FAT5)|O(?:NEC2|TX1)|ARI3A|P(?:ITX2|RRX1|O(?:4F2|6F1)|PARD|AX[238]|URA)|S(?:OX1[358]|MAD1)|T(?:E(?:AD3|F)|FCP2|BX5)|(?:FOXF|HMGA)[12]|Z(?:FHX3|N(?:148|423)|EP[12])|RARB|DLX2|E(?:GR[34]|LK3)|IRF5|GCM1)_M)|(?:BRCA|CXXC|HESX|RREB|NR0B|PLAG|E4F|SPZ|TLX)1_M)|(?:FU|H)BP1_M)|UBIP1_M)OUSE\.H11MO\.0\.D|(?:(?:(?:(?:(?:(?:(?:(?:NKX22_|(?:S(?:HOX|OX1)_|TBX1_|(?:(?:ML|R)X|GSC)_))|(?:B(?:CL6B|SH)|CREB[35]|E(?:OMES|2F8|TV[37])|FOX(?:D2|L1|O6)|G(?:LIS[12]|RHL1)|H(?:X(?:A(?:11|2)|C1[0-3]|D(?:1[12]|[38])|B[23])|OMEZ|E(?:S[57]|Y1)|IC2|MX[1-3]|SF4)|BHE2[23]|M(?:EIS3|YNN|GAP|SX1)|N(?:R(?:2E1|L)|KX(?:23|62)|OTO)|O(?:LIG[13]|NEC3)|CENPB|P(?:5F1B|ITX3|RDM4|O(?:2F3|3F[34]|4F[13]|6F2)|AX[147])|S(?:P(?:DEF|IC)|HOX2|OX(?:11|21|[78]))|T(?:BX(?:1[59]|4)|F2LX)|(?:BARH|CR3L|SCRT|GSX|HME)[12]|(?:MEO|EM|GB)X[12]|V(?:ENTX|AX[12]|SX1)|FIGLA|(?:T(?:GIF|YY)|ISL)2|(?:RHXF|CPEB|FOX[BG]|HSFY|[DH]MBX|M(?:IXL|ESP|NX)|P(?:ROX|LAL)|ESX|TBR)1|Z(?:F64A|N(?:2(?:19|82)|333|410|5(?:24|89)|7(?:13|40))|B(?:ED1|T(?:49|7B))|KSC3|SC16|IC4)|KLF1[346]|(?:GMEB|ZN(?:23|65)|RAX|JDP)2|PHX2[AB]|L(?:MX1[AB]|BX2|HX[489])|RFX4|A(?:LX[34]|RX)|D(?:LX[146]|UXA)|I(?:RX[23]|SX)|GCM2|BPTF|GSC2|D(?:PR|RG)X)_)|(?:Z(?:N78|SCA)|ID)4_)|(?:HXB1|TBX2)_)|(?:A(?:RNT2|P2D|TF7)|B(?:ARX2|HE41)|CEBPZ|FOX(?:C2|D1|P3)|G(?:LI(?:S3|2)|ATA5)|H(?:X(?:D(?:1[03]|[49])|A[57]|B6|C[68])|LTF|E(?:S1|Y2))|CDC5L|M(?:LXPL|AFA|YBB|SX2|CR)|N(?:R(?:1H2|2F6|4A3)|FAT5)|O(?:NEC2|TX1)|ARI3A|P(?:ITX2|RRX1|O(?:4F2|6F1)|PARD|AX[238]|URA)|S(?:OX1[358]|MAD1)|T(?:E(?:AD3|F)|FCP2|BX5)|(?:FOXF|HMGA)[12]|Z(?:FHX3|N(?:148|423)|EP[12])|RARB|DLX2|E(?:GR[34]|LK3)|IRF5|GCM1)_)|(?:BRCA|CXXC|HESX|RREB|NR0B|PLAG|E4F|SPZ|TLX)1_)|(?:FU|H)BP1_)H|U(?:BIP1|NC4)_H)UMAN\.H11MO\.0\.D|(?:NR1D1_MOUSE\.H11MO\.1|N(?:R1I[23]|FIA)_MOUSE\.H11MO\.0|(?:N(?:R1I[23]|FIA)_H|TH[AB]_H)UMAN\.H11MO\.0|(?:(?:(?:(?:(?:HAND1|RARG)|RFX3)|NFAC2)|(?:RFX6|SP5))_MOUSE|T(?:F2L1|HA)_MOUSE)\.H11MO\.[01]|(?:PATZ|VEZF)1_HUMAN\.H11MO\.[01]|ZN(?:(?:(?:350|418|394|554)|708)_HUMAN\.H11MO\.0|(?:F85|134|F41|341|563|770)_HUMAN\.H11MO\.[01]|816_HUMAN\.H11MO\.[01])|ATF2_HUMAN\.H11MO\.2|PBX1_(?:HUMAN\.H11MO\.1|MOUSE\.H11MO\.2)|COT1_MOUSE\.H11MO\.1|BRAC_MOUSE\.H11MO\.1|COT1_HUMAN\.H11MO\.[01]|SP2_MOUSE\.H11MO\.1|WT1_HUMAN\.H11MO\.0)\.C|(?:(?:(?:(?:(?:(?:(?:(?:FOXP2|HNF1A)|(?:CEBPD|NKX32|RORG|ITF2))|TBX3)|(?:SOX17|TFDP1|ETV5))_H|ZBT(?:18|B6)_H|(?:PRDM6|SMCA1|(?:FEZF|THAP)1|Z(?:FP28|N(?:F76|1(?:36|40)|2(?:14|5[07]|6[04])|3(?:2[09]|31|8[24])|4(?:36|49)|5(?:28|4[79]|8[26])|(?:31|46)7|490|6(?:67|80)|F18|768)|3[25]4A|BT(?:14|48)|(?:FP8|N50)2|N121|SC(?:22|31)|IM3)|HXC9|OSR2|OZF)_H|KLF(?:12|9)_H|ZNF8_H)|(?:GFI|HXA)1_H)|(?:C(?:LOCK|REM|DX1)|FOX(?:C1|J2|O4)|H(?:I(?:F1A|NFP|C1)|X(?:A1[03]|B[78])|LF)|(?:FOXQ|INSM|HEN)1|IKZF1|M(?:ECP2|YF6|TF1)|N(?:R(?:2(?:C1|E3)|4A2)|FAC4|OBOX|KX(?:28|31))|OVOL1|ARI5B|P(?:RRX2|O[23]F1|AX6|BX2|EBB|IT1)|NF2L1|S(?:(?:MCA|OX)5|NAI1)|R(?:(?:XR|EL)B|ORA)|AIRE|DLX3|ELF2|IRF[79]|CUX1|TFEB|KLF8)_H)|LHX3_H)UMAN\.H11MO\.0\.C|(?:(?:(?:(?:(?:(?:(?:BACH1|(?:E(?:PAS1|RR3|2F7)|HNF4G|NFKB2))|SOX3)|(?:DMRTB|FOXL2|MSGN1|PRDM9|SIX4))|ZN431)|(?:GFI|HXA)1)|(?:C(?:LOCK|REM|DX1)|FOX(?:C1|J2|O4)|H(?:I(?:F1A|NFP|C1)|X(?:A1[03]|B[78])|LF)|(?:FOXQ|INSM|HEN)1|IKZF1|M(?:ECP2|YF6|TF1)|N(?:R(?:2(?:C1|E3)|4A2)|FAC4|OBOX|KX(?:28|31))|OVOL1|ARI5B|P(?:RRX2|O[23]F1|AX6|BX2|EBB|IT1)|NF2L1|S(?:(?:MCA|OX)5|NAI1)|R(?:(?:XR|EL)B|ORA)|AIRE|DLX3|ELF2|IRF[79]|CUX1|TFEB|KLF8))|LHX3)_MOUSE\.H11MO\.0\.C|(?:ASCL2|BARX1|D(?:MRT1|LX5)|FOXD3|DDIT3|N(?:FI(?:L3|B)|GN2)|OVOL2|PITX1|T(?:BX20|EAD2)|E(?:TV6|VX1)|GLI1|MYBA|CUX2|VSX2|ZIC2|LHX6)_(?:HUMAN\.H11MO\.0\.D|MOUSE\.H11MO\.0\.C)|PROP1_(?:HUMAN\.H11MO\.0\.D|MOUSE\.H11MO\.0\.C)|(?:(?:(?:(?:BCL6|CTCF)|FOS)|JUN)_|KLF1_|MY[BC]_)(?:HUMAN|MOUSE)\.H11MO\.0\.A|USF[12]_(?:HUMAN|MOUSE)\.H11MO\.0\.A|XBP1_(?:HUMAN\.H11MO\.0\.D|MOUSE\.H11MO\.0\.C))$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.93 = 0.93 seconds
  * Elapsed CPU time:
     - User: 0.88
     - Sys: 0.04
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 35
  * Maximum resident set size (RSS: memory) (kiB): 127308
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 16
  * Exit status: 0


homer
^homer__(?:(?:A(?:CTYKNATTCGTGNTACTTC_Mouse_Recombination_Hotspo|AYTAGGTCA_RORg|GGTGTGAAM_Tbe)|CTYTCTYTCTCTCTC_GAGA\-repea)t|T(?:GCAGTTCCAANAGTGGCCA_CTCF\-SatelliteElement|TGCCAAG_NF1\-halfsite|BGCACGCAA_Arnt_Ahr)|A(?:TTTGCATAACAATG_OCT4\-SOX2\-TCF\-NANO|CAGGAAGTG_ER|ACAGCTG_Myo)G|A(?:(?:CCGTGACTAATTNN_PAX3_FKHR|ACAGGAAAT_EWS_FLI1)|TTTCCTGTN_EWS_ERG)\-fusion|CACAGCAGGGGG_Unknown\-ESC\-element|A(?:(?:(?:NTTMRCASBNNNGTGYKAAN_Brachyury|AC(?:TACAATTCCCAGAATGC_GFY\-Staf|CGGAAGT_ETS)|GGTGHCAGACA_Tbox_Smad|T(?:GCATAATTCA_Pit1\+1bp|T(?:AACACCT_Eomes|GC(?:ATCAT_Chop|GCAAC_CEBP)|TTCCATT_NFAT))|CTACAATTCCC_GFY|GCCAATCGG_NFY)|GGTCAAGGTCA_RARg)|DGGYAGYAGCATCT_PRDM9)|(?:GG(?:AGCTGTCCATGGTGCTGA_REST\-NRS|TCCCTAGGGA_EB)|A(?:T(?:TTCCCAGVAKSCY_ZNF143_STA|AGTGCCACCTGGTGGCCA_CTC)|V(?:YTATCGATAD_DRE|CAGGAAGT_EH)|CATCCTGGT_SPDE)|N(?:AGTTTCABTHTGACTNW_bZIP_IR|TGGGTGTGGCC_EKL)|CGGAAGTGAAAC_PU\.1\-IR|TTCGCGCGAAAA_E2|GTGCGCATGCGC_NR|RTCATGTGAC_MIT|DATGASTCAT_BAT)F|C(?:GG(?:CTGCNGNNNNCAGATAA_GATA_SCL|TTGCCATGGCAAC_RFX)|NNBRGCGCCCCCTGSTGGC_BORIS|TGGCAGGCTGCCA_Tlx_|C(?:ATATATGGNA_CArG|WGGAATGY_TEAD[24])|AAACCACAG_RUNX)|(?:AG(?:TAAACAAAAAAGAACANA_FOXA1_A|GTCANTGACCTN_FX)|NGAGGTCANNGAGTTCANNN_VD|TAGGGCAAAGGTCA_RX)R|(?:N(?:A(?:AACCGGTTCAAACCGGTT_Tcfcp2l|TTTCCNGGAAAT_STAT)|N(?:TGTTTATTTTGGCA_NF1_FOXA|VVCAGCTGBN_Ascl|ATGASTCATH_Fra)|RYTTCCGGH_Fli)|(?:GA(?:ATGGAAAAAATGAGTCAT_NFAT_|TGACTCATCN_Jun\-)A|N(?:ATGTTGCAA_CEBP_A|YYTGTTTACHN_FOX))P|A(?:(?:A(?:AGTAAACA_FOXA1_GSE2683|CCGGAAGT_ETV)|C(?:TTTCACTTTC_PRDM|AGGAAGTG_ETS)|GGCCTAG_ZNF71|TGMATATDC_Pit)|AACCACAAA_RUNX)|C(?:NCTTCCNGGAAGN_Stat3\+il2|T(?:TGGCACNGTGCCAA_N|GCGCATGCGC_NR)F|AAGATGGCGGC_YY|WGGCGGGAA_E2F|TGTTTAC_Foxo)|G(?:GTTAAACATTAAC_Hn|ATGACGTCA_At)f|G(?:GTTGCCATGGCAA_Rf|KVTCADRTTWC_Si)x|G(?:CCATCTGTT_NeuroD|SCTGTCACTCA_PBX|GCCCCGCCCCC_Sp|NCACGTG_BMAL)|R(?:ACAGCTGTTBH_HLH\-|SCACTYRAG_Nkx2\.)|(?:A(?:AGCACTTAA_Nkx3|GAGGAAGTG_PU)|GKTAATGR_Nkx6)\.|(?:G(?:TCCCCAGGGGA_EB|GTCACGTGA_US)|GAAAGTGAAAGT_IR|AACCGGAAGT_EL)F|DDAAAAATTTTY_SFP|A(?:CTGATAAGA_PQM|TGACTCATC_AP)\-|CAGATAAGGN_Gata|H(?:TTTCCCASG_Rbpj|ACTTCCGGY_Elk)|T(?:CA(?:CGTGAYH_Cbf|TCAATCA_Pdx)|GCGTGGGYG_Egr)|CTAATKGV_Isl)1|GGGRAARRGRMCAGMTG_RBPJ_Ebox|N(?:N(?:N(?:VCTGWGYAAACASN_Fox_Ebox|NNBAGATAWYATCTVHN_GATA)|CACCTGCN_E2A)|AGATWNBNATCTNN_GATA|NNCTTTCCAGGAAA_Bcl6|CTGGAATGC_TEAD|HAACBGYYV_BMYB|TATYGATCH_HNF6)|(?:A(?:GAT(?:STNDNNDSAGATAASN|(?:GKDGAGATAAG|AASR))_GATA|ACATGCCCAGACATGCCCN_p5|CATGCCCGGGCAT_p5)|N(?:NNGCATGTCCNGACATGCC_p6|CYAATAAAA_HOXD1)|GGNTCTCGCGAGAAC_ZBTB3|C(?:C(?:TGTCAATCAN_Pb|WTTGTY_So)x|GTGGGTGGTCC_GLI|TTCCGGGAA_Stat)|CNGTCCTCCC_Znf26|ADBTAATTAR_Lhx|TWGTCTGV_Smad)3|(?:A(?:AACYKGTTWDACMRGTTTB_GRHL|C(?:AGCTGCTG_Tcf1|WTCAAAGG_TCFL)|TATGCAAAT_Oct)|G(?:GGGGAATCCCC_NFkB\-p50_p5|A(?:TGACTCAGCA_NF\-E|AASYGAAASY_IRF)|YCATCMATCAT_HOXA)|(?:GT(?:TGCCATGGCAACM_Rf|CATAAAAN_Cd)|CCCATTGTTC_So|TAATTAGN_Lh)x|C(?:GGTCACGCCAC_Srebp|CCACGTGCT_Pho|TGTCTGG_Smad)|N(?:ATGASTCABNN_Fosl|WAACCACADNN_RUNX|GCGTGGGCGGR_Egr|YTAATCCYB_Otx)|(?:CTTGTTTACATA_Fox|NCCTTATCTC_Gat)a|(?:NRRTGACGTCAT_At|GTCACGTGGT_Us)f|HTGCTGAGTCAT_Nrf|RCCATMTGTT_Olig|TGCTGAGTCA_Bach|TTCAAGGTCA_Nr5a|BTCAAGGTCA_Nr5a)2|(?:CCATTGTATGCAAAT_Oct4_Sox1|N(?:TAATTDGCYAATTANNWWD_Pax|GRTGACGTCAY_Atf)|TGACCTTTNCNT_Nur7|TAATC(?:HGATTAC|AATTA)_Pax)7|(?:A(?:(?:AAGTAAACA_FOXA1_GSE2782|GGTCTCTAACC_PRDM1|TTTGCATAA_Oct)|CTGAAACCA_IRF)|G(?:AGGTCAAAGGTCA_TR|GCGGGAAAH_E2F)|TGATTRATGGCY_Hoxb|N(?:TTTCCAGGAAA_STAT|BWGATAAGR_Gata|RYTTCCGGY_Elk|AHCAGCTGD_Ap)|(?:ACATCAAAGGGA_Tc|GCCACACCCA_Kl)f|MTGATGCAAT_Atf|YCTTTGTTCC_Sox)4|(?:NNTTCTGGAANNTTCTAGAA_H|ATGACGTCATCC_c\-Jun\-C|GGGTTACTANAGGTCA_LX|AGAACAGNCTGTTCTT_A|TGACCTTTGCCCCA_PPA|A(?:AGGTCACNGTGACC_E|GTTTCAGTTTC_IS)|TTCTAGAABNTTCTA_H|CGGTGACGTCAC_C)RE|G(?:G(?:AAATTCCC_NFkB\-p65\-Rel|C(?:CAT(?:AAATCA_H(?:OXA|oxc)9|TAAC_Nanog)|AATTAAA_Unknown)|YCATAAAW_caudal|GGGGGG_Maz)|TCATGCHTGRCTGS_Pax8|CTGASTCAGCA_MafK|HCACGTG_CLOCK)|GT(?:AGGTCACTGGGTCA_Reve|GACCTTGA_Esr)rb|AACAGGAAGT_Ets1\-distal|CCAGGAACAG_AR\-halfsite|(?:(?:(?:A(?:GGAAACAGCTG_ETS|ACAGCTGTTHN)|GCCACGTG)_E|GGTTGCCATGGCAA_X)\-|C(?:TATAAAAGCSV_TATA|CGGTCACGTGA_E)\-)box|(?:ATGCCCTGAGGC_AP\-2alph|CA(?:GAGGNCAAAGTCCA_HNF4|AAGGTCAG_Err)|GGTCANYTGAGGWCA_THR|YTAATYNRATTA_Phox2|A(?:TCACCCCAT_Srebp|CAGCTGTTN_Ptf)1|(?:GCACGTACCC_HIF|CCAAAAATAG_Mef)2|TACGTGCV_HIF\-1)a|SCCT(?:SAGGSCAW_AP\-2gamma|AGCAACAG_Rfx5)|(?:ACAGGATGTGGT_ETS_RUN|GCTAATCC_CR)X|CCTTTTATAGCC_TATA\-Box|(?:AWWNTGCTGAGTCAT_Bac|NNTGTGGATTSS_Fox)h1|(?:A(?:GGGGATTTCCC_NFkB\-p6|TTTCTNAGAAA_STAT|ASCACTCAA_Nkx2\.)|G(?:CAGCCAAGCGTGACC|TCACGCTCNCTGA)_PAX|BAACAGCTGT_Myf|ACVAGGAAGT_ELF|DGGGYGKGGC_KLF)5|HWWGTCAGCAWWTTT_MafF|NAGAACAGNCTGTTCT_GRE|GCTGTGGTTT_RUNX\-AML|V(?:AGRACAK(?:WCTGTYC_GRE|NCTGTBC_PR)|NAVCAGCTGGC_Atoh1|DTTTCCCGCCA_E2F7|BSYGTCTGG_Smad4|GCTGWCAVB_Meis1)|(?:ANTTCTTAAGAA_STAT|TTCCKNAGAA_STAT|CCATTGTTNY_Sox)6|D(?:CYAAAAATAGM_Mef2c|ATGASTCATHN_Atf3)|(?:GGTGYTGACAGS_Tbx2|CCWTTGTYYB_Sox1)0|KC(?:ACGTGMCN_bHLHE40|CACGTGAC_NPAS2)|A(?:GCAGCTGCTGC_Myo|TGACGTCATCN_Jun)D|AAAGRGGAAGTG_SpiB|AAATCACTGC_Gfi1b|A(?:TTCTCGCGAGA_G|GGCCTGG_Z)FX|(?:AACCGGAAGT_GABP|TGCTGACTCA_Maf)A|ACCACGTGGTCN_Max|(?:GNCCACGTGG_[cn]|NCCACGTG_c)\-Myc|R(?:TACGTGC_HIF\-1b|GGATTAR_GSC)|(?:TGGCAGTTGG_A|GGCVGTTR_)MYB|GGCGGGAARN_E2F6|ACATCAAAGG_Tcf3|AGGTGTCA_Tbx5|ANCAGCTG_SCL)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:04.16 = 4.16 seconds
  * Elapsed CPU time:
     - User: 3.76
     - Sys: 0.38
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 339
  * Maximum resident set size (RSS: memory) (kiB): 1257744
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 16
  * Exit status: 0


idmmpmm
^idmmpmm__(?:Eip74EF|abd\-A|Antp|e(?:ms|ve|n)|o(?:vo|c)|Ubx|f(?:kh|tz)|hkb|nub|s(?:hn|na)|kni|t(?:ll|wi)|(?:Df|M[ae]|bc|ca|pr)d|vnd|(?:sr|us)p|hb|Kr|gt|dl|[Dh])$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 75%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 3536
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


jaspar
^jaspar__MA(?:0(?:080\.4|0(?:0[37]|24|35|5[28]|79|83|98)\.3|1(?:05\.4|(?:0[246]|1[2-4]|37|4[1358])\.3|54\.3)|(?:0(?:0[1259]|1[478]|2[78]|3[23679]|4[236-8]|50|6[0258]|7[56]|88|9[03-59])|1(?:0[038]|17|2[24]|3[1268]|4[0467]|5[0367]|62|97)|2(?:16|37|47|58)|4(?:52|6[1469]|7[2-5]|86|98)|5(?:1[0-2]|2[245]|9[28]))\.2|600\.2)|0(?:0(?:0[46]|1[3569]|2[23569]|3[018]|4[019]|5[1679]|6[3679]|7[0-478]|8[124-7]|9[1267])|1(?:0[179]|1[15689]|2[56]|3[059]|4[29]|5[12589]|6[013-9]|9[0-689])|2(?:0[1-4689]|1[0-2457-9]|2[0-24-9]|3[0-24-689]|4[0-35689]|5[0-4679]|6[47]|7[18]|8[14-689]|9[5-8])|3(?:0[03679]|1[034679]|3[17-9]|4[1256]|5[37]|6[459]|8[36])|4(?:0[2689]|18|[23]3|4[0235-9]|5[0146-9]|6[23578]|7[016-9]|8[0-589]|9[0-79])|37[12689]|5(?:1[3-9]|2[0136-9]|3[0-24-6]|4[1568]|5[014-68]|6[12689]|70|8[0458]|9[13-79])|6(?:0[1-9]|1[02-8]|2[0-8])|(?:1[78]|50|6[3-9]|[78][0-9])[0-9]|9(?:[01][0-9]|2[0-47-9]|3[13]|5[6-9]|6[03-8]|76|8[08]|9[278]))\.1|10(?:(?:0[125]|1[12]|21|47|5[1-3]|6[189]|7[04])|99)\.1)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.02 = 0.02 seconds
  * Elapsed CPU time:
     - User: 0.02
     - Sys: 0.00
  * CPU usage: 96%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 6296
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


neph
^neph__UW\.Motif\.0(?:0(?:0[1-57-9]|[34][49]|6[28]|[18][38]|95)|104|3(?:28|60|73)|139|4(?:11|69)|(?:[03]5|57)6|077|6(?:16|57))$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 3028
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


predrem
^predrem__nrMotif(?:1(?:30?2|13[68]|41[27]|933|06|5[67]|75)|(?:14|9)95|187[15]|1056|2(?:0(?:[09][06]|8)|3(?:25|3)|(?:02|6)9|1(?:7[15]|89)|416|20|51)|(?:120|2(?:30|5[89]|9))0|(?:1(?:14|4[56])|249)1|(?:135|2(?:21|52|16))7|1(?:[17]1|29)4|(?:1(?:01|77)|2(?:34|11|46|8))8|503|340|7(?:71|[18]7)|8(?:04|18)|51|95|4)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 3920
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


scertf
^scertf__(?:harbison\.(?:DAL80|GLN3|HAP4|MSN[24]|MOT2|THO2|(?:NDD|SUT)1|ZAP1)|badis\.YER130C|morozov\.(?:MET28|CUP9)|pachkov\.(?:SPT1|HAP)5|(?:macisaac\.RTG|spivak\.HAP|badis\.GZF)3|(?:macisaac\.(?:ACE|HAP)|badis\.(?:ABF|FKH))2|(?:m(?:acisaac\.RFX|orozov\.MCM)|(?:macisaac\.(?:CB|SN)|badis\.FZ)F|(?:macisaac\.J|spivak\.P)HD|pachkov\.(?:HSF|ORC)|spivak\.(?:BAS|CRZ|RPH)|(?:spivak\.RL|badis\.HC)M|spivak\.TEC|badis\.REI|badis\.GIS|badis\.YOX|foat\.[DM]IG|foat\.OPI|foat\.FKH|zhu\.FHL|zhu\.GAT)1|morozov\.ARG80|(?:morozov\.PHO|spivak\.GCN)4|(?:morozov\.SM|zhu\.SF)P1|spivak\.(?:TYE7|YAP6)|(?:spivak\.CIN|badis\.SWI)5|badis\.CST6|badis\.TOS8|zhu\.(?:NHP6[AB]|MIG[23])|zhu\.PHO2)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.04 = 0.04 seconds
  * Elapsed CPU time:
     - User: 0.04
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 2
  * Maximum resident set size (RSS: memory) (kiB): 7600
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


stark
^stark__(?:TGGAGGDGGWAHTMATBVRTGWDDDRKKMW|(?:R(?:RAYATTYBKSGVATKVC|AAMGGRTT|TAA(?:A[CT]|M))|AA(?:TTAANNNNNCATN|CTG)|(?:A(?:A(?:NTNTAATGA|HKMTHB)|WNTGGGT)|TGANT|G(?:CAA|GGT))C|TWTKACKTAAN|(?:GNCTANWWA|CAAT)T|S(?:MATAAA|GG)AA|(?:TT(?:CCSGG|AYGT)|A(?:AAT|TCA)T|CAAC|MAAC)A|CACTTR)A|K(?:NVNVBYTAATKRSBHNVD|HGATAASR)|(?:ANHDDBHGATAASSDNN|R(?:BYGTGRGAAMC|TATATRTR|RCAGGTG))B|(?:TNRCGCNYNATTAAT|(?:GGGGAWTCC|CWYBD)C|KYTAATKDN|RA(?:CASCTG|TTAM)|ATGCGGG|YGYGGT)Y|R(?:WWWASWBDYSKNM|(?:CGCMATT|ATTAA))W|(?:TG(?:CATAATTAATTA|GCGC)|G(?:GGGAWYCM|TCANTNAA))C|B(?:YRHBACAAWGTDDB|CATAAATYA)|MGAADMGAADMGAAD|V(?:RGKTYAWTGAMMYY|SNKTDATKRCNV|ATTWGCAT)|(?:SVTAATYGATTAN|MVHTAAKCC|GRGGTCAY|T(?:YAAGTG|TAT))S|(?:RRNNNMCACCT|GAGGAA)GC|Y(?:SAAGGWCRCHRM|TAATGAVS|GATA(?:AG)?C)|(?:MATTAAWNATGC|YTAWWWWTA|CMGGAA|CASGTA|TAATT)R|STATAWAWRSVVV|WHWWWWWWWWKK|TGGCACGTGYYA|(?:R(?:WWNTNRCACY|AGTGAAAG)|(?:CCTTTGATC|TTAA|GCCA)T|TCAWTTAAM|WCYGGTT|CACATG)T|GGGGAMWWCCM|H(?:AATTAYGCR|SWAACHG)H|MRYTTCCGYY|STATAWAWR|T(?:GACGTCAT|AAATAG)|CTCRTAAAW|(?:A(?:WCAGGTG|CATGT)|GCAGSTG)K|BYAATTARH|TGACGTCA|GTACGTG|(?:TTTA|CAG[GS])TG)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.06 = 0.06 seconds
  * Elapsed CPU time:
     - User: 0.06
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 40160
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


swissregulon
^swissregulon__(?:(?:hs__(?:(?:(?:(?:(?:(?:ARNT_ARNT2_BHLHB2_MAX_MYC_US|TGI|EB|M[TZ]|GZ)F|H(?:OXA9_MEIS|IC|MX|ES)|E(?:WSR1\-FL|V)I|P(?:OU[16]F|ATZ|[BD]X)|TFDP|FOX[LNQ]|TEAD|MYOD|NR(?:3C|6A|F)|[CR]REB|SPZ|ALX|YY)1|(?:FOS_FOS_B_L1__JUN_B_D|TAL1_TCF_3_4_12|HOX_A(?:6_A7_B6_B7|4_D4|5_B5)|FOX_(?:F1_F2_J1|(?:(?:C1_C|D1_D)|I1_J)2)|MEF2_A_B_C_D|N(?:ANOG_mouse|FY_A_B_C)|S(?:OX_8_9_10|TAT5_A_B)|TFAP2_A_C)_|DMAP1_NCOR_1_2__SMARC|HBP1_HMGB_SSRP1_UBTF|R(?:FX1\.\.5_RFXANK_RFXAP|XR(?:A_VDR_dimer|_A_B_G)_|BPJ|ORA)|(?:TLX1\.\.3_NFIC|POU5F1_SOX2)_dimer_|(?:LEF1_TCF7_TCF7L|H(?:NF4A_NR2|S)F|SREBF|GTF2A|N(?:KX6\-|R5A|HLH)|HAND|HMGA|(?:PRR|MS)X|E(?:TS|N)|VSX)1_2|A(?:DNP_IRX_SIX_ZHX|IRE|TF[246])|(?:NFKB1_REL_REL|ESRR|H[IN]F1)A|(?:AHR_ARNT_ARNT|TFCP|FOSL|MYBL|BACH|KLF1|NR4A|CUX|LMO)2|N(?:KX2\-3_NKX2\-5|FIX)|(?:CEBPA_B_DDIT|ATF5_CREB|FOX[DP]|NFIL|TP5)3|T(?:CF4_dimer|FAP(?:2B|4)|LX2|BP)|S(?:MAD1\.\.7_9|P(?:I[1B]|1)|OX[25]|RY)|STAT2_4_6|(?:(?:FOXO1_3|(?:CDX|ELF)1_2|LHX3)_|POU3F1\.\.|N(?:KX2\-1_|R1H))4|(?:POU2F|SNAI|PITX|RUNX|EGR|GLI)1\.\.3|NFATC1\.\.3|ONECUT1_2|NKX2\-2_8|GATA1\.\.3|(?:E2F1\.\.|TBX4_)5|Z(?:IC1\.\.3|BTB1?6|FP161|NF(?:14[38]|238|384)|NF423|EB1)|(?:ARID5|TFE)B|P(?:AX(?:3_7|[24-68])|PARG)|N(?:FE2L|KX3\-)[12]|C(?:DC5L|RX)|E(?:OMES|P300)|G(?:FI1B|ATA6|TF2I)|SOX17|IKZF[12]|MA(?:FB|Z)|(?:CTC|EH|HL)F|BPTF|FEV|JUN|DBP)\.|(?:POU5F1\.|N(?:ANOG|FE2)\.|(?:GFI1|(?:MYB|(?:AR|T)))\.))|MYFfamily\.)|bHLH_family\.)p|mm__(?:(?:(?:(?:(?:(?:ARNT_ARNT2_BHLHB2_MAX_MYC_US|TGI|EB|M[TZ]|GZ)F|H(?:OXA9_MEIS|IC|MX|ES)|E(?:WSR1\-FL|V)I|P(?:OU[16]F|ATZ|[BD]X)|TFDP|FOX[LNQ]|TEAD|MYOD|NR(?:3C|6A|F)|[CR]REB|SPZ|ALX|YY)1|(?:FOS_FOS_B_L1__JUN_B_D|TAL1_TCF_3_4_12|HOX_A(?:6_A7_B6_B7|4_D4|5_B5)|FOX_(?:F1_F2_J1|(?:(?:C1_C|D1_D)|I1_J)2)|MEF2_A_B_C_D|N(?:ANOG_mouse|FY_A_B_C)|S(?:OX_8_9_10|TAT5_A_B)|TFAP2_A_C)_|DMAP1_NCOR_1_2__SMARC|HBP1_HMGB_SSRP1_UBTF|R(?:FX1\.\.5_RFXANK_RFXAP|XR(?:A_VDR_dimer|_A_B_G)_|BPJ|ORA)|(?:TLX1\.\.3_NFIC|POU5F1_SOX2)_dimer_|(?:LEF1_TCF7_TCF7L|H(?:NF4A_NR2|S)F|SREBF|GTF2A|N(?:KX6\-|R5A|HLH)|HAND|HMGA|(?:PRR|MS)X|E(?:TS|N)|VSX)1_2|A(?:DNP_IRX_SIX_ZHX|IRE|TF[246])|(?:NFKB1_REL_REL|ESRR|H[IN]F1)A|(?:AHR_ARNT_ARNT|TFCP|FOSL|MYBL|BACH|KLF1|NR4A|CUX|LMO)2|N(?:KX2\-3_NKX2\-5|FIX)|(?:CEBPA_B_DDIT|ATF5_CREB|FOX[DP]|NFIL|TP5)3|T(?:CF4_dimer|FAP(?:2B|4)|LX2|BP)|S(?:MAD1\.\.7_9|P(?:I[1B]|1)|OX[25]|RY)|STAT2_4_6|(?:(?:FOXO1_3|(?:CDX|ELF)1_2|LHX3)_|POU3F1\.\.|N(?:KX2\-1_|R1H))4|(?:POU2F|SNAI|PITX|RUNX|EGR|GLI)1\.\.3|NFATC1\.\.3|ONECUT1_2|NKX2\-2_8|GATA1\.\.3|(?:E2F1\.\.|TBX4_)5|Z(?:IC1\.\.3|BTB1?6|FP161|NF(?:14[38]|238|384)|NF423|EB1)|(?:ARID5|TFE)B|P(?:AX(?:3_7|[24-68])|PARG)|N(?:FE2L|KX3\-)[12]|C(?:DC5L|RX)|E(?:OMES|P300)|G(?:FI1B|ATA6|TF2I)|SOX17|IKZF[12]|MA(?:FB|Z)|(?:CTC|EH|HL)F|BPTF|FEV|JUN|DBP)\.|(?:POU5F1\.|N(?:ANOG|FE2)\.|(?:GFI1|(?:MYB|(?:AR|T)))\.))|MYFfamily\.)|bHLH_family\.)p)2|(?:hs__(?:(?:E(?:LK1_4_GABP_A_B1_|SR1)|R(?:XRG_dimer|EST)|S(?:TAT1_3|RF)|FOXA2|PRDM1|KLF4|XBP1)|IRF1_2_7)\.p|mm__(?:(?:E(?:LK1_4_GABP_A_B1_|SR1)|R(?:XRG_dimer|EST)|S(?:TAT1_3|RF)|FOXA2|PRDM1|KLF4|XBP1)|IRF1_2_7)\.p)3|sacCer__(?:Y(?:ER130C|AP6|OX1)|S(?:PT1|WI)5|DAL80|NHP6[AB]|A(?:BF|CE)2|CUP9|FKH[12]|GCN4|HAP[2-5]|MIG[1-3]|MSN[24]|P(?:DR[13]|HO[24])|G(?:LN|ZF)3|RTG3|CIN5|T(?:OS8|YE7)|CST6|(?:CRZ|FHL|BAS|G(?:AT|IS)|(?:CB|FZ)F|HSF|[HM]CM|R(?:EI|LM|PH)|S(?:IG|[FM]P)|ORC|TEC)1|R[FO]X1))$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.24 = 0.24 seconds
  * Elapsed CPU time:
     - User: 0.22
     - Sys: 0.01
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 7
  * Maximum resident set size (RSS: memory) (kiB): 62404
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 8
  * Exit status: 0


taipale
memory allocation of 66336431728 bytes failedCommand terminated by signal 6

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 1:40.82 = 100.82 seconds
  * Elapsed CPU time:
     - User: 100.68
     - Sys: 0.02
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 10
     - Involuntarily (time slice expired): 278
  * Maximum resident set size (RSS: memory) (kiB): 45748
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 8
  * Exit status: 0


taipale_cyt_meth
^taipale_cyt_meth__(?:(?:(?:(?:(?:(?:(?:(?:FOXP1_NTGTTTRNNNNNNNNNNNNNNNNWCAA|RXRB_NRGGTCAAAGGT|TCFL5_NCACGYG)CA|(?:T(?:BX19_NANGTGTKA|_NANGTGTGAN)NNNTNACACC|GRHL1_NAACCGGT|OSR2_NGCTACYG)T|FOXA2_NWNWGTMAATATTKRYNYW|(?:PAX4_NATTTCACGCWTSANYGNN|(?:CEBPE_NRTTGCGYA|ATF6B_TGCCACGTC)A|HAND2_AACACCTG)Y|PAX1_NSGTCACGCWTSANYG|HNF4A_NRG(?:GTCAAAGTCCR|TCCAAAG(?:GT|TC)CR)|(?:P(?:AX(?:7_NSGTCACGSNWR|4_NYACGCTAA)T|OU3F4_NTATGCGCA)T|N(?:FATC4_N(?:TTTCCRYGG|AYGGA)AA|KX6\-3_NTMATTA)|T_NTCACACNTANGTGTG|(?:E2F7_NTTTCCCGCC|HOXC13_NCTCGTA)AA|(?:LBX2_CTMAT|VSX1_Y)TAATT|FOXK1_NWYGTAAAY|RFX7_NGTTGCY|HMX1_NCAMTTA)A|(?:N(?:R3C2_NGNACRNNNYGTN|FKB2_NGGGGAWNYMC)|(?:RFX3_NGTTGCCWAGCA|NFAT5_NYGGAAANNT)A|FOXO3_NTCCCCACA|GSC2_YTAATC)C|CUX2_NTGATCGATYR|NFE2_NATGASTCAT|BARHL1_NTAATTG)N_eDBD_meth|(?:(?:KLF10_RMCACRCCCMYNMCACRCCCMC|FOXD2_NYWANGTAAACAN)_eDBD|SOX3_NGAACAATGN_FL)_meth|(?:(?:(?:(?:(?:(?:(?:(?:ELF3_ACCAGGAAGNNNNNNNNNWWWWW|PRDM4_YRRCRGTTTCRAGKSYNCCC|POU3F2_TAATKANNNNNTAATKA|HES5_NCACACKY)|(?:ETV4_NCAGGAAGGAAGT|MSX1_NTCGTTA)N)|(?:(?:TLX3_NAATTGNNNNNNNNNNNCAAT|(?:IRX1_NACGYGNNNNNNCR|CREB1_NRTGAYG)CG|PAX4_NAATTANNTAAT|PROX1_NAAGRYGTCT|E(?:LF2_NACCM|TV2_NRCA)GGAAG)T|(?:RUNX2_NWAACCACANNNACCACA|(?:POU2F2_NTCATTATG|FOXG1_NAYRTAAA)C|P(?:AX7_NTAATTGAT|OU4F3_NTATGCA)T|NR2C1_NRAGGTC|(?:HOXA6_R|(?:LHX4|EN1)_N)TCGTT)A|GMEB2_NKACGTNNNNTACGTM|FOXN2_NGCATNNNNNNNATGC|POU3F4_NTAATTWATGCG|FOXD2_NWACAATAAYAWW|(?:IRF7_NNGAAANYGAAAN|CLOCK_NMCAYGYG)Y|DMRTC2_WWTYGNTACAT|ONECUT1_NTATTGATY|USF2_MNCAYGTGAY|GATA2_NWGATAAS)N)|(?:IRX5_NCGCGWNNNWCGC|NANOG_TTAAKT)GN)_eDBD|(?:SPDEF_NAMCAGGAT|ELK3_NACCGGAA)GTN_FL)|(?:P(?:OU6F1_TYATTANNNNTYATTA|BX1_KTGATTGAYK)|CREB3L1_TGCCACRYGTACR|ONECUT2_NTATTGATCCGT|KLF12_NGCCGACGCCCW|NR1I3_NYGAACTWW)_FL)|(?:TLX3_NAATTGNNNNNNNNNCAATT|(?:ETS2_NACAGGANNNNNNTCCT|GCM2_RTGNKG)GT|NHLH2_NKGNMKCAGCTGCGYCM|POU5F1_NYTAATTATGCGNR|GMEB1_NKACGTNNNNACGTM|NKX2\-8_NATGTCGTTAYTG|(?:BARX2_NWAAAYCATT|NKX2\-8_NTCGTTS)A|M(?:LX_NNCAYGTGM|AX_RNCATGTG)Y)N_FL)|KLF3_NRCCGCAGCCCN_FL)_meth|(?:(?:TFCP2_AWCCGGWTNNAWCCGGWT|PAX6_NYACGCNTSANYGNNYN)|ESRRG_NYCAAGGTCAN)_eDBD_meth|(?:TCF7L1_(?:WCATCGRGRCGCTGW|ASATCAAAS)|KLF17_NMCCACGCWCCCMYY|(?:TGIF2LY_TGACANNTG|(?:BBX_TGAWCNNNGW|DUXA_TRAYNTAA))TCA|BHLHE40_GTCACGTGAC|S(?:OX7_ACAATNNNATTGT|MAD5_YGTCTAGACA)|PTF1A_NYGTCAGCTGNY)_eDBD_meth|(?:(?:FOX(?:P3_NAWTTGTAYGACAAAT|R2_NYRTAWACATAAATNN)|(?:IRF4_NYGAAASYGAAAS|OVOL1_NRWACCGTTATN|HLF_NRTTRYGYAA)Y|(?:EGR2_NMCGCCCACGC|XPA_NCACCTCAC|HOXC8_NTAATT)A|(?:OTX1_NTAATCCN|RARG_NRGGTCA)Y|TEAD1_NRCATWCC|TGIF2_NTGACAG)N|(?:(?:NR2F6_NRGGTCRNTGACCYN|(?:HOXA10_NGTCGTAAAAN|(?:OLIG3_ACCATATGKT|DLX1_NYAATTAN)))|(?:M(?:AF_NYGCTGACNNNGCR|EF2C_CCWWATWWRG)|LHX8_TRATTGCAATYA|KLF12_NRCCACGCCCW)))_FL_meth|(?:(?:TLX3_NAATTGNNNNNNNNNNCAATT|YY1_NGCCATNTTTGNCNNNNYGTGC|RUNX3_NWAACCGCANNNACCGCAR|POU6F1_NATTATNNNNNNNATAAT|ETV7_NYTTCCSGGAAR|ELF3_NTGTGCGGATGC|MSC_NNACAGCTGTN|ASCL2_ACACGACGC|CDX4_NGYMATAAAA)N|(?:(?:HSF1_NGAANNTTCNNGAA|ELK3_NTCGTAAATGC)N|(?:POU6F1_TATGCNNNGCATA|GATA3_NGATAAGATCW|VENTX_CGATTATCG|NR1I3_NTGAACTWW)))_FL)|(?:(?:KLF10_RMCACRCCCMYNMCACRCCCMC|FOXD2_NYWANGTAAACAN)_eDBD|SOX3_NGAACAATGN_FL))|(?:HSF5_YNGAANNNNNNNNNNNNNAACRTTCNR|POU3F2_TAATTNNNNNNNNAATTA|GLI3_RGACCACCCACRWYG|DMRTC2_RAACGATACA|SREBF1_NTCACGCCAY|E2F2_GCGCGCGCGYW|CREB1_NRTGACGTN)_eDBD)|(?:(?:(?:TLX3_NAATTGNNNNNNNNNNNNNC|PAX4_NAATTANNNNNNNNT)AAT|BCL6_NYGTAATCGAGGAA|JUND_NRTGACGCA)T|(?:IRF3_NCNGTTTCSNSGAAACSGA|GATA2_NYGAT)AAS|(?:HSFY1_NCRTTCGAAWCRTTCG|FOXE1_NSYTAAAYAAAC)AW|FOXN2_NNGCGTSNNNNNSACGCN|(?:TBX20_NAGGTGTGAAGGTGTG|POU4F1_NTGCATWATGC|CREB1_NTGACGCGTC|NR2C1_NRRGGTC)A|(?:IRX1_NACAYGNNNNNNCRT|ELF5_NANNMGGAA)GT|(?:(?:M(?:AX_NCACGTGNNNN|LX_)NCACG|POU2F2_NCATTANNNTAA)T|(?:GLIS2_RCCCCCCRCGW|IRX5_NCRTGTNNNACA)Y|FIGLA_NNCACCT|BARHL1_NTAAAC|NANOG_TTAATK)G|(?:HSF5_NRCGTTCTAGAAYG|(?:BCL6_NTGCTTTCGAGGA|CREB3L4_YGCCACGTC)A|ELF3_NAT(?:(?:AA|R)|KG)CGGATG|JUNB_NATGACGTCA|CUX1_NYATYGAT)Y|POU2F2_NTAATNTATGC|MYBL2_NTAACSGTTR|S(?:PIB_RWWGSGGAAGT|CRT1_NGCAACAGGT|IX6_NSRTATCRY))N_eDBD)|POU3F1_NTAATKAKATGCRN_eDBD)_repr|Z(?:(?:(?:(?:(?:(?:(?:(?:(?:(?:NF(?:177_NTNGRTCKNNNNNNNNAGTCAT|345_TYGCAACNNNNNCAACTGKAC|76_NYWWCCCAYAATGCANYGCR|250_NTAGGCCTA)|BTB(?:33_NRCGCNNWTTTAACATAAY|2_NTTTCCGGTAM))N|(?:B(?:TB(?:37_NYACCGCRNNYACCGYR|12_NGGCCTGCCGTCNN)|ED1_NTRTCGCGAYAN)|NF449_MAGCCCAACC))|IC4_NRCCMCCYGYNGTGN)_eDBD|NF501_NSSCSACGCGAACAM_FL)|NF(?:597_GGCGGCCATYTTG|396_NTGTMCRAAA)N_FL)_meth|NF(?:787_RATGCMNNNNNNNTGCCTCR_FL_meth|(?:684_NYACAGTCCWCCCCTTK|(?:524_NYTCGNACCCK|396_NTGTMCGAAA))N_FL)|(?:BTB22_NKCACTANNNTAGTG|NF343_NYGCTTCACCNCGGY)MN_eDBD_meth|(?:NF(?:660_NYTGATNNCCCAYCCTRN|(?:(?:(?:444_NCRTCCCCCTCCCCC|7(?:5A_NGCTTTTCCCACA|04_NRCCGGCCGGY)|32_NYGTAACNYGAYAC)N|787_TGCCTCMGTTTMCCY)|821_NRGACRGACRGACRN))_FL|BTB(?:14_NTGCRCGTGCACGYG|26_NMTCYAGAAAA)N_FL)_meth|(?:BTB(?:1(?:4_NYGCRCGTGCACGYG|8_NWTCCAGATGTK)|7A_NCGACCMCCG)|NF(?:2(?:74_NRTRTGAGTTCTCRY|96_NASTGGWCAS)|449_NTCGCGNGCMARCA)|NF(?:282_NTTCCCMYNACA|140_NRCAATTCCGCT)C|FP1_NTTTTATACCCAGC)N_eDBD_meth|NF771_NRCGCTAACCATTRN_eDBD_meth)|NF787_RATGCMNNNNNNNTGCCTCR_FL)|(?:NF(?:580_CCTACCCTNNCCTACCCY|281_GCCCCTCCCCCM|449_RCGCCCAACC)|BTB12_NGGCCTGCCGTCNT)_eDBD)|(?:NF(?:276_NTTAAGGNNGTANNNWCSNCCTTA|12_GGKSMTRYTTGTTWYAGCAN)|NF(?:23_NKGKCGCGGNCATGGKN|460_NAACGCCCCCC)G|BTB37_NTGCCGNNTTRGCCGW|IC4_NRCCMCCYGYNGYG)N_eDBD)_repr|(?:(?:NF(?:2(?:76_NTTAAGGNNGWANNNWCSNCCTTAA|81_NCCCCTCCCCC)|12_GGKSMTRCTCGTTATAGCRN)|(?:NF(?:23_NKKKCGCGGNCATGGKN|460_NRMCGCCCCCC)|IC1_NMCCMCCYGCYGW)G|FP42_NGRCRGCCATMTTG)N_eDBD|(?:(?:NF580_CCTACCCTNNCCTACCCT|IC(?:3_NGACCCCCT|5_NGACCCCCY)GCTGTGM)_eDBD|(?:(?:NF(?:684_NYACAGTCCRCCCCTTK|524_NYTCGNACCCR)N_FL|IC(?:1_NRCCM|3_NRCCC)CCYGCTGTGN_FL)|(?:(?:NF7(?:5A_NGCTTTTCCCACMN|40_NYGCCCCCCCCAC)_eDBD|BTB(?:45_NCACCTATAK|7B_NCGACCMCC)N_eDBD)|NF771_NRCGCTAACCATTRN_FL))))_meth|SCAN(?:(?:(?:23_NYCATGTGCTAATTACAMN_eDBD|31_GCATAACYGCCCYGCKKCN_FL)_meth|4_NYGCACACNCTGWAARN_eDBD)_repr|29_MMGYGTAGMCGKCTACACNN_eDBD_(?:meth|repr)|16_NANTGTTAACAGAGCCTCN_eDBD_(?:meth|repr)|9_NRGGATAAGATAAGAANCMN_eDBD_(?:meth|repr)|5A_NYGTCCCYCCCCAAANMN_eDBD_(?:meth|repr)|(?:1(?:6_NANTGTTAACAGAGCCTCN_FL|_NYRCACACMCTGMAAMN_eDBD)|4_NYGCACACMCTGMAAMN_eDBD)_meth|23_NYCATGTGCTAATTACAMN_eDBD|16_NANTGTTAACAGAGCCTCN_FL|31_GCATAACKGCCCTGCKKCN_FL|1_NYRCACACNCTGMAAMN_eDBD)|NF384_TTTTTNNNNNNNNNNNNAAAAA_eDBD_(?:meth|repr)|(?:(?:NF(?:580_(?:NRTTATGTTAAAWWNYTACCNYN|MCTACCCYNNNMCTACCCY)|784_STACYTACCKY)|NF740_NYGCCCCCCCCAC)|FP41_NGCTAACTCTCCRCR)_FL_(?:meth|repr)|(?:BTB(?:43_NGTGCCNNNNNNNYAGCAC|20_NYAAYGTATRK)|BTB(?:32_NRTACAGTNNNACTGTA|12_NGCTGNNCCGCG)Y|NF(?:713_N(?:AGAAAAAAGACWR|MGACGACTGCCAC)GAAA|174_NGNCRATCACTYGNC|4(?:54_(?:NRGCGCCN|TRGCGCC)GGCGCY|10_NYANCCCATAATA)|385D_NCGTCGCGACG|263_NGTGCTCCC))N_eDBD_(?:meth|repr)|(?:(?:NF(?:177_NTYGRTCKNNNNNNNNAGTCAT|345_TTGCAACNNNNNCAACYGKAC|250_NTAGGCCYA)|(?:NF76_NYYWCCCAYAATGCANYGC|IC1_NMCCMCCCGCYGY)G|FP42_NGRCHGCCATMTTG|BTB2_NTTTMCGGTWA)N|(?:IC(?:3_NGACCCCCC|5_NGACCCCCY)GCTGYGM|BED1_NTRTCGCGAYAT))_eDBD|(?:BTB22_NKCACTANNNTAGTG|NF343_NYGCTTCACCNCGGY)MN_eDBD|NF(?:660_NYTGATNNCCCAYCCTRN|(?:(?:(?:444_NCRTCCCCCTCCCCC|7(?:5A_NGCTTTTCCCACA|04_NRCCGGCCGGY)|32_NYGTAACNYGAYAC)N|787_TGCCTCMGTTTMCCY)|821_NRGACRGACRGACRN))_FL|(?:BTB(?:1(?:4_NYGCRCGTGCACGYG|8_NWTCCAGATGTK)|7A_NCGACCMCCG)|NF(?:2(?:74_NRTRTGAGTTCTCRY|96_NASTGGWCAS)|449_NTCGCGNGCMARCA)|NF(?:282_NTTCCCMYNACA|140_NRCAATTCCGCT)C|FP1_NTTTTATACCCAGC)N_eDBD|NF771_NRCGCTAACCATTRN_eDBD|NF7(?:5A_NGCTTTTCCCACMN|40_NYGCCCCCCCCAC)_eDBD|BTB(?:14_NTGCRCGTGCACGYG|26_NMTCYAGAAAA)N_FL|NF771_NRCGCTAACCATTRN_FL|(?:NF5(?:01_NSSCGACGCGAACM|97_NGCCGCCATYTTG)|IC(?:1_NMCCM|3_NRCCC)CCYGCTGYG)N_FL|BTB(?:45_NCACCTATAK|7B_NCGACCMCC)N_eDBD)|(?:(?:(?:(?:HSF5_YNGAANNNNNNNNNNNNNAACRTTCYR|IRF3_NCNGTTTCCNGGAAACYGAAAS|P(?:RDM4_YRRCRGTTTCRAGGGTTACC|OU3F(?:[24]|1)_NTATGCWAATKAG)|P(?:OU3F1_TAATTNNNNNNNAA|ROP1_TAAYNTCG)TTA|UBP1_AWCCGGNNNNNNCCGGWT|BCL6B_RYGTAATCTAGGAATW|(?:HSF5_AACRTTCTAGAAYGY|POU4F3_ATNAATWATGCA|OLIG(?:3_AMCAGCTGT|2_AMCATATGK))T|(?:L(?:EF1_WCATCGNNNCGCTG|MX1B_YTCGTTA)|GATA6_WGATAACGATC)W|GLI(?:2_RGACCACCCACG|3_RGACCACCCACR)WWG|ATF4_GGATGATGTCATCC|SREBF(?:1_RTCA(?:CMCC|GGTG)AY|2_ATCA(?:CMCC|GGTG)AY)|E2F2_NCGCGCGCGCM|CREB1_NRTGAYGTN|NANOG_TTAACGA|EN2_MTCGTTANY)_eDBD|(?:(?:(?:(?:(?:(?:(?:(?:(?:KLF11_NMCACGCCCNNNNCACGCCCMC|CREB3L4_YGCCACGTGGCA|T(?:CF7_(?:WCATCGRGRCGCTGW|ASATCAAAS)|GIF[12]_TGACANNTGTCA)|DMRT(?:A2_NNTTGW|3_NWWTTGN)TACATT|ARGFX_YTAATCTAATTAG|(?:PKNOX2|MEIS3)_TGACANNTGTCA|B(?:HLHE23_ANCATA|ARHL2_NTAAT)TGNY|(?:BHLHE22_ANCATATGN|OLIG2_AACAGCTGT|ATOH1_ANCAGCTGN|ATOH1_ANCATATGN|ATOH7_ANCATATGN)Y|MEIS2_TGACANNYGTCA|BHLHE41_GTCACGTGAC|MEF2[BD]_CCWWATWWRG|SNAI1_NRCAGGTGYR|H(?:ES5_GGCACGTGY|OXB6_YTAATTR)Y|HES1_GGCRCGTGNS|LHX9_CYAATTAR|ISX_CTAATTAN)_e|(?:(?:RORB_NAWNTRGGTCRTGACCYANW|TBX20_NAGGTGTGANNNTCACACC|PAX7_NNATTMGTCACGS|(?:ELF4_NATGCGGAA|OSR1_NGCTACY)G)T|FOXB1_NWNWGTMAATATTRACWYW|(?:GFI1_NMAATCACNGCNNNNCACT|EGR1_NMCGCCCACGC)M|(?:N(?:R(?:1D[12]_NAWNTRGGTCANTRGGTC|(?:5A2_NYCAA|2C2_NR)GGTC)|KX2\-3_NCCACTTR)|R(?:ORC_NWWN|ARA_)NRGGTCANNRGGTC|(?:(?:(?:(?:PPARD_NRRGGTC|RARG_NRGGTCA)|RXRA_NRGGTC)|THRB_NRGGTC)A|ESRRB_NYC)AAGGTC|HNF4A_NRGGTCAAAGGTC|(?:PAX3_N(?:SGTCACGSNN|TAATYG)|VSX2_YTA)ATT|(?:(?:POU4F1_NTNNATWAT|(?:ATF6_NGRTGACGTG|EGR4_NMCGCCCAC))G|FOX(?:I1_NWWNYG|(?:(?:C2_NWAN|Q1_NTAY)R|(?:J3|O4)_NYG))TAAA)C|POU3F2_NTATGCGCAT|TBX(?:(?:15|[36])|21)_NAGGTGTG|(?:NKX6\-2_NY|HOX(?:B[57]_NY|A2_NY|D4_NY)|PRRX2_NY|(?:HOXD1_N|EMX2_Y|PDX1_Y)T|LMX1A_YT|(?:(?:GBX2|EN1)|DLX6)_NY|M(?:SX2_NC|NX1_NY)|TLX2_NC|BSX_NY|RAX_YT)AATT|(?:PHOX2(?:A_C|B_N)|HOX(?:(?:A7|B[28])|D8)_N|ALX4_C|DRGX_Y|E(?:VX|N)2_N|EVX1_N|VAX1_N|NOTO_N|ARX_C)YAATT|(?:ISL2_SCAC|LBX2_CTCG|BSX_NTCG)TT)A|BACH2_NWANCATGASTCATSNTW|(?:NFATC(?:2_NTTTCCRNNNN|3_NTTTCCR)YGGA|(?:HSFY[12]_NTTCGAANNNTTC|TBX18_NRAGGTGT)G|(?:E2F(?:3_NTTTTGGCGCCA|8_NTTTCCCGCC)|HOX(?:(?:(?:(?:C12_GGT|A11_RGY)AA|B(?:13_NC|9_G)TCG)|(?:A11|C12)_NRTCG)TA|D(?:1(?:3_NCC|0_GY)AATA|13_NCTCGTA|12_NRTCGT|10_RTCGTA|9_RTCGTA)))A)AA|(?:PAX(?:2_NSGTC|4_NTY)ACGCWTSANYGNN|PPARD_NRRGGTCRTGACCY|T(?:HRB_NRRGGTCRTGACCY|CF21_NACCATATGK|CF21_NAACAGCTGY|EF_NRTTAYGTAA)|R(?:(?:AR[AG]_NRGGTCR|XRB_NRGGTCR)|ORC_NRGGTCR)TGACC|MSGN1_NRCCAWWTGK|MESP2_NAMCATATGK|ATF(?:6(?:B_NRTGAY|_NRTGAC)GTC|2_NRTGAYGTC)A|CEBP[BD]_NRTTGCGYAA|MYF6_(?:CGTCANNTGT|NAACANNTGW)|ASCL1_NRCAGCTG|HES(?:2_GGCR|7_GGCA)CGTG|SIX2_NCGTATCR)Y|TFCP2L1_NCCGGNNNNNNCCGG|(?:MAFG_NYGCTGA(?:YR|S)TCAGC|GATA4_NWGATAAS|ARGFX_NCTAATTA|NR4A2_NAAAGGTC)R|(?:RFX(?:3_NGTTGCCATGGC|[14]_NGTTRCCATGGY)AA|NR3C1_NGWACANNNYGTW|MAF[AG]_NWWWNTGCTGA|TFAP2B_NGCCNNNGG|SOHLH2_NGCACGTG)C|S(?:KOR[12]_NWNNKKTAATTAA|OX(?:1(?:2_ACCGAACAAT|4_NGAACAATG)|9_MGAACAATR|8_AGAACAATG|30_GAACAAT)|IX4_NCGTATCAT|HOX_CYAATTA)|SP(?:1_NWRG|[89]_N)CCACGCCCMY|KLF14_NRCCACGCCCMY|POU2F2_NTATGCWAAT|BHLHA15_NMCA(?:GC|TA)TGK|NFATC3_NAYGGAAAM|(?:NKX3\-[12]_NCCAC|HMX2_NCAM)TTAA|SP3_NRCCMCGCCCMY|(?:(?:HOXA6_NG|LBX2_NC)YAATT|RARA_NRRGGTC)AN|(?:KLF(?:(?:(?:(?:16_N|2_NR)CCACR|4_NRCCMCG)|5_NMCACG)|6_NRCCACG)C|DMBX1_NTAAT|PITX(?:[12]|3)_NTAAT)CC|TCF12_NCACSTG)N_e|(?:N(?:HLH1_NKGNMKCAGCTGCGYCM|R2F[16]_NRGGTCAAAGGTCA)|FLI1_NACCGGATATCCGGT|MAFF_NYGCTGASTCAGCR|ERG_NACCGGATATCCGGT|(?:HOX(?:(?:A13_NCTCG|C1[01]_NRTCG)TAAA|(?:A10_NGY|C1(?:0_N|1_R)GY)AATAAA|D9_GYAATAAA|A5_NYAATT)|(?:(?:(?:LMX1B_NWWYT|DLX[3-5]_NY|MSX1_NC)AA|ISL1_SCAC)|(?:ALX3_C|DLX2_N|E(?:MX1_N|SX1_Y))YAA)TT)A|EL(?:F2_NATG|K1_NAC)CGGAAGT|ESRRA_NYCAAGGTCA|GSC_YTAATCC)N_e|N(?:R2F1_NRGGTCRNTGACCYN|EUROG2_RNCATATGNY)_e|(?:CREB3L1_TGCCACGTGGCA|T(?:GIF2LX_TGACANNTGTCA|FAP4_A(?:NCATATGN|WCAGCTGW)T)|PKNOX1_TGACANNTGTCA|IRF5_NYGAAACCGAAACY|NEUROG1_RNCATATGNY|LEF1_ASATCAAAS)_e|(?:IRF8_NYGAAASYGAAAS|OVOL2_NWWCCGTTAYN|MYO(?:D1_(?:NAA|YGT)CANNTGT|G_(?:NAA|CGT)CANNTGT)|(?:CEBPG_NRTTGCGY|DBP_NRTTAYGT)AA|(?:CREB5|BATF3)_NRTGAYGTCA|JDP2_NRTGAYGTCA|MSC_NRNCATATGN|ASCL2_NRCAGCTG|HEY2_NGCACGTG)YN_e|(?:(?:HOXA10_NGTCGTAAAAN|(?:(?:ELK3_NACCGGAAGTN|OLIG3_ACCATATGKT)|DLX1_NYAATTAN))|PBX1_KTGATTGAYR)_e|(?:ATF3_NRTGAYGTCA|MSC_NRACAGCTGT)YN_e|S(?:NAI2_NRCAGGTGCR|IX1_NSRTATCRYN)_e|(?:MAF_NYGCTGA|OTX1_NTAATC)CN_e)|(?:KLF13_NRCCACGCCCMYN|GATA5_WGATAACGATCT|PROP1_TAATTNNATTA|(?:GATA5_NWGATAASR|LHX4_NTAATTA)N|HEY1_NGCACGTGYN)_e)DBD|(?:(?:FOXA(?:1_NWR|3_NWN)WGTMAATATTKRYNYW|(?:TBX20_N(?:AGGTGTKARGGYGTK|TNACRCCTANGTGTG)|FOXA3_NSYTAWGTAAACAA|(?:PAX7_NSGTCACGSNNR|MEOX[12]_NTCG)TT|HOX(?:D(?:10_NG(?:YAA|TCG)|9_GTCG)TA|C9_G(?:YAA|TCG)TA)AA|HMX2_NCCAMTTA|(?:HOX(?:A2|D4)_NTM|(?:MEOX[12]_NY|H(?:ESX1_CT|OX(?:(?:B5|A1)_N|D3_Y)T)|GBX2_NC)A|(?:V(?:SX(?:2_SY|1_C)|AX2_N)|LHX(?:5_S|8_C))YA|PRRX2_CYA)ATT)A|POU5F1_NWWTATGCTAATKAR|N(?:FI[BC]_NTTGGCNNNNTGCCAR|(?:KX(?:2\-(?:3_NNCACTTR|8_NNCACTTS)|6\-2_NTCATT)|R5A1_NYCAAGGTC)A)|ETV7_NMGGAARNNYTTCCK|PAX7_NNATTCGTCACGST|RXRG_NRGGTCAAAGGTCA|MAF_NYGCTGA(?:YG|S)TCAGCR|TFAP2A_NSCCYNRGGS|(?:EGR3_NMCGCCCACG|FOXL2_NAYRTMAA)CA|VENTX_NGYAATTAG|HOX(?:A9_RTCGTAA|B7_NGTAATT)AN|TEAD2_NRCATTCCW|RHOXF2_NTAATCC|PITX[12]_YTAATCC|(?:OTX2|CRX)_NTAATCC)N_F|(?:N(?:HLH1_NKGNMKCAGCTGCGYCM|R2F[16]_NRGGTCAAAGGTCA)|FLI1_NACCGGATATCCGGT|MAFF_NYGCTGASTCAGCR|ERG_NACCGGATATCCGGT|(?:HOX(?:(?:A13_NCTCG|C1[01]_NRTCG)TAAA|(?:A10_NGY|C1(?:0_N|1_R)GY)AATAAA|D9_GYAATAAA|A5_NYAATT)|(?:(?:(?:LMX1B_NWWYT|DLX[3-5]_NY|MSX1_NC)AA|ISL1_SCAC)|(?:ALX3_C|DLX2_N|E(?:MX1_N|SX1_Y))YAA)TT)A|EL(?:F2_NATG|K1_NAC)CGGAAGT|ESRRA_NYCAAGGTCA|GSC_YTAATCC)N_F|(?:THRB_NYGACCTNNNNYGACCT|IRF9_NYGAAASYGAAAC|R(?:ARB_NRGGTCRT|XRG_NRGGTCAY)GACC|FOSL1_NRTGAYGTCA|ATF2_NRTGAYGTMA|JDP2_NRTGASTCA|MAFG_TGCTGACG)YN_F|TFCP2_AWCCGGWTNNAWCCGGWT_F|(?:F(?:ERD3L_GYNNCATATGNNAC|OSL1_RATGAYACG)|S(?:OX8_ACAATNNNNNNATTGT|NAI3_NRCAGGTGCR)|(?:POU4F3_ATGCATWATGCA|DMRTA1_WWTTGWTACAT)T|BHLHE23_ANCATATGNT|HOXA13_NCCAATAAAAN|(?:MEIS2_TGACANNTGTC|LHX6_TRATTGCAATY|DMRTC2_GAACGATAC)A|PHOX2B_TAATTAGATTA|NEUROD2_RMCATATGYY|MAFG_TGCTGANNNTGCR|I(?:RF2_YGAAASYGAAAS|SX_CTAATTAR)|MIXL1_TAATYNRATTA|ALX1_TAATTAGATTA|HOXB4_RTMATTAR|LHX9_CYAATTAN)_F|(?:LEF1_WCATCGRGRCGCTGW|DMRTC2_WWTTGNTACATN)_F|P(?:OU4F3_NTNAATWATGC|AX7_NTAATYGATT)AN_F|(?:CREB3L1_TGCCACGTGGCA|T(?:GIF2LX_TGACANNTGTCA|FAP4_A(?:NCATATGN|WCAGCTGW)T)|PKNOX1_TGACANNTGTCA|IRF5_NYGAAACCGAAACY|NEUROG1_RNCATATGNY|LEF1_ASATCAAAS)_F|(?:IRF8_NYGAAASYGAAAS|OVOL2_NWWCCGTTAYN|MYO(?:D1_(?:NAA|YGT)CANNTGT|G_(?:NAA|CGT)CANNTGT)|(?:CEBPG_NRTTGCGY|DBP_NRTTAYGT)AA|(?:CREB5|BATF3)_NRTGAYGTCA|JDP2_NRTGAYGTCA|MSC_NRNCATATGN|ASCL2_NRCAGCTG|HEY2_NGCACGTG)YN_F|KLF15_NCCMCGCCCMYN_F|ESRRG_NYCAAGGTCAN_F|SIX1_NSRTATCRYN_F|BARHL2_NTAATTGN_F)L)|(?:ESR1_NAGGTCANNNYGACCT|MAFF_NYGCTGAYRTCAGCR)N_FL)|NRL_NWWWNTGCTGACN_FL)|NR4A1_NAAAGGTCAN_eDBD)|(?:(?:(?:(?:(?:(?:ELF3_ACMAGGAAGNNNNNNNNNWWWW|GATA3_WGATAAC?GATC)|LMX1B_CTCGTTA)W|YY1_NGCCATYTTTGRCNNWNYGTGCT|NEUROG2_RMCATATGYY|MIXL1_TAAYNKCGTTA|PROP1_TAATTRCGTTA|HOXB4_RTCGTTAR)|(?:(?:(?:(?:(?:(?:CREB(?:3L1_TGCCACR|1_NRTGAYG)TCAY|E(?:(?:LF(?:5_NANNA|1_NATGM)|LF1_NACCM)|TV4_NRCM)GGAAGT|FLI1_NACMGGAART)|(?:ETV4_NCAGGAAGGAAGT|MSX1_NTCGTTA))|(?:H(?:SF[12]_NGAANNTTCYRGA|OX(?:(?:(?:A5_R|B[57]_R)|A2_R)|D4_R)TCGTT)|(?:(?:GBX2_NT|DLX[3-5]_NT)|(?:ALX3_N|LHX9_M|VSX1_N)T)CGTT)A)|NKX2\-3_NTCGTTGA)|(?:ATF3_NRTGAYGTCA|MSC_NRACAGCTGT)Y)N|SNAI2_NRCAGGTGCR))|(?:(?:RUNX3_NWAACCACRNNNACCACRA|FOXA1_NSYTAWGTAAACAA|P(?:OU5F1_NTATGCGCA|RRX2_MTCGT)T|CDX4_NGYAATAAA|(?:(?:HOX(?:A1_R|C[48]_R|D3_R)|LHX(?:5_N|6_M|8_M|4_Y)|VSX2_N|ISX_M)TCG|LHX6_CYAA)TT)A|(?:PAX(?:8_NSGTCRCGCWTSANYGN|6_NYACGCNYSANYGM)N|NR2F1_NRGGTCRNYGACC|SIX2_MCGTATCR)Y|POU6F1_NTAATGAKATGCR|ONECUT2_NTATTGATTW|ETV7_NYTTCCNGGAAR|(?:DMRT1_NNTYGNWACA|ERG_NACMGGAAR|JUN_NATGA[CS]TCA)T|SPIB_RAWWGRGGAAGT|(?:CREB3_NGCCACR|FOSL1_NATGAS)TCAY|CREB3_NRTGAYGTCAY|ELF2_NACCAGGAAGT|XBP1_N(?:KMCACR|RTGAYG)TCAY|CDX4_NGTCGTAAAN|NKX2\-5_NTCGTTGA|E(?:LK4_NRCMGG|TV1_NACMGK)AWGT|USF1_RNCAYGTGAC|KLF3_NRCCACGCCC|RARB_NAAAGGTCR)N)|(?:POU6F1_NTATGYTAATKA|ONECUT1_NTATTGATCS|YY(?:1_NGCSGCCATY|2_NKCSGCCATT)TT)GN)_FL)|(?:(?:(?:(?:CREB(?:3L1_TGCCACR|1_NRTGAYG)TCAY|E(?:(?:LF(?:5_NANNA|1_NATGM)|LF1_NACCM)|TV4_NRCM)GGAAGT|FLI1_NACMGGAART)|(?:H(?:SF[12]_NGAANNTTCYRGA|OX(?:(?:(?:A5_R|B[57]_R)|A2_R)|D4_R)TCGTT)|(?:(?:GBX2_NT|DLX[3-5]_NT)|(?:ALX3_N|LHX9_M|VSX1_N)T)CGTT)A)|NKX2\-3_NTCGTTGA)|SPDEF_NAMCAGGATGT)N_eDBD))|(?:(?:HSFY[12]_NCATTCYAAWCATTCY|FOXE1_NMYTAAAYAAAC)AW|(?:TBX20_NAGGTGTGAASGYGTG|MAFA_NTGCTGA(?:YG|N)TCAGC|POU(?:2F2_NY|3F1_NT)ATGCGCAT|(?:NKX3\-[12]_NT|(?:LHX1|DLX6)_NT|M(?:SX2|NX1)_NT)CGTT|HOXB1_GTAATT|(?:HOXA4_R|(?:(?:GSX2_S|ISX_C)|VSX2_Y))TCGTT|(?:HOX(?:B(?:1_M|6_R)|(?:A7|B[28])_R|D[18]_R)|LMX1A_C|GSX1_M|ALX4_N|EVX2_S|EVX1_R|PDX1_R|SHOX_S|RAX_C)TCGTT|UNCX_NTCGTT)A|(?:IRX3_NACGYRNNNNNNYGC|(?:ETV5_NCAGGAA|E(?:LF4_NAC|TV5_NR)CM|GABPA_NACM|FEV_NACM)GGAA|ETV1_NACMGGAW)GT|(?:M(?:AX_NCATGTGNNNNNCAT|LX_NCAY)G|FIGLA_NMCACC|TCF4_NCACC)TG|(?:BCL6(?:B_NYGCTTTCTAGGA|_N(?:TGCTT|YGTAA)TCTAGGA)A|JUND_N(?:RTGAC|ATGAS)TCA|ERG_NACAGGAAR)T|(?:CREB3L1_NTGCCACGYGTA|TFAP2C_NGCCYNRGG)C|(?:PAX9_NSGTCRCGCWTSANY|POU3F[14]_NTAATGAKATGC|GLIS1_KACCCCCCACGWW|GLIS2_RCCCCCCRCGWW)G|POU(?:3F(?:2_NTAATKAK|1_NTAATTW)ATGCG|1F1_NTAAT(?:GAK|TT)ATGCG|3F2_NTAATTWATGCG|2F3_NYATGCGCATR)|(?:N(?:R2F6_NRGGTCRNYGACC|PAS2_NMCAYGYG)|(?:CREB3L4_(?:YGCCACR|NRTGAYG)|(?:CREM|ATF7)_NRTGAYG|FOSB?_NRTGAYG)TCA|(?:ONECUT3_NT|CUX1_NY)ATTGAT|TFE(?:[3B]|C)_RNCAYGTGA|J(?:UNB|DP2)_NATGASTCA|SIX(?:3_NS|6_NY)RTATCR)Y|(?:NFATC[12]_NTTTCCGCGGA|HSF4_NGAANNTTCYRG|CDX1_NGTCGTAA)AA|ONECUT2_NTATTGATY|KLF1(?:5_RCCACGCCCMY|7_NGCCACRCCCW)|CDX2_NRTCGTAAANN|MYBL2_NTAACSGTTA|S(?:PIB_RWWGRGGAAGT|CRT[12]_NGCRACAGGT)|TBX1_NNAGGTGTGAN|NR4A1_NAAAGGTCR|GCM1_RTRNGGGT)N_eDBD)|ARNTL_RTCAYGTGMN_eDBD)_meth|(?:(?:FOXP1_NTGTTTRNNNNNNNNNNNNNNNNWCAA|RXRB_NRGGTCAAAGGT|TCFL5_NCACGYG)CA|(?:T(?:BX19_NANGTGTKA|_NANGTGTGAN)NNNTNACACC|GRHL1_NAACCGGT|OSR2_NGCTACYG)T|FOXA2_NWNWGTMAATATTKRYNYW|(?:PAX4_NATTTCACGCWTSANYGNN|(?:CEBPE_NRTTGCGYA|ATF6B_TGCCACGTC)A|HAND2_AACACCTG)Y|PAX1_NSGTCACGCWTSANYG|HNF4A_NRG(?:GTCAAAGTCCR|TCCAAAG(?:GT|TC)CR)|(?:P(?:AX(?:7_NSGTCACGSNWR|4_NYACGCTAA)T|OU3F4_NTATGCGCA)T|N(?:FATC4_N(?:TTTCCRYGG|AYGGA)AA|KX6\-3_NTMATTA)|T_NTCACACNTANGTGTG|(?:E2F7_NTTTCCCGCC|HOXC13_NCTCGTA)AA|(?:LBX2_CTMAT|VSX1_Y)TAATT|FOXK1_NWYGTAAAY|RFX7_NGTTGCY|HMX1_NCAMTTA)A|(?:N(?:R3C2_NGNACRNNNYGTN|FKB2_NGGGGAWNYMC)|(?:RFX3_NGTTGCCWAGCA|NFAT5_NYGGAAANNT)A|FOXO3_NTCCCCACA|GSC2_YTAATC)C|CUX2_NTGATCGATYR|NFE2_NATGASTCAT|BARHL1_NTAATTG)N_eDBD|(?:(?:(?:(?:CPSF4_MCCNCCNCCNCCCCNCCCCCNCCA|N(?:EUROD1_AAWTANNNNNNCATATGN|FIX_NTTGGCNNNNTGCCAR|(?:KX2\-5_NCCACTTR|R2E1_NAAAGTC)A)|IRF3_NSGAAANSGAAASSGAAAS|(?:THRB_NTGACCTNNNNNA|RARB_NRGGTCANNR)GGTCA|TFAP2E_(?:TGC|NG)CCNNNGGC|CREB3_NGCCACGTGKM|(?:FOXI1_NANGTAAACA|HOXC4_NTMATT)A|MBNL2_NYGCTTYGCTT|POU6F1_NTAATKAGS|HOXA9_GYAATAAAN|SOX14_CCGAACAAT|BATF_NMATGACAC|RHOXF1_NGGATCA)N|SOX10_AACAATNNNNNNATTGTT|(?:LIN28B_CGCGANNNNNCAGC|MEF2B_TGTTACCATATNNG)G|FERD3L_GYNNCAGCTGNNAC|IRF6_ACCGAWACY)|(?:KLF13_NRCCACGCCCMYN|GATA5_WGATAACGATCT|PROP1_TAATTNNATTA|(?:GATA5_NWGATAASR|LHX4_NTAATTA)N|HEY1_NGCACGTGYN))|SNAI1_NRCAGGTGCR)_FL_(?:meth|repr)|(?:(?:NFATC3_NYGGAAANNNNNNNTTTCC|RFX5_NGTTGCYRNNNGTTGCY)R|ETV3_NNAGGAANNNNNNNTTCCTN|(?:RORB_NAWNTRGGTCANTRGGTC|NFATC1_NTTTCCRNNNNYGGAA|NR6A1_NTCAAGKTCAAGKTC|RFX5_NYRRCAACSGTTGCY|FOX(?:J2_NWWGTTGTAA|A1_NWRTGTAM)AY|(?:POU2F2_NTGCATATG|FOXC2_NYAAAYAAA)C|(?:EOMES|TBX2)_NAGGTGTG)A|(?:(?:NR5A2_NCAAGGTCRNGACCT|(?:PRDM1_NRGNGAAA|DPF1_NCTATAG)G)T|POU1F1_NTATGCWAATKA|SOX18_NACAAT)G|(?:H(?:OXD11_NRTCGTAAAANN|MBOX1_NCTAG)|PRRX2_NTCG)TTA|(?:NR(?:1I2_NYGAACYNNNYGAA|2C1_NRGGTCRYGAC)|SP2_NYWAGYCCCGCCCM)CY|MTF1_NYTTTGCACACGRYNY|E(?:2F2_NWTTTGGCGCCAWWW|TV3_NACCGGATATCCGGT)|P(?:AX3_NYRATTMGTCACGS|OU2F3_NTATGCWAA)T|(?:(?:RFX2_NGTTRCCATGGY|FOXD3_NYWAYRTA)AA|HIC1_NRTGCCAM|DPRX_NGMTAATC)C|SOX4_GAACAAAGR)N_eDBD_(?:meth|repr)|GFI1B_NMAATCACNGCANNNCACTMN_eDBD_(?:meth|repr)|(?:(?:BCL11B_GTGAACRNNNNNNYTACA|GATA1_GATAANNNNNTTAT)C|IRF6_RGTWTCGNNNNNNYGAWACY|NR5A2_YGACCTTGNNNCAAGGTCR|S(?:OX10_AACAATNNNNNATTGTT|RF_CCWTGTWNGG)|HOXA13_NCCAATAAAAM|YBX1_YGTWCCAYC)_eDBD_(?:meth|repr)|(?:(?:(?:KLF11_NMCACGCCCNNNNCACGCCCMC|CREB3L4_YGCCACGTGGCA|T(?:CF7_(?:WCATCGRGRCGCTGW|ASATCAAAS)|GIF[12]_TGACANNTGTCA)|DMRT(?:A2_NNTTGW|3_NWWTTGN)TACATT|ARGFX_YTAATCTAATTAG|(?:PKNOX2|MEIS3)_TGACANNTGTCA|B(?:HLHE23_ANCATA|ARHL2_NTAAT)TGNY|(?:BHLHE22_ANCATATGN|OLIG2_AACAGCTGT|ATOH1_ANCAGCTGN|ATOH1_ANCATATGN|ATOH7_ANCATATGN)Y|MEIS2_TGACANNYGTCA|BHLHE41_GTCACGTGAC|MEF2[BD]_CCWWATWWRG|SNAI1_NRCAGGTGYR|H(?:ES5_GGCACGTGY|OXB6_YTAATTR)Y|HES1_GGCRCGTGNS|LHX9_CYAATTAR|ISX_CTAATTAN)_e|(?:(?:RORB_NAWNTRGGTCRTGACCYANW|TBX20_NAGGTGTGANNNTCACACC|PAX7_NNATTMGTCACGS|(?:ELF4_NATGCGGAA|OSR1_NGCTACY)G)T|FOXB1_NWNWGTMAATATTRACWYW|(?:GFI1_NMAATCACNGCNNNNCACT|EGR1_NMCGCCCACGC)M|(?:N(?:R(?:1D[12]_NAWNTRGGTCANTRGGTC|(?:5A2_NYCAA|2C2_NR)GGTC)|KX2\-3_NCCACTTR)|R(?:ORC_NWWN|ARA_)NRGGTCANNRGGTC|(?:(?:(?:(?:PPARD_NRRGGTC|RARG_NRGGTCA)|RXRA_NRGGTC)|THRB_NRGGTC)A|ESRRB_NYC)AAGGTC|HNF4A_NRGGTCAAAGGTC|(?:PAX3_N(?:SGTCACGSNN|TAATYG)|VSX2_YTA)ATT|(?:(?:POU4F1_NTNNATWAT|(?:ATF6_NGRTGACGTG|EGR4_NMCGCCCAC))G|FOX(?:I1_NWWNYG|(?:(?:C2_NWAN|Q1_NTAY)R|(?:J3|O4)_NYG))TAAA)C|POU3F2_NTATGCGCAT|TBX(?:(?:15|[36])|21)_NAGGTGTG|(?:NKX6\-2_NY|HOX(?:B[57]_NY|A2_NY|D4_NY)|PRRX2_NY|(?:HOXD1_N|EMX2_Y|PDX1_Y)T|LMX1A_YT|(?:(?:GBX2|EN1)|DLX6)_NY|M(?:SX2_NC|NX1_NY)|TLX2_NC|BSX_NY|RAX_YT)AATT|(?:PHOX2(?:A_C|B_N)|HOX(?:(?:A7|B[28])|D8)_N|ALX4_C|DRGX_Y|E(?:VX|N)2_N|EVX1_N|VAX1_N|NOTO_N|ARX_C)YAATT|(?:ISL2_SCAC|LBX2_CTCG|BSX_NTCG)TT)A|BACH2_NWANCATGASTCATSNTW|(?:NFATC(?:2_NTTTCCRNNNN|3_NTTTCCR)YGGA|(?:HSFY[12]_NTTCGAANNNTTC|TBX18_NRAGGTGT)G|(?:E2F(?:3_NTTTTGGCGCCA|8_NTTTCCCGCC)|HOX(?:(?:(?:(?:C12_GGT|A11_RGY)AA|B(?:13_NC|9_G)TCG)|(?:A11|C12)_NRTCG)TA|D(?:1(?:3_NCC|0_GY)AATA|13_NCTCGTA|12_NRTCGT|10_RTCGTA|9_RTCGTA)))A)AA|(?:PAX(?:2_NSGTC|4_NTY)ACGCWTSANYGNN|PPARD_NRRGGTCRTGACCY|T(?:HRB_NRRGGTCRTGACCY|CF21_NACCATATGK|CF21_NAACAGCTGY|EF_NRTTAYGTAA)|R(?:(?:AR[AG]_NRGGTCR|XRB_NRGGTCR)|ORC_NRGGTCR)TGACC|MSGN1_NRCCAWWTGK|MESP2_NAMCATATGK|ATF(?:6(?:B_NRTGAY|_NRTGAC)GTC|2_NRTGAYGTC)A|CEBP[BD]_NRTTGCGYAA|MYF6_(?:CGTCANNTGT|NAACANNTGW)|ASCL1_NRCAGCTG|HES(?:2_GGCR|7_GGCA)CGTG|SIX2_NCGTATCR)Y|TFCP2L1_NCCGGNNNNNNCCGG|(?:MAFG_NYGCTGA(?:YR|S)TCAGC|GATA4_NWGATAAS|ARGFX_NCTAATTA|NR4A2_NAAAGGTC)R|(?:RFX(?:3_NGTTGCCATGGC|[14]_NGTTRCCATGGY)AA|NR3C1_NGWACANNNYGTW|MAF[AG]_NWWWNTGCTGA|TFAP2B_NGCCNNNGG|SOHLH2_NGCACGTG)C|S(?:KOR[12]_NWNNKKTAATTAA|OX(?:1(?:2_ACCGAACAAT|4_NGAACAATG)|9_MGAACAATR|8_AGAACAATG|30_GAACAAT)|IX4_NCGTATCAT|HOX_CYAATTA)|SP(?:1_NWRG|[89]_N)CCACGCCCMY|KLF14_NRCCACGCCCMY|POU2F2_NTATGCWAAT|BHLHA15_NMCA(?:GC|TA)TGK|NFATC3_NAYGGAAAM|(?:NKX3\-[12]_NCCAC|HMX2_NCAM)TTAA|SP3_NRCCMCGCCCMY|(?:(?:HOXA6_NG|LBX2_NC)YAATT|RARA_NRRGGTC)AN|(?:KLF(?:(?:(?:(?:16_N|2_NR)CCACR|4_NRCCMCG)|5_NMCACG)|6_NRCCACG)C|DMBX1_NTAAT|PITX(?:[12]|3)_NTAAT)CC|TCF12_NCACSTG)N_e|(?:N(?:HLH1_NKGNMKCAGCTGCGYCM|R2F[16]_NRGGTCAAAGGTCA)|FLI1_NACCGGATATCCGGT|MAFF_NYGCTGASTCAGCR|ERG_NACCGGATATCCGGT|(?:HOX(?:(?:A13_NCTCG|C1[01]_NRTCG)TAAA|(?:A10_NGY|C1(?:0_N|1_R)GY)AATAAA|D9_GYAATAAA|A5_NYAATT)|(?:(?:(?:LMX1B_NWWYT|DLX[3-5]_NY|MSX1_NC)AA|ISL1_SCAC)|(?:ALX3_C|DLX2_N|E(?:MX1_N|SX1_Y))YAA)TT)A|EL(?:F2_NATG|K1_NAC)CGGAAGT|ESRRA_NYCAAGGTCA|GSC_YTAATCC)N_e|N(?:R2F1_NRGGTCRNTGACCYN|EUROG2_RNCATATGNY)_e|(?:CREB3L1_TGCCACGTGGCA|T(?:GIF2LX_TGACANNTGTCA|FAP4_A(?:NCATATGN|WCAGCTGW)T)|PKNOX1_TGACANNTGTCA|IRF5_NYGAAACCGAAACY|NEUROG1_RNCATATGNY|LEF1_ASATCAAAS)_e|(?:IRF8_NYGAAASYGAAAS|OVOL2_NWWCCGTTAYN|MYO(?:D1_(?:NAA|YGT)CANNTGT|G_(?:NAA|CGT)CANNTGT)|(?:CEBPG_NRTTGCGY|DBP_NRTTAYGT)AA|(?:CREB5|BATF3)_NRTGAYGTCA|JDP2_NRTGAYGTCA|MSC_NRNCATATGN|ASCL2_NRCAGCTG|HEY2_NGCACGTG)YN_e|(?:(?:HOXA10_NGTCGTAAAAN|(?:(?:ELK3_NACCGGAAGTN|OLIG3_ACCATATGKT)|DLX1_NYAATTAN))|PBX1_KTGATTGAYR)_e|(?:ATF3_NRTGAYGTCA|MSC_NRACAGCTGT)YN_e|S(?:NAI2_NRCAGGTGCR|IX1_NSRTATCRYN)_e|(?:MAF_NYGCTGA|OTX1_NTAATC)CN_e)|(?:KLF13_NRCCACGCCCMYN|GATA5_WGATAACGATCT|PROP1_TAATTNNATTA|(?:GATA5_NWGATAASR|LHX4_NTAATTA)N|HEY1_NGCACGTGYN)_e)DBD|(?:ELF3_ACCCGGAAGNNNNNNNNNWWWWW_e|NR2F6_NRGGTCRNTGACCYN_e|(?:(?:(?:HSF1_NGAANNTTCNNGAA|ELK3_NTCGTAAATGC)N|LEF1_WCATCGRGRCGCTGW)|DMRTC2_WWTTGNTACATN)_e|P(?:OU4F3_NTNAATWATGC|AX7_NTAATYGATT)AN_e|(?:CREB(?:3L1_TGCC|1_NRTG)ACGTCAY|HSF2_NGAANNTTCNNGAA)N_e|SPDEF_NAMCCGGATGTN_e|E(?:(?:LF(?:2_NACC|1_NATG)|LF1_NACC)|TV4_NRC)CGGAAGTN_e|FLI1_NACCGGAARTN_e)DBD|(?:(?:ESR1_NAGGTCANNNYGACCT|MAFF_NYGCTGAYRTCAGCR)|NRL_NWWWNTGCTGAC)N_eDBD_(?:meth|repr)|(?:(?:PRDM4_YRRCNGTTTCAAGKCYCCC|ATF4_GGATGACGTCATC|GSX1_CTAATTA)C|B(?:CL6B_RYGTAATCGAGGAATW|ARHL2_NTAAACGNY)|G(?:LI2_NGACCACCCACGWYG|SX2_STMATTAR)|POU3F[24]_NTATGCWAATKAN|(?:E2F4_WTTTGGCGCCAWW|GATA6_NGATAACGATC)W|ATF6B_YGCCACGTGGCA|SREBF2_ATCACG(?:CC|TG)AY|OLIG3_ANCAGCTGTT|JDP2_GATGASTCATC|OLIG2_ANCATATGNY)_eDBD|(?:BACH2_NWWNNATGACGTCAYNNWW|(?:(?:RUNX2_NWAACCGCANNNACCGC|HSF4_NGAANNTTCNNG)A|NFATC[12]_NTTTCCATGGAA|(?:POU(?:4F3_NTGCATW|2F2_NTMATT)ATG|FOXG1_NAYRYAAA)C|(?:HOX(?:B(?:13_NCC|9_GY)|C13_NCC)AATA|CDX(?:1_NGYMATA|2_NYAAT))AA|SREBF1_NTCACGTG|HOXA4_RTMATT|HOXB1_STAATT|LHX1_NYAATT|UNCX_KTAATT)A|HSFY2_NCRTTCGAAWCRTTCGAW|(?:P(?:OU3F1_NAATTANNNNNTAA|ROX1_NAAGRCGTC)T|(?:IRX3_NACATGNNNNNNCAT|E(?:LF4_NAC|TV5_NR)CCGGAA|GABPA_NACCGGAA|ETV1_NACCGGAW|ETV2_NRCCGGAA|FEV_NACCGGAA)G|SCRT2_NGCAACAGG|GCM1_RTGCGGG)T|(?:GMEB2_NYACGTANNNTACGT|MAFA_NYGCTGA(?:YG|S)TCAGC|POU3F4_N(?:TAATKAKATGC|ATTATGCAT))R|UBP1_NNCCGGNNNNNNCCGGN|CREB3L1_NTGCCACGTGTAC|BCL6B_NYGCTTTCKAGGAAT|(?:PAX9_NSGTCACGCWTSANY|GLIS1_NACCCCCCACGWM|MYCN_NKCACGTG)G|POU(?:3F(?:(?:2_NTAATKAKATGCA|4_NTAATTWATGCR|1_NTAATTWATGCN)|2_NTAATTWATGCR)|1F1_NTAAT(?:GAK|TT)ATGCR)|FOXD2_NAACAATAAYAWW|POU3F1_NTATGCWAATNN|(?:IRF7_NYGAAANYGAAAN|(?:(?:CREB3L4|(?:CREM|ATF7))_NRTGACGTC|FOSB?_NRTGACGTC)A|ONECUT[13]_NYATCGAT|CLOCK_NMCAYGTG|NPAS2_NMCACGTG|TFE(?:[3B]_N|C_M)NCACGTGA|USF2_MNCACGTGA|SIX3_NSSTATCR)Y|(?:ONECUT2_NTATCGAT|ERG_NACCGGAAR)Y|KLF15_NCCACGCCCMY|TFAP2C_NGCCYNMGGC|TBX1_NWAGGTGTGAR|JUND_NRTGACGTCAT|TCF4_NCACSTG)N_eDBD|(?:ELF3_ACCCGGAAGNNNNNNNNNWWWWW_F|P(?:AX6_NYACGCNTSANYGNNYN|BX1_KTGATTGAYR)_F|N(?:R2F1_NRGGTCRNTGACCYN|EUROG2_RNCATATGNY)_F|(?:CREB(?:3L1_TGCC|1_NRTG)ACGTCAY|HSF2_NGAANNTTCNNGAA)N_F|SPDEF_NAMCCGGATGTN_F|E(?:(?:LF(?:2_NACC|1_NATG)|LF1_NACC)|TV4_NRC)CGGAAGTN_F|FLI1_NACCGGAARTN_F)L|(?:(?:FOXA(?:1_NWR|3_NWN)WGTMAATATTKRYNYW|(?:TBX20_N(?:AGGTGTKARGGYGTK|TNACRCCTANGTGTG)|FOXA3_NSYTAWGTAAACAA|(?:PAX7_NSGTCACGSNNR|MEOX[12]_NTCG)TT|HOX(?:D(?:10_NG(?:YAA|TCG)|9_GTCG)TA|C9_G(?:YAA|TCG)TA)AA|HMX2_NCCAMTTA|(?:HOX(?:A2|D4)_NTM|(?:MEOX[12]_NY|H(?:ESX1_CT|OX(?:(?:B5|A1)_N|D3_Y)T)|GBX2_NC)A|(?:V(?:SX(?:2_SY|1_C)|AX2_N)|LHX(?:5_S|8_C))YA|PRRX2_CYA)ATT)A|POU5F1_NWWTATGCTAATKAR|N(?:FI[BC]_NTTGGCNNNNTGCCAR|(?:KX(?:2\-(?:3_NNCACTTR|8_NNCACTTS)|6\-2_NTCATT)|R5A1_NYCAAGGTC)A)|ETV7_NMGGAARNNYTTCCK|PAX7_NNATTCGTCACGST|RXRG_NRGGTCAAAGGTCA|MAF_NYGCTGA(?:YG|S)TCAGCR|TFAP2A_NSCCYNRGGS|(?:EGR3_NMCGCCCACG|FOXL2_NAYRTMAA)CA|VENTX_NGYAATTAG|HOX(?:A9_RTCGTAA|B7_NGTAATT)AN|TEAD2_NRCATTCCW|RHOXF2_NTAATCC|PITX[12]_YTAATCC|(?:OTX2|CRX)_NTAATCC)N_F|(?:N(?:HLH1_NKGNMKCAGCTGCGYCM|R2F[16]_NRGGTCAAAGGTCA)|FLI1_NACCGGATATCCGGT|MAFF_NYGCTGASTCAGCR|ERG_NACCGGATATCCGGT|(?:HOX(?:(?:A13_NCTCG|C1[01]_NRTCG)TAAA|(?:A10_NGY|C1(?:0_N|1_R)GY)AATAAA|D9_GYAATAAA|A5_NYAATT)|(?:(?:(?:LMX1B_NWWYT|DLX[3-5]_NY|MSX1_NC)AA|ISL1_SCAC)|(?:ALX3_C|DLX2_N|E(?:MX1_N|SX1_Y))YAA)TT)A|EL(?:F2_NATG|K1_NAC)CGGAAGT|ESRRA_NYCAAGGTCA|GSC_YTAATCC)N_F|(?:THRB_NYGACCTNNNNYGACCT|IRF9_NYGAAASYGAAAC|R(?:ARB_NRGGTCRT|XRG_NRGGTCAY)GACC|FOSL1_NRTGAYGTCA|ATF2_NRTGAYGTMA|JDP2_NRTGASTCA|MAFG_TGCTGACG)YN_F|TFCP2_AWCCGGWTNNAWCCGGWT_F|(?:F(?:ERD3L_GYNNCATATGNNAC|OSL1_RATGAYACG)|S(?:OX8_ACAATNNNNNNATTGT|NAI3_NRCAGGTGCR)|(?:POU4F3_ATGCATWATGCA|DMRTA1_WWTTGWTACAT)T|BHLHE23_ANCATATGNT|HOXA13_NCCAATAAAAN|(?:MEIS2_TGACANNTGTC|LHX6_TRATTGCAATY|DMRTC2_GAACGATAC)A|PHOX2B_TAATTAGATTA|NEUROD2_RMCATATGYY|MAFG_TGCTGANNNTGCR|I(?:RF2_YGAAASYGAAAS|SX_CTAATTAR)|MIXL1_TAATYNRATTA|ALX1_TAATTAGATTA|HOXB4_RTMATTAR|LHX9_CYAATTAN)_F|(?:LEF1_WCATCGRGRCGCTGW|DMRTC2_WWTTGNTACATN)_F|P(?:OU4F3_NTNAATWATGC|AX7_NTAATYGATT)AN_F|(?:CREB3L1_TGCCACGTGGCA|T(?:GIF2LX_TGACANNTGTCA|FAP4_A(?:NCATATGN|WCAGCTGW)T)|PKNOX1_TGACANNTGTCA|IRF5_NYGAAACCGAAACY|NEUROG1_RNCATATGNY|LEF1_ASATCAAAS)_F|(?:IRF8_NYGAAASYGAAAS|OVOL2_NWWCCGTTAYN|MYO(?:D1_(?:NAA|YGT)CANNTGT|G_(?:NAA|CGT)CANNTGT)|(?:CEBPG_NRTTGCGY|DBP_NRTTAYGT)AA|(?:CREB5|BATF3)_NRTGAYGTCA|JDP2_NRTGAYGTCA|MSC_NRNCATATGN|ASCL2_NRCAGCTG|HEY2_NGCACGTG)YN_F|KLF15_NCCMCGCCCMYN_F|ESRRG_NYCAAGGTCAN_F|SIX1_NSRTATCRYN_F|BARHL2_NTAATTGN_F)L|(?:(?:TFCP2_AWCCGGWTNNAWCCGGWT|PAX6_NYACGCNTSANYGNNYN)|ESRRG_NYCAAGGTCAN)_eDBD|(?:(?:E(?:T(?:S2_NACCGGANNNNNNTCCG|V1_NACCGKAW)|LK4_NRCCGGAW)|HES6_GGCACGT|GCM2_RTGCGG)GT|(?:PAX8_NSGTCACGCWTSANYGNN|M(?:LX_YNCACGTGM|AX_RNCACGTG)|SIX2_MCGTATCA)Y|NHLH2_NKGNMGCAGCTGCGYCM|(?:GMEB1_NKACGTANNNTACGT|E(?:LK|TV)4_NTCGTAAATG)M|FOXA1_NMYTAWGTAAACAAA|E(?:2F1_NWTTTGGCGCCAWWW|RG_NACCGGAART)|POU6F1_NTAATGAKATGYR|ONECUT1_NTATCGATCGN|ONECUT2_NTATCGATCGR|(?:ONECUT2_NTATCGATT|DMRT1_NNTYGNTACA|JUN_NATGACKCA)T|(?:BARX2_NWWAAYC|LHX6_CTA)ATTA|SPIB_RAWWGMGGAAGT|(?:CREB3_NGCCACGTC|USF1_MNCACGTG)AY|CREB3_NRTGACGTCAY|YY(?:2_NKCCGCCATT|1_NGCCGCCATY)TTG|EL(?:F5_NAM|K3_A)CCGGAAGT|(?:FOSL1_NRTGAN|JUN_NATGACG)TCAY|ATF3_NRTGACGTCAY|XBP1_N(?:KMC|RTG)ACGTCAY|RARB_NAAAGGTCA)N_FL|(?:TCF7L1_(?:WCATCGRGRCGCTGW|ASATCAAAS)|KLF17_NMCCACGCWCCCMYY|(?:TGIF2LY_TGACANNTG|(?:BBX_TGAWCNNNGW|DUXA_TRAYNTAA))TCA|BHLHE40_GTCACGTGAC|S(?:OX7_ACAATNNNATTGT|MAD5_YGTCTAGACA)|PTF1A_NYGTCAGCTGNY)_eDBD|(?:(?:FOX(?:P3_NAWTTGTAYGACAAAT|R2_NYRTAWACATAAATNN)|(?:IRF4_NYGAAASYGAAAS|OVOL1_NRWACCGTTATN|HLF_NRTTRYGYAA)Y|(?:EGR2_NMCGCCCACGC|XPA_NCACCTCAC|HOXC8_NTAATT)A|(?:OTX1_NTAATCCN|RARG_NRGGTCA)Y|TEAD1_NRCATWCC|TGIF2_NTGACAG)N|(?:(?:NR2F6_NRGGTCRNTGACCYN|(?:HOXA10_NGTCGTAAAAN|(?:OLIG3_ACCATATGKT|DLX1_NYAATTAN)))|(?:M(?:AF_NYGCTGACNNNGCR|EF2C_CCWWATWWRG)|LHX8_TRATTGCAATYA|KLF12_NRCCACGCCCW)))_FL|(?:ESR1_NAGGTCANNNYGACCT|MAFF_NYGCTGAYRTCAGCR)N_FL|(?:CREB3L1_TGCCACGTGTACR|ATF4_GGATGAYGTCATCC|GATA3_NGATAACGATCW|SNAI2_NRCAGGTGCA)_FL|NR4A1_NAAAGGTCAN_eDBD_[12]|ARNT[2L]_RTCACGTGMN_eDBD|NRL_NWWWNTGCTGACN_FL|CDX2_NRTCGTAAAN_eDBD|KLF3_NRCCRCGCCCN_FL|BARHL2_NTAAACGN_FL)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:17.88 = 17.88 seconds
  * Elapsed CPU time:
     - User: 16.18
     - Sys: 1.69
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 3
     - Involuntarily (time slice expired): 22
  * Maximum resident set size (RSS: memory) (kiB): 8250552
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 72
  * Exit status: 0


taipale_tf_pairs
^taipale_tf_pairs__(?:(?:(?:P(?:OU2F1_FOXO6_RMATATKCNNNNNNNNNNNNN(?:NNN?RWMAA|RWMAA)C|OU2F1_EOMES_NNNTATGCAGYGTK|BX4_HOXA1(?:0_(?:YNNRTAAATC|NTCGTA)|_NYNATM)AATC)|(?:HOXD12_EOMES_(?:AGGYGYGANNNNNNNNNNNNNNN|TMRCACC)TCRTW|(?:TFAP2C_HOXB13_SCCNNNNGGCATNG|HOXC10_TBX21_TMRCACYTMA)TW|GCM2_TEF_RTRCGGGNNNNTTACGT|FOXO1_HOXA10_RWMAACAYCRTW)A|(?:(?:(?:TEAD4_FOXI1_(?:RCATWCCNNNNNNNNNNN(?:N(?:NN?R|R)|R)|GGWATGYG)T|FOXJ2_HOXB13_(?:NTTTATNRNT|TTTWATNRN))M|ETV2_FOXI1_RNCGGAANNA)|FOXJ2_PITX1_NTAATCCNNWM)AAC|(?:TEAD4_HOXA13_RCATWCCNNNNNNNNYNN|HOX(?:D12_TBX21_AGGTGTKAAGTC|B2_HOXB13_NNATCATN)G|POU2F1_HOXB13_NRMATATACCAA|(?:HOXB13_TBX21_ARGTGNNNNNN|GCM1_HOXB13_NCCCGCANNM)A)TAA|(?:(?:HOXB2_ESRRB_TAATK(?:NN|R)NNNNNNAAG|TEAD4_ESRRB_RCATWCNNNNNNAG)|MEIS1_HOXB13_SYMRTAAANCT)GTC|(?:FOXO1_HOXB13_GWMAACANNSYM|GCM1_HOXB13_NCCCGCANNNM|TEAD4_HOX(?:A13_GGWATGNNN|B13_RRAATGCA))RTAA|FOX(?:O1_HOXB13_RWMAACASYMR|J2_HOXB13_RTAAACWNA)TWAA|ELK1_(?:EOMES_RSCGGAANNAGGYGYN|SREBF2_RSCGGAANTSRCGTG|FOXI1_RSCGGAANRTMAAY)|HOXA3_EOMES_TAATKAGGTGNK|TEAD4_EOMES_RGAATGYGTG)A|TFAP2C_DLX3_NSCCNNNRGGCANNNNNN?TAATKR|(?:TEAD4_(?:(?:(?:CEBPD_NTTRCGYAANNNNNNNNRGWAT|(?:CEBPD_NTTRCGYAANNNNNNNRGWAT|(?:(?:CEBPB_NTTRCGYAANNNNNNG|(?:SOX(?:15_NACAATR|6_NNACAATN)NNNNN|SOX15_NACAATRNNNN))GAAT|HES7_GGWATGYNNNNCRCGY)))|GATA3_NGATAASNNNRGWAT)G|TBX21_ANGTGTGAATWC)|ETV2_HES7_NNCACGTGNNNNNCGGAWR|GCM1_SOX2_RTRSGGGNNNATTGTK|FOXJ3_TBX21_WAACAACACM)Y|(?:T(?:FAP2C_HES7_NNCRCGYGNNNNNNN?SCCNNNGG|EAD4_GSC2_RGWATGTTAATCC)|ETV2_RFX5_NCCGGAAGYNNCNTAGCAAC)S|(?:RFX3_FIGLA_GTTGCYNNNNNNNNNNNNCASS|(?:HOXB2_PAX1_NNMATTAGTCACGCWTSR|ELK1_PAX5_RSCGGAACYACGCWYSA)N|PITX1_FIGLA_TAATCCNNNNCASS)TG|(?:M(?:YBL1_(?:(?:(?:FIGLA_NCASSTGNNNNNNN(?:NN?CS|CS)|TBX21_AGGTGTGNCS)|ELF1_NMCCGGAACC)|HOXA13_CTCRTAAAWNNNNRMC)GT|EIS1_ONECUT2_TGACAGNWAATCRA)T|(?:HOXA3_PAX5_YNATTAGTCACGCWTSRN|(?:GCM2_DLX2_RTRCGGGN|TEAD4_DLX2_RCATTCY)NNNNTAAT)T|(?:HOXB2_SOX15_NYMATTANNNNNN?ACA|GCM1_ONECUT2_RTGCGGGNNATCG)AT|TEAD4_EOMES_GGWATGNRAGGTGNN)R|(?:(?:(?:(?:(?:TFAP2C_DLX3_NSCCNNNRGGCANNNNY|HOXB2_SPDEF_ANCCGGATNNNNNN|HOXB2_SOX15_ACAAWRSNNNN?Y|HOXB2_TCF3_NCACCTGNNNNN)M|E(?:TV(?:5_HOXA2_RSCGGWAATKNNNNNNNN|2_HOXA2_NCCGGAAGT)M|RF_HOXA3_RSCGGAWNNNNNNNYM|LK1_EVX1_RSCGGWANNNNYM|TV2_DRGX_RSCGGAWRY)|TEAD4_ALX4_RCATWCYNNNNTAATYRN|HOXB2_SOX15_ACAAWRSNNNNNYM|(?:TFAP2C_DRGX_SCCNNNGGCNNY|E(?:TV2_DLX2_RCCGGAANN|RF_DLX3_RSCGGAA)NNNNY|HOXB2_HOXB13_NNCGTAA|MEIS1_DRGX_TGTC)A|TEAD4_ALX4_GGAATGNNNNNYTA|MEIS1_EVX1_TGACANNNNNTC)|(?:TEAD4_PITX1_RCATWCNNNNG|ETV2_GSC2_RSCGGAANNNNG|GCM2_PITX1_RTRCGGGNN|HOXB2_PITX1_TAATKRNG)G)|(?:(?:TEAD4_PITX1_RCATWC|ETV2_GSC2_RSCGGAA)NNNNN|HOXB2_PITX1_TAATK(?:RNN|A)NN|HOXB2_PITX1_TAATKRNRN|FOXJ2_PITX1_TAAACA)GG)AT|P(?:ITX1_(?:(?:EOMES_RGGTGTKANN|(?:HES7_NNCRCGTGNN|HES7_NC(?:RCGTGN|ACGTG)))NN|TBX21_AGGTGNGAAR)GGAT|OU2F1_DLX2_WTWTGCATANNTAAT))TA|GCM(?:(?:(?:1_(?:(?:FIGLA_CASSTGNNNNNNNNNNNT|FIGLA_CASSTGNNNNNNN(?:N(?:NN)?T|T))G|PITX1_GGATTANNNNNN(?:N(?:NN)?TG|TG))|1_NHLH1_NCAGCTGNNNNNNNTR)|1_NHLH1_NCAGCTGNNNNNNNNTR)|2_FIGLA_NCASSTGNNNNNNNNRTR)CGGG|POU2F1_DLX2_TGMATATKCANNNNN?TAATKR|(?:E2F1_EOMES_NGGTGTGNNNGGCGCSNNNCR|T(?:EAD4_(?:(?:E(?:RG_RSCGGAANNNNNNNNC|LK3_NCCGGAANNNNNNNM)ATW|PITX1_RCATWCYNNNNN?TAAT)|CLOCK_NCACGTGNNNNNNCATW)C|FAP2C_E2F8_NNTCCCGCNNNCCNNNGG))C|(?:MYBL1_MAX_YAACGGNNNN|TEAD4_MAX_RCATTCC)NNNNNNNCACGTG|(?:TFAP4_DLX3_NCAGSTGNNNNNNNG|T(?:FAP4_DLX3_NCAGSTGNNNNNNG|EAD4_DLX2_RGWATGY)|E(?:TV2_DLX3_RSCGGAANNNNNNN|LK1_HOXA3_RSCGG)|GCM2_DLX3_RTRCGGGNNNNNN|GCM1_HOXA2_RTRSGGGNN|MEIS1_D(?:LX2_TGACANNN|RGX_TGACAS))TAATKR|(?:SOX6_TBX21_RGGTGTNNNNNNNNNYATTG|ETV2_SOX15_RSCGGAANNNNNNN?YWTTG|TEAD4_SPDEF_RGAATGCGGAWR)T|(?:MYBL1_MAX_YAACGGNNNNNNNNNNC|TEAD4_MAX_R(?:CATTCCNNNNNNC|GAATGYNN))ACGTG|E(?:LK1_(?:ONECUT2_RSCGGAASNGRTCGAT|FOXI1_RSCGGAANNRTMAAY)AN|TV2_BHLHA15_RSCGGANNCATATGK)|GCM1_FIGLA_CA(?:GCTGNNNN|SSTG)NNCCCGCAY|RFX3_SREBF2_NNRGYAACNTCACGTGAY|HOXB2_RFX5_TAATKRNNNNN?GCAAC|MYBL1_EOMES_RSGTGNNNAACGK|FOXO1_SPDEF_WMSCGGATGTKNW|GCM2_MAX_NTRNGGGNNNCACGTG)_CAP_repr|(?:(?:HOXD12_TBX21_NGGTGTNNNNNNNNNNNNNCACNTNNTW|(?:TEAD4_ESRRB_RCATTCYNNNNCAAGGT|ELK1_FOXI1_RSCGGAANRWMAA|MEIS1_EOMES_AGGTGTTGA)C|(?:GCM1_CEBPB_ATRSGGGNNNNTTR|ETV2_CEBPD_RSCGGANNTTG)CGYA|(?:(?:(?:HOXB13_(?:TBX21_ARGTGNNANNNMW|ETV1_RSCGGAARYNN)|HOXD12_ELK1_NRSCGGAAGNNG|(?:HOXB(?:13_EOMES_ANGTGTSNN|2_HOXB13_NNMATCAC)|GCM2_HOXA13_RTRCGGGTA)A)|HOXD12_HOXA3_NTAAT(?:NRSNY|KRSN)MR)T|E(?:(?:LK1_HOXB13_RSCGGAAGNNG|TV2_HOXB13_NCCGGAANYA)|RF_HOXB13_NNMGGAARNNR)T)AA|MGA_DLX3_YNATTANRGGTGTG|POU2F1_ETV1_NCCGGATATGC|FLI1_FOXI1_GAAAACCGAA)A|(?:POU2F1_EOMES_NNNTATGCNNNGYGANNNNNNNNNNNCR|TEAD4_EOMES_NGYGNNAMATWCYNNTMRCR|ETV2_GSC2_RCCGGANNNNNNNN(?:NN?TAATC|TAATC)|(?:TEAD4_E(?:TV7_RGAATGCGGAARYNNN|OMES_NNGYGYSACAT)T|(?:TEAD4_HOXA13_CYCRTAAATW|MGA_PITX1_RGGTGNTAAK))C)C|(?:TFAP2C_ONECUT2_NAT(?:YGATNNNNNNNNNG|(?:CGATNNNNNNNNG|CGATNNNNN(?:NN)?G))CCTNNGGS|E(?:TV2_EOMES_NGGTGTNNNNNNNNNNNNNNNCCGGAWN|LK1_TBX21_ANGTGNNANNNNNNNNNNNCNNMGGAW|RF_(?:CLOCK_CACGTGNNNNNSR|SREBF2_NNCACGTGACM)GGAAR|2F3_FOXO6_NMATGACACGCGCCM)|(?:(?:TFAP2C_ETV7_SCCNNNGGSNNNGGAAGNNN|HOXB2_ETV7_TAATKNNNNGNNNNNNC)TTC|FOX(?:J3_TBX21_NNGYGNNNNNNNNWAACAACA|O1_ETV7_RWMAACAGGNNNNNNTTC)|(?:ETV7_TBX21_NSCGGAARNNNNNN?TC|HOXB13_(?:EOMES_NNMRTAAANTM|TBX3_NNNRTAAATC))ACA|ETV2_RFX5_NNNTTCCGSNNNNGCAA)C|POU2F1_EOMES_(?:ARGTGTNNNAATATKYNNNCRC|RGTGTNNNAATATK)|MYBL1_EOMES_NNSYGNCNAACNNNNNNCACRC|(?:GCM(?:1_(?:SPDEF_RTRSKGGCGGANNNNNN?ATCC|ETV7_NT(?:NNN|RNG)GGCGGAAGNNNTTCC)|2_EOMES_RTGCGGGNAGGTG)|TEAD4_(?:SPDEF_RGWATSCGGATGNNNNTCCK|HOXA13_RCATWCCNNNNNNTTTAY)|HOXD12_EOMES_NNNACGANNNNNNTCGT)N|E2F3_EOMES_NNGYGNNNNGGCGCSNNNNCRC|GCM2_(?:SOX15_(?:RTRCGGGNN|ATRCGGGY)NNNNNYWT|TBX21_NNNCGGGNNNGG)TGT|E(?:(?:TV2_TEF_TTACGTNNNNNNNNNC|LK1_SREBF2_RWCACGTGNN)CG|RF_HES7_NNCACGTGNNNNN?CCG)GAA|HOXD12_ELK3_NTTTAYNNCCGGAAR|MYBL1_ONECUT2_NAACGGNNATYGA|FOXJ2_ELF1_RMAGAAAACCGAA)N|TEAD4_PAX5_RCATWCCNNNNNNNNNNNNRWGCGTGAC|(?:(?:(?:TEAD4_RFX5_RCATTCNNNNNNNNNNNNNNNNN|HOXB2_RFX5_SYMATTANNNNNNR)|TEAD4_RFX5_RCATTCNNNNNNNNNNNNNNNN)|ETV2_RFX5_RNCGGAANNNNNNNNN)GCAAC|(?:E(?:2F1_NHLH1_SGCGCCNNNNNNNNNNNNCAG|(?:TV2_NHLH1_NCCGGAANNNNNNCAG|RF_FIGLA_RSCGGAANCAS))C|(?:HOXB2_NHLH1_NYMATTANNNNNNNC|HOXB2_NHLH1_NYMATTANNNNNN?C)AGC|RFX3_FIGLA_TRGYAACNNNNCASS)TGN|(?:(?:E(?:LK1_HOXA3_NCCGGWNNNNNNNNNNNSC|TV5_EVX1_RSCGGWAATNNNNN)|HOXB2_ETV7_NSCGGAARNNNNNN?M|HOXB2_PAX5_NNGTCACGCNNC|GCM2_DRGX_RTRSGGGNN?A)|GCM2_PITX1_RTRCGGGSG)ATTA|RFX3_(?:ETV7_NNNMGGAANNNNNTCCNNNRCAAC|BHLHA15_NRGYAACNNNCATATGK)|(?:ETV2_EOMES_RCCGGANNNNNNNNNNNACACC|TEAD4_DLX2_NRCATTCNNNNYAAT|HOXB2_ELF1_TAATKRNNNNGGAAG|MGA_EVX1_AGGTGNTAATKWNNNN|(?:(?:GCM1_EL(?:K3_R|F1_G)TGCGG|TEAD4_ELF1_GGAAT)G|MEIS1_ELF1_NTGC)CGGAAG|FOXO1_ELF1_RWMAACAGGAAG)T|(?:HOXB2_TBX21_NGGTGTGNNNNNTMATTWGC|E(?:TV5_CLOCK_NCACGTGNNNNNS|RF_FOXI1_TGTTKM)CGGAW|GCM2_E2F8_NTRYGGGNNNTGGCGGGA|TEAD4_ELK1_RMATWCCGGAW)R|ARNTL_BHLHA15_RKCACGTGNNNMCATATGK|(?:ETV2_ONECUT2_RCCGGAANNNNNNR|GCM2_ONECUT2_RTRCGGGNNNNNN)ATCRAT|(?:(?:T(?:EAD4_(?:(?:EOMES_RGGTGTNNNNNNNNGA|HOXB13_C(?:TCG|YAA)TAAA)AT|HES7_RCATTCCNN(?:NNN)?CRCGY|TCF3_NCAGGTGNGWAT)|FAP2C_ELK1_NGCCTNNGGSNNCGGAA)|GCM1_MAX_NNCACGTGNNNGCGG)G|MYBL1_FIGLA_NCASSTGNNNNNN?YAACSG|E(?:(?:(?:TV2_(?:(?:FIGLA_NNCAGGTGNNNNNM|DLX3_TAATTRNNNN)CGGAA|ONECUT2_(?:RRTCRATNN|NRTCRATA)NCGGAA)|TV2_TCF3_CASSTGNNCCGGAW)|TV2_NHLH1_NGCAGCTGCCGGAW)|RF_NHLH1_NNCAGCTGCCGGAW)R|HOXB13_TBX3_NNNRTAAANNTNACAC)Y|ETV2_ONECUT2_RCCGGAANNNNNN?ATCGAT|(?:HOXB2_EL(?:F1_N(?:NYMATTA|YMATTAN)NNNNNNN|K1_TAATKRCC)GGAA|GCM1_EL(?:K1_RKRNRGGCGGAAR|F1_NRCCCRNN)CGGAA|(?:GCM2_HES7_RTRNKGGTNNNG|ERF_HES7_NCCGGAANNNNNN)CACGY|RFX3_HES7_NRGCAACNNNCRCGY|GCM1_(?:TBX21_AGGTGTNRTRC|FOXI1_RTAAATAN)GG|MYBL1_MAX_NCACGTGNNYAACS)GN|ETV2_SOX15_RSCGGAWNNNNNNNACAATR|SOX6_TBX21_RRGTGTNNNNNNNNACAATR|(?:E2F3_ONECUT2_NNSGCGCSNNNN?ATCG|TEAD4_ONECUT2_RCATTCCNNATCG)AY|ETV2_HES7_RSCGGAANNNNNNNCACGTGN|E(?:TV2_RFX5_NACTTCCGGYNNNNGCAACS|2F(?:1_HES7_(?:SRCRCGYGS|RRCRCGYG)YNNNNSGCGCS|3_(?:TBX21_NGGTGTGNNNGGCGCS|FOXI1_NNMCACCGCGCCCM))|(?:TV2_SREBF2_RTCACGYSNCCGGA|RF_FOXI1_RSCGGATGTTK)W|RF_ETV7_NSMGGACGGAYNTCCKS)|ETV2_SOX15_RSCGGAWNNNNNNACAATR|ARNTL_PITX1_(?:NNCACGTGNNNNRGM|CACGTGNNNRGA)TTA|ETV2_HES7_RSCGGAANNNNNNCACGTGN|GCM2_SOX15_RTRCGGGNNNRNACAAW|POU2F1_SOX(?:15_NNNGMATAACAAWR|2_NATTTRCNNNACAAT)R|(?:(?:(?:TEAD4_ELK1_RCCGGANRNNCGGW|HOXB2_EOMES_RGGTGTTA)A|E2F3_DRGX_SGCGCTAAT)|PITX1_EOMES_GGATTANNARGTG)TK|ERF_SREBF2_NSCGGAARNCACGTGN)N_CAP_repr|TFAP2C_MAX_TNSCCNNNGGSNNNNNNNNNNNNNN?CACGTGN_CAP_repr|(?:GCM(?:1_(?:TBX21_RGGTGWKNNNNNNNNNTNNCR|FOXI1_(?:NTGTTG|RTMAAC)A)TRNG|2_TBX21_AGGTGTNNNGSG|1_ELF1_NNMGGAARTGCK)G|(?:E2F1_ELK1_SGCGCNNNNNNNNNNN|GCM1_ELK3_ACCCGCANC)CGGAA|RFX3_SRF_NRGYAACNNNNNCCTWWWNNG|E2F1_ELK1_SGCGCNNNNN(?:NNNNN)?CGGAA|ETV(?:2_SREBF2_RTMRCGTGA|5_DRGX_TAATKRS)CGGAW)GN_CAP_repr|(?:(?:E(?:(?:LK1_TBX21_RAGGTSRNNNNNNNNNNNNNNNNCGGAAG|TV2_FOXI1_NRTMAACMGGAAR)|RF_FOXI1_RTAAACMGGAAR)|F(?:OXO1_ELK1_RWYAACAGGAAG|LI1_FOXI1_RTAAACMGGAAR))Y|ETV5_E(?:OMES_RNGTGNNNNNNNNNNNNNRCRCCGGAW|TV7_NNGGAMGGATKTCCG)S|(?:ETV(?:2_TBX21_(?:RGTGTKRNNNNNNNNNNNCN|TMACA)CMGGAA|5_FOX(?:I1_(?:TGTTGNC|GTMAACA)|O1_RTMAACA)GGAW)|GCM1_FOXO1_(?:GTMAATAA|RTMAATAM)GGGY)R|(?:E(?:(?:(?:RF_TBX21_NRGTGTNANNNNNNNNN|TV5_HES7_NNCACGTG)NNNNCCGGAA|2F(?:1_EOMES_RGGTGTNNNGGCGSNNTNNCRS|3_FOXO6_NMATGACACNGCGCCM)|LK1_ETV7_NNSMGGACGGAYNTCCKS)|RF_EOMES_RRGTGTKNNNNNNNNNNNNNNCMGGAN)|(?:GCM(?:1_SPDEF_RTGNKGGCGGAWGNNNNN?TCC|2_FOXI1_RTAAATANG)G|E(?:2F3_HES7_NNNNGCGCSNNNNNCAC|TV2_FIGLA_NNCGGAANCAG)GT|TFAP4_ETV(?:1_RSCGGAANCAG|4_RCCGGAARCAS)ST)G|HOXB13_TBX21_ARGTGTKANTTTAT|HOXB2_PAX(?:1_NNGTCACGN|9_SGTCACGC)NTCATT|ETV5_TCF3_CASSTGNRNNGGAAG|F(?:OXO1_E(?:LF1_NTGTTGNC|TV4_RWMAACA)GGAAR|OX(?:J2_ELF1_NWAAACAGGAAG|O1_ELK1_TGTTGCCGGAN)|LI1_FOXI1_TGTTKMCGGAWR)|ERF_FOXO1_RTMAACAGGAAR)N|A(?:LX4_(?:TBX21_RGGTGNTAATNNNNNNNNNCASY|EOMES_NGYGYTAAYNNNNNNTNACAC)N|TF4_CEBP(?:D_NGATGATGCAATN|B_NNATGAYGCAAY))|(?:ETV2_TBX21_RCCGGANNNNNNNNNNNACACC|(?:HOXB2_EL(?:F1_TAATKRNNNNN|K3_TAATGNNNNNC)|GCM1_ETV1_RTRNNGGC)GGAAG|(?:GCM2_ELK1_NNRNGGGCGGAA|E(?:TV2_FOXI1_T|LK1_FOXI1_W)GTTKMCGGAW)R|FOXO1_(?:ELK(?:3_RTMAACAGGAAG|1_RSCGGATGTTR)|FLI1_RTMAACAGGAAG))T|E2F3_TBX21_NGGTGTGNNGGCGCSNNNNCRM|(?:(?:GCM1_CEBPB_MTRSGGGNNNNNN?|TEAD4_CEBPD_RGWATGYNN)TTRCGY|E(?:LK1_(?:HOXB13_RNCGGAANYNRTW|TEF_NSCGGAWNTTACGT)|TV(?:5_CEBPD_NSCGGAN|2_TEF_RSCGGAW)NTTRCGY|RF_CEBPD_RSMGGAANTTGCGY)|(?:HOX(?:D12_E(?:LK(?:1_RSCGGAAGTAA|3_RSCGGAAGT(?:AA|CG))|TV(?:1_RSCGGAAGT(?:AA|NG)|4_RSCGGAAGT(?:AA|CG)))|B13_ELK1_RSMGGAARTNN)|GCM1_HOXB13_RT(?:GCGGGTAA|RNGGGTNN))TA|ETV2_HOXB13_NCCGGAAGTYRTA)AA|(?:ERF_ONECUT2_RSCGGAANNNNNNRTCG|ATF4_TEF_RNMTGATGCA)AT|GCM2_SOX15_RTRCGGGNNNNRNACAAW|(?:ETV(?:2_PITX1_RSCGGAANNNNNGGM|5_EVX1_RSCGGWAATNNNNA)TT|ETV2_FOXI1_RSCGGAANNRYMAAC|ETV2_EVX1_RSCGGWAATNNNYATT|HOXB2_ETV4_ACCGGAAATG)A|TEAD4_DLX2_NRCATTCNNNNNTAATTR|ELK1_SPDEF_NSMGGACGGAYNTCCKS|F(?:LI1_(?:D(?:LX2_RSCGGAANNNNNYA|RGX_NNCGGAWGYM)ATTA|CEBP[BD]_RNCGGANNTTGCGCAA|ETV7_NSMGGACGGAYNTCCKS)|OX(?:J2_HOXB13_RTAAACAYNRTAAA|(?:J3_ELF1_NNARAAAACCGAAWM|O1_ETV[14]_RCCGGAWGTKK)))|ETV2_ETV7_NSMGGACGGAYNTCCKS|POU2F1_SOX2_ATTTGCATNACAATR|TEAD4_SPDEF_RGAATGCGGAT|ETV(?:5_(?:FOXO1_RNCGGATGTTK|EOMES_TNRCACCGGA)|2_FOXO6_RCCGGATGTTK)W|(?:GCM1_ERG_RTRYGGGCGGAAR|TEAD4_DRGX_RGWATGYTAAT|HOXB2_TBX3_AGGTGTTAAT)K|ELK1_FOXI1_RSCGGATGTKK)N_CAP|(?:(?:(?:(?:GCM1_MAX_(?:NNCACGTGNNNNNNNNNNRTGCGGGYR|RTGCGGGNNNNNNNCACGTG)|TEAD4_ELK1_RGAATSCGGAAGY)N|TEAD4_(?:HOXA2_RCATTCNNNNNNCATTA|FIGLA_GGAATKNNCASSTG|ERG_RSCGGAAATRCC))|ELK1_TBX21_TNRCACCGGAAGNN)_CAP_|POU2F1_(?:GSC2_NNGATTANNNATGCAWNN|ELK1_NCCGGATATGCA)N_CAP_)repr|C(?:LOCK_(?:FIGLA_NCASSTGKNNNNNNNNN?CACGTGN_CAP_repr|NHLH1_N(?:NCAGCTGN|RCAGCTG)NNNNNCACGTGNN_CAP_repr|(?:EVX1_(?:YRATTAN|TAATTA)NNNNNNCACGTG|EVX1_(?:ATRATYANNNNCACGTG|CACGTGNNNTAATKAT)|TBX3_GGTGTGNNNNNCACGTG)_CAP_repr|BHLHA15_NCACGTGNNNNNCATATGN_CAP)|(?:UX1_(?:NHLH1_NNCAGCTGNNNNNNNN(?:NATY|ATC)GAT|(?:(?:SRF_NCCATAYWNGGWN|(?:(?:FOXO1_GTMAACAN|PITX1_GGATTA)N|TBX21_NTCACACM))NNNATCR|HOXA13_NYMRTAAANATYG)AT)|EBPG_CREB3L1_NGCCACGCAAY)N_CAP_repr|UX1_(?:(?:(?:SOX15_NATCRATNNNNNNNN?AACAATRS|RFX5_RATCRATNNNNNNNNNN?RGYAAC|(?:HOXA13_ATCRATNNNNYCRTAA|TBX21_TMACACCYAAT)A)|SOX15_ATCRATNNNNNNNNSYATTGTT)|TBX3_AGGTGTGNNNNATCRAT)_CAP_repr|EBPG_ELF1_TTGCGYAANNSCGGAAGN_CAP_repr|(?:UX1_(?:FOX(?:I1|O6)_RTAAACANNNNNATCRAT|HOXB13_SYMRTAAANATYGAT)N|EBPG_ATF4_NNATGAYGCAAT)_CAP)|(?:(?:ELK1_EOMES_RGGTGNGANNNNNNNNTNNCACCGGAA|TEAD4_HES7_GGWATGYNNNNNNCRCGY|GCM1_MAX_CACGTGNNNGCGG)GY|P(?:OU2F1_TBX21_NGTGNNNNMATATKNNNACACC|ITX1_HOXA3_TAATKRNNNNGGATTA|(?:OU2F1_(?:EOMES|TBX21)_NTATKCAGYGTN|BX4_HOXA10_CCATAAATC)A)|(?:GCM1_FIGLA_CAGCTGNNNNNNN(?:N(?:N(?:NN)?TGCGG|TGCGG)|TGCGG)|HOXB2_PAX[59]_NNMATTAGTCACGCWTSRNT|(?:GCM2_FIGLA_RTRCGGGNNCASS|MEIS1_DLX3_TGACANSNTAAT)T)G|TEAD4_(?:CEBPD_NTTRCGYAAN|TBX21_ARGTGTKR)NNNNNRGWATGY|(?:ETV2_(?:CLOCK_NNCACGTGNNNNN|EOMES_TCACA)CCGGAWR|TEAD4_(?:EOMES_WNGTGYKAMATWC|FLI1_RCCGGAAATRS))Y|TEAD4_(?:CLOCK_NCACGTGNNNNNNNCATW|PITX1_RCATTCNNNNNTAAT|ETV4_RCCGGAAATR)CC|FLI1_ONECUT2_RSCGGAANNNNNNRTCGAT|(?:ETV(?:2_HOXA2_NCCGGAAGNNNNNNY|5_HOXA2_RNCGGAWGT)M|TEAD4_(?:HOXA3_RCATTC[NY]NNNNNC|DLX3_RCATTCCNNNY[AM])|(?:ETV2_DLX(?:3_RSCGGAANNNNNN?Y|2_RCCGGAANNNNNY)|TEAD4_DLX2_RCATTCYNNNN?C)A|HOXB2_TCF3_NCAGGTGNNNNNM|E(?:TV(?:5_D(?:LX2_RSCGGAANNNNN|RGX_RSMGGAWG)|2_DRGX_RSCGGAAN)|RF_DLX3_RSCGGAANNNNN)YA|FLI1_DLX2_RSCGGAARYA)ATTA|E(?:(?:LK1_PAX[19]_RSCGGAACYACGCWYSANT|TV5_HES7_CCGGAANNNNNNCACGT)G|TV5_HOXA2_RSCGGWAATKR|RF_TBX21_TMACACCGGAAG)|(?:ETV(?:2_PAX5_ACCGGANNTACGCNNNNNY|5_EVX1_RSCGGWAATK)|(?:(?:GCM1_(?:ONECUT2_RTGCGGGNNNTCGA|ETV4_RTGCGGGCGGAAG)|TEAD4_ELF1_RGAATGCGGAAG)|TEAD4_DRGX_GGAATGTTAAT)T|GCM2_DLX3_RTRCGGGNNNNNTAATK|TEAD4_DLX3_RCATTCCNNNNTAATK|TEAD4_DLX3_RCATTCNNNNNTAATK|GCM1_FOXI1_NNGTMAATANGGGY|HOXB2_TBX21_NAGGTGNTAATK|MGA_DLX(?:2_AGGTGNTAATT|3_AGGTGNTAATK))R|ETV2_SPDEF_NSCGGACGGAWATCCGSNT|(?:MEIS1_HOXA13_SYNRTAAANNTGTC|(?:HOX(?:D12_TBX21_YNRCACSTCG|C10_EOMES_TMACACYYMR)TW|ETV5_HOX(?:A13_NNCGGAWGTNR|B13_NNCGGANGNNN)TW)A|TEAD4_HOXB13_(?:GGWATGN|RGAATGC)NNRTAA|F(?:OXO1_HOXB13_GWMAACAYM|LI1_HOXB13_RSCGGAANYN)RTAA|GCM1_HOXA13_RKRNGGGNNATAA|HOXB2_(?:(?:EOMES|TBX21)_TAATKRGGTGYK|ETV1_ACCGGAAATG)|MGA_DLX2_SYAATTANWGGTGYG)A|(?:ERF_PITX1_NSCGGANNNNNN?GGM|HOXB2_EL(?:K[13]_RSCGGAAGTMR|F1_SMGGAAGTMR))TTA|F(?:OXO1_EL(?:F1_NNGAAAACCGAANM|K3_RCCGGAWGTKKW)|LI1_(?:TCF3_NCCGGANNCASSTG|FOXI1_RCCGGATGTTKW)Y)|TEAD4_HOXB13_NTCGTAAAATGC|ERF_EOMES_TNTCACACCGGAAAT|ETV2_FOXI1_RSCGGATGTTKW|TEAD4_ETV1_RSCGGAAATRCM|ALX4_TBX21_RGGTGYTAATWR)_CAP|(?:TEAD4_FIGLA_RATTCCNNNNNNNNNNCASS|HOXD12_FIGLA_SYMRTAAANNNNCASS|ETV5_TCF3_RNCGGAAGNNNNNCASS|MEIS1_SOX2_TGACAKNNNAACAA)TGN_CAP_repr|TFAP2C_MAX_TNSCCNNNGGSNNNN?CACGTGN_CAP_repr|(?:(?:(?:GCM1_MAX_(?:NNCACGTGNNNNNNNNNNRTGCGGGYR|RTGCGGGNNNNNNNCACGTG)|TEAD4_ELK1_RGAATSCGGAAGY)N|TEAD4_(?:HOXA2_RCATTCNNNNNNCATTA|FIGLA_GGAATKNNCASSTG|ERG_RSCGGAAATRCC))|ELK1_TBX21_TNRCACCGGAAGNN)_CAP|TEAD4_CLOCK_GGWATGNNNNNNN?CACGTGN_CAP_repr|(?:(?:TFAP4_MAX_NCAGCTGN|MEIS1_MAX_NTGACR)NNNNN|ERF_MAX_RSCGGAA)NCACGTGN_CAP_repr|ERF_DLX2_RSCGGAANNNNNYMATTA_CAP_repr_[12]|(?:(?:MEIS2_ONECUT2_NTGACAGNTAATCRATAN|HOXB13_ONECUT2_NNNRTAAAWATYGAYY|TFAP4_MAX_NCAGCTGNNNNNCACGTGN)|ELK1_HOXA1_RCCGGAAGTAATTA)_CAP|(?:E(?:LK1_FOXI1_RSCGGAANNRTMAAYA|2F3_TBX21_NGGTGTGNNGGCGCSN)_|GCM1_SPDEF_RTGNKGGCGGAWG_)CAP_repr|POU2F1_(?:GSC2_NNGATTANNNATGCAWNN|ELK1_NCCGGATATGCA)N_CAP|HOX(?:13_MEIS1_NNNRTAAANCTGTN|B13_Fox_NNMAACAYNRTAAA)_ChIP_Exo|(?:(?:MEIS2_ONECUT2_NTGACAGNTAATCRATAN|HOXB13_ONECUT2_NNNRTAAAWATYGAYY|TFAP4_MAX_NCAGCTGNNNNNCACGTGN)|ELK1_HOXA1_RCCGGAAGTAATTA)_HT|(?:(?:TFAP4_DLX3_NNCAGCTGNNNNNNNTAATT|(?:T(?:FAP4_FLI1_ACCGGAAACAGC|CF15_NACAYA)TG|HOX(?:A3_NSTA|D4_NNYM)ATTA)N|ETV7_NNGGAAGTGCTTCCN)N|(?:T(?:FAP4_DLX3_NNCAGCTGNNNNTAATK|BX3_AGGTGTN)|E(?:TV7_NNYTTCCGGGAARN|LF2_NA(?:MC|TG)CGGAAGT)|FOS_NGATGACGTCATC)R|(?:FLI1_HOXB13_NCCGGAANTNRTA|GATA1_AGAT)AAN|FLI1_DLX2_ACCGGAARTNNNYAATTA|MEIS2_HOXA13_CYCATAAANNTGTCA|NR1D2_TRGGTYASTAGGTCA|GLI3_NGACCACMCACGWNG|P(?:OU5F1_(?:NATATGCTAATKN|WATGCGCATW)|AX3_GTCACGCNNMATTAN)|NR1I2_RGTTCRNNNRGTTC|IRF2_NAANCGAAASYR|ET(?:V7_NNG|S2_RC)CGGAAGTG|FOXA1_TRNGTAAACA|HES1_GNCACGTGNC|MYCL2_SCACGTGS|HOXA(?:4_RT|6_SY|7_NY)MATTAN)_HT|ELK1_ONECUT2_RSCGGAASNGRTCGATA_HT|POU2F1_(?:SOX15_WTGMATAACAATR_CAP_[12]|ETV4_NCCGGATATGCAN_CAP_[12])|FLI1_BHLHA15_NCCGGAANCATATGN_CAP|(?:GCM1_ELK1_RTGCGG|TEAD4_SPIB_RGAAT)GCGGAAGTN_CAP_[12]|(?:TFAP4_FLI1_RSCGGAWRCASS|ETV5_FIGLA_RSCGGAARCAGG|FLI1_(?:FIGLA_RSCGGAANCASS|MAX_RSCGGAANCACG)|ETV5_FOXI1_RSCGGATGT)TGN_CAP|RORB_A(?:WNTAGGTCATGACCTANWT|ANTAGGTCAGTAGGTCA)_HT|(?:GCM(?:1_FOXI1_TGTTGANG|2_FOXI1_TGTTKATR)CGG|ELK1_EOMES_TNRCACCGGAA)GN_CAP|MGA_EVX1_AGGTGNTAATKW_CAP|(?:SOX(?:17_|6_C)ACCGAACAA|(?:BACH1_ATGAC|JUN_ATGACG)TCA)T_HT)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:13.25 = 13.25 seconds
  * Elapsed CPU time:
     - User: 11.69
     - Sys: 1.55
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 106
  * Maximum resident set size (RSS: memory) (kiB): 6866384
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 40
  * Exit status: 0


tfdimers
^tfdimers__MD00(?:0(?:0[1-9]|2[013-9])|39[0-689]|46[0-79]|(?:0[13-9]|3[0-8]|4[0-57-9])[0-9]|[125][0-9][0-9]|60[0-3])$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 5524
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


tiffin
^tiffin__TIFDMEM0000(?:0(?:(?:0[39]|34|40|79)|17)|107)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.00 = 0.00 seconds
  * Elapsed CPU time:
     - User: 0.00
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 3216
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0


transfac_pro
^transfac_pro__M0(?:0(?:(?:3(?:0[38]|2[125-9]|3[2389]|6[6-9]|7[015])|4(?:0[0135-7]|4[0-247]|8[129])|51[1348]|6(?:1[69]|2[1-469]|3[0-2489]|4[016-9]|5[0258]|7[1289]|87)|7(?:1[2367]|2[1246-9]|4[02-4679])|9(?:1[235-9]|3[0-35689]|4[0-35-79]))|99[1-37-9])|1(?:0(?:0[0-479]|2[02389]|5[147-9]|7[02358])|1(?:2[2-57]|3[1-37-9]|4[25-9]|5[0-4]|7[1-357]|8[1-35-7])|2(?:1[124679]|2[0347-9]|8[12478])|5(?:0[467]|2[46-8]|4[389]|5[3-58]|7[02457]|8[06-9])|6(?:2[4-6]|3[01]|4[0156]|6[0-256]|7[35]|9[24-69])|31[2-9]|08[1-4689]|04[2-579]|7(?:0[2-9]|1[1-4689]|2[1-58]|3[2-579]|4[2-479]|5[29]|8[238]|9[346-8])|8(?:0[1689]|1[0467]|3[014-8]|4[134]|8[2-689]|9[04-6])|82[0-36]|9(?:0[246]|1[0159]|3[079]|5[2-6]|6[16-9]|9[0-36]))|073[1346-9]|0(?:53|82)1|116[02-57-9]|129[2457-9]|075[0-24]|2(?:0(?:0[02469]|3[1346-9]|4[0-58])|191|2(?:2[04]|4[126]|5[029]|6[1-35-9]|7[0-389])|7(?:4[02-57-9]|5[0236-9])|80[1-47-9]|9(?:1[02-579]|2[2457-9]|4[0-24]))|(?:076|197)[1-79]|295[89]|(?:095|281)[013-79]|237[0-24-8]|3(?:1(?:2[13-57-9]|3[03-57-9])|57[1-79]|53[89]|7(?:8[89]|9[013-79])|8(?:0[2-79]|5[0-24-8]|6[025-9]))|101[0-4679]|177[024689]|388[0-4689]|069[13-689]|156[489]|4(?:59[45]|6(?:1[0134679]|2[2-7]|3[1-35689]|7[0-289]|8[0-579])|7(?:2[0-4679]|3[12457-9]|5[024689]|6[013-5]|7[014-6]|9[04579])|70[2-46-8]|71[013-689]|8(?:0[2-46-8]|2[2-469]|3[1-379]|4[013-689]|5[03-689]|6[0-4689]|7[03579]|8[0136-9]|9[0-35-8])|9(?:0[13-689]|1[023568]|3[0-57]|4[489]|5[0359]|6[067]))|5(?:19[5-7]|2(?:0[0-359]|1[23679]|2[0-249]|3[34689]|4[146-9]|5[07]|6[0158]|9[57-9])|3(?:0[01346-9]|6[0-68]|7[0-469])|62[024-9])|315[0-5]|69(?:6[2-46-9]|9[0-5])|09[68][0-7]|(?:202|314)[1-8]|(?:111|287|466)[1-46-9]|(?:1(?:10|24)|561|683)[0-57-9]|2(?:88|93)[013-57-9]|(?:109|478)[0-2457-9]|(?:079|147|2(?:[13]1|85)|443|54[46]|6(?:78|84))[0-79]|120[0-478]|(?:1(?:76|94)|2(?:[14]8|96))8|049[2-4]|279[014-9]|276[0-47-9]|(?:2(?:08|10|32|86)|541|629)[0-24-9]|(?:097|3(?:55|84)|464|657)[1-9]|(?:2(?:33|90)|626)[02-9]|(?:1(?:[02]6|44)|5(?:42|69)|6(?:16|22))[0-46-9]|7(?:06[0-7]|1(?:1[1-8]|3[1-46-9]|4[0-57-9]|5[378]|6[02378]|7[0348])|2(?:7[05-8]|9[0-246-9])|3(?:3[1257-9]|4[013-57-9]|6[0-578]|9[0-2457-9])|(?:28|31)[0-79]|4(?:[13][0-79]|6[014-79]|7[4-79]|8[0-478])|5(?:68|7[2-4]|9[0379])|26[014-9]|6(?:1[0-24578]|2[7-9]|7[014-9])|7(?:1[0-47-9]|4[0-69]|5[013-589])|(?:3[07]|42)[0-24-9]|20[04-9]|8(?:4[0-24-9]|5[0-59]|6[1-9]|7[04-9])|9(?:1[0-379]|2[013479]|3[02-9]|4[02-47-9]|7[0-25-9]|[69][0-46-9]))|457[0-3]|(?:031|2(?:16|47)|511|719)2|161[0569]|(?:1(?:25|38)|543|6(?:13|95)|732)[0-35-9]|740[02-79]|(?:103|492)[1-7]|070[1467]|(?:185|703)[4-9]|766[0-36-9]|724[26-9]|042[5-8]|738[024-8]|153[2-46]|(?:119|273|707)[5-9]|8(?:0(?:2[0478]|3[259]|5[0-589]|6[13]|7[569]|8[0-3]|9[069])|1(?:0[4589]|1[16]|42|5[0569]|8[03-79]|9[0-24589])|2(?:0[0-35-9]|1[3-6]|2[02-79]|3[1-35-79]|4[1-7]|5[1-369]|6[1467]|7[013-58]|8[1-59])|3(?:0[2-468]|1[02-689]|2[023689]|3[01347-9]|4[124-6]|5[023589]|6[1479]|7[1457-9]|8[0-3579]|9[02-589])|4(?:0[124-689]|1[1-589]|2[3-79]|3[4-9]|4[0-6]|5[1357-9]|6[15-9]|7[0-37]|8[0-36-9]|9[13-58])|5(?:0[015-9]|1[0-24-689]|2[0135-79]|3[2479]|4[01579]|5[6-8]|6[26-9]|7[0145]|8[3-7])|6(?:0[025689]|1[0689]|2[346]|3[02578]|4[15-79]|5[046]|6[0247]|7[14-8]|8[0235]|9[0-246])|7(?:0[02458]|1[01389]|2[5-8]|3[03-59]|4[01346]|5[125-79]|6[03-8]|8[024-8]|9[2-46])|01[5-9]|8(?:0[0-3569]|1[136-9]|2[024-689]|3[1568]|6[5-9]))|(?:034|358|718|859)[0-2]|465[39]|(?:046|321)6|192[34]|043[0-26]|(?:092|889)[0-24-79]|528[03]|(?:238|5(?:08|27))3|(?:0(?:39|47|78)|221|311)9|(?:080|1(?:3[23679]|4[0-3568]|59|65|87|98)|2(?:0[15-79]|29|3[045]|78|8[349])|3(?:5[46]|8[239])|4(?:1[0-24-9]|4[0-246-9]|5[0-6]|69)|5(?:3[1-489]|4[057-9]|5[0-46-9]|6[03-8])|6(?:1[0-24579]|2[13-578]|5[0-689]|7[0-79]|8[25-9]|9[0-2])|7(?:0[4589]|1[02]|2[1-35]|45|6[03-589]|7[023689]|8[0-389]|9[05])|(?:39|4[023]|5[7-9]|6[0346])[0-9]|8(?:87|9[0-9]))[0-9]|(?:066|515)5|(?:081|1(?:51|60)|309|752|884)0|(?:751|812)4|306[47]|149[48]|(?:127|829)[02359]|804[1-36-9]|474[13-9]|(?:123|2(?:28|36)|4(?:45|81)|694)[013-9]|(?:077|13[05]|282|387|413|5[35]5|680|735|888)[0-8]|(?:1(?:34|86)|277|381|6(?:18|20|81|9[378])|7(?:77|98)|8(?:00|77))[0-689]|744[78]|9(?:0(?:1[0-2]|3[39]|46|5[34]|6[35689]|7[0-24679]|8[1-47]|[29][0-26])|1(?:0[3-57]|1[679]|2[0-24-79]|3[03]|6[17-9]|73|8[79]|9[1-4])|00[0-9]|2(?:29|3[0-9]|55|6[2-69]|[47]0|84|9[3-5])|3(?:0[05]|1[47])|4(?:0[48]|1[02359]|5[35-8]|6[1-36-9]|7[2569]|8[13-9]|9[0-35-7])|5(?:0[0679]|1[013-9]|2[0-8]|3[0-689]|4[0146]|6[0-28]|7[78]|8[056])))$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.15 = 0.15 seconds
  * Elapsed CPU time:
     - User: 0.14
     - Sys: 0.01
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 7
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 43884
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 8
  * Exit status: 0


transfac_public
^transfac_public__M00(?:0(?:(?:(?:0[124-8]|1[1-46-9]|2[1-68]|4[0-5]|6[0-35689]|9[04-9])|7[0-9])|3[2-9])|1(?:0[2-689]|4[013-8]|5[0-25-9]|[1-36][0-9]|7[02-9]|8[2-9]|9[0-69])|2(?:0[13-689]|1[05-7]|2[0-58]|3[1-79]|5[0-24-9]|6[0-246-9]|7[0-26-9]|8[01457-9])|3(?:02|4[6-9]|5[01689]|6[02]|7[378]|9[2-68])|(?:05|24)[0-689]|29[0-4]|08[0-8]|4(?:1[0-689]|2[0-4]|3[357]|4[689]|5[013-79]|6[0-57-9]|7[0-8]|8[03-7]|9[015-9])|380|5(?:00|1[025-7]|2[68]|3[289])|615)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.01 = 0.01 seconds
  * Elapsed CPU time:
     - User: 0.01
     - Sys: 0.00
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 0
  * Maximum resident set size (RSS: memory) (kiB): 5076
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 8
  * Exit status: 0


yetfasco
^yetfasco__(?:MATALPHA1\-MCM1\-dimer_1442|TBP\-TFII(?:A(?:\-TFIIB_1330|_1328)|B_1329)|Y(?:BR089C\-A_79|F(?:R034C_222|L021W_96)|IL131C_200|LR131C_133|(?:ER051W_6|DR096W_5)6|KR099W_40)2|Y(?:(?:(?:B(?:L103C_144|R083W_81)|GL073W_61|IL036W_58)|KR034W_135)5|(?:ER(?:028C_214|130C_53)|BR182C_86)4|(?:ER064C_20|GL096W_4)94|ML081W_2194|(?:ER069W_142|FL044C_116|MR075W_106|ML113W_141|GL073W_47|LR176C_49|NL(?:027W_51|139C_78))6|(?:GL073W_(?:146|41)|DR266C_116|IL056W_209|NL167C_140|MR043W_83)1|P(?:L177C_21|R186C_13)21|(?:PR086W_132|ER169W_54|CL055W_12)7|(?:EL009C_136|GL209W_214|MR042W_148|PR104C_220)3|JL(?:056C_2097|110C_2133)|ER068W_556|OR380W_756|(?:LR403W_7|OR344C_3)97)|Y(?:CR040W_141|LR176C_147|(?:DR423C_20|ER148W_7)9|KL062W_51|ML027W_49|ER045C_)8|Y(?:GL192W_100|DR477W_111|MR037C_138|BL103C_87|CR065W_57)0|Y(?:ML065W_154|ER040W_53|BR267W_48|DR(?:146C_56|259C_59)|OR028C_40|P(?:L089C_41|R052C_87)|GL254W_6)9|YGL035C_2142|YNL068C_830)$

Time output:
------------

  * Command: grex -c --file /dev/fd/63
  * Elapsed wall time: 0:00.06 = 0.06 seconds
  * Elapsed CPU time:
     - User: 0.06
     - Sys: 0.00
  * CPU usage: 98%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 1
  * Maximum resident set size (RSS: memory) (kiB): 31096
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

Add Python bindings

I think it would be useful to have Python bindings for the library part of grex so that the generated regular expressions can be used within Python's regular expression module.

This is a bit tricky, however, because there are differences between Rust's and Python's regex engines with regard to what is matched by \w, for instance. So implementing this might take some significant time in the worst case.

Allow to provide test cases that must not be matched

Currently, only test cases that must be matched by the generated regular expression can be provided. It would be useful to additionally provide test cases that must not be matched by the generated expression. In combination with shorthand character classes this would allow for more specific and versatile regular expressions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.