Tuesday, April 17, 2012

Introducing DCell: actor-based distributed objects for Ruby

DCell, which is short for Distributed Celluloid (and pronounced like the batteries you used to jam into boom boxes and RC cars) is an actor-based distributed object oriented programming framework for Ruby. Celluloid is an actor library I wrote for Ruby which exposes concurrent Ruby objects that "quack" just like any other Ruby object. DCell takes the asynchronous messaging protocol from Celluloid and exposes it to distributed networks of Ruby interpreters by marshaling Celluloid's messages as strings and sending them to other nodes over 0MQ.

Before I talk about DCell I'd like to talk a little bit about the history behind distributed objects in general and the ideas that DCell draws upon.

A Brief History of Distributed Objects

Nowadays you don't hear people talking much about distributed objects. However, once upon a time, distributed objects were big business. They used to be one of Steve Jobs' passions during his time at NeXT. In the mid-90's, Steve Jobs phased out NeXT's hardware division and began repositioning the company as, among other things, the "largest object supplier in the world." NeXT turned its focus exclusively to its software, namely the WebObjects framework for building dynamic web sites. It would also ship the Enterprise Objects Framework, which Steve described as allowing you to "make NeXTSTEP objects, and with no programming, have persistent and coherent storage with SQL databases" (sound a little bit like ActiveRecord a decade before ActiveRecord, anyone?)

WebObjects was built on a technology called Portable Distributed Objects, which allowed Objective C applications developed on any platform to seamlessly interoperate over computer networks and across platforms. If you haven't seen it, watch Steve Jobs 1995 presentation The Future of Objects (although you may want to skip directly to where Steve begins talking about distributed objects). Even now, some 16 years later, these demos still seem futuristic. Steve loved the simplicity of distributed objects: "Objects can message objects transparently that live on other machines over the network, and you don't have to worry about the networking gunk, and you don't have to worry about finding them, and you don't have to worry about anything. It's just as if you messaged an object that's right next door."

So why is it some of Steve's demos seem futuristic and slightly beyond our grasp even a decade and a half later, and building multi-tier client/server (i.e. web) applications is a challenge typically involving building lots of client and server wrapper code instead of transparently invoking distributed objects? Unfortunately, Steve's rosy future of distributed objects never really came to pass. NeXT's technology was commercial, only available in Objective C (at a time when C++ reigned supreme and no one used Objective C), and couldn't beat the open web and the standards that would emerge for developing web APIs. Meanwhile, the industry standards for distributed objects would be mired in debacles of their own.

In the before time, in the long long ago, in the days before JSON, XML, and REST, when Tim Berners-Lee had just started hosting the world's first web site on his personal NeXTstation, C++ was the lingua franca of the day and people were just getting started making C++ programs communicate over networks. The Object Management Group (with the now-unfortunate acronym OMG) hashed out the necessary wire protocols, object representations, interface definitions, and a profusion of other standards needed to allow C++ programs to invoke remote objects over TCP/IP networks. The result was CORBA.

CORBA is a technology that drowned in its own complexity, however in the early '90s it was the Enterprise: Serious Business way to allow applications to communicate over networks. Once you waded through the myriad complexity of the various CORBA technologies, you were left with objects you could invoke over the network in a manner somewhat reminiscent of the way you would invoke an object locally.

However, soon the web would take off and HTTP would soon become the de facto protocol programs used to communicate. Unfortunately, HTTP is a terrible protocol for implementing distributed objects. Where HTTP exposes a predefined set of verbs you can use to manipulate resources which have a number of possible representations, objects don't have representations: they are just objects, and you talk to them with messages. This didn't stop people from trying to build a distributed object protocol on top of HTTP though. The result was SOAP, a protocol which abandoned CORBA's "orbs" for web servers, its Interface Definition Language for WSDL, its Common Data Representation for XML, and its Inter-Orb Object Protocol for HTTP.

This was something of a step in the right direction: SOAP actually was a "Simple" Object Access Protocol when compared to CORBA, and SOAP would soon vanquish CORBA for Enterprise: Serious Business applications. While SOAP would gain a few fans, particularly in the Java and .NET communities, who saw the value of being able to expose objects to the network with a few point-and-clicks which generated gobs of XML, SOAP would soon join CORBA's ranks as a reviled technology.

SOAP's complexity comes first and foremost being a committee standard that would succumb to "too many cooks" syndrome in the same way CORBA did. It also suffered from trying to be a cross-language protocol that needed to deal with static type systems, requiring tools which could read WSDL definitions and spit out volumes of generated boilerplate code for interacting with remote services. Beyond that, SOAP suffered from an impedance mismatch with HTTP by largely ignoring the features HTTP provides, using it as little more than a transport wrapper for shoving blobs of XML across the network. The XML contained the actual messages to be sent to remote objects or the responses coming from a remote method invocation, while anything done at the HTTP level itself was just boilerplate.

REST to the rescue?

For all its complexity, it was easy to lose sight of what SOAP was actually trying to do. Rather than painlessly interacting with remote objects, SOAP left us wondering why things were so slow, staring at WSDL errors wondering what went wrong, and picking through gobs and gobs of XML trying to debug problems. REST, which eschewed distributed objects and favored the paradigms of HTTP, would be SOAP's coup de grâce. SOAP is now relegated to a handfull of legacy enterprise applications whereas the rest of the open web has almost universally embraced REST.

So REST triumphed and web APIs reign supreme. Distributed objects are little more than a footnote in history. And we're still left wondering why putting together the sorts of demos Steve Jobs was showing with Portable Distributed Objects in 1995 is so hard.

Using REST makes sense when exposing services for third parties to use. However, if you control both the client and server, and have Ruby frontends talking to Ruby services, REST begins to look like a bunch of gunk that's getting in the way:

Implementing domain objects, REST services, and REST clients becomes work duplicated in 3 places across systems using this sort of architecture. Wouldn't it be a lot simpler if the frontend web application could simply consume remote services as if they were just objects?

This sort of simplicity is the goal of distributed objects.

Distributed Objects in Ruby

Ruby has its own foray into the world of distributed objects: DRb, or Distributed Ruby. DRb exposes Ruby objects to the network, each uniquely identified by a URI. Clients can ask for a DRb object by URI and get a DRbObject back. These DRbObjects act as proxies, intercepting calls and sending them over the network, serializing them with Ruby's Marshal, where they're handled by a remote DRbServer. DRbServer uses a thread-per-connection model, allowing it to concurrently process several requests. When a DRb connection handler receives a request, it looks up the requested object, invokes a method on it, then serializes the response and sends it back to the caller.

For the most part, DRb has lingered in obscurity, save until recently with the publication of the dRuby book which has stirred up a modicum of interest. Where Steve Jobs thought PDO was "by far the easiest way to build multi-tier client/server applications because of [its] completely transparent distributed object model," Rubyists don't turn to DRb to build multi-tier applications, but instead typically rely on REST, building out APIs for what is, in the end, distributed communication between Ruby objects.

Why is it then that DRb isn't the go-to tool people use for building multi-tiered web applications in Ruby? It's easy to say that DRb failed because people are used to thinking in terms of HTTP and can better understand the semantics of the system when using HTTP, especially when it comes to areas like load balancing and caching. Separating services with HTTP also opens up the door to reimplementing those services in a different language in the future. However, even with future-proofing for a rewrite in another language out of the picture, I think most Rubyists would still choose to use REST APIs instead of DRb, and I think that's a defensible position.

While DRb does a great job of trying to make access to remote objects as transparent as possible, it has a number of flaws. DRb is inherently multithreaded but doesn't give the user any sort of tools or framework to manage concurrent access to objects. This means building DRb applications immediately exposes you to all the complexities of multithreaded programming whether you're aware of it or not, and Rubyists seem generally uncomfortable with building thread-safe programs. While DRb allows you to talk to in-process objects the same way you'd talk to out-of-process objects, but it doesn't make it natural to build a program that way.

