remove procedural code