document.write("<div class=\"pastie\">\n");
document.write("  <link href=\"http://pastie.org/stylesheets/embed.css\" media=\"screen\" rel=\"stylesheet\" type=\"text/css\" />\n");
document.write("  <link href=\"http://pastie.org/stylesheets/clean.css\" media=\"screen\" rel=\"stylesheet\" type=\"text/css\" />\n");
document.write("  \n");
document.write("\n");
document.write("  \n");
document.write("  \n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("	\n");
document.write("	<div class=\"allcode\">\n");
document.write("		<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n");
document.write("		<tr>\n");
document.write("			<td>\n");
document.write("				\n");
document.write("				<pre class=\"textmate-source-numbers\">1\n");
document.write("2\n");
document.write("3\n");
document.write("4\n");
document.write("5\n");
document.write("6\n");
document.write("7\n");
document.write("8\n");
document.write("9\n");
document.write("10\n");
document.write("11\n");
document.write("12\n");
document.write("13\n");
document.write("14\n");
document.write("15\n");
document.write("16\n");
document.write("17\n");
document.write("18\n");
document.write("19\n");
document.write("20\n");
document.write("21\n");
document.write("22\n");
document.write("23\n");
document.write("24\n");
document.write("25\n");
document.write("26\n");
document.write("27\n");
document.write("28\n");
document.write("29\n");
document.write("30\n");
document.write("31\n");
document.write("32\n");
document.write("<\/pre>\n");
document.write("			<\/td>\n");
document.write("		<td>\n");
document.write("		<pre class=\"textmate-source\"><pre class=\"sunburst\"><span class=\'meta meta_class meta_class_ruby\'><span class=\'keyword keyword_control keyword_control_class keyword_control_class_ruby\'>class<\/span> <span class=\'entity entity_name entity_name_type entity_name_type_class entity_name_type_class_ruby\'>Array<\/span><\/span>\n");
document.write("<span class=\'comment comment_line comment_line_number-sign comment_line_number-sign_ruby\'>  # array = [1, 2]<\/span>\n");
document.write("<span class=\'comment comment_line comment_line_number-sign comment_line_number-sign_ruby\'>  # if array.any.is_a? Fixnum<\/span>\n");
document.write("<span class=\'comment comment_line comment_line_number-sign comment_line_number-sign_ruby\'>  # =&gt; true<\/span>\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>any<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'><span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>params<\/span>)<\/span>\n");
document.write("    <span class=\'support support_class support_class_ruby\'>HigherOrderMethod<\/span>.<span class=\'keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby\'>new<\/span>(<span class=\'variable variable_language variable_language_ruby\'>self<\/span>, <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:any?<\/span>, <span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>params)\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>all<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'><span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>params<\/span>)<\/span>\n");
document.write("    <span class=\'support support_class support_class_ruby\'>HigherOrderMethod<\/span>.<span class=\'keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby\'>new<\/span>(<span class=\'variable variable_language variable_language_ruby\'>self<\/span>, <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:all?<\/span>, <span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>params)\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("<span class=\'meta meta_class meta_class_ruby\'>  <span class=\'keyword keyword_control keyword_control_class keyword_control_class_ruby\'>class<\/span> <span class=\'entity entity_name entity_name_type entity_name_type_class entity_name_type_class_ruby\'>HigherOrderMethod<\/span><\/span>\n");
document.write("    [<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:to_s<\/span>,<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:inspect<\/span>,<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:=~<\/span>,<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:===<\/span>,<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:is_a?<\/span>].each <span class=\'keyword keyword_control keyword_control_start-block keyword_control_start-block_ruby\'>do <\/span>|<span class=\'variable variable_other variable_other_block variable_other_block_ruby\'>m<\/span>|\n");
document.write("      undef_method m\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("    <span class=\'keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby\'>attr_accessor<\/span> <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:value<\/span>\n");
document.write("    <span class=\'keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby\'>attr_accessor<\/span> <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:value_method_info<\/span>\n");
document.write("\n");
document.write("    <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>initialize<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'>value, <span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>method_info<\/span>)<\/span>\n");
document.write("      <span class=\'variable variable_language variable_language_ruby\'>self<\/span>.value <span class=\'keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby\'>=<\/span> value\n");
document.write("      <span class=\'variable variable_language variable_language_ruby\'>self<\/span>.value_method_info <span class=\'keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby\'>=<\/span> method_info\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("    <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>method_missing<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'><span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>method_info<\/span>)<\/span>\n");
document.write("      value.send(<span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>value_method_info) <span class=\'keyword keyword_control keyword_control_start-block keyword_control_start-block_ruby\'>do <\/span>|<span class=\'variable variable_other variable_other_block variable_other_block_ruby\'>item<\/span>|\n");
document.write("        item.send(<span class=\'keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_ruby\'>*<\/span>method_info)\n");
document.write("      <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("<span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("<\/pre><\/pre>\n");
document.write("		<\/td>\n");
document.write("		<\/tr>\n");
document.write("		<\/table>\n");
document.write("	\n");
document.write("	<\/div>\n");
document.write("\n");
document.write("\n");
document.write("<hr />\n");
document.write("<h2>Result: <\/h2>\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("	\n");
document.write("	<div class=\"allcode\">\n");
document.write("		<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n");
document.write("		<tr>\n");
document.write("			<td>\n");
document.write("				\n");
document.write("				<pre class=\"textmate-source-numbers\">1\n");
document.write("2\n");
document.write("3\n");
document.write("4\n");
document.write("<\/pre>\n");
document.write("			<\/td>\n");
document.write("		<td>\n");
document.write("		<pre class=\"textmate-source\"><pre class=\"sunburst\">[<span class=\'constant constant_numeric constant_numeric_ruby\'>1<\/span>,<span class=\'constant constant_numeric constant_numeric_ruby\'>2<\/span>].any.is_a? <span class=\'variable variable_other variable_other_constant variable_other_constant_ruby\'>Fixnum<\/span>\n");
document.write("<span class=\'comment comment_line comment_line_number-sign comment_line_number-sign_ruby\'>#=&gt; true<\/span>\n");
document.write("[<span class=\'constant constant_numeric constant_numeric_ruby\'>1<\/span>,<span class=\'constant constant_numeric constant_numeric_ruby\'>2<\/span>].any.is_a? <span class=\'variable variable_other variable_other_constant variable_other_constant_ruby\'>Hash<\/span>\n");
document.write("<span class=\'comment comment_line comment_line_number-sign comment_line_number-sign_ruby\'>#=&gt; false<\/span>\n");
document.write("<\/pre><\/pre>\n");
document.write("		<\/td>\n");
document.write("		<\/tr>\n");
document.write("		<\/table>\n");
document.write("	\n");
document.write("	<\/div>\n");
document.write("\n");
document.write("\n");
document.write("  \n");
document.write("  \n");
document.write("  <div class=\"credit\">\n");
document.write("    <div class=\"buttons\">\n");
document.write("      <a href=\"http://pastie.org/pastes/866878.txt\">\n");
document.write("      <img src=\"http://pastie.org/images/view.png\" height=\"20\" width=\"67\" /><\/a>\n");
document.write("    <\/div>\n");
document.write("  \n");
document.write("    <a href=\"http://pastie.org/866878\">Pastie #866878<\/a> linked directly from <a href=\"http://pastie.org/\">Pastie<\/a>.\n");
document.write("  <\/div><\/div>");