Beyond Objects: The Power of Distributed Erlang

While CORBA and SOAP are reviled for their complexity, there's another distributed system which is beloved for its high level of abstraction: Distributed Erlang. Erlang is, if anything, a highly opinionated language whose central design goal is to build robust self-healing systems you never need to shut down. When it comes to distribution, Erlang's goal is to make it as transparent as possible. Erlang is a dynamic language which insists you express everything within a scant number of core types. This makes serializing state in Erlang so you can ship it across the wire extremely simple and fast.

However, the real strength of Erlang is the Actor Model, which can be more or less summarized as follows:
  1. Actors communicate by sending messages
  2. Every actor has a mailbox with a unique address. If you have an actor's address, you can send it messages
  3. Actors can create other actors, and when they do they know their address so they can send the newly-created actors messages
  4. Actors can pass addresses (or handles) to themselves or other actors in messages
Erlang uses this method within individual VMs as the basis of its concurrency model. Erlang actors (a.k.a. processes) all run concurrently and communicate with messages. However, Erlang also supports distribution using the exact same primitives it uses for concurrency. It doesn't matter which type of actor you're talking to in Erlang, they "quack" the same, and thus Erlang has you model your problem in a way that provides both concurrency and distribution using the same abstraction.

Distributed Erlang offers several features aimed at building robust distributed systems. The underlying messaging protocol is asynchronous, allowing many more messaging patterns than traditional RPC systems (e.g. HTTP) which use a request/response pattern that keeps the client and server in lockstep. Some examples of these patterns are round robin (distributing messages across N actors), scatter/gather (distributing computation across N actors and gathering the results), and publish/subscribe (allowing actors to register interest in a topic, then informing them of events related to that topic).

In addition, Erlang processes can link to each other and receive events whenever a remote actor exits (i.e. if it crashes). This allows you to build robust systems that can detect errors and take action accordingly. Erlang emphasizes a "fail early" philosophy where actors are encouraged not to try to handle errors but instead crash and restart in a clean state. Linking allows groups of interdependent actors to be taken down en masse, with all of them restarting in a clean state afterward. Exit events can also be handled, which is useful in distributed system for things like leader election.

DCell provides all of these features. When you create an actor with Celluloid, a proxy object to the actor is returned. This proxy lets you use the method protocol to communicate with an actor using messages. DCell implements special marshalling behavior for these proxy objects, allowing you to pass them around between nodes in a DCell system and invoke methods on remote actors in the exact same way you would with local actors.

Unlike DRb, DCell also exposes asynchronous behaviors, such as executing method calls in the background, and also using futures to schedule method invocation in advance then waiting for the result later. DCell also lets distributed actors to link to each other and be informed when a remote actor terminates.

I'm certainly not the first to imitate Erlang's approach to distribution. It's been seen in many other (distributed) actor frameworks, including the Akka framework in Scala and the Jobim framework in Clojure.

Bringing Erlang's ideas over to Ruby

I have a long history of projects that try to cross-pollenate Ruby and Erlang. My first attempt was Revactor, my previous attempt at an actor library which provided a very raw and low-level API which is almost identical to the Rubinius Actor API. Revactor modeled each actor as a Fiber and thus provided no true concurrency. Another of my projects, Reia, tried to bring a more friendly syntax and OO semantics to Erlang.

With Celluloid I've come full circle, trying to implement Erlang's ideas on Ruby again. Only this time, Celluloid makes working with actors easy and intuitive by embracing the uniform access principle and allowing you to build concurrent systems that you can talk to just like any other Ruby object. Celluloid also provides asynchronous calls (what Erlang would call a "cast") where a method is invoked on the receiver but the caller doesn't wait for a response. In addition to that Celluloid provides futures, which allow you to kick off a method on a remote actor and obtain the value returned from the call at some point in the future.

In addition Celluloid embraces many of Erlang's ideas about fault tolerance, including a "crash early" philosophy. Celluloid lets you link groups of interdependent actors together so if any one fails you can crash an entire group. Supervisors and supervision trees automatically restart actors in a clean state whenever they crash.

Celluloid does all of this using an asynchronous message protocol. Actors communicate with other actors by sending asynchronous messages. A message might say an actor has crashed, or another actor is requesting a method should be invoked, or that a method invocation is complete and the response is a given value. All of the heavy lifting for building robust, fault-tolerant systems is baked into Celluloid.

When programs are factored this way, adding distribution is easy. DCell takes the existing primitives Celluloid has built up for building concurrent programs and exposes them onto the network. DCell itself acts as little more than a message router, and the majority of the work in adding fault tolerance is still handled by Celluloid.

Getting Started with DCell

To understand how DCell works we need to look at how a cluster is organized. This is an example of a cluster with 5 nodes:



In this picture the green nodes represent individual Ruby VMs. The links between the nodes are shown in black or gray to illustrate actively connected or potentially connected nodes. DCell makes connections between nodes lazily as actors request them. This means DCell clusters are potentially fully connected networks where each of the nodes is (or can be) directly connected to every other node in the cluster. DCell doesn't implement any sort of routing system or overlay network, and instead depends on all nodes being directly accessible to each other over TCP.

DCell uses 0MQ to manage transporting data over the network. 0MQ supports several different messaging patterns, and in the future DCell may use more of them, but for the time being DCell uses PUSH/PULL sockets exclusively. This works well because Celluloid's messaging system is asynchronous by design: each node has a PULL socket that represents the node's mailbox, and the other nodes on the network have a PUSH socket to send that node messages.

To configure an individual DCell node, we need to give it a node ID and a 0MQ address to bind to. Node IDs look like domain names, and 0MQ addresses look like URLs that start with tcp:


To create a cluster, we need to start another Ruby VM and connect it to the first VM. Once you have a cluster of multiple nodes, you can bootstrap additional nodes into the cluster by pointing them at any node, and all nodes will gossip about the newly added node:

Once you are connected to another node, you can browse the available nodes using DCell::Node.all:


To invoke a node on a particular service, obtain a handle to its node object, then look up an individual actor by the name it's registered under. By default, all nodes run a basic information service which you can use to experiment with DCell:

To implement your own DCell service, all you have to do is create a Celluloid actor and register it on your node. See the info service source code for an example.

DCell Explorer

DCell also includes a simple web UI for visualizing the state of a particular DCell cluster. To launch the web UI, run:


Then go to http://localhost:8000/ (provided you used the same host/port). You should see the following:


This is the basic dashboard that DCell's web UI provides. You can see connected nodes, their connection state, and if they're available browse the info service and see various information about them.

We're just getting started...

DCell is only about half a year old, and still relatively immature, but already it's seen a great number of contributors and a lot of attention. Some of the most exciting developments are still on the horizon, including paxos-powered multicall support which will let you call a quorum of nodes, along with generalized group membership support with leadership election, and generalized pub/sub.

All that said, I'd like to think that DCell is the most powerful distributed systems framework available for Ruby today, and I would love to see the remaining bugs ironed out and missing features added.

That can only happen if people are using DCell, finding bugs, and reporting missing features. This may sound a little bit scary, but if you're considering building a nontrivial distributed system in Ruby, DCell is a great place to start.

142 comments:

Pavel Nikitin said...

Great post. Great job.
I hope this framework will be very useful in our "cloud" epoch.
Thanks for introducing.

Pascal Robert said...

FYI, WebObjects is still around, and starting with WebObjects 5 in 2001, it is 100% Java, with a Cocoa twist. Apple stopped releasing new WebObjects updates after 2009, but we continue development by Project Wonder. You can use Cayenne, a ORM based on EOF 4.5.

Mr. Slime Mould said...

Worth trying! Though I'm somewhat concerned about Ruby VM being able to handle the concept as smoothly as Erlang VM does, mainly because of strict rules that cannot be easily ported to Ruby without changing it into a totally new language.

