Updated to match draft pretty closely and support fallback/prototype and quick check