 }
 
 
-
+/**
+Represents a special action that when sent with a message, will remove any `MarkupKeyboard` 
+currently active, for either all of or a specified group of users.
+*/
 public class MarkupKeyboardRemove: NodeConvertible, JSONConvertible, MarkupType {
-  public var removeKeyboard: Bool = true // Requests clients to remove the custom keyboard (user will not be able to summon this keyboard
-  public var selective: Bool = false // (Optional) Use this parameter if you want to force reply from specific users only.
-  
+	
+	/// Requests clients to remove the custom keyboard (user will not be able to summon this keyboard)
+	var removeKeyboard: Bool = true
+	/// (Optional) Use this parameter if you want to remove the keyboard from specific users only.
+  public var selective: Bool = false
+	
+	
+	/**
+	Creates a `MarkupKeyboardRemove` instance, to remove an active `MarkupKeyboard` from the current chat.
+	
+	If isSelective is true, the keyboard will only be removed for the targets of the message.
+	
+	**Targets:**
+	1) users that are @mentioned in the text of the Message object; 
+	2) if the bot's message is a reply (has reply_to_message_id), sender of the original message.
+	
+	- parameter isSelective: If false, the keyboard will be removed for all users.  If true however, the
+	keyboard will only be cleared for the targets you specify.
+	*/
   public init(isSelective sel: Bool) {
     selective = sel
   }
-  
+	
+	
+	
   // Ignore context, just try and build an object from a node.
   public required init(node: Node, in context: Context) throws {
     removeKeyboard = try node.extract("remove_keyboard")

  }
  
  
  /** Replaces a key with another provided one, by trying to match the given data with a key
   */
  public func replaceKey(usingType type: InlineButtonType, data: String, newKey: MarkupInlineKey) -> Bool {
    for row in keyboard {

  
}

/**
Represents a special action that when sent with a message, will force Telegram clients to display
a reply interface to all or a selected group of people in the chat.
*/
public class MarkupForceReply: NodeConvertible, JSONConvertible, MarkupType {
	
	/// Shows reply interface to the user, as if they manually selected the bot‘s message and tapped ’Reply'
  public var forceReply: Bool = true
	/// (Optional) Use this parameter if you want to force reply from specific users only.
  public var selective: Bool = false
	
	
	
	/**
	Creates a `MarkupForceReply` instance, to force Telegram clients to display
	a reply interface to all or a selected group of people in the chat.
	
	If isSelective is true, the reply interface will only be displayed to targets of the message it is being sent with.
	
	**Targets:**
	1) users that are @mentioned in the text of the Message object;
	2) if the bot's message is a reply (has reply_to_message_id), sender of the original message.
	
	- parameter isSelective: If false, the reply interface will appear for all users.  If true however, the 
	reply interface will only appear for the targets you specify.
	*/
  public init(isSelective sel: Bool) {
    selective = sel
  }
	
	
	
	
  // Ignore context, just try and build an object from a node.
  public required init(node: Node, in context: Context) throws {
    forceReply = try node.extract("force_reply")