Michael Ries said...

My love of Erlang can finally come together with my love of Ruby. Totally excited about playing with this framework. Going to try using it with a Sinatra app that acts as a messaging API for some other business apps at work.

troglodyte said...

EOF returned in Core Data.

Quan Huynh said...

Bệnh đái tháo đường thai kỳ nên kiêng ăn gì?Tỷ lệ mắc đái tháo đường trong thai kỳ là khoảng 5% trên tổng số các bà mẹ mang thai, hay khoảng 200,000 trường hợp mỗi năm tại Hoa kỳ.
Cách chữa trị hôi miệng hiệu quả nhanh nhấtHôi miệng không phải là vấn đề răng miệng hiếm gặp, nó thể hiện một phần tình trạng bệnh lý cơ thể và khiến cho người bệnh thấy khá tự ti khi giao tiếp.
Chữa trị hôi miệng ở trẻ em hiệu quả tận gốcHôi miệng không chỉ gặp ở người lớn tuổi mà ngay cả trẻ em cũng có nguy cơ hôi miệng khá cao nếu như chăm sóc răng miệng không tốt
Bị rong kinh kéo dài có nguy hiểm không?Một trong những cái khó chịu mà người phụ nữ phải mang là kinh nguyệt, thứ mà các cụ ta ngày xưa vẫn coi là một cái “tội”. Nhưng lỡ mang nó rồi mà tháng nào thấy “vắng” là cũng lo sợ không kém.
Rong kinh máu đen sau sinh và cách chữaHiện tượng rong kinh ra máu đen là một trong những cảnh báo bất thường của cơ thể nữ giới. Là dấu hiệu rất đáng ngại về sức khỏe cũng như khả năng sinh sản của chị em.
Các biện pháp tránh thai an toàn tốt nhấtNếu chưa có ý định sinh con hoặc mới sinh nở và không muốn bị “vỡ kế hoạch” thì chị em nên áp dụng các biện pháp tránh thai để không mang thai ngoài ý muốn.
Hot boy kẹo kéo Bùi Vĩnh Phúc là ai?Mặc tranh cãi, sau khi xuất hiện trên Vietnam Idol, cái tên “hotboy kẹo kéo” Bùi Vĩnh Phúc nhanh nhảu biến thành từ khóa được truy cập nhiều nhất
Các bệnh lây nhiễm qua đường tình dụcQuan hệ không đúng cách, thường xuyên với nhiều người không dùng các biện pháp phòng tránh an toàn sẽ là một trong những nguyên nhân nhiễm các bệnh tình dục, hoặc lây truyền từ người tình.
Bệnh viêm gan b lây qua đường nào ?Viêm gan B là căn bệnh lây lan lặng lẽ, tiến triển âm thầm do virus viêm gan B(HBV) gây ra, đây là một trong những bệnh được cảnh báo vô cùng nguy hiểm.
Cách rửa mũi cho trẻ sơ sinhThời tiết thay đổi đột ngột rất dễ làm trẻ mắc các bệnh về mũi, họng. Lúc này, mẹ cần vệ sinh mũi cho bé thường xuyên để điều trị chứng viêm mũi, đồng thời phòng cách bệnh về đường hô hấp
Dấu hiệu nhận biết người bị nhiễm hivNói suy giảm miễn dịch mắc phải có nghĩa là quá trình này xảy ra trong khoảng thời gian sống của con người, không phải do di truyền hay bệnh bẩm sinh của hệ miễn dịch.

pham diep chi said...

thuốc đông y chữa đau dạ dày chữa thế nào , làm thế nào để chua benh loet da day ta trang , thế nào là bệnh viêm amidan , Chúng tôi có nhiều cach chua viem amidan hoc mu mãn tính ,Nhiều bài thuốc trị nổi mề đay ban đỏ , Thuốc đông y chữa gan nhiễm mỡ , Làm thế nào chữa viêm phế quản phổi ở trẻ , tôi đã bệnh ho rứt điểm,bệnh viêm mũi dị ứng ,Cách trị viêm mũi xoang mãn tính, Bài thuốc chữa đau dạ dày cấp tính , Phương pháp chữa trào ngược dạ dày thế nào ? ,Bài thuốc chữa benh trao nguoc da day thực quản, Thảo dược đặc trị rụng tóc ở nam giới , Bài thuốc gia truyền chữa bệnh rối loạn kinh nguyệt cực nhanh , bị bệnh thoái hóa đốt sống cổ chữa ra sao

pham diep chi said...

liệu pháp giam dau benh da day hiệu quả tại nhà . Bài thuốc tây y mới chữa bệnh viêm gan b , Bạn tôi đã chữa khỏi viem amidan man tinh rồi ,Tôi đã cắt viem amidan mu song rất dễ chịu , Bài thuốc người dân tộc viêm đại tràng cấp tính . cần kiêng hay không kiêng benh dau da day nen an gi cho tốt . tìm hiểu thêm về trieu chung benh da day ra sao. ho do benh viem hong chữa được không , Tôi chữa benh amidan cho tre em rất tốt, Khi bị viêm amidan sau khi cat amidan kieng gi .
Thuốc từ dau rong chua benh dau da day .
Viêm mũi dị ứng hay trieu chung viem xoang .
thuốc tây hay những bài thuoc dan gian chua benh da day bệnh mề đay ở người lớn và bệnh nổi mề đay ở trẻ em hay sảy ra không ?.

Thanh Megavita said...

Các nhà khoa học Nhật Bản sẽ giúp bạn tìm ra phương cách tốt nhất để vừa tăng cường sức khỏe, vừa chống lại ung thư một cách an toàn và hiệu quả nhất. Cùng tìm hiểu tác dụng của thuốc fucoidan hỗ trợ điều trị ung thư Fucoidan Umi No Shizuku giá bao nhiêu? Mua ở đâu?
Fucoidan Umi No Shizuku là thực phẩm chức năng hỗ trợ điều trị ung thư của Nhật Bản được đánh giá cao nhất hiện nay. Tham khảo cách sử dụng thuốc Fucoidan. Fucoidan là kết quả của nhiều năm nghiên cứu và tổng hợp của các bác sĩ hàng đầu tại Nhật. Đây là sản phẩm cao cấp từ hãng dược phẩm Kamerycah Inc. Thuốc Fucoidan là gì ? một trong những thương hiệu tiên phong trong lĩnh vực ứng dụng thực phẩm biển phục vụ việc chữa bệnh để mang đến sức khỏe tối ưu nhất cho người sử dụng. Liều dùng thuốc Fucoidan. Bài viết này sẽ giúp bạn tìm hiểu về sản phẩm thuốc hỗ trợ điều trị ung thư Fucoidan Umi No Shizuku giá bao nhiêu? Mua ở đâu?

Router Support said...

nice post.
Cisco Router Customer Support

Amir kh said...

دانلود برنامه حسن زیرک برای اندروید + زندگی نامه و متن آهنگ ها
دانلود فیلم جدید The Night Crew 2015
دانلود بازی ماشین مسابقه ای جدید برای اندروید Nitro Nation Stories

Anosh Alassi said...

بيع اثاث مستعمل بالرياض
شراء اثاث مستعمل جنوب الرياض
شراء اثاث مستعمل شرق الرياض
شراء اثاث مستعمل غرب الرياض

Aliya said...

Surveillancekart | CCTV System
Pestveda | Pest Control
Termite control
cctv installation services
best home security camera system

shina said...

cctv camera dealers in delhi
cp plus cctv camera online
hikvision camera online
cctv camera installation services in delhi
cctv camera installation services in gurugram

Dida ELhaik said...

