1460713893-184efea9-0dd3-414c-87d5-0ebd7f8c9b89

1. An assembly comprising:
a tubular housing;
an inlet housing that is operatively coupled to the tubular housing;
a venturi housing that comprises an inlet housing end proximate the inlet housing, a check valve end, a longitudinal axis that extends between the inlet housing end and the check valve end, a venturi passageway disposed between the inlet housing end and the check valve end and a valve seat at the check valve end wherein the venturi housing is at least partially received by the tubular housing and at least partially received by the inlet housing;
a first spring that axially biases the venturi housing with respect to the inlet housing and the tubular housing;
a dart;
a second spring that biases the dart in a direction toward the valve seat of the venturi housing;
a check valve housing that houses the dart and the second spring and that is operatively coupled to the tubular housing.
2. The assembly of claim 1 wherein the tubular housing comprises a check valve end and a valve seat at the check valve end.
3. The assembly of claim 2 wherein the valve seat of the venturi housing and the valve seat of the tubular housing comprise a low pressure valve seat and a high pressure valve seat.
4. The assembly of claim 2 wherein the valve seat of the tubular housing is a seal element that is coupled to the tubular housing.
5. The assembly of claim 4 wherein the seal element is formed of a rigid metallic material.
6. The assembly of claim 4 wherein the seal element is formed of a non-metallic flexible material.
7. The assembly of claim 1 comprising at least one O-ring disposed between the venturi housing and the tubular housing.
8. The assembly of claim 1 wherein the inlet housing comprises a shoulder that seats the first spring.
9. The assembly of claim 1 wherein the venturi housing comprises a shoulder that seats the first spring.
10. The assembly of claim 1 wherein the inlet housing comprises a shoulder that seats the first spring and wherein the venturi housing comprises a shoulder that seats the first spring.
11. The assembly of claim 1 comprising a seal element that circumscribes the tubing housing.
12. The assembly of claim 11 wherein the seal element forms a sealed region with respect to a bore of a mandrel wherein the sealed region includes an inlet port of the inlet housing and an inlet port of the mandrel.
13. The assembly of claim 1 wherein the dart comprises a domed portion.
14. The assembly of claim 1 wherein the dart comprises a low pressure seal portion and a high pressure seal portion.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A decoder for decoding data from a communication channel, comprising:
a parity check matrix comprising:
M tiers,
wherein M\u2267B;

Dmin=B*M for M=1 . . . E or
B*M\u2267Dmin\u2267F for M>E,
wherein Dmin comprises a minimum Hamming distance; and
tc=M,
wherein tc comprises a column weight,
wherein the parity check matrix comprises no period-four cycles, and
wherein B, Dmin, E, F and M comprise integers;
a soft channel decoder configured to decode data; and
a soft linear block code decoder configured to decode data decoded by the soft channel decoder in accordance with the parity check matrix.
2. The decoder of claim 1, wherein each of the M tiers comprises an identity matrix having a corresponding rank Pi, wherein 1\u2266i\u2266M.
3. The decoder of claim 2, wherein the rank of the identity matrix of one of the tiers is mutually prime with respect to the rank of the identity matrix of another one of the tiers.
4. The decoder of claim 2, wherein the M tiers are arranged in increasing rank order.
5. The decoder of claim 4, wherein the parity check matrix comprises C columns, wherein C\u2266(P1*P2).
6. The decoder of claim 4, wherein for each element Ar,c
For
\u2062
\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
+
1

\u2264
r
\u2264
\u2211

j
=
1

n

\u2062
\u2062

P
j
,
\u2062

A
r

\u2062

,
c

\u2062

=

{
1
,
if
\u2062
\u2062
c
\u2062
\u2062

mod
(

P
n

)
=

r

\u2211

j
=
1
n

1
\u2062
\u2062

P
j
0
,
otherwise

\u2062
}
0
\u2264
c
\u2264
C
C
\u2264
P
1

*

P
2
7. The decoder of claim 2, wherein the parity check matrix comprises R rows, wherein
R
=
\u2211

i
=
1

M

\u2062
\u2062
P
i

.
8. The decoder of claim 7, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
independent rows.
9. The decoder of claim 2, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
parity bits.
10. The decoder of claim 2, wherein the parity check matrix comprises
P
1

\xd7

P
2

\u2211

i
=
1

M

\u2062
\u2062

P
i
+

(

M

1

)
maximum user bits.
11. An encoder for encoding data from a communication channel, comprising:
a parity check matrix comprising:
M tiers,
wherein M\u2267B;

Dmin=B*M for M=1 . . . E or
B*M\u2267Dmin\u2267F for M>E,
wherein Dmin comprises a minimum Hamming distance;
tc=M,
wherein tc comprises a column weight,
wherein the parity check matrix comprises no period-four cycles, and
wherein B, Dmin, E, F and M comprise integers;
a linear block encoder configured to encode the user data in response the parity check matrix; and
a transmitter configured to transmit an output of the linear block encoder to the communication channel.
12. The encoder of claim 11, wherein each of the M tiers comprises an identity matrix having a corresponding rank Pi, wherein 1\u2266i\u2266M.
13. The encoder of claim 12, wherein the rank of the identity matrix of one of the tiers is mutually prime with respect to the rank of the identity matrix of another one of the tiers.
14. The encoder of claim 12, wherein the M tiers are arranged in increasing rank order.
15. The encoder of claim 14, wherein the parity check matrix comprises C columns, wherein C\u2266(P1*P2).
16. The encoder of claim 14, wherein for each element Ar,c
For
\u2062
\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
+
1