عندما يفكر أحدنا في الانتقال للعيش في منزل جديد، يشعرفجأة وكأنه يحمل أثاثه ومقتنياته فوق ظهره، من فرط التفكير في كيفية نقل الأثاث إلى المكان الجديد والأضرار المحتملة والخوف على المقتنيات النفيسة والقطع الحساسة والأغراض القابلة للكسر، وما تحتاج إليه من تعبئة وتغليف ونقل، لكنها مشكلة أصبحت محلولة بوجود شركات متخصصة في نقل الأثاث سواء إلى منزل جديد أو للتخزين لحين الانتهاء من صيانة المنزل أو السفر وما إلى ذلك شركة تركيب اثاث ايكيا بالرياض
شركة تركيب ستائر بالرياض
شركة تنظيف مكيفات بالرياض
شركة تركيب غرف نوم بالرياض
شركة تركيب باركية بالرياض

Dida ELhaik said...

شركة مكافحة حشرات بجازان
شركة رش مبيدات بجازان

Dida ELhaik said...

شركة نقل عفش بالطائف
شركة نقل اثاث بالطائف

Emma said...

avriq Desktop/Laptop Repair
avriq yellow pages
avriq bbb
avriq business services
avriq
Avriq India

Escorts cart said...

Female Escorts She whispers quietly in my ear that she has joined forces with all that make up the lands of this country. Along they can drive those out who have raped them of their dignity. They are uniting not solely of this country however with all countries and all the forces of nature. Earthquakes, typhoons, hurricanes, rains, and more natural forces are in training to destroy all that the white skinned have created.
Female Escorts,High Class Call Girls,Escorts Girls,Escorts ,Escorts near me
Female Escorts

khaled ali said...

شركة الصفرات لمكافحة الحشرات
شركة الصفرات لرش المبيدات بالرياض

Escorts cart said...

Female Escorts The discussion quickly turned to my call on treatment. I had determined to trust myself to his skills and advised him that I would have the operation to get rid of the prostate. He appeared please with the decision.
Female Escorts

Escorts cart said...

Female Escorts: It is a revered coming back-of-age tradition that got wrapped into the Catholic faith, its beliefs and antique rituals. As a girl moves out of the protecting family unit and approaches dealings in the planet to form her own life and family,
Female Escorts,High Class Call Girls,Escorts Girls,Escorts ,Escorts near me
Female Escorts

crazy mass said...


There are a heap of fat burners out there,Healthy Natural Keto and therefore called analysis proving that they're employed. However it cannot be further from the truth. Fat burners generally do not work; more often than not they sometimes do not work for the average person who uses them. I'll quickly run you through the facts of fat burners, and that i hope to shed some light on the topic:
Healthy Natural Keto

shabnam praveen said...

Call girls in Kolkata
Call girls in Chandigarh
Call girls in Chandigarh
Call girls in Gurgaon
Call girls in Chandigarh
Call girls in Chandigarh

shabnam praveen said...

Call girls in Lucknow
Call girls in Guwahati
Call girls in Mumbai
Call girls in Jaipur
Call girls in Jaipur
Call girls in Jaipur
Call girls in Bangalore

Alex daina said...

The measure of cash to be gotten will rely upon the auto's esteem. Endless supply of the estimation of the auto and concession to the cash to be obtained, the borrower gets the chance to keep his or her auto. car title loans chicago

Unknown said...

AvriqPrinter RepairPrinter InstalltionWifi trouble shooting
Software InstalltionThanks for posting Really Such Things. I should recommend your site to my friends.
Virus removal

hussain d said...

Greetings! Very helpful advice within this article!
The 7 Best Java Frameworks
Current Trends in Java Technology
Java Technologies for web applications
Creating Your First Java Program
Java Training in Bangalore

hussain d said...

I found some really interesting stuff in your blog.

Java Training in Bangalore
iOS Training in Bangalore

Unknown said...

obat kuat maxman
obat kuat obat kuat black ant africa
alat bantu sex pria vagina senter
boneka sex full body
alat bantu sex pria vagina pinggul
alat bantu sex pria vagina getar
celana hernia
alat bantu sex pria vagina manual
alat bantu sex wanita penis pretty love
tongue viberator lidah

viswanath said...

AWS Training in Bangalore - Live Online & Classroom
myTectra Amazon Web Services (AWS) certification training helps you to gain real time hands on experience on AWS. myTectra offers AWS training in Bangalore using classroom and AWS Online Training globally. AWS Training at myTectra delivered by the experienced professional who has atleast 4 years of relavent AWS experince and overall 8-15 years of IT experience. myTectra Offers AWS Training since 2013 and retained the positions of Top AWS Training Company in Bangalore and India.


IOT Training in Bangalore - Live Online & Classroom
IOT Training course observes iot as the platform for networking of different devices on the internet and their inter related communication. Reading data through the sensors and processing it with applications sitting in the cloud and thereafter passing the processed data to generate different kind of output is the motive of the complete curricula. Students are made to understand the type of input devices and communications among the devices in a wireless media.

loop said...

Netcut 10
plete curricula. Students are made to understand the type of input devices and communications among the devices in a w

GULO said...

I really loved reading your blog. It was very well authored and easy to understand. Unlike other blogs I have read which are really not that good.Thanks alot! grammarlyfreetrial.com

archer said...


India's only Digital News Channel with True Voice of India.
Finding #Championsofchange2018 #rahulshivkant
the universal post teams
the universal post youtube
loksabha election 2018
top trending news
top viral news
news today
news today india
india news today
hindi news
india news live
abp news
times of india
toi
google news
moneycontrol
ndtv live
india post
the wire

Muhammad Rafay said...

I love visiting sites in my free time. I have visited many sites but did not find any site more efficient than yours. Thanks for the nudge! Set Life

Hanna Willam said...

Greatly composed article, if just all bloggers offered the same substance as you, the web would be a much better place.
Menmyshop
Car Stereo
Double Din Android Player
Hyepersonic Double Din Player
Hyundai Creta Double Din Player
Hyundai Xcent OEM Double Din Player
banzara

rytrytr said...

happy new year 2019 images 10

Venkatesh chittipolu said...


https://videoderapk.in/
videoder
videoder apk
videoder install

fooooiol said...

hotmail
thanxx really

sathya said...

Nice post. It is really interesting. Thanks for sharing the post!
fridge online
buy fridge online
buy refrigerator online
Washing Machine Online
Washing Machine Offers
Buy Washing Machine Online
Online Shopping

Laxman S said...

I’m really impressed with your article, such great & usefull knowledge you mentioned here. Thank you for sharing such a good and useful information here in the blog
Kindly visit us @
SATHYA TECHNOSOFT (I) PVT LTD
Social Media Marketing Company | SMO Company India
Social Media Marketing Packages in India
PPC Campaign Price | Google Adwords Pricing in india
PPC Company in India | PPC Services India
Google Adwords company in India | Google Adwords Services in India
Best SEO Company in india | SEO Services in India
Bulk SMS Service India | Bulk SMS India

Sathya said...

Sathya Online Shopping
Buy AC Online | AC Online Shopping | AC Price | Buy Air Conditioner Online
Inverter Split AC | Best Inverter AC | Split AC Price | Buy Split AC Online
Smart LED TV | Smart TV Price | LED TV Online | Buy LED TV Online
Laptop Online | Laptop Price | Buy Laptop Online | Best Laptop
Buy HD LED TV
Buy Ultra HD TV Online
Buy HD Ready LED TV
Buy Mobile Online

Best Sexologist in India said...

thanks for giving that type of information..

Contact No Of Best Sexologist in Delhi
Sex Specialist Doctor in Delhi
Good Sexologist in Delhi
Sexologist Doctor in Delhi

Aayushi Sharma said...

Thanks for providing such a great Information, you can see
Custom Peptide Synthesis
Peptide Synthesis

Laxman S said...

I’m really impressed with your article, such great & usefull knowledge you mentioned here. Thank you for sharing such a good and useful information here in the blog
Kindly visit us @
SATHYA TECHNOSOFT (I) PVT LTD
Social Media Marketing Company | SMO Company India
Social Media Marketing Packages in India
PPC Campaign Price | Google Adwords Pricing in india
PPC Company in India | PPC Services India
Google Adwords company in India | Google Adwords Services in India
Best SEO Company in india | SEO Services in India
Bulk SMS Service India | Bulk SMS India

shivani said...

A bewildering web journal I visit this blog, it's unfathomably heavenly. Oddly, in this present blog's substance made purpose of actuality and reasonable. The substance of data is informative
Oracle Fusion Financials Online Training
Oracle Fusion HCM Online Training
Oracle Fusion SCM Online Training

shivani said...

A befuddling web diary I visit this blog, it's incredibly grand. Strangely, in this present blog's substance made motivation behind fact and sensible. The substance of information is instructive
Oracle Fusion Financials Online Training
Oracle Fusion HCM Online Training
Oracle Fusion SCM Online Training

Madoo said...

This is really an amazing article. Your article is really good and your article has always good thank you for information.


โปรโมชั่นGclub ของทางทีมงานตอนนี้แจกฟรีโบนัส 50%
เพียงแค่คุณสมัคร Gclub กับทางทีมงานของเราเพียงเท่านั้น
ร่วมมาเป็นส่วนหนึ่งกับเว็บไซต์คาสิโนออนไลน์ของเราได้เลยค่ะ
สมัครสมาชิกที่นี่ >>> Gclub online

Yakru45 said...


Excellent Post as always and you have a great post and i like it


เว็บไซต์คาสิโนออนไลน์ที่ได้คุณภาพอับดับ 1 ของประเทศ
เป็นเว็บไซต์การพนันออนไลน์ที่มีคนมา สมัคร Gclub Royal1688
และยังมีเกมส์สล็อตออนไลน์ 1688 slot อีกมากมายให้คุณได้ลอง
สมัครสมาชิกที่นี่ >>> Gclub Royal1688

datxoichecom said...

datxoichecom

jumboslot.com said...

Thanks. Useful information and very inspiring.
สล็อต
สล็อตออนไลน์
เกมส์สล็อต
เกมสล็อต
slotxo

kanika ahuja said...

There are many added benefits to this. More so putting your digital products on Click bank gives you an opportunity to let others market your products for you. This marketing strategy alone can greatly transform your business.
best internet marketing offline course in delhi

Unknown said...

visit to our website for Hp printers help

HP Printer customer support number
hp printer customer care number
hp support number
hp service centre USA
hp store contact number
hp service centre near me
HP Printer tech support phone number USA

Unknown said...

thanks for sharing this stuff..Pinoy libangan provide you all the latest replays in hd.

shivani said...

An astounding web diary I visit this blog, it's inconceivably magnificent. Strangely, in this current blog's substance made point of fact and sensible. The substance of information is instructive.
Oracle Fusion Financials Online Training
Oracle Fusion HCM Online Training
Oracle Fusion SCM Online Training

Wpfixd said...

Delta Customer Service Number
Delta Customer Service
Delta Customer Number
Delta Service Number
DELTA CUSTOMER SUPPORT AND SERVICES
+18882623768 Delta customer number for
Technical Support
Reservations
Cargo Department
Customer Service
Lost Baggage
Medallion Status

Wpfixd said...

Wordpress website development
wp fixed
Wordpress website development in California
wp fixed contact number
web site development
CALL 1 877 877-1481
We Resolve : WordPress Errors, Do WordPress Maintenance, Provide WordPress Support, Get WordPress Hosting, Do WordPress Website Customization and WordPress Website Development, Also WordPress Installation, And WordPress Migration and much more.

Mahak Tandon said...

graphic design institute
graphic design institute in delhi
graphic design courses in delhi
graphic design courses
graphic designing courses in delhi
graphic design institute delhi
graphic designing institute
graphic designing institutes in delhi
graphic design institute new delhi, delhi
graphic designing course in delhi

Mahak Tandon said...

graphic designing training in delhi
graphic design courses delhi
graphic designing institutes
graphic designer course in delhi
graphic design course in delhi
best graphic design institute in delhi
graphic designer in delhi
graphic institute
graphic design classes near me
designing courses in delhi

Mahak Tandon said...

graphic design colleges in delhi
best institute for graphic designing in delhi
digital design courses
graphic design courses in south delhi
graphic designer delhi
computer designing course
graphic design training
graphic design courses near me

kanika ahuja said...

digital marketing course in delhi
digital marketing courses in delhi
best digital marketing institute in delhi
digital marketing course delhi
digital marketing course in delhi ncr
top 10 digital marketing institute in delhi
best digital marketing course in delhi
internet marketing course in delhi
digital marketing courses in delhi
digital marketing course institute in delhi

kanika ahuja said...

digital marketing courses delhi
offline digital marketing courses
best institute for digital marketing course in delhi
best institute for digital marketing in delhi
digital marketing classes in delhi
best digital marketing institute in delhi ncr
top digital marketing institutes in delhi
digital marketing institutes in delhi
online marketing courses in delhi
internet marketing institute in delhi

kanika ahuja said...

social media marketing courses in delhi
digital marketing institute near me
institute for internet marketing in delhi
institute for digital marketing in delhi

shivani said...

An overwhelming web journal I visit this blog, it's unfathomably amazing. Unusually, in this present blog's substance made inspiration driving truth and reasonable. The substance of data is enlightening
Oracle Fusion Financials Online Training
Oracle Fusion HCM Online Training
Oracle Fusion SCM Online Training

Institute Coim said...

BECOME A DIGITAL MARKETING
EXPERT WITH US
COIM offers professional Digital Marketing Course Training in Delhi to help you for job and your business on the path to success.
Digital Marketing Course in Laxmi Nagar
Digital Marketing Institute in Delhi
Digital Marketing training in Preet Vihar
Online Digital Marketing Course in India
Digital Marketing Institute in Delhi
Digital Marketing Institute in Delhi



kanika ahuja said...

digital marketing course in delhi
digital marketing courses in delhi
best digital marketing institute in delhi
digital marketing course delhi
digital marketing course in delhi ncr
top 10 digital marketing institute in delhi
best digital marketing course in delhi
internet marketing course in delhi
digital marketing courses in delhi
digital marketing course institute in delhi

kanika ahuja said...

digital marketing courses delhi
offline digital marketing courses
best institute for digital marketing course in delhi
best institute for digital marketing in delhi
digital marketing classes in delhi
best digital marketing institute in delhi ncr
top digital marketing institutes in delhi
digital marketing institutes in delhi
online marketing courses in delhi
internet marketing institute in delhi

kanika ahuja said...

social media marketing courses in delhi
digital marketing institute near me
institute for internet marketing in delhi
institute for digital marketing in delhi

Arsh Khan said...

course for graphic design south delhi
graphic design certification course in delhi
certified graphic designing training delhi
graphic designing course duration delhi
top 10 graphic design institute in delhi
top 5 graphic design institute in delhi
top graphic designing institute in delhi
top graphic design training centers in delhi
graphic desining training schools in delhi
graphic designing institutes in delhi



harshak said...

https://www.tutuapp.blog/
tutuapp
tutuapp download
download tutuapp
tutuapp vip
tutuapp apk
tutuapp ios

Shanthi Cabs said...

The article is very interesting and very understood to be read, may be useful for the people. I wanted to thank you for this great read!! I definitely enjoyed every little bit of it. I have to bookmarked to check out new stuff on your post. Thanks for sharing the information keep updating, looking forward for more posts..
Kindly visit us @
Madurai Travels
Best Travels in Madurai
Cabs in Madurai
Tours and Travels in Madurai

Unknown said...

https://deltacustomerservicenumber.com/


+1 (888) 262-3763 Delta Airlines Customer Service Number for :

Delta Airline Reservatations

Airline Booking

PNR Change

Online Delta Ticket Booking

Delta Customer Care

Best phone number to reach Delta

Airline VIP Lounge

Delta Celebrity Reservation