\u2264
r
\u2264
\u2062
\u2211

j
=
1

n

\u2062
\u2062

P
j
,
\u2062
A

r
,
c
=

{
1
,
if
\u2062
\u2062
c
\u2062
\u2062

mod
(

P
n

)
=

r

\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
\u2062
0
,
otherwise
}
0
\u2264
c
\u2264
C
C
\u2264
P
1

*
P
2

.
17. The encoder of claim 12, wherein the parity check matrix comprises R rows, wherein
R
=
\u2211

i
=
1

M

\u2062
\u2062
P
i

.
18. The encoder of claim 16, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
independent rows.
19. The encoder of claim 12, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
parity bits.
20. The encoder of claim 12, wherein the parity check matrix comprises
P
1

\xd7

P
2

\u2211

i
=
1

M

\u2062
\u2062

P
i
+

(

M

1

)
maximum user bits.
21. A method for decoding data received from a communication channel, comprising the steps of:
(a) soft channel decoding the data received from the communication channel in accordance with data decoded in step (c);
(b) generating a parity check matrix comprising:
M tiers,
wherein M\u2267B;

Dmin=B*M for M=1 . . . E or
B*M\u2267Dmin\u2267F for M>E,
wherein Dmin comprises a minimum Hamming distance; and
tc=M,
wherein tc comprises a column weight,
wherein the parity check matrix comprises no period-four cycles, and
wherein B, Dmin, E, F and M comprise integers; and
(c) soft linear block code decoding data decoded in step (a) in accordance with the parity check matrix generated in step(b).
22. The method of claim 21, wherein each of the M tiers comprises an identity matrix having a corresponding rank Pi, wherein 1\u2266i\u2266M.
23. The method of claim 22, wherein the rank of the identity matrix of one of the tiers is mutually prime with respect to the rank of the identity matrix of another one of the tiers.
24. The method of claim 22, wherein the M tiers are arranged in increasing rank order.
25. The method of claim 24, wherein the parity check matrix comprises C columns, wherein C\u2266(P1*P2).
26. The method of claim 24, wherein for each element Ar,c
For
\u2062
\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
+
1

\u2264
r
\u2264
\u2062
\u2211

j
=
1

n

\u2062
\u2062

P
j
,
\u2062
A

r
,
c
=

{
1
,
if
\u2062
\u2062
c
\u2062
\u2062

mod
(

P
n

)
=

r

\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
\u2062
0
,
otherwise
}
0
\u2264
c
\u2264
C
C
\u2264
P
1

*
P
2

.
27. The method of claim 22, wherein the parity check matrix comprises R rows, wherein
R
=
\u2211

i
=
1

M

\u2062
\u2062
P
i

.
28. The method of claim 27, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
independent rows.
29. The method of claim 22, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
parity bits.
30. The method of claim 22, wherein the parity check matrix comprises
P
1

\xd7

P
2

\u2211

i
=
1

M

\u2062
\u2062

P
i
+

(

M

1

)
maximum user bits.
31. A method for encoding data transmitted to a communication channel, comprising the steps of:
(a) generating a parity check matrix comprising:
M tiers,
wherein M\u2267B,

Dmin=B*M for M=1 . . . E or
B*M\u2267Dmin\u2267F for M>E;
wherein Dmin comprises a minimum Hamming distance;
tc=M,
wherein tc comprises a column weight,
wherein the parity check matrix comprises no period-four cycles, and
wherein B, Dmin, E, F and M comprise integers;
(b) linear block encoding the data in accordance with the parity check matrix generated in step (a); and
(c) transmitting the data encoded in step (b) to the communication channel.
32. The method of claim 31, wherein each of the M tiers comprises an identity matrix having a corresponding rank Pi, wherein 1\u2266i\u2266M.
33. The method of claim 32, wherein the rank of the identity matrix of one of the tiers is mutually prime with respect to the rank of the identity matrix of another one of the tiers.
34. The method of claim 32, wherein the M tiers are arranged in increasing rank order.
35. The method of claim 34, wherein the parity check matrix comprises C columns, wherein C\u2266(P1*P2).
36. The method of claim 34, wherein for each element Ar,c
For
\u2062
\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
+
1

\u2264
r
\u2264
\u2062
\u2211

j
=
1

n

\u2062
\u2062

P
j
,
\u2062
A

r
,
c
=

{
1
,
if
\u2062
\u2062
c
\u2062
\u2062

mod
(

P
n

)
=

r

\u2062
\u2211

j
=
1
n

1
\u2062
\u2062

P
j
\u2062
0
,
otherwise
}
0
\u2264
c
\u2264
C
C
\u2264
P
1

*
P
2

.
37. The method of claim 32, wherein the parity check matrix comprises R rows, wherein
R
=
\u2211

i
=
1

M

\u2062
\u2062
P
i

.
38. The method of claim 37, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
independent rows.
39. The method of claim 32, wherein the parity check matrix comprises
\u2211

i
=
1

M

\u2062
\u2062

P
i

(

M

1

)
parity bits.
40. The method of claim 32, wherein the parity check matrix comprises
P
1

\xd7

P
2

\u2211

i
=
1

M

\u2062
\u2062

P
i
+

(

M

1

)
maximum user bits.