24 hours, 7 days
Delta customer service number .
Get in touch with Delta’s customer service department through the following phone numbers,email and contact form.
For more information about reservations, technical support, cargo department, lost baggage and medallion status, please call the numbers listed Above .

Anurag gothwal said...

Top cameras in India under 40000. It is very good looking,comfortable and effective.
https://www.anuragcollection.com/best-cameras-in-india-under-40000/

Shivam Polychem said...

We are providing you high quality filler masterbatches all over India
Filler Masterbatch

quickbooksexperts.us said...




Quickbooks Enterprise Support Phone Number
Get Help for all your issues with QuickBooks Enterprise.
Call (888) 802-9333
Call Intuit QuickBooks Online Customer Services Helpline Phone Number USA 1-888-802-9333 to fix your Accounting Issues.
QuickBooks Technical Support Contact Team Will fixes your issue Enterprises,
Payroll, Pro, Premier, Vat, Bank Errors etc , QuickBooks Online Support Number 1-888-802-9333 USA

Anurag gothwal said...

We are providing best jobs from this website.
https://vasitum.com/

shivani said...

Thanks for sharing a useful information.. we have learnt so much information from your blog..... keep sharing
Oracle Fusion Financials Online Training
Oracle Fusion HCM Online Training
Oracle Fusion SCM Online Training

Liam said...

At times, you may not be able to write an academic assignment due to some reason. You could opt for our Assignment Help Online in such a situation and can get a well-written coursework from us.

Liam said...

If you missed your assignment submission date and you need your assignment to be done in 24 hours then don’t worry just take support from online assignment help service to complete your task on time. Programming Assignment Help

Merlin Kristianti said...

Permainan kartu tentunya bukan hanya bisa di mainkan untuk mengisi waktu luang anda saja loh. Tapi anda akan bisa menghasilkan keuntungan seperti uang dengan bermain permainan kartu ini.
asikqq
http://dewaqqq.club/
http://sumoqq.today/
interqq
pionpoker
bandar ceme terpercaya
freebet tanpa deposit
paito warna
syair sgp

rickypauls said...

greatassignmenthelp provide all the important information regarding Assignment Help in your blog. It such a relief for those students who do not get instant help when they actually need it. These services are helpful and time-saving. All valuable points are covered in this blog which clears the concept of homework help.
Assignment Help Online
Online Assignment Help
Assignment Help Online Services
Assignment Helper
Assignment Assistance
Assignment Help Experts
Online Assignment Help Services
Assignment Writing Help

Rayan Warner said...

This is really helpful post and very informative there is no doubt about it. I found this one pretty fascinating. I am offering the Microsoft Office related Technical Issue of Solutions at a minimal price with expert team. Calling the technical support team will save your time and money. Call us on toll-free number +1-888-777-2832. Get support click here
Office 365 Help
Office 365 Support
Microsoft 365 Support
Microsoft Office 365 Support
Outlook Support
Microsoft Outlook Support
Outlook Support Number
Outlook Support Phone Number
Outlook Tech Support Phone Number
Outlook Technical Support Phone Number
Outlook Customer Service Phone Number
Outlook Customer Support Phone Number
Outlook Support Number

harshak said...

https://testdpc.xyz
Test dpc
Test dpc apk

James Marcus said...

Oh Awesome. I like your writing and topic as well. And you know! This is exactly same blog that I need. Please keep post more topics because I love the way of your writing. Visit on my Microsoft outlook support web page for Outlook Support Number, if you are getting.
Outlook customer Service Number

Microsoft Support

MarksonJoy said...

Very nice!!! This is really good blog information thanks for sharing. We are a reliable third party QuickBooks support phone number company, offering technical support for various types of technical errors.

Quickbooks online backup

QuickBooks online customer service

rose said...

Your article expresses how much knowledge you are and it helps lots of students.
Awesome! I always use to read your blog. It is so much informative. Thanks assignment help australia

Rishma Hauser said...

Dit is het leuke blog van Avast klantenservice België. Het is handig voor de klanten om de download software gemakkelijk te maken. Bezoek onze website en download voor het antivirussoftware venster 7 en venster 8.
 Avast klantenservice België

 Avast klantenservice Telefoonnummer België

 Avast klantenservice België

 Contact Avast Antivirus Klantenservice

Avast Contact Antivirus Klantenservice Telefoonnummer

 Contact Avast Antivirus Customer Support Team Belgium

 Contact Avast Belgium

Word press said...

BECOME A DIGITAL MARKETING
EXPERT WITH US
COIM offers professional Digital Marketing Course Training in Delhi to help you for job and your business on the path to success.
+91-9717 419 413
Digital Marketing Course in Laxmi Nagar
Digital Marketing Institute in Delhi
Digital Marketing training in Preet Vihar
Online Digital Marketing Course in India
Digital Marketing Institute in Delhi
Digital Marketing Institute in Delhi



Word press said...

BECOME A DIGITAL MARKETING
EXPERT WITH US
COIM offers professional Digital Marketing Course Training in Delhi to help you for job and your business on the path to success.
+91-9717 419 413
Digital Marketing Institute In Noida
Digital Marketing Course Noida
Digital Marketing Course in Laxmi Nagar
Digital Marketing Institute in Delhi
Digital Marketing training in Preet Vihar
Online Digital Marketing Course in India
Digital Marketing Institute in Delhi
Digital Marketing Institute in Delhi










Word press said...

Best Love Astrologer
Best astrologer in Mumbai
Best Marriage Astrologer
+91-95826-27501(IND) (WhatsApp)
email : panditnksharmaji@gmail.com

First, We felt hopeless and heartless, that we might never become parents.
And this guilt and sadness were ruining our everyday life.
I never thought astrology – Ancient Indian Astrology does have a remedy for it!!!
I was shocked to see the results when we delivered twins after 8 years of marriage.
N.K Sharma, Is not just an Astrologer he is such a pure spirit, that God has sent to help childless couples like us,
to see the new motherhood, parenthood, and livelihood.
I think most of us don’t know about what our ancient teachings have for us.
our should try and rely! and You will be Happy Like Never Before to see Yourself becoming a parent.
Thank You N.K. Sharma Ji.

Anurag gothwal said...

We are providing latest news from this website.
https://www.ayeghazi.com/

Delta Flight Reservation Number said...

+1 (888) 262-3763 Delta Airlines Customer Service Number for :

Delta Airline Reservatations

Airline Booking

PNR Change

Online Delta Ticket Booking

Delta Customer Care

Best phone number to reach Delta

Airline VIP Lounge

Delta Celebrity Reservation



24 hours, 7 days
Delta customer service number .
Get in touch with Delta’s customer service department through the following phone numbers,email and contact form.
For more information about reservations, technical support, cargo department, lost baggage and medallion status, please call the numbers listed Above .

Delta Customer Service Number

Delta Customer Service
Delta Customer Number
Delta Service Number
Delta Airlines Reservation Number

Unknown said...

graphic design institute in delhi
graphic design course in delhi
graphic designing institute delhi
graphic designing course delhi

Motohog said...

motorcycle t shirts india
best biker t shirts
mens motorcycle t shirts
Rider t shirts online india
womens biker t shirts

hussainaadil said...

Thanks for sharing. I found a lot of interesting information here. A really good post, very thankful and hopeful that you will write many more posts like this one. assignment help Dubai

Online Service said...

We are an independent third party Dell support provider for Dell users suffering from serious technical threats. We provide unlimited technical support services and solutions for Dell users in very affordable rates. Our Dell Support Number team is ready to help you for any issue.

Dell Support Number

Dell Support

Dell Printer Support Number

Dell Printer Support

i-visaindia.com said...

Apply India EVisa from your home country Online.
No need to visit Embassy and No more worries about document and application validation.
Evisa India can be now applied Online by visiting i-visaindia.com
- Click on Apply eVisa or Begin Application
- Start filling the first form with Basic Details for applying Indian eVisa
- Complete form 2 and form 3
- Make Payment and Upload Documents
-Submit Your eVisa Application.
- Wait for Confirmation email.
- Your evisa India is applied Successfully
- Find your eVisa India in your email.

Nitesh said...

Hello guys,
>> nick is here
>> i am a gamer
>> if you are interested in the gaming world
>> kindly pay a visit to my new The amazing spider man 2 game.
>> download and enjoy it.
For more information visit my website given below :
website : https://www.thenickblog.com/

studentsassignmenthelp said...

Students don't have to wait to get top homework writing services today and score top marks. So if you demanding for law assignment help so don't search more and get our best services from the professional experts of StudentsAssignmentHelp.com. For your homework best team is always working to offer students and they can easily complete all your task accurately and in the asked format.

Nitesh said...

Hello guys,
this is nick here, how are you all, hope you are good, i am a professional gamer,
and provide different information about different trending media's such gaming,
and trending things going on allo ver the world. if you want to get such type of
information, please visit my link given below:-
latest game :- assassins cred black flag
youtube channel :- dino gamer
i hope this information will help you.
For more information visit my website given below :
website : https://www.thenickblog.com/
please comment on my webssite so that i know what type of information do you want :)

Daveheller said...

Excellent post. I like your concept very much. Especially the way you explain it, it’s impressive. Though I am very new to your post but really want to know more in the future. Great work Keep it up...If you need Microsoft outlook support then get it from us at reasonable price.

Healthy Wealthy said...

Thanks for sharing this blog
http://www.healthywealthydiet.in

Glane Gill said...

You’re killing it and you are basically the master of your topic. Who would doubt that your position will be number 1? You are the boss! office 365 Support.
If you wanna read more for Microsoft office 365 Support then visit the Microsoft 365 Support website.

Adam Thomas said...

Our website AllAssignmenthelp.com is affiliated with the site of various nations. We give our administration everywhere around the world. Our assignment assistance is given to students all through.
Homework Help Canada
Assignment Expert Canada

BHBUJJWALSAINI said...


Thanks you sharing information.
You can also visit on
How to control anger

BHBUJJWALSAINI said...

Thanks you sharing information.
You can also visit on
How to think positive

Outlookhelp said...

Your one phone call can save you from several outlook issues that you may face while using it. Just take outlook support phone number via giving a ring at our helpline number. Whenever you dial this number, you will get directly connected to me. As a tech support executive, I am reachable 24x7 to help out needy customers like you.
outlook support number
outlook customer service phone number
outlook tech support phone number
Microsoft Support Phone Number
Office 365 tech support phone number
Office 365 technical support phone number

donaldgeorge said...

Hii i am donaldgeorge and i am a senior technician in Quickbooks .If you face any technical issues in quickbooks then must dial Quickbooks Support Phone Number
to get an instant solutions.

Singapore translators said...

Thank you for sharing such a great article! I found very interesting information for me. It contains wonderful and useful posts. Keep up the good work!. LEGAL TRANSLATION SERVICES SINGAPORE

PaydayAlabama said...

PaydayAlabama provides quick and hassle free process for applying for payday loans auburn al. The Process of applying is simple. Just fill the valid and up to date required information in the form and send it for approval. Our lenders would then contact you with an offer in case they approve your application. After approval, cash will be deposited to your account within 1 or 2 business days.

Rigid Box said...

Excellent Blog. I really want to admire the quality of this post. I like the way of your presentation of ideas, views and valuable content. No doubt you are doing great work. I’ll be waiting for your next post. Thanks .Keep it up!
Kindly visit us @
Luxury Boxes
Premium Packaging
Luxury Candles Box
Earphone Packaging Box
Wireless Headphone Box
Innovative Packaging Boxes
Wedding gift box
Leather Bag Packaging Box
Cosmetics Packaging Box
Luxury Chocolate Boxes

KIT said...

Nice blog, it's so knowledgeable, informative, and good looking site. I appreciate your hard work. Good job. Thank you for this wonderful sharing with us. Keep Sharing.
Kindly visit us @
100% Job Placement
Best Colleges for Computer Engineering
Biomedical Engineering Colleges in Coimbatore
Best Biotechnology Colleges in Tamilnadu
Biotechnology Colleges in Coimbatore
Biotechnology Courses in Coimbatore
Best MCA Colleges in Tamilnadu
Best MBA Colleges in Coimbatore
Engineering Courses in Tamilnadu
Engg Colleges in Coimbatore

Raj Tattapure said...

Thank you for providing the valuable information ...

If you want to connect with AI (Artificial Intelligence) World

as like Python , RPA (Robotic Process Automation)Tools and Data -Science related more information then meet on EmergenTeck Training Intitute .

100% job Placement

Thank you.!

kiara Jess said...

Thank you for sharing this. The blog is very informative. We also provide affordable Law Assignment help in uk.

petterson said...

This post is not just informative but impressive also. The post is so convincing that it created an urge to choose coursework writing service uk

neha said...

Thanks for sharing this information and keep updating us.it will really helpful for Career Growth. Really it was an awesome article.
IVF Center in delhi
best wedding photographer in jalandhar
best fashion photographer in Chandigarh
how to stop hair falll
how to remove sun tan from face
Online Digital Marketing Training

prabhakar sharma said...

We are popular as Florist Service in Gurgaon from last 10 Years, we also offers fresh flowers cakes and latest gifts across Gurgaon. Send flowers online and Offline from flower shop for your loved ones and availlable for corporate gifting with fastest delivery.

Florist Service in Gurgaon
Online Florist Services in Gurgaon

Sophia Thomas said...

Excellent post. Your information is very detailed and useful to me, thank you for sharing. We provide affordable Assignment Help in Australia.
Assignment Help

Unknown said...

idfc bank account balance check number Japanese Hotel in Ahmedabad Japanese Hotel in Ahmedabad

dadyar said...

طلاق (طلاق توافقی) یکی از موضوعاتی است که در روابط خانوادگی اسلامی و اجتماعی بسیار درباره آن بحث شده است. در زمان حاضر اعتیاد و ترک نفقه، دو عامل مهم بر افزایش بیش از پبش آمار طلاق بوده است. چرا که شخص معتاد قادر به کسب شغل شرافتمندانه ای نیست از این رو دچار خطاها و جرایم زیادی می شود لذا زندگی بر همسر سخت و طاقت فرسا می گردد. بر خلاف عقد که تحقق آن نیاز به انشای هر دو طرف دارد، در طلاق اینگونه نیست و تنها انشاء مرد کافی است. اگر خانوم ها، حق طلاق گرفته باشند اقدام و انشاء آن ها نیز کافی می باشد اما اگر حق طلاق نداشته باشند روند طلاق دشوار تر خواهد بود. اما جای نگرانی نیست چرا که وکلای مستر دادیار همراه شما خواهند بود.

در هنگام عقد حقوق و تعهداتی برای زن و شوهر ایجاد می شود. زمانی که مرد دادخواست طلاق می دهد یعنی از تمام حقوق خود می گذرد و در عین حال باید حقوق همسر را کاملا به جا آورد، همین موضوع در مورد دادخواست طلاق از طرف زوجه نیز هست، یعنی خانوم ها نیز در هنگام درخواست طلاق تمام حقوق خود را باید ببخشند مگر آنکه حق طلاق داشته باشند. به دلیل طولانی بودن روند دادخواست طلاق از سوی زوجه، خانوم ها ترجیح می دهند تا از طریق طلاق توافقی اقدام کنند و همسرشان را راضی به طلاق توافقی کنند که در اکثر مواقع منجر به بخشش مهریه از سوی خانوم ها می شود.
مراحل طلاق توافقی چگونه است

مراحل طلاق توافقی چگونه است
مراحل طلاق توافقی چگونه است

در طلاق توافقی زن و شوهر قبل از ارائه دادخواست طلاق توافقی باید در مورد تمام آثار مالی و غیر مالی نکاح (مهریه، حضانت فرزند، اجرت امثل، وسایل منزل و..) با هم توافق کنند. اصلی ترین موضوع در این میان توافق بر سر مهریه و حضانت است، مرد مهریه را می پردازد و یا زن مهریه را می بخشد (البته باید توجه داشت که در مواردی می توان حتی بعد از طلاق که زوجه مهریه را بخشیده است، اقدام به گرفتن مهریه بعد از طلاق توافقی کرد) و در مورد حضانت نیز همین گونه است. تمام توافقات باید در صورت جلسه ای ثبت گردد و به امضای طرفین و شهود برسد. دادگاه توافقات زن و شوهر را برای تصمیم گیری ملاک قرار خواهد داد.

قبل از صدور حکم، قاضی زوج و زوجه را به مرکز مشاوره خانواده ارجاع می دهد، البته می توانید از ابتدا به مشاوره مراجعه کرده و مشاور در صورت منصرف نشدن متقاضی از طلاق با مشخص کردن موارد توافق، موضوع را به دادگاه اطلاع خواهد داد.
مراحل طلاق توافقی

مراحل طلاق توافقی

پس از اعلام نظر مشاور خانواده به دادگاه، قاضی حکم عدم امکان سازش را صادر میکند. پس اعلام رای طرفین تنها سه ماه فرصت دارند تا برای اجرا شدن طلاق به دفتر خانه مراجعه کنند، در غیر اینصورت رای باطل شده و دوباره باید اقدام گردد.

عدم مراجعه زوج به دفترخانه: اگر بعد از گرفتن حکم عدم امکان سازش، زوج از مراجعه به دفترخانه امتناع کند و یا به هر دلیلی نتواند حضور یابد زوجه (خانوم) می تواند به دفترخانه مراجعه کرده و موضوع را مطرح نماید، در این مواقع دفترخانه برای زوج (مرد) احضاریه ارسال می نماید، در صورت بی توجهی دوباره زوج، زوجه می تواند برای گرفتن وکلات طلاق به دادگاه مراجعه کند.

برخی تصور می کنند که طلاق توافقی تنها توافق بین طرفین است و نیاز به وکیل نیست. به همین خاطر به دلیل نا آگاهی از حقوق تعریف شده در قواین خانواده، طرف مقابل سوء استفاده هایی انجام می دهد و حق شخص ضایع میگردد. حتی این موضوع باعث طولانی شدن روند طلاق می گردد. لذا پیشنهاد می کنیم برای اطلاع از حقوق خود حتما از مشاوره های حقوقی استفاده نمایید.
شرایط طلاق توافقی

برای گرفتن طلاق توافقی نیاز به هیچ دلیل و منطقی که بخواهید به دادگاه ارائه کنید نیست. فقط تصمیم زن وشوهر برای گرفتن طلاق از هم کفایت میکند و البته که، همانطور که گفته شد باید تنها بر روی مسائل گفته شده توافق کنید.

Institute Coim said...

HomeSalon is India's best Professional Beauty Parlour service at home Provider at Doorstep.
We are one of the best beauty service providers in India at your budget. Our vision is to provide excellent beauty services to
all women. HomeSalon is known as one of the supreme quality service providers in India in less than one years. W
e provide on-demand beauty parlour services at home in Dehradun, Mumbai, Delhi, Noida, Greater Noida, Ghaziabad, Faridabad,
Gurgaon and
Bangalore.
Home Salon
Salon at home delhi
Home salon service delhi
Beauty Services at home delhi

thedrchoice said...

Thanks for sharing this information and keep updating us.it will really helpful for Career Growth. Really it was an awesome article.
pct supplement
pct bodybuilding supplement
post cycle therapy supplement
testosterone booster supplement

thedrchoice said...

Thanks for sharing this information and keep updating us.it will really helpful for Career Growth. Really it was an awesome article.
pct supplement
pct bodybuilding supplement
post cycle therapy supplement
testosterone booster supplement

Hind pvt LTD said...

HomeSalon is India's best Professional Beauty Parlour service at home Provider at Doorstep.
We are one of the best beauty service providers in India at your budget. Our vision is to provide excellent beauty services to
all ledies. Home Salon is known as one of the supreme quality service providers in India in less than one years. W
e provide on-demand beauty parlour services at home in Dehradun, Mumbai, Delhi, Noida, Greater Noida, Ghaziabad, Faridabad,
Gurgaon and
Bangalore.
Home Salon
Salon at home delhi

Unknown said...

Thanks for sharing such helpful information with all of us I appreciate your effort of writing a value able piece of content.

Anurag gothwal said...

If you are looking for sony bluetooth speakers then go on https://www.arecious.com/

Anurag gothwal said...

If you want best bluetooth speakers with affordable price rate then go on https://www.arecious.com/

Anurag gothwal said...

If you want best home theater under 5000-10000 then go on. https://www.arecious.com/

Anurag gothwal said...

If you want best smart phones under 10000-15000 then go on. https://www.arecious.com/

hookstefan said...

Assignment help is an administration where students can get more incredible plans in which we can get a direct contact with the experts who can write the assignment according to the user with full concentration.
Assignment Help UK

Do My Assignment UK

nisha said...

Our IVF centre has state-of-the-art facilities with equipment from the leaders in the world like incubators from
Germany (Heracell), ICSI micromanipulator from Japan (Narashige), Microscopes from Japan (Nikon) etc.
The world-class facilities along with competent staff have enabled us to achieve an outstanding success rate.
Our In Vitro Fertilization (IVF) results and pregnancy rates are among the best.
IVF specialist in Delhi
Full body Health Check-Up Online

Unknown said...

Who Will Win Today’s Match India vs West Indies , India Full Squad vs West Indies Full Squad, India All Players Name,
West Indies All Players Name, Today 1st T20 Match Prediction, All Match 3rd August Predictions, Check Match Details For
IND vs WI Today Match
Cricbuzz

Coloradoloans said...

Search for payday loans near me and get instant approval payday loans Denver. Apply for online payday loans Colorado Springs no credit check. Visit coloradoloansnearme.com, a valuable service provider for your all financial needs.

Pankaj Singh said...

Get the latest and responsive Website Designing Services by Ogen Infosystem in Delhi, India by experienced Website Designers and Developers and also get SEO Service for online promotion of your website.
Website Designing Company in India

Assignment Help said...

Are you looking for best quality My Assignment Help service? Then you are at the right place as we offer excellent quality writing services which ensure high grades.

Unknown said...

Popular Fashion Blogs in Surat
Fashion Blogger in Surat
Surat Blogger
Indian Fashion Blogger
Fashion Blogger in India

Mobile app development company in Mumbai said...

Mobile app development company in mumbai

Unknown said...

Today, Digital Marketing is the most powerful weapon which can be used to change the marketing world.
In addition to this, digital marketing course certificate is added benefits for the participants who
really want to explore and understand the concept behind the digital marketing.
Full body Health Check-Up Online
Digital Marketing Course in Laxmi Nagar
Digital Marketing Course in Laxmi Nagar
Digital Marketing Institute in Delhi

Vaishviktrends.com said...

If you are looking for Best Gyms in Ghaziabad then click on the given link.

Kevin said...

Hello TNPSC aspirants, the TNPSC Group 4 Hall Ticket is going to be released in a week now.
All of you are requested to open our website and bookmark it to get regular updates about all the government and sarkari jobs in India.
TNPSC exam will be conducted soon.
Stay tuned.

hookstefan said...

Assignment help is given the full vocation lift to the understudies in which we control the understudies to make the correct stride throughout everyday life and show signs of improvement opportunity throughout everyday life.
my assignment help
law assignment help
online assignment help

Unknown said...

Very informative blog, You have such an updated blog with peace of knowledge.

Best Digital marketing Academy click now